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

#include "nimbase.h"
#include <string.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
typedef struct tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ;
typedef struct tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw;
typedef struct tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg;
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 NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tySequence__NZB65egHQwAniMoFWKcFaw tySequence__NZB65egHQwAniMoFWKcFaw;
typedef struct tySequence__NZB65egHQwAniMoFWKcFaw_Content tySequence__NZB65egHQwAniMoFWKcFaw_Content;
typedef struct tySequence__EHM5DWw09bc16yo24mdZPsw tySequence__EHM5DWw09bc16yo24mdZPsw;
typedef struct tySequence__EHM5DWw09bc16yo24mdZPsw_Content tySequence__EHM5DWw09bc16yo24mdZPsw_Content;
typedef struct tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA;
typedef struct tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA_Content tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA_Content;
typedef struct tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg;
typedef struct tySequence__TfHJycarvNts8E4mVG4Mfg tySequence__TfHJycarvNts8E4mVG4Mfg;
typedef struct tySequence__TfHJycarvNts8E4mVG4Mfg_Content tySequence__TfHJycarvNts8E4mVG4Mfg_Content;
typedef struct tyObject_PackedModuleGraph__vzv9a6xTiz616FotDgUeo9bg tyObject_PackedModuleGraph__vzv9a6xTiz616FotDgUeo9bg;
typedef struct tySequence__5reviU45axUMPQgL9aoENrg tySequence__5reviU45axUMPQgL9aoENrg;
typedef struct tySequence__5reviU45axUMPQgL9aoENrg_Content tySequence__5reviU45axUMPQgL9aoENrg_Content;
typedef struct tySequence__dtr79aXjHrgHuH79ac55I2aw tySequence__dtr79aXjHrgHuH79ac55I2aw;
typedef struct tySequence__dtr79aXjHrgHuH79ac55I2aw_Content tySequence__dtr79aXjHrgHuH79ac55I2aw_Content;
typedef struct tyObject_Table__EBJpp1hXwvFl9cyekUv4qHg tyObject_Table__EBJpp1hXwvFl9cyekUv4qHg;
typedef struct tySequence__8y0Gi4GwtXi2wk2mK1IOzw tySequence__8y0Gi4GwtXi2wk2mK1IOzw;
typedef struct tySequence__8y0Gi4GwtXi2wk2mK1IOzw_Content tySequence__8y0Gi4GwtXi2wk2mK1IOzw_Content;
typedef struct tyObject_Table__nn0jq9adRZXGGj9assM9c9bR0w tyObject_Table__nn0jq9adRZXGGj9assM9c9bR0w;
typedef struct tySequence__C2ivDnhTZ6IxAdui1rfuqw tySequence__C2ivDnhTZ6IxAdui1rfuqw;
typedef struct tySequence__C2ivDnhTZ6IxAdui1rfuqw_Content tySequence__C2ivDnhTZ6IxAdui1rfuqw_Content;
typedef struct tyObject_Table__ChMwcRY3QzpOEBWbGAfvcA tyObject_Table__ChMwcRY3QzpOEBWbGAfvcA;
typedef struct tySequence__3vEEVfBECLN6NIRA3FIp5g tySequence__3vEEVfBECLN6NIRA3FIp5g;
typedef struct tySequence__3vEEVfBECLN6NIRA3FIp5g_Content tySequence__3vEEVfBECLN6NIRA3FIp5g_Content;
typedef struct tyObject_Table__tEqt8LkShErhjQ9acvGyE7g tyObject_Table__tEqt8LkShErhjQ9acvGyE7g;
typedef struct tySequence__9aSa87aKMiolq9a7z3kC0jTw tySequence__9aSa87aKMiolq9a7z3kC0jTw;
typedef struct tySequence__9aSa87aKMiolq9a7z3kC0jTw_Content tySequence__9aSa87aKMiolq9a7z3kC0jTw_Content;
typedef struct tyObject_Table__QS2Z9cQjmvkp1aaFGq4ippw tyObject_Table__QS2Z9cQjmvkp1aaFGq4ippw;
typedef struct tySequence__N589c2UsUgqqOITU2JfIuAQ tySequence__N589c2UsUgqqOITU2JfIuAQ;
typedef struct tySequence__N589c2UsUgqqOITU2JfIuAQ_Content tySequence__N589c2UsUgqqOITU2JfIuAQ_Content;
typedef struct tyObject_Table__bnfVX2VJ9aUicVujDM0GIhw tyObject_Table__bnfVX2VJ9aUicVujDM0GIhw;
typedef struct tySequence__GYDW6wGgERshoSd16jJ3eQ tySequence__GYDW6wGgERshoSd16jJ3eQ;
typedef struct tySequence__GYDW6wGgERshoSd16jJ3eQ_Content tySequence__GYDW6wGgERshoSd16jJ3eQ_Content;
typedef struct tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_Content;
typedef struct tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ;
typedef struct tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg;
typedef struct tySequence__ZCZaCk14bTmSb6LMW9aWPVA tySequence__ZCZaCk14bTmSb6LMW9aWPVA;
typedef struct tySequence__ZCZaCk14bTmSb6LMW9aWPVA_Content tySequence__ZCZaCk14bTmSb6LMW9aWPVA_Content;
typedef struct tyObject_Table__79b4rr6WWQqgRr9b4NH4UF9cw tyObject_Table__79b4rr6WWQqgRr9b4NH4UF9cw;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg_Content tySequence__fdmz6VkIf1ewwrssKYqRFg_Content;
typedef struct tyObject_Table__AC9bec2JdoOuC3xQePGWgmA tyObject_Table__AC9bec2JdoOuC3xQePGWgmA;
typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg;
typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg_Content tySequence__kxu4GK0onha2t9bo86mdVAg_Content;
typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA;
typedef struct tySequence__48JTohSgTy339bRxHzUD8KA_Content tySequence__48JTohSgTy339bRxHzUD8KA_Content;
typedef struct RootObj RootObj;
typedef struct tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA;
typedef struct tyObject_Table__bHTcQUCehDW9clHfFZXI7lQ tyObject_Table__bHTcQUCehDW9clHfFZXI7lQ;
typedef struct tySequence__fz0REU1l0nYmKHXgMLRrIg tySequence__fz0REU1l0nYmKHXgMLRrIg;
typedef struct tySequence__fz0REU1l0nYmKHXgMLRrIg_Content tySequence__fz0REU1l0nYmKHXgMLRrIg_Content;
typedef struct tyObject_Table__w2vCG1OPnHmNolvQVT168g tyObject_Table__w2vCG1OPnHmNolvQVT168g;
typedef struct tySequence__Ip9aV1IKO2gVdheNOM31DCQ tySequence__Ip9aV1IKO2gVdheNOM31DCQ;
typedef struct tySequence__Ip9aV1IKO2gVdheNOM31DCQ_Content tySequence__Ip9aV1IKO2gVdheNOM31DCQ_Content;
typedef struct tySequence__kHjIdgrpmuSn9cUIIKpSiDg tySequence__kHjIdgrpmuSn9cUIIKpSiDg;
typedef struct tySequence__kHjIdgrpmuSn9cUIIKpSiDg_Content tySequence__kHjIdgrpmuSn9cUIIKpSiDg_Content;
typedef struct tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA;
typedef struct tySequence__Wd0Vle6gxRCPPoSlNEvfTA tySequence__Wd0Vle6gxRCPPoSlNEvfTA;
typedef struct tySequence__Wd0Vle6gxRCPPoSlNEvfTA_Content tySequence__Wd0Vle6gxRCPPoSlNEvfTA_Content;
typedef struct tyObject_Table__fZyCWkMwhdvr3pauCNDaag tyObject_Table__fZyCWkMwhdvr3pauCNDaag;
typedef struct tySequence__T7nNEWoEbKBa0G5Htr45Xw tySequence__T7nNEWoEbKBa0G5Htr45Xw;
typedef struct tySequence__T7nNEWoEbKBa0G5Htr45Xw_Content tySequence__T7nNEWoEbKBa0G5Htr45Xw_Content;
typedef struct tyObject_Table__5vmBY49areSIlgIs4A1LLKQ tyObject_Table__5vmBY49areSIlgIs4A1LLKQ;
typedef struct tySequence__q9cHvMDDxYU1hSCdG4YwIhA tySequence__q9cHvMDDxYU1hSCdG4YwIhA;
typedef struct tySequence__q9cHvMDDxYU1hSCdG4YwIhA_Content tySequence__q9cHvMDDxYU1hSCdG4YwIhA_Content;
typedef struct tySequence__olFOFaYzOJN9aV5BWqK4b9bA tySequence__olFOFaYzOJN9aV5BWqK4b9bA;
typedef struct tySequence__olFOFaYzOJN9aV5BWqK4b9bA_Content tySequence__olFOFaYzOJN9aV5BWqK4b9bA_Content;
typedef struct tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg;
typedef struct tyObject_Table__9bmd0cvHWe1s4FTDn5BPmfw tyObject_Table__9bmd0cvHWe1s4FTDn5BPmfw;
typedef struct tySequence__vJcM7B74R2U5db9cxyXT9coA tySequence__vJcM7B74R2U5db9cxyXT9coA;
typedef struct tySequence__vJcM7B74R2U5db9cxyXT9coA_Content tySequence__vJcM7B74R2U5db9cxyXT9coA_Content;
typedef struct tyObject_Table__GhjCMuklnRqwdX9bZo9bCoNg tyObject_Table__GhjCMuklnRqwdX9bZo9bCoNg;
typedef struct tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg;
typedef struct tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg_Content tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg_Content;
typedef struct tyObject_Table__pI3mJh4Ap2XujSCfcSeUvQ tyObject_Table__pI3mJh4Ap2XujSCfcSeUvQ;
typedef struct tySequence__R9c39btP6BwOBBPnbaNUtMQg tySequence__R9c39btP6BwOBBPnbaNUtMQg;
typedef struct tySequence__R9c39btP6BwOBBPnbaNUtMQg_Content tySequence__R9c39btP6BwOBBPnbaNUtMQg_Content;
typedef struct tyObject_Table__MsPmCuYz1KcEw6lr7P9cGkw tyObject_Table__MsPmCuYz1KcEw6lr7P9cGkw;
typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA;
typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content;
typedef struct tyObject_Table__1HJsK7ponJ4Vb1lJgVFVTQ tyObject_Table__1HJsK7ponJ4Vb1lJgVFVTQ;
typedef struct tySequence__3nALyQgqjnfK2Qjc6ny2Uw tySequence__3nALyQgqjnfK2Qjc6ny2Uw;
typedef struct tySequence__3nALyQgqjnfK2Qjc6ny2Uw_Content tySequence__3nALyQgqjnfK2Qjc6ny2Uw_Content;
typedef struct tySequence__WbW5Q8QVks0bQpUJSGmuVg tySequence__WbW5Q8QVks0bQpUJSGmuVg;
typedef struct tySequence__WbW5Q8QVks0bQpUJSGmuVg_Content tySequence__WbW5Q8QVks0bQpUJSGmuVg_Content;
typedef struct tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q tySequence__9ahcSjIErJohSBBFLwuF56Q;
typedef struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content tySequence__9ahcSjIErJohSBBFLwuF56Q_Content;
typedef struct tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug;
typedef struct tyObject_Operators__yrAfvKhiysDamJlcGNgVfQ tyObject_Operators__yrAfvKhiysDamJlcGNgVfQ;
typedef struct tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg;
typedef struct tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA;
typedef struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA;
typedef struct tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw;
typedef struct tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyTuple__bPZu3GhfjP9cHscH3h9axT6w tyTuple__bPZu3GhfjP9cHscH3h9axT6w;
typedef struct tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A;
typedef struct tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw;
typedef struct TNimTypeV2 TNimTypeV2;
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 tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content;
typedef struct tyObject_OrderedTable__vodBW9bS41CI2hVVsJJ8qiw tyObject_OrderedTable__vodBW9bS41CI2hVVsJJ8qiw;
typedef struct tySequence__Vl1abU3gfp0RqCb1KKfmDA tySequence__Vl1abU3gfp0RqCb1KKfmDA;
typedef struct tySequence__Vl1abU3gfp0RqCb1KKfmDA_Content tySequence__Vl1abU3gfp0RqCb1KKfmDA_Content;
typedef struct tyObject_OrderedTable__y5tq9cRly5CxS2mQPchEHcw tyObject_OrderedTable__y5tq9cRly5CxS2mQPchEHcw;
typedef struct tySequence__qyyNkmlc4fzOzelC8spUkQ tySequence__qyyNkmlc4fzOzelC8spUkQ;
typedef struct tySequence__qyyNkmlc4fzOzelC8spUkQ_Content tySequence__qyyNkmlc4fzOzelC8spUkQ_Content;
typedef struct tyObject_BiTable__KR9c7QZguPO3OKZOIcphgcA tyObject_BiTable__KR9c7QZguPO3OKZOIcphgcA;
typedef struct tyObject_BiTable__9aUXwPoJbNPqj9a249c0iSmlg tyObject_BiTable__9aUXwPoJbNPqj9a249c0iSmlg;
typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ tySequence__IHUFRsFxZNv7YydiUO2esQ;
typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ_Content tySequence__IHUFRsFxZNv7YydiUO2esQ_Content;
typedef struct tyObject_LineInfoManager__TTy646Kfh1cVyXU9aSMasUQ tyObject_LineInfoManager__TTy646Kfh1cVyXU9aSMasUQ;
typedef struct tySequence__orxtl6CusdjXleqrxi67gw tySequence__orxtl6CusdjXleqrxi67gw;
typedef struct tySequence__orxtl6CusdjXleqrxi67gw_Content tySequence__orxtl6CusdjXleqrxi67gw_Content;
typedef struct tyObject_OrderedTable__h8mIUVGY8LJXF9cakgvB9bqQ tyObject_OrderedTable__h8mIUVGY8LJXF9cakgvB9bqQ;
typedef struct tySequence__K0j67V58u5FW0dCC534FQw tySequence__K0j67V58u5FW0dCC534FQw;
typedef struct tySequence__K0j67V58u5FW0dCC534FQw_Content tySequence__K0j67V58u5FW0dCC534FQw_Content;
typedef struct tyObject_OrderedTable__DED9c7j9bI3Lh5w4GQakK8yQ tyObject_OrderedTable__DED9c7j9bI3Lh5w4GQakK8yQ;
typedef struct tySequence__UE4b6iUkm1b3zTPamTTkDw tySequence__UE4b6iUkm1b3zTPamTTkDw;
typedef struct tySequence__UE4b6iUkm1b3zTPamTTkDw_Content tySequence__UE4b6iUkm1b3zTPamTTkDw_Content;
typedef struct tyObject_Table__BH9cy1hZ1rZZoGkNCEN1uvg tyObject_Table__BH9cy1hZ1rZZoGkNCEN1uvg;
typedef struct tySequence__FmsTQiIcS9arxHxs3QY48vA tySequence__FmsTQiIcS9arxHxs3QY48vA;
typedef struct tySequence__FmsTQiIcS9arxHxs3QY48vA_Content tySequence__FmsTQiIcS9arxHxs3QY48vA_Content;
typedef struct tyObject_PackedEncoder__FGa18gE2dyYyuq9ckHprjTQ tyObject_PackedEncoder__FGa18gE2dyYyuq9ckHprjTQ;
typedef struct tyObject_Table__uaQEKxLZNO5fpFluyxnhTg tyObject_Table__uaQEKxLZNO5fpFluyxnhTg;
typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ tySequence__9cnx3zXnWzeclW8Ko4oUgAQ;
typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content;
typedef struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg tySequence__d8ZV4IMgHt9biik9cS9a0hrmg;
typedef struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content;
typedef struct tyTuple__7TXOq9czx9cn1FWKG5gXNK8Q tyTuple__7TXOq9czx9cn1FWKG5gXNK8Q;
typedef struct tySequence__vb3AGHvMJTxdOSSwMmBmTQ tySequence__vb3AGHvMJTxdOSSwMmBmTQ;
typedef struct tySequence__vb3AGHvMJTxdOSSwMmBmTQ_Content tySequence__vb3AGHvMJTxdOSSwMmBmTQ_Content;
typedef struct tyTuple__F1mMODXmKFMNQ5rLCtcv0Q tyTuple__F1mMODXmKFMNQ5rLCtcv0Q;
typedef struct tySequence__apM9bRAO19cVjhWlxqd1PGeA tySequence__apM9bRAO19cVjhWlxqd1PGeA;
typedef struct tySequence__apM9bRAO19cVjhWlxqd1PGeA_Content tySequence__apM9bRAO19cVjhWlxqd1PGeA_Content;
typedef struct tyTuple__vHfXSpEC1R9b9cKgfFB9a58gw tyTuple__vHfXSpEC1R9b9cKgfFB9a58gw;
typedef struct tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA;
typedef struct tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ;
typedef struct tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig;
typedef struct tyTuple__4iq9bD09amB7Ah0r9cBB0nSPQ tyTuple__4iq9bD09amB7Ah0r9cBB0nSPQ;
typedef struct tySequence__9bW2eTK9b7vXE70Sx5VPH1mw tySequence__9bW2eTK9b7vXE70Sx5VPH1mw;
typedef struct tySequence__9bW2eTK9b7vXE70Sx5VPH1mw_Content tySequence__9bW2eTK9b7vXE70Sx5VPH1mw_Content;
typedef struct tyTuple__bnJwOH0eJlAwCAMbr1inhw tyTuple__bnJwOH0eJlAwCAMbr1inhw;
typedef struct tyTuple__YG7h1OUHzgfgTeH9cl0U0dw tyTuple__YG7h1OUHzgfgTeH9cl0U0dw;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q;
typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ;
typedef struct tyTuple__tG5yYi8DnD7bl00aT9cgctQ tyTuple__tG5yYi8DnD7bl00aT9cgctQ;
typedef struct tyObject_SuggestFileSymbolDatabase__o0ahEzaLn5a7TdNqH4OVqQ tyObject_SuggestFileSymbolDatabase__o0ahEzaLn5a7TdNqH4OVqQ;
typedef struct tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg;
typedef struct tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg_Content tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg_Content;
typedef struct tySequence__yUWoZehF86MIc40opFgacw tySequence__yUWoZehF86MIc40opFgacw;
typedef struct tySequence__yUWoZehF86MIc40opFgacw_Content tySequence__yUWoZehF86MIc40opFgacw_Content;
typedef struct tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw;
typedef struct tyTuple__gnRkA1L4XiR4uByriyHW8Q tyTuple__gnRkA1L4XiR4uByriyHW8Q;
typedef struct tySequence__nSO1ltijM4vhc0UrrXKEqA tySequence__nSO1ltijM4vhc0UrrXKEqA;
typedef struct tySequence__nSO1ltijM4vhc0UrrXKEqA_Content tySequence__nSO1ltijM4vhc0UrrXKEqA_Content;
typedef struct tyTuple__CvjVmQeIfivirDme2r5MRw tyTuple__CvjVmQeIfivirDme2r5MRw;
typedef struct tyTuple__2QDyOgS51ZMPO0W1pWCY6g tyTuple__2QDyOgS51ZMPO0W1pWCY6g;
typedef struct tyTuple__UbCNQED4XJUgxOgPHJUcAQ tyTuple__UbCNQED4XJUgxOgPHJUcAQ;
typedef struct tySequence__juxPMVNF1FoR2ltzeQu8NQ tySequence__juxPMVNF1FoR2ltzeQu8NQ;
typedef struct tySequence__juxPMVNF1FoR2ltzeQu8NQ_Content tySequence__juxPMVNF1FoR2ltzeQu8NQ_Content;
typedef struct tyTuple__zExIg9bDTcVf2FHROUpzoow tyTuple__zExIg9bDTcVf2FHROUpzoow;
typedef struct tyTuple__XrHNJHOzS3O7uwF9bvCySiA tyTuple__XrHNJHOzS3O7uwF9bvCySiA;
typedef struct tyTuple__EdLY4EJQ37VFgbAn5g5rXQ tyTuple__EdLY4EJQ37VFgbAn5g5rXQ;
typedef struct tyTuple__OtlgAx3kBps9cOSMNDZSzBA tyTuple__OtlgAx3kBps9cOSMNDZSzBA;
typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg;
typedef struct tyTuple__RFOJ4fF7D9bpvmh9birH1JhQ tyTuple__RFOJ4fF7D9bpvmh9birH1JhQ;
typedef struct tyObject_BTree__gZru4m5AxLV1lYyWPNBQBw tyObject_BTree__gZru4m5AxLV1lYyWPNBQBw;
typedef struct tyObject_NodecolonObjectType___U4ON6JZL9cIHezBQjmQzJ8Q tyObject_NodecolonObjectType___U4ON6JZL9cIHezBQjmQzJ8Q;
typedef struct tyTuple__O3g9a8zTXSX36ljWponcAoA tyTuple__O3g9a8zTXSX36ljWponcAoA;
typedef struct tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ;
typedef struct tyTuple__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 tyObject_SuggestcolonObjectType___UyASNXAqAMRY5zJmcRD9ccA tyObject_SuggestcolonObjectType___UyASNXAqAMRY5zJmcRD9ccA;
typedef struct tyTuple__V6P73hvHy70PBBwharKjig tyTuple__V6P73hvHy70PBBwharKjig;
struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA {
  NI len; tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content* p;
};
typedef NI tyArray__k7D0lwfLmYccbQxUd49bbcQ[34];
struct tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA {
	NI elems;
	NI counter;
	NI max;
	tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* head;
	tySequence__ZeWVlH6DqG79b1pTDhrrUYA data;
	tyArray__k7D0lwfLmYccbQxUd49bbcQ a;
};
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
struct tySequence__NZB65egHQwAniMoFWKcFaw {
  NI len; tySequence__NZB65egHQwAniMoFWKcFaw_Content* p;
};
struct tySequence__EHM5DWw09bc16yo24mdZPsw {
  NI len; tySequence__EHM5DWw09bc16yo24mdZPsw_Content* p;
};
struct tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA {
  NI len; tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA_Content* p;
};
struct tySequence__TfHJycarvNts8E4mVG4Mfg {
  NI len; tySequence__TfHJycarvNts8E4mVG4Mfg_Content* p;
};
struct tySequence__5reviU45axUMPQgL9aoENrg {
  NI len; tySequence__5reviU45axUMPQgL9aoENrg_Content* p;
};
struct tyObject_PackedModuleGraph__vzv9a6xTiz616FotDgUeo9bg {
	tySequence__5reviU45axUMPQgL9aoENrg pm;
};
struct tySequence__dtr79aXjHrgHuH79ac55I2aw {
  NI len; tySequence__dtr79aXjHrgHuH79ac55I2aw_Content* p;
};
struct tySequence__8y0Gi4GwtXi2wk2mK1IOzw {
  NI len; tySequence__8y0Gi4GwtXi2wk2mK1IOzw_Content* p;
};
struct tyObject_Table__EBJpp1hXwvFl9cyekUv4qHg {
	tySequence__8y0Gi4GwtXi2wk2mK1IOzw data;
	NI counter;
};
struct tySequence__C2ivDnhTZ6IxAdui1rfuqw {
  NI len; tySequence__C2ivDnhTZ6IxAdui1rfuqw_Content* p;
};
struct tyObject_Table__nn0jq9adRZXGGj9assM9c9bR0w {
	tySequence__C2ivDnhTZ6IxAdui1rfuqw data;
	NI counter;
};
struct tySequence__3vEEVfBECLN6NIRA3FIp5g {
  NI len; tySequence__3vEEVfBECLN6NIRA3FIp5g_Content* p;
};
struct tyObject_Table__ChMwcRY3QzpOEBWbGAfvcA {
	tySequence__3vEEVfBECLN6NIRA3FIp5g data;
	NI counter;
};
typedef tyObject_Table__ChMwcRY3QzpOEBWbGAfvcA tyArray__HTPiakF26bUQGH9bgtmrtkA[7];
struct tySequence__9aSa87aKMiolq9a7z3kC0jTw {
  NI len; tySequence__9aSa87aKMiolq9a7z3kC0jTw_Content* p;
};
struct tyObject_Table__tEqt8LkShErhjQ9acvGyE7g {
	tySequence__9aSa87aKMiolq9a7z3kC0jTw data;
	NI counter;
};
struct tySequence__N589c2UsUgqqOITU2JfIuAQ {
  NI len; tySequence__N589c2UsUgqqOITU2JfIuAQ_Content* p;
};
struct tyObject_Table__QS2Z9cQjmvkp1aaFGq4ippw {
	tySequence__N589c2UsUgqqOITU2JfIuAQ data;
	NI counter;
};
struct tySequence__GYDW6wGgERshoSd16jJ3eQ {
  NI len; tySequence__GYDW6wGgERshoSd16jJ3eQ_Content* p;
};
struct tyObject_Table__bnfVX2VJ9aUicVujDM0GIhw {
	tySequence__GYDW6wGgERshoSd16jJ3eQ data;
	NI counter;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
struct tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A {
	tySequence__7lEisrXlQEzwtUKW5pzRCw data;
	NI counter;
};
typedef NU8 tyEnum_TBackend__CGWF9bdzxEysXyGIUwpK8cw;
typedef NU8 tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg;
typedef NU8 tyEnum_TSystemCC__A5wZwpTXF1SiKGvwgH1wrA;
typedef NU32 tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ;
typedef NU64 tySet_tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A;
struct tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ {
	tyEnum_TBackend__CGWF9bdzxEysXyGIUwpK8cw backend;
	tyEnum_TGCMode__WW4nMw6ktfZDxJ6q84Mivg selectedGC;
	tyEnum_TSystemCC__A5wZwpTXF1SiKGvwgH1wrA cCompiler;
	tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options;
	tySet_tyEnum_TGlobalOption__bV0ebQD3RnR6keJ3pWsG8A globalOptions;
};
struct tySequence__ZCZaCk14bTmSb6LMW9aWPVA {
  NI len; tySequence__ZCZaCk14bTmSb6LMW9aWPVA_Content* p;
};
struct tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg {
	NI counter;
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA data;
};
struct tySequence__fdmz6VkIf1ewwrssKYqRFg {
  NI len; tySequence__fdmz6VkIf1ewwrssKYqRFg_Content* p;
};
struct tyObject_Table__79b4rr6WWQqgRr9b4NH4UF9cw {
	tySequence__fdmz6VkIf1ewwrssKYqRFg data;
	NI counter;
};
struct tySequence__kxu4GK0onha2t9bo86mdVAg {
  NI len; tySequence__kxu4GK0onha2t9bo86mdVAg_Content* p;
};
struct tyObject_Table__AC9bec2JdoOuC3xQePGWgmA {
	tySequence__kxu4GK0onha2t9bo86mdVAg data;
	NI counter;
};
struct tySequence__48JTohSgTy339bRxHzUD8KA {
  NI len; tySequence__48JTohSgTy339bRxHzUD8KA_Content* p;
};
typedef struct {
N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0);
void* ClE_0;
} tyProc__In3g79a0qTcRmbTbJp9ba9ctg;
struct tySequence__fz0REU1l0nYmKHXgMLRrIg {
  NI len; tySequence__fz0REU1l0nYmKHXgMLRrIg_Content* p;
};
struct tyObject_Table__bHTcQUCehDW9clHfFZXI7lQ {
	tySequence__fz0REU1l0nYmKHXgMLRrIg data;
	NI counter;
};
struct tySequence__Ip9aV1IKO2gVdheNOM31DCQ {
  NI len; tySequence__Ip9aV1IKO2gVdheNOM31DCQ_Content* p;
};
struct tyObject_Table__w2vCG1OPnHmNolvQVT168g {
	tySequence__Ip9aV1IKO2gVdheNOM31DCQ data;
	NI counter;
};
struct tySequence__kHjIdgrpmuSn9cUIIKpSiDg {
  NI len; tySequence__kHjIdgrpmuSn9cUIIKpSiDg_Content* p;
};
struct tySequence__Wd0Vle6gxRCPPoSlNEvfTA {
  NI len; tySequence__Wd0Vle6gxRCPPoSlNEvfTA_Content* p;
};
struct tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA {
	tySequence__Wd0Vle6gxRCPPoSlNEvfTA data;
	NI counter;
	NIM_BOOL isSorted;
};
struct tySequence__T7nNEWoEbKBa0G5Htr45Xw {
  NI len; tySequence__T7nNEWoEbKBa0G5Htr45Xw_Content* p;
};
struct tyObject_Table__fZyCWkMwhdvr3pauCNDaag {
	tySequence__T7nNEWoEbKBa0G5Htr45Xw data;
	NI counter;
};
struct tySequence__q9cHvMDDxYU1hSCdG4YwIhA {
  NI len; tySequence__q9cHvMDDxYU1hSCdG4YwIhA_Content* p;
};
struct tyObject_Table__5vmBY49areSIlgIs4A1LLKQ {
	tySequence__q9cHvMDDxYU1hSCdG4YwIhA data;
	NI counter;
};
struct tySequence__olFOFaYzOJN9aV5BWqK4b9bA {
  NI len; tySequence__olFOFaYzOJN9aV5BWqK4b9bA_Content* p;
};
typedef tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* tyArray__EOkbZZXacNOZHC8p7xc7hw[65];
struct tySequence__vJcM7B74R2U5db9cxyXT9coA {
  NI len; tySequence__vJcM7B74R2U5db9cxyXT9coA_Content* p;
};
struct tyObject_Table__9bmd0cvHWe1s4FTDn5BPmfw {
	tySequence__vJcM7B74R2U5db9cxyXT9coA data;
	NI counter;
};
struct tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg {
  NI len; tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg_Content* p;
};
struct tyObject_Table__GhjCMuklnRqwdX9bZo9bCoNg {
	tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg data;
	NI counter;
};
typedef N_NIMCALL_PTR(tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg*, tyProc__QieBhPPkGvcmpFg89a4ftcA) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* m_p1, NI32 fileIdx_p2);
typedef N_NIMCALL_PTR(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, tyProc__F2ahyGAjs3aNLJYEXzu07g) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* m_p1, NI32 fileIdx_p2);
struct tySequence__R9c39btP6BwOBBPnbaNUtMQg {
  NI len; tySequence__R9c39btP6BwOBBPnbaNUtMQg_Content* p;
};
struct tyObject_Table__pI3mJh4Ap2XujSCfcSeUvQ {
	tySequence__R9c39btP6BwOBBPnbaNUtMQg data;
	NI counter;
};
struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA {
  NI len; tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content* p;
};
struct tyObject_Table__MsPmCuYz1KcEw6lr7P9cGkw {
	tySequence__squ9b9bUH4OLHf6cEMrt6hVA data;
	NI counter;
};
struct tySequence__3nALyQgqjnfK2Qjc6ny2Uw {
  NI len; tySequence__3nALyQgqjnfK2Qjc6ny2Uw_Content* p;
};
struct tyObject_Table__1HJsK7ponJ4Vb1lJgVFVTQ {
	tySequence__3nALyQgqjnfK2Qjc6ny2Uw data;
	NI counter;
};
struct tySequence__WbW5Q8QVks0bQpUJSGmuVg {
  NI len; tySequence__WbW5Q8QVks0bQpUJSGmuVg_Content* p;
};
typedef NU8 tyEnum_PipelinePass__kO50VlNfBJZtrNuD4VL9aTg;
typedef N_NIMCALL_PTR(void, tyProc__c9a5q9aZQWYYOu1vHoRoq9bVQ) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p2);
struct tySequence__9ahcSjIErJohSBBFLwuF56Q {
  NI len; tySequence__9ahcSjIErJohSBBFLwuF56Q_Content* p;
};
typedef N_NIMCALL_PTR(void, tyProc__kj3TYePLaHBuXxhRznQQNQ) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* owner_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* body_p2);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__D3Q9bYoPIpHZVLfEIxpBssA) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* formal_p1, tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* actual_p2);
struct tyObject_Operators__yrAfvKhiysDamJlcGNgVfQ {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opNot;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opContains;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opLe;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opLt;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opAnd;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opOr;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opIsNil;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opEq;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opAdd;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opSub;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opMul;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opDiv;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* opLen;
};
struct tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw {
	tySequence__TfHJycarvNts8E4mVG4Mfg ifaces;
	tyObject_PackedModuleGraph__vzv9a6xTiz616FotDgUeo9bg packed_0;
	tySequence__dtr79aXjHrgHuH79ac55I2aw encoders;
	tyObject_Table__EBJpp1hXwvFl9cyekUv4qHg typeInstCache;
	tyObject_Table__nn0jq9adRZXGGj9assM9c9bR0w procInstCache;
	tyArray__HTPiakF26bUQGH9bgtmrtkA attachedOps;
	tyObject_Table__tEqt8LkShErhjQ9acvGyE7g methodsPerGenericType;
	tyObject_Table__QS2Z9cQjmvkp1aaFGq4ippw memberProcsPerType;
	tyObject_Table__bnfVX2VJ9aUicVujDM0GIhw initializersPerType;
	tyObject_Table__ChMwcRY3QzpOEBWbGAfvcA enumToStringProcs;
	tyObject_Table__PBlYIBD9bHKBu5FQE5lPn7A emittedTypeInfo;
	tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ startupPackedConfig;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg packageSyms;
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA deps;
	tyObject_Table__79b4rr6WWQqgRr9b4NH4UF9cw importDeps;
	NIM_BOOL suggestMode;
	NIM_BOOL invalidTransitiveClosure;
	NIM_BOOL interactive;
	NIM_BOOL withinSystem;
	tyObject_Table__AC9bec2JdoOuC3xQePGWgmA inclToMod;
	tySequence__48JTohSgTy339bRxHzUD8KA importStack;
	RootObj* backend;
	tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* config;
	tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache;
	RootObj* vm;
	RootObj* repl;
	tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* usageSym;
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA owners;
	tyObject_Table__bHTcQUCehDW9clHfFZXI7lQ suggestSymbols;
	tyObject_Table__w2vCG1OPnHmNolvQVT168g suggestErrors;
	tySequence__kHjIdgrpmuSn9cUIIKpSiDg methods;
	tyObject_CountTable__qvMelb9coODdwoghoAPc9c9aA bucketTable;
	tyObject_Table__fZyCWkMwhdvr3pauCNDaag objectTree;
	tyObject_Table__5vmBY49areSIlgIs4A1LLKQ methodsPerType;
	tySequence__olFOFaYzOJN9aV5BWqK4b9bA dispatchers;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* systemModule;
	tyArray__EOkbZZXacNOZHC8p7xc7hw sysTypes;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg compilerprocs;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg exposed;
	tyObject_TStrTable__Ry5QUbfaMzlI1Jpe9bUTBDg packageTypes;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* emptyNode;
	tyObject_Table__9bmd0cvHWe1s4FTDn5BPmfw canonTypes;
	tyObject_Table__GhjCMuklnRqwdX9bZo9bCoNg symBodyHashes;
	tyProc__QieBhPPkGvcmpFg89a4ftcA importModuleCallback;
	tyProc__F2ahyGAjs3aNLJYEXzu07g includeFileCallback;
	tyObject_Table__pI3mJh4Ap2XujSCfcSeUvQ cacheSeqs;
	tyObject_Table__MsPmCuYz1KcEw6lr7P9cGkw cacheCounters;
	tyObject_Table__1HJsK7ponJ4Vb1lJgVFVTQ cacheTables;
	tySequence__WbW5Q8QVks0bQpUJSGmuVg passes;
	tyEnum_PipelinePass__kO50VlNfBJZtrNuD4VL9aTg pipelinePass;
	tyProc__c9a5q9aZQWYYOu1vHoRoq9bVQ onDefinition;
	tyProc__c9a5q9aZQWYYOu1vHoRoq9bVQ onDefinitionResolveForward;
	tyProc__c9a5q9aZQWYYOu1vHoRoq9bVQ onUsage;
	tySequence__9ahcSjIErJohSBBFLwuF56Q globalDestructors;
	tyProc__kj3TYePLaHBuXxhRznQQNQ strongSemCheck;
	tyProc__D3Q9bYoPIpHZVLfEIxpBssA compatibleProps;
	tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen;
	tyObject_Operators__yrAfvKhiysDamJlcGNgVfQ operators;
	tyObject_StringTableObj__eKsdjq89aDBcvVY68b206Qg* cachedFiles;
	tySequence__9ahcSjIErJohSBBFLwuF56Q procGlobals;
};
struct tyObject_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 NU8 tyEnum_TLocKind__4f5UmCRM8alrCgj32FqIRQ;
typedef NU8 tyEnum_TStorageLoc__f19b6ZkRyh7BNPxlyjRbEGg;
typedef NU16 tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg;
struct tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw {
	tyEnum_TLocKind__4f5UmCRM8alrCgj32FqIRQ k;
	tyEnum_TStorageLoc__f19b6ZkRyh7BNPxlyjRbEGg storage;
	tySet_tyEnum_TLocFlag__Df76pxukl21zlyRFq9aa0Bg flags;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* lode;
	NimStringV2 snippet;
};
struct tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg {
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA itemId;
	tyEnum_TSymKind__9a75lHd9cV25XwN4jXXBmM0Q kind;
union{
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* gcUnsafetyReason;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* transformedBody;
} _kind_1;
	struct {
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* guard;
	NI bitsize;
	NI alignment;
} _kind_2;
};
	tyEnum_TMagic__I3BbtzbLAKAfOym58MkGAg magic;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* name;
	tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* ownerField;
	tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg flags;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* ast;
	tySet_tyEnum_TOption__LEwWf0yAgZkZx5Got2wGSQ options;
	NI position;
	NI32 offset;
	NI32 disamb;
	tyObject_TLoc__KvQVlvKb6mbV567NQ0hMOw loc;
	tyObject_TLib__sVuuRvQkiYNOUiPRZhmZig* annex;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* constraint;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* instantiatedFrom;
};
typedef NU32 tySet_tyEnum_TNodeFlag__3UjGgL9bLM4RXBnoZJs9cviw;
typedef NU8 tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw;
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_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA;
typedef NU8 tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
	NimStringV2 Field0;
	NI Field1;
	NI Field2;
};
struct tyTuple__bPZu3GhfjP9cHscH3h9axT6w {
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA Field0;
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA Field1;
};
struct tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A {
	NI rc;
	NI rootIdx;
};
typedef NU tyArray__yYbpDJlxVAahcZb4EP3s9cA[16];
struct tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA {
	tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* next;
	NI key;
	tyArray__yYbpDJlxVAahcZb4EP3s9cA bits;
};
struct tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA {
	NI id;
	NimStringV2 s;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* next;
	NI h;
};
struct tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* pnode;
	NI id;
	NI idx;
	NI lowLink;
	NIM_BOOL onStack;
	tySequence__EHM5DWw09bc16yo24mdZPsw kids;
	NI hAQ;
	NI hIS;
	NI hB;
	NI hCmd;
};
struct TNimTypeV2 {
	void* destructor;
	NI size;
	NI16 align;
	NI16 depth;
	NU32* display;
	void* traceImpl;
	void* typeInfoV1;
	NI flags;
	void* vTable[SEQ_DECL_SIZE];
};
typedef struct {
N_NIMCALL_PTR(NI, ClP_0) (tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* x_p0, tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* y_p1, void* ClE_0);
void* ClE_0;
} tyProc__TiiGZQ4go3yiVxZnG2EF5A;
typedef NU8 tyEnum_SortOrder__wt7l6Gbd8C9c61b6I621QeA;
typedef N_CLOSURE_PTR(NI, TM__wGDfi9c1BEw7VBzRnDQgLpQ_15) (tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* x_p0, tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* y_p1, void* ClE_0);
struct tySequence__ZeWVlH6DqG79b1pTDhrrUYA_Content { NI cap; tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* data[SEQ_DECL_SIZE]; };
struct tySequence__NZB65egHQwAniMoFWKcFaw_Content { NI cap; tyTuple__bPZu3GhfjP9cHscH3h9axT6w data[SEQ_DECL_SIZE]; };
struct tySequence__EHM5DWw09bc16yo24mdZPsw_Content { NI cap; tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* data[SEQ_DECL_SIZE]; };
struct tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA_Content { NI cap; tySequence__EHM5DWw09bc16yo24mdZPsw 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;
};
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
typedef NU8 tySet_tyEnum_ModuleBackendFlag__5FvIlwIIbpcHU0ZRU9a5hrQ;
struct tySequence__Vl1abU3gfp0RqCb1KKfmDA {
  NI len; tySequence__Vl1abU3gfp0RqCb1KKfmDA_Content* p;
};
struct tyObject_OrderedTable__vodBW9bS41CI2hVVsJJ8qiw {
	tySequence__Vl1abU3gfp0RqCb1KKfmDA data;
	NI counter;
	NI first;
	NI last;
};
struct tySequence__qyyNkmlc4fzOzelC8spUkQ {
  NI len; tySequence__qyyNkmlc4fzOzelC8spUkQ_Content* p;
};
struct tyObject_OrderedTable__y5tq9cRly5CxS2mQPchEHcw {
	tySequence__qyyNkmlc4fzOzelC8spUkQ data;
	NI counter;
	NI first;
	NI last;
};
struct tyObject_BiTable__KR9c7QZguPO3OKZOIcphgcA {
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ vals;
	tySequence__9bAGqSvkAaFL9bWjsEPslrFA keys;
};
struct tySequence__IHUFRsFxZNv7YydiUO2esQ {
  NI len; tySequence__IHUFRsFxZNv7YydiUO2esQ_Content* p;
};
struct tyObject_BiTable__9aUXwPoJbNPqj9a249c0iSmlg {
	tySequence__IHUFRsFxZNv7YydiUO2esQ vals;
	tySequence__9bAGqSvkAaFL9bWjsEPslrFA keys;
};
struct tySequence__orxtl6CusdjXleqrxi67gw {
  NI len; tySequence__orxtl6CusdjXleqrxi67gw_Content* p;
};
struct tyObject_LineInfoManager__TTy646Kfh1cVyXU9aSMasUQ {
	tySequence__orxtl6CusdjXleqrxi67gw aside;
};
struct tyObject_PackedModule__sRHd9aQ2ZMII76xRsfAbE9aQ {
	NimStringV2 definedSymbols;
	tySet_tyEnum_TSymFlag__Ii9cPbwXR8ePKVRFOdTKpDg moduleFlags;
	tySequence__PXIzfWocnrafGz5p3CP5LA includes;
	tySequence__9bAGqSvkAaFL9bWjsEPslrFA imports;
	tyObject_PackedTree__YtSUB9b7CaIoOyHxDty9bm6w toReplay;
	tyObject_PackedTree__YtSUB9b7CaIoOyHxDty9bm6w topLevel;
	tyObject_PackedTree__YtSUB9b7CaIoOyHxDty9bm6w bodies;
	tySequence__b89aLriiJnVTD186H6zNIgg exports;
	tySequence__b89aLriiJnVTD186H6zNIgg hidden;
	tySequence__hIPTk9aFdaMMVAOzEbnPyqg reexports;
	tySequence__b89aLriiJnVTD186H6zNIgg compilerProcs;
	tySequence__48JTohSgTy339bRxHzUD8KA converters;
	tySequence__48JTohSgTy339bRxHzUD8KA methods;
	tySequence__48JTohSgTy339bRxHzUD8KA trmacros;
	tySequence__48JTohSgTy339bRxHzUD8KA pureEnums;
	tySequence__YYy1721YAuPF0ajBYHd8Wg typeInstCache;
	tySequence__UODJbvzmu39c3Ho9cqhSk9agQ procInstCache;
	tySequence__F1qNdU7m0Czu7Y2q0eksXw attachedOps;
	tySequence__r3Kz9breImOXyFFoJ29aBM8Q methodsPerGenericType;
	tySequence__YYy1721YAuPF0ajBYHd8Wg enumToStringProcs;
	tySequence__YYy1721YAuPF0ajBYHd8Wg methodsPerType;
	tySequence__qBes3XzcQQ9cyia9bRwnmbJw dispatchers;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ emittedTypeInfo;
	tySet_tyEnum_ModuleBackendFlag__5FvIlwIIbpcHU0ZRU9a5hrQ backendFlags;
	tyObject_OrderedTable__vodBW9bS41CI2hVVsJJ8qiw syms;
	tyObject_OrderedTable__y5tq9cRly5CxS2mQPchEHcw types;
	tyObject_BiTable__KR9c7QZguPO3OKZOIcphgcA strings;
	tyObject_BiTable__9aUXwPoJbNPqj9a249c0iSmlg numbers;
	tyObject_LineInfoManager__TTy646Kfh1cVyXU9aSMasUQ man;
	tyObject_PackedConfig__Hpn673wkKPDorr1HY9bOaDQ cfg;
};
struct tySequence__K0j67V58u5FW0dCC534FQw {
  NI len; tySequence__K0j67V58u5FW0dCC534FQw_Content* p;
};
struct tyObject_OrderedTable__h8mIUVGY8LJXF9cakgvB9bqQ {
	tySequence__K0j67V58u5FW0dCC534FQw data;
	NI counter;
	NI first;
	NI last;
};
struct tySequence__UE4b6iUkm1b3zTPamTTkDw {
  NI len; tySequence__UE4b6iUkm1b3zTPamTTkDw_Content* p;
};
struct tyObject_OrderedTable__DED9c7j9bI3Lh5w4GQakK8yQ {
	tySequence__UE4b6iUkm1b3zTPamTTkDw data;
	NI counter;
	NI first;
	NI last;
};
struct tySequence__FmsTQiIcS9arxHxs3QY48vA {
  NI len; tySequence__FmsTQiIcS9arxHxs3QY48vA_Content* p;
};
struct tyObject_Table__BH9cy1hZ1rZZoGkNCEN1uvg {
	tySequence__FmsTQiIcS9arxHxs3QY48vA data;
	NI counter;
};
struct tyObject_LoadedModule__7NEKRkz5hkiOxQy5guqIHA {
	tyEnum_ModuleStatus__uT4B39a2dNaG9a9aunVdyhQtQ status;
	NIM_BOOL symsInit;
	NIM_BOOL typesInit;
	NIM_BOOL loadedButAliveSetChanged;
	tyObject_PackedModule__sRHd9aQ2ZMII76xRsfAbE9aQ fromDisk;
	tyObject_OrderedTable__h8mIUVGY8LJXF9cakgvB9bqQ syms;
	tyObject_OrderedTable__DED9c7j9bI3Lh5w4GQakK8yQ types;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* module;
	tyObject_Table__BH9cy1hZ1rZZoGkNCEN1uvg iface;
	tyObject_Table__BH9cy1hZ1rZZoGkNCEN1uvg ifaceHidden;
};
struct tySequence__5reviU45axUMPQgL9aoENrg_Content { NI cap; tyObject_LoadedModule__7NEKRkz5hkiOxQy5guqIHA data[SEQ_DECL_SIZE]; };
struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ {
  NI len; tySequence__9cnx3zXnWzeclW8Ko4oUgAQ_Content* p;
};
struct tyObject_Table__uaQEKxLZNO5fpFluyxnhTg {
	tySequence__9cnx3zXnWzeclW8Ko4oUgAQ data;
	NI counter;
};
struct tySequence__d8ZV4IMgHt9biik9cS9a0hrmg {
  NI len; tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content* p;
};
struct tyObject_PackedEncoder__FGa18gE2dyYyuq9ckHprjTQ {
	NI32 thisModule;
	NI32 lastFile;
	NU32 lastLit;
	tyObject_Table__uaQEKxLZNO5fpFluyxnhTg filenames;
	tySequence__d8ZV4IMgHt9biik9cS9a0hrmg pendingTypes;
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA pendingSyms;
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA typeMarker;
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA symMarker;
	tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* config;
};
struct tySequence__dtr79aXjHrgHuH79ac55I2aw_Content { NI cap; tyObject_PackedEncoder__FGa18gE2dyYyuq9ckHprjTQ data[SEQ_DECL_SIZE]; };
struct tySequence__vb3AGHvMJTxdOSSwMmBmTQ {
  NI len; tySequence__vb3AGHvMJTxdOSSwMmBmTQ_Content* p;
};
struct tyTuple__7TXOq9czx9cn1FWKG5gXNK8Q {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__vb3AGHvMJTxdOSSwMmBmTQ Field2;
};
struct tySequence__8y0Gi4GwtXi2wk2mK1IOzw_Content { NI cap; tyTuple__7TXOq9czx9cn1FWKG5gXNK8Q data[SEQ_DECL_SIZE]; };
struct tySequence__apM9bRAO19cVjhWlxqd1PGeA {
  NI len; tySequence__apM9bRAO19cVjhWlxqd1PGeA_Content* p;
};
struct tyTuple__F1mMODXmKFMNQ5rLCtcv0Q {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__apM9bRAO19cVjhWlxqd1PGeA Field2;
};
struct tySequence__C2ivDnhTZ6IxAdui1rfuqw_Content { NI cap; tyTuple__F1mMODXmKFMNQ5rLCtcv0Q data[SEQ_DECL_SIZE]; };
struct tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig {
	NU32 module;
	NI32 item;
};
struct tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ {
	NI module;
	tyObject_PackedItemId__WqAMZCDwoZiUuOt3ohcDig packed_0;
};
struct tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA {
	tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ id;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* sym;
};
struct tyTuple__vHfXSpEC1R9b9cKgfFB9a58gw {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA Field2;
};
struct tySequence__3vEEVfBECLN6NIRA3FIp5g_Content { NI cap; tyTuple__vHfXSpEC1R9b9cKgfFB9a58gw data[SEQ_DECL_SIZE]; };
struct tySequence__9bW2eTK9b7vXE70Sx5VPH1mw {
  NI len; tySequence__9bW2eTK9b7vXE70Sx5VPH1mw_Content* p;
};
struct tyTuple__4iq9bD09amB7Ah0r9cBB0nSPQ {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__9bW2eTK9b7vXE70Sx5VPH1mw Field2;
};
struct tySequence__9aSa87aKMiolq9a7z3kC0jTw_Content { NI cap; tyTuple__4iq9bD09amB7Ah0r9cBB0nSPQ data[SEQ_DECL_SIZE]; };
struct tyTuple__bnJwOH0eJlAwCAMbr1inhw {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA Field2;
};
struct tySequence__N589c2UsUgqqOITU2JfIuAQ_Content { NI cap; tyTuple__bnJwOH0eJlAwCAMbr1inhw data[SEQ_DECL_SIZE]; };
struct tyTuple__YG7h1OUHzgfgTeH9cl0U0dw {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* Field2;
};
struct tySequence__GYDW6wGgERshoSd16jJ3eQ_Content { NI cap; tyTuple__YG7h1OUHzgfgTeH9cl0U0dw data[SEQ_DECL_SIZE]; };
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
	NI Field0;
	NimStringV2 Field1;
	NI32 Field2;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content { NI cap; tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE]; };
