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

#include "nimbase.h"
#include <string.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
typedef struct tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg;
typedef struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA;
typedef struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg tySequence__d8ZV4IMgHt9biik9cS9a0hrmg;
typedef struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content;
typedef struct tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ;
typedef struct tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg;
typedef struct tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw;
typedef struct tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug;
typedef struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA;
typedef struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q tySequence__9ahcSjIErJohSBBFLwuF56Q;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content tySequence__9ahcSjIErJohSBBFLwuF56Q_Content;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg;
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_Table__PBlYIBD9bHKBu5FQE5lPn7A tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_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_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_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 RootObj RootObj;
typedef struct tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA;
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_StringTableObj__eKsdjq89aDBcvVY68b206Qg tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg;
typedef struct tyObject_Target__GzbDkV2u8Pgzlf9azvC43FA tyObject_Target__GzbDkV2u8Pgzlf9azvC43FA;
typedef struct tyObject_MsgConfig__E1VAUnnaNIOngCdEgTI2Dw tyObject_MsgConfig__E1VAUnnaNIOngCdEgTI2Dw;
typedef struct tySequence__E0kio2ZnplNTuln9bsnljSA tySequence__E0kio2ZnplNTuln9bsnljSA;
typedef struct tySequence__E0kio2ZnplNTuln9bsnljSA_Content tySequence__E0kio2ZnplNTuln9bsnljSA_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 tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig;
typedef struct tyObject_TContext__4jZ5gUwIaqnMfIYix46Hpw tyObject_TContext__4jZ5gUwIaqnMfIYix46Hpw;
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__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
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_TPassContext__QQOybmyOwFn29csyFzTSLNQ tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ;
typedef struct tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ;
typedef struct tyObject_TFileInfo__xPdjmgevOVG8T0Aq8BK7jw tyObject_TFileInfo__xPdjmgevOVG8T0Aq8BK7jw;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef struct tyObject_Cfile__DANcxQKXbKf7Ve5cK3l3Wg tyObject_Cfile__DANcxQKXbKf7Ve5cK3l3Wg;
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;
typedef NU8 tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw;
struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA {
	NI32 module;
	NI32 item;
};
typedef NU8 tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg;
typedef NU8 tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ;
typedef NU64 tySet_tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A;
struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg {
  NI len; tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content* p;
};
typedef NU8 tyEnum_TLocKind__4f5UmCRM8alrCgj32FqIRQ;
typedef NU8 tyEnum_TStorageLoc__f19b6ZkRyh7BNPxlyjRbEGg;
typedef NU16 tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg;
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
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_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;
};
struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA {
	NU16 line;
	NI16 col;
	NI32 fileIndex;
};
typedef NU32 tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw;
typedef NU8 tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw;
struct tySequence__9ahcSjIErJohSBBFLwuF56Q {
  NI len; tySequence__9ahcSjIErJohSBBFLwuF56Q_Content* p;
};
struct tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typField;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info;
	tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw flags;
	tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind;
union{
	struct {
	NI64 intVal;
} _kind_1;
	struct {
	NF floatVal;
} _kind_2;
	struct {
	NimStringV2 strVal;
} _kind_3;
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
} _kind_4;
	struct {
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* ident;
} _kind_5;
	struct {
	tySequence__9ahcSjIErJohSBBFLwuF56Q sons;
} _kind_6;
};
};
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
	NimStringV2 Field0;
	NI Field1;
	NI Field2;
};
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 tySequence__7lEisrXlQEzwtUKW5pzRCw {
  NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
struct tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A {
	tySequence__7lEisrXlQEzwtUKW5pzRCw data;
	NI counter;
};
typedef NU8 tyEnum_TBackend__CGWF9bdzxEysXyGIUwpK8cw;
typedef NU8 tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg;
typedef NU8 tyEnum_TSystemCC__A5wZwpTXF1SiKGvwgH1wrA;
typedef NU32 tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ;
typedef NU64 tySet_tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A;
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__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 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;
};
typedef NU8 tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA;
typedef NU8 tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w;
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 NU8 tySet_tyEnum_TErrorOutput__wGgqZXVnY1wkKEe8EL9cL9aw;
struct tySequence__E0kio2ZnplNTuln9bsnljSA {
  NI len; tySequence__E0kio2ZnplNTuln9bsnljSA_Content* p;
};
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_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 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_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A;
typedef NU8 tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q;
typedef NU16 tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg;
typedef NU64 tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg;
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;
};
struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA {
	NI id;
	NimStringV2 s;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* next;
	NI h;
};
typedef NU8 tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg;
typedef NU8 tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A;
typedef NU8 tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg[9];
typedef NU8 tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ;
typedef NU8 tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q;
struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content { NI cap; tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* data[SEQ_DECL_SIZE]; };
struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content { NI cap; tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* 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 tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
	NI Field0;
	NimStringV2 Field1;
	NI32 Field2;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content { NI cap; tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE]; };
