/* Generated by Nim Compiler v2.2.4 */
#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_TNode__eTSqWXWVL7LuzmZf0c6unQ tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ;
typedef struct tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg;
typedef struct tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg;
typedef struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA;
typedef struct tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg;
typedef struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA;
typedef struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA;
typedef struct tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q tySequence__9ahcSjIErJohSBBFLwuF56Q;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content tySequence__9ahcSjIErJohSBBFLwuF56Q_Content;
typedef struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg tySequence__d8ZV4IMgHt9biik9cS9a0hrmg;
typedef struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw;
typedef struct tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug;
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__JArSTGkZV9bC6esVaXtV5AQ tyObject_Table__JArSTGkZV9bC6esVaXtV5AQ;
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__i84Wao44jI6syZk89agQa3A tyObject_Table__i84Wao44jI6syZk89agQa3A;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg_Content tySequence__fdmz6VkIf1ewwrssKYqRFg_Content;
typedef struct tyObject_Table__PP7WaQpDIVUGTt9a5wqrp2w tyObject_Table__PP7WaQpDIVUGTt9a5wqrp2w;
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__EBxQTL6E9bw5fvLqaWTwfjg tyObject_Table__EBxQTL6E9bw5fvLqaWTwfjg;
typedef struct tySequence__fz0REU1l0nYmKHXgMLRrIg tySequence__fz0REU1l0nYmKHXgMLRrIg;
typedef struct tySequence__fz0REU1l0nYmKHXgMLRrIg_Content tySequence__fz0REU1l0nYmKHXgMLRrIg_Content;
typedef struct tyObject_Table__9a6FPRm2dlvMYWS2z9bot9azw tyObject_Table__9a6FPRm2dlvMYWS2z9bot9azw;
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__cHiRnaNfFQX0bO8NeChGKw tyObject_Table__cHiRnaNfFQX0bO8NeChGKw;
typedef struct tySequence__v39a1OZ0bpQc9aC2dbEjYlPA tySequence__v39a1OZ0bpQc9aC2dbEjYlPA;
typedef struct tySequence__v39a1OZ0bpQc9aC2dbEjYlPA_Content tySequence__v39a1OZ0bpQc9aC2dbEjYlPA_Content;
typedef struct tyObject_Table__y1vW9cSD6Mnwig2jOdU5sZg tyObject_Table__y1vW9cSD6Mnwig2jOdU5sZg;
typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ tySequence__fIB1rTQ55aFonoft9a9bmljQ;
typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ_Content tySequence__fIB1rTQ55aFonoft9a9bmljQ_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 tyTuple__CvjVmQeIfivirDme2r5MRw tyTuple__CvjVmQeIfivirDme2r5MRw;
typedef struct tyObject_CountTable__5N9carAoH8U5E301UN9ccEmQ tyObject_CountTable__5N9carAoH8U5E301UN9ccEmQ;
typedef struct tySequence__hRbbzIynOoxrYjHTIKZ3Gw tySequence__hRbbzIynOoxrYjHTIKZ3Gw;
typedef struct tySequence__hRbbzIynOoxrYjHTIKZ3Gw_Content tySequence__hRbbzIynOoxrYjHTIKZ3Gw_Content;
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__dOpm9cFTt2PU9bP8hN2TR8cA tyObject_Table__dOpm9cFTt2PU9bP8hN2TR8cA;
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__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__Imb3Ip1lli9a9ceyNOElKADA tyTuple__Imb3Ip1lli9a9ceyNOElKADA;
typedef struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw tyTuple__OJFzEczluV8Jmo9bRpBfkzw;
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__Oubp8LPEu86EPyDuc56AXg tyTuple__Oubp8LPEu86EPyDuc56AXg;
typedef struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q tyTuple__0q9cmhneJEKnQERTpXXdz6Q;
typedef struct tyObject_PackedNode__YxKk4C732K04CNgtMhmc0w tyObject_PackedNode__YxKk4C732K04CNgtMhmc0w;
typedef struct tyTuple__48iPM3yLBKU5nyEuYwJvuQ tyTuple__48iPM3yLBKU5nyEuYwJvuQ;
typedef struct tyTuple__R3ddFrA0G9buJY57Qhf9cTpg tyTuple__R3ddFrA0G9buJY57Qhf9cTpg;
typedef struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ;
typedef struct tyTuple__7rmdAMLZ8fDd79brQn2ixZA tyTuple__7rmdAMLZ8fDd79brQn2ixZA;
typedef struct tyTuple__qPXRCRNQuZLLKto7CIIEzw tyTuple__qPXRCRNQuZLLKto7CIIEzw;
typedef struct tyObject_PackedInstantiation__C3FSePJFY8gUIMObsjT2dg tyObject_PackedInstantiation__C3FSePJFY8gUIMObsjT2dg;
typedef struct tyTuple__6kG8KAxm9aXPdLdlxcxqJJw tyTuple__6kG8KAxm9aXPdLdlxcxqJJw;
typedef struct tyTuple__TRK7rrwoha9bbDAdPWsqJMw tyTuple__TRK7rrwoha9bbDAdPWsqJMw;
typedef struct tyTuple__V1VWX9bHapuzCjpMfFfys5Q tyTuple__V1VWX9bHapuzCjpMfFfys5Q;
typedef struct tyObject_PackedSym__KKnx6w8Cc9aaVsaPOpaqxbw tyObject_PackedSym__KKnx6w8Cc9aaVsaPOpaqxbw;
typedef struct tyObject_PackedLib__EpwVLk0Fuc5Q9agKLMWedbg tyObject_PackedLib__EpwVLk0Fuc5Q9agKLMWedbg;
typedef struct tyTuple__anemVmHCFglLFt6LiEhFvg tyTuple__anemVmHCFglLFt6LiEhFvg;
typedef struct tyObject_PackedType__8M8VlYfwJ6AtpxG1HNn4bQ tyObject_PackedType__8M8VlYfwJ6AtpxG1HNn4bQ;
typedef struct tyTuple__MaWaKZwaGUqCXKsSK12rVg tyTuple__MaWaKZwaGUqCXKsSK12rVg;
typedef struct tyTuple__nL9cBxaIV4ZA9b9ceY79coA5eA tyTuple__nL9cBxaIV4ZA9b9ceY79coA5eA;
typedef struct tyTuple__1xWeGeoNoZxaLhTUDDWYyA tyTuple__1xWeGeoNoZxaLhTUDDWYyA;
typedef struct tyTuple__MZVSn3SE3XUBJOaMu7ofRQ tyTuple__MZVSn3SE3XUBJOaMu7ofRQ;
typedef struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA tyTuple__UvldbCB6B9ayi9bGYW7vJNLA;
typedef struct tyObject_LazyType__dsEGDq9cOhnzsRvTUTwwwuA tyObject_LazyType__dsEGDq9cOhnzsRvTUTwwwuA;
typedef struct tyObject_LazyInstantiation__n72c7MnOoHWBy9c9akgwGqEA tyObject_LazyInstantiation__n72c7MnOoHWBy9c9akgwGqEA;
typedef struct tySequence__YxH9cgSorHRI8ZPzHf47NNQ tySequence__YxH9cgSorHRI8ZPzHf47NNQ;
typedef struct tySequence__YxH9cgSorHRI8ZPzHf47NNQ_Content tySequence__YxH9cgSorHRI8ZPzHf47NNQ_Content;
typedef struct tyObject_TInstantiation__jr8MibvPn2sQBnO7XCoZRQ tyObject_TInstantiation__jr8MibvPn2sQBnO7XCoZRQ;
typedef struct tyTuple__lGHLhAAUpxgfrnQkIzNrMw tyTuple__lGHLhAAUpxgfrnQkIzNrMw;
typedef struct tyObject_TinyLineInfo__qW2GTIPjeOQ42q9c2MPWLLA tyObject_TinyLineInfo__qW2GTIPjeOQ42q9c2MPWLLA;
typedef struct tyTuple__V6P73hvHy70PBBwharKjig tyTuple__V6P73hvHy70PBBwharKjig;
struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA {
	NI32 module;
	NI32 item;
};
typedef NU8 tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q;
typedef NU16 tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg;
struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA {
	NU16 line;
	NI16 col;
	NI32 fileIndex;
};
typedef NU64 tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg;
typedef NU32 tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ;
typedef NU8 tyEnum_TLocKind__4f5UmCRM8alrCgj32FqIRQ;
typedef NU8 tyEnum_TStorageLoc__f19b6ZkRyh7BNPxlyjRbEGg;
typedef NU16 tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg;
struct 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_TSym__lYFc3T7YHHNBnaZR9at0NSg {
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA itemId;
	tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q kind;
union{
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* gcUnsafetyReason;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* transformedBody;
} _kind_1;
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* guard;
	NI bitsize;
	NI alignment;
} _kind_2;
};
	tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg magic;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* name;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* ownerField;
	tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg flags;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ast;
	tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options;
	NI position;
	NI32 offset;
	NI32 disamb;
	tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw loc;
	tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig* annex;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* constraint;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* instantiatedFrom;
};
typedef NU32 tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw;
typedef NU8 tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw;
struct tySequence__9ahcSjIErJohSBBFLwuF56Q {
  NI len; tySequence__9ahcSjIErJohSBBFLwuF56Q_Content* p;
};
struct tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typField;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info;
	tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw flags;
	tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind;