struct tySequence__ZCZaCk14bTmSb6LMW9aWPVA_Content { NI cap; tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* data[SEQ_DECL_SIZE]; };
struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q {
	NI Field0;
	NI32 Field1;
	tySequence__48JTohSgTy339bRxHzUD8KA Field2;
};
struct tySequence__fdmz6VkIf1ewwrssKYqRFg_Content { NI cap; tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q data[SEQ_DECL_SIZE]; };
struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ {
	NI Field0;
	NI32 Field1;
	NI32 Field2;
};
struct tySequence__kxu4GK0onha2t9bo86mdVAg_Content { NI cap; tyTuple__xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE]; };
struct tySequence__48JTohSgTy339bRxHzUD8KA_Content { NI cap; NI32 data[SEQ_DECL_SIZE]; };
struct tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg {
  NI len; tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg_Content* p;
};
struct tySequence__yUWoZehF86MIc40opFgacw {
  NI len; tySequence__yUWoZehF86MIc40opFgacw_Content* p;
};
struct tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw {
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA s;
	NI len;
};
struct tyObject_SuggestFileSymbolDatabase__o0ahEzaLn5a7TdNqH4OVqQ {
	tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg lineInfo;
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA sym;
	tySequence__yUWoZehF86MIc40opFgacw caughtExceptions;
	tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw caughtExceptionsSet;
	tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw isDecl;
	tyObject_PackedBoolArray__1pk9boftqWMNDE1oh5HcIhw isGenericInstance;
	NI32 fileIndex;
	NIM_BOOL trackCaughtExceptions;
	NIM_BOOL isSorted;
};
struct tyTuple__tG5yYi8DnD7bl00aT9cgctQ {
	NI Field0;
	NI32 Field1;
	tyObject_SuggestFileSymbolDatabase__o0ahEzaLn5a7TdNqH4OVqQ Field2;
};
struct tySequence__fz0REU1l0nYmKHXgMLRrIg_Content { NI cap; tyTuple__tG5yYi8DnD7bl00aT9cgctQ data[SEQ_DECL_SIZE]; };
struct tySequence__nSO1ltijM4vhc0UrrXKEqA {
  NI len; tySequence__nSO1ltijM4vhc0UrrXKEqA_Content* p;
};
struct tyTuple__gnRkA1L4XiR4uByriyHW8Q {
	NI Field0;
	NI32 Field1;
	tySequence__nSO1ltijM4vhc0UrrXKEqA Field2;
};
struct tySequence__Ip9aV1IKO2gVdheNOM31DCQ_Content { NI cap; tyTuple__gnRkA1L4XiR4uByriyHW8Q data[SEQ_DECL_SIZE]; };
struct tyTuple__CvjVmQeIfivirDme2r5MRw {
	tySequence__ZCZaCk14bTmSb6LMW9aWPVA Field0;
	tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* Field1;
};
struct tySequence__kHjIdgrpmuSn9cUIIKpSiDg_Content { NI cap; tyTuple__CvjVmQeIfivirDme2r5MRw data[SEQ_DECL_SIZE]; };
struct tyTuple__2QDyOgS51ZMPO0W1pWCY6g {
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field0;
	NI Field1;
};
struct tySequence__Wd0Vle6gxRCPPoSlNEvfTA_Content { NI cap; tyTuple__2QDyOgS51ZMPO0W1pWCY6g data[SEQ_DECL_SIZE]; };
struct tySequence__juxPMVNF1FoR2ltzeQu8NQ {
  NI len; tySequence__juxPMVNF1FoR2ltzeQu8NQ_Content* p;
};
struct tyTuple__UbCNQED4XJUgxOgPHJUcAQ {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__juxPMVNF1FoR2ltzeQu8NQ Field2;
};
struct tySequence__T7nNEWoEbKBa0G5Htr45Xw_Content { NI cap; tyTuple__UbCNQED4XJUgxOgPHJUcAQ data[SEQ_DECL_SIZE]; };
struct tyTuple__zExIg9bDTcVf2FHROUpzoow {
	NI Field0;
	tyObject_ItemId__N3z7uIvKCrk0S9cej5ew0nA Field1;
	tySequence__olFOFaYzOJN9aV5BWqK4b9bA Field2;
};
struct tySequence__q9cHvMDDxYU1hSCdG4YwIhA_Content { NI cap; tyTuple__zExIg9bDTcVf2FHROUpzoow data[SEQ_DECL_SIZE]; };
struct tySequence__olFOFaYzOJN9aV5BWqK4b9bA_Content { NI cap; tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA data[SEQ_DECL_SIZE]; };
typedef NU8 tyArray__dnD8kjh6rJ1Yy5jHvid0Ow[16];
struct tyTuple__XrHNJHOzS3O7uwF9bvCySiA {
	NI Field0;
	tyArray__dnD8kjh6rJ1Yy5jHvid0Ow Field1;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* Field2;
};
struct tySequence__vJcM7B74R2U5db9cxyXT9coA_Content { NI cap; tyTuple__XrHNJHOzS3O7uwF9bvCySiA data[SEQ_DECL_SIZE]; };
struct tyTuple__EdLY4EJQ37VFgbAn5g5rXQ {
	NI Field0;
	NI Field1;
	tyArray__dnD8kjh6rJ1Yy5jHvid0Ow Field2;
};
struct tySequence__Mt5NbgJ9cKUrhjgdsnfKvXg_Content { NI cap; tyTuple__EdLY4EJQ37VFgbAn5g5rXQ data[SEQ_DECL_SIZE]; };
struct tyTuple__OtlgAx3kBps9cOSMNDZSzBA {
	NI Field0;
	NimStringV2 Field1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* Field2;
};
struct tySequence__R9c39btP6BwOBBPnbaNUtMQg_Content { NI cap; tyTuple__OtlgAx3kBps9cOSMNDZSzBA data[SEQ_DECL_SIZE]; };
struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg {
	NI Field0;
	NimStringV2 Field1;
	NI64 Field2;
};
struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA_Content { NI cap; tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE]; };
struct tyObject_BTree__gZru4m5AxLV1lYyWPNBQBw {
	tyObject_NodecolonObjectType___U4ON6JZL9cIHezBQjmQzJ8Q* root;
	NI entries;
};
struct tyTuple__RFOJ4fF7D9bpvmh9birH1JhQ {
	NI Field0;
	NimStringV2 Field1;
	tyObject_BTree__gZru4m5AxLV1lYyWPNBQBw Field2;
};
struct tySequence__3nALyQgqjnfK2Qjc6ny2Uw_Content { NI cap; tyTuple__RFOJ4fF7D9bpvmh9birH1JhQ data[SEQ_DECL_SIZE]; };
typedef N_NIMCALL_PTR(tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ*, tyProc__TVHQTM3bKm4Mi6Ul6zgzuQ) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* module_p1, tyObject_IdGeneratorcolonObjectType___G9bSmxY5z1At9bXNKpE9bKuug* idgen_p2);
typedef N_NIMCALL_PTR(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, tyProc__74nHWc2UIRu3iSR9akqDDBg) (tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ* p_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* topLevelStmt_p1);
typedef N_NIMCALL_PTR(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, tyProc__S9bLWKf8jgjzoiotAmEyFSw) (tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TPassContext__QQOybmyOwFn29csyFzTSLNQ* p_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p2);
struct tyTuple__O3g9a8zTXSX36ljWponcAoA {
	tyProc__TVHQTM3bKm4Mi6Ul6zgzuQ Field0;
	tyProc__74nHWc2UIRu3iSR9akqDDBg Field1;
	tyProc__S9bLWKf8jgjzoiotAmEyFSw Field2;
	NIM_BOOL Field3;
};
struct tySequence__WbW5Q8QVks0bQpUJSGmuVg_Content { NI cap; tyTuple__O3g9a8zTXSX36ljWponcAoA data[SEQ_DECL_SIZE]; };
struct tySequence__9ahcSjIErJohSBBFLwuF56Q_Content { NI cap; tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* 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]; };
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 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]; };
typedef NU8 tyEnum_TTypeKind__DYVdhzQ9cMfgoirdzGDwSCg;
typedef NU8 tyEnum_TCallingConvention__MvGn9cvx9bNYQKo7Hhd5GM9cQ;
typedef NU64 tySet_tyEnum_TTypeFlag__HJaExo9c84N85e9br9anJmV1A;
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 tySequence__d8ZV4IMgHt9biik9cS9a0hrmg_Content { NI cap; tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* data[SEQ_DECL_SIZE]; };
struct tyObject_LazyType__dsEGDq9cOhnzsRvTUTwwwuA {
	tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ id;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* typ;
};
struct tySequence__vb3AGHvMJTxdOSSwMmBmTQ_Content { NI cap; tyObject_LazyType__dsEGDq9cOhnzsRvTUTwwwuA data[SEQ_DECL_SIZE]; };
struct tySequence__YxH9cgSorHRI8ZPzHf47NNQ {
  NI len; tySequence__YxH9cgSorHRI8ZPzHf47NNQ_Content* p;
};
struct tyObject_LazyInstantiation__n72c7MnOoHWBy9c9akgwGqEA {
	NI module;
	tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ sym;
	tySequence__YxH9cgSorHRI8ZPzHf47NNQ concreteTypes;
	tyObject_TInstantiation__jr8MibvPn2sQBnO7XCoZRQ* inst;
};
struct tySequence__apM9bRAO19cVjhWlxqd1PGeA_Content { NI cap; tyObject_LazyInstantiation__n72c7MnOoHWBy9c9akgwGqEA data[SEQ_DECL_SIZE]; };
struct tyTuple__lGHLhAAUpxgfrnQkIzNrMw {
	NI Field0;
	tyObject_LazySym__yw1M8ZE9be6l5XOjcw0euIA Field1;
};
struct tySequence__9bW2eTK9b7vXE70Sx5VPH1mw_Content { NI cap; tyTuple__lGHLhAAUpxgfrnQkIzNrMw data[SEQ_DECL_SIZE]; };
struct tyObject_TinyLineInfo__qW2GTIPjeOQ42q9c2MPWLLA {
	NU16 line;
	NI16 col;
};
struct tySequence__9aCujOg9b8Xgx9aYJJEMRHVwg_Content { NI cap; tyObject_TinyLineInfo__qW2GTIPjeOQ42q9c2MPWLLA data[SEQ_DECL_SIZE]; };
struct tySequence__yUWoZehF86MIc40opFgacw_Content { NI cap; tySequence__d8ZV4IMgHt9biik9cS9a0hrmg data[SEQ_DECL_SIZE]; };
struct tySequence__nSO1ltijM4vhc0UrrXKEqA_Content { NI cap; tyObject_SuggestcolonObjectType___UyASNXAqAMRY5zJmcRD9ccA* data[SEQ_DECL_SIZE]; };
struct tyTuple__V6P73hvHy70PBBwharKjig {
	NI Field0;
	tyObject_TType__8qAQZfpTDk89aeclTNn4d9cg* Field1;
};
struct tySequence__juxPMVNF1FoR2ltzeQu8NQ_Content { NI cap; tyTuple__V6P73hvHy70PBBwharKjig data[SEQ_DECL_SIZE]; };
struct tySequence__YxH9cgSorHRI8ZPzHf47NNQ_Content { NI cap; tyObject_FullId__tYrGdGRoone9bMsQwSCYR9bQ data[SEQ_DECL_SIZE]; };
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1);
static N_INLINE(void, nimSetMem__system_u2172)(void* a_p0, int v_p1, NI size_p2);
static N_INLINE(void, initIntSet__pureZcollectionsZintsets_u598)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* Result);
N_LIB_PRIVATE N_NIMCALL(void, initPackedSet__pureZcollectionsZintsets_u37)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* Result);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toFullPath__msgs_u624)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, NI32 fileIdx_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, splitSections__reorder_u564)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newNodeI__ast_u4091)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1);
static N_INLINE(NI, safeLen__ast_u3197)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
static N_INLINE(NI, len__ast_u3190)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_u3255)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** dest_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, newNode__ast_u4069)(tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__ast_u3215)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* father_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* son_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3252)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, expandIncludes__reorder_u517)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* module_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p2, NimStringV2 modulePath_p3, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* includedFiles_p4);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasIncludes__reorder_u504)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(NI32, checkModuleName__modulepaths_u22)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, NIM_BOOL doLocalError_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl__astyaml_u223)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s_p0, NI key_p1);
N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_u1227)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tyObject_TLineInfo__cGj50BJ9bj3Zx09a9bMvKs8HA info_p1, tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA msg_p2, NimStringV2 arg_p3, tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w eh_p4, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2_p5, NIM_BOOL isRaw_p6, NIM_BOOL ignoreError_p7);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatSingleElem)(NimStringV2 formatstr_p0, NimStringV2 a_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toMsgFilename__msgs_u688)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, NI32 fileIdx_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u2691)(NimStringV2 dest_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, includeModule__reorder_u512)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1, NI32 fileIdx_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, parseFile__syntaxes_u235)(NI32 fileIdx_p0, tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p1, tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* config_p2);
N_LIB_PRIVATE N_NIMCALL(void, addDep__modulegraphs_u14888)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* m_p1, NI32 dep_p2);
N_LIB_PRIVATE N_NIMCALL(void, addIncludeDep__modulegraphs_u14911)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* g_p0, NI32 module_p1, NI32 includeFile_p2);
N_LIB_PRIVATE N_NIMCALL(void, excl__suggestsymdb_u161)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s_p0, NI key_p1);
N_LIB_PRIVATE N_NIMCALL(tySequence__NZB65egHQwAniMoFWKcFaw, newSeq__reorder_u1554)(NI len_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_u100)(tySequence__ZeWVlH6DqG79b1pTDhrrUYA dest_p0);
static N_INLINE(NIM_BOOL, nimDecRefIsLastDyn)(void* p_p0);
static N_INLINE(NI, minuspercent___system_u805)(NI x_p0, NI y_p1);
N_LIB_PRIVATE N_NIMCALL(void, unregisterCycle__system_u3163)(tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* s_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_u66)(tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___pureZcollectionsZintsets_u236)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* dest_p0, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, computeDeps__reorder_u365)(tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* declares_p2, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* uses_p3, NIM_BOOL topLevel_p4);
N_LIB_PRIVATE N_NIMCALL(void, addDecl__reorder_u312)(tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* declares_p2);
N_LIB_PRIVATE N_NIMCALL(void, incl__pureZcollectionsZintsets_u366)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s_p0, NI key_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*, accQuoted__reorder_u301)(tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1);
static N_INLINE(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*, getPIdent__ast_u2825)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___idents_u158)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA** dest_p0, tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* src_p1);
static N_INLINE(NIM_BOOL, eqeq___idents_u366)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* a_p0, tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* b_p1);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2);
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s_p0, NI addLen_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_u155)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*, getIdent__idents_u206)(tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* ic_p0, NimStringV2 identifier_p1);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1);
static N_INLINE(NIM_BOOL, equalMem__system_u1750)(void* a_p0, void* b_p1, NI size_p2);
static N_INLINE(int, nimCmpMem)(void* a_p0, void* b_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(tySequence__EHM5DWw09bc16yo24mdZPsw, buildGraph__reorder_u1215)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tySequence__NZB65egHQwAniMoFWKcFaw deps_p1);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayloadUninit)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NIMCALL(void, add__reorder_u1244)(tySequence__EHM5DWw09bc16yo24mdZPsw* x_p0, tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* y_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*, newDepN__reorder_u27)(NI id_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* pnode_p1);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObjUninit)(NI size_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, eqdup___ast_u3258)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* src_p0);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___reorder_u141)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* dest_p0);
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p_p0, TNimTypeV2* desc_p1);
N_LIB_PRIVATE N_NOINLINE(void, rememberCycle__system_u3533)(NIM_BOOL isDestroyAction_p0, tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* s_p1, TNimTypeV2* desc_p2);
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__reorder_u1885)(void* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___reorder_u59)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___reorder_u38)(tySequence__EHM5DWw09bc16yo24mdZPsw dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_u3270)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___reorder_u71)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* dest_p0, void* env_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___reorder_u50)(tySequence__EHM5DWw09bc16yo24mdZPsw* dest_p0, void* env_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___reorder_u144)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** dest_p0, tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* src_p1, NIM_BOOL cyclic_p2);
static N_INLINE(void, nimIncRefCyclic)(void* p_p0, NIM_BOOL cyclic_p1);
static N_INLINE(NI, pluspercent___system_u785)(NI x_p0, NI y_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___pureZcollectionsZintsets_u250)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* dest_p0, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* src_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasBody__reorder_u1177)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* n_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasBody__reorder_u1169)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasCommand__reorder_u1140)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* n_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasCommand__reorder_u1136)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_u230)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* dest_p0);
static N_INLINE(void, nimMarkCyclic)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___reorder_u138)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** dest_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasImportStmt__reorder_u1130)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* n_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasImportStmt__reorder_u1126)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuotedDef__reorder_u1163)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* n_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuotedDef__reorder_u1159)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuoted__reorder_u1146)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, intersects__reorder_u1183)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s1_p0, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s2_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__astalgo_u2846)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s_p0, NI key_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___pureZcollectionsZintsets_u51)(tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA** dest_p0, tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZcollectionsZintsets_u48)(tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasPushOrPopPragma__reorder_u1203)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* n_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*, eqdup___reorder_u148)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* src_p0, NIM_BOOL cyclic_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___pureZcollectionsZintsets_u45)(tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA** dest_p0);
N_LIB_PRIVATE N_NIMCALL(tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA, getStrongComponents__reorder_u1463)(tySequence__EHM5DWw09bc16yo24mdZPsw* g_p0);
N_LIB_PRIVATE N_NIMCALL(void, strongConnect__reorder_u1330)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** v_p0, NI* idx_p1, tySequence__EHM5DWw09bc16yo24mdZPsw* s_p2, tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA* res_p3);
N_LIB_PRIVATE N_NIMCALL(tySequence__EHM5DWw09bc16yo24mdZPsw, newSeq__reorder_u714)(NI len_p0);
static N_INLINE(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*, pop__reorder_u1385)(tySequence__EHM5DWw09bc16yo24mdZPsw* s_p0);
N_LIB_PRIVATE N_NIMCALL(void, shrink__reorder_u104)(tySequence__EHM5DWw09bc16yo24mdZPsw* x_p0, NI newLen_p1);
N_LIB_PRIVATE N_NIMCALL(void, add__reorder_u1405)(tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA* x_p0, tySequence__EHM5DWw09bc16yo24mdZPsw y_p1);
N_LIB_PRIVATE N_NIMCALL(void, mergeSections__reorder_u628)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA comps_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* res_p2);
N_LIB_PRIVATE N_NIMCALL(tySequence__EHM5DWw09bc16yo24mdZPsw, sorted__reorder_u685)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** a_p0, NI a_p0Len_0, tyProc__TiiGZQ4go3yiVxZnG2EF5A cmp_p1, tyEnum_SortOrder__wt7l6Gbd8C9c61b6I621QeA order_p2);
N_LIB_PRIVATE N_NIMCALL(NI, colonanonymous___reorder_u669)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* xX60gensym53__p0, tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* yX60gensym53__p1);
N_LIB_PRIVATE N_NIMCALL(NI, cmp__system_u8242)(NI x_p0, NI y_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___reorder_u35)(tySequence__EHM5DWw09bc16yo24mdZPsw* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, haveSameKind__reorder_u581)(tySequence__EHM5DWw09bc16yo24mdZPsw dns_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___reorder_u981)(tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, alignedDealloc)(void* p_p0, NI align_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___reorder_u1700)(tySequence__NZB65egHQwAniMoFWKcFaw dest_p0);
static const struct {
  NI cap; NIM_CHAR data[26+1];
} TM__wGDfi9c1BEw7VBzRnDQgLpQ_2 = { 26 | NIM_STRLIT_FLAG, "recursive dependency: \'$1\'" };
static const NimStringV2 TM__wGDfi9c1BEw7VBzRnDQgLpQ_3 = {26, (NimStrPayload*)&TM__wGDfi9c1BEw7VBzRnDQgLpQ_2};
static const struct {
  NI cap; NIM_CHAR data[62+1];
} TM__wGDfi9c1BEw7VBzRnDQgLpQ_5 = { 62 | NIM_STRLIT_FLAG, "/home/runner/work/nightlies/nightlies/nim/compiler/reorder.nim" };
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__wGDfi9c1BEw7VBzRnDQgLpQ_6 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__wGDfi9c1BEw7VBzRnDQgLpQ_7 = {0, (NimStrPayload*)&TM__wGDfi9c1BEw7VBzRnDQgLpQ_6};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__wGDfi9c1BEw7VBzRnDQgLpQ_8 = { 6 | NIM_STRLIT_FLAG, "pragma" };
static const NimStringV2 TM__wGDfi9c1BEw7VBzRnDQgLpQ_9 = {6, (NimStrPayload*)&TM__wGDfi9c1BEw7VBzRnDQgLpQ_8};
N_LIB_PRIVATE TNimTypeV2 NTIv2__mjl9coa4es5lRGs5j7zUDHw_;
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__wGDfi9c1BEw7VBzRnDQgLpQ_11 = { 4 | NIM_STRLIT_FLAG, "push" };
static const NimStringV2 TM__wGDfi9c1BEw7VBzRnDQgLpQ_12 = {4, (NimStrPayload*)&TM__wGDfi9c1BEw7VBzRnDQgLpQ_11};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__wGDfi9c1BEw7VBzRnDQgLpQ_13 = { 3 | NIM_STRLIT_FLAG, "pop" };
static const NimStringV2 TM__wGDfi9c1BEw7VBzRnDQgLpQ_14 = {3, (NimStrPayload*)&TM__wGDfi9c1BEw7VBzRnDQgLpQ_13};
static const struct {
  NI cap; NIM_CHAR data[100+1];
} TM__wGDfi9c1BEw7VBzRnDQgLpQ_16 = { 100 | NIM_STRLIT_FLAG, "Circular dependency detected. `codeReordering` pragma may not be able to reorder some nodes properly" };
static const NimStringV2 TM__wGDfi9c1BEw7VBzRnDQgLpQ_17 = {100, (NimStrPayload*)&TM__wGDfi9c1BEw7VBzRnDQgLpQ_16};
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wGDfi9c1BEw7VBzRnDQgLpQ_4 = {{62, (NimStrPayload*)&TM__wGDfi9c1BEw7VBzRnDQgLpQ_5},
((NI)136),
((NI)22)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wGDfi9c1BEw7VBzRnDQgLpQ_18 = {{62, (NimStrPayload*)&TM__wGDfi9c1BEw7VBzRnDQgLpQ_5},
((NI)212),
((NI)15)}
;
extern NIM_BOOL nimInErrorMode__system_u4179;
static NIM_CONST NU32 TM__wGDfi9c1BEw7VBzRnDQgLpQ_10[1] = {964665600};
N_LIB_PRIVATE TNimTypeV2 NTIv2__mjl9coa4es5lRGs5j7zUDHw_ = {.destructor = (void*)rttiDestroy__reorder_u1885, .size = sizeof(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw), .align = (NI16) NIM_ALIGNOF(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw), .depth = 0, .display = TM__wGDfi9c1BEw7VBzRnDQgLpQ_10, .traceImpl = (void*)eqtrace___reorder_u71, .flags = 0};
static N_INLINE(void, nimSetMem__system_u2172)(void* a_p0, int v_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a_p0, v_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1) {
	nimSetMem__system_u2172(p_p0, ((int)0), size_p1);
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4179);
	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_: ;
}
static N_INLINE(NI, len__ast_u3190)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NI result;
	NI T1_;
	T1_ = (*n_p0)._kind_6.sons.len;
	result = T1_;
	return result;
}
static N_INLINE(NI, safeLen__ast_u3197)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	{
		if (!((*n_p0).kind >= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)0) && (*n_p0).kind <= ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)23))) goto LA3_;
		result = ((NI)0);
	}
	goto LA1_;
