/* Generated by Nim Compiler v1.6.0 */
#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
#define nimfr_(x, y)
#define nimln_(x, y)
typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
typedef struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ;
typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
typedef struct NimStringDesc NimStringDesc;
typedef struct TGenericSeq TGenericSeq;
typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
typedef struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ tySequence__4mZLwkxT8rbt9bf3wXrXYNQ;
typedef struct tySequence__rQHmYk1HzcwNxKBymIFHpA tySequence__rQHmYk1HzcwNxKBymIFHpA;
typedef struct tySequence__XMM60DtBsc6xYsIpNANkrA tySequence__XMM60DtBsc6xYsIpNANkrA;
typedef struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw;
typedef struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg;
typedef struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg;
typedef struct tySequence__mWRMiYLthG9coLjkbElCxkw tySequence__mWRMiYLthG9coLjkbElCxkw;
typedef struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyObject_Table__iowAVDkco3qpbEH0z8OmkQ;
typedef struct tySequence__bTDCDwD2P7TodzbAefLcSw tySequence__bTDCDwD2P7TodzbAefLcSw;
typedef struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w;
typedef struct tySequence__3MPVXAHA08SszBrU4ffqEg tySequence__3MPVXAHA08SszBrU4ffqEg;
typedef struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw tyObject_Table__KcymdZjUsmGSK8BxmvoJgw;
typedef struct tySequence__YCf5zJHm4JI06qpmKwPUWg tySequence__YCf5zJHm4JI06qpmKwPUWg;
typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ;
typedef struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA;
typedef struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ tySequence__eHqUwlHGGaPw0TDPDeL79cQ;
typedef struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA;
typedef struct tySequence__61s9cbAniKuBrdHwBhMDfQg tySequence__61s9cbAniKuBrdHwBhMDfQg;
typedef struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA tyObject_Table__fdKWDDO1P17zvuQPReVgRA;
typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
typedef struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ;
typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg;
typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA;
typedef struct RootObj RootObj;
typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
typedef struct tySequence__s9byh6WFJ16lPMcmqdaMTHA tySequence__s9byh6WFJ16lPMcmqdaMTHA;
typedef struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw tyObject_Table__Ue6w4c82v7gc7t2qntTbAw;
typedef struct tySequence__1U9bG8RcAedEeYkQLZjVFKA tySequence__1U9bG8RcAedEeYkQLZjVFKA;
typedef struct tyObject_Table__G1v8c16HePOldLeucwe05Q tyObject_Table__G1v8c16HePOldLeucwe05Q;
typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ tySequence__fIB1rTQ55aFonoft9a9bmljQ;
typedef struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA;
typedef struct tySequence__23SMqauuRsbDANhthj9bWlA tySequence__23SMqauuRsbDANhthj9bWlA;
typedef struct tyObject_Table__NttoEzoiq5CiphZe81oadg tyObject_Table__NttoEzoiq5CiphZe81oadg;
typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA;
typedef struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg tyObject_Table__nagDFX4QHx0s6Fvma9blmSg;
typedef struct tySequence__pHNq3oXj9av2sEUdqaqeZjw tySequence__pHNq3oXj9av2sEUdqaqeZjw;
typedef struct tySequence__MAQKEADohlpnXTModtugbQ tySequence__MAQKEADohlpnXTModtugbQ;
typedef struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q;
typedef struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA;
typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
typedef struct TNimType TNimType;
typedef struct TNimNode TNimNode;
typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tySequence__xETHJjQFDm9cBUp9crgqzgZQ tySequence__xETHJjQFDm9cBUp9crgqzgZQ;
typedef struct tyTuple__jDxNBe0TmdfztixwxnRrgQ tyTuple__jDxNBe0TmdfztixwxnRrgQ;
typedef struct tySequence__76wc9cnTOK9c6epudv8uYE0w tySequence__76wc9cnTOK9c6epudv8uYE0w;
typedef struct tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q;
typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
typedef struct tySequence__AK3cQuijuQxFGdWA8l9a9aYA tySequence__AK3cQuijuQxFGdWA8l9a9aYA;
typedef struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA;
typedef struct tySequence__vv5mGmK03BCr5e3LTZA5Hw tySequence__vv5mGmK03BCr5e3LTZA5Hw;
typedef struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w;
typedef struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ;
typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA tySequence__PXIzfWocnrafGz5p3CP5LA;
typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA tySequence__9bAGqSvkAaFL9bWjsEPslrFA;
typedef struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw;
typedef struct tySequence__29bS0n2QNyO1R7e0qMMOvLA tySequence__29bS0n2QNyO1R7e0qMMOvLA;
typedef struct tySequence__b89aLriiJnVTD186H6zNIgg tySequence__b89aLriiJnVTD186H6zNIgg;
typedef struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg tySequence__REuPuHuSlOkZ0Q5oqzDrQg;
typedef struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA tySequence__I9aQmO9asXXWJ58UI9c8BCSzA;
typedef struct tySequence__NyaOkf8ZwxP6rkRF5TOkew tySequence__NyaOkf8ZwxP6rkRF5TOkew;
typedef struct tySequence__L9bOt8CaTEmIjgtuZvp6syg tySequence__L9bOt8CaTEmIjgtuZvp6syg;
typedef struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ tySequence__im8UB2GsZvUaQ4a1wKGWhQ;
typedef struct tySequence__xxnXDLpoqBo8zJzP9b1073g tySequence__xxnXDLpoqBo8zJzP9b1073g;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__DfmUmNgVGnYaiV1I6227tw tySequence__DfmUmNgVGnYaiV1I6227tw;
typedef struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA tySequence__t8Uv4lEJ4lkuECvP9c6JMhA;
typedef struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg;
typedef struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ;
typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ tySequence__IHUFRsFxZNv7YydiUO2esQ;
typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
typedef struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g tyObject_Table__CE4eiu6FavV1vmUiTXQ70g;
typedef struct tySequence__9bT7o0CflHuiE4VhmtqBPCw tySequence__9bT7o0CflHuiE4VhmtqBPCw;
typedef struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw;
typedef struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q tyObject_Table__TRm6MPqklA8EYBmBMY117Q;
typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ tySequence__9cnx3zXnWzeclW8Ko4oUgAQ;
typedef struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ;
typedef struct tySequence__O5RcspOP32YJ4YtU5ppxxA tySequence__O5RcspOP32YJ4YtU5ppxxA;
typedef struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg;
typedef struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ;
typedef struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ;
typedef struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg tyTuple__o67sDX0wYbEuhI9cJYAbDtg;
typedef struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA;
typedef struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg;
typedef struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA tySequence__ipEvhpHAmm8ZCn9bZAOdNYA;
typedef struct tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA;
typedef struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q tyTuple__9aNnDWBFMF44sfFinBpMT4Q;
typedef struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg;
typedef struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g tySequence__159bHWBGAOOs6U7OZ9cQlO0g;
typedef struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ tyTuple__VrD6plbUKJjYKM0lCr3hGQ;
typedef struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA;
typedef struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA tyTuple__1ZbjBgxAbnye0IFMZ6w4OA;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyTuple__rplX06U9bjhu9asm5pWdgqsA tyTuple__rplX06U9bjhu9asm5pWdgqsA;
typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q;
typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ;
typedef struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A;
typedef struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ tyTuple__3i6hlQmqrn6m7tuVN8FHjQ;
typedef struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw tyTuple__OJFzEczluV8Jmo9bRpBfkzw;
typedef struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw;
typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg;
typedef struct tyTuple__wcNatyuf8WOqAhGLhSvgiw tyTuple__wcNatyuf8WOqAhGLhSvgiw;
typedef struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg;
typedef struct tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g;
typedef struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ;
typedef struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w;
typedef struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q tyTuple__0q9cmhneJEKnQERTpXXdz6Q;
typedef struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow;
typedef struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg;
typedef struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ;
typedef struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA tyTuple__Q7r9caOmeWqQGZCIBHhGRUA;
typedef struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg;
typedef struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw tyTuple__XyJ8LOAZzVVXSsmt09b8uWw;
typedef struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA;
typedef struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw tySequence__vC9cvg0R8tfBaOXXi3sfMzw;
typedef struct tyTuple__9aoobCDZB4x41HJSOmh0mwA tyTuple__9aoobCDZB4x41HJSOmh0mwA;
typedef struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA tyTuple__g0Q6Qx15nK53ce9aLo7YyrA;
typedef struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw;
typedef struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw;
typedef struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA;
typedef struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ;
typedef struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA tyTuple__UvldbCB6B9ayi9bGYW7vJNLA;
struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
NU16 line;
NI16 col;
NI32 fileIndex;
};
typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
struct TGenericSeq {
NI len;
NI reserved;
};
struct NimStringDesc {
  TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
union{
struct {NI64 intVal;
} _kind_1;
struct {NF floatVal;
} _kind_2;
struct {NimStringDesc* strVal;
} _kind_3;
struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
} _kind_4;
struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
} _kind_5;
struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
} _kind_6;
};
};
struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
NI id;
NimStringDesc* s;
tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
NI h;
};
typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
NI elems;
NI counter;
NI max;
tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
tySequence__Bre9bNyuQOg1EJKitjSzn8w* data;
tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
};
struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw {
tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg* data;
NI counter;
};
struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg {
tySequence__mWRMiYLthG9coLjkbElCxkw* data;
NI counter;
};
struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ {
tySequence__bTDCDwD2P7TodzbAefLcSw* data;
NI counter;
};
typedef tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ[5];
struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w {
tySequence__3MPVXAHA08SszBrU4ffqEg* data;
NI counter;
};
struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw {
tySequence__YCf5zJHm4JI06qpmKwPUWg* data;
NI counter;
};
struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
NI counter;
};
typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ {
tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
};
struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA {
NI counter;
tySequence__eHqUwlHGGaPw0TDPDeL79cQ* data;
};
struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA {
tySequence__61s9cbAniKuBrdHwBhMDfQg* data;
NI counter;
};
struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA {
tySequence__fdmz6VkIf1ewwrssKYqRFg* data;
NI counter;
};
struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ {
tySequence__kxu4GK0onha2t9bo86mdVAg* data;
NI counter;
};
typedef struct {
N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0);
void* ClE_0;
} tyProc__In3g79a0qTcRmbTbJp9ba9ctg;
typedef tyObject_TType__facALICuu8zUj0hjvbTLFg* tyArray__9bjuenwQUcqO3lbmS2wX7uA[65];
struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw {
tySequence__1U9bG8RcAedEeYkQLZjVFKA* data;
NI counter;
};
struct tyObject_Table__G1v8c16HePOldLeucwe05Q {
tySequence__fIB1rTQ55aFonoft9a9bmljQ* data;
NI counter;
};
typedef N_NIMCALL_PTR(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, tyProc__VHDwJFdIqpwtpUGuxiXUwg) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx);
typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__mjUN9alLJ31lnSKkUsuyWMw) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx);
struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA {
tySequence__23SMqauuRsbDANhthj9bWlA* data;
NI counter;
};
struct tyObject_Table__NttoEzoiq5CiphZe81oadg {
tySequence__squ9b9bUH4OLHf6cEMrt6hVA* data;
NI counter;
};
struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg {
tySequence__pHNq3oXj9av2sEUdqaqeZjw* data;
NI counter;
};
typedef N_NIMCALL_PTR(void, tyProc__TjycsqkDBjsxd4da6KYTng) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
typedef N_NIMCALL_PTR(void, tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__J7Jq15ZScfKLqcLx8sEz9cA) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TType__facALICuu8zUj0hjvbTLFg* formal, tyObject_TType__facALICuu8zUj0hjvbTLFg* actual);
struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA {
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opNot;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opContains;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLe;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLt;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAnd;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opOr;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opIsNil;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opEq;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAdd;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opSub;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opMul;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opDiv;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLen;
};
struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ {
tySequence__4mZLwkxT8rbt9bf3wXrXYNQ* ifaces;
tySequence__rQHmYk1HzcwNxKBymIFHpA* packed_0;
tySequence__XMM60DtBsc6xYsIpNANkrA* encoders;
tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw typeInstCache;
tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg procInstCache;
tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ attachedOps;
tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w methodsPerType;
tyObject_Table__KcymdZjUsmGSK8BxmvoJgw enumToStringProcs;
tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA emittedTypeInfo;
tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ startupPackedConfig;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageSyms;
tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA modulesPerPackage;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA deps;
tyObject_Table__fdKWDDO1P17zvuQPReVgRA importDeps;
NIM_BOOL suggestMode;
NIM_BOOL invalidTransitiveClosure;
tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ inclToMod;
tySequence__48JTohSgTy339bRxHzUD8KA* importStack;
RootObj* backend;
tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
RootObj* vm;
tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* usageSym;
tySequence__eHqUwlHGGaPw0TDPDeL79cQ* owners;
tySequence__s9byh6WFJ16lPMcmqdaMTHA* methods;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* systemModule;
tyArray__9bjuenwQUcqO3lbmS2wX7uA sysTypes;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA compilerprocs;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA exposed;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageTypes;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* emptyNode;
tyObject_Table__Ue6w4c82v7gc7t2qntTbAw canonTypes;
tyObject_Table__G1v8c16HePOldLeucwe05Q symBodyHashes;
tyProc__VHDwJFdIqpwtpUGuxiXUwg importModuleCallback;
tyProc__mjUN9alLJ31lnSKkUsuyWMw includeFileCallback;
tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA cacheSeqs;
tyObject_Table__NttoEzoiq5CiphZe81oadg cacheCounters;
tyObject_Table__nagDFX4QHx0s6Fvma9blmSg cacheTables;
tySequence__MAQKEADohlpnXTModtugbQ* passes;
tyProc__TjycsqkDBjsxd4da6KYTng onDefinition;
tyProc__TjycsqkDBjsxd4da6KYTng onDefinitionResolveForward;
tyProc__TjycsqkDBjsxd4da6KYTng onUsage;
tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* globalDestructors;
tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ strongSemCheck;
tyProc__J7Jq15ZScfKLqcLx8sEz9cA compatibleProps;
tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA operators;
};
typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
struct TNimType {
NI size;
NI align;
tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
TNimType* base;
TNimNode* node;
void* finalizer;
tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
};
struct RootObj {
TNimType* m_type;
};
struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
NI32 module;
NI32 item;
};
struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
  RootObj Sup;
tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
};
typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
};
struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
  tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
union{
struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
} _kind_1;
struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
NI bitsize;
NI alignment;
} _kind_2;
};
tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
NI position;
NI offset;
tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
};
typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
NimStringDesc* Field0;
NI Field1;
NI Field2;
};
typedef NU tyArray__cC4ce9cdvDKtIpar5g9cDejA[16];
struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA {
tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* next;
NI key;
tyArray__cC4ce9cdvDKtIpar5g9cDejA bits;
};
struct tyTuple__jDxNBe0TmdfztixwxnRrgQ {
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA Field0;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA Field1;
};
typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
struct TNimNode {
tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
NI offset;
TNimType* typ;
NCSTRING name;
NI len;
TNimNode** sons;
};
struct tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q {
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* pnode;
NI id;
NI idx;
NI lowLink;
NIM_BOOL onStack;
tySequence__76wc9cnTOK9c6epudv8uYE0w* kids;
NI hAQ;
NI hIS;
NI hB;
NI hCmd;
};
struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
NI refcount;
TNimType* typ;
};
struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
void* bottom;
};
struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
NI len;
NI cap;
tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
};
typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
};
typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
tyArray__0aOLqZchNi8nWtMTi8ND8w link;
NI key;
NI upperBound;
NI level;
};
struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
NI Field1;
};
typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
NI len;
tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
};
struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
NI minLargeObj;
NI maxLargeObj;
tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
NU32 flBitmap;
tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
NI currMem;
NI maxMem;
NI freeMem;
NI occ;
NI lastSize;
tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
NIM_BOOL locked;
NIM_BOOL blockChunkSizeIncrease;
NI nextChunkSize;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
};
struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
NI stackScans;
NI cycleCollections;
NI maxThreshold;
NI maxStackSize;
NI maxStackCells;
NI cycleTableSize;
NI64 maxPause;
};
struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
NI counter;
NI max;
tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
};
struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
NI cycleThreshold;
NI zctThreshold;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
NI recGcLock;
tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
NI gcThreadId;
};
typedef struct {
N_NIMCALL_PTR(NI, ClP_0) (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* x, tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* y, void* ClE_0);
void* ClE_0;
} tyProc__WrsL3l9cLQ31FpOtAGcGovA;
typedef NU8 tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA;
typedef N_CLOSURE_PTR(NI, TM__wGDfi9c1BEw7VBzRnDQgLpQ_9) (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* x, tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* y);
typedef N_CLOSURE_PTR(NI, TM__wGDfi9c1BEw7VBzRnDQgLpQ_10) (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* x, tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* y);
typedef N_CLOSURE_PTR(NI, TM__wGDfi9c1BEw7VBzRnDQgLpQ_11) (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* x, tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* y, void* ClE_0);
struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA {
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
tySequence__vv5mGmK03BCr5e3LTZA5Hw* converters;
tySequence__vv5mGmK03BCr5e3LTZA5Hw* patterns;
tySequence__vv5mGmK03BCr5e3LTZA5Hw* pureEnums;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interf;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interfHidden;
tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* uniqueName;
};
typedef NU8 tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q;
struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw {
tySequence__29bS0n2QNyO1R7e0qMMOvLA* nodes;
};
typedef NU8 tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g;
struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg {
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* vals;
tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
};
struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ {
tySequence__IHUFRsFxZNv7YydiUO2esQ* vals;
tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
};
struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ {
NimStringDesc* definedSymbols;
tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw moduleFlags;
tySequence__PXIzfWocnrafGz5p3CP5LA* includes;
tySequence__9bAGqSvkAaFL9bWjsEPslrFA* imports;
tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw toReplay;
tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw topLevel;
tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw bodies;
tySequence__b89aLriiJnVTD186H6zNIgg* exports;
tySequence__b89aLriiJnVTD186H6zNIgg* hidden;
tySequence__REuPuHuSlOkZ0Q5oqzDrQg* reexports;
tySequence__b89aLriiJnVTD186H6zNIgg* compilerProcs;
tySequence__48JTohSgTy339bRxHzUD8KA* converters;
tySequence__48JTohSgTy339bRxHzUD8KA* methods;
tySequence__48JTohSgTy339bRxHzUD8KA* trmacros;
tySequence__48JTohSgTy339bRxHzUD8KA* pureEnums;
tySequence__I9aQmO9asXXWJ58UI9c8BCSzA* macroUsages;
tySequence__NyaOkf8ZwxP6rkRF5TOkew* typeInstCache;
tySequence__L9bOt8CaTEmIjgtuZvp6syg* procInstCache;
tySequence__im8UB2GsZvUaQ4a1wKGWhQ* attachedOps;
tySequence__xxnXDLpoqBo8zJzP9b1073g* methodsPerType;
tySequence__NyaOkf8ZwxP6rkRF5TOkew* enumToStringProcs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* emittedTypeInfo;
tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g backendFlags;
tySequence__DfmUmNgVGnYaiV1I6227tw* syms;
tySequence__t8Uv4lEJ4lkuECvP9c6JMhA* types;
tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg strings;
tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ numbers;
tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ cfg;
};
struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g {
tySequence__9bT7o0CflHuiE4VhmtqBPCw* data;
NI counter;
};
struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w {
tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q status;
NIM_BOOL symsInit;
NIM_BOOL typesInit;
NIM_BOOL loadedButAliveSetChanged;
tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ fromDisk;
tySequence__eHqUwlHGGaPw0TDPDeL79cQ* syms;
tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* types;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
tyObject_Table__CE4eiu6FavV1vmUiTXQ70g iface;
tyObject_Table__CE4eiu6FavV1vmUiTXQ70g ifaceHidden;
};
struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q {
tySequence__9cnx3zXnWzeclW8Ko4oUgAQ* data;
NI counter;
};
struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw {
NI32 thisModule;
NI32 lastFile;
NU32 lastLit;
tyObject_Table__TRm6MPqklA8EYBmBMY117Q filenames;
tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* pendingTypes;
tySequence__eHqUwlHGGaPw0TDPDeL79cQ* pendingSyms;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA typeMarker;
tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA symMarker;
tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
};
struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ {
NU32 module;
NI32 item;
};
struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ {
NI module;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ packed_0;
};
struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg {
tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id;
tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
};
struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ {
NI Field0;
tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
tySequence__O5RcspOP32YJ4YtU5ppxxA* Field2;
};
struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg {
NI module;
tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ sym;
tySequence__ipEvhpHAmm8ZCn9bZAOdNYA* concreteTypes;
tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA* inst;
};
struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg {
NI Field0;
tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA* Field2;
};
struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q {
NI Field0;
tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field2;
};
struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA {
tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
};
struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ {
NI Field0;
tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field1;
};
struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg {
NI Field0;
tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
tySequence__159bHWBGAOOs6U7OZ9cQlO0g* Field2;
};
struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA {
NI Field0;
tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field2;
};
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
NI Field0;
NimStringDesc* Field1;
NI32 Field2;
};
struct tyTuple__rplX06U9bjhu9asm5pWdgqsA {
NI Field0;
tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA Field2;
};
struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q {
NI Field0;
NI32 Field1;
tySequence__48JTohSgTy339bRxHzUD8KA* Field2;
};
struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ {
NI Field0;
NI32 Field1;
NI32 Field2;
};
struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A {
tySequence__eHqUwlHGGaPw0TDPDeL79cQ* Field0;
tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field1;
};
typedef NU8 tyArray__qtqsWM5aXmcpMIVmvq3kAA[16];
struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ {
NI Field0;
tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
tyObject_TType__facALICuu8zUj0hjvbTLFg* Field2;
};
struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw {
NI Field0;
NI Field1;
tyArray__qtqsWM5aXmcpMIVmvq3kAA Field2;
};
struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw {
NI Field0;
NimStringDesc* Field1;
tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field2;
};
struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg {
NI Field0;
NimStringDesc* Field1;
NI64 Field2;
};
struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg {
tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g* root;
NI entries;
};
struct tyTuple__wcNatyuf8WOqAhGLhSvgiw {
NI Field0;
NimStringDesc* Field1;
tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg Field2;
};
typedef N_NIMCALL_PTR(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*, tyProc__jkSFMhvPZ1AdGcvT2dK9a2w) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__A7Sdoem70tRxSEmKrf9cmyg) (tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* topLevelStmt);
typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__EAEKmBUgKFg29agoUGtzDEQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ {
tyProc__jkSFMhvPZ1AdGcvT2dK9a2w Field0;
tyProc__A7Sdoem70tRxSEmKrf9cmyg Field1;
tyProc__EAEKmBUgKFg29agoUGtzDEQ Field2;
NIM_BOOL Field3;
};
struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q {
NU32 Field0;
NimStringDesc* Field1;
};
struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg {
NU16 line;
NI16 col;
NU32 file;
};
struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow {
tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
NI32 operand;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeId_0;
tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info;
};
struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ {
NU32 Field0;
NI32 Field1;
};
struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA {
NU32 Field0;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
};
struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg {
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg Field1;
};
struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw {
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
};
struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA {
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ key;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym;
tySequence__vC9cvg0R8tfBaOXXi3sfMzw* concreteTypes;
};
typedef NU8 tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg;
struct tyTuple__9aoobCDZB4x41HJSOmh0mwA {
tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg Field0;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2;
};
struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA {
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
NI Field1;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2;
};
typedef NU8 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ;
struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw {
tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ kind;
NIM_BOOL generated;
NIM_BOOL isOverriden;
NU32 name;
NI32 path;
};
struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw {
tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
NU32 name;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typ;
tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info;
NI32 ast;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ guard;
NI bitsize;
NI alignment;
tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
NI position;
NI offset;
NU32 externalName;
tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA locFlags;
tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw annex;
NI32 constraint;
};
typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA {
tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
tySequence__vC9cvg0R8tfBaOXXi3sfMzw* types;
NI32 n;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner;
NI64 size;
NI16 align;
NI16 paddingAtEnd;
NI16 lockLevel;
tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeInst;
NI32 nonUniqueId;
};
struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ {
NI Field0;
tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* Field1;
tySequence__vC9cvg0R8tfBaOXXi3sfMzw* Field2;
};
struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA {
NI Field0;
NI32 Field1;
NU32 Field2;
};
struct tySequence__xETHJjQFDm9cBUp9crgqzgZQ {
  TGenericSeq Sup;
  tyTuple__jDxNBe0TmdfztixwxnRrgQ data[SEQ_DECL_SIZE];
};
struct tySequence__76wc9cnTOK9c6epudv8uYE0w {
  TGenericSeq Sup;
  tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* data[SEQ_DECL_SIZE];
};
struct tySequence__AK3cQuijuQxFGdWA8l9a9aYA {
  TGenericSeq Sup;
  tySequence__76wc9cnTOK9c6epudv8uYE0w* data[SEQ_DECL_SIZE];
};
struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
  TGenericSeq Sup;
  tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
};
struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
  TGenericSeq Sup;
  tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];
};
struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ {
  TGenericSeq Sup;
  tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA data[SEQ_DECL_SIZE];
};
struct tySequence__rQHmYk1HzcwNxKBymIFHpA {
  TGenericSeq Sup;
  tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w data[SEQ_DECL_SIZE];
};
struct tySequence__XMM60DtBsc6xYsIpNANkrA {
  TGenericSeq Sup;
  tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw data[SEQ_DECL_SIZE];
};
struct tySequence__O5RcspOP32YJ4YtU5ppxxA {
  TGenericSeq Sup;
  tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg data[SEQ_DECL_SIZE];
};
struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg {
  TGenericSeq Sup;
  tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ data[SEQ_DECL_SIZE];
};
struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA {
  TGenericSeq Sup;
  tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg data[SEQ_DECL_SIZE];
};
struct tySequence__mWRMiYLthG9coLjkbElCxkw {
  TGenericSeq Sup;
  tyTuple__o67sDX0wYbEuhI9cJYAbDtg data[SEQ_DECL_SIZE];
};
struct tySequence__bTDCDwD2P7TodzbAefLcSw {
  TGenericSeq Sup;
  tyTuple__9aNnDWBFMF44sfFinBpMT4Q data[SEQ_DECL_SIZE];
};
struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g {
  TGenericSeq Sup;
  tyTuple__VrD6plbUKJjYKM0lCr3hGQ data[SEQ_DECL_SIZE];
};
struct tySequence__3MPVXAHA08SszBrU4ffqEg {
  TGenericSeq Sup;
  tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg data[SEQ_DECL_SIZE];
};
struct tySequence__YCf5zJHm4JI06qpmKwPUWg {
  TGenericSeq Sup;
  tyTuple__1ZbjBgxAbnye0IFMZ6w4OA data[SEQ_DECL_SIZE];
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  TGenericSeq Sup;
  tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
};
struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ {
  TGenericSeq Sup;
  tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* data[SEQ_DECL_SIZE];
};
struct tySequence__61s9cbAniKuBrdHwBhMDfQg {
  TGenericSeq Sup;
  tyTuple__rplX06U9bjhu9asm5pWdgqsA data[SEQ_DECL_SIZE];
};
struct tySequence__48JTohSgTy339bRxHzUD8KA {
  TGenericSeq Sup;
  NI32 data[SEQ_DECL_SIZE];
};
struct tySequence__fdmz6VkIf1ewwrssKYqRFg {
  TGenericSeq Sup;
  tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q data[SEQ_DECL_SIZE];
};
struct tySequence__kxu4GK0onha2t9bo86mdVAg {
  TGenericSeq Sup;
  tyTuple__xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE];
};
struct tySequence__s9byh6WFJ16lPMcmqdaMTHA {
  TGenericSeq Sup;
  tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A data[SEQ_DECL_SIZE];
};
struct tySequence__1U9bG8RcAedEeYkQLZjVFKA {
  TGenericSeq Sup;
  tyTuple__3i6hlQmqrn6m7tuVN8FHjQ data[SEQ_DECL_SIZE];
};
struct tySequence__fIB1rTQ55aFonoft9a9bmljQ {
  TGenericSeq Sup;
  tyTuple__OJFzEczluV8Jmo9bRpBfkzw data[SEQ_DECL_SIZE];
};
struct tySequence__23SMqauuRsbDANhthj9bWlA {
  TGenericSeq Sup;
  tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw data[SEQ_DECL_SIZE];
};
struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA {
  TGenericSeq Sup;
  tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE];
};
struct tySequence__pHNq3oXj9av2sEUdqaqeZjw {
  TGenericSeq Sup;
  tyTuple__wcNatyuf8WOqAhGLhSvgiw data[SEQ_DECL_SIZE];
};
struct tySequence__MAQKEADohlpnXTModtugbQ {
  TGenericSeq Sup;
  tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ data[SEQ_DECL_SIZE];
};
struct tySequence__vv5mGmK03BCr5e3LTZA5Hw {
  TGenericSeq Sup;
  tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA data[SEQ_DECL_SIZE];
};
struct tySequence__PXIzfWocnrafGz5p3CP5LA {
  TGenericSeq Sup;
  tyTuple__0q9cmhneJEKnQERTpXXdz6Q data[SEQ_DECL_SIZE];
};
struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA {
  TGenericSeq Sup;
  NU32 data[SEQ_DECL_SIZE];
};
struct tySequence__29bS0n2QNyO1R7e0qMMOvLA {
  TGenericSeq Sup;
  tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow data[SEQ_DECL_SIZE];
};
struct tySequence__b89aLriiJnVTD186H6zNIgg {
  TGenericSeq Sup;
  tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE];
};
struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg {
  TGenericSeq Sup;
  tyTuple__Q7r9caOmeWqQGZCIBHhGRUA data[SEQ_DECL_SIZE];
};
struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA {
  TGenericSeq Sup;
  tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg data[SEQ_DECL_SIZE];
};
struct tySequence__NyaOkf8ZwxP6rkRF5TOkew {
  TGenericSeq Sup;
  tyTuple__XyJ8LOAZzVVXSsmt09b8uWw data[SEQ_DECL_SIZE];
};
struct tySequence__L9bOt8CaTEmIjgtuZvp6syg {
  TGenericSeq Sup;
  tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA data[SEQ_DECL_SIZE];
};
struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ {
  TGenericSeq Sup;
  tyTuple__9aoobCDZB4x41HJSOmh0mwA data[SEQ_DECL_SIZE];
};
struct tySequence__xxnXDLpoqBo8zJzP9b1073g {
  TGenericSeq Sup;
  tyTuple__g0Q6Qx15nK53ce9aLo7YyrA data[SEQ_DECL_SIZE];
};
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  TGenericSeq Sup;
  NimStringDesc* data[SEQ_DECL_SIZE];
};
struct tySequence__DfmUmNgVGnYaiV1I6227tw {
  TGenericSeq Sup;
  tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw data[SEQ_DECL_SIZE];
};
struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA {
  TGenericSeq Sup;
  tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA data[SEQ_DECL_SIZE];
};
struct tySequence__IHUFRsFxZNv7YydiUO2esQ {
  TGenericSeq Sup;
  NI64 data[SEQ_DECL_SIZE];
};
struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
  TGenericSeq Sup;
  tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
};
struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw {
  TGenericSeq Sup;
  tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ data[SEQ_DECL_SIZE];
};
struct tySequence__9bT7o0CflHuiE4VhmtqBPCw {
  TGenericSeq Sup;
  tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ data[SEQ_DECL_SIZE];
};
struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ {
  TGenericSeq Sup;
  tyTuple__UvldbCB6B9ayi9bGYW7vJNLA data[SEQ_DECL_SIZE];
};
struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA {
  TGenericSeq Sup;
  tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ data[SEQ_DECL_SIZE];
};
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasForbiddenPragma_reorder_916)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
static N_INLINE(NI, safeLen_ast_3190)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
static N_INLINE(NI, len_ast_3197)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
static N_INLINE(NIM_BOOL, equalMem_system_1735)(void* a, void* b, NI size);
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem_systemZmemory_7)(void* a, int v, NI size);
static N_INLINE(void, initIntSet_pureZcollectionsZintsets_238)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
N_LIB_PRIVATE N_NIMCALL(void, initPackedSet_pureZcollectionsZintsets_16)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toFullPath_msgs_538)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, splitSections_reorder_326)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeI_ast_3355)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNode_ast_3331)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind);
N_LIB_PRIVATE N_NIMCALL(void, add_ast_4796)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, expandIncludes_reorder_236)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NimStringDesc* modulePath, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* includedFiles);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasIncludes_reorder_223)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(NI32, checkModuleName_modulepaths_21)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL doLocalError);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl_astalgo_402)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
N_LIB_PRIVATE N_NOINLINE(void, liMessage_msgs_1118)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toMsgFilename_msgs_602)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, includeModule_reorder_231)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NI32 fileIdx);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, parseFile_syntaxes_217)(NI32 fileIdx, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config);
N_LIB_PRIVATE N_NIMCALL(void, addDep_modulegraphs_9449)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 dep);
N_LIB_PRIVATE N_NIMCALL(void, addIncludeDep_modulegraphs_9460)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NI32 module, NI32 includeFile);
N_LIB_PRIVATE N_NIMCALL(void, excl_reorder_264)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
N_LIB_PRIVATE N_NIMCALL(void, exclImpl_reorder_268)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
N_LIB_PRIVATE N_NIMCALL(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*, packedSetGet_astalgo_433)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* t, NI key);
N_LIB_PRIVATE N_NIMCALL(tySequence__xETHJjQFDm9cBUp9crgqzgZQ*, newSeq_reorder_942)(NI len);
N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
static N_NIMCALL(void, Marker_tySequence__xETHJjQFDm9cBUp9crgqzgZQ)(void* p, NI op);
N_LIB_PRIVATE N_NIMCALL(void, computeDeps_reorder_99)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* declares, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* uses, NIM_BOOL topLevel);
N_LIB_PRIVATE N_NIMCALL(void, addDecl_reorder_79)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* declares);
N_LIB_PRIVATE N_NIMCALL(void, incl_pureZcollectionsZintsets_55)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, accQuoted_reorder_64)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
static N_INLINE(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getPIdent_ast_3055)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a);
static N_INLINE(NIM_BOOL, eqeq__idents_220)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* b);
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
static N_INLINE(void, copyMem_system_1727)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getIdent_idents_143)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NimStringDesc* identifier);
N_LIB_PRIVATE N_NIMCALL(tySequence__76wc9cnTOK9c6epudv8uYE0w*, buildGraph_reorder_751)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySequence__xETHJjQFDm9cBUp9crgqzgZQ* deps);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewSeqOfCap)(TNimType* typ, NI cap);
static N_NIMCALL(void, Marker_tyRef__OiD2O9bS9cMtitswLivRUn5g)(void* p, NI op);
static N_NIMCALL(void, Marker_tySequence__76wc9cnTOK9c6epudv8uYE0w)(void* p, NI op);
N_LIB_PRIVATE N_NIMCALL(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*, newDepN_reorder_26)(NI id, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* pnode);
N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size);
static N_INLINE(void, asgnRef)(void** dest, void* src);
static N_INLINE(void, incRef_system_5300)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(NI, pluspercent__system_696)(NI x, NI y);
static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell_system_5262)(void* usr);
static N_INLINE(NI, minuspercent__system_716)(NI x, NI y);
static N_INLINE(void, decRef_system_5307)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(NIM_BOOL, ltpercent__system_1005)(NI x, NI y);
static N_INLINE(void, rtlAddZCT_system_5305)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
N_LIB_PRIVATE N_NOINLINE(void, addZCT_system_5256)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(void, nimGCunrefRC1)(void* p);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasBody_reorder_731)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasBody_reorder_718)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasCommand_reorder_688)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasCommand_reorder_684)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasImportStmt_reorder_678)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasImportStmt_reorder_674)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuotedDef_reorder_712)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuotedDef_reorder_707)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuoted_reorder_694)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, intersects_reorder_737)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s1, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains_astalgo_3496)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
N_LIB_PRIVATE N_NIMCALL(tySequence__AK3cQuijuQxFGdWA8l9a9aYA*, getStrongComponents_reorder_907)(tySequence__76wc9cnTOK9c6epudv8uYE0w** g);
N_LIB_PRIVATE N_NIMCALL(void, strongConnect_reorder_828)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** v, NI* idx, tySequence__76wc9cnTOK9c6epudv8uYE0w** s, tySequence__AK3cQuijuQxFGdWA8l9a9aYA** res);
N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
N_LIB_PRIVATE N_NIMCALL(tySequence__76wc9cnTOK9c6epudv8uYE0w*, newSeq_reorder_469)(NI len);
static N_INLINE(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*, pop_reorder_868)(tySequence__76wc9cnTOK9c6epudv8uYE0w** s);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
static N_NIMCALL(void, Marker_tySequence__AK3cQuijuQxFGdWA8l9a9aYA)(void* p, NI op);
N_LIB_PRIVATE N_NIMCALL(void, genericSeqAssign)(void* dest, void* src, TNimType* mt);
N_LIB_PRIVATE N_NIMCALL(void, mergeSections_reorder_395)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tySequence__AK3cQuijuQxFGdWA8l9a9aYA* comps, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* res);
N_LIB_PRIVATE N_NIMCALL(tySequence__76wc9cnTOK9c6epudv8uYE0w*, sorted_reorder_457)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** a, NI aLen_0, tyProc__WrsL3l9cLQ31FpOtAGcGovA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(void, sort_reorder_485)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** a, NI aLen_0, tyProc__WrsL3l9cLQ31FpOtAGcGovA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt_reorder_502)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** a, NI aLen_0, tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** b, NI bLen_0, NI lo, NI m, NI hi, tyProc__WrsL3l9cLQ31FpOtAGcGovA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
static N_INLINE(NI, star__pureZalgorithm_8)(NI x, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(NI, colonanonymous__reorder_439)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* xX60gensym51_, tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* yX60gensym51_);
N_LIB_PRIVATE N_NIMCALL(NI, cmp_system_7422)(NI x, NI y);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, haveSameKind_reorder_358)(tySequence__76wc9cnTOK9c6epudv8uYE0w* dns);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
STRING_LITERAL(TM__wGDfi9c1BEw7VBzRnDQgLpQ_2, "push", 4);
STRING_LITERAL(TM__wGDfi9c1BEw7VBzRnDQgLpQ_3, "recursive dependency: \'$1\'", 26);
STRING_LITERAL(TM__wGDfi9c1BEw7VBzRnDQgLpQ_5, "/home/runner/work/nightlies/nightlies/nim/compiler/reorder.nim", 62);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wGDfi9c1BEw7VBzRnDQgLpQ_4 = {((NimStringDesc*) &TM__wGDfi9c1BEw7VBzRnDQgLpQ_5),
((NI) 132),
((NI) 22)}
;
N_LIB_PRIVATE TNimType NTILintset_intsetT__jDxNBe0TmdfztixwxnRrgQ_;
extern TNimType NTIpackedset__IhxwDBRi51nGrosBGFKcsA_;
N_LIB_PRIVATE TNimType NTIseqLLintset_intsetTT__xETHJjQFDm9cBUp9crgqzgZQ_;
STRING_LITERAL(TM__wGDfi9c1BEw7VBzRnDQgLpQ_7, "pragma", 6);
N_LIB_PRIVATE TNimType NTIdepn58objecttype__eVONEEaK4II8kv8La51d2Q_;
extern TNimType NTIpnode__fKfcLzXYiz5jNu3NH3Tv8Q_;
extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
extern TNimType NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_;
N_LIB_PRIVATE TNimType NTIdepn__OiD2O9bS9cMtitswLivRUn5g_;
N_LIB_PRIVATE TNimType NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_;
N_LIB_PRIVATE TNimType NTIseqLseqLdepnTT__AK3cQuijuQxFGdWA8l9a9aYA_;
STRING_LITERAL(TM__wGDfi9c1BEw7VBzRnDQgLpQ_12, "Circular dependency detected. `codeReordering` pragma may not be able to reorder some nodes properly", 100);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__wGDfi9c1BEw7VBzRnDQgLpQ_13 = {((NimStringDesc*) &TM__wGDfi9c1BEw7VBzRnDQgLpQ_5),
((NI) 208),
((NI) 15)}
;
extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch_system_5209;
static N_INLINE(NI, len_ast_3197)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NI result;
	NI T1_;
	result = (NI)0;
	T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
	result = T1_;
	return result;
}
static N_INLINE(NI, safeLen_ast_3190)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NI result;
	result = (NI)0;
	{
		if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
		result = ((NI) 0);
	}
	goto LA1_;
	LA3_: ;
	{
		result = len_ast_3197(n);
	}
	LA1_: ;
	return result;
}
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
	int result;
	result = (int)0;
	result = memcmp(a, b, ((size_t) (size)));
	return result;
}
static N_INLINE(NIM_BOOL, equalMem_system_1735)(void* a, void* b, NI size) {
	NIM_BOOL result;
	int T1_;
	result = (NIM_BOOL)0;
	T1_ = (int)0;
	T1_ = nimCmpMem(a, b, size);
	result = (T1_ == ((NI32) 0));
	return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
	NIM_BOOL result;
	NI alen;
	NI blen;
{	result = (NIM_BOOL)0;
	alen = (a ? a->Sup.len : 0);
	blen = (b ? b->Sup.len : 0);
	{
		if (!(alen == blen)) goto LA3_;
		{
			if (!(alen == ((NI) 0))) goto LA7_;
			result = NIM_TRUE;
			goto BeforeRet_;
		}
		LA7_: ;
		result = equalMem_system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
		goto BeforeRet_;
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasForbiddenPragma_reorder_916)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
		a = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen_ast_3190(n);
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA4;
					i = i_2;
					a = (*n)._kind_6.sons->data[i];
					{
						NIM_BOOL T7_;
						NIM_BOOL T8_;
						T7_ = (NIM_BOOL)0;
						T8_ = (NIM_BOOL)0;
						T8_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 90));
						if (!(T8_)) goto LA9_;
						T8_ = ((*(*a)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2));
						LA9_: ;
						T7_ = T8_;
						if (!(T7_)) goto LA10_;
						T7_ = eqStrings((*(*(*a)._kind_6.sons->data[((NI) 0)])._kind_5.ident).s, ((NimStringDesc*) &TM__wGDfi9c1BEw7VBzRnDQgLpQ_2));
						LA10_: ;
						if (!T7_) goto LA11_;
						result = NIM_TRUE;
						goto BeforeRet_;
					}
					LA11_: ;
					i_2 += ((NI) 1);
				} LA4: ;
			}
		}
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimSetMem_systemZmemory_7)(void* a, int v, NI size) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a, v, ((size_t) (size)));
}
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
	nimSetMem_systemZmemory_7(p, ((int) 0), size);
}
static N_INLINE(void, initIntSet_pureZcollectionsZintsets_238)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result) {
	initPackedSet_pureZcollectionsZintsets_16(Result);
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, splitSections_reorder_326)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	result = newNodeI_ast_3355(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
	{
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
		a = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen_ast_3190(n);
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA4;
					i = i_2;
					a = (*n)._kind_6.sons->data[i];
					{
						NIM_BOOL T7_;
						NI T9_;
						T7_ = (NIM_BOOL)0;
						T7_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98) || (*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101));
						if (!(T7_)) goto LA8_;
						T9_ = (NI)0;
						T9_ = len_ast_3197(a);
						T7_ = (((NI) 1) < T9_);
						LA8_: ;
						if (!T7_) goto LA10_;
						{
							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b;
							b = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
							{
								NI i_3;
								NI colontmp__2;
								NI i_4;
								i_3 = (NI)0;
								colontmp__2 = (NI)0;
								colontmp__2 = safeLen_ast_3190(a);
								i_4 = ((NI) 0);
								{
									while (1) {
										tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s;
										if (!(i_4 < colontmp__2)) goto LA15;
										i_3 = i_4;
										b = (*a)._kind_6.sons->data[i_3];
										s = newNode_ast_3331((*a).kind);
										(*s).info = (*b).info;
										add_ast_4796(s, b);
										add_ast_4796(result, s);
										i_4 += ((NI) 1);
									} LA15: ;
								}
							}
						}
					}
					goto LA5_;
					LA10_: ;
					{
						add_ast_4796(result, a);
					}
					LA5_: ;
					i_2 += ((NI) 1);
				} LA4: ;
			}
		}
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasIncludes_reorder_223)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
		a = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen_ast_3190(n);
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA4;
					i = i_2;
					a = (*n)._kind_6.sons->data[i];
					{
						if (!((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 121))) goto LA7_;
						result = NIM_TRUE;
						goto BeforeRet_;
					}
					LA7_: ;
					i_2 += ((NI) 1);
				} LA4: ;
			}
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, includeModule_reorder_231)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NI32 fileIdx) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	result = parseFile_syntaxes_217(fileIdx, (*graph).cache, (*graph).config);
	addDep_modulegraphs_9449(graph, s, fileIdx);
	addIncludeDep_modulegraphs_9460(graph, ((NI32) ((*s).position)), fileIdx);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, exclImpl_reorder_268)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key) {
{	{
		if (!((*s).elems <= ((NI) 34))) goto LA3_;
		{
			NI i;
			NI i_2;
			i = (NI)0;
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < (*s).elems)) goto LA7;
					i = i_2;
					{
						if (!((*s).a[(i)- 0] == key)) goto LA10_;
						(*s).a[(i)- 0] = (*s).a[((NI)((*s).elems - ((NI) 1)))- 0];
						(*s).elems -= ((NI) 1);
						goto BeforeRet_;
					}
					LA10_: ;
					i_2 += ((NI) 1);
				} LA7: ;
			}
		}
	}
	goto LA1_;
	LA3_: ;
	{
		tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* t;
		t = packedSetGet_astalgo_433((&(*s)), (NI)((NI32)(key) >> (NU32)(((NI) 9))));
		{
			NI u;
			if (!!((t == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA15_;
			u = (NI)(key & ((NI) 511));
			(*t).bits[((NI)((NI32)(u) >> (NU32)(((NI) 5))))- 0] = (NU)((*t).bits[((NI)((NI32)(u) >> (NU32)(((NI) 5))))- 0] & (NU)((NU32) ~((NU)((NU32)(((NU) 1)) << (NU32)((NI)(u & ((NI) 31)))))));
		}
		LA15_: ;
	}
	LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, excl_reorder_264)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key) {
	exclImpl_reorder_268(s, key);
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, expandIncludes_reorder_236)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NimStringDesc* modulePath, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* includedFiles) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
{	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = hasIncludes_reorder_223(n);
		if (!!(T3_)) goto LA4_;
		result = n;
		goto BeforeRet_;
	}
	LA4_: ;
	result = newNodeI_ast_3355(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n).info);
	{
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
		a = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen_ast_3190(n);
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA9;
					i = i_2;
					a = (*n)._kind_6.sons->data[i];
					{
						if (!((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 121))) goto LA12_;
						{
							NI i_3;
							NI colontmp__2;
							NI i_4;
							i_3 = (NI)0;
							colontmp__2 = (NI)0;
							colontmp__2 = len_ast_3197(a);
							i_4 = ((NI) 0);
							{
								while (1) {
									NI32 f;
									if (!(i_4 < colontmp__2)) goto LA16;
									i_3 = i_4;
									f = checkModuleName_modulepaths_21((*graph).config, (*a)._kind_6.sons->data[i_3], NIM_TRUE);
									{
										if (!!((f == ((NI32) -1)))) goto LA19_;
										{
											NIM_BOOL T23_;
											NimStringDesc* T26_;
											NimStringDesc* T27_;
											T23_ = (NIM_BOOL)0;
											T23_ = containsOrIncl_astalgo_402(includedFiles, ((NI) (f)));
											if (!T23_) goto LA24_;
											T26_ = (NimStringDesc*)0;
											T26_ = toMsgFilename_msgs_602((*graph).config, f);
											T27_ = (NimStringDesc*)0;
											T27_ = nsuFormatSingleElem(((NimStringDesc*) &TM__wGDfi9c1BEw7VBzRnDQgLpQ_3), T26_);
											liMessage_msgs_1118((*graph).config, (*a).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T27_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wGDfi9c1BEw7VBzRnDQgLpQ_4, NIM_FALSE);
										}
										goto LA21_;
										LA24_: ;
										{
											tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nn;
											tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* nnn;
											nn = includeModule_reorder_231(graph, module, f);
											nnn = expandIncludes_reorder_236(graph, module, nn, modulePath, includedFiles);
											excl_reorder_264(includedFiles, ((NI) (f)));
											{
												tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b;
												b = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
												{
													NI i_5;
													NI colontmp__3;
													NI i_6;
													i_5 = (NI)0;
													colontmp__3 = (NI)0;
													colontmp__3 = safeLen_ast_3190(nnn);
													i_6 = ((NI) 0);
													{
														while (1) {
															if (!(i_6 < colontmp__3)) goto LA32;
															i_5 = i_6;
															b = (*nnn)._kind_6.sons->data[i_5];
															add_ast_4796(result, b);
															i_6 += ((NI) 1);
														} LA32: ;
													}
												}
											}
										}
										LA21_: ;
									}
									LA19_: ;
									i_4 += ((NI) 1);
								} LA16: ;
							}
						}
					}
					goto LA10_;
					LA12_: ;
					{
						add_ast_4796(result, a);
					}
					LA10_: ;
					i_2 += ((NI) 1);
				} LA9: ;
			}
		}
	}
	}BeforeRet_: ;
	return result;
}
static N_NIMCALL(void, Marker_tySequence__xETHJjQFDm9cBUp9crgqzgZQ)(void* p, NI op) {
	tySequence__xETHJjQFDm9cBUp9crgqzgZQ* a;
	NI T1_;
	NI T2_;
	NI T3_;
	a = (tySequence__xETHJjQFDm9cBUp9crgqzgZQ*)p;
	T1_ = (NI)0;
	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
	nimGCvisit((void*)a->data[T1_].Field0.head, op);
	nimGCvisit((void*)a->data[T1_].Field0.data, op);
	T2_ = (NI)0;
	nimGCvisit((void*)a->data[T1_].Field1.head, op);
	nimGCvisit((void*)a->data[T1_].Field1.data, op);
	T3_ = (NI)0;
	}
}
N_LIB_PRIVATE N_NIMCALL(tySequence__xETHJjQFDm9cBUp9crgqzgZQ*, newSeq_reorder_942)(NI len) {
	tySequence__xETHJjQFDm9cBUp9crgqzgZQ* result;
	result = (tySequence__xETHJjQFDm9cBUp9crgqzgZQ*)0;
	result = (tySequence__xETHJjQFDm9cBUp9crgqzgZQ*) newSeq((&NTIseqLLintset_intsetTT__xETHJjQFDm9cBUp9crgqzgZQ_), len);
	return result;
}
static N_INLINE(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getPIdent_ast_3055)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a) {
	tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* result;
	result = (tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*)0;
	switch ((*a).kind) {
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
	{
		result = (*(*a)._kind_4.sym).name;
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
	{
		result = (*a)._kind_5.ident;
	}
	break;
	default:
	{
		result = ((tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*) NIM_NIL);
	}
	break;
	}
	return result;
}
static N_INLINE(NIM_BOOL, eqeq__idents_220)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* b) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (a == 0);
		if (T3_) goto LA4_;
		T3_ = (b == 0);
		LA4_: ;
		if (!T3_) goto LA5_;
		result = (a == b);
	}
	goto LA1_;
	LA5_: ;
	{
		result = ((*a).id == (*b).id);
	}
	LA1_: ;
	return result;
}
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest, source, ((size_t) (size)));
}
static N_INLINE(void, copyMem_system_1727)(void* dest, void* source, NI size) {
	nimCopyMem(dest, source, size);
}
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
	{
		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
		copyMem_system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
		(*dest).Sup.len += (*src).Sup.len;
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, accQuoted_reorder_64)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* result;
	NimStringDesc* id;
	result = (tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*)0;
	id = ((NimStringDesc*) NIM_NIL);
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len_ast_3197(n);
		i_2 = ((NI) 0);
		{
			while (1) {
				tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
				if (!(i_2 < colontmp_)) goto LA3;
				i = i_2;
				ident = getPIdent_ast_3055((*n)._kind_6.sons->data[i]);
				{
					NIM_BOOL T6_;
					T6_ = (NIM_BOOL)0;
					T6_ = eqeq__idents_220(ident, ((tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*) NIM_NIL));
					if (!!(T6_)) goto LA7_;
					id = resizeString(id, ((*ident).s ? (*ident).s->Sup.len : 0) + 0);
appendString(id, (*ident).s);
				}
				LA7_: ;
				i_2 += ((NI) 1);
			} LA3: ;
		}
	}
	result = getIdent_idents_143(cache, id);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addDecl_reorder_79)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* declares) {
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31):
	{
		addDecl_reorder_79(cache, (*n)._kind_6.sons->data[((NI) 1)], declares);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 43):
	{
		addDecl_reorder_79(cache, (*n)._kind_6.sons->data[((NI) 0)], declares);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
	{
		incl_pureZcollectionsZintsets_55(declares, (*(*n)._kind_5.ident).id);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
	{
		incl_pureZcollectionsZintsets_55(declares, (*(*(*n)._kind_4.sym).name).id);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 53):
	{
		tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a;
		a = accQuoted_reorder_64(cache, n);
		incl_pureZcollectionsZintsets_55(declares, (*a).id);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 151):
	{
		addDecl_reorder_79(cache, (*n)._kind_6.sons->data[((NI) 0)], declares);
	}
	break;
	default:
	{
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(void, computeDeps_reorder_99)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* declares, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* uses, NIM_BOOL topLevel) {
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 82):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
	{
		{
			if (!topLevel) goto LA4_;
			addDecl_reorder_79(cache, (*n)._kind_6.sons->data[((NI) 0)], declares);
		}
		LA4_: ;
		{
			NI i;
			NI res;
			i = (NI)0;
			res = ((NI) 1);
			{
				while (1) {
					if (!(res <= ((NI) 6))) goto LA8;
					i = res;
					computeDeps_reorder_99(cache, (*n)._kind_6.sons->data[i], declares, uses, NIM_FALSE);
					res += ((NI) 1);
				} LA8: ;
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 100):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 124):
	{
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
			a = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
			{
				NI i_2;
				NI colontmp_;
				NI i_3;
				i_2 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen_ast_3190(n);
				i_3 = ((NI) 0);
				{
					while (1) {
						if (!(i_3 < colontmp_)) goto LA13;
						i_2 = i_3;
						a = (*n)._kind_6.sons->data[i_2];
						{
							if (!((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 35) || (*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 36))) goto LA16_;
							{
								NI j;
								NI colontmp__2;
								NI T19_;
								NI i_4;
								j = (NI)0;
								colontmp__2 = (NI)0;
								T19_ = (NI)0;
								T19_ = len_ast_3197(a);
								colontmp__2 = (NI)(T19_ - ((NI) 2));
								i_4 = ((NI) 0);
								{
									while (1) {
										if (!(i_4 < colontmp__2)) goto LA21;
										j = i_4;
										{
											if (!topLevel) goto LA24_;
											addDecl_reorder_79(cache, (*a)._kind_6.sons->data[j], declares);
										}
										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_3197(a);
								colontmp__3 = (NI)(T27_ - ((NI) 2));
								colontmp__4 = len_ast_3197(a);
								i_5 = colontmp__3;
								{
									while (1) {
										if (!(i_5 < colontmp__4)) goto LA29;
										j_2 = i_5;
										computeDeps_reorder_99(cache, (*a)._kind_6.sons->data[j_2], declares, uses, NIM_FALSE);
										i_5 += ((NI) 1);
									} LA29: ;
								}
							}
						}
						LA16_: ;
						i_3 += ((NI) 1);
					} LA13: ;
				}
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
	{
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_2;
			a_2 = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
			{
				NI i_6;
				NI colontmp__5;
				NI i_7;
				i_6 = (NI)0;
				colontmp__5 = (NI)0;
				colontmp__5 = safeLen_ast_3190(n);
				i_7 = ((NI) 0);
				{
					while (1) {
						if (!(i_7 < colontmp__5)) goto LA34;
						i_6 = i_7;
						a_2 = (*n)._kind_6.sons->data[i_6];
						{
							NI T37_;
							T37_ = (NI)0;
							T37_ = len_ast_3197(a_2);
							if (!(((NI) 3) <= T37_)) goto LA38_;
							{
								if (!topLevel) goto LA42_;
								addDecl_reorder_79(cache, (*a_2)._kind_6.sons->data[((NI) 0)], declares);
							}
							LA42_: ;
							{
								NI i_8;
								NI colontmp__6;
								NI i_9;
								i_8 = (NI)0;
								colontmp__6 = (NI)0;
								colontmp__6 = len_ast_3197(a_2);
								i_9 = ((NI) 1);
								{
									while (1) {
										if (!(i_9 < colontmp__6)) goto LA46;
										i_8 = i_9;
										{
											if (!((*(*a_2)._kind_6.sons->data[i_8]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 150))) goto LA49_;
											{
												tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b;
												tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* colontmp__7;
												b = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
												colontmp__7 = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
												colontmp__7 = (*a_2)._kind_6.sons->data[i_8];
												{
													NI i_10;
													NI colontmp__8;
													NI i_11;
													i_10 = (NI)0;
													colontmp__8 = (NI)0;
													colontmp__8 = safeLen_ast_3190(colontmp__7);
													i_11 = ((NI) 0);
													{
														while (1) {
															if (!(i_11 < colontmp__8)) goto LA54;
															i_10 = i_11;
															b = (*colontmp__7)._kind_6.sons->data[i_10];
															{
																if (!topLevel) goto LA57_;
																addDecl_reorder_79(cache, b, declares);
															}
															LA57_: ;
															i_11 += ((NI) 1);
														} LA54: ;
													}
												}
											}
										}
										goto LA47_;
										LA49_: ;
										{
											computeDeps_reorder_99(cache, (*a_2)._kind_6.sons->data[i_8], declares, uses, NIM_FALSE);
										}
										LA47_: ;
										i_9 += ((NI) 1);
									} LA46: ;
								}
							}
						}
						LA38_: ;
						i_7 += ((NI) 1);
					} LA34: ;
				}
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 35):
	{
		{
			NI i_12;
			NI colontmp__9;
			NI i_13;
			i_12 = (NI)0;
			colontmp__9 = (NI)0;
			colontmp__9 = len_ast_3197(n);
			i_13 = ((NI) 1);
			{
				while (1) {
					if (!(i_13 < colontmp__9)) goto LA63;
					i_12 = i_13;
					computeDeps_reorder_99(cache, (*n)._kind_6.sons->data[i_12], declares, uses, NIM_FALSE);
					i_13 += ((NI) 1);
				} LA63: ;
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
	{
		incl_pureZcollectionsZintsets_55(uses, (*(*n)._kind_5.ident).id);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
	{
		incl_pureZcollectionsZintsets_55(uses, (*(*(*n)._kind_4.sym).name).id);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 53):
	{
		tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* T67_;
		T67_ = (tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*)0;
		T67_ = accQuoted_reorder_64(cache, n);
		incl_pureZcollectionsZintsets_55(uses, (*T67_).id);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 57):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 56):
	{
		incl_pureZcollectionsZintsets_55(uses, (*(*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).id);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 93):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
	{
		{
			NI i_14;
			NI colontmp__10;
			NI i_15;
			i_14 = (NI)0;
			colontmp__10 = (NI)0;
			colontmp__10 = len_ast_3197(n);
			i_15 = ((NI) 0);
			{
				while (1) {
					if (!(i_15 < colontmp__10)) goto LA72;
					i_14 = i_15;
					computeDeps_reorder_99(cache, (*n)._kind_6.sons->data[i_14], declares, uses, topLevel);
					i_15 += ((NI) 1);
				} LA72: ;
			}
		}
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 90):
	{
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a_3;
		a_3 = (*n)._kind_6.sons->data[((NI) 0)];
		{
			NIM_BOOL T76_;
			NIM_BOOL T77_;
			T76_ = (NIM_BOOL)0;
			T77_ = (NIM_BOOL)0;
			T77_ = ((*a_3).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34));
			if (!(T77_)) goto LA78_;
			T77_ = ((*(*a_3)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2));
			LA78_: ;
			T76_ = T77_;
			if (!(T76_)) goto LA79_;
			T76_ = eqStrings((*(*(*a_3)._kind_6.sons->data[((NI) 0)])._kind_5.ident).s, ((NimStringDesc*) &TM__wGDfi9c1BEw7VBzRnDQgLpQ_7));
			LA79_: ;
			if (!T76_) goto LA80_;
			{
				if (!topLevel) goto LA84_;
				addDecl_reorder_79(cache, (*a_3)._kind_6.sons->data[((NI) 1)], declares);
			}
			LA84_: ;
		}
		goto LA74_;
		LA80_: ;
		{
			{
				NI i_16;
				NI colontmp__11;
				NI i_17;
				i_16 = (NI)0;
				colontmp__11 = (NI)0;
				colontmp__11 = safeLen_ast_3190(n);
				i_17 = ((NI) 0);
				{
					while (1) {
						if (!(i_17 < colontmp__11)) goto LA89;
						i_16 = i_17;
						computeDeps_reorder_99(cache, (*n)._kind_6.sons->data[i_16], declares, uses, NIM_FALSE);
						i_17 += ((NI) 1);
					} LA89: ;
				}
			}
		}
		LA74_: ;
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122):
	{
	}
	break;
	default:
	{
		{
			NI i_18;
			NI colontmp__12;
			NI i_19;
			i_18 = (NI)0;
			colontmp__12 = (NI)0;
			colontmp__12 = safeLen_ast_3190(n);
			i_19 = ((NI) 0);
			{
				while (1) {
					if (!(i_19 < colontmp__12)) goto LA94;
					i_18 = i_19;
					computeDeps_reorder_99(cache, (*n)._kind_6.sons->data[i_18], declares, uses, NIM_FALSE);
					i_19 += ((NI) 1);
				} LA94: ;
			}
		}
	}
	break;
	}
}
static N_NIMCALL(void, Marker_tyRef__OiD2O9bS9cMtitswLivRUn5g)(void* p, NI op) {
	tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* a;
	a = (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*)p;
	nimGCvisit((void*)(*a).pnode, op);
	nimGCvisit((void*)(*a).kids, op);
}
static N_NIMCALL(void, Marker_tySequence__76wc9cnTOK9c6epudv8uYE0w)(void* p, NI op) {
	tySequence__76wc9cnTOK9c6epudv8uYE0w* a;
	NI T1_;
	a = (tySequence__76wc9cnTOK9c6epudv8uYE0w*)p;
	T1_ = (NI)0;
	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
	nimGCvisit((void*)a->data[T1_], op);
	}
}
static N_INLINE(NI, pluspercent__system_696)(NI x, NI y) {
	NI result;
	result = (NI)0;
	result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
	return result;
}
static N_INLINE(void, incRef_system_5300)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
	(*c).refcount = pluspercent__system_696((*c).refcount, ((NI) 8));
}
static N_INLINE(NI, minuspercent__system_716)(NI x, NI y) {
	NI result;
	result = (NI)0;
	result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
	return result;
}
static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell_system_5262)(void* usr) {
	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
	NI T1_;
	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
	T1_ = (NI)0;
	T1_ = minuspercent__system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
	return result;
}
static N_INLINE(NIM_BOOL, ltpercent__system_1005)(NI x, NI y) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
	return result;
}
static N_INLINE(void, rtlAddZCT_system_5305)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
	addZCT_system_5256((&gch_system_5209.zct), c);
}
static N_INLINE(void, decRef_system_5307)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
	(*c).refcount = minuspercent__system_716((*c).refcount, ((NI) 8));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = ltpercent__system_1005((*c).refcount, ((NI) 8));
		if (!T3_) goto LA4_;
		rtlAddZCT_system_5305(c);
	}
	LA4_: ;
}
static N_INLINE(void, asgnRef)(void** dest, void* src) {
	{
		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
		if (!!((src == NIM_NIL))) goto LA3_;
		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
		T5_ = usrToCell_system_5262(src);
		incRef_system_5300(T5_);
	}
	LA3_: ;
	{
		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
		if (!!(((*dest) == NIM_NIL))) goto LA8_;
		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
		T10_ = usrToCell_system_5262((*dest));
		decRef_system_5307(T10_);
	}
	LA8_: ;
	(*dest) = src;
}
static N_INLINE(void, nimGCunrefRC1)(void* p) {
	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
	T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
	T1_ = usrToCell_system_5262(p);
	decRef_system_5307(T1_);
}
N_LIB_PRIVATE N_NIMCALL(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*, newDepN_reorder_26)(NI id, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* pnode) {
	tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* result;
	result = (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*)0;
	result = (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*) newObj((&NTIdepn__OiD2O9bS9cMtitswLivRUn5g_), sizeof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q));
	(*result).id = id;
	asgnRef((void**) (&(*result).pnode), pnode);
	(*result).idx = ((NI) -1);
	(*result).lowLink = ((NI) -1);
	(*result).onStack = NIM_FALSE;
	if ((*result).kids) { nimGCunrefRC1((*result).kids); (*result).kids = NIM_NIL; }
	(*result).hAQ = ((NI) -1);
	(*result).hIS = ((NI) -1);
	(*result).hB = ((NI) -1);
	(*result).hCmd = ((NI) -1);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasBody_reorder_718)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27):
	{
		result = NIM_TRUE;
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len_ast_3197(n);
		result = ((*(*n)._kind_6.sons->data[(NI)(T3_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115));
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 93):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
	{
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
			a = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
			{
				NI i;
				NI colontmp_;
				NI i_2;
				i = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen_ast_3190(n);
				i_2 = ((NI) 0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA8;
						i = i_2;
						a = (*n)._kind_6.sons->data[i];
						{
							NIM_BOOL T11_;
							T11_ = (NIM_BOOL)0;
							T11_ = hasBody_reorder_718(a);
							if (!T11_) goto LA12_;
							result = NIM_TRUE;
							goto BeforeRet_;
						}
						LA12_: ;
						i_2 += ((NI) 1);
					} LA8: ;
				}
			}
		}
	}
	break;
	default:
	{
		result = NIM_FALSE;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasBody_reorder_731)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* n) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T5_;
		if (!((*n).hB < ((NI) 0))) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = hasBody_reorder_718((*n).pnode);
		(*n).hB = T5_;
	}
	LA3_: ;
	result = (((*n).hB) != 0);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasCommand_reorder_684)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27):
	{
		result = NIM_TRUE;
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 93):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 100):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 35):
	{
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
			a = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
			{
				NI i;
				NI colontmp_;
				NI i_2;
				i = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen_ast_3190(n);
				i_2 = ((NI) 0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA6;
						i = i_2;
						a = (*n)._kind_6.sons->data[i];
						{
							NIM_BOOL T9_;
							T9_ = (NIM_BOOL)0;
							T9_ = hasCommand_reorder_684(a);
							if (!T9_) goto LA10_;
							result = NIM_TRUE;
							goto BeforeRet_;
						}
						LA10_: ;
						i_2 += ((NI) 1);
					} LA6: ;
				}
			}
		}
	}
	break;
	default:
	{
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasCommand_reorder_688)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* n) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T5_;
		if (!((*n).hCmd < ((NI) 0))) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = hasCommand_reorder_684((*n).pnode);
		(*n).hCmd = T5_;
	}
	LA3_: ;
	result = (((*n).hCmd) != 0);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasImportStmt_reorder_674)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 116):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 120):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 117):
	{
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 93):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
	{
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
			a = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
			{
				NI i;
				NI colontmp_;
				NI i_2;
				i = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen_ast_3190(n);
				i_2 = ((NI) 0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA6;
						i = i_2;
						a = (*n)._kind_6.sons->data[i];
						{
							NIM_BOOL T9_;
							T9_ = (NIM_BOOL)0;
							T9_ = hasImportStmt_reorder_674(a);
							if (!T9_) goto LA10_;
							result = NIM_TRUE;
							goto BeforeRet_;
						}
						LA10_: ;
						i_2 += ((NI) 1);
					} LA6: ;
				}
			}
		}
	}
	break;
	default:
	{
		result = NIM_FALSE;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasImportStmt_reorder_678)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* n) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T5_;
		if (!((*n).hIS < ((NI) 0))) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = hasImportStmt_reorder_674((*n).pnode);
		(*n).hIS = T5_;
	}
	LA3_: ;
	result = (((*n).hIS) != 0);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuoted_reorder_694)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 53))) goto LA3_;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	LA3_: ;
	{
		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
		a = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen_ast_3190(n);
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA8;
					i = i_2;
					a = (*n)._kind_6.sons->data[i];
					{
						NIM_BOOL T11_;
						T11_ = (NIM_BOOL)0;
						T11_ = hasAccQuoted_reorder_694(a);
						if (!T11_) goto LA12_;
						result = NIM_TRUE;
						goto BeforeRet_;
					}
					LA12_: ;
					i_2 += ((NI) 1);
				} LA8: ;
			}
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuotedDef_reorder_707)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
	{
		result = hasAccQuoted_reorder_694((*n)._kind_6.sons->data[((NI) 0)]);
	}
	break;
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 93):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
	{
		{
			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
			a = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
			{
				NI i;
				NI colontmp_;
				NI i_2;
				i = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen_ast_3190(n);
				i_2 = ((NI) 0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA6;
						i = i_2;
						a = (*n)._kind_6.sons->data[i];
						{
							NIM_BOOL T9_;
							T9_ = (NIM_BOOL)0;
							T9_ = hasAccQuotedDef_reorder_707(a);
							if (!T9_) goto LA10_;
							result = NIM_TRUE;
							goto BeforeRet_;
						}
						LA10_: ;
						i_2 += ((NI) 1);
					} LA6: ;
				}
			}
		}
	}
	break;
	default:
	{
		result = NIM_FALSE;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasAccQuotedDef_reorder_712)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* n) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T5_;
		if (!((*n).hAQ < ((NI) 0))) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = hasAccQuotedDef_reorder_707((*n).pnode);
		(*n).hAQ = T5_;
	}
	LA3_: ;
	result = (((*n).hAQ) != 0);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, intersects_reorder_737)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s1, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s2) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		NI a;
		a = (NI)0;
		{
			if (!((*s1).elems <= ((NI) 34))) goto LA4_;
			{
				NI i;
				NI i_2;
				i = (NI)0;
				i_2 = ((NI) 0);
				{
					while (1) {
						if (!(i_2 < (*s1).elems)) goto LA8;
						i = i_2;
						a = (*s1).a[(i)- 0];
						{
							NIM_BOOL T11_;
							T11_ = (NIM_BOOL)0;
							T11_ = contains_astalgo_3496(s2, a);
							if (!T11_) goto LA12_;
							result = NIM_TRUE;
							goto BeforeRet_;
						}
						LA12_: ;
						i_2 += ((NI) 1);
					} LA8: ;
				}
			}
		}
		goto LA2_;
		LA4_: ;
		{
			tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
			r = (*s1).head;
			{
				while (1) {
					NI i_3;
					if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA16;
					i_3 = ((NI) 0);
					{
						while (1) {
							NU w;
							NI j;
							if (!(i_3 <= ((NI) 15))) goto LA18;
							w = (*r).bits[(i_3)- 0];
							j = ((NI) 0);
							{
								while (1) {
									if (!!((w == ((NU) 0)))) goto LA20;
									{
										NI T25_;
										if (!!(((NU)(w & ((NU) 1)) == ((NU) 0)))) goto LA23_;
										T25_ = (NI)0;
										T25_ = pluspercent__system_696((NI)((NU32)(i_3) << (NU32)(((NI) 5))), j);
										a = (NI)((NI)((NU32)((*r).key) << (NU32)(((NI) 9))) | T25_);
										{
											NIM_BOOL T28_;
											T28_ = (NIM_BOOL)0;
											T28_ = contains_astalgo_3496(s2, a);
											if (!T28_) goto LA29_;
											result = NIM_TRUE;
											goto BeforeRet_;
										}
										LA29_: ;
									}
									LA23_: ;
									j += ((NI) 1);
									w = (NU)((NU32)(w) >> (NU32)(((NI) 1)));
								} LA20: ;
							}
							i_3 += ((NI) 1);
						} LA18: ;
					}
					r = (*r).next;
				} LA16: ;
			}
		}
		LA2_: ;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__76wc9cnTOK9c6epudv8uYE0w*, buildGraph_reorder_751)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySequence__xETHJjQFDm9cBUp9crgqzgZQ* deps) {
	tySequence__76wc9cnTOK9c6epudv8uYE0w* result;
	NI T1_;
	result = (tySequence__76wc9cnTOK9c6epudv8uYE0w*)0;
	T1_ = (deps ? deps->Sup.len : 0);
	result = (tySequence__76wc9cnTOK9c6epudv8uYE0w*)nimNewSeqOfCap((&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_), ((NI) (T1_)));
	{
		NI i;
		NI colontmp_;
		NI T3_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		T3_ = (deps ? deps->Sup.len : 0);
		colontmp_ = T3_;
		i_2 = ((NI) 0);
		{
			while (1) {
				tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* T6_;
				NI T7_;
				if (!(i_2 < colontmp_)) goto LA5;
				i = i_2;
				T6_ = (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*)0;
				T6_ = newDepN_reorder_26(i, (*n)._kind_6.sons->data[i]);
				result = (tySequence__76wc9cnTOK9c6epudv8uYE0w*) incrSeqV3((TGenericSeq*)(result), (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_));
				T7_ = result->Sup.len++;
				asgnRef((void**) (&result->data[T7_]), T6_);
				i_2 += ((NI) 1);
			} LA5: ;
		}
	}
	{
		NI i_3;
		NI colontmp__2;
		NI T9_;
		NI i_4;
		i_3 = (NI)0;
		colontmp__2 = (NI)0;
		T9_ = (deps ? deps->Sup.len : 0);
		colontmp__2 = T9_;
		i_4 = ((NI) 0);
		{
			while (1) {
				tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* ni;
				tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA uses;
				NIM_BOOL niHasBody;
				NIM_BOOL niHasCmd;
				if (!(i_4 < colontmp__2)) goto LA11;
				i_3 = i_4;
				ni = result->data[i_3];
				nimZeroMem((void*)(&uses), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
				nimCopyMem((void*)(&uses), (NIM_CONST void*)(&deps->data[i_3].Field1), sizeof(uses));
				niHasBody = hasBody_reorder_731(ni);
				niHasCmd = hasCommand_reorder_688(ni);
				{
					NI j;
					NI colontmp__3;
					NI T13_;
					NI i_5;
					j = (NI)0;
					colontmp__3 = (NI)0;
					T13_ = (deps ? deps->Sup.len : 0);
					colontmp__3 = T13_;
					i_5 = ((NI) 0);
					{
						while (1) {
							if (!(i_5 < colontmp__3)) goto LA15;
							j = i_5;
							{
								tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* nj;
								tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA declares;
								{
									if (!(i_3 == j)) goto LA19_;
									goto LA16;
								}
								LA19_: ;
								nj = result->data[j];
								nimZeroMem((void*)(&declares), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
								nimCopyMem((void*)(&declares), (NIM_CONST void*)(&deps->data[j].Field0), sizeof(declares));
								{
									NIM_BOOL T23_;
									NIM_BOOL T24_;
									NI T29_;
									T23_ = (NIM_BOOL)0;
									T24_ = (NIM_BOOL)0;
									T24_ = (j < i_3);
									if (!(T24_)) goto LA25_;
									T24_ = hasCommand_reorder_688(nj);
									LA25_: ;
									T23_ = T24_;
									if (!(T23_)) goto LA26_;
									T23_ = niHasCmd;
									LA26_: ;
									if (!T23_) goto LA27_;
									asgnRef((void**) (&(*ni).kids), (tySequence__76wc9cnTOK9c6epudv8uYE0w*) incrSeqV3((TGenericSeq*)((*ni).kids), (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_)));
									T29_ = (*ni).kids->Sup.len++;
									asgnRef((void**) (&(*ni).kids->data[T29_]), nj);
								}
								goto LA21_;
								LA27_: ;
								{
									NIM_BOOL T31_;
									NI T35_;
									T31_ = (NIM_BOOL)0;
									T31_ = (j < i_3);
									if (!(T31_)) goto LA32_;
									T31_ = hasImportStmt_reorder_678(nj);
									LA32_: ;
									if (!T31_) goto LA33_;
									asgnRef((void**) (&(*ni).kids), (tySequence__76wc9cnTOK9c6epudv8uYE0w*) incrSeqV3((TGenericSeq*)((*ni).kids), (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_)));
									T35_ = (*ni).kids->Sup.len++;
									asgnRef((void**) (&(*ni).kids->data[T35_]), nj);
								}
								goto LA21_;
								LA33_: ;
								{
									NIM_BOOL T37_;
									NIM_BOOL T38_;
									NI T43_;
									T37_ = (NIM_BOOL)0;
									T38_ = (NIM_BOOL)0;
									T38_ = (j < i_3);
									if (!(T38_)) goto LA39_;
									T38_ = niHasBody;
									LA39_: ;
									T37_ = T38_;
									if (!(T37_)) goto LA40_;
									T37_ = hasAccQuotedDef_reorder_712(nj);
									LA40_: ;
									if (!T37_) goto LA41_;
									asgnRef((void**) (&(*ni).kids), (tySequence__76wc9cnTOK9c6epudv8uYE0w*) incrSeqV3((TGenericSeq*)((*ni).kids), (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_)));
									T43_ = (*ni).kids->Sup.len++;
									asgnRef((void**) (&(*ni).kids->data[T43_]), nj);
								}
								goto LA21_;
								LA41_: ;
								{
									NIM_BOOL T45_;
									NIM_BOOL T46_;
									NIM_BOOL T47_;
									NIM_BOOL T50_;
									NI T54_;
									T45_ = (NIM_BOOL)0;
									T46_ = (NIM_BOOL)0;
									T47_ = (NIM_BOOL)0;
									T47_ = (j < i_3);
									if (!(T47_)) goto LA48_;
									T47_ = niHasBody;
									LA48_: ;
									T46_ = T47_;
									if (!(T46_)) goto LA49_;
									T50_ = (NIM_BOOL)0;
									T50_ = hasBody_reorder_731(nj);
									T46_ = !(T50_);
									LA49_: ;
									T45_ = T46_;
									if (!(T45_)) goto LA51_;
									T45_ = intersects_reorder_737((&deps->data[i_3].Field0), (&declares));
									LA51_: ;
									if (!T45_) goto LA52_;
									asgnRef((void**) (&(*ni).kids), (tySequence__76wc9cnTOK9c6epudv8uYE0w*) incrSeqV3((TGenericSeq*)((*ni).kids), (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_)));
									T54_ = (*ni).kids->Sup.len++;
									asgnRef((void**) (&(*ni).kids->data[T54_]), nj);
								}
								goto LA21_;
								LA52_: ;
								{
									{
										NI d;
										d = (NI)0;
										{
											if (!(declares.elems <= ((NI) 34))) goto LA59_;
											{
												NI i_6;
												NI i_7;
												i_6 = (NI)0;
												i_7 = ((NI) 0);
												{
													while (1) {
														if (!(i_7 < declares.elems)) goto LA63;
														i_6 = i_7;
														d = declares.a[(i_6)- 0];
														{
															NIM_BOOL T66_;
															NI T69_;
															T66_ = (NIM_BOOL)0;
															T66_ = contains_astalgo_3496((&uses), d);
															if (!T66_) goto LA67_;
															asgnRef((void**) (&(*ni).kids), (tySequence__76wc9cnTOK9c6epudv8uYE0w*) incrSeqV3((TGenericSeq*)((*ni).kids), (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_)));
															T69_ = (*ni).kids->Sup.len++;
															asgnRef((void**) (&(*ni).kids->data[T69_]), nj);
														}
														LA67_: ;
														i_7 += ((NI) 1);
													} LA63: ;
												}
											}
										}
										goto LA57_;
										LA59_: ;
										{
											tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* r;
											r = declares.head;
											{
												while (1) {
													NI i_8;
													if (!!((r == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA72;
													i_8 = ((NI) 0);
													{
														while (1) {
															NU w;
															NI j_2;
															if (!(i_8 <= ((NI) 15))) goto LA74;
															w = (*r).bits[(i_8)- 0];
															j_2 = ((NI) 0);
															{
																while (1) {
																	if (!!((w == ((NU) 0)))) goto LA76;
																	{
																		NI T81_;
																		if (!!(((NU)(w & ((NU) 1)) == ((NU) 0)))) goto LA79_;
																		T81_ = (NI)0;
																		T81_ = pluspercent__system_696((NI)((NU32)(i_8) << (NU32)(((NI) 5))), j_2);
																		d = (NI)((NI)((NU32)((*r).key) << (NU32)(((NI) 9))) | T81_);
																		{
																			NIM_BOOL T84_;
																			NI T87_;
																			T84_ = (NIM_BOOL)0;
																			T84_ = contains_astalgo_3496((&uses), d);
																			if (!T84_) goto LA85_;
																			asgnRef((void**) (&(*ni).kids), (tySequence__76wc9cnTOK9c6epudv8uYE0w*) incrSeqV3((TGenericSeq*)((*ni).kids), (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_)));
																			T87_ = (*ni).kids->Sup.len++;
																			asgnRef((void**) (&(*ni).kids->data[T87_]), nj);
																		}
																		LA85_: ;
																	}
																	LA79_: ;
																	j_2 += ((NI) 1);
																	w = (NU)((NU32)(w) >> (NU32)(((NI) 1)));
																} LA76: ;
															}
															i_8 += ((NI) 1);
														} LA74: ;
													}
													r = (*r).next;
												} LA72: ;
											}
										}
										LA57_: ;
									}
								}
								LA21_: ;
							} LA16: ;
							i_5 += ((NI) 1);
						} LA15: ;
					}
				}
				i_4 += ((NI) 1);
			} LA11: ;
		}
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__76wc9cnTOK9c6epudv8uYE0w*, newSeq_reorder_469)(NI len) {
	tySequence__76wc9cnTOK9c6epudv8uYE0w* result;
	result = (tySequence__76wc9cnTOK9c6epudv8uYE0w*)0;
	result = (tySequence__76wc9cnTOK9c6epudv8uYE0w*) newSeq((&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_), len);
	return result;
}
static N_INLINE(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*, pop_reorder_868)(tySequence__76wc9cnTOK9c6epudv8uYE0w** s) {
	tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* result;
	NI L;
	NI T1_;
	result = (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*)0;
	T1_ = ((*s) ? (*s)->Sup.len : 0);
	L = (NI)(T1_ - ((NI) 1));
	result = (*s)->data[L];
	unsureAsgnRef((void**) (&(*s)), (tySequence__76wc9cnTOK9c6epudv8uYE0w*) setLengthSeqV2(&((*s))->Sup, (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_), ((NI) (L))));
	return result;
}
static N_NIMCALL(void, Marker_tySequence__AK3cQuijuQxFGdWA8l9a9aYA)(void* p, NI op) {
	tySequence__AK3cQuijuQxFGdWA8l9a9aYA* a;
	NI T1_;
	a = (tySequence__AK3cQuijuQxFGdWA8l9a9aYA*)p;
	T1_ = (NI)0;
	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
	nimGCvisit((void*)a->data[T1_], op);
	}
}
N_LIB_PRIVATE N_NIMCALL(void, strongConnect_reorder_828)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** v, NI* idx, tySequence__76wc9cnTOK9c6epudv8uYE0w** s, tySequence__AK3cQuijuQxFGdWA8l9a9aYA** res) {
	NI T1_;
	(*(*v)).idx = (*idx);
	(*(*v)).lowLink = (*idx);
	(*idx) += ((NI) 1);
	unsureAsgnRef((void**) (&(*s)), (tySequence__76wc9cnTOK9c6epudv8uYE0w*) incrSeqV3((TGenericSeq*)((*s)), (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_)));
	T1_ = (*s)->Sup.len++;
	asgnRef((void**) (&(*s)->data[T1_]), (*v));
	(*(*v)).onStack = NIM_TRUE;
	{
		tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** w;
		NI i;
		NI L;
		NI T3_;
		w = (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q**)0;
		i = ((NI) 0);
		T3_ = ((*(*v)).kids ? (*(*v)).kids->Sup.len : 0);
		L = T3_;
		{
			while (1) {
				if (!(i < L)) goto LA5;
				w = &(*(*v)).kids->data[i];
				{
					if (!((*(*w)).idx < ((NI) 0))) goto LA8_;
					strongConnect_reorder_828(w, idx, s, res);
					(*(*v)).lowLink = (((*(*v)).lowLink <= (*(*w)).lowLink) ? (*(*v)).lowLink : (*(*w)).lowLink);
				}
				goto LA6_;
				LA8_: ;
				{
					if (!(*(*w)).onStack) goto LA11_;
					(*(*v)).lowLink = (((*(*v)).lowLink <= (*(*w)).idx) ? (*(*v)).lowLink : (*(*w)).idx);
				}
				goto LA6_;
				LA11_: ;
				LA6_: ;
				i += ((NI) 1);
			} LA5: ;
		}
	}
	{
		tySequence__76wc9cnTOK9c6epudv8uYE0w* comp;
		NI T24_;
		if (!((*(*v)).lowLink == (*(*v)).idx)) goto LA15_;
		comp = newSeq_reorder_469(((NI) 0));
		{
			while (1) {
				tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* w_2;
				NI T19_;
				w_2 = pop_reorder_868(s);
				(*w_2).onStack = NIM_FALSE;
				comp = (tySequence__76wc9cnTOK9c6epudv8uYE0w*) incrSeqV3((TGenericSeq*)(comp), (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_));
				T19_ = comp->Sup.len++;
				asgnRef((void**) (&comp->data[T19_]), w_2);
				{
					if (!((*w_2).id == (*(*v)).id)) goto LA22_;
					goto LA17;
				}
				LA22_: ;
			}
		} LA17: ;
		unsureAsgnRef((void**) (&(*res)), (tySequence__AK3cQuijuQxFGdWA8l9a9aYA*) incrSeqV3((TGenericSeq*)((*res)), (&NTIseqLseqLdepnTT__AK3cQuijuQxFGdWA8l9a9aYA_)));
		T24_ = (*res)->Sup.len++;
		genericSeqAssign((&(*res)->data[T24_]), comp, (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_));
	}
	LA15_: ;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__AK3cQuijuQxFGdWA8l9a9aYA*, getStrongComponents_reorder_907)(tySequence__76wc9cnTOK9c6epudv8uYE0w** g) {
	tySequence__AK3cQuijuQxFGdWA8l9a9aYA* result;
	tySequence__76wc9cnTOK9c6epudv8uYE0w* s;
	NI idx;
	result = (tySequence__AK3cQuijuQxFGdWA8l9a9aYA*)0;
	s = (tySequence__76wc9cnTOK9c6epudv8uYE0w*)0;
	idx = ((NI) 0);
	{
		tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** v;
		NI i;
		NI L;
		NI T2_;
		v = (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q**)0;
		i = ((NI) 0);
		T2_ = ((*g) ? (*g)->Sup.len : 0);
		L = T2_;
		{
			while (1) {
				if (!(i < L)) goto LA4;
				v = &(*g)->data[i];
				{
					if (!((*(*v)).idx < ((NI) 0))) goto LA7_;
					strongConnect_reorder_828(v, (&idx), (&s), (&result));
				}
				LA7_: ;
				i += ((NI) 1);
			} LA4: ;
		}
	}
	return result;
}
static N_INLINE(NI, star__pureZalgorithm_8)(NI x, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
	NI result;
	NI y;
	result = (NI)0;
	y = (NI)(order - ((NI) 1));
	result = (NI)((NI)(x ^ y) - y);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt_reorder_502)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** a, NI aLen_0, tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** b, NI bLen_0, NI lo, NI m, NI hi, tyProc__WrsL3l9cLQ31FpOtAGcGovA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
	NI j;
	NI bb;
	NI i;
	NI k;
{	{
		NI T3_;
		NI T4_;
		T3_ = (NI)0;
		T3_ = cmp.ClE_0? cmp.ClP_0(a[m], a[(NI)(m + ((NI) 1))], cmp.ClE_0):((TM__wGDfi9c1BEw7VBzRnDQgLpQ_9)(cmp.ClP_0))(a[m], a[(NI)(m + ((NI) 1))]);
		T4_ = (NI)0;
		T4_ = star__pureZalgorithm_8(T3_, order);
		if (!(T4_ <= ((NI) 0))) goto LA5_;
		goto BeforeRet_;
	}
	LA5_: ;
	j = lo;
	bb = ((NI) 0);
	{
		while (1) {
			if (!(j <= m)) goto LA8;
			unsureAsgnRef((void**) (&b[bb]), a[j]);
			bb += ((NI) 1);
			j += ((NI) 1);
		} LA8: ;
	}
	i = ((NI) 0);
	k = lo;
	{
		while (1) {
			NIM_BOOL T11_;
			T11_ = (NIM_BOOL)0;
			T11_ = (k < j);
			if (!(T11_)) goto LA12_;
			T11_ = (j <= hi);
			LA12_: ;
			if (!T11_) goto LA10;
			{
				NI T15_;
				NI T16_;
				T15_ = (NI)0;
				T15_ = cmp.ClE_0? cmp.ClP_0(b[i], a[j], cmp.ClE_0):((TM__wGDfi9c1BEw7VBzRnDQgLpQ_10)(cmp.ClP_0))(b[i], a[j]);
				T16_ = (NI)0;
				T16_ = star__pureZalgorithm_8(T15_, order);
				if (!(T16_ <= ((NI) 0))) goto LA17_;
				unsureAsgnRef((void**) (&a[k]), b[i]);
				i += ((NI) 1);
			}
			goto LA13_;
			LA17_: ;
			{
				unsureAsgnRef((void**) (&a[k]), a[j]);
				j += ((NI) 1);
			}
			LA13_: ;
			k += ((NI) 1);
		} LA10: ;
	}
	{
		while (1) {
			if (!(k < j)) goto LA21;
			unsureAsgnRef((void**) (&a[k]), b[i]);
			k += ((NI) 1);
			i += ((NI) 1);
		} LA21: ;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, sort_reorder_485)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** a, NI aLen_0, tyProc__WrsL3l9cLQ31FpOtAGcGovA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
	NI n;
	tySequence__76wc9cnTOK9c6epudv8uYE0w* b;
	NI s;
	n = aLen_0;
	b = newSeq_reorder_469(((NI) ((NI)(n / ((NI) 2)))));
	s = ((NI) 1);
	{
		while (1) {
			NI m;
			if (!(s < n)) goto LA2;
			m = (NI)((NI)(n - ((NI) 1)) - s);
			{
				while (1) {
					if (!(((NI) 0) <= m)) goto LA4;
					mergeAlt_reorder_502(a, aLen_0, b->data, (b ? b->Sup.len : 0), (((NI)((NI)(m - s) + ((NI) 1)) >= ((NI) 0)) ? (NI)((NI)(m - s) + ((NI) 1)) : ((NI) 0)), m, (NI)(m + s), cmp, order);
					m -= (NI)(s * ((NI) 2));
				} LA4: ;
			}
			s = (NI)(s * ((NI) 2));
		} LA2: ;
	}
}
N_LIB_PRIVATE N_NIMCALL(tySequence__76wc9cnTOK9c6epudv8uYE0w*, sorted_reorder_457)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** a, NI aLen_0, tyProc__WrsL3l9cLQ31FpOtAGcGovA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
	tySequence__76wc9cnTOK9c6epudv8uYE0w* result;
	result = (tySequence__76wc9cnTOK9c6epudv8uYE0w*)0;
	result = newSeq_reorder_469(((NI) (aLen_0)));
	{
		NI i;
		NI colontmp_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = (aLen_0-1);
		res = ((NI) 0);
		{
			while (1) {
				if (!(res <= colontmp_)) goto LA3;
				i = res;
				asgnRef((void**) (&result->data[i]), a[i]);
				res += ((NI) 1);
			} LA3: ;
		}
	}
	sort_reorder_485(result->data, (result ? result->Sup.len : 0), cmp, order);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, colonanonymous__reorder_439)(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* xX60gensym51_, tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* yX60gensym51_) {
	NI result;
	tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q* it;
	NI aX60gensym51_;
	NI bX60gensym51_;
	result = (NI)0;
	it = xX60gensym51_;
	aX60gensym51_ = (*it).id;
	it = yX60gensym51_;
	bX60gensym51_ = (*it).id;
	result = cmp_system_7422(aX60gensym51_, bX60gensym51_);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, haveSameKind_reorder_358)(tySequence__76wc9cnTOK9c6epudv8uYE0w* dns) {
	NIM_BOOL result;
	tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
{	result = (NIM_BOOL)0;
	result = NIM_TRUE;
	kind = (*(*dns->data[((NI) 0)]).pnode).kind;
	{
		tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** dn;
		NI i;
		NI L;
		NI T2_;
		dn = (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q**)0;
		i = ((NI) 0);
		T2_ = (dns ? dns->Sup.len : 0);
		L = T2_;
		{
			while (1) {
				if (!(i < L)) goto LA4;
				dn = &dns->data[i];
				{
					if (!!(((*(*(*dn)).pnode).kind == kind))) goto LA7_;
					result = NIM_FALSE;
					goto BeforeRet_;
				}
				LA7_: ;
				i += ((NI) 1);
			} LA4: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, mergeSections_reorder_395)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tySequence__AK3cQuijuQxFGdWA8l9a9aYA* comps, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* res) {
	{
		tySequence__76wc9cnTOK9c6epudv8uYE0w** c;
		NI i;
		NI L;
		NI T2_;
		c = (tySequence__76wc9cnTOK9c6epudv8uYE0w**)0;
		i = ((NI) 0);
		T2_ = (comps ? comps->Sup.len : 0);
		L = T2_;
		{
			while (1) {
				if (!(i < L)) goto LA4;
				c = (&comps->data[i]);
				{
					NI T7_;
					T7_ = ((*c) ? (*c)->Sup.len : 0);
					if (!(T7_ == ((NI) 1))) goto LA8_;
					add_ast_4796(res, (*(*c)->data[((NI) 0)]).pnode);
				}
				goto LA5_;
				LA8_: ;
				{
					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fstn;
					tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
					tySequence__76wc9cnTOK9c6epudv8uYE0w* cs;
					tySequence__76wc9cnTOK9c6epudv8uYE0w* resultX60gensym51_;
					tyProc__WrsL3l9cLQ31FpOtAGcGovA T11_;
					fstn = (*(*c)->data[((NI) 0)]).pnode;
					kind = (*fstn).kind;
					nimZeroMem((void*)(&T11_), sizeof(tyProc__WrsL3l9cLQ31FpOtAGcGovA));
					T11_.ClP_0 = ((TM__wGDfi9c1BEw7VBzRnDQgLpQ_11) (colonanonymous__reorder_439)); T11_.ClE_0 = NIM_NIL;
					resultX60gensym51_ = sorted_reorder_457((*c)->data, ((*c) ? (*c)->Sup.len : 0), T11_, ((tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA) 1));
					cs = resultX60gensym51_;
					{
						NIM_BOOL T14_;
						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* sn;
						T14_ = (NIM_BOOL)0;
						T14_ = (kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98) || kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101));
						if (!(T14_)) goto LA15_;
						T14_ = haveSameKind_reorder_358(cs);
						LA15_: ;
						if (!T14_) goto LA16_;
						sn = newNode_ast_3331(kind);
						{
							tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q** dn;
							NI i_2;
							NI L_2;
							NI T19_;
							dn = (tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q**)0;
							i_2 = ((NI) 0);
							T19_ = (cs ? cs->Sup.len : 0);
							L_2 = T19_;
							{
								while (1) {
									if (!(i_2 < L_2)) goto LA21;
									dn = &cs->data[i_2];
									add_ast_4796(sn, (*(*(*dn)).pnode)._kind_6.sons->data[((NI) 0)]);
									i_2 += ((NI) 1);
								} LA21: ;
							}
						}
						add_ast_4796(res, sn);
					}
					goto LA12_;
					LA16_: ;
					{
						NimStringDesc* wmsg;
						NI i_3;
						wmsg = copyString(((NimStringDesc*) &TM__wGDfi9c1BEw7VBzRnDQgLpQ_12));
						liMessage_msgs_1118(conf, (*(*cs->data[((NI) 0)]).pnode).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 67), wmsg, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__wGDfi9c1BEw7VBzRnDQgLpQ_13, NIM_FALSE);
						i_3 = ((NI) 0);
						{
							while (1) {
								NI T25_;
								T25_ = (cs ? cs->Sup.len : 0);
								if (!(i_3 < T25_)) goto LA24;
								{
									tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw ckind;
									tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* sn_2;
									if (!((*(*cs->data[i_3]).pnode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98) || (*(*cs->data[i_3]).pnode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101))) goto LA28_;
									ckind = (*(*cs->data[i_3]).pnode).kind;
									sn_2 = newNode_ast_3331(ckind);
									add_ast_4796(sn_2, (*(*cs->data[i_3]).pnode)._kind_6.sons->data[((NI) 0)]);
									i_3 += ((NI) 1);
									{
										while (1) {
											NIM_BOOL T32_;
											NI T33_;
											T32_ = (NIM_BOOL)0;
											T33_ = (cs ? cs->Sup.len : 0);
											T32_ = (i_3 < T33_);
											if (!(T32_)) goto LA34_;
											T32_ = ((*(*cs->data[i_3]).pnode).kind == ckind);
											LA34_: ;
											if (!T32_) goto LA31;
											add_ast_4796(sn_2, (*(*cs->data[i_3]).pnode)._kind_6.sons->data[((NI) 0)]);
											i_3 += ((NI) 1);
										} LA31: ;
									}
									add_ast_4796(res, sn_2);
								}
								goto LA26_;
								LA28_: ;
								{
									add_ast_4796(res, (*cs->data[i_3]).pnode);
									i_3 += ((NI) 1);
								}
								LA26_: ;
							} LA24: ;
						}
					}
					LA12_: ;
				}
				LA5_: ;
				i += ((NI) 1);
			} LA4: ;
		}
	}
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, reorder_reorder_930)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module) {
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
	tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA includedFiles;
	NimStringDesc* mpath;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2;
	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T6_;
	tySequence__xETHJjQFDm9cBUp9crgqzgZQ* deps;
	NI T7_;
	tySequence__76wc9cnTOK9c6epudv8uYE0w* g;
	tySequence__AK3cQuijuQxFGdWA8l9a9aYA* comps;
{	result = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = hasForbiddenPragma_reorder_916(n);
		if (!T3_) goto LA4_;
		result = n;
		goto BeforeRet_;
	}
	LA4_: ;
	nimZeroMem((void*)(&includedFiles), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
	initIntSet_pureZcollectionsZintsets_238((&includedFiles));
	mpath = toFullPath_msgs_538((*graph).config, ((NI32) ((*module).position)));
	T6_ = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*)0;
	T6_ = expandIncludes_reorder_236(graph, module, n, mpath, (&includedFiles));
	n_2 = splitSections_reorder_326(T6_);
	result = newNodeI_ast_3355(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n_2).info);
	T7_ = (NI)0;
	T7_ = len_ast_3197(n_2);
	deps = newSeq_reorder_942(((NI) (T7_)));
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len_ast_3197(n_2);
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA10;
				i = i_2;
				initIntSet_pureZcollectionsZintsets_238((&deps->data[i].Field0));
				initIntSet_pureZcollectionsZintsets_238((&deps->data[i].Field1));
				computeDeps_reorder_99((*graph).cache, (*n_2)._kind_6.sons->data[i], (&deps->data[i].Field0), (&deps->data[i].Field1), NIM_TRUE);
				i_2 += ((NI) 1);
			} LA10: ;
		}
	}
	g = buildGraph_reorder_751(n_2, deps);
	comps = getStrongComponents_reorder_907((&g));
	mergeSections_reorder_395((*graph).config, comps, result);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, compiler_reorderDatInit000)(void) {
static TNimNode* TM__wGDfi9c1BEw7VBzRnDQgLpQ_6_2[2];
static TNimNode* TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[10];
static TNimNode TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[14];
NTILintset_intsetT__jDxNBe0TmdfztixwxnRrgQ_.size = sizeof(tyTuple__jDxNBe0TmdfztixwxnRrgQ);
NTILintset_intsetT__jDxNBe0TmdfztixwxnRrgQ_.align = NIM_ALIGNOF(tyTuple__jDxNBe0TmdfztixwxnRrgQ);
NTILintset_intsetT__jDxNBe0TmdfztixwxnRrgQ_.kind = 18;
NTILintset_intsetT__jDxNBe0TmdfztixwxnRrgQ_.base = 0;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_6_2[0] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[1];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[1].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[1].offset = offsetof(tyTuple__jDxNBe0TmdfztixwxnRrgQ, Field0);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[1].typ = (&NTIpackedset__IhxwDBRi51nGrosBGFKcsA_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[1].name = "Field0";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_6_2[1] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[2];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[2].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[2].offset = offsetof(tyTuple__jDxNBe0TmdfztixwxnRrgQ, Field1);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[2].typ = (&NTIpackedset__IhxwDBRi51nGrosBGFKcsA_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[2].name = "Field1";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[0].len = 2; TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[0].kind = 2; TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[0].sons = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_6_2[0];
NTILintset_intsetT__jDxNBe0TmdfztixwxnRrgQ_.node = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[0];
NTIseqLLintset_intsetTT__xETHJjQFDm9cBUp9crgqzgZQ_.size = sizeof(tySequence__xETHJjQFDm9cBUp9crgqzgZQ*);
NTIseqLLintset_intsetTT__xETHJjQFDm9cBUp9crgqzgZQ_.align = NIM_ALIGNOF(tySequence__xETHJjQFDm9cBUp9crgqzgZQ*);
NTIseqLLintset_intsetTT__xETHJjQFDm9cBUp9crgqzgZQ_.kind = 24;
NTIseqLLintset_intsetTT__xETHJjQFDm9cBUp9crgqzgZQ_.base = (&NTILintset_intsetT__jDxNBe0TmdfztixwxnRrgQ_);
NTIseqLLintset_intsetTT__xETHJjQFDm9cBUp9crgqzgZQ_.marker = Marker_tySequence__xETHJjQFDm9cBUp9crgqzgZQ;
NTIdepn58objecttype__eVONEEaK4II8kv8La51d2Q_.size = sizeof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q);
NTIdepn58objecttype__eVONEEaK4II8kv8La51d2Q_.align = NIM_ALIGNOF(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q);
NTIdepn58objecttype__eVONEEaK4II8kv8La51d2Q_.kind = 18;
NTIdepn58objecttype__eVONEEaK4II8kv8La51d2Q_.base = 0;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[0] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[4];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[4].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[4].offset = offsetof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q, pnode);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[4].typ = (&NTIpnode__fKfcLzXYiz5jNu3NH3Tv8Q_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[4].name = "pnode";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[1] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[5];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[5].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[5].offset = offsetof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q, id);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[5].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[5].name = "id";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[2] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[6];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[6].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[6].offset = offsetof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q, idx);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[6].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[6].name = "idx";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[3] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[7];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[7].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[7].offset = offsetof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q, lowLink);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[7].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[7].name = "lowLink";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[4] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[8];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[8].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[8].offset = offsetof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q, onStack);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[8].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[8].name = "onStack";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[5] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[9];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[9].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[9].offset = offsetof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q, kids);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[9].typ = (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[9].name = "kids";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[6] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[10];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[10].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[10].offset = offsetof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q, hAQ);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[10].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[10].name = "hAQ";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[7] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[11];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[11].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[11].offset = offsetof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q, hIS);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[11].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[11].name = "hIS";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[8] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[12];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[12].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[12].offset = offsetof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q, hB);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[12].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[12].name = "hB";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[9] = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[13];
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[13].kind = 1;
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[13].offset = offsetof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q, hCmd);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[13].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[13].name = "hCmd";
TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[3].len = 10; TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[3].kind = 2; TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[3].sons = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_8_10[0];
NTIdepn58objecttype__eVONEEaK4II8kv8La51d2Q_.node = &TM__wGDfi9c1BEw7VBzRnDQgLpQ_0[3];
NTIdepn__OiD2O9bS9cMtitswLivRUn5g_.size = sizeof(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*);
NTIdepn__OiD2O9bS9cMtitswLivRUn5g_.align = NIM_ALIGNOF(tyObject_DepNcolonObjectType___eVONEEaK4II8kv8La51d2Q*);
NTIdepn__OiD2O9bS9cMtitswLivRUn5g_.kind = 22;
NTIdepn__OiD2O9bS9cMtitswLivRUn5g_.base = (&NTIdepn58objecttype__eVONEEaK4II8kv8La51d2Q_);
NTIdepn__OiD2O9bS9cMtitswLivRUn5g_.marker = Marker_tyRef__OiD2O9bS9cMtitswLivRUn5g;
NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_.size = sizeof(tySequence__76wc9cnTOK9c6epudv8uYE0w*);
NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_.align = NIM_ALIGNOF(tySequence__76wc9cnTOK9c6epudv8uYE0w*);
NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_.kind = 24;
NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_.base = (&NTIdepn__OiD2O9bS9cMtitswLivRUn5g_);
NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_.marker = Marker_tySequence__76wc9cnTOK9c6epudv8uYE0w;
NTIseqLseqLdepnTT__AK3cQuijuQxFGdWA8l9a9aYA_.size = sizeof(tySequence__AK3cQuijuQxFGdWA8l9a9aYA*);
NTIseqLseqLdepnTT__AK3cQuijuQxFGdWA8l9a9aYA_.align = NIM_ALIGNOF(tySequence__AK3cQuijuQxFGdWA8l9a9aYA*);
NTIseqLseqLdepnTT__AK3cQuijuQxFGdWA8l9a9aYA_.kind = 24;
NTIseqLseqLdepnTT__AK3cQuijuQxFGdWA8l9a9aYA_.base = (&NTIseqLdepnT__76wc9cnTOK9c6epudv8uYE0w_);
NTIseqLseqLdepnTT__AK3cQuijuQxFGdWA8l9a9aYA_.marker = Marker_tySequence__AK3cQuijuQxFGdWA8l9a9aYA;
}