struct tySequence__ZCZaCk14bTmSb6LMW9aWPVA_Content { NI cap; tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* data[SEQ_DECL_SIZE]; };
struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content { NI cap; tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* 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 tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ {
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA Field0;
	NimStringV2 Field1;
};
struct tySequence__E0kio2ZnplNTuln9bsnljSA_Content { NI cap; tyTuple__ji9a7IXpM9cONa0mh0VGCVrQ 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 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(NIM_BOOL, isEmptyType__ast_u7234)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsGarbageCollectedRef__types_u555)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p0);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u3255)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p1);
static N_INLINE(NI, len__ast_u3190)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw, spawnResult__spawn_u29)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0, NIM_BOOL inParallel_p1);
static N_INLINE(NimStringV2, toFileLineCol__msgs_u701)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info_p0);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2);
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(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, eqdestroy___system_u2691)(NimStringV2 dest_p0);
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(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_NOINLINE(void, liMessage__msgs_u1227)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA msg_p2, NimStringV2 arg_p3, tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w eh_p4, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2_p5, NIM_BOOL isRaw_p6, NIM_BOOL ignoreError_p7);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___renderer_u2166)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3252)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_u155)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u4574)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3378)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u2694)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, newSym__ast_u4205)(tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q symKind_p0, tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* name_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p2, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p3, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p4, tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options_p5);
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*, getIdent__idents_u206)(tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* ic_p0, NimStringV2 identifier_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, eqcopy___ast_u3381)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** dest_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* src_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(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, createObj__lowerings_u174)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p2, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p3, NIM_BOOL final_p4);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, createCastExpr__spawn_u220)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* argsParam_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* objType_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_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*, newSymNode__ast_u5168)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, newType__ast_u5900)(tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kind_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p2, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* son_p3);
static N_INLINE(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, owner__ast_u6246)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* s_p0);
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, rawAddSon__ast_u6706)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* father_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* son_p1, NIM_BOOL propagateHasAsgn_p2);
N_LIB_PRIVATE N_NIMCALL(void, addVar__lowerings_u34)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* father_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* v_p1);
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_TSym__lYFc3T7YHHNBnaZR9at0NSg*, addField__lowerings_u259)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* obj_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1, tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p2, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newFastAsgnStmt__lowerings_u47)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* le_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ri_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newDotExpr__lowerings_u307)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* obj_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* b_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*, indirectAccess__lowerings_u408)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* b_p1, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p2);
N_LIB_PRIVATE N_NIMCALL(void, setupArgsForConcurrency__spawn_u232)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* objType_p2, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p3, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p4, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* scratchObj_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* castExpr_p6, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* call_p7, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSection_p8, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varInit_p9, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result_p10);
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, eqcopy___idents_u158)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA** dest_p0, tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, addLocalVar__spawn_u95)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSection_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varInit_p2, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p3, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p4, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* v_p6, NIM_BOOL useShallowCopy_p7);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newNodeI__ast_u4095)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, NI children_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newFastMoveStmt__lowerings_u51)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* le_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ri_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, typeNeedsNoDeepCopy__spawn_u83)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getSysMagic__magicsys_u26)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, NimStringV2 name_p2, tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg m_p3);
N_LIB_PRIVATE N_NIMCALL(void, setupArgsForParallelism__spawn_u278)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* objType_p2, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p3, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p4, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* scratchObj_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* castExpr_p6, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* call_p7, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSection_p8, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varInit_p9, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result_p10);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, createMagic__modulegraphs_u10814)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1, NimStringV2 name_p2, tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg m_p3);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg, getMagic__trees_u122)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* op_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, genAddrOf__lowerings_u418)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1, tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg typeKind_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, genHigh__lowerings_u470)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newIntLit__lowerings_u465)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, NI64 value_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, genDeref__lowerings_u426)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw k_p1);
N_LIB_PRIVATE N_NIMCALL(NI64, computeSize__types_u3379)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getRoot__trees_u373)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getCompilerProc__magicsys_u150)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, NimStringV2 name_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, callProc__spawn_u12)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p0);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, returnType__ast_u5354)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, castToVoidPointer__spawn_u126)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* fvField_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, callCodegenProc__lowerings_u430)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, NimStringV2 name_p1, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p2, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* arg1_p3, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* arg2_p4, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* arg3_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* optionalArgs_p6);
N_LIB_PRIVATE N_NIMCALL(void, createTypeBoundOps__liftdestructors_u50)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TContext__4jZ5gUwIaqnMfIYix46Hpw* c_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* orig_p2, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p3, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p4);
N_LIB_PRIVATE N_NIMCALL(void, createWrapperProc__spawn_u136)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* f_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* threadParam_p2, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* argsParam_p3, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSection_p4, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varInit_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* call_p6, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* barrier_p7, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* fv_p8, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p9, tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw spawnKind_p10, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* result_p11);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_u4583)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg** dest_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newAsgnStmt__lowerings_u43)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* le_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ri_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, indirectAccess__lowerings_u349)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p0, NimStringV2 b_p1, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p2, tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p3);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ, flowVarKind__spawn_u52)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* c_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, firstGenericParam__ast_u5366)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, typeToString__types_u54)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p0, tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q prefer_p1);
static N_INLINE(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, owner__ast_u6254)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newProcNode__ast_u5430)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* body_p2, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* params_p3, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* name_p4, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* pattern_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* genericParams_p6, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* pragmas_p7, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* exceptions_p8);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_u9)(NI xX60gensym0__p0);
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_2 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_3 = {0, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_2};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_4 = { 1 | NIM_STRLIT_FLAG, "(" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_5 = {1, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_4};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_6 = { 2 | NIM_STRLIT_FLAG, ", " };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_7 = {2, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_6};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_8 = { 1 | NIM_STRLIT_FLAG, ")" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_9 = {1, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_8};
static const struct {
  NI cap; NIM_CHAR data[60+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11 = { 60 | NIM_STRLIT_FLAG, "/home/runner/work/nightlies/nightlies/nim/compiler/spawn.nim" };
static const struct {
  NI cap; NIM_CHAR data[29+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_13 = { 29 | NIM_STRLIT_FLAG, "\'spawn\' must not be discarded" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_14 = {29, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_13};
static const struct {
  NI cap; NIM_CHAR data[38+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_16 = { 38 | NIM_STRLIT_FLAG, "\'spawn\' takes a call expression; got: " };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_17 = {38, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_16};
static const struct {
  NI cap; NIM_CHAR data[39+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_19 = { 39 | NIM_STRLIT_FLAG, "\'spawn\' takes a GC safe call expression" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_20 = {39, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_19};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_22 = { 4 | NIM_STRLIT_FLAG, ":tmp" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_23 = {4, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_22};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_24 = { 7 | NIM_STRLIT_FLAG, "Wrapper" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_25 = {7, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_24};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_26 = { 6 | NIM_STRLIT_FLAG, "thread" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_27 = {6, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_26};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_28 = { 4 | NIM_STRLIT_FLAG, "args" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_29 = {4, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_28};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_30 = { 7 | NIM_STRLIT_FLAG, "scratch" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_31 = {7, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_30};
static const struct {
  NI cap; NIM_CHAR data[43+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_32 = { 43 | NIM_STRLIT_FLAG, "closure in spawn environment is not allowed" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_33 = {43, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_32};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__OiEZ9cmMV1ztTwyI7NGH1RQ_35 = {
0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_36 = { 2 | NIM_STRLIT_FLAG, "fn" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_37 = {2, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_36};
static const struct {
  NI cap; NIM_CHAR data[44+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_38 = { 44 | NIM_STRLIT_FLAG, "iterator in spawn environment is not allowed" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_39 = {44, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_38};
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_41 = {4, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_22};
static const struct {
  NI cap; NIM_CHAR data[48+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_42 = { 48 | NIM_STRLIT_FLAG, "\'spawn\'ed function cannot have a \'var\' parameter" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_43 = {48, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_42};
static const struct {
  NI cap; NIM_CHAR data[63+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_45 = { 63 | NIM_STRLIT_FLAG, "\'spawn\'ed function cannot have a \'typed\' or \'untyped\' parameter" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_46 = {63, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_45};
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_48 = {4, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_22};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_49 = { 8 | NIM_STRLIT_FLAG, "deepCopy" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_50 = {8, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_49};
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_51 = {4, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_22};
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_52 = {63, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_45};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_53 = { 5 | NIM_STRLIT_FLAG, "slice" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_54 = {5, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_53};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_55 = { 7 | NIM_STRLIT_FLAG, "Barrier" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_56 = {7, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_55};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_57 = { 7 | NIM_STRLIT_FLAG, "barrier" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_58 = {7, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_57};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_59 = { 2 | NIM_STRLIT_FLAG, "fv" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_60 = {2, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_59};
static const struct {
  NI cap; NIM_CHAR data[25+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_61 = { 25 | NIM_STRLIT_FLAG, "nimFlowVarCreateSemaphore" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_62 = {25, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_61};
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_63 = {2, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_59};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_64 = { 12 | NIM_STRLIT_FLAG, "barrierEnter" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_65 = {12, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_64};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_67 = { 5 | NIM_STRLIT_FLAG, "owner" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_68 = {5, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_67};
static const struct {
  NI cap; NIM_CHAR data[18+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_69 = { 18 | NIM_STRLIT_FLAG, "nimArgsPassingDone" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_70 = {18, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_69};
static const struct {
  NI cap; NIM_CHAR data[33+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_71 = { 33 | NIM_STRLIT_FLAG, "cannot create a flowVar of type: " };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_72 = {33, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_71};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_74 = { 4 | NIM_STRLIT_FLAG, "data" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_75 = {4, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_74};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_76 = { 4 | NIM_STRLIT_FLAG, "blob" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_77 = {4, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_76};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_78 = { 5 | NIM_STRLIT_FLAG, "GCref" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_79 = {5, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_78};
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_80 = {4, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_74};
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_81 = { 16 | NIM_STRLIT_FLAG, "nimFlowVarSignal" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_82 = {16, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_81};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_83 = { 12 | NIM_STRLIT_FLAG, "barrierLeave" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_84 = {12, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_83};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__OiEZ9cmMV1ztTwyI7NGH1RQ_85 = { 8 | NIM_STRLIT_FLAG, "nimSpawn" };
static const NimStringV2 TM__OiEZ9cmMV1ztTwyI7NGH1RQ_86 = {8, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_85};
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_10 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)338),
((NI)4)}
;
extern NIM_CONST tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA unknownLineInfo__lineinfos_u364;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_12 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)341),
((NI)4)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_15 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)344),
((NI)30)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_18 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)348),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_21 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)352),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_34 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)384),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_40 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)395),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_44 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)223),
((NI)18)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_47 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)209),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_66 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)139),
((NI)4)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OiEZ9cmMV1ztTwyI7NGH1RQ_73 = {{60, (NimStrPayload*)&TM__OiEZ9cmMV1ztTwyI7NGH1RQ_11},
((NI)156),
((NI)16)}
;
extern NIM_BOOL nimInErrorMode__system_u4144;
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;
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4144);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw, spawnResult__spawn_u29)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0, NIM_BOOL inParallel_p1) {
	tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw result;
	tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)0;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = isEmptyType__ast_u7234(t_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T4_) goto LA5_;
		result = ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)0);
	}
	goto LA2_;
LA5_: ;
	{
		NIM_BOOL T8_;
		NIM_BOOL T10_;
		T8_ = (NIM_BOOL)0;
		T8_ = inParallel_p1;
		if (!(T8_)) goto LA9_;
		T10_ = (NIM_BOOL)0;
		T10_ = containsGarbageCollectedRef__types_u555(t_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T8_ = !(T10_);
LA9_: ;
		if (!T8_) goto LA11_;
		result = ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)2);
	}
	goto LA2_;
LA11_: ;
	{
		result = ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)1);
	}
LA2_: ;
	}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;
}
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest_p0, source_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2) {
	nimCopyMem(dest_p0, source_p1, size_p2);
}
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1) {
	{
		if (!(((NI)0) < src_p1.len)) goto LA3_;
		copyMem__system_u1742(((void*) ((&(*(*dest_p0).p).data[(*dest_p0).len]))), ((void*) ((&(*src_p1.p).data[((NI)0)]))), (src_p1.len));
		(*dest_p0).len += src_p1.len;
		(*(*dest_p0).p).data[(*dest_p0).len] = 0;
	}
LA3_: ;
}
static N_INLINE(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__OiEZ9cmMV1ztTwyI7NGH1RQ_3;
	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__OiEZ9cmMV1ztTwyI7NGH1RQ_5);
		addInt__stdZprivateZdigitsutils_u204((&result), info_p0.Field1);
		{
			if (!(((NI)0) < (NI)(info_p0.Field2 + ((NI)1)))) goto LA7_;
			prepareAdd((&result), 2);
appendString((&result), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_7);
			addInt__stdZprivateZdigitsutils_u204((&result), (NI)(info_p0.Field2 + ((NI)1)));
		}
LA7_: ;
		prepareAdd((&result), 1);
appendString((&result), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_9);
	}
LA3_: ;
	return result;
}
static N_INLINE(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, owner__ast_u6246)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* 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(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, createCastExpr__spawn_u220)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* argsParam_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* objType_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p2) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD_;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__2;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__3;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	colontmpD_ = NIM_NIL;
	colontmpD__2 = NIM_NIL;
	colontmpD__3 = NIM_NIL;
	result = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)61), (*argsParam_p0).info);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	colontmpD_ = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1), (*argsParam_p0).info);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__ast_u3215(result, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	colontmpD__2 = newSymNode__ast_u5168(argsParam_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__ast_u3215(result, colontmpD__2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	colontmpD__3 = owner__ast_u6246(objType_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = NIM_NIL;
	T1_ = newType__ast_u5900(((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21), idgen_p2, colontmpD__3, ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL));
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T1_); goto BeforeRet_;}
	eqsink___ast_u3387(&(*result).typField, T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	rawAddSon__ast_u6706((*result).typField, objType_p1, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___ast_u4574(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_;
	}BeforeRet_: ;
	return result;
}
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(NIM_BOOL, typeNeedsNoDeepCopy__spawn_u83)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0) {
	NIM_BOOL result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_2;
	NIM_BOOL T11_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	t_2 = NIM_NIL;
	t_2 = skipTypes__ast_u5379(t_p0, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_35);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!((*t_2).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28))) goto LA4_;
		result = NIM_TRUE;
		eqdestroy___ast_u3378(t_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		goto BeforeRet_;
	}
LA4_: ;
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T10_;
		if (!((*t_2).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)23) || (*t_2).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)47) || (*t_2).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)24))) goto LA8_;
		T10_ = NIM_NIL;
		T10_ = elementType__ast_u5331(t_2);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T10_); goto LA1_;}
		eqsink___ast_u3387(&t_2, T10_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA8_: ;
	T11_ = (NIM_BOOL)0;
	T11_ = containsGarbageCollectedRef__types_u555(t_2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	result = !(T11_);
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3378(t_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, addLocalVar__spawn_u95)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSection_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varInit_p2, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p3, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p4, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* v_p6, NIM_BOOL useShallowCopy_p7) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* result;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* colontmpD_;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* vpart_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T2_;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T3_;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T4_;
NIM_BOOL oldNimErrFin18_;
NIM_BOOL oldNimErrFin30_;
NIM_BOOL oldNimErrFin34_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	colontmpD_ = NIM_NIL;
	vpart_1 = NIM_NIL;
	colontmpD_ = getIdent__idents_u206((*g_p0).cache, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_48);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	result = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)5), colontmpD_, idgen_p3, owner_p4, (*varSection_p1).info, (*owner_p4).options);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqcopy___ast_u3381(&(*result).typ, typ_p5);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*result).flags |= ((NU64)1)<<(((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)2))) & 63);
	vpart_1 = newNodeI__ast_u4095(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)35), (*varSection_p1).info, ((NI)3));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T2_ = NIM_NIL;
	T2_ = newSymNode__ast_u5168(result);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T2_); goto LA1_;}
	eqsink___ast_u3261(&(*vpart_1)._kind_6.sons.p->data[((NI)0)], T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T3_ = NIM_NIL;
	T3_ = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1), (*varSection_p1).info);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T3_); goto LA1_;}
	eqsink___ast_u3261(&(*vpart_1)._kind_6.sons.p->data[((NI)1)], T3_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T4_ = NIM_NIL;
	{
		if (!(varInit_p2 == 0)) goto LA7_;
		eqcopy___ast_u3255(&(*vpart_1)._kind_6.sons.p->data[((NI)2)], v_p6);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA5_;
LA7_: ;
	{
		eqcopy___ast_u3255(&(*vpart_1)._kind_6.sons.p->data[((NI)2)], (*vpart_1)._kind_6.sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA5_: ;
	add__ast_u3215(varSection_p1, vpart_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!!((varInit_p2 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA12_;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__2;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__3;
			if (!((*(*g_p0).config).selectedGC == ((tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg)4) || (*(*g_p0).config).selectedGC == ((tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg)5) || (*(*g_p0).config).selectedGC == ((tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg)6))) goto LA16_;
			colontmpD__2 = NIM_NIL;
			colontmpD__3 = NIM_NIL;
			colontmpD__2 = newSymNode__ast_u5168(result);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			colontmpD__3 = newFastMoveStmt__lowerings_u51(g_p0, colontmpD__2, v_p6);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			add__ast_u3215(varInit_p2, colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			{
				LA18_:;
			}
			{
				oldNimErrFin18_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(colontmpD__3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___ast_u3252(colontmpD__2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin18_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA14_;
LA16_: ;
		{
			{
				NIM_BOOL T24_;
				NIM_BOOL T25_;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__4;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__5;
				T24_ = (NIM_BOOL)0;
				T25_ = (NIM_BOOL)0;
				T25_ = useShallowCopy_p7;
				if (!(T25_)) goto LA26_;
				T25_ = typeNeedsNoDeepCopy__spawn_u83(typ_p5);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA26_: ;
				T24_ = T25_;
				if (T24_) goto LA27_;
				T24_ = (((*(*g_p0).config).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A)46)))&63U)))!=0);
LA27_: ;
				if (!T24_) goto LA28_;
				colontmpD__4 = NIM_NIL;
				colontmpD__5 = NIM_NIL;
				colontmpD__4 = newSymNode__ast_u5168(result);
				if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
				colontmpD__5 = newFastMoveStmt__lowerings_u51(g_p0, colontmpD__4, v_p6);
				if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
				add__ast_u3215(varInit_p2, colontmpD__5);
				if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
				{
					LA30_:;
				}
				{
					oldNimErrFin30_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3252(colontmpD__5);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___ast_u3252(colontmpD__4);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					*nimErr_ = oldNimErrFin30_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
			goto LA22_;
LA28_: ;
			{
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* deepCopyCall_1;
				tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__6;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T35_;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T36_;
				deepCopyCall_1 = NIM_NIL;
				colontmpD__6 = NIM_NIL;
				deepCopyCall_1 = newNodeI__ast_u4095(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27), (*varInit_p2).info, ((NI)3));
				if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
				colontmpD__6 = getSysMagic__magicsys_u26(g_p0, (*varSection_p1).info, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_50, ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)200));
				if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
				T35_ = NIM_NIL;
				T35_ = newSymNode__ast_u5168(colontmpD__6);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T35_); goto LA34_;}
				eqsink___ast_u3261(&(*deepCopyCall_1)._kind_6.sons.p->data[((NI)0)], T35_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
				T36_ = NIM_NIL;
				T36_ = newSymNode__ast_u5168(result);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T36_); goto LA34_;}
				eqsink___ast_u3261(&(*deepCopyCall_1)._kind_6.sons.p->data[((NI)1)], T36_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
				eqcopy___ast_u3255(&(*deepCopyCall_1)._kind_6.sons.p->data[((NI)2)], v_p6);
				if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
				add__ast_u3215(varInit_p2, deepCopyCall_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
				{
					LA34_:;
				}
				{
					oldNimErrFin34_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u4574(colontmpD__6);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___ast_u3252(deepCopyCall_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					*nimErr_ = oldNimErrFin34_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
LA22_: ;
		}
LA14_: ;
	}
LA12_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3252(vpart_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setupArgsForConcurrency__spawn_u232)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* objType_p2, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p3, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p4, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* scratchObj_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* castExpr_p6, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* call_p7, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSection_p8, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varInit_p9, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result_p10) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* formals_1;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* tmpName_1;
NIM_BOOL oldNimErrFin12_;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	formals_1 = NIM_NIL;
	tmpName_1 = NIM_NIL;
	eqcopy___ast_u3255(&formals_1, (*(*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField).n);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	tmpName_1 = getIdent__idents_u206((*g_p0).cache, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_41);
	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) {
				if (!(i_2 < colontmp_)) goto LA4;
				i_1 = i_2;
				{
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* argType_1;
					tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* fieldname_1;
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* field_1;
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD_;
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__2;
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__3;
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__4;
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* temp_1;
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__5;
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__6;
					tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* T31_;
					argType_1 = NIM_NIL;
					fieldname_1 = NIM_NIL;
					field_1 = NIM_NIL;
					colontmpD_ = NIM_NIL;
					colontmpD__2 = NIM_NIL;
					colontmpD__3 = NIM_NIL;
					colontmpD__4 = NIM_NIL;
					temp_1 = NIM_NIL;
					colontmpD__5 = NIM_NIL;
					colontmpD__6 = NIM_NIL;
					argType_1 = skipTypes__ast_u5379((*(*n_p1)._kind_6.sons.p->data[i_1]).typField, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_35);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					{
						NI T9_;
						tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__7;
						T9_ = (NI)0;
						T9_ = len__ast_u3190(formals_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						if (!(i_1 < T9_)) goto LA10_;
						colontmpD__7 = NIM_NIL;
						{
							if (!((*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)23) || (*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)47))) goto LA15_;
							liMessage__msgs_u1227((*g_p0).config, (*(*n_p1)._kind_6.sons.p->data[i_1]).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_43, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_44, NIM_FALSE, NIM_FALSE);
							if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
						}
LA15_: ;
						{
							NIM_BOOL T19_;
							NIM_BOOL T20_;
							T19_ = (NIM_BOOL)0;
							T20_ = (NIM_BOOL)0;
							T20_ = ((*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)48));
							if (!(T20_)) goto LA21_;
							colontmpD__7 = elementType__ast_u5331((*(*formals_1)._kind_6.sons.p->data[i_1]).typField);
							if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
							T20_ = ((*colontmpD__7).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)7) || (*colontmpD__7).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)6));
LA21_: ;
							T19_ = T20_;
							if (T19_) goto LA22_;
							T19_ = ((*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)7) || (*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)6));