LA3_: ;
	{
		result = len__ast_u3190(n_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, splitSections__reorder_u564)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115), (*n_p0).info);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
		a_1 = NIM_NIL;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen__ast_u3197(n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_2 = ((NI)0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA4;
					i_1 = i_2;
					eqcopy___ast_u3255(&a_1, (*n_p0)._kind_6.sons.p->data[i_1]);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					{
						NIM_BOOL T7_;
						NI T9_;
						T7_ = (NIM_BOOL)0;
						T7_ = ((*a_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)98) || (*a_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)101));
						if (!(T7_)) goto LA8_;
						T9_ = (NI)0;
						T9_ = len__ast_u3190(a_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						T7_ = (((NI)1) < T9_);
LA8_: ;
						if (!T7_) goto LA10_;
						{
							tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* b_1;
							b_1 = NIM_NIL;
							b_1 = 0;
							{
								NI i_3;
								NI colontmp__2;
								NI i_4;
								i_3 = (NI)0;
								colontmp__2 = (NI)0;
								colontmp__2 = safeLen__ast_u3197(a_1);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								i_4 = ((NI)0);
								{
									while (1) {
										tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* s_1;
										if (!(i_4 < colontmp__2)) goto LA15;
										s_1 = NIM_NIL;
										i_3 = i_4;
										eqcopy___ast_u3255(&b_1, (*a_1)._kind_6.sons.p->data[i_3]);
										if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
										s_1 = newNode__ast_u4069((*a_1).kind);
										if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
										(*s_1).info = (*b_1).info;
										add__ast_u3215(s_1, b_1);
										if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
										add__ast_u3215(result, s_1);
										if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
										i_4 += ((NI)1);
										eqdestroy___ast_u3252(s_1);
										if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
									} LA15: ;
								}
							}
							eqdestroy___ast_u3252(b_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						}
					}
					goto LA5_;
LA10_: ;
					{
						add__ast_u3215(result, a_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					}
LA5_: ;
					i_2 += ((NI)1);
				} LA4: ;
			}
		}
		eqdestroy___ast_u3252(a_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasIncludes__reorder_u504)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