union{
	struct {
	NI64 intVal;
} _kind_1;
	struct {
	NF floatVal;
} _kind_2;
	struct {
	NimStringV2 strVal;
} _kind_3;
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
} _kind_4;
	struct {
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* ident;
} _kind_5;
	struct {
	tySequence__9ahcSjIErJohSBBFLwuF56Q sons;
} _kind_6;
};
};
typedef NU8 tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg;
typedef NU8 tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg;
typedef NU8 tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ;
typedef NU64 tySet_tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A;
struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg {
  NI len; tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content* p;
};
struct tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg {
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA itemId;
	tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kind;
	tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ callConv;
	tySet_tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A flags;
	tySequence__d8ZV4IMgHt9biik9cS9a0hrmg sons;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* ownerField;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
	NI64 size;
	NI16 align;
	NI16 paddingAtEnd;
	tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw loc;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typeInst;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA uniqueId;
};
typedef NU8 tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg[9];
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
	NimStringV2 Field0;
	NI Field1;
	NI Field2;
};
typedef NU8 tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA;
typedef NU8 tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w;
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__JArSTGkZV9bC6esVaXtV5AQ {
	tySequence__7lEisrXlQEzwtUKW5pzRCw data;
	NI counter;
};
typedef NU8 tyEnum_TBackend__CGWF9bdzxEysXyGIUwpK8cw;
typedef NU8 tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg;
typedef NU8 tyEnum_TSystemCC__A5wZwpTXF1SiKGvwgH1wrA;
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__emiAJ8okywrJw7ZHLzlXbQ[34];
struct tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA {
	NI elems;
	NI counter;
	NI max;
	tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* head;
	tySequence__ZeWVlH6DqG79b1pTDhrrUYA data;
	tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
};
struct tySequence__fdmz6VkIf1ewwrssKYqRFg {
  NI len; tySequence__fdmz6VkIf1ewwrssKYqRFg_Content* p;
};
struct tyObject_Table__i84Wao44jI6syZk89agQa3A {
	tySequence__fdmz6VkIf1ewwrssKYqRFg data;
	NI counter;
};
struct tySequence__kxu4GK0onha2t9bo86mdVAg {
  NI len; tySequence__kxu4GK0onha2t9bo86mdVAg_Content* p;
};
struct tyObject_Table__PP7WaQpDIVUGTt9a5wqrp2w {
	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__EBxQTL6E9bw5fvLqaWTwfjg {
	tySequence__fz0REU1l0nYmKHXgMLRrIg data;
	NI counter;
};
struct tySequence__Ip9aV1IKO2gVdheNOM31DCQ {
  NI len; tySequence__Ip9aV1IKO2gVdheNOM31DCQ_Content* p;
};
struct tyObject_Table__9a6FPRm2dlvMYWS2z9bot9azw {
	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__v39a1OZ0bpQc9aC2dbEjYlPA {
  NI len; tySequence__v39a1OZ0bpQc9aC2dbEjYlPA_Content* p;
};
struct tyObject_Table__cHiRnaNfFQX0bO8NeChGKw {
	tySequence__v39a1OZ0bpQc9aC2dbEjYlPA data;
	NI counter;
};
struct tySequence__fIB1rTQ55aFonoft9a9bmljQ {
  NI len; tySequence__fIB1rTQ55aFonoft9a9bmljQ_Content* p;
};
struct tyObject_Table__y1vW9cSD6Mnwig2jOdU5sZg {
	tySequence__fIB1rTQ55aFonoft9a9bmljQ 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__JArSTGkZV9bC6esVaXtV5AQ emittedTypeInfo;
	tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ startupPackedConfig;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg packageSyms;
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA deps;
	tyObject_Table__i84Wao44jI6syZk89agQa3A importDeps;
	NIM_BOOL suggestMode;
	NIM_BOOL invalidTransitiveClosure;
	NIM_BOOL interactive;
	NIM_BOOL withinSystem;
	tyObject_Table__PP7WaQpDIVUGTt9a5wqrp2w 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__EBxQTL6E9bw5fvLqaWTwfjg suggestSymbols;
	tyObject_Table__9a6FPRm2dlvMYWS2z9bot9azw 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__cHiRnaNfFQX0bO8NeChGKw canonTypes;
	tyObject_Table__y1vW9cSD6Mnwig2jOdU5sZg 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;
};
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__JArSTGkZV9bC6esVaXtV5AQ 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__cEzzaeCrXWo9cfLClsd4c3w[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__cEzzaeCrXWo9cfLClsd4c3w modifiedyNotes;
	tySet_tyEnum_TMsgKind__cEzzaeCrXWo9cfLClsd4c3w cmdlineNotes;
	tySet_tyEnum_TMsgKind__cEzzaeCrXWo9cfLClsd4c3w foreignPackageNotes;
	tySet_tyEnum_TMsgKind__cEzzaeCrXWo9cfLClsd4c3w notes;
	tySet_tyEnum_TMsgKind__cEzzaeCrXWo9cfLClsd4c3w warningAsErrors;
	tySet_tyEnum_TMsgKind__cEzzaeCrXWo9cfLClsd4c3w mainPackageNotes;
	NI mainPackageId;
	NI errorCounter;
	NI hintCounter;
	NI warnCounter;
	NI errorMax;
	NI maxLoopIterationsVM;
	NI maxCallDepthVM;
	NIM_BOOL isVmTrace;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* configVars;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* symbols;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* packageCache;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ nimblePaths;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ searchPaths;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ lazyPaths;
	NimStringV2 outFile;
	NimStringV2 outDir;
	NimStringV2 jsonBuildFile;
	NimStringV2 prefixDir;
	NimStringV2 libpath;
	NimStringV2 nimcacheDir;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* dllOverrides;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* moduleOverrides;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* cfileSpecificOptions;
	NimStringV2 projectName;
	NimStringV2 projectPath;
	NimStringV2 projectFull;
	NIM_BOOL projectIsStdin;
	NimStringV2 stdinFile;
	tySet_tyEnum_StdOrrKind__so1PI9cHP1cN622ePtqa0yw lastMsgWasDot;
	NI32 projectMainIdx;
	NI32 projectMainIdx2;
	NimStringV2 command;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ commandArgs;
	NimStringV2 commandLine;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ extraCmds;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitImports;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitIncludes;
	NimStringV2 docSeeSrcUrl;
	NimStringV2 docRoot;
	NimStringV2 docCmd;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ configFiles;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ cIncludes;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLibs;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLinkedLibs;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ externalToLink;
	NimStringV2 linkOptionsCmd;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ compileOptionsCmd;
	NimStringV2 linkOptions;
	NimStringV2 compileOptions;
	NimStringV2 cCompilerPath;
	tySequence__xOJ2kx2lq9bBfIm3IXnde3Q toCompile;
	tyProc__QQyR5yGA47tr5TwLxcC4Gw suggestionResultHook;
	NI suggestVersion;
	NI suggestMaxResults;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA lastLineInfo;
	tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
	tyProc__DA9aR62IikoxFqfC5rIT9cuw structuredErrorHook;
	NimStringV2 cppCustomNamespace;
	NimStringV2 nimMainPrefix;
	tyObject_ProfileDatacolonObjectType___R9cEb9cNTzPRldVmD9bCDO0xQ* vmProfileData;
	NIM_BOOL expandProgress;
	NI expandLevels;
	NimStringV2 expandNodeResult;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA expandPosition;
	NimStringV2 currentConfigDir;
	NI clientProcessId;
};
typedef NU8 tyEnum_Feature__cS3g03qGjroRW9aHnqpz8MQ;
struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA {
	NI id;
	NimStringV2 s;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* next;
	NI h;
};
typedef NU8 tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q;
struct tyTuple__CvjVmQeIfivirDme2r5MRw {
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA Field0;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* Field1;
};
typedef NU8 tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A;
typedef NU16 tySet_tyEnum_TTypeCmpFlag__1219bojhd9apB6FQkQGJbzzQ;
typedef NU8 tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A;
struct tySequence__hRbbzIynOoxrYjHTIKZ3Gw {
  NI len; tySequence__hRbbzIynOoxrYjHTIKZ3Gw_Content* p;
};
struct tyObject_CountTable__5N9carAoH8U5E301UN9ccEmQ {
	tySequence__hRbbzIynOoxrYjHTIKZ3Gw data;
	NI counter;
	NIM_BOOL isSorted;
};
struct tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug {
	NI32 module;
	NI32 symId;
	NI32 typeId_0;
	NIM_BOOL sealed;
	tyObject_CountTable__5N9carAoH8U5E301UN9ccEmQ disambTable;
};
typedef tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* tyArray__AqHRYYCaB9bLrJbrdaL5KOA[2];
typedef NU8 tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw;
struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content { NI cap; tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* data[SEQ_DECL_SIZE]; };
struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content { NI cap; tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* 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__dOpm9cFTt2PU9bP8hN2TR8cA {
	tySequence__9cnx3zXnWzeclW8Ko4oUgAQ data;
	NI counter;
};
struct tyObject_PackedEncoder__FGa18gE2dyYyuq9ckHprjTQ {
	NI32 thisModule;
	NI32 lastFile;
	NU32 lastLit;
	tyObject_Table__dOpm9cFTt2PU9bP8hN2TR8cA 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;
	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 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__qtqsWM5aXmcpMIVmvq3kAA[16];
struct tyTuple__Imb3Ip1lli9a9ceyNOElKADA {
	NI Field0;
	tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* Field2;
};
struct tySequence__v39a1OZ0bpQc9aC2dbEjYlPA_Content { NI cap; tyTuple__Imb3Ip1lli9a9ceyNOElKADA data[SEQ_DECL_SIZE]; };
struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw {
	NI Field0;
	NI Field1;
	tyArray__qtqsWM5aXmcpMIVmvq3kAA Field2;
};
struct tySequence__fIB1rTQ55aFonoft9a9bmljQ_Content { NI cap; tyTuple__OJFzEczluV8Jmo9bRpBfkzw 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__Oubp8LPEu86EPyDuc56AXg {
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* Field0;
	NI Field1;
};
struct tySequence__hRbbzIynOoxrYjHTIKZ3Gw_Content { NI cap; tyTuple__Oubp8LPEu86EPyDuc56AXg 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]; };
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u3240)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getDispatcher__cgmeth_u36)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0);
static N_INLINE(NI, len__ast_u3175)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u4561)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg** dest_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__stdZassertions_u242)(NimStringV2 msg_p0);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u3366)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** dest_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_u3246)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, genConv__cgmeth_u15)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* d_p1, NIM_BOOL downcast_p2, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, skipTypes__ast_u5358)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0, tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kinds_p1);
N_LIB_PRIVATE N_NIMCALL(NI, inheritanceDiff__types_u2782)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* a_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* b_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newNodeIT__ast_u4097)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p2);
N_LIB_PRIVATE N_NIMCALL(void, add__ast_u3200)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* father_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* son_p1);
N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_u1594)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, NimStringV2 errMsg_p2, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2_p3);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3363)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3237)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dest_p0);
N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_u1223)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA msg_p2, NimStringV2 arg_p3, tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w eh_p4, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2_p5, NIM_BOOL isRaw_p6, NIM_BOOL ignoreError_p7);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, copyMem__system_u1718)(void* dest_p0, void* source_p1, NI size_p2);
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___renderer_u2143)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u2627)(NimStringV2 dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u4558)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getModule__astalgo_u156)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0);
static N_INLINE(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, owner__ast_u6225)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* s_p0);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, firstParamType__ast_u5342)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefined__options_u958)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, NimStringV2 symbol_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, typeToString__types_u54)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ_p0, tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q prefer_p1);
N_LIB_PRIVATE N_NIMCALL(tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A, sameMethodBucket__cgmeth_u69)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* a_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* b_p1, NIM_BOOL multiMethods_p2);
static N_INLINE(NI, signatureLen__ast_u5589)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_u3372)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** dest_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* src_p1);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, elementType__ast_u5310)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg**, X5BX5D___ast_u5260)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg** s_p0, NI s_p0Len_0, NI i_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameType__types_u1809)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* a_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* b_p1, tySet_tyEnum_TTypeCmpFlag__1219bojhd9apB6FQkQGJbzzQ flags_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameTypeOrNil__types_u1834)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* a_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* b_p1, tySet_tyEnum_TTypeCmpFlag__1219bojhd9apB6FQkQGJbzzQ flags_p2);
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, returnType__ast_u5333)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0);
static N_INLINE(void, setReturnType__ast_u5336)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* r_p1);
N_LIB_PRIVATE N_NIMCALL(void, add__renderer_u83)(tySequence__ZCZaCk14bTmSb6LMW9aWPVA* x_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* y_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, eqdup___ast_u4564)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* src_p0);
N_LIB_PRIVATE N_NIMCALL(void, attachDispatcher__cgmeth_u157)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dispatcher_p1);
N_LIB_PRIVATE N_NIMCALL(void, setLen__ast_u3703)(tySequence__9ahcSjIErJohSBBFLwuF56Q* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newNodeI__ast_u4076)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1);
N_LIB_PRIVATE N_NIMCALL(void, fixupDispatcher__cgmeth_u194)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* meth_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* disp_p1, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, copyTree__ast_u6862)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p0);
N_LIB_PRIVATE N_NIMCALL(void, checkMethodEffects__sempass2_u7741)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* disp_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* branch_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__cgmeth_u298)(tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA t_p0, tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA key_p1);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___cgmeth_u401)(tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA* t_p0, tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA key_p1, NI val_p2);
N_LIB_PRIVATE N_NIMCALL(void, inc__cgmeth_u617)(tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA* t_p0, tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA key_p1, NI val_p2);
N_LIB_PRIVATE N_NIMCALL(void, add__cgmeth_u726)(tySequence__kHjIdgrpmuSn9cUIIKpSiDg* x_p0, tyTuple__CvjVmQeIfivirDme2r5MRw y_p1);
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1);
static N_INLINE(void, nimSetMem__systemZmemory_u7)(void* a_p0, int v_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, createDispatcher__cgmeth_u168)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0, tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, copySym__ast_u6229)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, copyType__ast_u6217)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p2);
N_LIB_PRIVATE N_NIMCALL(void, copyTypeProps__modulegraphs_u10660)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, NI module_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* dest_p2, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* src_p3);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___system_u2636)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_u4567)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg** dest_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newSymNode__ast_u5147)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___ast_u4555)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg** dest_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___msgs_u710)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1);
N_LIB_PRIVATE N_NIMCALL(NI, cmpSignatures__cgmeth_u772)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* a_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* b_p1, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* relevantCols_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__astalgo_u2848)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s_p0, NI key_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getSysMagic__magicsys_u25)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, NimStringV2 name_p2, tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg m_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, getSysType__magicsys_u54)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg kind_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newTree__ast_u4154)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** children_p1, NI children_p1Len_0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getCompilerProc__magicsys_u149)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, NimStringV2 name_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___ast_u3234)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0);
static N_INLINE(void, initIntSet__pureZcollectionsZintsets_u598)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* Result);
N_LIB_PRIVATE N_NIMCALL(void, initPackedSet__pureZcollectionsZintsets_u37)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* Result);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, relevantCol__cgmeth_u754)(tySequence__ZCZaCk14bTmSb6LMW9aWPVA methods_p0, NI col_p1);
N_LIB_PRIVATE N_NIMCALL(void, incl__pureZcollectionsZintsets_u366)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s_p0, NI key_p1);
N_LIB_PRIVATE N_NIMCALL(void, sortBucket__cgmeth_u837)(tySequence__ZCZaCk14bTmSb6LMW9aWPVA* a_p0, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* relevantCols_p1);
N_LIB_PRIVATE N_NIMCALL(void, addDispatchers__modulegraphs_u6876)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* value_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, genIfDispatcher__cgmeth_u852)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tySequence__ZCZaCk14bTmSb6LMW9aWPVA methods_p1, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* relevantCols_p2, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p3);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_u230)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* dest_p0);
static const struct {
  NI cap; NIM_CHAR data[49+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_2 = { 49 | NIM_STRLIT_FLAG, "cgmeth.nim(49, 5) `sfDispatcher in result.flags` " };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_3 = {49, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_2};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__zwdrTKOAAM6OvWnXdBD4GQ_4 = {
0x10, 0xa9, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[33+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_5 = { 33 | NIM_STRLIT_FLAG, "cgmeth.genConv: no upcast allowed" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_6 = {33, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_5};
static const struct {
  NI cap; NIM_CHAR data[61+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_8 = { 61 | NIM_STRLIT_FLAG, "/home/runner/work/nightlies/nightlies/nim/compiler/cgmeth.nim" };
static const struct {
  NI cap; NIM_CHAR data[35+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_9 = { 35 | NIM_STRLIT_FLAG, "cgmeth.genConv: no downcast allowed" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_10 = {35, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_9};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_12 = { 1 | NIM_STRLIT_FLAG, "\'" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_13 = {1, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_12};
static const struct {
  NI cap; NIM_CHAR data[20+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_14 = { 20 | NIM_STRLIT_FLAG, "\' lacks a dispatcher" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_15 = {20, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_14};
static const struct {
  NI cap; NIM_CHAR data[28+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_17 = { 28 | NIM_STRLIT_FLAG, "nimInternalNonVtablesTesting" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_18 = {28, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_17};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_19 = { 8 | NIM_STRLIT_FLAG, "method `" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_20 = {8, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_19};
static const struct {
  NI cap; NIM_CHAR data[56+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_21 = { 56 | NIM_STRLIT_FLAG, "` can be defined only in the same module with its type (" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_22 = {56, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_21};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_23 = { 1 | NIM_STRLIT_FLAG, ")" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_24 = {1, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_23};
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_26 = {8, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_19};
static const struct {
  NI cap; NIM_CHAR data[42+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_27 = { 42 | NIM_STRLIT_FLAG, "` is not allowed to have \'importc\' pragmas" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_28 = {42, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_27};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__zwdrTKOAAM6OvWnXdBD4GQ_30 = {
0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[20+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_31 = { 20 | NIM_STRLIT_FLAG, "method is not a base" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_32 = {20, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_31};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__zwdrTKOAAM6OvWnXdBD4GQ_34 = {
0x10, 0x09, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_35 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_36 = {0, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_35};
static const struct {
  NI cap; NIM_CHAR data[42+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_37 = { 42 | NIM_STRLIT_FLAG, "invalid declaration order; cannot attach \'" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_38 = {42, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_37};
static const struct {
  NI cap; NIM_CHAR data[26+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_39 = { 26 | NIM_STRLIT_FLAG, "\' to method defined here: " };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_40 = {26, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_39};
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_42 = {0, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_35};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_44 = { 3 | NIM_STRLIT_FLAG, "and" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_45 = {3, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_44};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_46 = { 2 | NIM_STRLIT_FLAG, "of" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_47 = {2, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_46};
static NIM_CONST tySet_tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg TM__zwdrTKOAAM6OvWnXdBD4GQ_48 = {
0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00,
0x00}
;
static const struct {
  NI cap; NIM_CHAR data[11+1];
} TM__zwdrTKOAAM6OvWnXdBD4GQ_49 = { 11 | NIM_STRLIT_FLAG, "chckNilDisp" };
static const NimStringV2 TM__zwdrTKOAAM6OvWnXdBD4GQ_50 = {11, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_49};
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__zwdrTKOAAM6OvWnXdBD4GQ_7 = {{61, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_8},
((NI)34),
((NI)32)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__zwdrTKOAAM6OvWnXdBD4GQ_11 = {{61, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_8},
((NI)39),
((NI)21)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__zwdrTKOAAM6OvWnXdBD4GQ_16 = {{61, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_8},
((NI)64),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__zwdrTKOAAM6OvWnXdBD4GQ_25 = {{61, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_8},
((NI)164),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__zwdrTKOAAM6OvWnXdBD4GQ_29 = {{61, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_8},
((NI)167),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__zwdrTKOAAM6OvWnXdBD4GQ_33 = {{61, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_8},
((NI)182),
((NI)18)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__zwdrTKOAAM6OvWnXdBD4GQ_41 = {{61, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_8},
((NI)196),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__zwdrTKOAAM6OvWnXdBD4GQ_43 = {{61, (NimStrPayload*)&TM__zwdrTKOAAM6OvWnXdBD4GQ_8},
((NI)199),
((NI)11)}
;
extern NIM_CONST tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA unknownLineInfo__lineinfos_u361;
extern NIM_BOOL nimInErrorMode__system_u4302;
static N_INLINE(NI, len__ast_u3175)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NI result;
	NI T1_;
	T1_ = (*n_p0)._kind_6.sons.len;
	result = T1_;
	return result;
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4302);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, getDispatcher__cgmeth_u36)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__ast_u3175((*s_p0).ast);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(((NI)8) < T3_)) goto LA4_;
		eqcopy___ast_u4561(&result, (*(*(*s_p0).ast)._kind_6.sons.p->data[((NI)8)])._kind_4.sym);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			if (!!((((*result).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)30)))&63U)))!=0))) goto LA8_;
			failedAssertImpl__stdZassertions_u242(TM__zwdrTKOAAM6OvWnXdBD4GQ_3);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA8_: ;
	}
	goto LA1_;
LA4_: ;
	{
		result = ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL);
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, genConv__cgmeth_u15)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* d_p1, NIM_BOOL downcast_p2, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p3) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* dest_1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* source_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	dest_1 = NIM_NIL;
	source_1 = NIM_NIL;
	dest_1 = skipTypes__ast_u5358(d_p1, TM__zwdrTKOAAM6OvWnXdBD4GQ_4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	source_1 = skipTypes__ast_u5358((*n_p0).typField, TM__zwdrTKOAAM6OvWnXdBD4GQ_4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		NI diff_1;
		T4_ = (NIM_BOOL)0;
		T4_ = ((*source_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)17));
		if (!(T4_)) goto LA5_;
		T4_ = ((*dest_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)17));
LA5_: ;
		if (!T4_) goto LA6_;
		diff_1 = inheritanceDiff__types_u2782(dest_1, source_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			if (!(diff_1 == ((NI)2147483647))) goto LA10_;
			eqcopy___ast_u3240(&result, n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA8_;
LA10_: ;
		{
			if (!(diff_1 < ((NI)0))) goto LA13_;
			result = newNodeIT__ast_u4097(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)67), (*n_p0).info, d_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			add__ast_u3200(result, n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			{
				if (!downcast_p2) goto LA17_;
				internalErrorImpl__msgs_u1594(conf_p3, (*n_p0).info, TM__zwdrTKOAAM6OvWnXdBD4GQ_6, TM__zwdrTKOAAM6OvWnXdBD4GQ_7);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
LA17_: ;
		}
		goto LA8_;
LA13_: ;
		{
			if (!(((NI)0) < diff_1)) goto LA20_;
			result = newNodeIT__ast_u4097(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)66), (*n_p0).info, d_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			add__ast_u3200(result, n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			{
				if (!!(downcast_p2)) goto LA24_;
				internalErrorImpl__msgs_u1594(conf_p3, (*n_p0).info, TM__zwdrTKOAAM6OvWnXdBD4GQ_10, TM__zwdrTKOAAM6OvWnXdBD4GQ_11);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
LA24_: ;
		}
		goto LA8_;
LA20_: ;
		{
			eqcopy___ast_u3240(&result, n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA8_: ;
	}
	goto LA2_;
LA6_: ;
	{
		eqcopy___ast_u3240(&result, n_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3363(source_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3363(dest_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest_p0, source_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, copyMem__system_u1718)(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_u1718(((void*) ((&(*(*dest_p0).p).data[(*dest_p0).len]))), ((void*) ((&(*src_p1.p).data[((NI)0)]))), (src_p1.len));
		(*dest_p0).len += src_p1.len;
		(*(*dest_p0).p).data[(*dest_p0).len] = 0;
	}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, methodCall__cgmeth_u48)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p1) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* disp_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	disp_1 = NIM_NIL;
	eqcopy___ast_u3240(&result, n_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	disp_1 = getDispatcher__cgmeth_u36((*(*result)._kind_6.sons.p->data[((NI)0)])._kind_4.sym);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!!((disp_1 == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)))) goto LA4_;
		eqcopy___ast_u3366(&(*(*result)._kind_6.sons.p->data[((NI)0)]).typField, (*disp_1).typ);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqcopy___ast_u4561(&(*(*result)._kind_6.sons.p->data[((NI)0)])._kind_4.sym, disp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__ast_u3175(result);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			i_2 = ((NI)1);
			{
				while (1) {
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T9_;
					if (!(i_2 < colontmp_)) goto LA8;
					i_1 = i_2;
					T9_ = NIM_NIL;
					T9_ = genConv__cgmeth_u15((*result)._kind_6.sons.p->data[i_1], (*(*disp_1).typ).sons.p->data[i_1], NIM_TRUE, conf_p1);
					if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3237(T9_); goto LA1_;}
					eqsink___ast_u3246(&(*result)._kind_6.sons.p->data[i_1], T9_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					i_2 += ((NI)1);
				} LA8: ;
			}
		}
	}
	goto LA2_;
LA4_: ;
	{
		NimStringV2 colontmpD_;
		NimStringV2 colontmpD__2;
		NimStringV2 T12_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		T12_.len = 0; T12_.p = NIM_NIL;
		colontmpD_ = dollar___renderer_u2143((*result)._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		T12_ = rawNewString(colontmpD_.len + 21);
appendString((&T12_), TM__zwdrTKOAAM6OvWnXdBD4GQ_13);
appendString((&T12_), colontmpD_);
appendString((&T12_), TM__zwdrTKOAAM6OvWnXdBD4GQ_15);
		colontmpD__2 = T12_;
		liMessage__msgs_u1223(conf_p1, (*n_p0).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__2, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__zwdrTKOAAM6OvWnXdBD4GQ_16, NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		{
			LA11_:;
		}
		{
			eqdestroy___system_u2627(colontmpD__2);
			eqdestroy___system_u2627(colontmpD_);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u4558(disp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, owner__ast_u6225)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* s_p0) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	eqcopy___ast_u4561(&result, (*s_p0).ownerField);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, firstParamType__ast_u5342)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	eqcopy___ast_u3366(&result, (*n_p0).sons.p->data[((NI)1)]);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, signatureLen__ast_u5589)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_p0) {
	NI result;
	NI T1_;
	T1_ = (*t_p0).sons.len;
	result = T1_;
	return result;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg**, X5BX5D___ast_u5260)(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_u5310)(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_u5260((((*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_u3366(&result, (*T1_));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*, returnType__ast_u5333)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0) {
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	eqcopy___ast_u3366(&result, (*n_p0).sons.p->data[((NI)0)]);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, setReturnType__ast_u5336)(tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* n_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* r_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqcopy___ast_u3366(&(*n_p0).sons.p->data[((NI)0)], r_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A, sameMethodBucket__cgmeth_u69)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* a_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* b_p1, NIM_BOOL multiMethods_p2) {
	tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A result;
	NI i_1;
NIM_BOOL oldNimErrFin17_;
NIM_BOOL oldNimErrFin12_;
NIM_BOOL oldNimErrFin82_;
NIM_BOOL oldNimErrFin76_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)0);
	{
		if (!!(((*(*a_p0).name).id == (*(*b_p1).name).id))) goto LA3_;
		goto BeforeRet_;
	}
LA3_: ;
	{
		NI T7_;
		NI T8_;
		T7_ = (NI)0;
		T7_ = signatureLen__ast_u5589((*a_p0).typ);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T8_ = (NI)0;
		T8_ = signatureLen__ast_u5589((*b_p1).typ);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!!((T7_ == T8_))) goto LA9_;
		goto BeforeRet_;
	}
LA9_: ;
	i_1 = ((NI)0);
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* x_1;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* y_1;
		x_1 = NIM_NIL;
		y_1 = NIM_NIL;
		{
			NI i_2;
			NI colontmp_;
			NI T14_;
			NI i_3;
			i_2 = (NI)0;
			colontmp_ = (NI)0;
			T14_ = (*(*a_p0).typ).sons.len;
			colontmp_ = T14_;
			i_3 = ((NI)1);
			{
				while (1) {
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* aa_1;
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* bb_1;
					if (!(i_3 < colontmp_)) goto LA16;
					aa_1 = NIM_NIL;
					bb_1 = NIM_NIL;
					i_2 = i_3;
					eqcopy___ast_u3366(&x_1, (*(*a_p0).typ).sons.p->data[i_2]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
					eqcopy___ast_u3366(&y_1, (*(*b_p1).typ).sons.p->data[i_2]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
					i_1 += ((NI)1);
					eqcopy___ast_u3366(&aa_1, x_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
					eqcopy___ast_u3366(&bb_1, y_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
					{
						while (1) {
							tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T20_;
							tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T21_;
							T20_ = NIM_NIL;
							T20_ = skipTypes__ast_u5358(aa_1, TM__zwdrTKOAAM6OvWnXdBD4GQ_30);
							if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3363(T20_); goto LA17_;}
							eqsink___ast_u3372(&aa_1, T20_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
							T21_ = NIM_NIL;
							T21_ = skipTypes__ast_u5358(bb_1, TM__zwdrTKOAAM6OvWnXdBD4GQ_30);
							if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3363(T21_); goto LA17_;}
							eqsink___ast_u3372(&bb_1, T21_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
							{
								NIM_BOOL T24_;
								tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T28_;
								tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T29_;
								T24_ = (NIM_BOOL)0;
								T24_ = ((*aa_1).kind == (*bb_1).kind);
								if (!(T24_)) goto LA25_;
								T24_ = ((*aa_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)23) || (*aa_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21) || (*aa_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22) || (*aa_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)47) || (*aa_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)46));
LA25_: ;
								if (!T24_) goto LA26_;
								T28_ = NIM_NIL;
								T28_ = elementType__ast_u5310(aa_1);
								if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3363(T28_); goto LA17_;}
								eqsink___ast_u3372(&aa_1, T28_);
								if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
								T29_ = NIM_NIL;
								T29_ = elementType__ast_u5310(bb_1);
								if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3363(T29_); goto LA17_;}
								eqsink___ast_u3372(&bb_1, T29_);
								if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
							}
							goto LA22_;
LA26_: ;
							{
								goto LA18;
							}
LA22_: ;
						}
					} LA18: ;
					{
						tySet_tyEnum_TTypeCmpFlag__1219bojhd9apB6FQkQGJbzzQ T33_;
						NIM_BOOL T34_;
						T33_ = 0;
						T34_ = (NIM_BOOL)0;
						T34_ = sameType__types_u1809(x_1, y_1, T33_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
						if (!T34_) goto LA35_;
						{
							NIM_BOOL T39_;
							T39_ = (NIM_BOOL)0;
							T39_ = ((*aa_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)17));
							if (!(T39_)) goto LA40_;
							T39_ = !((result == ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)1)));
LA40_: ;
							if (!T39_) goto LA41_;
							result = ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)2);
						}
LA41_: ;
					}
					goto LA31_;
LA35_: ;
					{
						NIM_BOOL T44_;
						NIM_BOOL T45_;
						NIM_BOOL T48_;
						NI diff_1;
						T44_ = (NIM_BOOL)0;
						T45_ = (NIM_BOOL)0;
						T45_ = ((*aa_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)17));
						if (!(T45_)) goto LA46_;
						T45_ = ((*bb_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)17));
LA46_: ;
						T44_ = T45_;
						if (!(T44_)) goto LA47_;
						T48_ = (NIM_BOOL)0;
						T48_ = (i_1 == ((NI)1));
						if (T48_) goto LA49_;
						T48_ = multiMethods_p2;
LA49_: ;
						T44_ = T48_;
LA47_: ;
						if (!T44_) goto LA50_;
						diff_1 = inheritanceDiff__types_u2782(bb_1, aa_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
						{
							if (!(diff_1 < ((NI)0))) goto LA54_;
							{
								if (!!((result == ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)1)))) goto LA58_;
								result = ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)2);
							}
							goto LA56_;
LA58_: ;
							{
								result = ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)0);
								eqdestroy___ast_u3363(bb_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
								eqdestroy___ast_u3363(aa_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
								eqdestroy___ast_u3363(y_1);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								eqdestroy___ast_u3363(x_1);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								goto BeforeRet_;
							}
LA56_: ;
						}
						goto LA52_;
LA54_: ;
						{
							NIM_BOOL T62_;
							T62_ = (NIM_BOOL)0;
							T62_ = !((diff_1 == ((NI)2147483647)));
							if (!(T62_)) goto LA63_;
							T62_ = !(((((*a_p0).flags | (*b_p1).flags) &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)2)))&63U)))!=0));
LA63_: ;
							if (!T62_) goto LA64_;
							result = ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)1);
						}
						goto LA52_;
LA64_: ;
						{
							result = ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)0);
							eqdestroy___ast_u3363(bb_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
							eqdestroy___ast_u3363(aa_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
							eqdestroy___ast_u3363(y_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							eqdestroy___ast_u3363(x_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							goto BeforeRet_;
						}
LA52_: ;
					}
					goto LA31_;
LA50_: ;
					{
						result = ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)0);
						eqdestroy___ast_u3363(bb_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
						eqdestroy___ast_u3363(aa_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
						eqdestroy___ast_u3363(y_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						eqdestroy___ast_u3363(x_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA31_: ;
					i_3 += ((NI)1);
					{
						LA17_:;
					}
					{
						oldNimErrFin17_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3363(bb_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
						eqdestroy___ast_u3363(aa_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
						*nimErr_ = oldNimErrFin17_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
				} LA16: ;
			}
		}
		{
			LA12_:;
		}
		{
			oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3363(y_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u3363(x_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin12_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__2;
		if (!(result == ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)2))) goto LA74_;
		colontmpD_ = NIM_NIL;
		colontmpD__2 = NIM_NIL;
		{
			NIM_BOOL T79_;
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__3;
			tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__4;
			colontmpD_ = returnType__ast_u5333((*a_p0).typ);
			if (NIM_UNLIKELY(*nimErr_)) goto LA76_;
			colontmpD__2 = returnType__ast_u5333((*b_p1).typ);
			if (NIM_UNLIKELY(*nimErr_)) goto LA76_;
			T79_ = (NIM_BOOL)0;
			T79_ = sameTypeOrNil__types_u1834(colontmpD_, colontmpD__2, 256);
			if (NIM_UNLIKELY(*nimErr_)) goto LA76_;
			if (!!(T79_)) goto LA80_;
			colontmpD__3 = NIM_NIL;
			colontmpD__4 = NIM_NIL;
			{
				NIM_BOOL T85_;
				tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__5;
				T85_ = (NIM_BOOL)0;
				colontmpD__3 = returnType__ast_u5333((*b_p1).typ);
				if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
				T85_ = !((colontmpD__3 == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL)));
				if (!(T85_)) goto LA86_;
				colontmpD__4 = returnType__ast_u5333((*b_p1).typ);
				if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
				T85_ = ((*colontmpD__4).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)6));
LA86_: ;
				if (!T85_) goto LA87_;
				colontmpD__5 = NIM_NIL;
				colontmpD__5 = returnType__ast_u5333((*a_p0).typ);
				if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
				setReturnType__ast_u5336((*b_p1).typ, colontmpD__5);
				if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
				eqdestroy___ast_u3363(colontmpD__5);
				if (NIM_UNLIKELY(*nimErr_)) goto LA82_;
			}
			goto LA83_;
LA87_: ;
			{
				result = ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)0);
				eqdestroy___ast_u3363(colontmpD__4);
				if (NIM_UNLIKELY(*nimErr_)) goto LA76_;
				eqdestroy___ast_u3363(colontmpD__3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA76_;
				eqdestroy___ast_u3363(colontmpD__2);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				eqdestroy___ast_u3363(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto BeforeRet_;
			}
LA83_: ;
			{
				LA82_:;
			}
			{
				oldNimErrFin82_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3363(colontmpD__4);
				if (NIM_UNLIKELY(*nimErr_)) goto LA76_;
				eqdestroy___ast_u3363(colontmpD__3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA76_;
				*nimErr_ = oldNimErrFin82_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA76_;
		}
LA80_: ;
		{
			LA76_:;
		}
		{
			oldNimErrFin76_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3363(colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___ast_u3363(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin76_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA74_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, attachDispatcher__cgmeth_u157)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dispatcher_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__ast_u3175((*s_p0).ast);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(((NI)8) < T3_)) goto LA4_;
		eqcopy___ast_u3240(&(*(*s_p0).ast)._kind_6.sons.p->data[((NI)8)], dispatcher_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA4_: ;
	{
		setLen__ast_u3703((&(*(*s_p0).ast)._kind_6.sons), ((NI)9));
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T11_;
			if (!((*(*s_p0).ast)._kind_6.sons.p->data[((NI)7)] == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL))) goto LA9_;
			T11_ = NIM_NIL;
			T11_ = newNodeI__ast_u4076(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1), (*s_p0).info);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3237(T11_); goto BeforeRet_;}
			eqsink___ast_u3246(&(*(*s_p0).ast)._kind_6.sons.p->data[((NI)7)], T11_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA9_: ;
		eqcopy___ast_u3240(&(*(*s_p0).ast)._kind_6.sons.p->data[((NI)8)], dispatcher_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, fixupDispatcher__cgmeth_u194)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* meth_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* disp_p1, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p2) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		NIM_BOOL T4_;
		NI T5_;
		NI T7_;
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T11_;
		T3_ = (NIM_BOOL)0;
		T4_ = (NIM_BOOL)0;
		T5_ = (NI)0;
		T5_ = len__ast_u3175((*disp_p1).ast);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T4_ = (((NI)7) < T5_);
		if (!(T4_)) goto LA6_;
		T7_ = (NI)0;
		T7_ = len__ast_u3175((*meth_p0).ast);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T4_ = (((NI)7) < T7_);
LA6_: ;
		T3_ = T4_;
		if (!(T3_)) goto LA8_;
		T3_ = ((*(*(*disp_p1).ast)._kind_6.sons.p->data[((NI)7)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1));
LA8_: ;
		if (!T3_) goto LA9_;
		T11_ = NIM_NIL;
		T11_ = copyTree__ast_u6862((*(*meth_p0).ast)._kind_6.sons.p->data[((NI)7)]);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3237(T11_); goto BeforeRet_;}
		eqsink___ast_u3246(&(*(*disp_p1).ast)._kind_6.sons.p->data[((NI)7)], T11_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA9_: ;
	}BeforeRet_: ;
}
static N_INLINE(void, nimSetMem__systemZmemory_u7)(void* a_p0, int v_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a_p0, v_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimSetMem__systemZmemory_u7(p_p0, ((int)0), size_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, createDispatcher__cgmeth_u168)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p0, tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p2) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* result;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* disp_1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* old_1;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD_;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__2;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__3;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__4;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* T2_;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T7_;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* T8_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	disp_1 = NIM_NIL;
	old_1 = NIM_NIL;
	colontmpD_ = NIM_NIL;
	colontmpD__2 = NIM_NIL;
	colontmpD__3 = NIM_NIL;
	colontmpD__4 = NIM_NIL;
	disp_1 = copySym__ast_u6229(s_p0, idgen_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*disp_1).flags |= ((NU64)1)<<(((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)30))) & 63);
	(*disp_1).flags &= ~(((NU64)1) << (((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)1))) & 63));
	eqcopy___ast_u3366(&old_1, (*disp_1).typ);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = owner__ast_u6225((*disp_1).typ);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T2_ = NIM_NIL;
	T2_ = copyType__ast_u6217((*disp_1).typ, idgen_p2, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3363(T2_); goto LA1_;}
	eqsink___ast_u3372(&(*disp_1).typ, T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	copyTypeProps__modulegraphs_u10660(g_p1, ((NI) ((*idgen_p2).module)), (*disp_1).typ, old_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!((*(*disp_1).typ).callConv == ((tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ)5))) goto LA5_;
		(*(*disp_1).typ).callConv = ((tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ)0);
	}
LA5_: ;
	T7_ = NIM_NIL;
	T7_ = copyTree__ast_u6862((*s_p0).ast);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3237(T7_); goto LA1_;}
	eqsink___ast_u3246(&(*disp_1).ast, T7_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T8_ = NIM_NIL;
	T8_ = newNodeI__ast_u4076(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1), (*s_p0).info);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u3237(T8_); goto LA1_;}
	eqsink___ast_u3246(&(*(*disp_1).ast)._kind_6.sons.p->data[((NI)6)], T8_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqsink___system_u2636((&(*disp_1).loc.snippet), TM__zwdrTKOAAM6OvWnXdBD4GQ_36);
	{
		colontmpD__2 = returnType__ast_u5333((*s_p0).typ);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!((colontmpD__2 == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL)))) goto LA11_;
		{
			NI T15_;
			tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T18_;
			T15_ = (NI)0;
			T15_ = len__ast_u3175((*disp_1).ast);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!(((NI)7) < T15_)) goto LA16_;
			T18_ = NIM_NIL;
			T18_ = copySym__ast_u6229((*(*(*s_p0).ast)._kind_6.sons.p->data[((NI)7)])._kind_4.sym, idgen_p2);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u4558(T18_); goto LA1_;}
			eqsink___ast_u4567(&(*(*(*disp_1).ast)._kind_6.sons.p->data[((NI)7)])._kind_4.sym, T18_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA13_;
LA16_: ;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__5;
			colontmpD__5 = NIM_NIL;
			colontmpD__5 = newNodeI__ast_u4076(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)1), (*s_p0).info);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			add__ast_u3200((*disp_1).ast, colontmpD__5);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___ast_u3237(colontmpD__5);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA13_: ;
	}
LA11_: ;
	colontmpD__3 = newSymNode__ast_u5147(disp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	attachDispatcher__cgmeth_u157(s_p0, colontmpD__3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__4 = newSymNode__ast_u5147(disp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	attachDispatcher__cgmeth_u157(disp_1, colontmpD__4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	result = disp_1;
	eqwasMoved___ast_u4555(&disp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqdestroy___ast_u3237(colontmpD__4);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___ast_u3237(colontmpD__3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___ast_u3363(colontmpD__2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___ast_u4558(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___ast_u3363(old_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___ast_u4558(disp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	goto BeforeRet_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3237(colontmpD__4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3237(colontmpD__3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3363(colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4558(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3363(old_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4558(disp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, methodDef__cgmeth_u202)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p2) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* witness_1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__2;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__3;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__4;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__5;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__6;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__7;
NIM_BOOL oldNimErrFin11_;
NIM_BOOL oldNimErrFin27_;
	tyTuple__CvjVmQeIfivirDme2r5MRw T50_;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* T51_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	witness_1 = NIM_NIL;
	colontmpD_ = NIM_NIL;
	colontmpD__2 = NIM_NIL;
	colontmpD__3 = NIM_NIL;
	colontmpD__4 = NIM_NIL;
	colontmpD__5 = NIM_NIL;
	colontmpD__6 = NIM_NIL;
	colontmpD__7 = NIM_NIL;
	witness_1 = ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL);
	{
		NIM_BOOL T4_;
		NIM_BOOL T5_;
		NIM_BOOL T8_;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__8;
		NimStringV2 colontmpD__9;
		NimStringV2 colontmpD__10;
		NimStringV2 T12_;
		T4_ = (NIM_BOOL)0;
		T5_ = (NIM_BOOL)0;
		colontmpD_ = firstParamType__ast_u5342((*s_p2).typ);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__2 = owner__ast_u6225(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__3 = getModule__astalgo_u156(colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__4 = getModule__astalgo_u156(s_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T5_ = !((colontmpD__3 == colontmpD__4));
		if (!(T5_)) goto LA6_;
		T5_ = (((*(*g_p0).config).features &((NU32)1<<((NU)((((tyEnum_Feature__cS3g03qGjroRW9aHnqpz8MQ)23)))&31U)))!=0);
LA6_: ;
		T4_ = T5_;
		if (!(T4_)) goto LA7_;
		T8_ = (NIM_BOOL)0;
		T8_ = isDefined__options_u958((*g_p0).config, TM__zwdrTKOAAM6OvWnXdBD4GQ_18);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T4_ = !(T8_);
LA7_: ;
		if (!T4_) goto LA9_;
		colontmpD__8 = NIM_NIL;
		colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
		colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
		T12_.len = 0; T12_.p = NIM_NIL;
		colontmpD__8 = firstParamType__ast_u5342((*s_p2).typ);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		colontmpD__9 = typeToString__types_u54(colontmpD__8, ((tyEnum_TPreferedDesc__ddj0M89bv09cBYthgD4XTq3Q)0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		T12_ = rawNewString((*(*s_p2).name).s.len + colontmpD__9.len + 65);
appendString((&T12_), TM__zwdrTKOAAM6OvWnXdBD4GQ_20);
appendString((&T12_), (*(*s_p2).name).s);
appendString((&T12_), TM__zwdrTKOAAM6OvWnXdBD4GQ_22);
appendString((&T12_), colontmpD__9);
appendString((&T12_), TM__zwdrTKOAAM6OvWnXdBD4GQ_24);
		colontmpD__10 = T12_;
		liMessage__msgs_u1223((*g_p0).config, (*s_p2).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__10, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__zwdrTKOAAM6OvWnXdBD4GQ_25, NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		{
			LA11_:;
		}
		{
			oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___system_u2627(colontmpD__10);
			eqdestroy___system_u2627(colontmpD__9);
			eqdestroy___ast_u3363(colontmpD__8);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin11_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA9_: ;
	{
		NimStringV2 colontmpD__11;
		NimStringV2 T20_;
		if (!(((*s_p2).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)6)))&63U)))!=0)) goto LA17_;
		colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
		T20_.len = 0; T20_.p = NIM_NIL;
		T20_ = rawNewString((*(*s_p2).name).s.len + 50);
appendString((&T20_), TM__zwdrTKOAAM6OvWnXdBD4GQ_26);
appendString((&T20_), (*(*s_p2).name).s);
appendString((&T20_), TM__zwdrTKOAAM6OvWnXdBD4GQ_28);
		colontmpD__11 = T20_;
		liMessage__msgs_u1223((*g_p0).config, (*s_p2).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__11, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__zwdrTKOAAM6OvWnXdBD4GQ_29, NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
		{
			LA19_:;
		}
		{
			eqdestroy___system_u2627(colontmpD__11);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA17_: ;
	{
		NI i_1;
		NI colontmp_;
		NI T24_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		T24_ = (*g_p0).methods.len;
		colontmp_ = T24_;
		i_2 = ((NI)0);
		{
			while (1) {
				tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* disp_1;
				tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A T28_;
				if (!(i_2 < colontmp_)) goto LA26;
				disp_1 = NIM_NIL;
				i_1 = i_2;
				eqcopy___ast_u4561(&disp_1, (*g_p0).methods.p->data[i_1].Field1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
				T28_ = (tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)0;
				T28_ = sameMethodBucket__cgmeth_u69(disp_1, s_p2, (((*(*g_p0).config).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A)47)))&63U)))!=0));
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
				switch (T28_) {
				case ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)2):
				{
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__12;
					colontmpD__12 = NIM_NIL;
					colontmpD__12 = eqdup___ast_u4564(s_p2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
					add__renderer_u83((&(*g_p0).methods.p->data[i_1].Field0), colontmpD__12);
					attachDispatcher__cgmeth_u157(s_p2, (*(*disp_1).ast)._kind_6.sons.p->data[((NI)8)]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
					fixupDispatcher__cgmeth_u194(s_p2, disp_1, (*g_p0).config);
					if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
					checkMethodEffects__sempass2_u7741(g_p0, disp_1, s_p2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
					{
						NIM_BOOL T32_;
						T32_ = (NIM_BOOL)0;
						T32_ = ((IL64(288230376151711748) & (*s_p2).flags) == IL64(288230376151711744));
						if (!(T32_)) goto LA33_;
						T32_ = !(((*g_p0).methods.p->data[i_1].Field0.p->data[((NI)0)] == s_p2));
LA33_: ;
						if (!T32_) goto LA34_;
						liMessage__msgs_u1223((*g_p0).config, (*s_p2).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), TM__zwdrTKOAAM6OvWnXdBD4GQ_32, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__zwdrTKOAAM6OvWnXdBD4GQ_33, NIM_FALSE, NIM_FALSE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
					}
LA34_: ;
					eqdestroy___ast_u4558(disp_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___ast_u3363(colontmpD__6);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u3363(colontmpD__5);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u4558(colontmpD__4);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u4558(colontmpD__3);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u4558(colontmpD__2);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u3363(colontmpD_);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___ast_u4558(witness_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto BeforeRet_;
				}
				break;
				case ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)0):
				{
				}
				break;
				case ((tyEnum_MethodResult__tHXTnVjcVsKvbryATCwB7A)1):
				{
					{
						if (!(witness_1 == 0)) goto LA40_;
						eqcopy___ast_u4561(&witness_1, (*g_p0).methods.p->data[i_1].Field0.p->data[((NI)0)]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
					}
LA40_: ;
				}
				break;
				default: __builtin_unreachable();
				}
				i_2 += ((NI)1);
				{
					LA27_:;
				}
				{
					oldNimErrFin27_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u4558(disp_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					*nimErr_ = oldNimErrFin27_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA26: ;
		}
	}
	{
		NIM_BOOL T46_;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__13;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__14;
		colontmpD__5 = firstParamType__ast_u5342((*s_p2).typ);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__6 = skipTypes__ast_u5358(colontmpD__5, TM__zwdrTKOAAM6OvWnXdBD4GQ_34);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T46_ = (NIM_BOOL)0;
		T46_ = contains__cgmeth_u298((*g_p0).bucketTable, (*colontmpD__6).itemId);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!(T46_)) goto LA47_;
		colontmpD__13 = NIM_NIL;
		colontmpD__14 = NIM_NIL;
		colontmpD__13 = firstParamType__ast_u5342((*s_p2).typ);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__14 = skipTypes__ast_u5358(colontmpD__13, TM__zwdrTKOAAM6OvWnXdBD4GQ_34);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		X5BX5Deq___cgmeth_u401((&(*g_p0).bucketTable), (*colontmpD__14).itemId, ((NI)1));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3363(colontmpD__14);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3363(colontmpD__13);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA44_;
LA47_: ;
	{
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__15;
		tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD__16;
		colontmpD__15 = NIM_NIL;
		colontmpD__16 = NIM_NIL;
		colontmpD__15 = firstParamType__ast_u5342((*s_p2).typ);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmpD__16 = skipTypes__ast_u5358(colontmpD__15, TM__zwdrTKOAAM6OvWnXdBD4GQ_34);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		inc__cgmeth_u617((&(*g_p0).bucketTable), (*colontmpD__16).itemId, ((NI)1));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3363(colontmpD__16);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqdestroy___ast_u3363(colontmpD__15);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA44_: ;
	nimZeroMem((void*)(&T50_), sizeof(tyTuple__CvjVmQeIfivirDme2r5MRw));
	T50_.Field0.len = 1; T50_.Field0.p = (tySequence__ZCZaCk14bTmSb6LMW9aWPVA_Content*) newSeqPayload(1, sizeof(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*), NIM_ALIGNOF(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*));
	colontmpD__7 = eqdup___ast_u4564(s_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T50_.Field0.p->data[0] = colontmpD__7;
	T51_ = NIM_NIL;
	T51_ = createDispatcher__cgmeth_u168(s_p2, g_p0, idgen_p1);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___ast_u4558(T51_); goto LA1_;}
	T50_.Field1 = T51_;
	add__cgmeth_u726((&(*g_p0).methods), T50_);
	{
		NimStringV2 colontmpD__17;
		NimStringV2 colontmpD__18;
		NimStringV2 T57_;
		if (!!((witness_1 == ((tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*) NIM_NIL)))) goto LA54_;
		colontmpD__17.len = 0; colontmpD__17.p = NIM_NIL;
		colontmpD__18.len = 0; colontmpD__18.p = NIM_NIL;
		T57_.len = 0; T57_.p = NIM_NIL;
		colontmpD__17 = dollar___msgs_u710((*g_p0).config, (*witness_1).info);
		if (NIM_UNLIKELY(*nimErr_)) goto LA56_;
		T57_ = rawNewString((*(*s_p2).name).s.len + colontmpD__17.len + 68);
appendString((&T57_), TM__zwdrTKOAAM6OvWnXdBD4GQ_38);
appendString((&T57_), (*(*s_p2).name).s);
appendString((&T57_), TM__zwdrTKOAAM6OvWnXdBD4GQ_40);
appendString((&T57_), colontmpD__17);
		colontmpD__18 = T57_;
		liMessage__msgs_u1223((*g_p0).config, (*s_p2).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__18, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__zwdrTKOAAM6OvWnXdBD4GQ_41, NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA56_;
		{
			LA56_:;
		}
		{
			eqdestroy___system_u2627(colontmpD__18);
			eqdestroy___system_u2627(colontmpD__17);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA52_;
LA54_: ;
	{
		if (!!((((*s_p2).flags &((NU64)1<<((NU)((((tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg)58)))&63U)))!=0))) goto LA61_;
		liMessage__msgs_u1223((*g_p0).config, (*s_p2).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)39), TM__zwdrTKOAAM6OvWnXdBD4GQ_42, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__zwdrTKOAAM6OvWnXdBD4GQ_43, NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA52_;
LA61_: ;
LA52_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3363(colontmpD__6);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3363(colontmpD__5);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4558(colontmpD__4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4558(colontmpD__3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4558(colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3363(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4558(witness_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, relevantCol__cgmeth_u754)(tySequence__ZCZaCk14bTmSb6LMW9aWPVA methods_p0, NI col_p1) {
	NIM_BOOL result;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t_1;
NIM_BOOL oldNimErrFin10_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	t_1 = NIM_NIL;
	result = NIM_FALSE;
	t_1 = skipTypes__ast_u5358((*(*methods_p0.p->data[((NI)0)]).typ).sons.p->data[col_p1], TM__zwdrTKOAAM6OvWnXdBD4GQ_34);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!((*t_1).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)17))) goto LA4_;
		{
			NI i_1;
			NI colontmp_;
			NI T7_;
			NI res_1;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			T7_ = (methods_p0.len-1);
			colontmp_ = T7_;
			res_1 = ((NI)1);
			{
				while (1) {
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* t2_1;
					if (!(res_1 <= colontmp_)) goto LA9;
					t2_1 = NIM_NIL;
					i_1 = ((NI) (res_1));
					t2_1 = skipTypes__ast_u5358((*(*methods_p0.p->data[i_1]).typ).sons.p->data[col_p1], TM__zwdrTKOAAM6OvWnXdBD4GQ_34);
					if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
					{
						tySet_tyEnum_TTypeCmpFlag__1219bojhd9apB6FQkQGJbzzQ T13_;
						NIM_BOOL T14_;
						T13_ = 0;
						T14_ = (NIM_BOOL)0;
						T14_ = sameType__types_u1809(t2_1, t_1, T13_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
						if (!!(T14_)) goto LA15_;
						result = NIM_TRUE;
						eqdestroy___ast_u3363(t2_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u3363(t_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA15_: ;
					res_1 += ((NI)1);
					{
						LA10_:;
					}
					{
						oldNimErrFin10_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3363(t2_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						*nimErr_ = oldNimErrFin10_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				} LA9: ;
			}
		}
	}
LA4_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3363(t_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, cmpSignatures__cgmeth_u772)(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* a_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* b_p1, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* relevantCols_p2) {
	NI result;
NIM_BOOL oldNimErrFin9_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = ((NI)0);
	{
		NI col_1;
		NI colontmp_;
		NI i_1;
		col_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = signatureLen__ast_u5589((*a_p0).typ);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		i_1 = ((NI)1);
		{
			while (1) {
				if (!(i_1 < colontmp_)) goto LA3;
				col_1 = i_1;
				{
					NIM_BOOL T6_;
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* aa_1;
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* bb_1;
					NI d_1;
					T6_ = (NIM_BOOL)0;
					T6_ = contains__astalgo_u2848(relevantCols_p2, col_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					if (!T6_) goto LA7_;
					aa_1 = NIM_NIL;
					bb_1 = NIM_NIL;
					aa_1 = skipTypes__ast_u5358((*(*a_p0).typ).sons.p->data[col_1], TM__zwdrTKOAAM6OvWnXdBD4GQ_34);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					bb_1 = skipTypes__ast_u5358((*(*b_p1).typ).sons.p->data[col_1], TM__zwdrTKOAAM6OvWnXdBD4GQ_34);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					d_1 = inheritanceDiff__types_u2782(aa_1, bb_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					{
						NIM_BOOL T12_;
						T12_ = (NIM_BOOL)0;
						T12_ = !((d_1 == ((NI)2147483647)));
						if (!(T12_)) goto LA13_;
						T12_ = !((d_1 == ((NI)0)));
LA13_: ;
						if (!T12_) goto LA14_;
						result = d_1;
						eqdestroy___ast_u3363(bb_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						eqdestroy___ast_u3363(aa_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA14_: ;
					{
						LA9_:;
					}
					{
						oldNimErrFin9_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3363(bb_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						eqdestroy___ast_u3363(aa_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						*nimErr_ = oldNimErrFin9_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
LA7_: ;
				i_1 += ((NI)1);
			} LA3: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, sortBucket__cgmeth_u837)(tySequence__ZCZaCk14bTmSb6LMW9aWPVA* a_p0, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* relevantCols_p1) {
	NI n_1;
	NI T1_;
	NI h_1;
NIM_BOOL oldNimErrFin13_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (*a_p0).len;
	n_1 = T1_;
	h_1 = ((NI)1);
	{
		while (1) {
			h_1 = (NI)((NI)(((NI)3) * h_1) + ((NI)1));
			{
				if (!(n_1 < h_1)) goto LA6_;
				goto LA2;
			}
LA6_: ;
		}
	} LA2: ;
	{
		while (1) {
			h_1 = (NI)(h_1 / ((NI)3));
			{
				NI i_1;
				NI i_2;
				i_1 = (NI)0;
				i_2 = h_1;
				{
					while (1) {
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* v_1;
						NI j_1;
						if (!(i_2 < n_1)) goto LA12;
						v_1 = NIM_NIL;
						i_1 = i_2;
						eqcopy___ast_u4561(&v_1, (*a_p0).p->data[i_1]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
						j_1 = i_1;
						{
							while (1) {
								NI T16_;
								T16_ = (NI)0;
								T16_ = cmpSignatures__cgmeth_u772((*a_p0).p->data[(NI)(j_1 - h_1)], v_1, relevantCols_p1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
								if (!(((NI)0) <= T16_)) goto LA15;
								eqcopy___ast_u4561(&(*a_p0).p->data[j_1], (*a_p0).p->data[(NI)(j_1 - h_1)]);
								if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
								j_1 = (NI)(j_1 - h_1);
								{
									if (!(j_1 < h_1)) goto LA19_;
									goto LA14;
								}
LA19_: ;
							} LA15: ;
						} LA14: ;
						eqsink___ast_u4567(&(*a_p0).p->data[j_1], v_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
						eqwasMoved___ast_u4555(&v_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
						i_2 += ((NI)1);
						{
							LA13_:;
						}
						{
							oldNimErrFin13_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u4558(v_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							*nimErr_ = oldNimErrFin13_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					} LA12: ;
				}
			}
			{
				if (!(h_1 == ((NI)1))) goto LA25_;
				goto LA8;
			}
LA25_: ;
		}
	} LA8: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, genIfDispatcher__cgmeth_u852)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tySequence__ZCZaCk14bTmSb6LMW9aWPVA methods_p1, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* relevantCols_p2, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p3) {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* result;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* base_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* nilchecks_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* disp_1;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* ands_1;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* iss_1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* boolType_1;
	NI paramLen_1;
NIM_BOOL oldNimErrFin15_;
NIM_BOOL oldNimErrFin10_;
NIM_BOOL oldNimErrFin42_;
NIM_BOOL oldNimErrFin25_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	base_1 = NIM_NIL;
	nilchecks_1 = NIM_NIL;
	disp_1 = NIM_NIL;
	ands_1 = NIM_NIL;
	iss_1 = NIM_NIL;
	boolType_1 = NIM_NIL;
	eqcopy___ast_u4561(&base_1, (*(*(*methods_p1.p->data[((NI)0)]).ast)._kind_6.sons.p->data[((NI)8)])._kind_4.sym);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqcopy___ast_u4561(&result, base_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	paramLen_1 = signatureLen__ast_u5589((*base_1).typ);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	nilchecks_1 = newNodeI__ast_u4076(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115), (*base_1).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	disp_1 = newNodeI__ast_u4076(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)92), (*base_1).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	ands_1 = getSysMagic__magicsys_u25(g_p0, unknownLineInfo__lineinfos_u361, TM__zwdrTKOAAM6OvWnXdBD4GQ_45, ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)106));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	iss_1 = getSysMagic__magicsys_u25(g_p0, unknownLineInfo__lineinfos_u361, TM__zwdrTKOAAM6OvWnXdBD4GQ_47, ((tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg)15));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	boolType_1 = getSysType__magicsys_u54(g_p0, unknownLineInfo__lineinfos_u361, ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI col_1;
		NI i_1;
		col_1 = (NI)0;
		i_1 = ((NI)1);
		{
			while (1) {
				if (!(i_1 < paramLen_1)) goto LA4;
				col_1 = i_1;
				{
					NIM_BOOL T7_;
					tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* param_1;
					tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* colontmpD_;
					T7_ = (NIM_BOOL)0;
					T7_ = contains__astalgo_u2848(relevantCols_p2, col_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					if (!T7_) goto LA8_;
					param_1 = NIM_NIL;
					colontmpD_ = NIM_NIL;
					eqcopy___ast_u4561(&param_1, (*(*(*(*base_1).typ).n)._kind_6.sons.p->data[col_1])._kind_4.sym);
					if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
					{
						tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD__2;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__3;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__4;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__5;
						tyArray__AqHRYYCaB9bLrJbrdaL5KOA T16_;
						colontmpD_ = skipTypes__ast_u5358((*param_1).typ, TM__zwdrTKOAAM6OvWnXdBD4GQ_48);
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
						if (!((*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)22) || (*colontmpD_).kind == ((tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg)21))) goto LA13_;
						colontmpD__2 = NIM_NIL;
						colontmpD__3 = NIM_NIL;
						colontmpD__4 = NIM_NIL;
						colontmpD__5 = NIM_NIL;
						nimZeroMem((void*)T16_, sizeof(tyArray__AqHRYYCaB9bLrJbrdaL5KOA));
						colontmpD__2 = getCompilerProc__magicsys_u149(g_p0, TM__zwdrTKOAAM6OvWnXdBD4GQ_50);
						if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
						colontmpD__3 = newSymNode__ast_u5147(colontmpD__2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
						T16_[0] = colontmpD__3;
						colontmpD__4 = newSymNode__ast_u5147(param_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
						T16_[1] = colontmpD__4;
						colontmpD__5 = newTree__ast_u4154(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27), T16_, 2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
						add__ast_u3200(nilchecks_1, colontmpD__5);
						if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
						{
							LA15_:;
						}
						{
							oldNimErrFin15_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___ast_u3237(colontmpD__5);
							if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
							eqdestroy___ast_u3237(colontmpD__4);
							if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
							eqdestroy___ast_u3237(colontmpD__3);
							if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
							eqdestroy___ast_u4558(colontmpD__2);
							if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
							*nimErr_ = oldNimErrFin15_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
					}
LA13_: ;
					{
						LA10_:;
					}
					{
						oldNimErrFin10_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___ast_u3363(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___ast_u4558(param_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						*nimErr_ = oldNimErrFin10_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				}
LA8_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	{
		NI meth_1;
		NI colontmp_;
		NI T22_;
		NI res_1;
		meth_1 = (NI)0;
		colontmp_ = (NI)0;
		T22_ = (methods_p1.len-1);
		colontmp_ = T22_;
		res_1 = ((NI)0);
		{
			while (1) {
				tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* curr_1;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* cond_1;
				tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* retTyp_1;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* call_1;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__6;
				tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ret_1;
				if (!(res_1 <= colontmp_)) goto LA24;
				curr_1 = NIM_NIL;
				cond_1 = NIM_NIL;
				retTyp_1 = NIM_NIL;
				call_1 = NIM_NIL;
				colontmpD__6 = NIM_NIL;
				ret_1 = NIM_NIL;
				meth_1 = ((NI) (res_1));
				eqcopy___ast_u4561(&curr_1, methods_p1.p->data[meth_1]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
				cond_1 = ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL);
				{
					NI col_2;
					NI i_2;
					col_2 = (NI)0;
					i_2 = ((NI)1);
					{
						while (1) {
							if (!(i_2 < paramLen_1)) goto LA28;
							col_2 = i_2;
							{
								NIM_BOOL T31_;
								tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* isn_1;
								tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__7;
								tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* param_2;
								tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__8;
								tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__9;
								T31_ = (NIM_BOOL)0;
								T31_ = contains__astalgo_u2848(relevantCols_p2, col_2);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								if (!T31_) goto LA32_;
								isn_1 = NIM_NIL;
								colontmpD__7 = NIM_NIL;
								param_2 = NIM_NIL;
								colontmpD__8 = NIM_NIL;
								colontmpD__9 = NIM_NIL;
								isn_1 = newNodeIT__ast_u4097(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27), (*base_1).info, boolType_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								colontmpD__7 = newSymNode__ast_u5147(iss_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								add__ast_u3200(isn_1, colontmpD__7);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								eqcopy___ast_u4561(&param_2, (*(*(*(*base_1).typ).n)._kind_6.sons.p->data[col_2])._kind_4.sym);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								colontmpD__8 = newSymNode__ast_u5147(param_2);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								add__ast_u3200(isn_1, colontmpD__8);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								colontmpD__9 = newNodeIT__ast_u4097(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)4), (*base_1).info, (*(*curr_1).typ).sons.p->data[col_2]);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								add__ast_u3200(isn_1, colontmpD__9);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								{
									tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
									tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__10;
									if (!!((cond_1 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA36_;
									a_1 = NIM_NIL;
									colontmpD__10 = NIM_NIL;
									a_1 = newNodeIT__ast_u4097(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27), (*base_1).info, boolType_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
									colontmpD__10 = newSymNode__ast_u5147(ands_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
									add__ast_u3200(a_1, colontmpD__10);
									if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
									add__ast_u3200(a_1, cond_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
									add__ast_u3200(a_1, isn_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
									eqsink___ast_u3246(&cond_1, a_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
									eqdestroy___ast_u3237(colontmpD__10);
									if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								}
								goto LA34_;
LA36_: ;
								{
									eqsink___ast_u3246(&cond_1, isn_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
									eqwasMoved___ast_u3234(&isn_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								}
LA34_: ;
								eqdestroy___ast_u3237(colontmpD__9);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								eqdestroy___ast_u3237(colontmpD__8);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								eqdestroy___ast_u4558(param_2);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								eqdestroy___ast_u3237(colontmpD__7);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								eqdestroy___ast_u3237(isn_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
							}
LA32_: ;
							i_2 += ((NI)1);
						} LA28: ;
					}
				}
				retTyp_1 = returnType__ast_u5333((*base_1).typ);
				if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
				call_1 = newNodeIT__ast_u4097(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27), (*base_1).info, retTyp_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
				colontmpD__6 = newSymNode__ast_u5147(curr_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
				add__ast_u3200(call_1, colontmpD__6);
				if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
				{
					NI col_3;
					NI i_3;
					col_3 = (NI)0;
					i_3 = ((NI)1);
					{
						while (1) {
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__11;
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__12;
							if (!(i_3 < paramLen_1)) goto LA41;
							colontmpD__11 = NIM_NIL;
							colontmpD__12 = NIM_NIL;
							col_3 = i_3;
							colontmpD__11 = newSymNode__ast_u5147((*(*(*(*base_1).typ).n)._kind_6.sons.p->data[col_3])._kind_4.sym);
							if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
							colontmpD__12 = genConv__cgmeth_u15(colontmpD__11, (*(*curr_1).typ).sons.p->data[col_3], NIM_FALSE, (*g_p0).config);
							if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
							add__ast_u3200(call_1, colontmpD__12);
							if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
							i_3 += ((NI)1);
							{
								LA42_:;
							}
							{
								oldNimErrFin42_ = *nimErr_; *nimErr_ = NIM_FALSE;
								eqdestroy___ast_u3237(colontmpD__12);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								eqdestroy___ast_u3237(colontmpD__11);
								if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
								*nimErr_ = oldNimErrFin42_;
							}
							if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
						} LA41: ;
					}
				}
				ret_1 = 0;
				{
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_2;
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD__13;
					if (!!((retTyp_1 == ((tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg*) NIM_NIL)))) goto LA47_;
					a_2 = NIM_NIL;
					colontmpD__13 = NIM_NIL;
					a_2 = newNodeI__ast_u4076(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)74), (*base_1).info);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					colontmpD__13 = newSymNode__ast_u5147((*(*(*base_1).ast)._kind_6.sons.p->data[((NI)7)])._kind_4.sym);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					add__ast_u3200(a_2, colontmpD__13);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					add__ast_u3200(a_2, call_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					ret_1 = newNodeI__ast_u4076(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)109), (*base_1).info);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					add__ast_u3200(ret_1, a_2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					eqdestroy___ast_u3237(colontmpD__13);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					eqdestroy___ast_u3237(a_2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
				}
				goto LA45_;
LA47_: ;
				{
					ret_1 = call_1;
					eqwasMoved___ast_u3234(&call_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
				}
LA45_: ;
				{
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_3;
					if (!!((cond_1 == ((tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*) NIM_NIL)))) goto LA52_;
					a_3 = NIM_NIL;
					a_3 = newNodeI__ast_u4076(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)86), (*base_1).info);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					add__ast_u3200(a_3, cond_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					add__ast_u3200(a_3, ret_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					add__ast_u3200(disp_1, a_3);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					eqdestroy___ast_u3237(a_3);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
				}
				goto LA50_;
LA52_: ;
				{
					eqsink___ast_u3246(&disp_1, ret_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
					eqwasMoved___ast_u3234(&ret_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
				}
LA50_: ;
				res_1 += ((NI)1);
				{
					LA25_:;
				}
				{
					oldNimErrFin25_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u3237(ret_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___ast_u3237(colontmpD__6);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___ast_u3237(call_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___ast_u3363(retTyp_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___ast_u3237(cond_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___ast_u4558(curr_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					*nimErr_ = oldNimErrFin25_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA24: ;
		}
	}
	add__ast_u3200(nilchecks_1, disp_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*nilchecks_1).flags |= ((NU32)1)<<(((((tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw)5))) & 31);
	eqsink___ast_u3246(&(*(*result).ast)._kind_6.sons.p->data[((NI)6)], nilchecks_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqwasMoved___ast_u3234(&nilchecks_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___ast_u3363(boolType_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4558(iss_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4558(ands_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3237(disp_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3237(nilchecks_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u4558(base_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, initIntSet__pureZcollectionsZintsets_u598)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* Result) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)Result, sizeof(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA));
	initPackedSet__pureZcollectionsZintsets_u37(Result);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, generateIfMethodDispatchers__cgmeth_u1015)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p1) {
NIM_BOOL oldNimErrFin5_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI bucket_1;
		NI colontmp_;
		NI T2_;
		NI i_1;
		bucket_1 = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (*g_p0).methods.len;
		colontmp_ = T2_;
		i_1 = ((NI)0);
		{
			while (1) {
				tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA relevantCols_1;
				tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* colontmpD_;
				if (!(i_1 < colontmp_)) goto LA4;
				nimZeroMem((void*)(&relevantCols_1), sizeof(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA));
				colontmpD_ = NIM_NIL;
				bucket_1 = i_1;
				initIntSet__pureZcollectionsZintsets_u598((&relevantCols_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
				{
					NI col_1;
					NI colontmp__2;
					NI i_2;
					col_1 = (NI)0;
					colontmp__2 = (NI)0;
					colontmp__2 = signatureLen__ast_u5589((*(*g_p0).methods.p->data[bucket_1].Field0.p->data[((NI)0)]).typ);
					if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
					i_2 = ((NI)1);
					{
						while (1) {
							if (!(i_2 < colontmp__2)) goto LA8;
							col_1 = i_2;
							{
								NIM_BOOL T11_;
								T11_ = (NIM_BOOL)0;
								T11_ = relevantCol__cgmeth_u754((*g_p0).methods.p->data[bucket_1].Field0, col_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
								if (!T11_) goto LA12_;
								incl__pureZcollectionsZintsets_u366((&relevantCols_1), col_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
							}
LA12_: ;
							{
								if (!!((((*(*g_p0).config).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A)47)))&63U)))!=0))) goto LA16_;
								goto LA6;
							}
LA16_: ;
							i_2 += ((NI)1);
						} LA8: ;
					}
				} LA6: ;
				sortBucket__cgmeth_u837((&(*g_p0).methods.p->data[bucket_1].Field0), (&relevantCols_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
				colontmpD_ = genIfDispatcher__cgmeth_u852(g_p0, (*g_p0).methods.p->data[bucket_1].Field0, (&relevantCols_1), idgen_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
				addDispatchers__modulegraphs_u6876(g_p0, colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
				i_1 += ((NI)1);
				{
					LA5_:;
				}
				{
					oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___ast_u4558(colontmpD_);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___pureZcollectionsZintsets_u230((&relevantCols_1));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin5_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA4: ;
		}
	}
	}BeforeRet_: ;
}