LA22_: ;
							if (!T19_) goto LA23_;
							liMessage__msgs_u1227((*g_p0).config, (*(*n_p1)._kind_6.sons.p->data[i_1]).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_46, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_47, NIM_FALSE, NIM_FALSE);
							if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
						}
LA23_: ;
						{
							if (!((*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)8) || (*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)60))) goto LA27_;
							eqdestroy___ast_u3378(colontmpD__7);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(colontmpD__6);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							eqdestroy___ast_u3252(colontmpD__5);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							eqdestroy___ast_u4574(temp_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							eqdestroy___ast_u3252(colontmpD__4);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							eqdestroy___ast_u3252(colontmpD__3);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							eqdestroy___ast_u4574(colontmpD__2);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							eqdestroy___ast_u4574(colontmpD_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							eqdestroy___ast_u4574(field_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							eqdestroy___idents_u155(fieldname_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							eqdestroy___ast_u3378(argType_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							goto LA5;
						}
LA27_: ;
						{
							LA12_:;
						}
						{
							oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3378(colontmpD__7);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							*nimErr_ = oldNimErrFin12_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					}
LA10_: ;
					T31_ = NIM_NIL;
					{
						NI T34_;
						T34_ = (NI)0;
						T34_ = len__ast_u3190(formals_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						if (!(i_1 < T34_)) goto LA35_;
						eqcopy___idents_u158(&fieldname_1, (*(*(*formals_1)._kind_6.sons.p->data[i_1])._kind_4.sym).name);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					}
					goto LA32_;
LA35_: ;
					{
						eqcopy___idents_u158(&fieldname_1, tmpName_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					}
LA32_: ;
					colontmpD_ = owner__ast_u6246(objType_p2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					field_1 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19), fieldname_1, idgen_p3, colontmpD_, (*n_p1).info, (*(*g_p0).config).options);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					eqcopy___ast_u3381(&(*field_1).typ, argType_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					colontmpD__2 = addField__lowerings_u259(objType_p2, field_1, (*g_p0).cache, idgen_p3);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					(void)(colontmpD__2);
					colontmpD__3 = newDotExpr__lowerings_u307(scratchObj_p5, field_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					colontmpD__4 = newFastAsgnStmt__lowerings_u47(colontmpD__3, (*n_p1)._kind_6.sons.p->data[i_1]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					add__ast_u3215(result_p10, colontmpD__4);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					colontmpD__5 = indirectAccess__lowerings_u408(castExpr_p6, field_1, (*n_p1).info);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					temp_1 = addLocalVar__spawn_u95(g_p0, varSection_p8, varInit_p9, idgen_p3, owner_p4, argType_1, colontmpD__5, NIM_FALSE);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					colontmpD__6 = newSymNode__ast_u5168(temp_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					add__ast_u3215(call_p7, colontmpD__6);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					{
						LA6_:;
					}
					{
						oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3252(colontmpD__6);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3252(colontmpD__5);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u4574(temp_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3252(colontmpD__4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3252(colontmpD__3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u4574(colontmpD__2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u4574(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u4574(field_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___idents_u155(fieldname_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3378(argType_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						*nimErr_ = oldNimErrFin6_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				} LA5: ;
				i_2 += ((NI)1);
			} LA4: ;
		}
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___idents_u155(tmpName_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(formals_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, setupArgsForParallelism__spawn_u278)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* objType_p2, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p3, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p4, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* scratchObj_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* castExpr_p6, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* call_p7, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSection_p8, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varInit_p9, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result_p10) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* formals_1;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* tmpName_1;
NIM_BOOL oldNimErrFin49_;
NIM_BOOL oldNimErrFin55_;
NIM_BOOL oldNimErrFin40_;
NIM_BOOL oldNimErrFin70_;
NIM_BOOL oldNimErrFin74_;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	formals_1 = NIM_NIL;
	tmpName_1 = NIM_NIL;
	eqcopy___ast_u3255(&formals_1, (*(*(*n_p1)._kind_6.sons.p->data[((NI)0)]).typField).n);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	tmpName_1 = getIdent__idents_u206((*g_p0).cache, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_51);
	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) {
				if (!(i_2 < colontmp_)) goto LA4;
				i_1 = i_2;
				{
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_2;
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* argType_1;
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__2;
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__3;
					tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* fieldname_1;
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* field_1;
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__4;
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__5;
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T22_;
					tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* T29_;
					n_2 = NIM_NIL;
					colontmpD_ = NIM_NIL;
					argType_1 = NIM_NIL;
					colontmpD__2 = NIM_NIL;
					colontmpD__3 = NIM_NIL;
					fieldname_1 = NIM_NIL;
					field_1 = NIM_NIL;
					colontmpD__4 = NIM_NIL;
					colontmpD__5 = NIM_NIL;
					eqcopy___ast_u3255(&n_2, (*n_p1)._kind_6.sons.p->data[i_1]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					{
						NIM_BOOL T9_;
						NI T10_;
						T9_ = (NIM_BOOL)0;
						T10_ = (NI)0;
						T10_ = len__ast_u3190(formals_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						T9_ = (i_1 < T10_);
						if (!(T9_)) goto LA11_;
						T9_ = ((*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)60) || (*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)8));
LA11_: ;
						if (!T9_) goto LA12_;
						eqdestroy___ast_u4574(colontmpD__5);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u4574(colontmpD__4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u4574(field_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___idents_u155(fieldname_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3378(colontmpD__3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3378(colontmpD__2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3378(argType_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3378(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3252(n_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						goto LA5;
					}
LA12_: ;
					{
						NIM_BOOL T16_;
						NIM_BOOL T17_;
						T16_ = (NIM_BOOL)0;
						T17_ = (NIM_BOOL)0;
						T17_ = ((*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)48));
						if (!(T17_)) goto LA18_;
						colontmpD_ = elementType__ast_u5331((*(*formals_1)._kind_6.sons.p->data[i_1]).typField);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						T17_ = ((*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)7) || (*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)6));
LA18_: ;
						T16_ = T17_;
						if (T16_) goto LA19_;
						T16_ = ((*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)7) || (*(*(*formals_1)._kind_6.sons.p->data[i_1]).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)6));
LA19_: ;
						if (!T16_) goto LA20_;
						liMessage__msgs_u1227((*g_p0).config, (*n_2).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_52, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_47, NIM_FALSE, NIM_FALSE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					}
LA20_: ;
					T22_ = NIM_NIL;
					{
						NI T25_;
						T25_ = (NI)0;
						T25_ = len__ast_u3190(formals_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						if (!(i_1 < T25_)) goto LA26_;
						eqcopy___ast_u3381(&colontmpD__2, (*(*formals_1)._kind_6.sons.p->data[i_1]).typField);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						T22_ = colontmpD__2;
					}
					goto LA23_;
LA26_: ;
					{
						eqcopy___ast_u3381(&colontmpD__3, (*n_2).typField);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						T22_ = colontmpD__3;
					}
LA23_: ;
					argType_1 = skipTypes__ast_u5379(T22_, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_35);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					T29_ = NIM_NIL;
					{
						NI T32_;
						T32_ = (NI)0;
						T32_ = len__ast_u3190(formals_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						if (!(i_1 < T32_)) goto LA33_;
						eqcopy___idents_u158(&fieldname_1, (*(*(*formals_1)._kind_6.sons.p->data[i_1])._kind_4.sym).name);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					}
					goto LA30_;
LA33_: ;
					{
						eqcopy___idents_u158(&fieldname_1, tmpName_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					}
LA30_: ;
					colontmpD__4 = owner__ast_u6246(objType_p2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					field_1 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19), fieldname_1, idgen_p3, colontmpD__4, (*n_2).info, (*(*g_p0).config).options);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					{
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* slice_1;
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__6;
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* fieldB_1;
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__7;
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__8;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__9;
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* threadLocal_1;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__10;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T41_;
						tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T42_;
						tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T43_;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T59_;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T60_;
						if (!((*argType_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)48) || (*argType_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)27))) goto LA38_;
						slice_1 = NIM_NIL;
						colontmpD__6 = NIM_NIL;
						fieldB_1 = NIM_NIL;
						colontmpD__7 = NIM_NIL;
						colontmpD__8 = NIM_NIL;
						colontmpD__9 = NIM_NIL;
						threadLocal_1 = NIM_NIL;
						colontmpD__10 = NIM_NIL;
						slice_1 = newNodeI__ast_u4095(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27), (*n_2).info, ((NI)4));
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						eqcopy___ast_u3381(&(*slice_1).typField, (*n_2).typField);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						colontmpD__6 = createMagic__modulegraphs_u10814(g_p0, idgen_p3, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_54, ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)124));
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						T41_ = NIM_NIL;
						T41_ = newSymNode__ast_u5168(colontmpD__6);
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T41_); goto LA40_;}
						eqsink___ast_u3261(&(*slice_1)._kind_6.sons.p->data[((NI)0)], T41_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						T42_ = NIM_NIL;
						T42_ = getSysType__magicsys_u55(g_p0, (*n_2).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T42_); goto LA40_;}
						eqsink___ast_u3387(&(*(*slice_1)._kind_6.sons.p->data[((NI)0)]).typField, T42_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						colontmpD__7 = owner__ast_u6246(objType_p2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						fieldB_1 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19), tmpName_1, idgen_p3, colontmpD__7, (*n_2).info, (*(*g_p0).config).options);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						T43_ = NIM_NIL;
						T43_ = getSysType__magicsys_u55(g_p0, (*n_2).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T43_); goto LA40_;}
						eqsink___ast_u3387(&(*fieldB_1).typ, T43_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						colontmpD__8 = addField__lowerings_u259(objType_p2, fieldB_1, (*g_p0).cache, idgen_p3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						(void)(colontmpD__8);
						{
							tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg T46_;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
							tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__11;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__12;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__13;
							tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* fieldA_1;
							tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__14;
							tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__15;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__16;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__17;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__18;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__19;
							tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* threadLocal_2;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__20;
							tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T50_;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T51_;
							T46_ = (tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)0;
							T46_ = getMagic__trees_u122(n_2);
							if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
							if (!(T46_ == ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)124))) goto LA47_;
							a_1 = NIM_NIL;
							colontmpD__11 = NIM_NIL;
							colontmpD__12 = NIM_NIL;
							colontmpD__13 = NIM_NIL;
							fieldA_1 = NIM_NIL;
							colontmpD__14 = NIM_NIL;
							colontmpD__15 = NIM_NIL;
							colontmpD__16 = NIM_NIL;
							colontmpD__17 = NIM_NIL;
							colontmpD__18 = NIM_NIL;
							colontmpD__19 = NIM_NIL;
							threadLocal_2 = NIM_NIL;
							colontmpD__20 = NIM_NIL;
							a_1 = genAddrOf__lowerings_u418((*n_2)._kind_6.sons.p->data[((NI)1)], idgen_p3, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21));
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							eqcopy___ast_u3381(&(*field_1).typ, (*a_1).typField);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							colontmpD__11 = addField__lowerings_u259(objType_p2, field_1, (*g_p0).cache, idgen_p3);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							(void)(colontmpD__11);
							colontmpD__12 = newDotExpr__lowerings_u307(scratchObj_p5, field_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							colontmpD__13 = newFastAsgnStmt__lowerings_u47(colontmpD__12, a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							add__ast_u3215(result_p10, colontmpD__13);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							colontmpD__14 = owner__ast_u6246(objType_p2);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							fieldA_1 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19), tmpName_1, idgen_p3, colontmpD__14, (*n_2).info, (*(*g_p0).config).options);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							T50_ = NIM_NIL;
							T50_ = getSysType__magicsys_u55(g_p0, (*n_2).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)31));
							if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T50_); goto LA49_;}
							eqsink___ast_u3387(&(*fieldA_1).typ, T50_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							colontmpD__15 = addField__lowerings_u259(objType_p2, fieldA_1, (*g_p0).cache, idgen_p3);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							(void)(colontmpD__15);
							colontmpD__16 = newDotExpr__lowerings_u307(scratchObj_p5, fieldA_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							colontmpD__17 = newFastAsgnStmt__lowerings_u47(colontmpD__16, (*n_2)._kind_6.sons.p->data[((NI)2)]);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							add__ast_u3215(result_p10, colontmpD__17);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							colontmpD__18 = newDotExpr__lowerings_u307(scratchObj_p5, fieldB_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							colontmpD__19 = newFastAsgnStmt__lowerings_u47(colontmpD__18, (*n_2)._kind_6.sons.p->data[((NI)3)]);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							add__ast_u3215(result_p10, colontmpD__19);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							colontmpD__20 = indirectAccess__lowerings_u408(castExpr_p6, fieldA_1, (*n_2).info);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							threadLocal_2 = addLocalVar__spawn_u95(g_p0, varSection_p8, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), idgen_p3, owner_p4, (*fieldA_1).typ, colontmpD__20, NIM_TRUE);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							T51_ = NIM_NIL;
							T51_ = newSymNode__ast_u5168(threadLocal_2);
							if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T51_); goto LA49_;}
							eqsink___ast_u3261(&(*slice_1)._kind_6.sons.p->data[((NI)2)], T51_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
							{
								LA49_:;
							}
							{
								oldNimErrFin49_ = *nimErr_; *nimErr_ = NIM_FALSE;
								eqdestroy___ast_u3252(colontmpD__20);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u4574(threadLocal_2);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(colontmpD__19);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(colontmpD__18);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(colontmpD__17);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(colontmpD__16);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u4574(colontmpD__15);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u4574(colontmpD__14);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u4574(fieldA_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(colontmpD__13);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(colontmpD__12);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u4574(colontmpD__11);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(a_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								*nimErr_ = oldNimErrFin49_;
							}
							if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						}
						goto LA44_;
LA47_: ;
						{
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_2;
							tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__21;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__22;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__23;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__24;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__25;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__26;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T56_;
							a_2 = NIM_NIL;
							colontmpD__21 = NIM_NIL;
							colontmpD__22 = NIM_NIL;
							colontmpD__23 = NIM_NIL;
							colontmpD__24 = NIM_NIL;
							colontmpD__25 = NIM_NIL;
							colontmpD__26 = NIM_NIL;
							a_2 = genAddrOf__lowerings_u418(n_2, idgen_p3, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21));
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							eqcopy___ast_u3381(&(*field_1).typ, (*a_2).typField);
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							colontmpD__21 = addField__lowerings_u259(objType_p2, field_1, (*g_p0).cache, idgen_p3);
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							(void)(colontmpD__21);
							colontmpD__22 = newDotExpr__lowerings_u307(scratchObj_p5, field_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							colontmpD__23 = newFastAsgnStmt__lowerings_u47(colontmpD__22, a_2);
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							add__ast_u3215(result_p10, colontmpD__23);
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							colontmpD__24 = newDotExpr__lowerings_u307(scratchObj_p5, fieldB_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							colontmpD__25 = genHigh__lowerings_u470(g_p0, n_2);
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							colontmpD__26 = newFastAsgnStmt__lowerings_u47(colontmpD__24, colontmpD__25);
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							add__ast_u3215(result_p10, colontmpD__26);
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							T56_ = NIM_NIL;
							T56_ = newIntLit__lowerings_u465(g_p0, (*n_2).info, IL64(0));
							if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T56_); goto LA55_;}
							eqsink___ast_u3261(&(*slice_1)._kind_6.sons.p->data[((NI)2)], T56_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
							{
								LA55_:;
							}
							{
								oldNimErrFin55_ = *nimErr_; *nimErr_ = NIM_FALSE;
								eqdestroy___ast_u3252(colontmpD__26);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(colontmpD__25);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(colontmpD__24);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(colontmpD__23);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(colontmpD__22);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u4574(colontmpD__21);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								eqdestroy___ast_u3252(a_2);
								if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
								*nimErr_ = oldNimErrFin55_;
							}
							if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						}
LA44_: ;
						colontmpD__9 = indirectAccess__lowerings_u408(castExpr_p6, field_1, (*n_2).info);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						T59_ = NIM_NIL;
						T59_ = genDeref__lowerings_u426(colontmpD__9, ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)65));
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T59_); goto LA40_;}
						eqsink___ast_u3261(&(*slice_1)._kind_6.sons.p->data[((NI)1)], T59_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						colontmpD__10 = indirectAccess__lowerings_u408(castExpr_p6, fieldB_1, (*n_2).info);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						threadLocal_1 = addLocalVar__spawn_u95(g_p0, varSection_p8, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), idgen_p3, owner_p4, (*fieldB_1).typ, colontmpD__10, NIM_TRUE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						T60_ = NIM_NIL;
						T60_ = newSymNode__ast_u5168(threadLocal_1);
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T60_); goto LA40_;}
						eqsink___ast_u3261(&(*slice_1)._kind_6.sons.p->data[((NI)3)], T60_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						add__ast_u3215(call_p7, slice_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA40_;
						{
							LA40_:;
						}
						{
							oldNimErrFin40_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3252(colontmpD__10);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u4574(threadLocal_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(colontmpD__9);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u4574(colontmpD__8);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u4574(colontmpD__7);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u4574(fieldB_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u4574(colontmpD__6);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(slice_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							*nimErr_ = oldNimErrFin40_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					}
					goto LA36_;
LA38_: ;
					{
						NIM_BOOL T64_;
						NI64 size_1;
						NIM_BOOL T65_;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_3;
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__27;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__28;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__29;
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* threadLocal_3;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__30;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__31;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__32;
						T64_ = (NIM_BOOL)0;
						size_1 = computeSize__types_u3379((*g_p0).config, argType_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						T65_ = (NIM_BOOL)0;
						T65_ = (size_1 < IL64(0));
						if (T65_) goto LA66_;
						T65_ = (IL64(16) < size_1);
LA66_: ;
						T64_ = T65_;
						if (!(T64_)) goto LA67_;
						colontmpD__5 = getRoot__trees_u373(n_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						T64_ = !((colontmpD__5 == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)));
LA67_: ;
						if (!T64_) goto LA68_;
						a_3 = NIM_NIL;
						colontmpD__27 = NIM_NIL;
						colontmpD__28 = NIM_NIL;
						colontmpD__29 = NIM_NIL;
						threadLocal_3 = NIM_NIL;
						colontmpD__30 = NIM_NIL;
						colontmpD__31 = NIM_NIL;
						colontmpD__32 = NIM_NIL;
						a_3 = genAddrOf__lowerings_u418(n_2, idgen_p3, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21));
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						eqcopy___ast_u3381(&(*field_1).typ, (*a_3).typField);
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						colontmpD__27 = addField__lowerings_u259(objType_p2, field_1, (*g_p0).cache, idgen_p3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						(void)(colontmpD__27);
						colontmpD__28 = newDotExpr__lowerings_u307(scratchObj_p5, field_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						colontmpD__29 = newFastAsgnStmt__lowerings_u47(colontmpD__28, a_3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						add__ast_u3215(result_p10, colontmpD__29);
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						colontmpD__30 = indirectAccess__lowerings_u408(castExpr_p6, field_1, (*n_2).info);
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						threadLocal_3 = addLocalVar__spawn_u95(g_p0, varSection_p8, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), idgen_p3, owner_p4, (*field_1).typ, colontmpD__30, NIM_TRUE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						colontmpD__31 = newSymNode__ast_u5168(threadLocal_3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						colontmpD__32 = genDeref__lowerings_u426(colontmpD__31, ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)65));
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						add__ast_u3215(call_p7, colontmpD__32);
						if (NIM_UNLIKELY(*nimErr_)) goto LA70_;
						{
							LA70_:;
						}
						{
							oldNimErrFin70_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3252(colontmpD__32);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(colontmpD__31);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(colontmpD__30);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u4574(threadLocal_3);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(colontmpD__29);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(colontmpD__28);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u4574(colontmpD__27);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(a_3);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							*nimErr_ = oldNimErrFin70_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					}
					goto LA36_;
LA68_: ;
					{
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__33;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__34;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__35;
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* threadLocal_4;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__36;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__37;
						colontmpD__33 = NIM_NIL;
						colontmpD__34 = NIM_NIL;
						colontmpD__35 = NIM_NIL;
						threadLocal_4 = NIM_NIL;
						colontmpD__36 = NIM_NIL;
						colontmpD__37 = NIM_NIL;
						eqsink___ast_u3387(&(*field_1).typ, argType_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						eqwasMoved___ast_u3375(&argType_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						colontmpD__33 = addField__lowerings_u259(objType_p2, field_1, (*g_p0).cache, idgen_p3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						(void)(colontmpD__33);
						colontmpD__34 = newDotExpr__lowerings_u307(scratchObj_p5, field_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						colontmpD__35 = newFastAsgnStmt__lowerings_u47(colontmpD__34, n_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						add__ast_u3215(result_p10, colontmpD__35);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						colontmpD__36 = indirectAccess__lowerings_u408(castExpr_p6, field_1, (*n_2).info);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						threadLocal_4 = addLocalVar__spawn_u95(g_p0, varSection_p8, varInit_p9, idgen_p3, owner_p4, (*field_1).typ, colontmpD__36, NIM_TRUE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						colontmpD__37 = newSymNode__ast_u5168(threadLocal_4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						add__ast_u3215(call_p7, colontmpD__37);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						{
							LA74_:;
						}
						{
							oldNimErrFin74_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3252(colontmpD__37);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(colontmpD__36);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u4574(threadLocal_4);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(colontmpD__35);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u3252(colontmpD__34);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							eqdestroy___ast_u4574(colontmpD__33);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							*nimErr_ = oldNimErrFin74_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					}
LA36_: ;
					{
						LA6_:;
					}
					{
						oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u4574(colontmpD__5);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u4574(colontmpD__4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u4574(field_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___idents_u155(fieldname_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3378(colontmpD__3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3378(colontmpD__2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3378(argType_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3378(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3252(n_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						*nimErr_ = oldNimErrFin6_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				} LA5: ;
				i_2 += ((NI)1);
			} LA4: ;
		}
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___idents_u155(tmpName_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(formals_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, returnType__ast_u5354)(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;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, callProc__spawn_u12)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p0) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27), (*a_p0).info);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__ast_u3215(result, a_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = NIM_NIL;
	T1_ = returnType__ast_u5354((*a_p0).typField);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T1_); goto BeforeRet_;}
	eqsink___ast_u3387(&(*result).typField, T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, castToVoidPointer__spawn_u126)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* fvField_p2) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		if (!((*(*g_p0).config).backend == ((tyEnum_TBackend__CGWF9bdzxEysXyGIUwpK8cw)2))) goto LA3_;
		eqcopy___ast_u3255(&result, fvField_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA3_: ;
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* ptrType_1;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD_;
		ptrType_1 = NIM_NIL;
		colontmpD_ = NIM_NIL;
		ptrType_1 = getSysType__magicsys_u55(g_p0, (*n_p1).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)26));
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		result = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)61), (*fvField_p2).info);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		colontmpD_ = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1), (*fvField_p2).info);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		add__ast_u3215(result, colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		add__ast_u3215(result, fvField_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		eqsink___ast_u3387(&(*result).typField, ptrType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		eqwasMoved___ast_u3375(&ptrType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		{
			LA6_:;
		}
		{
			oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u3378(ptrType_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin6_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ, flowVarKind__spawn_u52)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* c_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p1) {
	tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
	tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ T2_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ)0;
	colontmpD_ = NIM_NIL;
	T2_ = (tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ)0;
	{
		if (!((*c_p0).selectedGC == ((tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg)4) || (*c_p0).selectedGC == ((tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg)5) || (*c_p0).selectedGC == ((tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg)6))) goto LA5_;
		result = ((tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ)2);
	}
	goto LA3_;
LA5_: ;
	{
		colontmpD_ = skipTypes__ast_u5379(t_p1, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_35);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!((*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22) || (*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)28) || (*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)24))) goto LA8_;
		result = ((tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ)1);
	}
	goto LA3_;
LA8_: ;
	{
		NIM_BOOL T11_;
		T11_ = (NIM_BOOL)0;
		T11_ = containsGarbageCollectedRef__types_u555(t_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T11_) goto LA12_;
		result = ((tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ)0);
	}
	goto LA3_;
LA12_: ;
	{
		result = ((tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ)2);
	}
LA3_: ;
	{
		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;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, firstGenericParam__ast_u5366)(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)1)]);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	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(void, createWrapperProc__spawn_u136)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* f_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* threadParam_p2, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* argsParam_p3, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSection_p4, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varInit_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* call_p6, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* barrier_p7, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* fv_p8, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p9, tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw spawnKind_p10, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* result_p11) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* body_1;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* threadLocalBarrier_1;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* threadLocalProm_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD_;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__2;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* params_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__3;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__4;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__5;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__6;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__7;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__8;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__9;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* emptyNode_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__10;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL oldNimErrFin44_;
NIM_BOOL oldNimErrFin58_;
NIM_BOOL oldNimErrFin67_;
NIM_BOOL oldNimErrFin39_;
NIM_BOOL oldNimErrFin77_;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T80_;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T81_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	body_1 = NIM_NIL;
	threadLocalBarrier_1 = NIM_NIL;
	threadLocalProm_1 = NIM_NIL;
	colontmpD_ = NIM_NIL;
	colontmpD__2 = NIM_NIL;
	params_1 = NIM_NIL;
	colontmpD__3 = NIM_NIL;
	colontmpD__4 = NIM_NIL;
	colontmpD__5 = NIM_NIL;
	t_1 = NIM_NIL;
	colontmpD__6 = NIM_NIL;
	colontmpD__7 = NIM_NIL;
	colontmpD__8 = NIM_NIL;
	colontmpD__9 = NIM_NIL;
	emptyNode_1 = NIM_NIL;
	colontmpD__10 = NIM_NIL;
	body_1 = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115), (*f_p1).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	threadLocalBarrier_1 = ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL);
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSection2_1;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__11;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__12;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T7_;
		if (!!((barrier_p7 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA4_;
		varSection2_1 = NIM_NIL;
		colontmpD__11 = NIM_NIL;
		colontmpD__12 = NIM_NIL;
		varSection2_1 = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)99), (*barrier_p7).info);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		T7_ = NIM_NIL;
		T7_ = addLocalVar__spawn_u95(g_p0, varSection2_1, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), idgen_p9, result_p11, (*barrier_p7).typField, barrier_p7, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u4574(T7_); goto LA6_;}
		eqsink___ast_u4583(&threadLocalBarrier_1, T7_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		add__ast_u3215(body_1, varSection2_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		colontmpD__11 = newSymNode__ast_u5168(threadLocalBarrier_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		colontmpD__12 = callCodegenProc__lowerings_u430(g_p0, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_65, (*threadLocalBarrier_1).info, colontmpD__11, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		add__ast_u3215(body_1, colontmpD__12);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		{
			LA6_:;
		}
		{
			oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__12);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3252(colontmpD__11);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3252(varSection2_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin6_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA4_: ;
	threadLocalProm_1 = ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL);
	{
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T14_;
		if (!(spawnKind_p10 == ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)2))) goto LA12_;
		T14_ = NIM_NIL;
		T14_ = addLocalVar__spawn_u95(g_p0, varSection_p4, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), idgen_p9, result_p11, (*fv_p8).typField, fv_p8, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u4574(T14_); goto LA1_;}
		eqsink___ast_u4583(&threadLocalProm_1, T14_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA10_;
LA12_: ;
	{
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T25_;
		if (!!((fv_p8 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA16_;
		{
			NimStringV2 argX60gensym21__1;
			if (!!(((*(*fv_p8).typField).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)11)))) goto LA20_;
			argX60gensym21__1.len = 0; argX60gensym21__1.p = NIM_NIL;
			argX60gensym21__1 = toFileLineCol__msgs_u701(TM__OiEZ9cmMV1ztTwyI7NGH1RQ_66);
			if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
			internalErrorImpl__msgs_u1598((*g_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym21__1, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_66);
			if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
			{
				LA22_:;
			}
			{
				eqdestroy___system_u2691(argX60gensym21__1);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA20_: ;
		T25_ = NIM_NIL;
		T25_ = addLocalVar__spawn_u95(g_p0, varSection_p4, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), idgen_p9, result_p11, (*fv_p8).typField, fv_p8, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u4574(T25_); goto LA1_;}
		eqsink___ast_u4583(&threadLocalProm_1, T25_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA10_;
LA16_: ;
LA10_: ;
	add__ast_u3215(body_1, varSection_p4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__ast_u3215(body_1, varInit_p5);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T28_;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__13;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__14;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__15;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__16;
		T28_ = (NIM_BOOL)0;
		T28_ = !((fv_p8 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)));
		if (!(T28_)) goto LA29_;
		T28_ = !((spawnKind_p10 == ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)2)));
LA29_: ;
		if (!T28_) goto LA30_;
		colontmpD__13 = NIM_NIL;
		colontmpD__14 = NIM_NIL;
		colontmpD__15 = NIM_NIL;
		colontmpD__16 = NIM_NIL;
		colontmpD__13 = newSymNode__ast_u5168(threadLocalProm_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__14 = indirectAccess__lowerings_u349(colontmpD__13, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_68, (*fv_p8).info, (*g_p0).cache);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__15 = newSymNode__ast_u5168(threadParam_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__16 = newAsgnStmt__lowerings_u43(colontmpD__14, colontmpD__15);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		add__ast_u3215(body_1, colontmpD__16);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__16);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__15);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__14);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__13);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA30_: ;
	colontmpD_ = newSymNode__ast_u5168(threadParam_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__2 = callCodegenProc__lowerings_u430(g_p0, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_70, (*threadParam_p2).info, colontmpD_, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__ast_u3215(body_1, colontmpD__2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__17;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__18;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__19;
		if (!(spawnKind_p10 == ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)2))) goto LA34_;
		colontmpD__17 = NIM_NIL;
		colontmpD__18 = NIM_NIL;
		colontmpD__19 = NIM_NIL;
		colontmpD__17 = newSymNode__ast_u5168(threadLocalProm_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__18 = genDeref__lowerings_u426(colontmpD__17, ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)65));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__19 = newAsgnStmt__lowerings_u43(colontmpD__18, call_p6);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		add__ast_u3215(body_1, colontmpD__19);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__19);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__18);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__17);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA32_;
LA34_: ;
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__20;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__21;
		NimStringV2 colontmpD__22;
		NimStringV2 colontmpD__23;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__24;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__25;
		tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ fk_1;
		NimStringV2 T48_;
		if (!!((fv_p8 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA37_;
		colontmpD__20 = NIM_NIL;
		colontmpD__21 = NIM_NIL;
		colontmpD__22.len = 0; colontmpD__22.p = NIM_NIL;
		colontmpD__23.len = 0; colontmpD__23.p = NIM_NIL;
		colontmpD__24 = NIM_NIL;
		colontmpD__25 = NIM_NIL;
		colontmpD__20 = firstGenericParam__ast_u5366((*fv_p8).typField);
		if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
		fk_1 = flowVarKind__spawn_u52((*g_p0).config, colontmpD__20);
		if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
		{
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__26;
			NimStringV2 colontmpD__27;
			NimStringV2 colontmpD__28;
			NimStringV2 T45_;
			if (!(fk_1 == ((tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ)0))) goto LA42_;
			colontmpD__26 = NIM_NIL;
			colontmpD__27.len = 0; colontmpD__27.p = NIM_NIL;
			colontmpD__28.len = 0; colontmpD__28.p = NIM_NIL;
			T45_.len = 0; T45_.p = NIM_NIL;
			colontmpD__26 = firstGenericParam__ast_u5366((*fv_p8).typField);
			if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
			colontmpD__27 = typeToString__types_u54(colontmpD__26, ((tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q)0));
			if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
			T45_ = rawNewString(colontmpD__27.len + 33);
appendString((&T45_), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_72);
appendString((&T45_), colontmpD__27);
			colontmpD__28 = T45_;
			liMessage__msgs_u1227((*g_p0).config, (*f_p1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__28, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_73, NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
			{
				LA44_:;
			}
			{
				oldNimErrFin44_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___system_u2691(colontmpD__28);
				eqdestroy___system_u2691(colontmpD__27);
				eqdestroy___ast_u3378(colontmpD__26);
				if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
				*nimErr_ = oldNimErrFin44_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
		}
LA42_: ;
		colontmpD__21 = newSymNode__ast_u5168(threadLocalProm_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
		T48_.len = 0; T48_.p = NIM_NIL;
		{
			if (!(fk_1 == ((tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ)1))) goto LA51_;
			colontmpD__22 = TM__OiEZ9cmMV1ztTwyI7NGH1RQ_75;
			T48_ = colontmpD__22;
		}
		goto LA49_;
LA51_: ;
		{
			colontmpD__23 = TM__OiEZ9cmMV1ztTwyI7NGH1RQ_77;
			T48_ = colontmpD__23;
		}
LA49_: ;
		colontmpD__24 = indirectAccess__lowerings_u349(colontmpD__21, T48_, (*fv_p8).info, (*g_p0).cache);
		if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
		colontmpD__25 = newAsgnStmt__lowerings_u43(colontmpD__24, call_p6);
		if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
		add__ast_u3215(body_1, colontmpD__25);
		if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* incRefCall_1;
			tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__29;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__30;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T59_;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T60_;
			if (!(fk_1 == ((tyEnum_TFlowVarKind__1zZ0FW9bKC7AANOItHguwSQ)1))) goto LA56_;
			incRefCall_1 = NIM_NIL;
			colontmpD__29 = NIM_NIL;
			colontmpD__30 = NIM_NIL;
			incRefCall_1 = newNodeI__ast_u4095(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27), (*fv_p8).info, ((NI)2));
			if (NIM_UNLIKELY(*nimErr_)) goto LA58_;
			colontmpD__29 = getSysMagic__magicsys_u26(g_p0, (*fv_p8).info, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_79, ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)44));
			if (NIM_UNLIKELY(*nimErr_)) goto LA58_;
			T59_ = NIM_NIL;
			T59_ = newSymNode__ast_u5168(colontmpD__29);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T59_); goto LA58_;}
			eqsink___ast_u3261(&(*incRefCall_1)._kind_6.sons.p->data[((NI)0)], T59_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA58_;
			colontmpD__30 = newSymNode__ast_u5168(threadLocalProm_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA58_;
			T60_ = NIM_NIL;
			T60_ = indirectAccess__lowerings_u349(colontmpD__30, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_80, (*fv_p8).info, (*g_p0).cache);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T60_); goto LA58_;}
			eqsink___ast_u3261(&(*incRefCall_1)._kind_6.sons.p->data[((NI)1)], T60_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA58_;
			add__ast_u3215(body_1, incRefCall_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA58_;
			{
				LA58_:;
			}
			{
				oldNimErrFin58_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(colontmpD__30);
				if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
				eqdestroy___ast_u4574(colontmpD__29);
				if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
				eqdestroy___ast_u3252(incRefCall_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
				*nimErr_ = oldNimErrFin58_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
		}
LA56_: ;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* castExpr_1;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__31;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__32;
			if (!(barrier_p7 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL))) goto LA65_;
			castExpr_1 = NIM_NIL;
			colontmpD__31 = NIM_NIL;
			colontmpD__32 = NIM_NIL;
			colontmpD__31 = newSymNode__ast_u5168(threadLocalProm_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA67_;
			castExpr_1 = castToVoidPointer__spawn_u126(g_p0, f_p1, colontmpD__31);
			if (NIM_UNLIKELY(*nimErr_)) goto LA67_;
			colontmpD__32 = callCodegenProc__lowerings_u430(g_p0, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_82, (*threadLocalProm_1).info, castExpr_1, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL));
			if (NIM_UNLIKELY(*nimErr_)) goto LA67_;
			add__ast_u3215(body_1, colontmpD__32);
			if (NIM_UNLIKELY(*nimErr_)) goto LA67_;
			{
				LA67_:;
			}
			{
				oldNimErrFin67_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(colontmpD__32);
				if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
				eqdestroy___ast_u3252(colontmpD__31);
				if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
				eqdestroy___ast_u3252(castExpr_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
				*nimErr_ = oldNimErrFin67_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA39_;
		}
LA65_: ;
		{
			LA39_:;
		}
		{
			oldNimErrFin39_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__25);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3252(colontmpD__24);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___system_u2691(colontmpD__23);
			eqdestroy___system_u2691(colontmpD__22);
			eqdestroy___ast_u3252(colontmpD__21);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3378(colontmpD__20);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin39_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA32_;
LA37_: ;
	{
		add__ast_u3215(body_1, call_p6);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA32_: ;
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__33;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__34;
		if (!!((barrier_p7 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA75_;
		colontmpD__33 = NIM_NIL;
		colontmpD__34 = NIM_NIL;
		colontmpD__33 = newSymNode__ast_u5168(threadLocalBarrier_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA77_;
		colontmpD__34 = callCodegenProc__lowerings_u430(g_p0, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_84, (*threadLocalBarrier_1).info, colontmpD__33, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto LA77_;
		add__ast_u3215(body_1, colontmpD__34);
		if (NIM_UNLIKELY(*nimErr_)) goto LA77_;
		{
			LA77_:;
		}
		{
			oldNimErrFin77_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__34);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3252(colontmpD__33);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin77_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA75_: ;
	params_1 = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)76), (*f_p1).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__3 = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1), (*f_p1).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__ast_u3215(params_1, colontmpD__3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__4 = newSymNode__ast_u5168(threadParam_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__ast_u3215(params_1, colontmpD__4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__5 = newSymNode__ast_u5168(argsParam_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__ast_u3215(params_1, colontmpD__5);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__6 = owner__ast_u6254(threadParam_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	t_1 = newType__ast_u5900(((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)25), idgen_p9, colontmpD__6, ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	rawAddSon__ast_u6706(t_1, ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL), NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	rawAddSon__ast_u6706(t_1, (*threadParam_p2).typ, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	rawAddSon__ast_u6706(t_1, (*argsParam_p3).typ, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T80_ = NIM_NIL;
	T80_ = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)76), (*f_p1).info);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T80_); goto LA1_;}
	eqsink___ast_u3261(&(*t_1).n, T80_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__7 = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)152), (*f_p1).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__ast_u3215((*t_1).n, colontmpD__7);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__8 = newSymNode__ast_u5168(threadParam_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__ast_u3215((*t_1).n, colontmpD__8);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__9 = newSymNode__ast_u5168(argsParam_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__ast_u3215((*t_1).n, colontmpD__9);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	emptyNode_1 = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1), (*f_p1).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__10 = newSymNode__ast_u5168(result_p11);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T81_ = NIM_NIL;
	T81_ = newProcNode__ast_u5430(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)79), (*f_p1).info, body_1, params_1, colontmpD__10, emptyNode_1, emptyNode_1, emptyNode_1, emptyNode_1);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T81_); goto LA1_;}
	eqsink___ast_u3261(&(*result_p11).ast, T81_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqsink___ast_u3387(&(*result_p11).typ, t_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqwasMoved___ast_u3375(&t_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3252(colontmpD__10);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(emptyNode_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__9);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__8);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__7);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(colontmpD__6);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3378(t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__5);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(params_1);
		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(threadLocalProm_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(threadLocalBarrier_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(body_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, wrapProcForSpawn__spawn_u349)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p2, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* spawnExpr_p3, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* retType_p4, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* barrier_p5, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dest_p6) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* fn_1;
	NimStringV2 name_1;
	NimStringV2 colontmpD_;
	NimStringV2 colontmpD__2;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* wrapperProc_1;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* colontmpD__3;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* threadParam_1;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* colontmpD__4;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* argsParam_1;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* colontmpD__5;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* objType_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* castExpr_1;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* scratchObj_1;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* colontmpD__6;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* call_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSection_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varInit_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* barrierAsExpr_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* fvField_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* fvAsExpr_1;
	NimStringV2 colontmpD__7;
	NimStringV2 colontmpD__8;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__9;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__10;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__11;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__12;
	NI T2_;
	tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw spawnKind_1;
	NimStringV2 T41_;
	NimStringV2 T42_;
NIM_BOOL oldNimErrFin49_;
NIM_BOOL oldNimErrFin82_;
NIM_BOOL oldNimErrFin98_;
NIM_BOOL oldNimErrFin90_;
	NimStringV2 T108_;
	NI T109_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	n_1 = NIM_NIL;
	fn_1 = NIM_NIL;
	name_1.len = 0; name_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
	wrapperProc_1 = NIM_NIL;
	colontmpD__3 = NIM_NIL;
	threadParam_1 = NIM_NIL;
	colontmpD__4 = NIM_NIL;
	argsParam_1 = NIM_NIL;
	colontmpD__5 = NIM_NIL;
	objType_1 = NIM_NIL;
	castExpr_1 = NIM_NIL;
	scratchObj_1 = NIM_NIL;
	colontmpD__6 = NIM_NIL;
	call_1 = NIM_NIL;
	varSection_1 = NIM_NIL;
	varInit_1 = NIM_NIL;
	barrierAsExpr_1 = NIM_NIL;
	fvField_1 = NIM_NIL;
	fvAsExpr_1 = NIM_NIL;
	colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
	colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
	colontmpD__9 = NIM_NIL;
	colontmpD__10 = NIM_NIL;
	colontmpD__11 = NIM_NIL;
	colontmpD__12 = NIM_NIL;
	T2_ = (NI)0;
	T2_ = len__ast_u3190(spawnExpr_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqcopy___ast_u3255(&n_1, (*spawnExpr_p3)._kind_6.sons.p->data[(NI)(T2_ - ((NI)2))]);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	spawnKind_1 = spawnResult__spawn_u29(retType_p4, !((barrier_p5 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL))));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	switch (spawnKind_1) {
	case ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)0):
	{
		{
			NimStringV2 argX60gensym102__1;
			if (!!((dest_p6 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA6_;
			argX60gensym102__1.len = 0; argX60gensym102__1.p = NIM_NIL;
			argX60gensym102__1 = toFileLineCol__msgs_u701(TM__OiEZ9cmMV1ztTwyI7NGH1RQ_10);
			if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
			internalErrorImpl__msgs_u1598((*g_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym102__1, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_10);
			if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
			{
				LA8_:;
			}
			{
				eqdestroy___system_u2691(argX60gensym102__1);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA6_: ;
		result = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115), (*n_1).info);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)1):
	{
		{
			NimStringV2 argX60gensym104__1;
			if (!!((dest_p6 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA14_;
			argX60gensym104__1.len = 0; argX60gensym104__1.p = NIM_NIL;
			argX60gensym104__1 = toFileLineCol__msgs_u701(TM__OiEZ9cmMV1ztTwyI7NGH1RQ_12);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			internalErrorImpl__msgs_u1598((*g_p0).config, unknownLineInfo__lineinfos_u364, argX60gensym104__1, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_12);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			{
				LA16_:;
			}
			{
				eqdestroy___system_u2691(argX60gensym104__1);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA14_: ;
		result = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)126), (*n_1).info, retType_p4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)2):
	{
		{
			if (!(dest_p6 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL))) goto LA22_;
			liMessage__msgs_u1227((*g_p0).config, (*n_1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_14, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_15, NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA22_: ;
		result = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115), (*n_1).info);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	default: __builtin_unreachable();
	}
	{
		NimStringV2 colontmpD__13;
		NimStringV2 colontmpD__14;
		NimStringV2 T29_;
		if (!!(((*n_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27) || (*n_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)29) || (*n_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)30) || (*n_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)31) || (*n_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)26) || (*n_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)28) || (*n_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)32)))) goto LA26_;
		colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
		colontmpD__14.len = 0; colontmpD__14.p = NIM_NIL;
		T29_.len = 0; T29_.p = NIM_NIL;
		colontmpD__13 = dollar___renderer_u2166(n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
		T29_ = rawNewString(colontmpD__13.len + 38);
appendString((&T29_), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_17);
appendString((&T29_), colontmpD__13);
		colontmpD__14 = T29_;
		liMessage__msgs_u1227((*g_p0).config, (*n_1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__14, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_18, NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
		eqdestroy___system_u2691(colontmpD__14);
		eqdestroy___system_u2691(colontmpD__13);
		eqdestroy___ast_u3252(colontmpD__12);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__11);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__10);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__9);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___system_u2691(colontmpD__8);
		eqdestroy___system_u2691(colontmpD__7);
		eqdestroy___ast_u3252(fvAsExpr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(fvField_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(barrierAsExpr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(varInit_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(varSection_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(call_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(colontmpD__6);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(scratchObj_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(castExpr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3378(objType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(colontmpD__5);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(argsParam_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(colontmpD__4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(threadParam_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(colontmpD__3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(wrapperProc_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___system_u2691(colontmpD__2);
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___system_u2691(name_1);
		eqdestroy___ast_u3252(fn_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		goto BeforeRet_;
		{
			LA28_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__14);
			eqdestroy___system_u2691(colontmpD__13);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA26_: ;
	{
		if (!(((*(*g_p0).config).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A)27)))&63U)))!=0)) goto LA34_;
		{
			tySet_tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A T38_;
			T38_ = 0;
			if (!((130 & (*(*(*n_1)._kind_6.sons.p->data[((NI)0)]).typField).flags) == T38_)) goto LA39_;
			liMessage__msgs_u1227((*g_p0).config, (*n_1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_20, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_21, NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA39_: ;
	}
LA34_: ;
	eqcopy___ast_u3255(&fn_1, (*n_1)._kind_6.sons.p->data[((NI)0)]);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T41_.len = 0; T41_.p = NIM_NIL;
	T42_.len = 0; T42_.p = NIM_NIL;
	{
		if (!((*fn_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3))) goto LA45_;
		eqcopy___system_u2694((&colontmpD_), (*(*(*fn_1)._kind_4.sym).name).s);
		T42_ = colontmpD_;
	}
	goto LA43_;
LA45_: ;
	{
		colontmpD__2 = TM__OiEZ9cmMV1ztTwyI7NGH1RQ_23;
		T42_ = colontmpD__2;
	}
LA43_: ;
	T41_ = rawNewString(T42_.len + 7);
appendString((&T41_), T42_);
appendString((&T41_), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_25);
	name_1 = T41_;
	colontmpD__3 = getIdent__idents_u206((*g_p0).cache, name_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	wrapperProc_1 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)12), colontmpD__3, idgen_p1, owner_p2, (*fn_1).info, (*(*g_p0).config).options);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__4 = getIdent__idents_u206((*g_p0).cache, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_27);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	threadParam_1 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3), colontmpD__4, idgen_p1, wrapperProc_1, (*n_1).info, (*(*g_p0).config).options);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__5 = getIdent__idents_u206((*g_p0).cache, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_29);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	argsParam_1 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)3), colontmpD__5, idgen_p1, wrapperProc_1, (*n_1).info, (*(*g_p0).config).options);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*wrapperProc_1).flags |= ((NU64)1)<<(((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)42))) & 63);
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* ptrType_1;
		ptrType_1 = NIM_NIL;
		ptrType_1 = getSysType__magicsys_u55(g_p0, (*n_1).info, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)26));
		if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
		eqcopy___ast_u3381(&(*threadParam_1).typ, ptrType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
		eqsink___ast_u3387(&(*argsParam_1).typ, ptrType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
		eqwasMoved___ast_u3375(&ptrType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
		(*argsParam_1).position = ((NI)1);
		{
			LA49_:;
		}
		{
			oldNimErrFin49_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3378(ptrType_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin49_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	objType_1 = createObj__lowerings_u174(g_p0, idgen_p1, owner_p2, (*n_1).info, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*objType_1).flags |= ((NU64)1)<<(((((tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A)2))) & 63);
	castExpr_1 = createCastExpr__spawn_u220(argsParam_1, objType_1, idgen_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__6 = getIdent__idents_u206((*g_p0).cache, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_31);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	scratchObj_1 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)8), colontmpD__6, idgen_p1, owner_p2, (*n_1).info, (*(*g_p0).config).options);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* varSectionB_1;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__15;
		varSectionB_1 = NIM_NIL;
		colontmpD__15 = NIM_NIL;
		eqcopy___ast_u3381(&(*scratchObj_1).typ, objType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*scratchObj_1).flags |= ((NU64)1)<<(((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)2))) & 63);
		varSectionB_1 = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)99), (*n_1).info);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__15 = newSymNode__ast_u5168(scratchObj_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		addVar__lowerings_u34(varSectionB_1, colontmpD__15);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		add__ast_u3215(result, varSectionB_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__15);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(varSectionB_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	call_1 = newNodeIT__ast_u4112(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27), (*n_1).info, (*n_1).typField);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T55_;
		NIM_BOOL T57_;
		T55_ = (NIM_BOOL)0;
		T55_ = ((*fn_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)155));
		if (T55_) goto LA56_;
		T57_ = (NIM_BOOL)0;
		T57_ = !(((*fn_1).typField == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL)));
		if (!(T57_)) goto LA58_;
		T57_ = ((*(*fn_1).typField).callConv == ((tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ)9));
LA58_: ;
		T55_ = T57_;
LA56_: ;
		if (!T55_) goto LA59_;
		liMessage__msgs_u1227((*g_p0).config, (*n_1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_33, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_34, NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA59_: ;
	{
		NIM_BOOL T63_;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* argType_1;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* field_1;
		tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* colontmpD__16;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__17;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__18;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__19;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T67_;
		T63_ = (NIM_BOOL)0;
		T63_ = ((*fn_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3));
		if (!(T63_)) goto LA64_;
		T63_ = ((*(*fn_1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)12) || (*(*fn_1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)18) || (*(*fn_1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)17) || (*(*fn_1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)13) || (*(*fn_1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)14) || (*(*fn_1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)16));
LA64_: ;
		if (!!(T63_)) goto LA65_;
		argType_1 = NIM_NIL;
		field_1 = NIM_NIL;
		colontmpD__16 = NIM_NIL;
		colontmpD__17 = NIM_NIL;
		colontmpD__18 = NIM_NIL;
		colontmpD__19 = NIM_NIL;
		argType_1 = skipTypes__ast_u5379((*(*n_1)._kind_6.sons.p->data[((NI)0)]).typField, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_35);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__16 = getIdent__idents_u206((*g_p0).cache, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_37);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		field_1 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19), colontmpD__16, idgen_p1, owner_p2, (*n_1).info, (*(*g_p0).config).options);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqsink___ast_u3387(&(*field_1).typ, argType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__17 = addField__lowerings_u259(objType_1, field_1, (*g_p0).cache, idgen_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(void)(colontmpD__17);
		colontmpD__18 = newDotExpr__lowerings_u307(scratchObj_1, field_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__19 = newFastAsgnStmt__lowerings_u47(colontmpD__18, (*n_1)._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		add__ast_u3215(result, colontmpD__19);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T67_ = NIM_NIL;
		T67_ = indirectAccess__lowerings_u408(castExpr_1, field_1, (*n_1).info);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T67_); goto LA1_;}
		eqsink___ast_u3261(&fn_1, T67_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__19);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__18);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u4574(colontmpD__17);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___idents_u155(colontmpD__16);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u4574(field_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA61_;
LA65_: ;
	{
		NIM_BOOL T69_;
		T69_ = (NIM_BOOL)0;
		T69_ = ((*fn_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3));
		if (!(T69_)) goto LA70_;
		T69_ = ((*(*fn_1)._kind_4.sym).kind == ((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)15));
LA70_: ;
		if (!T69_) goto LA71_;
		liMessage__msgs_u1227((*g_p0).config, (*n_1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_39, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_40, NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA61_;
LA71_: ;
LA61_: ;
	add__ast_u3215(call_1, fn_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	varSection_1 = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)99), (*n_1).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	varInit_1 = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115), (*n_1).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!(barrier_p5 == 0)) goto LA75_;
		setupArgsForConcurrency__spawn_u232(g_p0, n_1, objType_1, idgen_p1, wrapperProc_1, scratchObj_1, castExpr_1, call_1, varSection_1, varInit_1, result);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA73_;
LA75_: ;
	{
		setupArgsForParallelism__spawn_u278(g_p0, n_1, objType_1, idgen_p1, wrapperProc_1, scratchObj_1, castExpr_1, call_1, varSection_1, varInit_1, result);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA73_: ;
	barrierAsExpr_1 = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_1;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__20;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* field_2;
		tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* colontmpD__21;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__22;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__23;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__24;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T83_;
		if (!!((barrier_p5 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA80_;
		typ_1 = NIM_NIL;
		colontmpD__20 = NIM_NIL;
		field_2 = NIM_NIL;
		colontmpD__21 = NIM_NIL;
		colontmpD__22 = NIM_NIL;
		colontmpD__23 = NIM_NIL;
		colontmpD__24 = NIM_NIL;
		typ_1 = newType__ast_u5900(((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21), idgen_p1, owner_p2, ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		colontmpD__20 = getCompilerProc__magicsys_u150(g_p0, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_56);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		rawAddSon__ast_u6706(typ_1, (*colontmpD__20).typ, NIM_TRUE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		colontmpD__21 = getIdent__idents_u206((*g_p0).cache, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_58);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		field_2 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19), colontmpD__21, idgen_p1, owner_p2, (*n_1).info, (*(*g_p0).config).options);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		eqsink___ast_u3387(&(*field_2).typ, typ_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		eqwasMoved___ast_u3375(&typ_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		colontmpD__22 = addField__lowerings_u259(objType_1, field_2, (*g_p0).cache, idgen_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		(void)(colontmpD__22);
		colontmpD__23 = newDotExpr__lowerings_u307(scratchObj_1, field_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		colontmpD__24 = newFastAsgnStmt__lowerings_u47(colontmpD__23, barrier_p5);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		add__ast_u3215(result, colontmpD__24);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		T83_ = NIM_NIL;
		T83_ = indirectAccess__lowerings_u408(castExpr_1, field_2, (*n_1).info);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T83_); goto LA82_;}
		eqsink___ast_u3261(&barrierAsExpr_1, T83_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
		{
			LA82_:;
		}
		{
			oldNimErrFin82_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__24);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3252(colontmpD__23);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u4574(colontmpD__22);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___idents_u155(colontmpD__21);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u4574(field_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u4574(colontmpD__20);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3378(typ_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin82_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA80_: ;
	fvField_1 = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
	fvAsExpr_1 = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
	{
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* field_3;
		tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* colontmpD__25;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__26;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__27;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__28;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T91_;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T92_;
		NI T93_;
		if (!(spawnKind_1 == ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)1))) goto LA88_;
		field_3 = NIM_NIL;
		colontmpD__25 = NIM_NIL;
		colontmpD__26 = NIM_NIL;
		colontmpD__27 = NIM_NIL;
		colontmpD__28 = NIM_NIL;
		colontmpD__25 = getIdent__idents_u206((*g_p0).cache, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_60);
		if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		field_3 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19), colontmpD__25, idgen_p1, owner_p2, (*n_1).info, (*(*g_p0).config).options);
		if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		eqcopy___ast_u3381(&(*field_3).typ, retType_p4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		colontmpD__26 = addField__lowerings_u259(objType_1, field_3, (*g_p0).cache, idgen_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		(void)(colontmpD__26);
		T91_ = NIM_NIL;
		T91_ = newDotExpr__lowerings_u307(scratchObj_1, field_3);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T91_); goto LA90_;}
		eqsink___ast_u3261(&fvField_1, T91_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		T92_ = NIM_NIL;
		T92_ = indirectAccess__lowerings_u408(castExpr_1, field_3, (*n_1).info);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T92_); goto LA90_;}
		eqsink___ast_u3261(&fvAsExpr_1, T92_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		T93_ = (NI)0;
		T93_ = len__ast_u3190(spawnExpr_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		colontmpD__27 = callProc__spawn_u12((*spawnExpr_p3)._kind_6.sons.p->data[(NI)(T93_ - ((NI)1))]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		colontmpD__28 = newFastAsgnStmt__lowerings_u47(fvField_1, colontmpD__27);
		if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		add__ast_u3215(result, colontmpD__28);
		if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* castExpr_2;
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__29;
			if (!(barrier_p5 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL))) goto LA96_;
			castExpr_2 = NIM_NIL;
			colontmpD__29 = NIM_NIL;
			castExpr_2 = castToVoidPointer__spawn_u126(g_p0, n_1, fvField_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA98_;
			colontmpD__29 = callCodegenProc__lowerings_u430(g_p0, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_62, (*fvField_1).info, castExpr_2, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL));
			if (NIM_UNLIKELY(*nimErr_)) goto LA98_;
			add__ast_u3215(result, colontmpD__29);
			if (NIM_UNLIKELY(*nimErr_)) goto LA98_;
			{
				LA98_:;
			}
			{
				oldNimErrFin98_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(colontmpD__29);
				if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
				eqdestroy___ast_u3252(castExpr_2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
				*nimErr_ = oldNimErrFin98_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
		}
LA96_: ;
		{
			LA90_:;
		}
		{
			oldNimErrFin90_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(colontmpD__28);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3252(colontmpD__27);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u4574(colontmpD__26);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___idents_u155(colontmpD__25);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u4574(field_3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin90_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA86_;
LA88_: ;
	{
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* field_4;
		tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* colontmpD__30;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__31;
		tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__32;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__33;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__34;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__35;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T106_;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T107_;
		if (!(spawnKind_1 == ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)2))) goto LA104_;
		field_4 = NIM_NIL;
		colontmpD__30 = NIM_NIL;
		colontmpD__31 = NIM_NIL;
		colontmpD__32 = NIM_NIL;
		colontmpD__33 = NIM_NIL;
		colontmpD__34 = NIM_NIL;
		colontmpD__35 = NIM_NIL;
		colontmpD__30 = getIdent__idents_u206((*g_p0).cache, TM__OiEZ9cmMV1ztTwyI7NGH1RQ_63);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		field_4 = newSym__ast_u4205(((tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q)19), colontmpD__30, idgen_p1, owner_p2, (*n_1).info, (*(*g_p0).config).options);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__31 = owner__ast_u6246(objType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T106_ = NIM_NIL;
		T106_ = newType__ast_u5900(((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21), idgen_p1, colontmpD__31, ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3378(T106_); goto LA1_;}
		eqsink___ast_u3387(&(*field_4).typ, T106_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		rawAddSon__ast_u6706((*field_4).typ, retType_p4, NIM_TRUE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__32 = addField__lowerings_u259(objType_1, field_4, (*g_p0).cache, idgen_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(void)(colontmpD__32);
		T107_ = NIM_NIL;
		T107_ = indirectAccess__lowerings_u408(castExpr_1, field_4, (*n_1).info);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3252(T107_); goto LA1_;}
		eqsink___ast_u3261(&fvAsExpr_1, T107_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__33 = newDotExpr__lowerings_u307(scratchObj_1, field_4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__34 = genAddrOf__lowerings_u418(dest_p6, idgen_p1, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__35 = newFastAsgnStmt__lowerings_u47(colontmpD__33, colontmpD__34);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		add__ast_u3215(result, colontmpD__35);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__35);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__34);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3252(colontmpD__33);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u4574(colontmpD__32);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u4574(colontmpD__31);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___idents_u155(colontmpD__30);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u4574(field_4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA86_;
LA104_: ;
LA86_: ;
	createTypeBoundOps__liftdestructors_u50(g_p0, ((tyObject_TContext__4jZ5gUwIaqnMfIYix46Hpw*) NIM_NIL), objType_1, (*n_1).info, idgen_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	createWrapperProc__spawn_u136(g_p0, fn_1, threadParam_1, argsParam_1, varSection_1, varInit_1, call_1, barrierAsExpr_1, fvAsExpr_1, idgen_p1, spawnKind_1, wrapperProc_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T108_.len = 0; T108_.p = NIM_NIL;
	T109_ = (NI)0;
	T109_ = len__ast_u3190(spawnExpr_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__7 = dollar___systemZdollars_u9(T109_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T108_ = rawNewString(colontmpD__7.len + 8);
appendString((&T108_), TM__OiEZ9cmMV1ztTwyI7NGH1RQ_86);
appendString((&T108_), colontmpD__7);
	colontmpD__8 = T108_;
	colontmpD__9 = newSymNode__ast_u5168(wrapperProc_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__10 = newSymNode__ast_u5168(scratchObj_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__11 = genAddrOf__lowerings_u418(colontmpD__10, idgen_p1, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__12 = callCodegenProc__lowerings_u430(g_p0, colontmpD__8, (*wrapperProc_1).info, colontmpD__9, colontmpD__11, ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL), spawnExpr_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__ast_u3215(result, colontmpD__12);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!(spawnKind_1 == ((tyEnum_TSpawnResult__Fi6IYHzmOR0d8zopbmZXuw)1))) goto LA112_;
		add__ast_u3215(result, fvField_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA112_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3252(colontmpD__12);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__11);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__10);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(colontmpD__9);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___system_u2691(colontmpD__8);
		eqdestroy___system_u2691(colontmpD__7);
		eqdestroy___ast_u3252(fvAsExpr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(fvField_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(barrierAsExpr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(varInit_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(varSection_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(call_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(colontmpD__6);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(scratchObj_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(castExpr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3378(objType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(colontmpD__5);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(argsParam_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(colontmpD__4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(threadParam_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(colontmpD__3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4574(wrapperProc_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___system_u2691(colontmpD__2);
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___system_u2691(name_1);
		eqdestroy___ast_u3252(fn_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