NIM_BOOL oldNimErrFin2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_FALSE;
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
		a_1 = NIM_NIL;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen__ast_u3197(n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
			i_2 = ((NI)0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA5;
					i_1 = i_2;
					eqcopy___ast_u3255(&a_1, (*n_p0)._kind_6.sons.p->data[i_1]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
					{
						if (!((*a_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)121))) goto LA8_;
						result = NIM_TRUE;
						eqdestroy___ast_u3252(a_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA8_: ;
					i_2 += ((NI)1);
				} LA5: ;
			}
		}
		{
			LA2_:;
		}
		{
			oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(a_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin2_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, includeModule__reorder_u512)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* s_p1, NI32 fileIdx_p2) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseFile__syntaxes_u235(fileIdx_p2, (*graph_p0).cache, (*graph_p0).config);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	addDep__modulegraphs_u14888(graph_p0, s_p1, fileIdx_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	addIncludeDep__modulegraphs_u14911(graph_p0, ((NI32) ((*s_p1).position)), fileIdx_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, expandIncludes__reorder_u517)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* module_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p2, NimStringV2 modulePath_p3, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* includedFiles_p4) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
NIM_BOOL oldNimErrFin31_;
NIM_BOOL oldNimErrFin7_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = hasIncludes__reorder_u504(n_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!!(T3_)) goto LA4_;
		eqcopy___ast_u3255(&result, n_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		goto BeforeRet_;
	}
LA4_: ;
	result = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115), (*n_p2).info);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
		a_1 = NIM_NIL;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen__ast_u3197(n_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
			i_2 = ((NI)0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA10;
					i_1 = i_2;
					eqcopy___ast_u3255(&a_1, (*n_p2)._kind_6.sons.p->data[i_1]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
					{
						if (!((*a_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)121))) goto LA13_;
						{
							NI i_3;
							NI colontmp__2;
							NI i_4;
							i_3 = (NI)0;
							colontmp__2 = (NI)0;
							colontmp__2 = len__ast_u3190(a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
							i_4 = ((NI)0);
							{
								while (1) {
									NI32 f_1;
									if (!(i_4 < colontmp__2)) goto LA17;
									i_3 = i_4;
									f_1 = checkModuleName__modulepaths_u22((*graph_p0).config, (*a_1)._kind_6.sons.p->data[i_3], NIM_TRUE);
									if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
									{
										if (!!((f_1 == ((NI32)-1)))) goto LA20_;
										{
											NIM_BOOL T24_;
											NimStringV2 colontmpD_;
											NimStringV2 colontmpD__2;
											T24_ = (NIM_BOOL)0;
											T24_ = containsOrIncl__astyaml_u223(includedFiles_p4, ((NI) (f_1)));
											if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
											if (!T24_) goto LA25_;
											colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
											colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
											colontmpD_ = toMsgFilename__msgs_u688((*graph_p0).config, f_1);
											if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
											colontmpD__2 = nsuFormatSingleElem(TM__wGDfi9c1BEw7VBzRnDQgLpQ_3, colontmpD_);
											if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
											liMessage__msgs_u1227((*graph_p0).config, (*a_1).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)17), colontmpD__2, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__wGDfi9c1BEw7VBzRnDQgLpQ_4, NIM_FALSE, NIM_FALSE);
											if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
											{
												LA27_:;
											}
											{
												eqdestroy___system_u2691(colontmpD__2);
												eqdestroy___system_u2691(colontmpD_);
											}
											if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
										}
										goto LA22_;
LA25_: ;
										{
											tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* nn_1;
											tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* nnn_1;
											nn_1 = NIM_NIL;
											nnn_1 = NIM_NIL;
											nn_1 = includeModule__reorder_u512(graph_p0, module_p1, f_1);
											if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
											nnn_1 = expandIncludes__reorder_u517(graph_p0, module_p1, nn_1, modulePath_p3, includedFiles_p4);
											if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
											excl__suggestsymdb_u161(includedFiles_p4, ((NI) (f_1)));
											if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
											{
												tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* b_1;
												b_1 = NIM_NIL;
												b_1 = 0;
												{
													NI i_5;
													NI colontmp__3;
													NI i_6;
													i_5 = (NI)0;
													colontmp__3 = (NI)0;
													colontmp__3 = safeLen__ast_u3197(nnn_1);
													if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
													i_6 = ((NI)0);
													{
														while (1) {
															if (!(i_6 < colontmp__3)) goto LA35;
															i_5 = i_6;
															eqcopy___ast_u3255(&b_1, (*nnn_1)._kind_6.sons.p->data[i_5]);
															if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
															add__ast_u3215(result, b_1);
															if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
															i_6 += ((NI)1);
														} LA35: ;
													}
												}
												eqdestroy___ast_u3252(b_1);
												if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
											}
											{
												LA31_:;
											}
											{
												oldNimErrFin31_ = *nimErr_; *nimErr_ = NIM_FALSE;
												eqdestroy___ast_u3252(nnn_1);
												if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
												eqdestroy___ast_u3252(nn_1);
												if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
												*nimErr_ = oldNimErrFin31_;
											}
											if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
										}
LA22_: ;
									}
LA20_: ;
									i_4 += ((NI)1);
								} LA17: ;
							}
						}
					}
					goto LA11_;
LA13_: ;
					{
						add__ast_u3215(result, a_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
					}
LA11_: ;
					i_2 += ((NI)1);
				} LA10: ;
			}
		}
		{
			LA7_:;
		}
		{
			oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(a_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin7_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, minuspercent___system_u805)(NI x_p0, NI y_p1) {
	NI result;
	result = ((NI) ((NU)((NU32)(((NU) (x_p0))) - (NU32)(((NU) (y_p1))))));
	return result;
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastDyn)(void* p_p0) {
	NIM_BOOL result;
	result = NIM_FALSE;
	{
		tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* cell_1;
		NI T5_;
		if (!!((p_p0 == NIM_NIL))) goto LA3_;
		T5_ = (NI)0;
		T5_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)8));
		cell_1 = ((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T5_));
		{
			if (!((NI)((*cell_1).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
			result = NIM_TRUE;
		}
		goto LA6_;
LA8_: ;
		{
			(*cell_1).rc = minuspercent___system_u805((*cell_1).rc, ((NI)16));
		}
LA6_: ;
		{
			if (!result) goto LA13_;
			{
				if (!(((NI)0) < (*cell_1).rootIdx)) goto LA17_;
				unregisterCycle__system_u3163(cell_1);
			}
LA17_: ;
		}
LA13_: ;
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___reorder_u1636)(tyTuple__bPZu3GhfjP9cHscH3h9axT6w* dest_p0) {
	eqdestroy___pureZcollectionsZintsets_u100((*dest_p0).Field0.data);
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastDyn((*dest_p0).Field0.head);
		if (!T3_) goto LA4_;
		eqdestroy___pureZcollectionsZintsets_u66((&(*(*dest_p0).Field0.head)));
		nimRawDispose((*dest_p0).Field0.head, ((NI)4));
	}
LA4_: ;
	eqdestroy___pureZcollectionsZintsets_u100((*dest_p0).Field1.data);
	{
		NIM_BOOL T8_;
		T8_ = (NIM_BOOL)0;
		T8_ = nimDecRefIsLastDyn((*dest_p0).Field1.head);
		if (!T8_) goto LA9_;
		eqdestroy___pureZcollectionsZintsets_u66((&(*(*dest_p0).Field1.head)));
		nimRawDispose((*dest_p0).Field1.head, ((NI)4));
	}
LA9_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___reorder_u1633)(tyTuple__bPZu3GhfjP9cHscH3h9axT6w* dest_p0) {
	(*dest_p0).Field0.elems = 0;
	(*dest_p0).Field0.counter = 0;
	(*dest_p0).Field0.max = 0;
	(*dest_p0).Field0.head = 0;
	(*dest_p0).Field0.data.len = 0; (*dest_p0).Field0.data.p = NIM_NIL;
	nimZeroMem((void*)(*dest_p0).Field0.a, sizeof(tyArray__k7D0lwfLmYccbQxUd49bbcQ));
	(*dest_p0).Field1.elems = 0;
	(*dest_p0).Field1.counter = 0;
	(*dest_p0).Field1.max = 0;
	(*dest_p0).Field1.head = 0;
	(*dest_p0).Field1.data.len = 0; (*dest_p0).Field1.data.p = NIM_NIL;
	nimZeroMem((void*)(*dest_p0).Field1.a, sizeof(tyArray__k7D0lwfLmYccbQxUd49bbcQ));
}
static N_INLINE(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*, getPIdent__ast_u2825)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_p0) {
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* result;
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = NIM_NIL;
	switch ((*a_p0).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
	{
		eqcopy___idents_u158(&result, (*(*a_p0)._kind_4.sym).name);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)2):
	{
		eqcopy___idents_u158(&result, (*a_p0)._kind_5.ident);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)57):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)56):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)165):
	{
		eqcopy___idents_u158(&result, (*(*(*a_p0)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	default:
	{
		result = ((tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*) NIM_NIL);
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, eqeq___idents_u366)(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* a_p0, tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* b_p1) {
	NIM_BOOL result;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (a_p0 == 0);
		if (T3_) goto LA4_;
		T3_ = (b_p1 == 0);
LA4_: ;
		if (!T3_) goto LA5_;
		result = (a_p0 == b_p1);
	}
	goto LA1_;
LA5_: ;
	{
		result = ((*a_p0).id == (*b_p1).id);
	}
LA1_: ;
	return result;
}
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest_p0, source_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2) {
	nimCopyMem(dest_p0, source_p1, size_p2);
}
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1) {
	{
		if (!(((NI)0) < src_p1.len)) goto LA3_;
		copyMem__system_u1742(((void*) ((&(*(*dest_p0).p).data[(*dest_p0).len]))), ((void*) ((&(*src_p1.p).data[((NI)0)]))), (src_p1.len));
		(*dest_p0).len += src_p1.len;
		(*(*dest_p0).p).data[(*dest_p0).len] = 0;
	}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*, accQuoted__reorder_u301)(tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1) {
	tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* result;
	NimStringV2 id_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	id_1.len = 0; id_1.p = NIM_NIL;
	id_1 = TM__wGDfi9c1BEw7VBzRnDQgLpQ_7;
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_u3190(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		i_2 = ((NI)0);
		{
			while (1) {
				tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* ident_1;
				if (!(i_2 < colontmp_)) goto LA3;
				ident_1 = NIM_NIL;
				i_1 = i_2;
				ident_1 = getPIdent__ast_u2825((*n_p1)._kind_6.sons.p->data[i_1]);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				{
					NIM_BOOL T6_;
					T6_ = (NIM_BOOL)0;
					T6_ = eqeq___idents_u366(ident_1, ((tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA*) NIM_NIL));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					if (!!(T6_)) goto LA7_;
					prepareAdd((&id_1), (*ident_1).s.len + 0);
appendString((&id_1), (*ident_1).s);
				}
LA7_: ;
				i_2 += ((NI)1);
				eqdestroy___idents_u155(ident_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA3: ;
		}
	}
	result = getIdent__idents_u206(cache_p0, id_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___system_u2691(id_1);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addDecl__reorder_u312)(tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* declares_p2) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	switch ((*n_p1).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)31):
	{
		addDecl__reorder_u312(cache_p0, (*n_p1)._kind_6.sons.p->data[((NI)1)], declares_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)43):
	{
		addDecl__reorder_u312(cache_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], declares_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)2):
	{
		incl__pureZcollectionsZintsets_u366(declares_p2, (*(*n_p1)._kind_5.ident).id);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
	{
		incl__pureZcollectionsZintsets_u366(declares_p2, (*(*(*n_p1)._kind_4.sym).name).id);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)53):
	{
		tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* a_1;
		a_1 = NIM_NIL;
		a_1 = accQuoted__reorder_u301(cache_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		incl__pureZcollectionsZintsets_u366(declares_p2, (*a_1).id);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(a_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)151):
	{
		addDecl__reorder_u312(cache_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], declares_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	default:
	{
	}
	break;
	}
	}BeforeRet_: ;
}
static N_INLINE(int, nimCmpMem)(void* a_p0, void* b_p1, NI size_p2) {
	int result;
	result = memcmp(a_p0, b_p1, ((size_t) (size_p2)));
	return result;
}
static N_INLINE(NIM_BOOL, equalMem__system_u1750)(void* a_p0, void* b_p1, NI size_p2) {
	NIM_BOOL result;
	int T1_;
	T1_ = (int)0;
	T1_ = nimCmpMem(a_p0, b_p1, size_p2);
	result = (T1_ == ((NI32)0));
	return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1) {
	NIM_BOOL result;
	NI alen_1;
	NI blen_1;
{	result = NIM_FALSE;
	alen_1 = a_p0.len;
	blen_1 = b_p1.len;
	{
		if (!(alen_1 == blen_1)) goto LA3_;
		{
			if (!(alen_1 == ((NI)0))) goto LA7_;
			result = NIM_TRUE;
			goto BeforeRet_;
		}
LA7_: ;
		result = equalMem__system_u1750(((void*) ((&a_p0.p->data[((NI)0)]))), ((void*) ((&b_p1.p->data[((NI)0)]))), (alen_1));
		goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, computeDeps__reorder_u365)(tyObject_IdentCachecolonObjectType___ieLwK4T49bbUIZTTVH9cycZA* cache_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* declares_p2, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* uses_p3, NIM_BOOL topLevel_p4) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	switch ((*n_p1).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)51) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)52):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)82):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)83):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)79) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)81):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)84):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)159):
	{
		{
			if (!topLevel_p4) goto LA4_;
			addDecl__reorder_u312(cache_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], declares_p2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA4_: ;
		{
			NI i_1;
			NI res_1;
			i_1 = (NI)0;
			res_1 = ((NI)1);
			{
				while (1) {
					if (!(res_1 <= ((NI)6))) goto LA8;
					i_1 = ((NI) (res_1));
					computeDeps__reorder_u365(cache_p0, (*n_p1)._kind_6.sons.p->data[i_1], declares_p2, uses_p3, NIM_FALSE);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					res_1 += ((NI)1);
				} LA8: ;
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)100):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)99):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)124):
	{
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
			a_1 = NIM_NIL;
			{
				NI i_2;
				NI colontmp_;
				NI i_3;
				i_2 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen__ast_u3197(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				i_3 = ((NI)0);
				{
					while (1) {
						if (!(i_3 < colontmp_)) goto LA13;
						i_2 = i_3;
						eqcopy___ast_u3255(&a_1, (*n_p1)._kind_6.sons.p->data[i_2]);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						{
							if (!((*a_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)35) || (*a_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)36))) goto LA16_;
							{
								NI j_1;
								NI colontmp__2;
								NI T19_;
								NI i_4;
								j_1 = (NI)0;
								colontmp__2 = (NI)0;
								T19_ = (NI)0;
								T19_ = len__ast_u3190(a_1);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								colontmp__2 = (NI)(T19_ - ((NI)2));
								i_4 = ((NI)0);
								{
									while (1) {
										if (!(i_4 < colontmp__2)) goto LA21;
										j_1 = i_4;
										{
											if (!topLevel_p4) goto LA24_;
											addDecl__reorder_u312(cache_p0, (*a_1)._kind_6.sons.p->data[j_1], declares_p2);
											if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
										}
LA24_: ;
										i_4 += ((NI)1);
									} LA21: ;
								}
							}
							{
								NI j_2;
								NI colontmp__3;
								NI colontmp__4;
								NI T27_;
								NI i_5;
								j_2 = (NI)0;
								colontmp__3 = (NI)0;
								colontmp__4 = (NI)0;
								T27_ = (NI)0;
								T27_ = len__ast_u3190(a_1);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								colontmp__3 = (NI)(T27_ - ((NI)2));
								colontmp__4 = len__ast_u3190(a_1);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								i_5 = colontmp__3;
								{
									while (1) {
										if (!(i_5 < colontmp__4)) goto LA29;
										j_2 = i_5;
										computeDeps__reorder_u365(cache_p0, (*a_1)._kind_6.sons.p->data[j_2], declares_p2, uses_p3, NIM_FALSE);
										if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
										i_5 += ((NI)1);
									} LA29: ;
								}
							}
						}
LA16_: ;
						i_3 += ((NI)1);
					} LA13: ;
				}
			}
			eqdestroy___ast_u3252(a_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)101):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)98):
	{
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_2;
			a_2 = NIM_NIL;
			{
				NI i_6;
				NI colontmp__5;
				NI i_7;
				i_6 = (NI)0;
				colontmp__5 = (NI)0;
				colontmp__5 = safeLen__ast_u3197(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				i_7 = ((NI)0);
				{
					while (1) {
						if (!(i_7 < colontmp__5)) goto LA34;
						i_6 = i_7;
						eqcopy___ast_u3255(&a_2, (*n_p1)._kind_6.sons.p->data[i_6]);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						{
							NI T37_;
							T37_ = (NI)0;
							T37_ = len__ast_u3190(a_2);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							if (!(((NI)3) <= T37_)) goto LA38_;
							{
								if (!topLevel_p4) goto LA42_;
								addDecl__reorder_u312(cache_p0, (*a_2)._kind_6.sons.p->data[((NI)0)], declares_p2);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							}
LA42_: ;
							{
								NI i_8;
								NI colontmp__6;
								NI i_9;
								i_8 = (NI)0;
								colontmp__6 = (NI)0;
								colontmp__6 = len__ast_u3190(a_2);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								i_9 = ((NI)1);
								{
									while (1) {
										if (!(i_9 < colontmp__6)) goto LA46;
										i_8 = i_9;
										{
											if (!((*(*a_2)._kind_6.sons.p->data[i_8]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)150))) goto LA49_;
											{
												tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* b_1;
												tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ** colontmp__7;
												b_1 = NIM_NIL;
												b_1 = 0;
												colontmp__7 = (tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ**)0;
												colontmp__7 = &(*a_2)._kind_6.sons.p->data[i_8];
												{
													NI i_10;
													NI colontmp__8;
													NI i_11;
													i_10 = (NI)0;
													colontmp__8 = (NI)0;
													colontmp__8 = safeLen__ast_u3197((*colontmp__7));
													if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
													i_11 = ((NI)0);
													{
														while (1) {
															if (!(i_11 < colontmp__8)) goto LA54;
															i_10 = i_11;
															eqcopy___ast_u3255(&b_1, (*(*colontmp__7))._kind_6.sons.p->data[i_10]);
															if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
															{
																if (!topLevel_p4) goto LA57_;
																addDecl__reorder_u312(cache_p0, b_1, declares_p2);
																if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
															}
LA57_: ;
															i_11 += ((NI)1);
														} LA54: ;
													}
												}
												eqdestroy___ast_u3252(b_1);
												if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
											}
										}
										goto LA47_;
LA49_: ;
										{
											computeDeps__reorder_u365(cache_p0, (*a_2)._kind_6.sons.p->data[i_8], declares_p2, uses_p3, NIM_FALSE);
											if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
										}
LA47_: ;
										i_9 += ((NI)1);
									} LA46: ;
								}
							}
						}
LA38_: ;
						i_7 += ((NI)1);
					} LA34: ;
				}
			}
			eqdestroy___ast_u3252(a_2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)35):
	{
		{
			NI i_12;
			NI colontmp__9;
			NI i_13;
			i_12 = (NI)0;
			colontmp__9 = (NI)0;
			colontmp__9 = len__ast_u3190(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_13 = ((NI)1);
			{
				while (1) {
					if (!(i_13 < colontmp__9)) goto LA63;
					i_12 = i_13;
					computeDeps__reorder_u365(cache_p0, (*n_p1)._kind_6.sons.p->data[i_12], declares_p2, uses_p3, NIM_FALSE);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					i_13 += ((NI)1);
				} LA63: ;
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)2):
	{
		incl__pureZcollectionsZintsets_u366(uses_p3, (*(*n_p1)._kind_5.ident).id);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)3):
	{
		incl__pureZcollectionsZintsets_u366(uses_p3, (*(*(*n_p1)._kind_4.sym).name).id);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)53):
	{
		tyObject_TIdent__LG4CHFyohryWo9bzZeyjDjA* colontmpD_;
		colontmpD_ = NIM_NIL;
		colontmpD_ = accQuoted__reorder_u301(cache_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		incl__pureZcollectionsZintsets_u366(uses_p3, (*colontmpD_).id);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___idents_u155(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)57):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)56):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)165):
	{
		incl__pureZcollectionsZintsets_u366(uses_p3, (*(*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_4.sym).name).id);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)126):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)93):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)86):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)88):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)113):
	{
		{
			NI i_14;
			NI colontmp__10;
			NI i_15;
			i_14 = (NI)0;
			colontmp__10 = (NI)0;
			colontmp__10 = len__ast_u3190(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_15 = ((NI)0);
			{
				while (1) {
					if (!(i_15 < colontmp__10)) goto LA71;
					i_14 = i_15;
					computeDeps__reorder_u365(cache_p0, (*n_p1)._kind_6.sons.p->data[i_14], declares_p2, uses_p3, topLevel_p4);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					i_15 += ((NI)1);
				} LA71: ;
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)90):
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_3;
		a_3 = NIM_NIL;
		a_3 = (*n_p1)._kind_6.sons.p->data[((NI)0)];
		{
			NIM_BOOL T75_;
			NIM_BOOL T76_;
			T75_ = (NIM_BOOL)0;
			T76_ = (NIM_BOOL)0;
			T76_ = ((*a_3).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)34));
			if (!(T76_)) goto LA77_;
			T76_ = ((*(*a_3)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)2));
LA77_: ;
			T75_ = T76_;
			if (!(T75_)) goto LA78_;
			T75_ = eqStrings((*(*(*a_3)._kind_6.sons.p->data[((NI)0)])._kind_5.ident).s, TM__wGDfi9c1BEw7VBzRnDQgLpQ_9);
LA78_: ;
			if (!T75_) goto LA79_;
			{
				if (!topLevel_p4) goto LA83_;
				addDecl__reorder_u312(cache_p0, (*a_3)._kind_6.sons.p->data[((NI)1)], declares_p2);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA83_: ;
			{
				NI i_16;
				NI colontmp__11;
				NI i_17;
				i_16 = (NI)0;
				colontmp__11 = (NI)0;
				colontmp__11 = safeLen__ast_u3197(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				i_17 = ((NI)1);
				{
					while (1) {
						if (!(i_17 < colontmp__11)) goto LA87;
						i_16 = i_17;
						computeDeps__reorder_u365(cache_p0, (*n_p1)._kind_6.sons.p->data[i_16], declares_p2, uses_p3, NIM_FALSE);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						i_17 += ((NI)1);
					} LA87: ;
				}
			}
		}
		goto LA73_;
LA79_: ;
		{
			{
				NI i_18;
				NI colontmp__12;
				NI i_19;
				i_18 = (NI)0;
				colontmp__12 = (NI)0;
				colontmp__12 = safeLen__ast_u3197(n_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				i_19 = ((NI)0);
				{
					while (1) {
						if (!(i_19 < colontmp__12)) goto LA91;
						i_18 = i_19;
						computeDeps__reorder_u365(cache_p0, (*n_p1)._kind_6.sons.p->data[i_18], declares_p2, uses_p3, NIM_FALSE);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						i_19 += ((NI)1);
					} LA91: ;
				}
			}
		}
LA73_: ;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)123):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)122):
	{
	}
	break;
	default:
	{
		{
			NI i_20;
			NI colontmp__13;
			NI i_21;
			i_20 = (NI)0;
			colontmp__13 = (NI)0;
			colontmp__13 = safeLen__ast_u3197(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_21 = ((NI)0);
			{
				while (1) {
					if (!(i_21 < colontmp__13)) goto LA96;
					i_20 = i_21;
					computeDeps__reorder_u365(cache_p0, (*n_p1)._kind_6.sons.p->data[i_20], declares_p2, uses_p3, NIM_FALSE);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					i_21 += ((NI)1);
				} LA96: ;
			}
		}
	}
	break;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*, newDepN__reorder_u27)(NI id_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* pnode_p1) {
	tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* result;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD_;
	tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = NIM_NIL;
	T1_ = (tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*) nimNewObjUninit(sizeof(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw), NIM_ALIGNOF(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw));
	(*T1_).id = id_p0;
	colontmpD_ = eqdup___ast_u3258(pnode_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).pnode = colontmpD_;
	(*T1_).idx = ((NI)-1);
	(*T1_).lowLink = ((NI)-1);
	(*T1_).onStack = NIM_FALSE;
	(*T1_).kids.len = 0; (*T1_).kids.p = (tySequence__EHM5DWw09bc16yo24mdZPsw_Content*) newSeqPayload(0, sizeof(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*), NIM_ALIGNOF(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*));
	(*T1_).hAQ = ((NI)-1);
	(*T1_).hIS = ((NI)-1);
	(*T1_).hB = ((NI)-1);
	(*T1_).hCmd = ((NI)-1);
	result = T1_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p_p0, TNimTypeV2* desc_p1) {
	NIM_BOOL result;
	result = NIM_FALSE;
	{
		tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* cell_1;
		NI T5_;
		if (!!((p_p0 == NIM_NIL))) goto LA3_;
		T5_ = (NI)0;
		T5_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)8));
		cell_1 = ((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T5_));
		{
			if (!((NI)((*cell_1).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
			result = NIM_TRUE;
		}
		goto LA6_;
LA8_: ;
		{
			(*cell_1).rc = minuspercent___system_u805((*cell_1).rc, ((NI)16));
		}
LA6_: ;
		rememberCycle__system_u3533(result, cell_1, desc_p1);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___reorder_u59)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* dest_p0) {
	eqdestroy___reorder_u38((*dest_p0).kids);
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastDyn((*dest_p0).pnode);
		if (!T3_) goto LA4_;
		eqdestroy___ast_u3270((&(*(*dest_p0).pnode)));
		nimRawDispose((*dest_p0).pnode, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__reorder_u1885)(void* dest_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqdestroy___reorder_u59((&(*((tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*) (dest_p0)))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___reorder_u71)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* dest_p0, void* env_p1) {
	eqtrace___reorder_u50((&(*dest_p0).kids), env_p1);
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___reorder_u141)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(dest_p0, ((TNimTypeV2*) ((&NTIv2__mjl9coa4es5lRGs5j7zUDHw_))));
		if (!T3_) goto LA4_;
		eqdestroy___reorder_u59((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)4));
	}
LA4_: ;
}
static N_INLINE(NI, pluspercent___system_u785)(NI x_p0, NI y_p1) {
	NI result;
	result = ((NI) ((NU)((NU32)(((NU) (x_p0))) + (NU32)(((NU) (y_p1))))));
	return result;
}
static N_INLINE(void, nimIncRefCyclic)(void* p_p0, NIM_BOOL cyclic_p1) {
	tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* h_1;
	NI T1_;
	T1_ = (NI)0;
	T1_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)8));
	h_1 = ((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T1_));
	(*h_1).rc = pluspercent___system_u785((*h_1).rc, ((NI)16));
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___reorder_u144)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** dest_p0, tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* src_p1, NIM_BOOL cyclic_p2) {
	tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmp_ = (*dest_p0);
	{
		if (!src_p1) goto LA3_;
		nimIncRefCyclic(src_p1, cyclic_p2);
	}
LA3_: ;
	(*dest_p0) = src_p1;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = nimDecRefIsLastCyclicStatic(colontmp_, ((TNimTypeV2*) ((&NTIv2__mjl9coa4es5lRGs5j7zUDHw_))));
		if (!T7_) goto LA8_;
		eqdestroy___reorder_u59((&(*colontmp_)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nimRawDispose(colontmp_, ((NI)4));
	}
LA8_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasBody__reorder_u1169)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	switch ((*n_p0).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)26):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27):
	{
		result = NIM_TRUE;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)51) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)52):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)79) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)84):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)159):
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__ast_u3190(n_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		result = ((*(*n_p0)._kind_6.sons.p->data[(NI)(T3_ - ((NI)1))]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115));
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)126):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)93):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)86):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)88):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)113):
	{
		result = NIM_FALSE;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
			a_1 = NIM_NIL;
			{
				NI i_1;
				NI colontmp_;
				NI i_2;
				i_1 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen__ast_u3197(n_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
				i_2 = ((NI)0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA9;
						i_1 = i_2;
						eqcopy___ast_u3255(&a_1, (*n_p0)._kind_6.sons.p->data[i_1]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						{
							NIM_BOOL T12_;
							T12_ = (NIM_BOOL)0;
							T12_ = hasBody__reorder_u1169(a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
							if (!T12_) goto LA13_;
							result = NIM_TRUE;
							eqdestroy___ast_u3252(a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							goto BeforeRet_;
						}
LA13_: ;
						i_2 += ((NI)1);
					} LA9: ;
				}
			}
			{
				LA6_:;
			}
			{
				oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin6_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	}
	break;
	default:
	{
		result = NIM_FALSE;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasBody__reorder_u1177)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* n_p0) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T5_;
		if (!((*n_p0).hB < ((NI)0))) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = hasBody__reorder_u1169((*n_p0).pnode);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*n_p0).hB = T5_;
	}
LA3_: ;
	result = (((*n_p0).hB) != 0);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasCommand__reorder_u1136)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
NIM_BOOL oldNimErrFin4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	switch ((*n_p0).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)26):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)27):
	{
		result = NIM_TRUE;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)126):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)93):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)86):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)88):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)113):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)100):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)101):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)99):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)35):
	{
		result = NIM_FALSE;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
			a_1 = NIM_NIL;
			{
				NI i_1;
				NI colontmp_;
				NI i_2;
				i_1 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen__ast_u3197(n_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
				i_2 = ((NI)0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA7;
						i_1 = i_2;
						eqcopy___ast_u3255(&a_1, (*n_p0)._kind_6.sons.p->data[i_1]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
						{
							NIM_BOOL T10_;
							T10_ = (NIM_BOOL)0;
							T10_ = hasCommand__reorder_u1136(a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
							if (!T10_) goto LA11_;
							result = NIM_TRUE;
							eqdestroy___ast_u3252(a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							goto BeforeRet_;
						}
LA11_: ;
						i_2 += ((NI)1);
					} LA7: ;
				}
			}
			{
				LA4_:;
			}
			{
				oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin4_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	}
	break;
	default:
	{
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasCommand__reorder_u1140)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* n_p0) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T5_;
		if (!((*n_p0).hCmd < ((NI)0))) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = hasCommand__reorder_u1136((*n_p0).pnode);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*n_p0).hCmd = T5_;
	}
LA3_: ;
	result = (((*n_p0).hCmd) != 0);
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimMarkCyclic)(void* p_p0) {
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___reorder_u138)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** dest_p0) {
	(*dest_p0) = 0;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasImportStmt__reorder_u1126)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
NIM_BOOL oldNimErrFin4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	switch ((*n_p0).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)116):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)120):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)117):
	{
		result = NIM_TRUE;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)126):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)93):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)86):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)88):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)113):
	{
		result = NIM_FALSE;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
			a_1 = NIM_NIL;
			{
				NI i_1;
				NI colontmp_;
				NI i_2;
				i_1 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen__ast_u3197(n_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
				i_2 = ((NI)0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA7;
						i_1 = i_2;
						eqcopy___ast_u3255(&a_1, (*n_p0)._kind_6.sons.p->data[i_1]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
						{
							NIM_BOOL T10_;
							T10_ = (NIM_BOOL)0;
							T10_ = hasImportStmt__reorder_u1126(a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
							if (!T10_) goto LA11_;
							result = NIM_TRUE;
							eqdestroy___ast_u3252(a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							goto BeforeRet_;
						}
LA11_: ;
						i_2 += ((NI)1);
					} LA7: ;
				}
			}
			{
				LA4_:;
			}
			{
				oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin4_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	}
	break;
	default:
	{
		result = NIM_FALSE;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasImportStmt__reorder_u1130)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* n_p0) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T5_;
		if (!((*n_p0).hIS < ((NI)0))) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = hasImportStmt__reorder_u1126((*n_p0).pnode);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*n_p0).hIS = T5_;
	}
LA3_: ;
	result = (((*n_p0).hIS) != 0);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuoted__reorder_u1146)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_FALSE;
	{
		if (!((*n_p0).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)53))) goto LA3_;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
LA3_: ;
	{
		tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
		a_1 = NIM_NIL;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen__ast_u3197(n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
			i_2 = ((NI)0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA9;
					i_1 = i_2;
					eqcopy___ast_u3255(&a_1, (*n_p0)._kind_6.sons.p->data[i_1]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					{
						NIM_BOOL T12_;
						T12_ = (NIM_BOOL)0;
						T12_ = hasAccQuoted__reorder_u1146(a_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
						if (!T12_) goto LA13_;
						result = NIM_TRUE;
						eqdestroy___ast_u3252(a_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA13_: ;
					i_2 += ((NI)1);
				} LA9: ;
			}
		}
		{
			LA6_:;
		}
		{
			oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___ast_u3252(a_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin6_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuotedDef__reorder_u1159)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0) {
	NIM_BOOL result;
NIM_BOOL oldNimErrFin4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	switch ((*n_p0).kind) {
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)51) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)52):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)79) ... ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)84):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)159):
	{
		result = hasAccQuoted__reorder_u1146((*n_p0)._kind_6.sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)126):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)93):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)86):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)88):
	case ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)113):
	{
		result = NIM_FALSE;
		{
			tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
			a_1 = NIM_NIL;
			{
				NI i_1;
				NI colontmp_;
				NI i_2;
				i_1 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen__ast_u3197(n_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
				i_2 = ((NI)0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA7;
						i_1 = i_2;
						eqcopy___ast_u3255(&a_1, (*n_p0)._kind_6.sons.p->data[i_1]);
						if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
						{
							NIM_BOOL T10_;
							T10_ = (NIM_BOOL)0;
							T10_ = hasAccQuotedDef__reorder_u1159(a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
							if (!T10_) goto LA11_;
							result = NIM_TRUE;
							eqdestroy___ast_u3252(a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							goto BeforeRet_;
						}
LA11_: ;
						i_2 += ((NI)1);
					} LA7: ;
				}
			}
			{
				LA4_:;
			}
			{
				oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___ast_u3252(a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin4_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	}
	break;
	default:
	{
		result = NIM_FALSE;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuotedDef__reorder_u1163)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* n_p0) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T5_;
		if (!((*n_p0).hAQ < ((NI)0))) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = hasAccQuotedDef__reorder_u1159((*n_p0).pnode);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*n_p0).hAQ = T5_;
	}
LA3_: ;
	result = (((*n_p0).hAQ) != 0);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, intersects__reorder_u1183)(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s1_p0, tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* s2_p1) {
	NIM_BOOL result;
NIM_BOOL oldNimErrFin15_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_FALSE;
	{
		NI a_1;
		a_1 = (NI)0;
		{
			if (!((*s1_p0).elems <= ((NI)34))) goto LA4_;
			{
				NI i_1;
				NI i_2;
				i_1 = (NI)0;
				i_2 = ((NI)0);
				{
					while (1) {
						if (!(i_2 < (*s1_p0).elems)) goto LA8;
						i_1 = i_2;
						a_1 = (*s1_p0).a[(i_1)- 0];
						{
							NIM_BOOL T11_;
							T11_ = (NIM_BOOL)0;
							T11_ = contains__astalgo_u2846(s2_p1, a_1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							if (!T11_) goto LA12_;
							result = NIM_TRUE;
							goto BeforeRet_;
						}
LA12_: ;
						i_2 += ((NI)1);
					} LA8: ;
				}
			}
		}
		goto LA2_;
LA4_: ;
		{
			tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* r_1;
			r_1 = NIM_NIL;
			eqcopy___pureZcollectionsZintsets_u51(&r_1, (*s1_p0).head);
			if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
			{
				while (1) {
					NI i_3;
					if (!!((r_1 == ((tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA*) NIM_NIL)))) goto LA17;
					i_3 = ((NI)0);
					{
						while (1) {
							NU w_1;
							NI j_1;
							if (!(i_3 <= ((NI)15))) goto LA19;
							w_1 = (*r_1).bits[(i_3)- 0];
							j_1 = ((NI)0);
							{
								while (1) {
									if (!!((w_1 == ((NU)0)))) goto LA21;
									{
										NI T26_;
										if (!!(((NU)(w_1 & ((NU)1)) == ((NU)0)))) goto LA24_;
										T26_ = (NI)0;
										T26_ = pluspercent___system_u785((NI)((NU32)(i_3) << (NU32)(((NI)5) & (32 - 1))), j_1);
										a_1 = (NI)((NI)((NU32)((*r_1).key) << (NU32)(((NI)9) & (32 - 1))) | T26_);
										{
											NIM_BOOL T29_;
											T29_ = (NIM_BOOL)0;
											T29_ = contains__astalgo_u2846(s2_p1, a_1);
											if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
											if (!T29_) goto LA30_;
											result = NIM_TRUE;
											eqdestroy___pureZcollectionsZintsets_u48(r_1);
											if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
											goto BeforeRet_;
										}
LA30_: ;
									}
LA24_: ;
									j_1 += ((NI)1);
									w_1 = (NU)((NU32)(w_1) >> (NU32)(((NI)1) & (32 - 1)));
								} LA21: ;
							}
							i_3 += ((NI)1);
						} LA19: ;
					}
					eqcopy___pureZcollectionsZintsets_u51(&r_1, (*r_1).next);
					if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
				} LA17: ;
			}
			{
				LA15_:;
			}
			{
				oldNimErrFin15_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___pureZcollectionsZintsets_u48(r_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin15_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA2_: ;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasPushOrPopPragma__reorder_u1203)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* n_p0) {
	NIM_BOOL result;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* a_1;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
	NIM_BOOL T5_;
	a_1 = NIM_NIL;
	a_1 = (*n_p0).pnode;
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T2_ = ((*a_1).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)90));
	if (!(T2_)) goto LA3_;
	T2_ = ((*(*a_1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)2));
LA3_: ;
	T1_ = T2_;
	if (!(T1_)) goto LA4_;
	T5_ = (NIM_BOOL)0;
	T5_ = eqStrings((*(*(*a_1)._kind_6.sons.p->data[((NI)0)])._kind_5.ident).s, TM__wGDfi9c1BEw7VBzRnDQgLpQ_12);
	if (T5_) goto LA6_;
	T5_ = eqStrings((*(*(*a_1)._kind_6.sons.p->data[((NI)0)])._kind_5.ident).s, TM__wGDfi9c1BEw7VBzRnDQgLpQ_14);
LA6_: ;
	T1_ = T5_;
LA4_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*, eqdup___reorder_u148)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* src_p0, NIM_BOOL cyclic_p1) {
	tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* result;
	tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* colontmp_;
	result = NIM_NIL;
	colontmp_ = result;
	result = src_p0;
	{
		if (!src_p0) goto LA3_;
		nimIncRefCyclic(src_p0, cyclic_p1);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__EHM5DWw09bc16yo24mdZPsw, buildGraph__reorder_u1215)(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p0, tySequence__NZB65egHQwAniMoFWKcFaw deps_p1) {
	tySequence__EHM5DWw09bc16yo24mdZPsw result;
	NI T1_;
NIM_BOOL oldNimErrFin17_;
NIM_BOOL oldNimErrFin11_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	T1_ = deps_p1.len;
	result.len = 0; result.p = (tySequence__EHM5DWw09bc16yo24mdZPsw_Content*) newSeqPayloadUninit((T1_), sizeof(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*), NIM_ALIGNOF(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*));
	{
		NI i_1;
		NI colontmp_;
		NI T3_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		T3_ = deps_p1.len;
		colontmp_ = T3_;
		i_2 = ((NI)0);
		{
			while (1) {
				tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* T6_;
				if (!(i_2 < colontmp_)) goto LA5;
				i_1 = i_2;
				T6_ = NIM_NIL;
				T6_ = newDepN__reorder_u27(i_1, (*n_p0)._kind_6.sons.p->data[i_1]);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___reorder_u141(T6_); goto BeforeRet_;}
				add__reorder_u1244((&result), T6_);
				i_2 += ((NI)1);
			} LA5: ;
		}
	}
	{
		NI i_3;
		NI colontmp__2;
		NI T8_;
		NI i_4;
		i_3 = (NI)0;
		colontmp__2 = (NI)0;
		T8_ = deps_p1.len;
		colontmp__2 = T8_;
		i_4 = ((NI)0);
		{
			while (1) {
				tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* ni_1;
				tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA uses_1;
				NIM_BOOL niHasBody_1;
				NIM_BOOL niHasCmd_1;
				if (!(i_4 < colontmp__2)) goto LA10;
				ni_1 = NIM_NIL;
				nimZeroMem((void*)(&uses_1), sizeof(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA));
				i_3 = i_4;
				eqcopy___reorder_u144(&ni_1, result.p->data[i_3], NIM_FALSE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
				eqcopy___pureZcollectionsZintsets_u250((&uses_1), (&deps_p1.p->data[i_3].Field1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
				niHasBody_1 = hasBody__reorder_u1177(ni_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
				niHasCmd_1 = hasCommand__reorder_u1140(ni_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
				{
					NI j_1;
					NI colontmp__3;
					NI T13_;
					NI i_5;
					j_1 = (NI)0;
					colontmp__3 = (NI)0;
					T13_ = deps_p1.len;
					colontmp__3 = T13_;
					i_5 = ((NI)0);
					{
						while (1) {
							if (!(i_5 < colontmp__3)) goto LA15;
							j_1 = i_5;
							{
								tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* nj_1;
								tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA declares_1;
								nj_1 = NIM_NIL;
								nimZeroMem((void*)(&declares_1), sizeof(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA));
								{
									if (!(i_3 == j_1)) goto LA20_;
									eqdestroy___pureZcollectionsZintsets_u230((&declares_1));
									if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
									eqdestroy___reorder_u141(nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
									goto LA16;
								}
LA20_: ;
								eqcopy___reorder_u144(&nj_1, result.p->data[j_1], NIM_FALSE);
								if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
								eqcopy___pureZcollectionsZintsets_u250((&declares_1), (&deps_p1.p->data[j_1].Field0));
								if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
								{
									NIM_BOOL T24_;
									NIM_BOOL T25_;
									tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* blitTmp_1;
									T24_ = (NIM_BOOL)0;
									T25_ = (NIM_BOOL)0;
									T25_ = (j_1 < i_3);
									if (!(T25_)) goto LA26_;
									T25_ = hasCommand__reorder_u1140(nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
LA26_: ;
									T24_ = T25_;
									if (!(T24_)) goto LA27_;
									T24_ = niHasCmd_1;
LA27_: ;
									if (!T24_) goto LA28_;
									blitTmp_1 = nj_1;
									nimMarkCyclic(nj_1);
									eqwasMoved___reorder_u138(&nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
									add__reorder_u1244((&(*ni_1).kids), blitTmp_1);
								}
								goto LA22_;
LA28_: ;
								{
									NIM_BOOL T31_;
									tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* blitTmp_2;
									T31_ = (NIM_BOOL)0;
									T31_ = (j_1 < i_3);
									if (!(T31_)) goto LA32_;
									T31_ = hasImportStmt__reorder_u1130(nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
LA32_: ;
									if (!T31_) goto LA33_;
									blitTmp_2 = nj_1;
									nimMarkCyclic(nj_1);
									eqwasMoved___reorder_u138(&nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
									add__reorder_u1244((&(*ni_1).kids), blitTmp_2);
								}
								goto LA22_;
LA33_: ;
								{
									NIM_BOOL T36_;
									NIM_BOOL T37_;
									tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* blitTmp_3;
									T36_ = (NIM_BOOL)0;
									T37_ = (NIM_BOOL)0;
									T37_ = (j_1 < i_3);
									if (!(T37_)) goto LA38_;
									T37_ = niHasBody_1;
LA38_: ;
									T36_ = T37_;
									if (!(T36_)) goto LA39_;
									T36_ = hasAccQuotedDef__reorder_u1163(nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
LA39_: ;
									if (!T36_) goto LA40_;
									blitTmp_3 = nj_1;
									nimMarkCyclic(nj_1);
									eqwasMoved___reorder_u138(&nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
									add__reorder_u1244((&(*ni_1).kids), blitTmp_3);
								}
								goto LA22_;
LA40_: ;
								{
									NIM_BOOL T43_;
									NIM_BOOL T44_;
									NIM_BOOL T45_;
									NIM_BOOL T48_;
									tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* blitTmp_4;
									T43_ = (NIM_BOOL)0;
									T44_ = (NIM_BOOL)0;
									T45_ = (NIM_BOOL)0;
									T45_ = (j_1 < i_3);
									if (!(T45_)) goto LA46_;
									T45_ = niHasBody_1;
LA46_: ;
									T44_ = T45_;
									if (!(T44_)) goto LA47_;
									T48_ = (NIM_BOOL)0;
									T48_ = hasBody__reorder_u1177(nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
									T44_ = !(T48_);
LA47_: ;
									T43_ = T44_;
									if (!(T43_)) goto LA49_;
									T43_ = intersects__reorder_u1183((&deps_p1.p->data[i_3].Field0), (&declares_1));
									if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
LA49_: ;
									if (!T43_) goto LA50_;
									blitTmp_4 = nj_1;
									nimMarkCyclic(nj_1);
									eqwasMoved___reorder_u138(&nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
									add__reorder_u1244((&(*ni_1).kids), blitTmp_4);
								}
								goto LA22_;
LA50_: ;
								{
									NIM_BOOL T53_;
									T53_ = (NIM_BOOL)0;
									T53_ = hasPushOrPopPragma__reorder_u1203(nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
									if (!T53_) goto LA54_;
									{
										tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* blitTmp_5;
										if (!(j_1 < i_3)) goto LA58_;
										blitTmp_5 = nj_1;
										nimMarkCyclic(nj_1);
										eqwasMoved___reorder_u138(&nj_1);
										if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
										add__reorder_u1244((&(*ni_1).kids), blitTmp_5);
									}
									goto LA56_;
LA58_: ;
									{
										tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* colontmpD_;
										colontmpD_ = eqdup___reorder_u148(ni_1, NIM_TRUE);
										if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
										add__reorder_u1244((&(*nj_1).kids), colontmpD_);
									}
LA56_: ;
								}
								goto LA22_;
LA54_: ;
								{
									{
										NI d_1;
										d_1 = (NI)0;
										{
											if (!(declares_1.elems <= ((NI)34))) goto LA65_;
											{
												NI i_6;
												NI i_7;
												i_6 = (NI)0;
												i_7 = ((NI)0);
												{
													while (1) {
														if (!(i_7 < declares_1.elems)) goto LA69;
														i_6 = i_7;
														d_1 = declares_1.a[(i_6)- 0];
														{
															NIM_BOOL T72_;
															tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* colontmpD__2;
															T72_ = (NIM_BOOL)0;
															T72_ = contains__astalgo_u2846((&uses_1), d_1);
															if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
															if (!T72_) goto LA73_;
															colontmpD__2 = eqdup___reorder_u148(nj_1, NIM_TRUE);
															if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
															add__reorder_u1244((&(*ni_1).kids), colontmpD__2);
														}
LA73_: ;
														i_7 += ((NI)1);
													} LA69: ;
												}
											}
										}
										goto LA63_;
LA65_: ;
										{
											tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA* r_1;
											r_1 = NIM_NIL;
											r_1 = declares_1.head;
											eqwasMoved___pureZcollectionsZintsets_u45(&declares_1.head);
											if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
											{
												while (1) {
													NI i_8;
													if (!!((r_1 == ((tyObject_TrunkcolonObjectType___lmbdIZwAo9agPlTE1wBREkA*) NIM_NIL)))) goto LA77;
													i_8 = ((NI)0);
													{
														while (1) {
															NU w_1;
															NI j_2;
															if (!(i_8 <= ((NI)15))) goto LA79;
															w_1 = (*r_1).bits[(i_8)- 0];
															j_2 = ((NI)0);
															{
																while (1) {
																	if (!!((w_1 == ((NU)0)))) goto LA81;
																	{
																		NI T86_;
																		if (!!(((NU)(w_1 & ((NU)1)) == ((NU)0)))) goto LA84_;
																		T86_ = (NI)0;
																		T86_ = pluspercent___system_u785((NI)((NU32)(i_8) << (NU32)(((NI)5) & (32 - 1))), j_2);
																		d_1 = (NI)((NI)((NU32)((*r_1).key) << (NU32)(((NI)9) & (32 - 1))) | T86_);
																		{
																			NIM_BOOL T89_;
																			tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* colontmpD__3;
																			T89_ = (NIM_BOOL)0;
																			T89_ = contains__astalgo_u2846((&uses_1), d_1);
																			if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
																			if (!T89_) goto LA90_;
																			colontmpD__3 = eqdup___reorder_u148(nj_1, NIM_TRUE);
																			if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
																			add__reorder_u1244((&(*ni_1).kids), colontmpD__3);
																		}
LA90_: ;
																	}
LA84_: ;
																	j_2 += ((NI)1);
																	w_1 = (NU)((NU32)(w_1) >> (NU32)(((NI)1) & (32 - 1)));
																} LA81: ;
															}
															i_8 += ((NI)1);
														} LA79: ;
													}
													eqcopy___pureZcollectionsZintsets_u51(&r_1, (*r_1).next);
													if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
												} LA77: ;
											}
											eqdestroy___pureZcollectionsZintsets_u48(r_1);
											if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
										}
LA63_: ;
									}
								}
LA22_: ;
								{
									LA17_:;
								}
								{
									oldNimErrFin17_ = *nimErr_; *nimErr_ = NIM_FALSE;
									eqdestroy___pureZcollectionsZintsets_u230((&declares_1));
									if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
									eqdestroy___reorder_u141(nj_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
									*nimErr_ = oldNimErrFin17_;
								}
								if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
							} LA16: ;
							i_5 += ((NI)1);
						} LA15: ;
					}
				}
				i_4 += ((NI)1);
				{
					LA11_:;
				}
				{
					oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___pureZcollectionsZintsets_u230((&uses_1));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___reorder_u141(ni_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin11_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA10: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*, pop__reorder_u1385)(tySequence__EHM5DWw09bc16yo24mdZPsw* s_p0) {
	tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* result;
	NI L_1;
	NI T1_;
	T1_ = (*s_p0).len;
	L_1 = (NI)(T1_ - ((NI)1));
	result = (*s_p0).p->data[L_1];
	eqwasMoved___reorder_u138((&(*s_p0).p->data[L_1]));
	shrink__reorder_u104(s_p0, (L_1));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, strongConnect__reorder_u1330)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** v_p0, NI* idx_p1, tySequence__EHM5DWw09bc16yo24mdZPsw* s_p2, tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA* res_p3) {
	tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* colontmpD_;
NIM_BOOL oldNimErrFin19_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	(*(*v_p0)).idx = (*idx_p1);
	(*(*v_p0)).lowLink = (*idx_p1);
	(*idx_p1) += ((NI)1);
	colontmpD_ = eqdup___reorder_u148((*v_p0), NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__reorder_u1244((&(*s_p2)), colontmpD_);
	(*(*v_p0)).onStack = NIM_TRUE;
	{
		tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** w_1;
		NI i_1;
		NI L_1;
		NI T2_;
		w_1 = (tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw**)0;
		i_1 = ((NI)0);
		T2_ = (*(*v_p0)).kids.len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				w_1 = &(*(*v_p0)).kids.p->data[i_1];
				{
					if (!((*(*w_1)).idx < ((NI)0))) goto LA7_;
					strongConnect__reorder_u1330(w_1, idx_p1, s_p2, res_p3);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					(*(*v_p0)).lowLink = (((*(*v_p0)).lowLink <= (*(*w_1)).lowLink) ? (*(*v_p0)).lowLink : (*(*w_1)).lowLink);
				}
				goto LA5_;
LA7_: ;
				{
					if (!(*(*w_1)).onStack) goto LA10_;
					(*(*v_p0)).lowLink = (((*(*v_p0)).lowLink <= (*(*w_1)).idx) ? (*(*v_p0)).lowLink : (*(*w_1)).idx);
				}
				goto LA5_;
LA10_: ;
LA5_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	{
		tySequence__EHM5DWw09bc16yo24mdZPsw comp_1;
		tySequence__EHM5DWw09bc16yo24mdZPsw blitTmp_1;
		if (!((*(*v_p0)).lowLink == (*(*v_p0)).idx)) goto LA14_;
		comp_1.len = 0; comp_1.p = NIM_NIL;
		comp_1 = newSeq__reorder_u714(((NI)0));
		{
			while (1) {
				tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* w_2;
				tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* colontmpD__2;
				w_2 = NIM_NIL;
				w_2 = pop__reorder_u1385(s_p2);
				(*w_2).onStack = NIM_FALSE;
				colontmpD__2 = eqdup___reorder_u148(w_2, NIM_TRUE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
				add__reorder_u1244((&comp_1), colontmpD__2);
				{
					if (!((*w_2).id == (*(*v_p0)).id)) goto LA22_;
					eqdestroy___reorder_u141(w_2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
					goto LA17;
				}
LA22_: ;
				{
					LA19_:;
				}
				{
					oldNimErrFin19_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___reorder_u141(w_2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
					*nimErr_ = oldNimErrFin19_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			}
		} LA17: ;
		blitTmp_1 = comp_1;
		add__reorder_u1405((&(*res_p3)), blitTmp_1);
		{
			LA16_:;
		}
		{
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA14_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA, getStrongComponents__reorder_u1463)(tySequence__EHM5DWw09bc16yo24mdZPsw* g_p0) {
	tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA result;
	tySequence__EHM5DWw09bc16yo24mdZPsw s_1;
	NI idx_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	s_1.len = 0; s_1.p = NIM_NIL;
	result.len = 0; result.p = (tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA_Content*) newSeqPayload(0, sizeof(tySequence__EHM5DWw09bc16yo24mdZPsw), NIM_ALIGNOF(tySequence__EHM5DWw09bc16yo24mdZPsw));
	s_1.len = 0; s_1.p = (tySequence__EHM5DWw09bc16yo24mdZPsw_Content*) newSeqPayload(0, sizeof(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*), NIM_ALIGNOF(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw*));
	idx_1 = ((NI)0);
	{
		tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** v_1;
		NI i_1;
		NI L_1;
		NI T2_;
		v_1 = (tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw**)0;
		i_1 = ((NI)0);
		T2_ = (*g_p0).len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				v_1 = &(*g_p0).p->data[i_1];
				{
					if (!((*(*v_1)).idx < ((NI)0))) goto LA7_;
					strongConnect__reorder_u1330(v_1, (&idx_1), (&s_1), (&result));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
LA7_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	eqdestroy___reorder_u38(s_1);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___reorder_u152)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** dest_p0, tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* src_p1) {
	tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmp_ = (*dest_p0);
	(*dest_p0) = src_p1;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(colontmp_, ((TNimTypeV2*) ((&NTIv2__mjl9coa4es5lRGs5j7zUDHw_))));
		if (!T3_) goto LA4_;
		eqdestroy___reorder_u59((&(*colontmp_)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nimRawDispose(colontmp_, ((NI)4));
	}
LA4_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, colonanonymous___reorder_u669)(tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* xX60gensym53__p0, tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* yX60gensym53__p1) {
	NI result;
	tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw* it_1;
	NI aX60gensym53__1;
	NI bX60gensym53__1;
	it_1 = NIM_NIL;
	it_1 = xX60gensym53__p0;
	aX60gensym53__1 = (*it_1).id;
	it_1 = yX60gensym53__p1;
	bX60gensym53__1 = (*it_1).id;
	result = cmp__system_u8242(aX60gensym53__1, bX60gensym53__1);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, haveSameKind__reorder_u581)(tySequence__EHM5DWw09bc16yo24mdZPsw dns_p0) {
	NIM_BOOL result;
	tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_1;
{	result = NIM_TRUE;
	kind_1 = (*(*dns_p0.p->data[((NI)0)]).pnode).kind;
	{
		tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** dn_1;
		NI i_1;
		NI L_1;
		NI T2_;
		dn_1 = (tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw**)0;
		i_1 = ((NI)0);
		T2_ = dns_p0.len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				dn_1 = &dns_p0.p->data[i_1];
				{
					if (!!(((*(*(*dn_1)).pnode).kind == kind_1))) goto LA7_;
					result = NIM_FALSE;
					goto BeforeRet_;
				}
LA7_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, mergeSections__reorder_u628)(tyObject_ConfigRefcolonObjectType___S9atckdgEHYT7qfQK9cvzJOg* conf_p0, tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA comps_p1, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* res_p2) {
NIM_BOOL oldNimErrFin11_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		tySequence__EHM5DWw09bc16yo24mdZPsw* c_1;
		NI i_1;
		NI L_1;
		NI T2_;
		c_1 = (tySequence__EHM5DWw09bc16yo24mdZPsw*)0;
		i_1 = ((NI)0);
		T2_ = comps_p1.len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				c_1 = (&comps_p1.p->data[i_1]);
				{
					NI T7_;
					T7_ = (*c_1).len;
					if (!(T7_ == ((NI)1))) goto LA8_;
					add__ast_u3215(res_p2, (*(*c_1).p->data[((NI)0)]).pnode);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
				goto LA5_;
LA8_: ;
				{
					tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* fstn_1;
					tySequence__EHM5DWw09bc16yo24mdZPsw cs_1;
					tySequence__EHM5DWw09bc16yo24mdZPsw resultX60gensym53__1;
					tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw kind_1;
					tyProc__TiiGZQ4go3yiVxZnG2EF5A T12_;
					fstn_1 = NIM_NIL;
					cs_1.len = 0; cs_1.p = NIM_NIL;
					resultX60gensym53__1.len = 0; resultX60gensym53__1.p = NIM_NIL;
					eqcopy___ast_u3255(&fstn_1, (*(*c_1).p->data[((NI)0)]).pnode);
					if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
					kind_1 = (*fstn_1).kind;
					nimZeroMem((void*)(&T12_), sizeof(tyProc__TiiGZQ4go3yiVxZnG2EF5A));
					T12_.ClP_0 = ((TM__wGDfi9c1BEw7VBzRnDQgLpQ_15) (colonanonymous___reorder_u669)); T12_.ClE_0 = NIM_NIL;
					resultX60gensym53__1 = sorted__reorder_u685((((*c_1)).p) ? ((*c_1).p->data) : NIM_NIL, (*c_1).len, T12_, ((tyEnum_SortOrder__wt7l6Gbd8C9c61b6I621QeA)1));
					if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
					cs_1 = resultX60gensym53__1;
					eqwasMoved___reorder_u35((&resultX60gensym53__1));
					{
						NIM_BOOL T15_;
						tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* sn_1;
						T15_ = (NIM_BOOL)0;
						T15_ = (kind_1 == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)98) || kind_1 == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)101));
						if (!(T15_)) goto LA16_;
						T15_ = haveSameKind__reorder_u581(cs_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
LA16_: ;
						if (!T15_) goto LA17_;
						sn_1 = NIM_NIL;
						sn_1 = newNode__ast_u4069(kind_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
						{
							tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw** dn_1;
							NI i_2;
							NI L_2;
							NI T20_;
							dn_1 = (tyObject_DepNcolonObjectType___mjl9coa4es5lRGs5j7zUDHw**)0;
							i_2 = ((NI)0);
							T20_ = cs_1.len;
							L_2 = T20_;
							{
								while (1) {
									if (!(i_2 < L_2)) goto LA22;
									dn_1 = &cs_1.p->data[i_2];
									add__ast_u3215(sn_1, (*(*(*dn_1)).pnode)._kind_6.sons.p->data[((NI)0)]);
									if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
									i_2 += ((NI)1);
								} LA22: ;
							}
						}
						add__ast_u3215(res_p2, sn_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
						eqdestroy___ast_u3252(sn_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
					}
					goto LA13_;
LA17_: ;
					{
						NimStringV2 wmsg_1;
						NI i_3;
						wmsg_1.len = 0; wmsg_1.p = NIM_NIL;
						wmsg_1 = TM__wGDfi9c1BEw7VBzRnDQgLpQ_17;
						liMessage__msgs_u1227(conf_p0, (*(*cs_1.p->data[((NI)0)]).pnode).info, ((tyEnum_TMsgKind__Ug4VJQkHi8g218Fa9bQrePA)85), wmsg_1, ((tyEnum_TErrorHandling__9aJ2MrE0UrBy3xCw3BT762w)0), TM__wGDfi9c1BEw7VBzRnDQgLpQ_18, NIM_FALSE, NIM_FALSE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
						i_3 = ((NI)0);
						{
							while (1) {
								NI T27_;
								T27_ = cs_1.len;
								if (!(i_3 < T27_)) goto LA26;
								{
									tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* sn_2;
									tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw ckind_1;
									if (!((*(*cs_1.p->data[i_3]).pnode).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)98) || (*(*cs_1.p->data[i_3]).pnode).kind == ((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)101))) goto LA30_;
									sn_2 = NIM_NIL;
									ckind_1 = (*(*cs_1.p->data[i_3]).pnode).kind;
									sn_2 = newNode__ast_u4069(ckind_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
									add__ast_u3215(sn_2, (*(*cs_1.p->data[i_3]).pnode)._kind_6.sons.p->data[((NI)0)]);
									if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
									i_3 += ((NI)1);
									{
										while (1) {
											NIM_BOOL T34_;
											NI T35_;
											T34_ = (NIM_BOOL)0;
											T35_ = cs_1.len;
											T34_ = (i_3 < T35_);
											if (!(T34_)) goto LA36_;
											T34_ = ((*(*cs_1.p->data[i_3]).pnode).kind == ckind_1);
LA36_: ;
											if (!T34_) goto LA33;
											add__ast_u3215(sn_2, (*(*cs_1.p->data[i_3]).pnode)._kind_6.sons.p->data[((NI)0)]);
											if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
											i_3 += ((NI)1);
										} LA33: ;
									}
									add__ast_u3215(res_p2, sn_2);
									if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
									eqdestroy___ast_u3252(sn_2);
									if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
								}
								goto LA28_;
LA30_: ;
								{
									add__ast_u3215(res_p2, (*cs_1.p->data[i_3]).pnode);
									if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
									i_3 += ((NI)1);
								}
LA28_: ;
							} LA26: ;
						}
						{
							LA24_:;
						}
						{
							eqdestroy___system_u2691(wmsg_1);
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
					}
LA13_: ;
					{
						LA11_:;
					}
					{
						oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___reorder_u38(resultX60gensym53__1);
						eqdestroy___reorder_u38(cs_1);
						eqdestroy___ast_u3252(fstn_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						*nimErr_ = oldNimErrFin11_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
LA5_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___reorder_u981)(tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA dest_p0) {
	NI colontmp_;
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T3_;
			T3_ = dest_p0.len;
			if (!(colontmp_ < T3_)) goto LA2;
			eqdestroy___reorder_u38(dest_p0.p->data[colontmp_]);
			colontmp_ += ((NI)1);
		} LA2: ;
	}
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(tySequence__EHM5DWw09bc16yo24mdZPsw));
}
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ*, reorder__reorder_u1518)(tyObject_ModuleGraphcolonObjectType___TuJBn0NOJllZfOUYECIyKw* graph_p0, tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_p1, tyObject_TSym__lYFc3T7YHHNBnaZR9at0NSg* module_p2) {
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* result;
	tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA includedFiles_1;
	NimStringV2 mpath_1;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* n_2;
	tyObject_TNode__eTSqWXWVL7LuzmZf0c6unQ* colontmpD_;
	tySequence__NZB65egHQwAniMoFWKcFaw deps_1;
	tySequence__EHM5DWw09bc16yo24mdZPsw g_1;
	tySequence__pN5ht9bYa9c1VQJ0Er2wvTuA comps_1;
	NI T2_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	nimZeroMem((void*)(&includedFiles_1), sizeof(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA));
	mpath_1.len = 0; mpath_1.p = NIM_NIL;
	n_2 = NIM_NIL;
	colontmpD_ = NIM_NIL;
	deps_1.len = 0; deps_1.p = NIM_NIL;
	g_1.len = 0; g_1.p = NIM_NIL;
	comps_1.len = 0; comps_1.p = NIM_NIL;
	initIntSet__pureZcollectionsZintsets_u598((&includedFiles_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	mpath_1 = toFullPath__msgs_u624((*graph_p0).config, ((NI32) ((*module_p2).position)));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = expandIncludes__reorder_u517(graph_p0, module_p2, n_p1, mpath_1, (&includedFiles_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	n_2 = splitSections__reorder_u564(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	result = newNodeI__ast_u4091(((tyEnum_TNodeKind__eZrq5BxQzEyOryCcwdj4Kw)115), (*n_2).info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T2_ = (NI)0;
	T2_ = len__ast_u3190(n_2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	deps_1 = newSeq__reorder_u1554((T2_));
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_u3190(n_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		i_2 = ((NI)0);
		{
			while (1) {
				tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA T6_;
				tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA T7_;
				tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA* T8_;
				if (!(i_2 < colontmp_)) goto LA5;
				i_1 = i_2;
				nimZeroMem((void*)(&T6_), sizeof(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA));
				initIntSet__pureZcollectionsZintsets_u598((&T6_));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqsink___pureZcollectionsZintsets_u236((&deps_1.p->data[i_1].Field0), (&T6_));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				nimZeroMem((void*)(&T7_), sizeof(tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA));
				initIntSet__pureZcollectionsZintsets_u598((&T7_));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqsink___pureZcollectionsZintsets_u236((&deps_1.p->data[i_1].Field1), (&T7_));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				T8_ = (tyObject_PackedSet__uMCH0vzAEgrsmOKwCWxFrA*)0;
				T8_ = (&deps_1.p->data[i_1].Field0);
				computeDeps__reorder_u365((*graph_p0).cache, (*n_2)._kind_6.sons.p->data[i_1], T8_, (&deps_1.p->data[i_1].Field1), NIM_TRUE);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				i_2 += ((NI)1);
			} LA5: ;
		}
	}
	g_1 = buildGraph__reorder_u1215(n_2, deps_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	comps_1 = getStrongComponents__reorder_u1463((&g_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	mergeSections__reorder_u628((*graph_p0).config, comps_1, result);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___reorder_u981(comps_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___reorder_u38(g_1);
		eqdestroy___reorder_u1700(deps_1);
		eqdestroy___ast_u3252(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___ast_u3252(n_2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___system_u2691(mpath_1);
		eqdestroy___pureZcollectionsZintsets_u230((&includedFiles_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
