1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 32
3 
4 #include "nimbase.h"
5 #include <string.h>
6 #undef LANGUAGE_C
7 #undef MIPSEB
8 #undef MIPSEL
9 #undef PPC
10 #undef R3000
11 #undef R4000
12 #undef i386
13 #undef linux
14 #undef mips
15 #undef near
16 #undef far
17 #undef powerpc
18 #undef unix
19 #define nimfr_(x, y)
20 #define nimln_(x, y)
21 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
22 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
23 typedef struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ;
24 typedef struct tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag;
25 typedef struct tySequence__7PsCyIDXDb8nGSU5UlS9cAA tySequence__7PsCyIDXDb8nGSU5UlS9cAA;
26 typedef struct tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA;
27 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
28 typedef struct RootObj RootObj;
29 typedef struct TNimType TNimType;
30 typedef struct TNimNode TNimNode;
31 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
32 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
33 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
34 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
35 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
36 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
37 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
38 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
39 typedef struct NimStringDesc NimStringDesc;
40 typedef struct TGenericSeq TGenericSeq;
41 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
42 typedef struct tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA;
43 typedef struct tyObject_Connection__EevFKe104MtQGkxxkLKkgg tyObject_Connection__EevFKe104MtQGkxxkLKkgg;
44 typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
45 typedef struct tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug;
46 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
47 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
48 typedef struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ tySequence__4mZLwkxT8rbt9bf3wXrXYNQ;
49 typedef struct tySequence__rQHmYk1HzcwNxKBymIFHpA tySequence__rQHmYk1HzcwNxKBymIFHpA;
50 typedef struct tySequence__XMM60DtBsc6xYsIpNANkrA tySequence__XMM60DtBsc6xYsIpNANkrA;
51 typedef struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw;
52 typedef struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg;
53 typedef struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg;
54 typedef struct tySequence__mWRMiYLthG9coLjkbElCxkw tySequence__mWRMiYLthG9coLjkbElCxkw;
55 typedef struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyObject_Table__iowAVDkco3qpbEH0z8OmkQ;
56 typedef struct tySequence__bTDCDwD2P7TodzbAefLcSw tySequence__bTDCDwD2P7TodzbAefLcSw;
57 typedef struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w;
58 typedef struct tySequence__3MPVXAHA08SszBrU4ffqEg tySequence__3MPVXAHA08SszBrU4ffqEg;
59 typedef struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw tyObject_Table__KcymdZjUsmGSK8BxmvoJgw;
60 typedef struct tySequence__YCf5zJHm4JI06qpmKwPUWg tySequence__YCf5zJHm4JI06qpmKwPUWg;
61 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
62 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
63 typedef struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ;
64 typedef struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA;
65 typedef struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ tySequence__eHqUwlHGGaPw0TDPDeL79cQ;
66 typedef struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA;
67 typedef struct tySequence__61s9cbAniKuBrdHwBhMDfQg tySequence__61s9cbAniKuBrdHwBhMDfQg;
68 typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
69 typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
70 typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
71 typedef struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA tyObject_Table__fdKWDDO1P17zvuQPReVgRA;
72 typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
73 typedef struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ;
74 typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg;
75 typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA;
76 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
77 typedef struct tySequence__s9byh6WFJ16lPMcmqdaMTHA tySequence__s9byh6WFJ16lPMcmqdaMTHA;
78 typedef struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw tyObject_Table__Ue6w4c82v7gc7t2qntTbAw;
79 typedef struct tySequence__1U9bG8RcAedEeYkQLZjVFKA tySequence__1U9bG8RcAedEeYkQLZjVFKA;
80 typedef struct tyObject_Table__G1v8c16HePOldLeucwe05Q tyObject_Table__G1v8c16HePOldLeucwe05Q;
81 typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ tySequence__fIB1rTQ55aFonoft9a9bmljQ;
82 typedef struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA;
83 typedef struct tySequence__23SMqauuRsbDANhthj9bWlA tySequence__23SMqauuRsbDANhthj9bWlA;
84 typedef struct tyObject_Table__NttoEzoiq5CiphZe81oadg tyObject_Table__NttoEzoiq5CiphZe81oadg;
85 typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA;
86 typedef struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg tyObject_Table__nagDFX4QHx0s6Fvma9blmSg;
87 typedef struct tySequence__pHNq3oXj9av2sEUdqaqeZjw tySequence__pHNq3oXj9av2sEUdqaqeZjw;
88 typedef struct tySequence__MAQKEADohlpnXTModtugbQ tySequence__MAQKEADohlpnXTModtugbQ;
89 typedef struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q;
90 typedef struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA;
91 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
92 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
93 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
94 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
95 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
96 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
97 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
98 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
99 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
100 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
101 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
102 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
103 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
104 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
105 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
106 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
107 typedef struct tySequence__u9c10b19cqoKPxYSuh3ZKtIw tySequence__u9c10b19cqoKPxYSuh3ZKtIw;
108 typedef struct tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ;
109 typedef struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA;
110 typedef struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA;
111 typedef struct tySequence__vv5mGmK03BCr5e3LTZA5Hw tySequence__vv5mGmK03BCr5e3LTZA5Hw;
112 typedef struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w;
113 typedef struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ;
114 typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA tySequence__PXIzfWocnrafGz5p3CP5LA;
115 typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA tySequence__9bAGqSvkAaFL9bWjsEPslrFA;
116 typedef struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw;
117 typedef struct tySequence__29bS0n2QNyO1R7e0qMMOvLA tySequence__29bS0n2QNyO1R7e0qMMOvLA;
118 typedef struct tySequence__b89aLriiJnVTD186H6zNIgg tySequence__b89aLriiJnVTD186H6zNIgg;
119 typedef struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg tySequence__REuPuHuSlOkZ0Q5oqzDrQg;
120 typedef struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA tySequence__I9aQmO9asXXWJ58UI9c8BCSzA;
121 typedef struct tySequence__NyaOkf8ZwxP6rkRF5TOkew tySequence__NyaOkf8ZwxP6rkRF5TOkew;
122 typedef struct tySequence__L9bOt8CaTEmIjgtuZvp6syg tySequence__L9bOt8CaTEmIjgtuZvp6syg;
123 typedef struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ tySequence__im8UB2GsZvUaQ4a1wKGWhQ;
124 typedef struct tySequence__xxnXDLpoqBo8zJzP9b1073g tySequence__xxnXDLpoqBo8zJzP9b1073g;
125 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
126 typedef struct tySequence__DfmUmNgVGnYaiV1I6227tw tySequence__DfmUmNgVGnYaiV1I6227tw;
127 typedef struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA tySequence__t8Uv4lEJ4lkuECvP9c6JMhA;
128 typedef struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg;
129 typedef struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ;
130 typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ tySequence__IHUFRsFxZNv7YydiUO2esQ;
131 typedef struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g tyObject_Table__CE4eiu6FavV1vmUiTXQ70g;
132 typedef struct tySequence__9bT7o0CflHuiE4VhmtqBPCw tySequence__9bT7o0CflHuiE4VhmtqBPCw;
133 typedef struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw;
134 typedef struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q tyObject_Table__TRm6MPqklA8EYBmBMY117Q;
135 typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ tySequence__9cnx3zXnWzeclW8Ko4oUgAQ;
136 typedef struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ;
137 typedef struct tySequence__O5RcspOP32YJ4YtU5ppxxA tySequence__O5RcspOP32YJ4YtU5ppxxA;
138 typedef struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg;
139 typedef struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ;
140 typedef struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ;
141 typedef struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg tyTuple__o67sDX0wYbEuhI9cJYAbDtg;
142 typedef struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA;
143 typedef struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg;
144 typedef struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA tySequence__ipEvhpHAmm8ZCn9bZAOdNYA;
145 typedef struct tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA;
146 typedef struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q tyTuple__9aNnDWBFMF44sfFinBpMT4Q;
147 typedef struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg;
148 typedef struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g tySequence__159bHWBGAOOs6U7OZ9cQlO0g;
149 typedef struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ tyTuple__VrD6plbUKJjYKM0lCr3hGQ;
150 typedef struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA;
151 typedef struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA tyTuple__1ZbjBgxAbnye0IFMZ6w4OA;
152 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
153 typedef struct tyTuple__rplX06U9bjhu9asm5pWdgqsA tyTuple__rplX06U9bjhu9asm5pWdgqsA;
154 typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q;
155 typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ;
156 typedef struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A;
157 typedef struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ tyTuple__3i6hlQmqrn6m7tuVN8FHjQ;
158 typedef struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw tyTuple__OJFzEczluV8Jmo9bRpBfkzw;
159 typedef struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw;
160 typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg;
161 typedef struct tyTuple__wcNatyuf8WOqAhGLhSvgiw tyTuple__wcNatyuf8WOqAhGLhSvgiw;
162 typedef struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg;
163 typedef struct tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g;
164 typedef struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ;
165 typedef struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w;
166 typedef struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q tyTuple__0q9cmhneJEKnQERTpXXdz6Q;
167 typedef struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow;
168 typedef struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg;
169 typedef struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ;
170 typedef struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA tyTuple__Q7r9caOmeWqQGZCIBHhGRUA;
171 typedef struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg;
172 typedef struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw tyTuple__XyJ8LOAZzVVXSsmt09b8uWw;
173 typedef struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA;
174 typedef struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw tySequence__vC9cvg0R8tfBaOXXi3sfMzw;
175 typedef struct tyTuple__9aoobCDZB4x41HJSOmh0mwA tyTuple__9aoobCDZB4x41HJSOmh0mwA;
176 typedef struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA tyTuple__g0Q6Qx15nK53ce9aLo7YyrA;
177 typedef struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw;
178 typedef struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw;
179 typedef struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA;
180 typedef struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ;
181 typedef struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA tyTuple__UvldbCB6B9ayi9bGYW7vJNLA;
182 typedef NU8 tySet_tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg;
183 struct tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag {
184 NI abstractTime;
185 tySequence__7PsCyIDXDb8nGSU5UlS9cAA* s;
186 tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA* graphs;
187 tySet_tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg goals;
188 NIM_BOOL unanalysableMutation;
189 NI inAsgnSource;
190 NI inConstructor;
191 NI inNoSideEffectSection;
192 NI inConditional;
193 NI inLoop;
194 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
195 tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g;
196 };
197 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
198 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
199 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
200 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
201 struct TNimType {
202 NI size;
203 NI align;
204 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
205 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
206 TNimType* base;
207 TNimNode* node;
208 void* finalizer;
209 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
210 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
211 };
212 struct RootObj {
213 TNimType* m_type;
214 };
215 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
216 NI32 module;
217 NI32 item;
218 };
219 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
220   RootObj Sup;
221 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
222 };
223 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
224 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
225 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
226 NU16 line;
227 NI16 col;
228 NI32 fileIndex;
229 };
230 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
231 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
232 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
233 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
234 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
235 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
236 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
237 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
238 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
239 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
240 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
241 };
242 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
243   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
244 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
245 union{
246 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
247 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
248 } _kind_1;
249 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
250 NI bitsize;
251 NI alignment;
252 } _kind_2;
253 };
254 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
255 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
256 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
257 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
258 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
259 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
260 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
261 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
262 NI position;
263 NI offset;
264 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
265 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
266 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
267 };
268 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
269 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
270 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
271 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
272   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
273 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
274 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
275 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
276 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
277 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
278 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
279 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
280 NI64 size;
281 NI16 align;
282 NI16 paddingAtEnd;
283 NI16 lockLevel;
284 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
285 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
286 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
287 };
288 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
289 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
290 struct TGenericSeq {
291 NI len;
292 NI reserved;
293 };
294 struct NimStringDesc {
295   TGenericSeq Sup;
296 NIM_CHAR data[SEQ_DECL_SIZE];
297 };
298 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
299 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
300 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
301 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
302 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
303 union{
304 struct {NI64 intVal;
305 } _kind_1;
306 struct {NF floatVal;
307 } _kind_2;
308 struct {NimStringDesc* strVal;
309 } _kind_3;
310 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
311 } _kind_4;
312 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
313 } _kind_5;
314 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
315 } _kind_6;
316 };
317 };
318 typedef NU8 tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA;
319 struct tyObject_Connection__EevFKe104MtQGkxxkLKkgg {
320 tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA kind;
321 union{
322 NI parent;
323 NI graphIndex;
324 };
325 };
326 typedef NU8 tySet_tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ;
327 struct tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA {
328 tyObject_Connection__EevFKe104MtQGkxxkLKkgg con;
329 tySet_tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ flags;
330 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
331 NI reassignedTo;
332 NI aliveStart;
333 NI aliveEnd;
334 tySequence__qwqHTkRvwhrRyENtudHQ7g* borrowsFrom;
335 };
336 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
337 struct TNimNode {
338 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
339 NI offset;
340 TNimType* typ;
341 NCSTRING name;
342 NI len;
343 TNimNode** sons;
344 };
345 typedef NU8 tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ;
346 typedef NU8 tySet_tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw;
347 struct tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug {
348 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param;
349 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q mutatedHere;
350 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q connectedVia;
351 tySet_tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw flags;
352 NI maxMutation;
353 NI minConnection;
354 tySequence__qwqHTkRvwhrRyENtudHQ7g* mutations;
355 };
356 typedef NU8 tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw;
357 typedef NU8 tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag[9];
358 typedef NU8 tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg;
359 typedef NU8 tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog;
360 typedef NU8 tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
361 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
362 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
363 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
364 NimStringDesc* Field0;
365 NI Field1;
366 NI Field2;
367 };
368 struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw {
369 tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg* data;
370 NI counter;
371 };
372 struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg {
373 tySequence__mWRMiYLthG9coLjkbElCxkw* data;
374 NI counter;
375 };
376 struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ {
377 tySequence__bTDCDwD2P7TodzbAefLcSw* data;
378 NI counter;
379 };
380 typedef tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ[5];
381 struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w {
382 tySequence__3MPVXAHA08SszBrU4ffqEg* data;
383 NI counter;
384 };
385 struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw {
386 tySequence__YCf5zJHm4JI06qpmKwPUWg* data;
387 NI counter;
388 };
389 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
390 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
391 NI counter;
392 };
393 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
394 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
395 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
396 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
397 struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ {
398 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
399 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
400 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
401 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
402 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
403 };
404 struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA {
405 NI counter;
406 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* data;
407 };
408 struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA {
409 tySequence__61s9cbAniKuBrdHwBhMDfQg* data;
410 NI counter;
411 };
412 typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
413 struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
414 NI elems;
415 NI counter;
416 NI max;
417 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
418 tySequence__Bre9bNyuQOg1EJKitjSzn8w* data;
419 tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
420 };
421 struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA {
422 tySequence__fdmz6VkIf1ewwrssKYqRFg* data;
423 NI counter;
424 };
425 struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ {
426 tySequence__kxu4GK0onha2t9bo86mdVAg* data;
427 NI counter;
428 };
429 typedef struct {
430 N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0);
431 void* ClE_0;
432 } tyProc__In3g79a0qTcRmbTbJp9ba9ctg;
433 typedef tyObject_TType__facALICuu8zUj0hjvbTLFg* tyArray__9bjuenwQUcqO3lbmS2wX7uA[65];
434 struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw {
435 tySequence__1U9bG8RcAedEeYkQLZjVFKA* data;
436 NI counter;
437 };
438 struct tyObject_Table__G1v8c16HePOldLeucwe05Q {
439 tySequence__fIB1rTQ55aFonoft9a9bmljQ* data;
440 NI counter;
441 };
442 typedef N_NIMCALL_PTR(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, tyProc__VHDwJFdIqpwtpUGuxiXUwg) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx);
443 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__mjUN9alLJ31lnSKkUsuyWMw) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx);
444 struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA {
445 tySequence__23SMqauuRsbDANhthj9bWlA* data;
446 NI counter;
447 };
448 struct tyObject_Table__NttoEzoiq5CiphZe81oadg {
449 tySequence__squ9b9bUH4OLHf6cEMrt6hVA* data;
450 NI counter;
451 };
452 struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg {
453 tySequence__pHNq3oXj9av2sEUdqaqeZjw* data;
454 NI counter;
455 };
456 typedef N_NIMCALL_PTR(void, tyProc__TjycsqkDBjsxd4da6KYTng) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
457 typedef N_NIMCALL_PTR(void, tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body);
458 typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__J7Jq15ZScfKLqcLx8sEz9cA) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TType__facALICuu8zUj0hjvbTLFg* formal, tyObject_TType__facALICuu8zUj0hjvbTLFg* actual);
459 struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA {
460 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opNot;
461 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opContains;
462 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLe;
463 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLt;
464 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAnd;
465 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opOr;
466 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opIsNil;
467 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opEq;
468 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAdd;
469 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opSub;
470 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opMul;
471 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opDiv;
472 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLen;
473 };
474 struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ {
475 tySequence__4mZLwkxT8rbt9bf3wXrXYNQ* ifaces;
476 tySequence__rQHmYk1HzcwNxKBymIFHpA* packed_0;
477 tySequence__XMM60DtBsc6xYsIpNANkrA* encoders;
478 tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw typeInstCache;
479 tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg procInstCache;
480 tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ attachedOps;
481 tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w methodsPerType;
482 tyObject_Table__KcymdZjUsmGSK8BxmvoJgw enumToStringProcs;
483 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA emittedTypeInfo;
484 tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ startupPackedConfig;
485 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageSyms;
486 tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA modulesPerPackage;
487 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA deps;
488 tyObject_Table__fdKWDDO1P17zvuQPReVgRA importDeps;
489 NIM_BOOL suggestMode;
490 NIM_BOOL invalidTransitiveClosure;
491 tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ inclToMod;
492 tySequence__48JTohSgTy339bRxHzUD8KA* importStack;
493 RootObj* backend;
494 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
495 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
496 RootObj* vm;
497 tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile;
498 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* usageSym;
499 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* owners;
500 tySequence__s9byh6WFJ16lPMcmqdaMTHA* methods;
501 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* systemModule;
502 tyArray__9bjuenwQUcqO3lbmS2wX7uA sysTypes;
503 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA compilerprocs;
504 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA exposed;
505 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageTypes;
506 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* emptyNode;
507 tyObject_Table__Ue6w4c82v7gc7t2qntTbAw canonTypes;
508 tyObject_Table__G1v8c16HePOldLeucwe05Q symBodyHashes;
509 tyProc__VHDwJFdIqpwtpUGuxiXUwg importModuleCallback;
510 tyProc__mjUN9alLJ31lnSKkUsuyWMw includeFileCallback;
511 tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA cacheSeqs;
512 tyObject_Table__NttoEzoiq5CiphZe81oadg cacheCounters;
513 tyObject_Table__nagDFX4QHx0s6Fvma9blmSg cacheTables;
514 tySequence__MAQKEADohlpnXTModtugbQ* passes;
515 tyProc__TjycsqkDBjsxd4da6KYTng onDefinition;
516 tyProc__TjycsqkDBjsxd4da6KYTng onDefinitionResolveForward;
517 tyProc__TjycsqkDBjsxd4da6KYTng onUsage;
518 tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* globalDestructors;
519 tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ strongSemCheck;
520 tyProc__J7Jq15ZScfKLqcLx8sEz9cA compatibleProps;
521 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
522 tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA operators;
523 };
524 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
525 NI refcount;
526 TNimType* typ;
527 };
528 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
529 void* bottom;
530 };
531 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
532 NI len;
533 NI cap;
534 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
535 };
536 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
537 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
538 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
539 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
540 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
541 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
542 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
543 };
544 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
545 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
546 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
547 NI key;
548 NI upperBound;
549 NI level;
550 };
551 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
552 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
553 NI Field1;
554 };
555 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
556 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
557 NI len;
558 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
559 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
560 };
561 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
562 NI minLargeObj;
563 NI maxLargeObj;
564 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
565 NU32 flBitmap;
566 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
567 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
568 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
569 NI currMem;
570 NI maxMem;
571 NI freeMem;
572 NI occ;
573 NI lastSize;
574 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
575 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
576 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
577 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
578 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
579 NIM_BOOL locked;
580 NIM_BOOL blockChunkSizeIncrease;
581 NI nextChunkSize;
582 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
583 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
584 };
585 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
586 NI stackScans;
587 NI cycleCollections;
588 NI maxThreshold;
589 NI maxStackSize;
590 NI maxStackCells;
591 NI cycleTableSize;
592 NI64 maxPause;
593 };
594 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
595 NI counter;
596 NI max;
597 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
598 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
599 };
600 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
601 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
602 NI cycleThreshold;
603 NI zctThreshold;
604 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
605 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
606 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
607 NI recGcLock;
608 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
609 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
610 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
611 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
612 NI gcThreadId;
613 };
614 struct tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ {
615 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field0;
616 NI Field1;
617 };
618 typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__NbBRo5rVxVVQby3QsoZkZQ) (tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
619 typedef NU8 tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
620 struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA {
621 NI a;
622 NI b;
623 };
624 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
625 NI id;
626 NimStringDesc* s;
627 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
628 NI h;
629 };
630 struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA {
631 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
632 tySequence__vv5mGmK03BCr5e3LTZA5Hw* converters;
633 tySequence__vv5mGmK03BCr5e3LTZA5Hw* patterns;
634 tySequence__vv5mGmK03BCr5e3LTZA5Hw* pureEnums;
635 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interf;
636 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interfHidden;
637 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* uniqueName;
638 };
639 typedef NU8 tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q;
640 struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw {
641 tySequence__29bS0n2QNyO1R7e0qMMOvLA* nodes;
642 };
643 typedef NU8 tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g;
644 struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg {
645 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* vals;
646 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
647 };
648 struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ {
649 tySequence__IHUFRsFxZNv7YydiUO2esQ* vals;
650 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
651 };
652 struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ {
653 NimStringDesc* definedSymbols;
654 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw moduleFlags;
655 tySequence__PXIzfWocnrafGz5p3CP5LA* includes;
656 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* imports;
657 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw toReplay;
658 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw topLevel;
659 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw bodies;
660 tySequence__b89aLriiJnVTD186H6zNIgg* exports;
661 tySequence__b89aLriiJnVTD186H6zNIgg* hidden;
662 tySequence__REuPuHuSlOkZ0Q5oqzDrQg* reexports;
663 tySequence__b89aLriiJnVTD186H6zNIgg* compilerProcs;
664 tySequence__48JTohSgTy339bRxHzUD8KA* converters;
665 tySequence__48JTohSgTy339bRxHzUD8KA* methods;
666 tySequence__48JTohSgTy339bRxHzUD8KA* trmacros;
667 tySequence__48JTohSgTy339bRxHzUD8KA* pureEnums;
668 tySequence__I9aQmO9asXXWJ58UI9c8BCSzA* macroUsages;
669 tySequence__NyaOkf8ZwxP6rkRF5TOkew* typeInstCache;
670 tySequence__L9bOt8CaTEmIjgtuZvp6syg* procInstCache;
671 tySequence__im8UB2GsZvUaQ4a1wKGWhQ* attachedOps;
672 tySequence__xxnXDLpoqBo8zJzP9b1073g* methodsPerType;
673 tySequence__NyaOkf8ZwxP6rkRF5TOkew* enumToStringProcs;
674 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* emittedTypeInfo;
675 tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g backendFlags;
676 tySequence__DfmUmNgVGnYaiV1I6227tw* syms;
677 tySequence__t8Uv4lEJ4lkuECvP9c6JMhA* types;
678 tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg strings;
679 tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ numbers;
680 tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ cfg;
681 };
682 struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g {
683 tySequence__9bT7o0CflHuiE4VhmtqBPCw* data;
684 NI counter;
685 };
686 struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w {
687 tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q status;
688 NIM_BOOL symsInit;
689 NIM_BOOL typesInit;
690 NIM_BOOL loadedButAliveSetChanged;
691 tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ fromDisk;
692 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* syms;
693 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* types;
694 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
695 tyObject_Table__CE4eiu6FavV1vmUiTXQ70g iface;
696 tyObject_Table__CE4eiu6FavV1vmUiTXQ70g ifaceHidden;
697 };
698 struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q {
699 tySequence__9cnx3zXnWzeclW8Ko4oUgAQ* data;
700 NI counter;
701 };
702 struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw {
703 NI32 thisModule;
704 NI32 lastFile;
705 NU32 lastLit;
706 tyObject_Table__TRm6MPqklA8EYBmBMY117Q filenames;
707 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* pendingTypes;
708 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* pendingSyms;
709 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA typeMarker;
710 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA symMarker;
711 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
712 };
713 struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ {
714 NU32 module;
715 NI32 item;
716 };
717 struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ {
718 NI module;
719 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ packed_0;
720 };
721 struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg {
722 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id;
723 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
724 };
725 struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ {
726 NI Field0;
727 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
728 tySequence__O5RcspOP32YJ4YtU5ppxxA* Field2;
729 };
730 struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg {
731 NI module;
732 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ sym;
733 tySequence__ipEvhpHAmm8ZCn9bZAOdNYA* concreteTypes;
734 tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA* inst;
735 };
736 struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg {
737 NI Field0;
738 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
739 tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA* Field2;
740 };
741 struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q {
742 NI Field0;
743 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
744 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field2;
745 };
746 struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA {
747 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id;
748 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
749 };
750 struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ {
751 NI Field0;
752 tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field1;
753 };
754 struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg {
755 NI Field0;
756 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
757 tySequence__159bHWBGAOOs6U7OZ9cQlO0g* Field2;
758 };
759 struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA {
760 NI Field0;
761 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
762 tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field2;
763 };
764 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
765 NI Field0;
766 NimStringDesc* Field1;
767 NI32 Field2;
768 };
769 struct tyTuple__rplX06U9bjhu9asm5pWdgqsA {
770 NI Field0;
771 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
772 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA Field2;
773 };
774 struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q {
775 NI Field0;
776 NI32 Field1;
777 tySequence__48JTohSgTy339bRxHzUD8KA* Field2;
778 };
779 struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ {
780 NI Field0;
781 NI32 Field1;
782 NI32 Field2;
783 };
784 struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A {
785 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* Field0;
786 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field1;
787 };
788 typedef NU8 tyArray__qtqsWM5aXmcpMIVmvq3kAA[16];
789 struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ {
790 NI Field0;
791 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
792 tyObject_TType__facALICuu8zUj0hjvbTLFg* Field2;
793 };
794 struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw {
795 NI Field0;
796 NI Field1;
797 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field2;
798 };
799 struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw {
800 NI Field0;
801 NimStringDesc* Field1;
802 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field2;
803 };
804 struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg {
805 NI Field0;
806 NimStringDesc* Field1;
807 NI64 Field2;
808 };
809 struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg {
810 tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g* root;
811 NI entries;
812 };
813 struct tyTuple__wcNatyuf8WOqAhGLhSvgiw {
814 NI Field0;
815 NimStringDesc* Field1;
816 tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg Field2;
817 };
818 typedef N_NIMCALL_PTR(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*, tyProc__jkSFMhvPZ1AdGcvT2dK9a2w) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
819 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__A7Sdoem70tRxSEmKrf9cmyg) (tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* topLevelStmt);
820 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__EAEKmBUgKFg29agoUGtzDEQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
821 struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ {
822 tyProc__jkSFMhvPZ1AdGcvT2dK9a2w Field0;
823 tyProc__A7Sdoem70tRxSEmKrf9cmyg Field1;
824 tyProc__EAEKmBUgKFg29agoUGtzDEQ Field2;
825 NIM_BOOL Field3;
826 };
827 struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q {
828 NU32 Field0;
829 NimStringDesc* Field1;
830 };
831 struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg {
832 NU16 line;
833 NI16 col;
834 NU32 file;
835 };
836 struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow {
837 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
838 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
839 NI32 operand;
840 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeId_0;
841 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info;
842 };
843 struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ {
844 NU32 Field0;
845 NI32 Field1;
846 };
847 struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA {
848 NU32 Field0;
849 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
850 };
851 struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg {
852 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
853 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg Field1;
854 };
855 struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw {
856 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
857 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
858 };
859 struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA {
860 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ key;
861 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym;
862 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* concreteTypes;
863 };
864 typedef NU8 tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg;
865 struct tyTuple__9aoobCDZB4x41HJSOmh0mwA {
866 tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg Field0;
867 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
868 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2;
869 };
870 struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA {
871 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
872 NI Field1;
873 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2;
874 };
875 typedef NU8 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ;
876 struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw {
877 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ kind;
878 NIM_BOOL generated;
879 NIM_BOOL isOverriden;
880 NU32 name;
881 NI32 path;
882 };
883 struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw {
884 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
885 NU32 name;
886 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typ;
887 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
888 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
889 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info;
890 NI32 ast;
891 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner;
892 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ guard;
893 NI bitsize;
894 NI alignment;
895 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
896 NI position;
897 NI offset;
898 NU32 externalName;
899 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA locFlags;
900 tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw annex;
901 NI32 constraint;
902 };
903 struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA {
904 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
905 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
906 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
907 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* types;
908 NI32 n;
909 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym;
910 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner;
911 NI64 size;
912 NI16 align;
913 NI16 paddingAtEnd;
914 NI16 lockLevel;
915 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeInst;
916 NI32 nonUniqueId;
917 };
918 struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ {
919 NI Field0;
920 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* Field1;
921 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* Field2;
922 };
923 struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA {
924 NI Field0;
925 NI32 Field1;
926 NU32 Field2;
927 };
928 struct tySequence__7PsCyIDXDb8nGSU5UlS9cAA {
929   TGenericSeq Sup;
930   tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA data[SEQ_DECL_SIZE];
931 };
932 struct tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA {
933   TGenericSeq Sup;
934   tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug data[SEQ_DECL_SIZE];
935 };
936 struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
937   TGenericSeq Sup;
938   NI data[SEQ_DECL_SIZE];
939 };
940 struct tySequence__u9c10b19cqoKPxYSuh3ZKtIw {
941   TGenericSeq Sup;
942   tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ data[SEQ_DECL_SIZE];
943 };
944 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
945   TGenericSeq Sup;
946   tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
947 };
948 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
949   TGenericSeq Sup;
950   tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
951 };
952 struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ {
953   TGenericSeq Sup;
954   tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA data[SEQ_DECL_SIZE];
955 };
956 struct tySequence__rQHmYk1HzcwNxKBymIFHpA {
957   TGenericSeq Sup;
958   tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w data[SEQ_DECL_SIZE];
959 };
960 struct tySequence__XMM60DtBsc6xYsIpNANkrA {
961   TGenericSeq Sup;
962   tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw data[SEQ_DECL_SIZE];
963 };
964 struct tySequence__O5RcspOP32YJ4YtU5ppxxA {
965   TGenericSeq Sup;
966   tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg data[SEQ_DECL_SIZE];
967 };
968 struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg {
969   TGenericSeq Sup;
970   tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ data[SEQ_DECL_SIZE];
971 };
972 struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA {
973   TGenericSeq Sup;
974   tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg data[SEQ_DECL_SIZE];
975 };
976 struct tySequence__mWRMiYLthG9coLjkbElCxkw {
977   TGenericSeq Sup;
978   tyTuple__o67sDX0wYbEuhI9cJYAbDtg data[SEQ_DECL_SIZE];
979 };
980 struct tySequence__bTDCDwD2P7TodzbAefLcSw {
981   TGenericSeq Sup;
982   tyTuple__9aNnDWBFMF44sfFinBpMT4Q data[SEQ_DECL_SIZE];
983 };
984 struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g {
985   TGenericSeq Sup;
986   tyTuple__VrD6plbUKJjYKM0lCr3hGQ data[SEQ_DECL_SIZE];
987 };
988 struct tySequence__3MPVXAHA08SszBrU4ffqEg {
989   TGenericSeq Sup;
990   tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg data[SEQ_DECL_SIZE];
991 };
992 struct tySequence__YCf5zJHm4JI06qpmKwPUWg {
993   TGenericSeq Sup;
994   tyTuple__1ZbjBgxAbnye0IFMZ6w4OA data[SEQ_DECL_SIZE];
995 };
996 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
997   TGenericSeq Sup;
998   tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
999 };
1000 struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ {
1001   TGenericSeq Sup;
1002   tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* data[SEQ_DECL_SIZE];
1003 };
1004 struct tySequence__61s9cbAniKuBrdHwBhMDfQg {
1005   TGenericSeq Sup;
1006   tyTuple__rplX06U9bjhu9asm5pWdgqsA data[SEQ_DECL_SIZE];
1007 };
1008 struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
1009   TGenericSeq Sup;
1010   tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];
1011 };
1012 struct tySequence__48JTohSgTy339bRxHzUD8KA {
1013   TGenericSeq Sup;
1014   NI32 data[SEQ_DECL_SIZE];
1015 };
1016 struct tySequence__fdmz6VkIf1ewwrssKYqRFg {
1017   TGenericSeq Sup;
1018   tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q data[SEQ_DECL_SIZE];
1019 };
1020 struct tySequence__kxu4GK0onha2t9bo86mdVAg {
1021   TGenericSeq Sup;
1022   tyTuple__xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE];
1023 };
1024 struct tySequence__s9byh6WFJ16lPMcmqdaMTHA {
1025   TGenericSeq Sup;
1026   tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A data[SEQ_DECL_SIZE];
1027 };
1028 struct tySequence__1U9bG8RcAedEeYkQLZjVFKA {
1029   TGenericSeq Sup;
1030   tyTuple__3i6hlQmqrn6m7tuVN8FHjQ data[SEQ_DECL_SIZE];
1031 };
1032 struct tySequence__fIB1rTQ55aFonoft9a9bmljQ {
1033   TGenericSeq Sup;
1034   tyTuple__OJFzEczluV8Jmo9bRpBfkzw data[SEQ_DECL_SIZE];
1035 };
1036 struct tySequence__23SMqauuRsbDANhthj9bWlA {
1037   TGenericSeq Sup;
1038   tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw data[SEQ_DECL_SIZE];
1039 };
1040 struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA {
1041   TGenericSeq Sup;
1042   tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE];
1043 };
1044 struct tySequence__pHNq3oXj9av2sEUdqaqeZjw {
1045   TGenericSeq Sup;
1046   tyTuple__wcNatyuf8WOqAhGLhSvgiw data[SEQ_DECL_SIZE];
1047 };
1048 struct tySequence__MAQKEADohlpnXTModtugbQ {
1049   TGenericSeq Sup;
1050   tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ data[SEQ_DECL_SIZE];
1051 };
1052 struct tySequence__vv5mGmK03BCr5e3LTZA5Hw {
1053   TGenericSeq Sup;
1054   tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA data[SEQ_DECL_SIZE];
1055 };
1056 struct tySequence__PXIzfWocnrafGz5p3CP5LA {
1057   TGenericSeq Sup;
1058   tyTuple__0q9cmhneJEKnQERTpXXdz6Q data[SEQ_DECL_SIZE];
1059 };
1060 struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA {
1061   TGenericSeq Sup;
1062   NU32 data[SEQ_DECL_SIZE];
1063 };
1064 struct tySequence__29bS0n2QNyO1R7e0qMMOvLA {
1065   TGenericSeq Sup;
1066   tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow data[SEQ_DECL_SIZE];
1067 };
1068 struct tySequence__b89aLriiJnVTD186H6zNIgg {
1069   TGenericSeq Sup;
1070   tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE];
1071 };
1072 struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg {
1073   TGenericSeq Sup;
1074   tyTuple__Q7r9caOmeWqQGZCIBHhGRUA data[SEQ_DECL_SIZE];
1075 };
1076 struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA {
1077   TGenericSeq Sup;
1078   tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg data[SEQ_DECL_SIZE];
1079 };
1080 struct tySequence__NyaOkf8ZwxP6rkRF5TOkew {
1081   TGenericSeq Sup;
1082   tyTuple__XyJ8LOAZzVVXSsmt09b8uWw data[SEQ_DECL_SIZE];
1083 };
1084 struct tySequence__L9bOt8CaTEmIjgtuZvp6syg {
1085   TGenericSeq Sup;
1086   tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA data[SEQ_DECL_SIZE];
1087 };
1088 struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ {
1089   TGenericSeq Sup;
1090   tyTuple__9aoobCDZB4x41HJSOmh0mwA data[SEQ_DECL_SIZE];
1091 };
1092 struct tySequence__xxnXDLpoqBo8zJzP9b1073g {
1093   TGenericSeq Sup;
1094   tyTuple__g0Q6Qx15nK53ce9aLo7YyrA data[SEQ_DECL_SIZE];
1095 };
1096 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
1097   TGenericSeq Sup;
1098   NimStringDesc* data[SEQ_DECL_SIZE];
1099 };
1100 struct tySequence__DfmUmNgVGnYaiV1I6227tw {
1101   TGenericSeq Sup;
1102   tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw data[SEQ_DECL_SIZE];
1103 };
1104 struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA {
1105   TGenericSeq Sup;
1106   tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA data[SEQ_DECL_SIZE];
1107 };
1108 struct tySequence__IHUFRsFxZNv7YydiUO2esQ {
1109   TGenericSeq Sup;
1110   NI64 data[SEQ_DECL_SIZE];
1111 };
1112 struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw {
1113   TGenericSeq Sup;
1114   tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ data[SEQ_DECL_SIZE];
1115 };
1116 struct tySequence__9bT7o0CflHuiE4VhmtqBPCw {
1117   TGenericSeq Sup;
1118   tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ data[SEQ_DECL_SIZE];
1119 };
1120 struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ {
1121   TGenericSeq Sup;
1122   tyTuple__UvldbCB6B9ayi9bGYW7vJNLA data[SEQ_DECL_SIZE];
1123 };
1124 struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA {
1125   TGenericSeq Sup;
1126   tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ data[SEQ_DECL_SIZE];
1127 };
1128 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
1129 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1130 N_LIB_PRIVATE N_NIMCALL(void, registerParam__varpartitions_267)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1131 static N_INLINE(void, nimZeroMem)(void* p, NI size);
1132 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
1133 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
1134 N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
1135 static N_NIMCALL(void, Marker_tySequence__7PsCyIDXDb8nGSU5UlS9cAA)(void* p, NI op);
1136 N_LIB_PRIVATE N_NIMCALL(void, genericAssign)(void* dest, void* src, TNimType* mt);
1137 static N_NIMCALL(void, Marker_tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA)(void* p, NI op);
1138 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1139 N_LIB_PRIVATE N_NIMCALL(void, registerResult__varpartitions_214)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1140 N_LIB_PRIVATE N_NIMCALL(void, computeLiveRanges__varpartitions_1454)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1141 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lastSon__ast_4832)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1142 N_LIB_PRIVATE N_NIMCALL(void, registerVariable__varpartitions_304)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1143 N_LIB_PRIVATE N_NIMCALL(NI, variableId__varpartitions_197)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* x);
1144 static N_INLINE(void, markAsReassigned__varpartitions_1443)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, NI vid);
1145 static N_INLINE(NI, max__varpartitions_1527)(NI x, NI y);
1146 static N_INLINE(NI, min__varpartitions_475)(NI x, NI y);
1147 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
1148 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, skipTypes__ast_3735)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kinds);
1149 static N_INLINE(NIM_BOOL, isCompileTimeOnly__types_3519)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1150 N_LIB_PRIVATE N_NIMCALL(void, traverse__varpartitions_1272)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1151 N_LIB_PRIVATE N_NIMCALL(void, deps__varpartitions_1150)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
1152 N_LIB_PRIVATE N_NIMCALL(void, borrowingAsgn__varpartitions_1098)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
1153 N_LIB_PRIVATE N_NIMCALL(tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog, directViewType__typeallowed_568)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1154 N_LIB_PRIVATE N_NIMCALL(void, borrowFrom__varpartitions_1024)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* dest, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
1155 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, pathExpr__varpartitions_593)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner);
1156 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, stupidStmtListExpr__trees_404)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1157 N_LIB_PRIVATE N_NIMCALL(tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog, classifyViewType__typeallowed_564)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1158 N_LIB_PRIVATE N_NIMCALL(tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg, getMagic__trees_137)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* op);
1159 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, borrowFromConstExpr__varpartitions_558)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1160 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);
1161 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
1162 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
1163 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
1164 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toString__varpartitions_1017)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1165 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
1166 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___renderer_2106)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1167 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
1168 static N_INLINE(void, asgnRef)(void** dest, void* src);
1169 static N_INLINE(void, incRef__system_5308)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1170 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
1171 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5270)(void* usr);
1172 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
1173 static N_INLINE(void, decRef__system_5315)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1174 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
1175 static N_INLINE(void, rtlAddZCT__system_5313)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1176 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5264)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1177 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isConstSym__varpartitions_1002)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1178 N_LIB_PRIVATE N_NIMCALL(void, allRoots__varpartitions_653)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySequence__u9c10b19cqoKPxYSuh3ZKtIw** result, NI level);
1179 static N_NIMCALL(void, Marker_tySequence__u9c10b19cqoKPxYSuh3ZKtIw)(void* p, NI op);
1180 static N_INLINE(NIM_BOOL, isEmptyType__ast_4779)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1181 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, canAlias__isolation95check_99)(tyObject_TType__facALICuu8zUj0hjvbTLFg* arg, tyObject_TType__facALICuu8zUj0hjvbTLFg* ret);
1182 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsPointer__varpartitions_1140)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1183 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, searchTypeFor__types_470)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyProc__NbBRo5rVxVVQby3QsoZkZQ predicate);
1184 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, wrap__varpartitions_1143)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1185 N_LIB_PRIVATE N_NIMCALL(void, potentialMutation__varpartitions_335)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* v, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NI level, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1186 N_LIB_PRIVATE N_NIMCALL(NI, root__varpartitions_315)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* v, NI start);
1187 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
1188 N_LIB_PRIVATE N_NIMCALL(void, connect__varpartitions_431)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* v, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* b, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1189 N_LIB_PRIVATE N_NIMCALL(void, genericSeqAssign)(void* dest, void* src, TNimType* mt);
1190 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___msgs_993)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q a, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q b);
1191 N_LIB_PRIVATE N_NIMCALL(void, add__varpartitions_521)(tySequence__qwqHTkRvwhrRyENtudHQ7g** x, NI* y, NI yLen_0);
1192 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
1193 N_LIB_PRIVATE N_NIMCALL(void, destMightOwn__varpartitions_779)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA* dest, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1194 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasDisabledAsgn__modulegraphs_8859)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1195 N_LIB_PRIVATE N_NIMCALL(void, noCursor__varpartitions_985)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1196 N_LIB_PRIVATE N_NIMCALL(void, borrowingCall__varpartitions_1068)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TType__facALICuu8zUj0hjvbTLFg* destType, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI i);
1197 N_LIB_PRIVATE N_NIMCALL(void, potentialMutationViaArg__varpartitions_1255)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* callee);
1198 N_LIB_PRIVATE N_NIMCALL(void, pretendOwnsData__varpartitions_993)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1199 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipColon__ast_4948)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1200 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isNoSideEffectPragma__trees_257)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1201 static N_INLINE(NIM_BOOL, mutationAfterConnection__varpartitions_105)(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g);
1202 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, dangerousMutation__varpartitions_1646)(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g, tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA* v);
1203 static N_INLINE(NIM_BOOL, contains__varpartitions_1698)(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA s, NI value);
1204 static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___varpartitions_1677)(NI a, NI b);
1205 N_LIB_PRIVATE N_NIMCALL(void, cannotBorrow__varpartitions_1714)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g);
1206 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
1207 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___msgs_624)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1208 N_LIB_PRIVATE N_NIMCALL(void, computeGraphPartitions__varpartitions_1607)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tySet_tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg goals, tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* Result);
1209 N_LIB_PRIVATE TNimType NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_;
1210 N_LIB_PRIVATE TNimType NTIconnection__EevFKe104MtQGkxxkLKkgg_;
1211 N_LIB_PRIVATE TNimType NTIvarindexkind__TA6PMQGIDoHplflSd7kZxA_;
1212 TNimNode* NimDT___EevFKe104MtQGkxxkLKkgg_kind[4];
1213 extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
1214 N_LIB_PRIVATE TNimType NTIvarflag__F7v3qXI9a6XJkYmtFhBnwUQ_;
1215 N_LIB_PRIVATE TNimType NTIsetLvarflagT__aPvbyqN5lPiKM7xpscHQuw_;
1216 extern TNimType NTIpsym__dG2QVH5Z69aMUY38zTqWxaA_;
1217 extern TNimType NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_;
1218 N_LIB_PRIVATE TNimType NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_;
1219 extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__lineinfos_280;
1220 N_LIB_PRIVATE TNimType NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_;
1221 extern TNimType NTItlineinfo__WGx4rAexNXnczy1Avn646Q_;
1222 N_LIB_PRIVATE TNimType NTIsubgraphflag__mxQvR0HTC631bhUr6jBDDw_;
1223 N_LIB_PRIVATE TNimType NTIsetLsubgraphflagT__o2yv2nZi9a9cCH8g7WNv9aEew_;
1224 N_LIB_PRIVATE TNimType NTIseqLmutationinfoT__QAWA9c8ge5HfZnhFNlb9c9ajA_;
1225 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__39a9bfgg3gnILXo9by9cxATh0Q_13 = {
1226 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1227 0x00}
1228 ;
1229 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_14, "cannot borrow from ", 19);
1230 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_15, "<empty>", 7);
1231 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_16, ", it is not a path expression; see https://nim-lang.github.io/Nim/manual_experimental.html#view-types-algorithm-path-expressions for details", 140);
1232 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_18, "/home/runner/work/nightlies/nightlies/nim/compiler/varpartitions.nim", 68);
1233 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__39a9bfgg3gnILXo9by9cxATh0Q_17 = {((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_18),
1234 ((NI) 533),
1235 ((NI) 14)}
1236 ;
1237 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_19, "\'result\' must borrow from the first parameter", 45);
1238 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__39a9bfgg3gnILXo9by9cxATh0Q_20 = {((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_18),
1239 ((NI) 537),
1240 ((NI) 18)}
1241 ;
1242 N_LIB_PRIVATE TNimType NTILpsym_intT__TZXo9ct5DP9bCdCGHY4IfZPQ_;
1243 N_LIB_PRIVATE TNimType NTIseqLLpsym_intTT__u9c10b19cqoKPxYSuh3ZKtIw_;
1244 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__39a9bfgg3gnILXo9by9cxATh0Q_22 = {
1245 0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00,
1246 0x00}
1247 ;
1248 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__39a9bfgg3gnILXo9by9cxATh0Q_23 = {
1249 0x10, 0x08, 0x80, 0x00, 0x00, 0xc0, 0x00, 0x00,
1250 0x00}
1251 ;
1252 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_24, "cannot determine the target of the borrow", 41);
1253 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__39a9bfgg3gnILXo9by9cxATh0Q_25 = {((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_18),
1254 ((NI) 569),
1255 ((NI) 14)}
1256 ;
1257 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_26, "cannot borrow ", 14);
1258 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_27, "; what it borrows from is potentially mutated", 45);
1259 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_28, "\012", 1);
1260 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_29, " the mutation is here", 21);
1261 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_30, " is the statement that connected the mutation to the parameter", 62);
1262 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__39a9bfgg3gnILXo9by9cxATh0Q_31 = {((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_18),
1263 ((NI) 894),
1264 ((NI) 12)}
1265 ;
1266 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_32, "\'", 1);
1267 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_33, "\' borrows from location \'", 25);
1268 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_34, "\' which does not live long enough", 33);
1269 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__39a9bfgg3gnILXo9by9cxATh0Q_35 = {((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_18),
1270 ((NI) 909),
1271 ((NI) 24)}
1272 ;
1273 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_36, "\' borrows from the immutable location \'", 39);
1274 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_37, "\' and attempts to mutate it", 27);
1275 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__39a9bfgg3gnILXo9by9cxATh0Q_38 = {((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_18),
1276 ((NI) 912),
1277 ((NI) 24)}
1278 ;
1279 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_39, "\' borrows from an immutable location and attempts to mutate it", 62);
1280 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__39a9bfgg3gnILXo9by9cxATh0Q_40 = {((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_18),
1281 ((NI) 919),
1282 ((NI) 20)}
1283 ;
1284 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_41, "\012an object reachable from \'", 27);
1285 STRING_LITERAL(TM__39a9bfgg3gnILXo9by9cxATh0Q_42, "\' is potentially mutated", 24);
1286 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5217;
N_INLINE(NI,len__ast_3198)1287 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1288 	NI result;
1289 	NI T1_;
1290 	result = (NI)0;
1291 	T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
1292 	result = T1_;
1293 	return result;
1294 }
N_INLINE(void,nimSetMem__systemZmemory_7)1295 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
1296 	void* T1_;
1297 	T1_ = (void*)0;
1298 	T1_ = memset(a, v, ((size_t) (size)));
1299 }
N_INLINE(void,nimZeroMem)1300 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
1301 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
1302 }
N_NIMCALL(void,Marker_tySequence__7PsCyIDXDb8nGSU5UlS9cAA)1303 static N_NIMCALL(void, Marker_tySequence__7PsCyIDXDb8nGSU5UlS9cAA)(void* p, NI op) {
1304 	tySequence__7PsCyIDXDb8nGSU5UlS9cAA* a;
1305 	NI T1_;
1306 	a = (tySequence__7PsCyIDXDb8nGSU5UlS9cAA*)p;
1307 	T1_ = (NI)0;
1308 	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
1309 	switch (a->data[T1_].con.kind) {
1310 	case ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 0):
1311 	break;
1312 	case ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 1):
1313 	break;
1314 	case ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 2):
1315 	break;
1316 	}
1317 	nimGCvisit((void*)a->data[T1_].sym, op);
1318 	nimGCvisit((void*)a->data[T1_].borrowsFrom, op);
1319 	}
1320 }
N_NIMCALL(void,Marker_tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA)1321 static N_NIMCALL(void, Marker_tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA)(void* p, NI op) {
1322 	tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA* a;
1323 	NI T1_;
1324 	a = (tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA*)p;
1325 	T1_ = (NI)0;
1326 	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
1327 	nimGCvisit((void*)a->data[T1_].param, op);
1328 	nimGCvisit((void*)a->data[T1_].mutations, op);
1329 	}
1330 }
N_NIMCALL(void,registerParam__varpartitions_267)1331 N_LIB_PRIVATE N_NIMCALL(void, registerParam__varpartitions_267)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1332 	{
1333 		NIM_BOOL T3_;
1334 		tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA T7_;
1335 		NI T8_;
1336 		NI T9_;
1337 		tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug T10_;
1338 		NI T11_;
1339 		T3_ = (NIM_BOOL)0;
1340 		T3_ = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
1341 		if (!(T3_)) goto LA4_;
1342 		T3_ = !(((*(*(*n)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*(*n)._kind_4.sym).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46)));
1343 		LA4_: ;
1344 		if (!T3_) goto LA5_;
1345 		nimZeroMem((void*)(&T7_), sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA));
1346 		nimZeroMem((void*)(&T7_), sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA));
1347 		nimZeroMem((void*)(&T7_.con), sizeof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg));
1348 		T7_.con.kind = ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 2);
1349 		T8_ = ((*c).graphs ? (*c).graphs->Sup.len : 0);
1350 		T7_.con.graphIndex = T8_;
1351 		T7_.sym = (*n)._kind_4.sym;
1352 		T7_.reassignedTo = ((NI) 0);
1353 		T7_.aliveStart = (*c).abstractTime;
1354 		T7_.aliveEnd = (*c).abstractTime;
1355 		unsureAsgnRef((void**) (&(*c).s), (tySequence__7PsCyIDXDb8nGSU5UlS9cAA*) incrSeqV3((TGenericSeq*)((*c).s), (&NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_)));
1356 		T9_ = (*c).s->Sup.len++;
1357 		genericAssign((void*)(&(*c).s->data[T9_]), (void*)(&T7_), (&NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_));
1358 		nimZeroMem((void*)(&T10_), sizeof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug));
1359 		nimZeroMem((void*)(&T10_), sizeof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug));
1360 		T10_.param = (*n)._kind_4.sym;
1361 		T10_.mutatedHere = unknownLineInfo__lineinfos_280;
1362 		T10_.connectedVia = unknownLineInfo__lineinfos_280;
1363 		T10_.flags = 8;
1364 		T10_.maxMutation = ((NI) -1);
1365 		T10_.minConnection = ((NI) 2147483647);
1366 		T10_.mutations = NIM_NIL;
1367 		unsureAsgnRef((void**) (&(*c).graphs), (tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA*) incrSeqV3((TGenericSeq*)((*c).graphs), (&NTIseqLmutationinfoT__QAWA9c8ge5HfZnhFNlb9c9ajA_)));
1368 		T11_ = (*c).graphs->Sup.len++;
1369 		genericAssign((void*)(&(*c).graphs->data[T11_]), (void*)(&T10_), (&NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_));
1370 	}
1371 	goto LA1_;
1372 	LA5_: ;
1373 	{
1374 		tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA T13_;
1375 		NI T14_;
1376 		nimZeroMem((void*)(&T13_), sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA));
1377 		nimZeroMem((void*)(&T13_), sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA));
1378 		nimZeroMem((void*)(&T13_.con), sizeof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg));
1379 		T13_.con.kind = ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 0);
1380 		T13_.sym = (*n)._kind_4.sym;
1381 		T13_.reassignedTo = ((NI) 0);
1382 		T13_.aliveStart = (*c).abstractTime;
1383 		T13_.aliveEnd = (*c).abstractTime;
1384 		unsureAsgnRef((void**) (&(*c).s), (tySequence__7PsCyIDXDb8nGSU5UlS9cAA*) incrSeqV3((TGenericSeq*)((*c).s), (&NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_)));
1385 		T14_ = (*c).s->Sup.len++;
1386 		genericAssign((void*)(&(*c).s->data[T14_]), (void*)(&T13_), (&NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_));
1387 	}
1388 	LA1_: ;
1389 }
N_INLINE(NI,safeLen__ast_3191)1390 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1391 	NI result;
1392 	result = (NI)0;
1393 	{
1394 		if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
1395 		result = ((NI) 0);
1396 	}
1397 	goto LA1_;
1398 	LA3_: ;
1399 	{
1400 		result = len__ast_3198(n);
1401 	}
1402 	LA1_: ;
1403 	return result;
1404 }
N_NIMCALL(void,registerResult__varpartitions_214)1405 N_LIB_PRIVATE N_NIMCALL(void, registerResult__varpartitions_214)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1406 	{
1407 		tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA T5_;
1408 		NI T6_;
1409 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA3_;
1410 		nimZeroMem((void*)(&T5_), sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA));
1411 		nimZeroMem((void*)(&T5_), sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA));
1412 		nimZeroMem((void*)(&T5_.con), sizeof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg));
1413 		T5_.con.kind = ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 0);
1414 		T5_.sym = (*n)._kind_4.sym;
1415 		T5_.reassignedTo = ((NI) 0);
1416 		T5_.aliveStart = ((NI) 2147483647);
1417 		T5_.aliveEnd = (*c).abstractTime;
1418 		unsureAsgnRef((void**) (&(*c).s), (tySequence__7PsCyIDXDb8nGSU5UlS9cAA*) incrSeqV3((TGenericSeq*)((*c).s), (&NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_)));
1419 		T6_ = (*c).s->Sup.len++;
1420 		genericAssign((void*)(&(*c).s->data[T6_]), (void*)(&T5_), (&NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_));
1421 	}
1422 	LA3_: ;
1423 }
N_NIMCALL(NI,variableId__varpartitions_197)1424 N_LIB_PRIVATE N_NIMCALL(NI, variableId__varpartitions_197)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* x) {
1425 	NI result;
1426 {	result = (NI)0;
1427 	{
1428 		NI i;
1429 		NI colontmp_;
1430 		NI T2_;
1431 		NI i_2;
1432 		i = (NI)0;
1433 		colontmp_ = (NI)0;
1434 		T2_ = ((*c).s ? (*c).s->Sup.len : 0);
1435 		colontmp_ = T2_;
1436 		i_2 = ((NI) 0);
1437 		{
1438 			while (1) {
1439 				if (!(i_2 < colontmp_)) goto LA4;
1440 				i = i_2;
1441 				{
1442 					if (!((*c).s->data[i].sym == x)) goto LA7_;
1443 					result = i;
1444 					goto BeforeRet_;
1445 				}
1446 				LA7_: ;
1447 				i_2 += ((NI) 1);
1448 			} LA4: ;
1449 		}
1450 	}
1451 	result = ((NI) -1);
1452 	goto BeforeRet_;
1453 	}BeforeRet_: ;
1454 	return result;
1455 }
N_NIMCALL(void,registerVariable__varpartitions_304)1456 N_LIB_PRIVATE N_NIMCALL(void, registerVariable__varpartitions_304)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1457 	{
1458 		NIM_BOOL T3_;
1459 		NI T5_;
1460 		tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA T8_;
1461 		NI T9_;
1462 		T3_ = (NIM_BOOL)0;
1463 		T3_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
1464 		if (!(T3_)) goto LA4_;
1465 		T5_ = (NI)0;
1466 		T5_ = variableId__varpartitions_197((&(*c)), (*n)._kind_4.sym);
1467 		T3_ = (T5_ < ((NI) 0));
1468 		LA4_: ;
1469 		if (!T3_) goto LA6_;
1470 		nimZeroMem((void*)(&T8_), sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA));
1471 		nimZeroMem((void*)(&T8_), sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA));
1472 		nimZeroMem((void*)(&T8_.con), sizeof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg));
1473 		T8_.con.kind = ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 0);
1474 		T8_.sym = (*n)._kind_4.sym;
1475 		T8_.reassignedTo = ((NI) 0);
1476 		T8_.aliveStart = (*c).abstractTime;
1477 		T8_.aliveEnd = (*c).abstractTime;
1478 		unsureAsgnRef((void**) (&(*c).s), (tySequence__7PsCyIDXDb8nGSU5UlS9cAA*) incrSeqV3((TGenericSeq*)((*c).s), (&NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_)));
1479 		T9_ = (*c).s->Sup.len++;
1480 		genericAssign((void*)(&(*c).s->data[T9_]), (void*)(&T8_), (&NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_));
1481 	}
1482 	LA6_: ;
1483 }
N_INLINE(void,markAsReassigned__varpartitions_1443)1484 static N_INLINE(void, markAsReassigned__varpartitions_1443)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, NI vid) {
1485 	(*c).s->data[vid].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 2)) & 7);
1486 	{
1487 		NIM_BOOL T3_;
1488 		T3_ = (NIM_BOOL)0;
1489 		T3_ = (((NI) 0) < (*c).inConditional);
1490 		if (!(T3_)) goto LA4_;
1491 		T3_ = (((NI) 0) < (*c).inLoop);
1492 		LA4_: ;
1493 		if (!T3_) goto LA5_;
1494 		(*c).s->data[vid].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 3)) & 7);
1495 	}
1496 	LA5_: ;
1497 }
N_INLINE(NI,max__varpartitions_1527)1498 static N_INLINE(NI, max__varpartitions_1527)(NI x, NI y) {
1499 	NI result;
1500 	result = (NI)0;
1501 	{
1502 		if (!(y <= x)) goto LA3_;
1503 		result = x;
1504 	}
1505 	goto LA1_;
1506 	LA3_: ;
1507 	{
1508 		result = y;
1509 	}
1510 	LA1_: ;
1511 	return result;
1512 }
N_INLINE(NI,min__varpartitions_475)1513 static N_INLINE(NI, min__varpartitions_475)(NI x, NI y) {
1514 	NI result;
1515 	result = (NI)0;
1516 	{
1517 		if (!(x <= y)) goto LA3_;
1518 		result = x;
1519 	}
1520 	goto LA1_;
1521 	LA3_: ;
1522 	{
1523 		result = y;
1524 	}
1525 	LA1_: ;
1526 	return result;
1527 }
N_INLINE(NI,len__ast_4002)1528 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n) {
1529 	NI result;
1530 	NI T1_;
1531 	result = (NI)0;
1532 	T1_ = ((*n).sons ? (*n).sons->Sup.len : 0);
1533 	result = T1_;
1534 	return result;
1535 }
N_INLINE(NIM_BOOL,isCompileTimeOnly__types_3519)1536 static N_INLINE(NIM_BOOL, isCompileTimeOnly__types_3519)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
1537 	NIM_BOOL result;
1538 	result = (NIM_BOOL)0;
1539 	result = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60));
1540 	return result;
1541 }
N_NIMCALL(void,computeLiveRanges__varpartitions_1454)1542 N_LIB_PRIVATE N_NIMCALL(void, computeLiveRanges__varpartitions_1454)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1543 {	(*c).abstractTime += ((NI) 1);
1544 	switch ((*n).kind) {
1545 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 100):
1546 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99):
1547 	{
1548 		{
1549 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child;
1550 			child = NIM_NIL;
1551 			{
1552 				NI i;
1553 				NI colontmp_;
1554 				NI i_2;
1555 				i = (NI)0;
1556 				colontmp_ = (NI)0;
1557 				colontmp_ = safeLen__ast_3191(n);
1558 				i_2 = ((NI) 0);
1559 				{
1560 					while (1) {
1561 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* last;
1562 						if (!(i_2 < colontmp_)) goto LA5;
1563 						i = i_2;
1564 						child = (*n)._kind_6.sons->data[i];
1565 						last = lastSon__ast_4832(child);
1566 						computeLiveRanges__varpartitions_1454(c, last);
1567 						{
1568 							NIM_BOOL T8_;
1569 							T8_ = (NIM_BOOL)0;
1570 							T8_ = ((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 36));
1571 							if (!(T8_)) goto LA9_;
1572 							T8_ = ((*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 37) || (*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160));
1573 							LA9_: ;
1574 							if (!T8_) goto LA10_;
1575 							{
1576 								NI T14_;
1577 								NI T15_;
1578 								T14_ = (NI)0;
1579 								T14_ = len__ast_3198(child);
1580 								T15_ = (NI)0;
1581 								T15_ = len__ast_3198(last);
1582 								if (!!(((NI)(T14_ - ((NI) 2)) == T15_))) goto LA16_;
1583 								goto BeforeRet_;
1584 							}
1585 							LA16_: ;
1586 							{
1587 								NI i_3;
1588 								NI colontmp__2;
1589 								NI T19_;
1590 								NI i_4;
1591 								i_3 = (NI)0;
1592 								colontmp__2 = (NI)0;
1593 								T19_ = (NI)0;
1594 								T19_ = len__ast_3198(child);
1595 								colontmp__2 = (NI)(T19_ - ((NI) 2));
1596 								i_4 = ((NI) 0);
1597 								{
1598 									while (1) {
1599 										if (!(i_4 < colontmp__2)) goto LA21;
1600 										i_3 = i_4;
1601 										registerVariable__varpartitions_304(c, (*child)._kind_6.sons->data[i_3]);
1602 										i_4 += ((NI) 1);
1603 									} LA21: ;
1604 								}
1605 							}
1606 						}
1607 						goto LA6_;
1608 						LA10_: ;
1609 						{
1610 							{
1611 								NI i_5;
1612 								NI colontmp__3;
1613 								NI T24_;
1614 								NI i_6;
1615 								i_5 = (NI)0;
1616 								colontmp__3 = (NI)0;
1617 								T24_ = (NI)0;
1618 								T24_ = len__ast_3198(child);
1619 								colontmp__3 = (NI)(T24_ - ((NI) 2));
1620 								i_6 = ((NI) 0);
1621 								{
1622 									while (1) {
1623 										if (!(i_6 < colontmp__3)) goto LA26;
1624 										i_5 = i_6;
1625 										registerVariable__varpartitions_304(c, (*child)._kind_6.sons->data[i_5]);
1626 										i_6 += ((NI) 1);
1627 									} LA26: ;
1628 								}
1629 							}
1630 						}
1631 						LA6_: ;
1632 						i_2 += ((NI) 1);
1633 					} LA5: ;
1634 				}
1635 			}
1636 		}
1637 	}
1638 	break;
1639 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73):
1640 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74):
1641 	{
1642 		computeLiveRanges__varpartitions_1454(c, (*n)._kind_6.sons->data[((NI) 0)]);
1643 		computeLiveRanges__varpartitions_1454(c, (*n)._kind_6.sons->data[((NI) 1)]);
1644 		{
1645 			NI vid;
1646 			if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA30_;
1647 			vid = variableId__varpartitions_197((&(*c)), (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym);
1648 			{
1649 				if (!(((NI) 0) <= vid)) goto LA34_;
1650 				{
1651 					NIM_BOOL T38_;
1652 					NIM_BOOL T40_;
1653 					tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym179_;
1654 					tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym181_;
1655 					T38_ = (NIM_BOOL)0;
1656 					T38_ = ((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
1657 					if (!(T38_)) goto LA39_;
1658 					T40_ = (NIM_BOOL)0;
1659 					T40_ = ((*c).s->data[vid].reassignedTo == ((NI) 0));
1660 					if (T40_) goto LA41_;
1661 					xX60gensym179_ = (*(*n)._kind_6.sons->data[((NI) 1)])._kind_4.sym;
1662 					T40_ = ((*c).s->data[vid].reassignedTo == (NI)((NI)((NU32)(((NI) ((*xX60gensym179_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym179_).Sup.itemId.item))));
1663 					LA41_: ;
1664 					T38_ = T40_;
1665 					LA39_: ;
1666 					if (!T38_) goto LA42_;
1667 					xX60gensym181_ = (*(*n)._kind_6.sons->data[((NI) 1)])._kind_4.sym;
1668 					(*c).s->data[vid].reassignedTo = (NI)((NI)((NU32)(((NI) ((*xX60gensym181_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym181_).Sup.itemId.item)));
1669 				}
1670 				goto LA36_;
1671 				LA42_: ;
1672 				{
1673 					markAsReassigned__varpartitions_1443(c, vid);
1674 				}
1675 				LA36_: ;
1676 			}
1677 			LA34_: ;
1678 		}
1679 		LA30_: ;
1680 	}
1681 	break;
1682 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
1683 	{
1684 		(*c).abstractTime -= ((NI) 1);
1685 		{
1686 			NI id;
1687 			if (!((2100008 &((NU32)1<<((NU)((*(*n)._kind_4.sym).kind)&31U)))!=0)) goto LA48_;
1688 			id = variableId__varpartitions_197((&(*c)), (*n)._kind_4.sym);
1689 			{
1690 				if (!(((NI) 0) <= id)) goto LA52_;
1691 				(*c).s->data[id].aliveEnd = max__varpartitions_1527((*c).s->data[id].aliveEnd, (*c).abstractTime);
1692 				{
1693 					if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11))) goto LA56_;
1694 					(*c).s->data[id].aliveStart = min__varpartitions_475((*c).s->data[id].aliveStart, (*c).abstractTime);
1695 				}
1696 				LA56_: ;
1697 			}
1698 			LA52_: ;
1699 		}
1700 		LA48_: ;
1701 	}
1702 	break;
1703 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
1704 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
1705 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
1706 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
1707 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 90):
1708 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
1709 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 102):
1710 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 116):
1711 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 118):
1712 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 121) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
1713 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
1714 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 132):
1715 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 158) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
1716 	{
1717 		(*c).abstractTime -= ((NI) 1);
1718 	}
1719 	break;
1720 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
1721 	{
1722 		tyObject_TType__facALICuu8zUj0hjvbTLFg* parameters;
1723 		NI L;
1724 		{
1725 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_2;
1726 			child_2 = NIM_NIL;
1727 			{
1728 				NI i_7;
1729 				NI colontmp__4;
1730 				NI i_8;
1731 				i_7 = (NI)0;
1732 				colontmp__4 = (NI)0;
1733 				colontmp__4 = safeLen__ast_3191(n);
1734 				i_8 = ((NI) 0);
1735 				{
1736 					while (1) {
1737 						if (!(i_8 < colontmp__4)) goto LA63;
1738 						i_7 = i_8;
1739 						child_2 = (*n)._kind_6.sons->data[i_7];
1740 						computeLiveRanges__varpartitions_1454(c, child_2);
1741 						i_8 += ((NI) 1);
1742 					} LA63: ;
1743 				}
1744 			}
1745 		}
1746 		parameters = (*(*n)._kind_6.sons->data[((NI) 0)]).typ;
1747 		{
1748 			if (!!((parameters == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA66_;
1749 			L = len__ast_4002(parameters);
1750 		}
1751 		goto LA64_;
1752 		LA66_: ;
1753 		{
1754 			L = ((NI) 0);
1755 		}
1756 		LA64_: ;
1757 		{
1758 			NI i_9;
1759 			NI colontmp__5;
1760 			NI i_10;
1761 			i_9 = (NI)0;
1762 			colontmp__5 = (NI)0;
1763 			colontmp__5 = len__ast_3198(n);
1764 			i_10 = ((NI) 1);
1765 			{
1766 				while (1) {
1767 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
1768 					if (!(i_10 < colontmp__5)) goto LA71;
1769 					i_9 = i_10;
1770 					it = (*n)._kind_6.sons->data[i_9];
1771 					{
1772 						NIM_BOOL T74_;
1773 						tyObject_TType__facALICuu8zUj0hjvbTLFg* paramType;
1774 						T74_ = (NIM_BOOL)0;
1775 						T74_ = ((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
1776 						if (!(T74_)) goto LA75_;
1777 						T74_ = (i_9 < L);
1778 						LA75_: ;
1779 						if (!T74_) goto LA76_;
1780 						paramType = skipTypes__ast_3735((*parameters).sons->data[i_9], TM__39a9bfgg3gnILXo9by9cxATh0Q_13);
1781 						{
1782 							NIM_BOOL T80_;
1783 							NIM_BOOL T81_;
1784 							NI vid_2;
1785 							T80_ = (NIM_BOOL)0;
1786 							T81_ = (NIM_BOOL)0;
1787 							T81_ = isCompileTimeOnly__types_3519(paramType);
1788 							T80_ = !(T81_);
1789 							if (!(T80_)) goto LA82_;
1790 							T80_ = ((*paramType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
1791 							LA82_: ;
1792 							if (!T80_) goto LA83_;
1793 							vid_2 = variableId__varpartitions_197((&(*c)), (*it)._kind_4.sym);
1794 							{
1795 								if (!(((NI) 0) <= vid_2)) goto LA87_;
1796 								markAsReassigned__varpartitions_1443(c, vid_2);
1797 							}
1798 							LA87_: ;
1799 						}
1800 						LA83_: ;
1801 					}
1802 					LA76_: ;
1803 					i_10 += ((NI) 1);
1804 				} LA71: ;
1805 			}
1806 		}
1807 	}
1808 	break;
1809 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
1810 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
1811 	{
1812 		computeLiveRanges__varpartitions_1454(c, (*n)._kind_6.sons->data[((NI) 0)]);
1813 		{
1814 			NI vid_3;
1815 			if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA92_;
1816 			vid_3 = variableId__varpartitions_197((&(*c)), (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym);
1817 			{
1818 				if (!(((NI) 0) <= vid_3)) goto LA96_;
1819 				(*c).s->data[vid_3].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 1)) & 7);
1820 			}
1821 			LA96_: ;
1822 		}
1823 		LA92_: ;
1824 	}
1825 	break;
1826 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 91):
1827 	{
1828 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T99_;
1829 		T99_ = NIM_NIL;
1830 		T99_ = lastSon__ast_4832(n);
1831 		computeLiveRanges__varpartitions_1454(c, T99_);
1832 	}
1833 	break;
1834 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96):
1835 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 94):
1836 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 95):
1837 	{
1838 		{
1839 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_3;
1840 			child_3 = NIM_NIL;
1841 			{
1842 				NI i_11;
1843 				NI colontmp__6;
1844 				NI i_12;
1845 				i_11 = (NI)0;
1846 				colontmp__6 = (NI)0;
1847 				colontmp__6 = safeLen__ast_3191(n);
1848 				i_12 = ((NI) 0);
1849 				{
1850 					while (1) {
1851 						if (!(i_12 < colontmp__6)) goto LA104;
1852 						i_11 = i_12;
1853 						child_3 = (*n)._kind_6.sons->data[i_11];
1854 						computeLiveRanges__varpartitions_1454(c, child_3);
1855 						i_12 += ((NI) 1);
1856 					} LA104: ;
1857 				}
1858 			}
1859 		}
1860 		(*c).inLoop += ((NI) 1);
1861 		{
1862 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_4;
1863 			child_4 = NIM_NIL;
1864 			{
1865 				NI i_13;
1866 				NI colontmp__7;
1867 				NI i_14;
1868 				i_13 = (NI)0;
1869 				colontmp__7 = (NI)0;
1870 				colontmp__7 = safeLen__ast_3191(n);
1871 				i_14 = ((NI) 0);
1872 				{
1873 					while (1) {
1874 						if (!(i_14 < colontmp__7)) goto LA108;
1875 						i_13 = i_14;
1876 						child_4 = (*n)._kind_6.sons->data[i_13];
1877 						computeLiveRanges__varpartitions_1454(c, child_4);
1878 						i_14 += ((NI) 1);
1879 					} LA108: ;
1880 				}
1881 			}
1882 		}
1883 		(*c).inLoop += ((NI) 1);
1884 	}
1885 	break;
1886 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 86):
1887 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 49):
1888 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
1889 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85):
1890 	{
1891 		(*c).inConditional += ((NI) 1);
1892 		{
1893 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_5;
1894 			child_5 = NIM_NIL;
1895 			{
1896 				NI i_15;
1897 				NI colontmp__8;
1898 				NI i_16;
1899 				i_15 = (NI)0;
1900 				colontmp__8 = (NI)0;
1901 				colontmp__8 = safeLen__ast_3191(n);
1902 				i_16 = ((NI) 0);
1903 				{
1904 					while (1) {
1905 						if (!(i_16 < colontmp__8)) goto LA113;
1906 						i_15 = i_16;
1907 						child_5 = (*n)._kind_6.sons->data[i_15];
1908 						computeLiveRanges__varpartitions_1454(c, child_5);
1909 						i_16 += ((NI) 1);
1910 					} LA113: ;
1911 				}
1912 			}
1913 		}
1914 		(*c).inConditional -= ((NI) 1);
1915 	}
1916 	break;
1917 	default:
1918 	{
1919 		{
1920 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_6;
1921 			child_6 = NIM_NIL;
1922 			{
1923 				NI i_17;
1924 				NI colontmp__9;
1925 				NI i_18;
1926 				i_17 = (NI)0;
1927 				colontmp__9 = (NI)0;
1928 				colontmp__9 = safeLen__ast_3191(n);
1929 				i_18 = ((NI) 0);
1930 				{
1931 					while (1) {
1932 						if (!(i_18 < colontmp__9)) goto LA118;
1933 						i_17 = i_18;
1934 						child_6 = (*n)._kind_6.sons->data[i_17];
1935 						computeLiveRanges__varpartitions_1454(c, child_6);
1936 						i_18 += ((NI) 1);
1937 					} LA118: ;
1938 				}
1939 			}
1940 		}
1941 	}
1942 	break;
1943 	}
1944 	}BeforeRet_: ;
1945 }
N_NIMCALL(NIM_BOOL,borrowFromConstExpr__varpartitions_558)1946 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, borrowFromConstExpr__varpartitions_558)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1947 	NIM_BOOL result;
1948 {	result = (NIM_BOOL)0;
1949 	switch ((*n).kind) {
1950 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
1951 	{
1952 		result = NIM_TRUE;
1953 	}
1954 	break;
1955 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 33):
1956 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34):
1957 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
1958 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
1959 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61):
1960 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 67):
1961 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66):
1962 	{
1963 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T3_;
1964 		T3_ = NIM_NIL;
1965 		T3_ = lastSon__ast_4832(n);
1966 		result = borrowFromConstExpr__varpartitions_558(T3_);
1967 	}
1968 	break;
1969 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39):
1970 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41):
1971 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 37):
1972 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160):
1973 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38):
1974 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 155):
1975 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44):
1976 	{
1977 		result = NIM_TRUE;
1978 		{
1979 			NI i;
1980 			NI colontmp_;
1981 			NI colontmp__2;
1982 			NI i_2;
1983 			i = (NI)0;
1984 			colontmp_ = (NI)0;
1985 			colontmp__2 = (NI)0;
1986 			colontmp_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38));
1987 			colontmp__2 = len__ast_3198(n);
1988 			i_2 = colontmp_;
1989 			{
1990 				while (1) {
1991 					if (!(i_2 < colontmp__2)) goto LA7;
1992 					i = i_2;
1993 					{
1994 						NIM_BOOL T10_;
1995 						T10_ = (NIM_BOOL)0;
1996 						T10_ = borrowFromConstExpr__varpartitions_558((*n)._kind_6.sons->data[i]);
1997 						if (!!(T10_)) goto LA11_;
1998 						result = NIM_FALSE;
1999 						goto BeforeRet_;
2000 					}
2001 					LA11_: ;
2002 					i_2 += ((NI) 1);
2003 				} LA7: ;
2004 			}
2005 		}
2006 	}
2007 	break;
2008 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
2009 	{
2010 		{
2011 			tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg T16_;
2012 			T16_ = (tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg)0;
2013 			T16_ = getMagic__trees_137(n);
2014 			if (!(T16_ == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 144))) goto LA17_;
2015 			result = NIM_TRUE;
2016 			{
2017 				NI i_3;
2018 				NI colontmp__3;
2019 				NI i_4;
2020 				i_3 = (NI)0;
2021 				colontmp__3 = (NI)0;
2022 				colontmp__3 = len__ast_3198(n);
2023 				i_4 = ((NI) 1);
2024 				{
2025 					while (1) {
2026 						if (!(i_4 < colontmp__3)) goto LA21;
2027 						i_3 = i_4;
2028 						{
2029 							NIM_BOOL T24_;
2030 							T24_ = (NIM_BOOL)0;
2031 							T24_ = borrowFromConstExpr__varpartitions_558((*n)._kind_6.sons->data[i_3]);
2032 							if (!!(T24_)) goto LA25_;
2033 							result = NIM_FALSE;
2034 							goto BeforeRet_;
2035 						}
2036 						LA25_: ;
2037 						i_4 += ((NI) 1);
2038 					} LA21: ;
2039 				}
2040 			}
2041 		}
2042 		LA17_: ;
2043 	}
2044 	break;
2045 	default:
2046 	{
2047 	}
2048 	break;
2049 	}
2050 	}BeforeRet_: ;
2051 	return result;
2052 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,pathExpr__varpartitions_593)2053 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, pathExpr__varpartitions_593)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner) {
2054 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
2055 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
2056 	result = NIM_NIL;
2057 	n = node;
2058 	result = ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL);
2059 	{
2060 		while (1) {
2061 			switch ((*n).kind) {
2062 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
2063 			{
2064 				switch ((*(*n)._kind_4.sym).kind) {
2065 				case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3):
2066 				case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 5):
2067 				case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11):
2068 				case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 21):
2069 				{
2070 					{
2071 						if (!((*(*n)._kind_4.sym).owner == owner)) goto LA7_;
2072 						result = n;
2073 					}
2074 					LA7_: ;
2075 				}
2076 				break;
2077 				case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8):
2078 				{
2079 					{
2080 						NIM_BOOL T12_;
2081 						T12_ = (NIM_BOOL)0;
2082 						T12_ = ((*(*n)._kind_4.sym).owner == owner);
2083 						if (T12_) goto LA13_;
2084 						T12_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 26))&63U)))!=0);
2085 						LA13_: ;
2086 						if (!T12_) goto LA14_;
2087 						result = n;
2088 					}
2089 					LA14_: ;
2090 				}
2091 				break;
2092 				case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 9):
2093 				case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 10):
2094 				{
2095 					{
2096 						NIM_BOOL T19_;
2097 						T19_ = (NIM_BOOL)0;
2098 						T19_ = ((*(*n)._kind_4.sym).owner == owner);
2099 						if (T19_) goto LA20_;
2100 						T19_ = !(((67108872 & (*(*n)._kind_4.sym).flags) == 0));
2101 						LA20_: ;
2102 						if (!T19_) goto LA21_;
2103 						result = n;
2104 					}
2105 					LA21_: ;
2106 				}
2107 				break;
2108 				default:
2109 				{
2110 				}
2111 				break;
2112 				}
2113 				goto LA1;
2114 			}
2115 			break;
2116 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45):
2117 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47):
2118 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42):
2119 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65):
2120 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46):
2121 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
2122 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
2123 			{
2124 				n = (*n)._kind_6.sons->data[((NI) 0)];
2125 			}
2126 			break;
2127 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
2128 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
2129 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 60):
2130 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61):
2131 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 67):
2132 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66):
2133 			{
2134 				n = lastSon__ast_4832(n);
2135 			}
2136 			break;
2137 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
2138 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
2139 			{
2140 				{
2141 					NIM_BOOL T29_;
2142 					NI T30_;
2143 					T29_ = (NIM_BOOL)0;
2144 					T30_ = (NI)0;
2145 					T30_ = len__ast_3198(n);
2146 					T29_ = (((NI) 0) < T30_);
2147 					if (!(T29_)) goto LA31_;
2148 					T29_ = stupidStmtListExpr__trees_404(n);
2149 					LA31_: ;
2150 					if (!T29_) goto LA32_;
2151 					n = lastSon__ast_4832(n);
2152 				}
2153 				goto LA27_;
2154 				LA32_: ;
2155 				{
2156 					goto LA1;
2157 				}
2158 				LA27_: ;
2159 			}
2160 			break;
2161 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
2162 			{
2163 				{
2164 					NI T38_;
2165 					T38_ = (NI)0;
2166 					T38_ = len__ast_3198(n);
2167 					if (!(((NI) 1) < T38_)) goto LA39_;
2168 					{
2169 						NIM_BOOL T43_;
2170 						NIM_BOOL T44_;
2171 						tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog T46_;
2172 						tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg T48_;
2173 						T43_ = (NIM_BOOL)0;
2174 						T44_ = (NIM_BOOL)0;
2175 						T44_ = !(((*n).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
2176 						if (!(T44_)) goto LA45_;
2177 						T46_ = (tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog)0;
2178 						T46_ = classifyViewType__typeallowed_564((*n).typ);
2179 						T44_ = !((T46_ == ((tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog) 0)));
2180 						LA45_: ;
2181 						T43_ = T44_;
2182 						if (T43_) goto LA47_;
2183 						T48_ = (tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg)0;
2184 						T48_ = getMagic__trees_137(n);
2185 						T43_ = (T48_ == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 126));
2186 						LA47_: ;
2187 						if (!T43_) goto LA49_;
2188 						n = (*n)._kind_6.sons->data[((NI) 1)];
2189 					}
2190 					goto LA41_;
2191 					LA49_: ;
2192 					{
2193 						goto LA1;
2194 					}
2195 					LA41_: ;
2196 				}
2197 				goto LA36_;
2198 				LA39_: ;
2199 				{
2200 					goto LA1;
2201 				}
2202 				LA36_: ;
2203 			}
2204 			break;
2205 			default:
2206 			{
2207 				goto LA1;
2208 			}
2209 			break;
2210 			}
2211 		}
2212 	} LA1: ;
2213 	{
2214 		NIM_BOOL T56_;
2215 		T56_ = (NIM_BOOL)0;
2216 		T56_ = (result == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
2217 		if (!(T56_)) goto LA57_;
2218 		T56_ = borrowFromConstExpr__varpartitions_558(n);
2219 		LA57_: ;
2220 		if (!T56_) goto LA58_;
2221 		result = n;
2222 	}
2223 	LA58_: ;
2224 	return result;
2225 }
N_INLINE(void,nimCopyMem)2226 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
2227 	void* T1_;
2228 	T1_ = (void*)0;
2229 	T1_ = memcpy(dest, source, ((size_t) (size)));
2230 }
N_INLINE(void,copyMem__system_1727)2231 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
2232 	nimCopyMem(dest, source, size);
2233 }
N_INLINE(void,appendString)2234 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
2235 	{
2236 		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
2237 		copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
2238 		(*dest).Sup.len += (*src).Sup.len;
2239 	}
2240 	LA3_: ;
2241 }
N_NIMCALL(NimStringDesc *,toString__varpartitions_1017)2242 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toString__varpartitions_1017)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
2243 	NimStringDesc* result;
2244 	result = NIM_NIL;
2245 	{
2246 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1))) goto LA3_;
2247 		result = copyString(((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_15));
2248 	}
2249 	goto LA1_;
2250 	LA3_: ;
2251 	{
2252 		result = dollar___renderer_2106(n);
2253 	}
2254 	LA1_: ;
2255 	return result;
2256 }
N_INLINE(NI,pluspercent___system_696)2257 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
2258 	NI result;
2259 	result = (NI)0;
2260 	result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
2261 	return result;
2262 }
N_INLINE(void,incRef__system_5308)2263 static N_INLINE(void, incRef__system_5308)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2264 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
2265 }
N_INLINE(NI,minuspercent___system_716)2266 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
2267 	NI result;
2268 	result = (NI)0;
2269 	result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
2270 	return result;
2271 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5270)2272 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5270)(void* usr) {
2273 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
2274 	NI T1_;
2275 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2276 	T1_ = (NI)0;
2277 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
2278 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
2279 	return result;
2280 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)2281 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
2282 	NIM_BOOL result;
2283 	result = (NIM_BOOL)0;
2284 	result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
2285 	return result;
2286 }
N_INLINE(void,rtlAddZCT__system_5313)2287 static N_INLINE(void, rtlAddZCT__system_5313)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2288 	addZCT__system_5264((&gch__system_5217.zct), c);
2289 }
N_INLINE(void,decRef__system_5315)2290 static N_INLINE(void, decRef__system_5315)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2291 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
2292 	{
2293 		NIM_BOOL T3_;
2294 		T3_ = (NIM_BOOL)0;
2295 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
2296 		if (!T3_) goto LA4_;
2297 		rtlAddZCT__system_5313(c);
2298 	}
2299 	LA4_: ;
2300 }
N_INLINE(void,asgnRef)2301 static N_INLINE(void, asgnRef)(void** dest, void* src) {
2302 	{
2303 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
2304 		if (!!((src == NIM_NIL))) goto LA3_;
2305 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2306 		T5_ = usrToCell__system_5270(src);
2307 		incRef__system_5308(T5_);
2308 	}
2309 	LA3_: ;
2310 	{
2311 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
2312 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
2313 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2314 		T10_ = usrToCell__system_5270((*dest));
2315 		decRef__system_5315(T10_);
2316 	}
2317 	LA8_: ;
2318 	(*dest) = src;
2319 }
N_NIMCALL(NIM_BOOL,isConstSym__varpartitions_1002)2320 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isConstSym__varpartitions_1002)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
2321 	NIM_BOOL result;
2322 	NIM_BOOL T1_;
2323 	NIM_BOOL T3_;
2324 	result = (NIM_BOOL)0;
2325 	T1_ = (NIM_BOOL)0;
2326 	T1_ = ((1536 &((NU32)1<<((NU)((*s).kind)&31U)))!=0);
2327 	if (T1_) goto LA2_;
2328 	T3_ = (NIM_BOOL)0;
2329 	T3_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
2330 	if (!(T3_)) goto LA4_;
2331 	T3_ = !(((*(*s).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*s).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46)));
2332 	LA4_: ;
2333 	T1_ = T3_;
2334 	LA2_: ;
2335 	result = T1_;
2336 	return result;
2337 }
N_NIMCALL(void,borrowFrom__varpartitions_1024)2338 N_LIB_PRIVATE N_NIMCALL(void, borrowFrom__varpartitions_1024)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* dest, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src) {
2339 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s;
2340 	s = pathExpr__varpartitions_593(src, (*c).owner);
2341 	{
2342 		NimStringDesc* T5_;
2343 		NimStringDesc* T6_;
2344 		if (!(s == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
2345 		T5_ = NIM_NIL;
2346 		T6_ = NIM_NIL;
2347 		T6_ = toString__varpartitions_1017(src);
2348 		T5_ = rawNewString((T6_ ? T6_->Sup.len : 0) + 159);
2349 appendString(T5_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_14));
2350 appendString(T5_, T6_);
2351 appendString(T5_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_16));
2352 		liMessage__msgs_1118((*(*c).g).config, (*src).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T5_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__39a9bfgg3gnILXo9by9cxATh0Q_17, NIM_FALSE);
2353 	}
2354 	goto LA1_;
2355 	LA3_: ;
2356 	{
2357 		NI vid;
2358 		if (!((*s).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA8_;
2359 		{
2360 			if (!((*dest).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11))) goto LA12_;
2361 			{
2362 				NIM_BOOL T16_;
2363 				T16_ = (NIM_BOOL)0;
2364 				T16_ = !(((*(*s)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3)));
2365 				if (T16_) goto LA17_;
2366 				T16_ = !(((*(*s)._kind_4.sym).position == ((NI) 0)));
2367 				LA17_: ;
2368 				if (!T16_) goto LA18_;
2369 				liMessage__msgs_1118((*(*c).g).config, (*src).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_19), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__39a9bfgg3gnILXo9by9cxATh0Q_20, NIM_FALSE);
2370 			}
2371 			LA18_: ;
2372 		}
2373 		LA12_: ;
2374 		vid = variableId__varpartitions_197((&(*c)), dest);
2375 		{
2376 			NI sourceIdx;
2377 			NI T31_;
2378 			if (!(((NI) 0) <= vid)) goto LA22_;
2379 			sourceIdx = variableId__varpartitions_197((&(*c)), (*s)._kind_4.sym);
2380 			{
2381 				NI T28_;
2382 				tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA T29_;
2383 				NI T30_;
2384 				if (!(sourceIdx < ((NI) 0))) goto LA26_;
2385 				T28_ = ((*c).s ? (*c).s->Sup.len : 0);
2386 				sourceIdx = T28_;
2387 				nimZeroMem((void*)(&T29_), sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA));
2388 				nimZeroMem((void*)(&T29_), sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA));
2389 				nimZeroMem((void*)(&T29_.con), sizeof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg));
2390 				T29_.con.kind = ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 0);
2391 				T29_.sym = (*s)._kind_4.sym;
2392 				T29_.reassignedTo = ((NI) 0);
2393 				T29_.aliveStart = ((NI) -1);
2394 				T29_.aliveEnd = ((NI) 2147483647);
2395 				unsureAsgnRef((void**) (&(*c).s), (tySequence__7PsCyIDXDb8nGSU5UlS9cAA*) incrSeqV3((TGenericSeq*)((*c).s), (&NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_)));
2396 				T30_ = (*c).s->Sup.len++;
2397 				genericAssign((void*)(&(*c).s->data[T30_]), (void*)(&T29_), (&NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_));
2398 			}
2399 			LA26_: ;
2400 			asgnRef((void**) (&(*c).s->data[vid].borrowsFrom), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*c).s->data[vid].borrowsFrom), (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_)));
2401 			T31_ = (*c).s->data[vid].borrowsFrom->Sup.len++;
2402 			(*c).s->data[vid].borrowsFrom->data[T31_] = sourceIdx;
2403 			{
2404 				NIM_BOOL T34_;
2405 				T34_ = (NIM_BOOL)0;
2406 				T34_ = isConstSym__varpartitions_1002((*s)._kind_4.sym);
2407 				if (!T34_) goto LA35_;
2408 				(*c).s->data[vid].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 5)) & 7);
2409 			}
2410 			LA35_: ;
2411 		}
2412 		LA22_: ;
2413 	}
2414 	goto LA1_;
2415 	LA8_: ;
2416 	{
2417 		NI vid_2;
2418 		vid_2 = variableId__varpartitions_197((&(*c)), dest);
2419 		{
2420 			if (!(((NI) 0) <= vid_2)) goto LA40_;
2421 			(*c).s->data[vid_2].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 5)) & 7);
2422 		}
2423 		LA40_: ;
2424 	}
2425 	LA1_: ;
2426 }
N_NIMCALL(void,borrowingAsgn__varpartitions_1098)2427 N_LIB_PRIVATE N_NIMCALL(void, borrowingAsgn__varpartitions_1098)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src) {
2428 	{
2429 		if (!((*dest).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA3_;
2430 		{
2431 			tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog T7_;
2432 			T7_ = (tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog)0;
2433 			T7_ = directViewType__typeallowed_568((*dest).typ);
2434 			if (!!((T7_ == ((tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog) 0)))) goto LA8_;
2435 			borrowFrom__varpartitions_1024(c, (*dest)._kind_4.sym, src);
2436 		}
2437 		LA8_: ;
2438 	}
2439 	goto LA1_;
2440 	LA3_: ;
2441 	{
2442 		tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog T13_;
2443 		if (!((*dest).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65) || (*dest).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47) || (*dest).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42))) goto LA11_;
2444 		T13_ = (tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog)0;
2445 		T13_ = directViewType__typeallowed_568((*(*dest)._kind_6.sons->data[((NI) 0)]).typ);
2446 		switch (T13_) {
2447 		case ((tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog) 2):
2448 		case ((tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog) 1):
2449 		{
2450 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* viewOrigin;
2451 			viewOrigin = pathExpr__varpartitions_593(dest, (*c).owner);
2452 			{
2453 				NI vid;
2454 				if (!((*viewOrigin).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA17_;
2455 				vid = variableId__varpartitions_197((&(*c)), (*viewOrigin)._kind_4.sym);
2456 				{
2457 					if (!(((NI) 0) <= vid)) goto LA21_;
2458 					(*c).s->data[vid].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 4)) & 7);
2459 				}
2460 				LA21_: ;
2461 			}
2462 			LA17_: ;
2463 		}
2464 		break;
2465 		case ((tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog) 0):
2466 		{
2467 		}
2468 		break;
2469 		}
2470 	}
2471 	goto LA1_;
2472 	LA11_: ;
2473 	LA1_: ;
2474 }
N_NIMCALL(void,Marker_tySequence__u9c10b19cqoKPxYSuh3ZKtIw)2475 static N_NIMCALL(void, Marker_tySequence__u9c10b19cqoKPxYSuh3ZKtIw)(void* p, NI op) {
2476 	tySequence__u9c10b19cqoKPxYSuh3ZKtIw* a;
2477 	NI T1_;
2478 	a = (tySequence__u9c10b19cqoKPxYSuh3ZKtIw*)p;
2479 	T1_ = (NI)0;
2480 	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
2481 	nimGCvisit((void*)a->data[T1_].Field0, op);
2482 	}
2483 }
N_INLINE(NIM_BOOL,isEmptyType__ast_4779)2484 static N_INLINE(NIM_BOOL, isEmptyType__ast_4779)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
2485 	NIM_BOOL result;
2486 	NIM_BOOL T1_;
2487 	result = (NIM_BOOL)0;
2488 	T1_ = (NIM_BOOL)0;
2489 	T1_ = (t == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
2490 	if (T1_) goto LA2_;
2491 	T1_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 7));
2492 	LA2_: ;
2493 	result = T1_;
2494 	return result;
2495 }
N_NIMCALL(void,allRoots__varpartitions_653)2496 N_LIB_PRIVATE N_NIMCALL(void, allRoots__varpartitions_653)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySequence__u9c10b19cqoKPxYSuh3ZKtIw** result, NI level) {
2497 {	switch ((*n).kind) {
2498 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
2499 	{
2500 		{
2501 			tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ T6_;
2502 			NI T7_;
2503 			if (!((2100008 &((NU32)1<<((NU)((*(*n)._kind_4.sym).kind)&31U)))!=0)) goto LA4_;
2504 			nimZeroMem((void*)(&T6_), sizeof(tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ));
2505 			T6_.Field0 = (*n)._kind_4.sym;
2506 			T6_.Field1 = level;
2507 			unsureAsgnRef((void**) (&(*result)), (tySequence__u9c10b19cqoKPxYSuh3ZKtIw*) incrSeqV3((TGenericSeq*)((*result)), (&NTIseqLLpsym_intTT__u9c10b19cqoKPxYSuh3ZKtIw_)));
2508 			T7_ = (*result)->Sup.len++;
2509 			asgnRef((void**) (&(*result)->data[T7_].Field0), T6_.Field0);
2510 			(*result)->data[T7_].Field1 = T6_.Field1;
2511 		}
2512 		LA4_: ;
2513 	}
2514 	break;
2515 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47):
2516 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65):
2517 	{
2518 		allRoots__varpartitions_653((*n)._kind_6.sons->data[((NI) 0)], result, (NI)(level + ((NI) 1)));
2519 	}
2520 	break;
2521 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42):
2522 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45):
2523 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46):
2524 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
2525 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
2526 	{
2527 		allRoots__varpartitions_653((*n)._kind_6.sons->data[((NI) 0)], result, level);
2528 	}
2529 	break;
2530 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 33):
2531 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34):
2532 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
2533 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
2534 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 60):
2535 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
2536 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
2537 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 112):
2538 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 127):
2539 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61):
2540 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 67):
2541 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66):
2542 	{
2543 		{
2544 			NI T13_;
2545 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T16_;
2546 			T13_ = (NI)0;
2547 			T13_ = len__ast_3198(n);
2548 			if (!(((NI) 0) < T13_)) goto LA14_;
2549 			T16_ = NIM_NIL;
2550 			T16_ = lastSon__ast_4832(n);
2551 			allRoots__varpartitions_653(T16_, result, level);
2552 		}
2553 		LA14_: ;
2554 	}
2555 	break;
2556 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 97):
2557 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38):
2558 	{
2559 		{
2560 			NI i;
2561 			NI colontmp_;
2562 			NI i_2;
2563 			i = (NI)0;
2564 			colontmp_ = (NI)0;
2565 			colontmp_ = len__ast_3198(n);
2566 			i_2 = ((NI) 1);
2567 			{
2568 				while (1) {
2569 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T21_;
2570 					if (!(i_2 < colontmp_)) goto LA20;
2571 					i = i_2;
2572 					T21_ = NIM_NIL;
2573 					T21_ = lastSon__ast_4832((*n)._kind_6.sons->data[i]);
2574 					allRoots__varpartitions_653(T21_, result, level);
2575 					i_2 += ((NI) 1);
2576 				} LA20: ;
2577 			}
2578 		}
2579 	}
2580 	break;
2581 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92):
2582 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 48):
2583 	{
2584 		{
2585 			NI i_3;
2586 			NI colontmp__2;
2587 			NI i_4;
2588 			i_3 = (NI)0;
2589 			colontmp__2 = (NI)0;
2590 			colontmp__2 = len__ast_3198(n);
2591 			i_4 = ((NI) 0);
2592 			{
2593 				while (1) {
2594 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T26_;
2595 					if (!(i_4 < colontmp__2)) goto LA25;
2596 					i_3 = i_4;
2597 					T26_ = NIM_NIL;
2598 					T26_ = lastSon__ast_4832((*n)._kind_6.sons->data[i_3]);
2599 					allRoots__varpartitions_653(T26_, result, level);
2600 					i_4 += ((NI) 1);
2601 				} LA25: ;
2602 			}
2603 		}
2604 	}
2605 	break;
2606 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41):
2607 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160):
2608 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 37):
2609 	{
2610 		{
2611 			NI i_5;
2612 			NI colontmp__3;
2613 			NI i_6;
2614 			i_5 = (NI)0;
2615 			colontmp__3 = (NI)0;
2616 			colontmp__3 = len__ast_3198(n);
2617 			i_6 = ((NI) 0);
2618 			{
2619 				while (1) {
2620 					if (!(i_6 < colontmp__3)) goto LA30;
2621 					i_5 = i_6;
2622 					allRoots__varpartitions_653((*n)._kind_6.sons->data[i_5], result, (NI)(level - ((NI) 1)));
2623 					i_6 += ((NI) 1);
2624 				} LA30: ;
2625 			}
2626 		}
2627 	}
2628 	break;
2629 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
2630 	{
2631 		{
2632 			NIM_BOOL T34_;
2633 			T34_ = (NIM_BOOL)0;
2634 			T34_ = !(((*n).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
2635 			if (!(T34_)) goto LA35_;
2636 			T34_ = ((*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47));
2637 			LA35_: ;
2638 			if (!T34_) goto LA36_;
2639 			{
2640 				NI T40_;
2641 				T40_ = (NI)0;
2642 				T40_ = len__ast_3198(n);
2643 				if (!(((NI) 1) < T40_)) goto LA41_;
2644 				allRoots__varpartitions_653((*n)._kind_6.sons->data[((NI) 1)], result, ((NI) 1000));
2645 			}
2646 			LA41_: ;
2647 		}
2648 		goto LA32_;
2649 		LA36_: ;
2650 		{
2651 			tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m;
2652 			m = getMagic__trees_137(n);
2653 			switch (m) {
2654 			case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0):
2655 			{
2656 				tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
2657 				{
2658 					if (!((*(*n)._kind_6.sons->data[((NI) 0)]).typ == 0)) goto LA47_;
2659 					goto BeforeRet_;
2660 				}
2661 				LA47_: ;
2662 				typ = (*(*n)._kind_6.sons->data[((NI) 0)]).typ;
2663 				{
2664 					if (!!((typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA51_;
2665 					typ = skipTypes__ast_3735(typ, TM__39a9bfgg3gnILXo9by9cxATh0Q_22);
2666 					{
2667 						if (!!(((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25)))) goto LA55_;
2668 						typ = ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL);
2669 					}
2670 					goto LA53_;
2671 					LA55_: ;
2672 					{
2673 					}
2674 					LA53_: ;
2675 				}
2676 				LA51_: ;
2677 				{
2678 					NI i_7;
2679 					NI colontmp__4;
2680 					NI i_8;
2681 					i_7 = (NI)0;
2682 					colontmp__4 = (NI)0;
2683 					colontmp__4 = len__ast_3198(n);
2684 					i_8 = ((NI) 1);
2685 					{
2686 						while (1) {
2687 							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
2688 							if (!(i_8 < colontmp__4)) goto LA60;
2689 							i_7 = i_8;
2690 							it = (*n)._kind_6.sons->data[i_7];
2691 							{
2692 								NIM_BOOL T63_;
2693 								NI T65_;
2694 								tyObject_TType__facALICuu8zUj0hjvbTLFg* paramType;
2695 								T63_ = (NIM_BOOL)0;
2696 								T63_ = !((typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
2697 								if (!(T63_)) goto LA64_;
2698 								T65_ = (NI)0;
2699 								T65_ = len__ast_4002(typ);
2700 								T63_ = (i_7 < T65_);
2701 								LA64_: ;
2702 								if (!T63_) goto LA66_;
2703 								paramType = (*(*(*typ).n)._kind_6.sons->data[i_7]).typ;
2704 								{
2705 									NIM_BOOL T70_;
2706 									NIM_BOOL T71_;
2707 									NIM_BOOL T72_;
2708 									NIM_BOOL T74_;
2709 									T70_ = (NIM_BOOL)0;
2710 									T71_ = (NIM_BOOL)0;
2711 									T72_ = (NIM_BOOL)0;
2712 									T72_ = isCompileTimeOnly__types_3519(paramType);
2713 									T71_ = !(T72_);
2714 									if (!(T71_)) goto LA73_;
2715 									T74_ = (NIM_BOOL)0;
2716 									T74_ = isEmptyType__ast_4779((*typ).sons->data[((NI) 0)]);
2717 									T71_ = !(T74_);
2718 									LA73_: ;
2719 									T70_ = T71_;
2720 									if (!(T70_)) goto LA75_;
2721 									T70_ = canAlias__isolation95check_99(paramType, (*typ).sons->data[((NI) 0)]);
2722 									LA75_: ;
2723 									if (!T70_) goto LA76_;
2724 									allRoots__varpartitions_653(it, result, ((NI) 1000));
2725 								}
2726 								LA76_: ;
2727 							}
2728 							goto LA61_;
2729 							LA66_: ;
2730 							{
2731 								allRoots__varpartitions_653(it, result, ((NI) 1000));
2732 							}
2733 							LA61_: ;
2734 							i_8 += ((NI) 1);
2735 						} LA60: ;
2736 					}
2737 				}
2738 			}
2739 			break;
2740 			case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 126):
2741 			{
2742 				allRoots__varpartitions_653((*n)._kind_6.sons->data[((NI) 1)], result, (NI)(level + ((NI) 1)));
2743 			}
2744 			break;
2745 			default:
2746 			{
2747 			}
2748 			break;
2749 			}
2750 		}
2751 		LA32_: ;
2752 	}
2753 	break;
2754 	default:
2755 	{
2756 	}
2757 	break;
2758 	}
2759 	}BeforeRet_: ;
2760 }
N_NIMCALL(NIM_BOOL,wrap__varpartitions_1143)2761 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, wrap__varpartitions_1143)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
2762 	NIM_BOOL result;
2763 	result = (NIM_BOOL)0;
2764 	result = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21));
2765 	return result;
2766 }
N_NIMCALL(NIM_BOOL,containsPointer__varpartitions_1140)2767 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsPointer__varpartitions_1140)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
2768 	NIM_BOOL result;
2769 	result = (NIM_BOOL)0;
2770 	result = searchTypeFor__types_470(t, wrap__varpartitions_1143);
2771 	return result;
2772 }
N_NIMCALL(NI,root__varpartitions_315)2773 N_LIB_PRIVATE N_NIMCALL(NI, root__varpartitions_315)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* v, NI start) {
2774 	NI result;
2775 	NI depth;
2776 	result = (NI)0;
2777 	result = start;
2778 	depth = ((NI) 0);
2779 	{
2780 		while (1) {
2781 			if (!((*v).s->data[result].con.kind == ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 1))) goto LA2;
2782 			result = (*v).s->data[result].con.parent;
2783 			depth += ((NI) 1);
2784 		} LA2: ;
2785 	}
2786 	{
2787 		NI it;
2788 		if (!(((NI) 0) < depth)) goto LA5_;
2789 		it = start;
2790 		{
2791 			while (1) {
2792 				NI next;
2793 				tyObject_Connection__EevFKe104MtQGkxxkLKkgg T9_;
2794 				if (!((*v).s->data[it].con.kind == ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 1))) goto LA8;
2795 				next = (*v).s->data[it].con.parent;
2796 				nimZeroMem((void*)(&T9_), sizeof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg));
2797 				T9_.kind = ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 1);
2798 				T9_.parent = result;
2799 				(*v).s->data[it].con = T9_;
2800 				it = next;
2801 			} LA8: ;
2802 		}
2803 	}
2804 	LA5_: ;
2805 	return result;
2806 }
N_NIMCALL(void,potentialMutation__varpartitions_335)2807 N_LIB_PRIVATE N_NIMCALL(void, potentialMutation__varpartitions_335)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* v, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NI level, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
2808 	NI id;
2809 	id = variableId__varpartitions_197((&(*v)), s);
2810 	{
2811 		NI r;
2812 		tySet_tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw flags;
2813 		if (!(((NI) 0) <= id)) goto LA3_;
2814 		r = root__varpartitions_315(v, id);
2815 		{
2816 			if (!((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3))) goto LA7_;
2817 			{
2818 				NIM_BOOL T11_;
2819 				T11_ = (NIM_BOOL)0;
2820 				T11_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
2821 				if (!(T11_)) goto LA12_;
2822 				T11_ = !(((*(*s).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*s).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46)));
2823 				LA12_: ;
2824 				if (!T11_) goto LA13_;
2825 				flags = 3;
2826 			}
2827 			goto LA9_;
2828 			LA13_: ;
2829 			{
2830 				NIM_BOOL T16_;
2831 				T16_ = (NIM_BOOL)0;
2832 				T16_ = ((*(*s).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
2833 				if (!(T16_)) goto LA17_;
2834 				T16_ = (level <= ((NI) 1));
2835 				LA17_: ;
2836 				if (!T16_) goto LA18_;
2837 				flags = 4;
2838 			}
2839 			goto LA9_;
2840 			LA18_: ;
2841 			{
2842 				flags = 1;
2843 			}
2844 			LA9_: ;
2845 		}
2846 		goto LA5_;
2847 		LA7_: ;
2848 		{
2849 			flags = 1;
2850 		}
2851 		LA5_: ;
2852 		switch ((*v).s->data[r].con.kind) {
2853 		case ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 0):
2854 		{
2855 			tyObject_Connection__EevFKe104MtQGkxxkLKkgg T23_;
2856 			NI T24_;
2857 			tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug T25_;
2858 			NI T33_;
2859 			nimZeroMem((void*)(&T23_), sizeof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg));
2860 			T23_.kind = ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 2);
2861 			T24_ = ((*v).graphs ? (*v).graphs->Sup.len : 0);
2862 			T23_.graphIndex = T24_;
2863 			(*v).s->data[r].con = T23_;
2864 			nimZeroMem((void*)(&T25_), sizeof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug));
2865 			nimZeroMem((void*)(&T25_), sizeof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug));
2866 			{
2867 				NIM_BOOL T28_;
2868 				T28_ = (NIM_BOOL)0;
2869 				T28_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
2870 				if (!(T28_)) goto LA29_;
2871 				T28_ = !(((*(*s).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*s).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46)));
2872 				LA29_: ;
2873 				if (!T28_) goto LA30_;
2874 				T25_.param = s;
2875 			}
2876 			goto LA26_;
2877 			LA30_: ;
2878 			{
2879 				T25_.param = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2880 			}
2881 			LA26_: ;
2882 			T25_.mutatedHere = info;
2883 			T25_.connectedVia = unknownLineInfo__lineinfos_280;
2884 			T25_.flags = flags;
2885 			T25_.maxMutation = (*v).abstractTime;
2886 			T25_.minConnection = ((NI) 2147483647);
2887 			T25_.mutations = (tySequence__qwqHTkRvwhrRyENtudHQ7g*) newSeq((&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), 1);
2888 			T25_.mutations->data[0] = (*v).abstractTime;
2889 			unsureAsgnRef((void**) (&(*v).graphs), (tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA*) incrSeqV3((TGenericSeq*)((*v).graphs), (&NTIseqLmutationinfoT__QAWA9c8ge5HfZnhFNlb9c9ajA_)));
2890 			T33_ = (*v).graphs->Sup.len++;
2891 			genericAssign((void*)(&(*v).graphs->data[T33_]), (void*)(&T25_), (&NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_));
2892 		}
2893 		break;
2894 		case ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 2):
2895 		{
2896 			tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g;
2897 			NI T47_;
2898 			g = (&(*v).graphs->data[(*v).s->data[r].con.graphIndex]);
2899 			{
2900 				NIM_BOOL T37_;
2901 				NIM_BOOL T39_;
2902 				T37_ = (NIM_BOOL)0;
2903 				T37_ = ((*g).param == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
2904 				if (!(T37_)) goto LA38_;
2905 				T39_ = (NIM_BOOL)0;
2906 				T39_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
2907 				if (!(T39_)) goto LA40_;
2908 				T39_ = !(((*(*s).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*s).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46)));
2909 				LA40_: ;
2910 				T37_ = T39_;
2911 				LA38_: ;
2912 				if (!T37_) goto LA41_;
2913 				unsureAsgnRef((void**) (&(*g).param), s);
2914 			}
2915 			LA41_: ;
2916 			{
2917 				if (!((*g).maxMutation < (*v).abstractTime)) goto LA45_;
2918 				(*g).mutatedHere = info;
2919 				(*g).maxMutation = (*v).abstractTime;
2920 			}
2921 			LA45_: ;
2922 			(*g).flags = ((*g).flags | flags);
2923 			unsureAsgnRef((void**) (&(*g).mutations), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) incrSeqV3((TGenericSeq*)((*g).mutations), (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_)));
2924 			T47_ = (*g).mutations->Sup.len++;
2925 			(*g).mutations->data[T47_] = (*v).abstractTime;
2926 		}
2927 		break;
2928 		default:
2929 		{
2930 		}
2931 		break;
2932 		}
2933 	}
2934 	goto LA1_;
2935 	LA3_: ;
2936 	{
2937 		(*v).unanalysableMutation = NIM_TRUE;
2938 	}
2939 	LA1_: ;
2940 }
N_NIMCALL(void,add__varpartitions_521)2941 N_LIB_PRIVATE N_NIMCALL(void, add__varpartitions_521)(tySequence__qwqHTkRvwhrRyENtudHQ7g** x, NI* y, NI yLen_0) {
2942 	NI xl;
2943 	NI T1_;
2944 	T1_ = ((*x) ? (*x)->Sup.len : 0);
2945 	xl = T1_;
2946 	unsureAsgnRef((void**) (&(*x)), (tySequence__qwqHTkRvwhrRyENtudHQ7g*) setLengthSeqV2(&((*x))->Sup, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_), ((NI) ((NI)(xl + yLen_0)))));
2947 	{
2948 		NI i;
2949 		NI colontmp_;
2950 		NI res;
2951 		i = (NI)0;
2952 		colontmp_ = (NI)0;
2953 		colontmp_ = (yLen_0-1);
2954 		res = ((NI) 0);
2955 		{
2956 			while (1) {
2957 				if (!(res <= colontmp_)) goto LA4;
2958 				i = res;
2959 				(*x)->data[(NI)(xl + i)] = y[i];
2960 				res += ((NI) 1);
2961 			} LA4: ;
2962 		}
2963 	}
2964 }
N_NIMCALL(void,connect__varpartitions_431)2965 N_LIB_PRIVATE N_NIMCALL(void, connect__varpartitions_431)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* v, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* a, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* b, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
2966 	NI aid;
2967 	NI bid;
2968 	NI ra;
2969 	NI rb;
2970 {	aid = variableId__varpartitions_197((&(*v)), a);
2971 	{
2972 		if (!(aid < ((NI) 0))) goto LA3_;
2973 		goto BeforeRet_;
2974 	}
2975 	LA3_: ;
2976 	bid = variableId__varpartitions_197((&(*v)), b);
2977 	{
2978 		if (!(bid < ((NI) 0))) goto LA7_;
2979 		goto BeforeRet_;
2980 	}
2981 	LA7_: ;
2982 	ra = root__varpartitions_315(v, aid);
2983 	rb = root__varpartitions_315(v, bid);
2984 	{
2985 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param;
2986 		tySet_tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw paramFlags;
2987 		tySet_tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw rbFlags;
2988 		tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q mutatedHere;
2989 		NI mut;
2990 		NI con;
2991 		tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* gb;
2992 		tyObject_Connection__EevFKe104MtQGkxxkLKkgg T37_;
2993 		if (!!((ra == rb))) goto LA11_;
2994 		param = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2995 		{
2996 			NIM_BOOL T15_;
2997 			T15_ = (NIM_BOOL)0;
2998 			T15_ = ((*a).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
2999 			if (!(T15_)) goto LA16_;
3000 			T15_ = !(((*(*a).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*a).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46)));
3001 			LA16_: ;
3002 			if (!T15_) goto LA17_;
3003 			param = a;
3004 		}
3005 		goto LA13_;
3006 		LA17_: ;
3007 		{
3008 			NIM_BOOL T20_;
3009 			T20_ = (NIM_BOOL)0;
3010 			T20_ = ((*b).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
3011 			if (!(T20_)) goto LA21_;
3012 			T20_ = !(((*(*b).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*b).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46)));
3013 			LA21_: ;
3014 			if (!T20_) goto LA22_;
3015 			param = b;
3016 		}
3017 		goto LA13_;
3018 		LA22_: ;
3019 		LA13_: ;
3020 		{
3021 			if (!!((param == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA26_;
3022 			paramFlags = 8;
3023 		}
3024 		goto LA24_;
3025 		LA26_: ;
3026 		{
3027 			paramFlags = 0;
3028 		}
3029 		LA24_: ;
3030 		rbFlags = 0;
3031 		mutatedHere = unknownLineInfo__lineinfos_280;
3032 		mut = ((NI) 0);
3033 		con = (*v).abstractTime;
3034 		gb = ((tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug*) NIM_NIL);
3035 		{
3036 			if (!((*v).s->data[rb].con.kind == ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 2))) goto LA31_;
3037 			gb = (&(*v).graphs->data[(*v).s->data[rb].con.graphIndex]);
3038 			{
3039 				if (!(param == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA35_;
3040 				param = (*gb).param;
3041 			}
3042 			LA35_: ;
3043 			mutatedHere = (*gb).mutatedHere;
3044 			rbFlags = (*gb).flags;
3045 			mut = (*gb).maxMutation;
3046 			con = min__varpartitions_475(con, (*gb).minConnection);
3047 		}
3048 		LA31_: ;
3049 		nimZeroMem((void*)(&T37_), sizeof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg));
3050 		T37_.kind = ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 1);
3051 		T37_.parent = ra;
3052 		(*v).s->data[rb].con = T37_;
3053 		switch ((*v).s->data[ra].con.kind) {
3054 		case ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 0):
3055 		{
3056 			tyObject_Connection__EevFKe104MtQGkxxkLKkgg T39_;
3057 			NI T40_;
3058 			tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug T41_;
3059 			NI T47_;
3060 			nimZeroMem((void*)(&T39_), sizeof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg));
3061 			T39_.kind = ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 2);
3062 			T40_ = ((*v).graphs ? (*v).graphs->Sup.len : 0);
3063 			T39_.graphIndex = T40_;
3064 			(*v).s->data[ra].con = T39_;
3065 			nimZeroMem((void*)(&T41_), sizeof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug));
3066 			nimZeroMem((void*)(&T41_), sizeof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug));
3067 			T41_.param = param;
3068 			T41_.mutatedHere = mutatedHere;
3069 			T41_.connectedVia = info;
3070 			T41_.flags = (paramFlags | rbFlags);
3071 			T41_.maxMutation = mut;
3072 			T41_.minConnection = con;
3073 			{
3074 				if (!!((gb == ((tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug*) NIM_NIL)))) goto LA44_;
3075 				genericSeqAssign((&T41_.mutations), (*gb).mutations, (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_));
3076 			}
3077 			goto LA42_;
3078 			LA44_: ;
3079 			{
3080 				T41_.mutations = NIM_NIL;
3081 			}
3082 			LA42_: ;
3083 			unsureAsgnRef((void**) (&(*v).graphs), (tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA*) incrSeqV3((TGenericSeq*)((*v).graphs), (&NTIseqLmutationinfoT__QAWA9c8ge5HfZnhFNlb9c9ajA_)));
3084 			T47_ = (*v).graphs->Sup.len++;
3085 			genericAssign((void*)(&(*v).graphs->data[T47_]), (void*)(&T41_), (&NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_));
3086 		}
3087 		break;
3088 		case ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 2):
3089 		{
3090 			tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g;
3091 			g = (&(*v).graphs->data[(*v).s->data[ra].con.graphIndex]);
3092 			{
3093 				if (!((*g).param == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA51_;
3094 				unsureAsgnRef((void**) (&(*g).param), param);
3095 			}
3096 			LA51_: ;
3097 			{
3098 				NIM_BOOL T55_;
3099 				T55_ = (NIM_BOOL)0;
3100 				T55_ = eqeq___msgs_993((*g).mutatedHere, unknownLineInfo__lineinfos_280);
3101 				if (!T55_) goto LA56_;
3102 				(*g).mutatedHere = mutatedHere;
3103 			}
3104 			LA56_: ;
3105 			(*g).minConnection = min__varpartitions_475((*g).minConnection, con);
3106 			(*g).connectedVia = info;
3107 			(*g).flags = ((*g).flags | (paramFlags | rbFlags));
3108 			{
3109 				if (!!((gb == ((tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug*) NIM_NIL)))) goto LA60_;
3110 				add__varpartitions_521((&(*g).mutations), (*gb).mutations->data, ((*gb).mutations ? (*gb).mutations->Sup.len : 0));
3111 			}
3112 			LA60_: ;
3113 		}
3114 		break;
3115 		default:
3116 		{
3117 		}
3118 		break;
3119 		}
3120 	}
3121 	LA11_: ;
3122 	}BeforeRet_: ;
3123 }
N_NIMCALL(void,destMightOwn__varpartitions_779)3124 N_LIB_PRIVATE N_NIMCALL(void, destMightOwn__varpartitions_779)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA* dest, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3125 	switch ((*n).kind) {
3126 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1):
3127 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
3128 	{
3129 	}
3130 	break;
3131 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 33):
3132 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34):
3133 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
3134 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
3135 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61):
3136 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 60):
3137 	{
3138 		destMightOwn__varpartitions_779(c, dest, (*n)._kind_6.sons->data[((NI) 1)]);
3139 	}
3140 	break;
3141 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92):
3142 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 48):
3143 	{
3144 		{
3145 			NI i;
3146 			NI colontmp_;
3147 			NI i_2;
3148 			i = (NI)0;
3149 			colontmp_ = (NI)0;
3150 			colontmp_ = len__ast_3198(n);
3151 			i_2 = ((NI) 0);
3152 			{
3153 				while (1) {
3154 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T7_;
3155 					if (!(i_2 < colontmp_)) goto LA6;
3156 					i = i_2;
3157 					T7_ = NIM_NIL;
3158 					T7_ = lastSon__ast_4832((*n)._kind_6.sons->data[i]);
3159 					destMightOwn__varpartitions_779(c, dest, T7_);
3160 					i_2 += ((NI) 1);
3161 				} LA6: ;
3162 			}
3163 		}
3164 	}
3165 	break;
3166 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 97):
3167 	{
3168 		{
3169 			NI i_3;
3170 			NI colontmp__2;
3171 			NI i_4;
3172 			i_3 = (NI)0;
3173 			colontmp__2 = (NI)0;
3174 			colontmp__2 = len__ast_3198(n);
3175 			i_4 = ((NI) 1);
3176 			{
3177 				while (1) {
3178 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T12_;
3179 					if (!(i_4 < colontmp__2)) goto LA11;
3180 					i_3 = i_4;
3181 					T12_ = NIM_NIL;
3182 					T12_ = lastSon__ast_4832((*n)._kind_6.sons->data[i_3]);
3183 					destMightOwn__varpartitions_779(c, dest, T12_);
3184 					i_4 += ((NI) 1);
3185 				} LA11: ;
3186 			}
3187 		}
3188 	}
3189 	break;
3190 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
3191 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
3192 	{
3193 		{
3194 			NI T16_;
3195 			NI T19_;
3196 			T16_ = (NI)0;
3197 			T16_ = len__ast_3198(n);
3198 			if (!(((NI) 0) < T16_)) goto LA17_;
3199 			T19_ = (NI)0;
3200 			T19_ = len__ast_3198(n);
3201 			destMightOwn__varpartitions_779(c, dest, (*n)._kind_6.sons->data[(NI)(T19_ - ((NI) 1))]);
3202 		}
3203 		LA17_: ;
3204 	}
3205 	break;
3206 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 155):
3207 	{
3208 		{
3209 			NI i_5;
3210 			NI colontmp__3;
3211 			NI i_6;
3212 			i_5 = (NI)0;
3213 			colontmp__3 = (NI)0;
3214 			colontmp__3 = len__ast_3198(n);
3215 			i_6 = ((NI) 1);
3216 			{
3217 				while (1) {
3218 					if (!(i_6 < colontmp__3)) goto LA23;
3219 					i_5 = i_6;
3220 					destMightOwn__varpartitions_779(c, dest, (*n)._kind_6.sons->data[i_5]);
3221 					i_6 += ((NI) 1);
3222 				} LA23: ;
3223 			}
3224 		}
3225 		(*dest).flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 0)) & 7);
3226 	}
3227 	break;
3228 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38):
3229 	{
3230 		{
3231 			NI i_7;
3232 			NI colontmp__4;
3233 			NI i_8;
3234 			i_7 = (NI)0;
3235 			colontmp__4 = (NI)0;
3236 			colontmp__4 = len__ast_3198(n);
3237 			i_8 = ((NI) 1);
3238 			{
3239 				while (1) {
3240 					if (!(i_8 < colontmp__4)) goto LA27;
3241 					i_7 = i_8;
3242 					destMightOwn__varpartitions_779(c, dest, (*n)._kind_6.sons->data[i_7]);
3243 					i_8 += ((NI) 1);
3244 				} LA27: ;
3245 			}
3246 		}
3247 		{
3248 			if (!!(((IL64(2147483664) & (*(*n).typ).flags) == 0))) goto LA30_;
3249 			(*dest).flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 0)) & 7);
3250 		}
3251 		LA30_: ;
3252 	}
3253 	break;
3254 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39):
3255 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41):
3256 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 37):
3257 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160):
3258 	{
3259 		(*c).inConstructor += ((NI) 1);
3260 		{
3261 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son;
3262 			son = NIM_NIL;
3263 			{
3264 				NI i_9;
3265 				NI colontmp__5;
3266 				NI i_10;
3267 				i_9 = (NI)0;
3268 				colontmp__5 = (NI)0;
3269 				colontmp__5 = safeLen__ast_3191(n);
3270 				i_10 = ((NI) 0);
3271 				{
3272 					while (1) {
3273 						if (!(i_10 < colontmp__5)) goto LA36;
3274 						i_9 = i_10;
3275 						son = (*n)._kind_6.sons->data[i_9];
3276 						destMightOwn__varpartitions_779(c, dest, son);
3277 						i_10 += ((NI) 1);
3278 					} LA36: ;
3279 				}
3280 			}
3281 		}
3282 		(*c).inConstructor -= ((NI) 1);
3283 		{
3284 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T39_;
3285 			T39_ = NIM_NIL;
3286 			T39_ = skipTypes__ast_3735((*n).typ, TM__39a9bfgg3gnILXo9by9cxATh0Q_22);
3287 			if (!((*T39_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24))) goto LA40_;
3288 			(*dest).flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 0)) & 7);
3289 		}
3290 		LA40_: ;
3291 	}
3292 	break;
3293 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
3294 	{
3295 		{
3296 			if (!((2100008 &((NU32)1<<((NU)((*(*n)._kind_4.sym).kind)&31U)))!=0)) goto LA45_;
3297 			{
3298 				if (!!((((*(*n)._kind_4.sym).flags & 67108872) == 0))) goto LA49_;
3299 				(*dest).flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 0)) & 7);
3300 			}
3301 			goto LA47_;
3302 			LA49_: ;
3303 			{
3304 				connect__varpartitions_431(c, (*dest).sym, (*n)._kind_4.sym, (*n).info);
3305 				{
3306 					if (!(((NI) 0) < (*c).inConstructor)) goto LA54_;
3307 					(*dest).flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 0)) & 7);
3308 				}
3309 				LA54_: ;
3310 			}
3311 			LA47_: ;
3312 		}
3313 		LA45_: ;
3314 	}
3315 	break;
3316 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45):
3317 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42):
3318 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65):
3319 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47):
3320 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 67):
3321 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66):
3322 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46):
3323 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
3324 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
3325 	{
3326 		destMightOwn__varpartitions_779(c, dest, (*n)._kind_6.sons->data[((NI) 0)]);
3327 	}
3328 	break;
3329 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
3330 	{
3331 		{
3332 			if (!!(((*n).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA60_;
3333 			{
3334 				if (!!(((IL64(2147483664) & (*(*n).typ).flags) == 0))) goto LA64_;
3335 				(*dest).flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 0)) & 7);
3336 			}
3337 			goto LA62_;
3338 			LA64_: ;
3339 			{
3340 				NIM_BOOL T67_;
3341 				NI T69_;
3342 				tySequence__u9c10b19cqoKPxYSuh3ZKtIw* roots;
3343 				T67_ = (NIM_BOOL)0;
3344 				T67_ = ((*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47) || (*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
3345 				if (!(T67_)) goto LA68_;
3346 				T69_ = (NI)0;
3347 				T69_ = len__ast_3198(n);
3348 				T67_ = (((NI) 1) < T69_);
3349 				LA68_: ;
3350 				if (!T67_) goto LA70_;
3351 				roots = NIM_NIL;
3352 				allRoots__varpartitions_653((*n)._kind_6.sons->data[((NI) 1)], (&roots), ((NI) 1000));
3353 				{
3354 					tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ* r;
3355 					NI i_11;
3356 					NI L;
3357 					NI T73_;
3358 					r = (tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ*)0;
3359 					i_11 = ((NI) 0);
3360 					T73_ = (roots ? roots->Sup.len : 0);
3361 					L = T73_;
3362 					{
3363 						while (1) {
3364 							if (!(i_11 < L)) goto LA75;
3365 							r = (&roots->data[i_11]);
3366 							connect__varpartitions_431(c, (*dest).sym, (*r).Field0, (*(*n)._kind_6.sons->data[((NI) 1)]).info);
3367 							i_11 += ((NI) 1);
3368 						} LA75: ;
3369 					}
3370 				}
3371 			}
3372 			goto LA62_;
3373 			LA70_: ;
3374 			{
3375 				tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
3376 				{
3377 					if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA79_;
3378 					magic = (*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic;
3379 				}
3380 				goto LA77_;
3381 				LA79_: ;
3382 				{
3383 					magic = ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0);
3384 				}
3385 				LA77_: ;
3386 				{
3387 					if (!(magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0) || magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 148) || magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 126) || magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 131) || magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 132) || magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 133) || magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 144))) goto LA84_;
3388 					{
3389 						NI i_12;
3390 						NI colontmp__6;
3391 						NI i_13;
3392 						i_12 = (NI)0;
3393 						colontmp__6 = (NI)0;
3394 						colontmp__6 = len__ast_3198(n);
3395 						i_13 = ((NI) 1);
3396 						{
3397 							while (1) {
3398 								if (!(i_13 < colontmp__6)) goto LA88;
3399 								i_12 = i_13;
3400 								{
3401 									tyObject_TType__facALICuu8zUj0hjvbTLFg* T91_;
3402 									T91_ = NIM_NIL;
3403 									T91_ = skipTypes__ast_3735((*(*n)._kind_6.sons->data[i_12]).typ, TM__39a9bfgg3gnILXo9by9cxATh0Q_23);
3404 									if (!!(((IL64(2147483664) & (*T91_).flags) == 0))) goto LA92_;
3405 									destMightOwn__varpartitions_779(c, dest, (*n)._kind_6.sons->data[i_12]);
3406 								}
3407 								LA92_: ;
3408 								i_13 += ((NI) 1);
3409 							} LA88: ;
3410 						}
3411 					}
3412 				}
3413 				LA84_: ;
3414 			}
3415 			LA62_: ;
3416 		}
3417 		LA60_: ;
3418 	}
3419 	break;
3420 	default:
3421 	{
3422 		(*dest).flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 1)) & 7);
3423 	}
3424 	break;
3425 	}
3426 }
N_NIMCALL(void,deps__varpartitions_1150)3427 N_LIB_PRIVATE N_NIMCALL(void, deps__varpartitions_1150)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src) {
3428 	tySequence__u9c10b19cqoKPxYSuh3ZKtIw* targets;
3429 	tySequence__u9c10b19cqoKPxYSuh3ZKtIw* sources;
3430 	NIM_BOOL destIsComplex;
3431 	{
3432 		if (!(((*c).goals &((NU8)1<<((NU)(((tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg) 1))&7U)))!=0)) goto LA3_;
3433 		borrowingAsgn__varpartitions_1098(c, dest, src);
3434 	}
3435 	LA3_: ;
3436 	targets = NIM_NIL;
3437 	sources = NIM_NIL;
3438 	allRoots__varpartitions_653(dest, (&targets), ((NI) 0));
3439 	allRoots__varpartitions_653(src, (&sources), ((NI) 0));
3440 	destIsComplex = containsPointer__varpartitions_1140((*dest).typ);
3441 	{
3442 		tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ* t;
3443 		NI i;
3444 		NI L;
3445 		NI T6_;
3446 		t = (tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ*)0;
3447 		i = ((NI) 0);
3448 		T6_ = (targets ? targets->Sup.len : 0);
3449 		L = T6_;
3450 		{
3451 			while (1) {
3452 				if (!(i < L)) goto LA8;
3453 				t = (&targets->data[i]);
3454 				{
3455 					NIM_BOOL T11_;
3456 					T11_ = (NIM_BOOL)0;
3457 					T11_ = !(((*dest).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)));
3458 					if (!(T11_)) goto LA12_;
3459 					T11_ = ((*c).inNoSideEffectSection == ((NI) 0));
3460 					LA12_: ;
3461 					if (!T11_) goto LA13_;
3462 					potentialMutation__varpartitions_335(c, (*t).Field0, (*t).Field1, (*dest).info);
3463 				}
3464 				LA13_: ;
3465 				{
3466 					if (!destIsComplex) goto LA17_;
3467 					{
3468 						tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ* s;
3469 						NI i_2;
3470 						NI L_2;
3471 						NI T20_;
3472 						s = (tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ*)0;
3473 						i_2 = ((NI) 0);
3474 						T20_ = (sources ? sources->Sup.len : 0);
3475 						L_2 = T20_;
3476 						{
3477 							while (1) {
3478 								if (!(i_2 < L_2)) goto LA22;
3479 								s = (&sources->data[i_2]);
3480 								connect__varpartitions_431(c, (*t).Field0, (*s).Field0, (*dest).info);
3481 								i_2 += ((NI) 1);
3482 							} LA22: ;
3483 						}
3484 					}
3485 				}
3486 				LA17_: ;
3487 				i += ((NI) 1);
3488 			} LA8: ;
3489 		}
3490 	}
3491 	{
3492 		NIM_BOOL T25_;
3493 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* d;
3494 		T25_ = (NIM_BOOL)0;
3495 		T25_ = (((*c).goals &((NU8)1<<((NU)(((tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg) 2))&7U)))!=0);
3496 		if (!(T25_)) goto LA26_;
3497 		T25_ = !(((*src).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)));
3498 		LA26_: ;
3499 		if (!T25_) goto LA27_;
3500 		d = pathExpr__varpartitions_593(dest, (*c).owner);
3501 		{
3502 			NIM_BOOL T31_;
3503 			NI vid;
3504 			T31_ = (NIM_BOOL)0;
3505 			T31_ = !((d == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)));
3506 			if (!(T31_)) goto LA32_;
3507 			T31_ = ((*d).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
3508 			LA32_: ;
3509 			if (!T31_) goto LA33_;
3510 			vid = variableId__varpartitions_197((&(*c)), (*d)._kind_4.sym);
3511 			{
3512 				if (!(((NI) 0) <= vid)) goto LA37_;
3513 				destMightOwn__varpartitions_779(c, (&(*c).s->data[vid]), src);
3514 				{
3515 					tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ* source;
3516 					NI i_3;
3517 					NI L_3;
3518 					NI T40_;
3519 					source = (tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ*)0;
3520 					i_3 = ((NI) 0);
3521 					T40_ = (sources ? sources->Sup.len : 0);
3522 					L_3 = T40_;
3523 					{
3524 						while (1) {
3525 							tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s_2;
3526 							if (!(i_3 < L_3)) goto LA42;
3527 							source = (&sources->data[i_3]);
3528 							s_2 = (*source).Field0;
3529 							{
3530 								if (!(s_2 == (*d)._kind_4.sym)) goto LA45_;
3531 							}
3532 							goto LA43_;
3533 							LA45_: ;
3534 							{
3535 								NIM_BOOL T48_;
3536 								T48_ = (NIM_BOOL)0;
3537 								T48_ = !(((67108872 & (*s_2).flags) == 0));
3538 								if (T48_) goto LA49_;
3539 								T48_ = hasDisabledAsgn__modulegraphs_8859((*c).g, (*s_2).typ);
3540 								LA49_: ;
3541 								if (!T48_) goto LA50_;
3542 								(*c).s->data[vid].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 1)) & 7);
3543 							}
3544 							goto LA43_;
3545 							LA50_: ;
3546 							{
3547 								NI srcid;
3548 								srcid = variableId__varpartitions_197((&(*c)), s_2);
3549 								{
3550 									if (!(((NI) 0) <= srcid)) goto LA55_;
3551 									{
3552 										NIM_BOOL T59_;
3553 										T59_ = (NIM_BOOL)0;
3554 										T59_ = !(((2056 &((NU32)1<<((NU)((*s_2).kind)&31U)))!=0));
3555 										if (!(T59_)) goto LA60_;
3556 										T59_ = ((*c).s->data[srcid].aliveEnd < (*c).s->data[vid].aliveEnd);
3557 										LA60_: ;
3558 										if (!T59_) goto LA61_;
3559 										(*c).s->data[vid].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 1)) & 7);
3560 									}
3561 									goto LA57_;
3562 									LA61_: ;
3563 									{
3564 										if (!!(((6 & (*c).s->data[srcid].flags) == 0))) goto LA64_;
3565 										(*c).s->data[vid].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 1)) & 7);
3566 									}
3567 									goto LA57_;
3568 									LA64_: ;
3569 									{
3570 										NIM_BOOL T67_;
3571 										tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym135_;
3572 										T67_ = (NIM_BOOL)0;
3573 										T67_ = !(((*c).s->data[srcid].reassignedTo == ((NI) 0)));
3574 										if (!(T67_)) goto LA68_;
3575 										xX60gensym135_ = (*d)._kind_4.sym;
3576 										T67_ = !(((*c).s->data[srcid].reassignedTo == (NI)((NI)((NU32)(((NI) ((*xX60gensym135_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym135_).Sup.itemId.item)))));
3577 										LA68_: ;
3578 										if (!T67_) goto LA69_;
3579 										(*c).s->data[vid].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 1)) & 7);
3580 									}
3581 									goto LA57_;
3582 									LA69_: ;
3583 									LA57_: ;
3584 								}
3585 								LA55_: ;
3586 							}
3587 							LA43_: ;
3588 							i_3 += ((NI) 1);
3589 						} LA42: ;
3590 					}
3591 				}
3592 			}
3593 			LA37_: ;
3594 		}
3595 		LA33_: ;
3596 	}
3597 	LA27_: ;
3598 }
N_NIMCALL(void,noCursor__varpartitions_985)3599 N_LIB_PRIVATE N_NIMCALL(void, noCursor__varpartitions_985)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
3600 	NI vid;
3601 	vid = variableId__varpartitions_197((&(*c)), s);
3602 	{
3603 		if (!(((NI) 0) <= vid)) goto LA3_;
3604 		(*c).s->data[vid].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 1)) & 7);
3605 	}
3606 	LA3_: ;
3607 }
N_NIMCALL(void,borrowingCall__varpartitions_1068)3608 N_LIB_PRIVATE N_NIMCALL(void, borrowingCall__varpartitions_1068)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TType__facALICuu8zUj0hjvbTLFg* destType, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NI i) {
3609 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* v;
3610 	v = pathExpr__varpartitions_593((*n)._kind_6.sons->data[i], (*c).owner);
3611 	{
3612 		NIM_BOOL T3_;
3613 		T3_ = (NIM_BOOL)0;
3614 		T3_ = !((v == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)));
3615 		if (!(T3_)) goto LA4_;
3616 		T3_ = ((*v).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
3617 		LA4_: ;
3618 		if (!T3_) goto LA5_;
3619 		{
3620 			NI j;
3621 			NI colontmp_;
3622 			NI colontmp__2;
3623 			NI i_2;
3624 			j = (NI)0;
3625 			colontmp_ = (NI)0;
3626 			colontmp__2 = (NI)0;
3627 			colontmp_ = (NI)(i + ((NI) 1));
3628 			colontmp__2 = len__ast_3198(n);
3629 			i_2 = colontmp_;
3630 			{
3631 				while (1) {
3632 					if (!(i_2 < colontmp__2)) goto LA9;
3633 					j = i_2;
3634 					{
3635 						tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg T12_;
3636 						T12_ = (tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg)0;
3637 						T12_ = getMagic__trees_137((*n)._kind_6.sons->data[j]);
3638 						if (!(T12_ == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 126))) goto LA13_;
3639 						borrowFrom__varpartitions_1024(c, (*v)._kind_4.sym, (*n)._kind_6.sons->data[j]);
3640 					}
3641 					LA13_: ;
3642 					i_2 += ((NI) 1);
3643 				} LA9: ;
3644 			}
3645 		}
3646 	}
3647 	goto LA1_;
3648 	LA5_: ;
3649 	{
3650 		liMessage__msgs_1118((*(*c).g).config, (*(*n)._kind_6.sons->data[i]).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_24), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__39a9bfgg3gnILXo9by9cxATh0Q_25, NIM_FALSE);
3651 	}
3652 	LA1_: ;
3653 }
N_NIMCALL(void,potentialMutationViaArg__varpartitions_1255)3654 N_LIB_PRIVATE N_NIMCALL(void, potentialMutationViaArg__varpartitions_1255)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* callee) {
3655 	{
3656 		NIM_BOOL T3_;
3657 		T3_ = (NIM_BOOL)0;
3658 		T3_ = (((*c).goals &((NU8)1<<((NU)(((tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg) 0))&7U)))!=0);
3659 		if (!(T3_)) goto LA4_;
3660 		T3_ = (((*callee).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1))&63U)))!=0);
3661 		LA4_: ;
3662 		if (!T3_) goto LA5_;
3663 	}
3664 	goto LA1_;
3665 	LA5_: ;
3666 	{
3667 		NIM_BOOL T8_;
3668 		tySequence__u9c10b19cqoKPxYSuh3ZKtIw* roots;
3669 		T8_ = (NIM_BOOL)0;
3670 		T8_ = ((*c).inNoSideEffectSection == ((NI) 0));
3671 		if (!(T8_)) goto LA9_;
3672 		T8_ = containsPointer__varpartitions_1140((*n).typ);
3673 		LA9_: ;
3674 		if (!T8_) goto LA10_;
3675 		roots = NIM_NIL;
3676 		allRoots__varpartitions_653(n, (&roots), ((NI) 1000));
3677 		{
3678 			tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ* r;
3679 			NI i;
3680 			NI L;
3681 			NI T13_;
3682 			r = (tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ*)0;
3683 			i = ((NI) 0);
3684 			T13_ = (roots ? roots->Sup.len : 0);
3685 			L = T13_;
3686 			{
3687 				while (1) {
3688 					if (!(i < L)) goto LA15;
3689 					r = (&roots->data[i]);
3690 					potentialMutation__varpartitions_335(c, (*r).Field0, (*r).Field1, (*n).info);
3691 					i += ((NI) 1);
3692 				} LA15: ;
3693 			}
3694 		}
3695 	}
3696 	goto LA1_;
3697 	LA10_: ;
3698 	LA1_: ;
3699 }
N_NIMCALL(void,pretendOwnsData__varpartitions_993)3700 N_LIB_PRIVATE N_NIMCALL(void, pretendOwnsData__varpartitions_993)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
3701 	NI vid;
3702 	vid = variableId__varpartitions_197((&(*c)), s);
3703 	{
3704 		if (!(((NI) 0) <= vid)) goto LA3_;
3705 		(*c).s->data[vid].flags |= ((NU8)1)<<((((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 0)) & 7);
3706 	}
3707 	LA3_: ;
3708 }
N_NIMCALL(void,traverse__varpartitions_1272)3709 N_LIB_PRIVATE N_NIMCALL(void, traverse__varpartitions_1272)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3710 {	(*c).abstractTime += ((NI) 1);
3711 	switch ((*n).kind) {
3712 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 100):
3713 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99):
3714 	{
3715 		{
3716 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child;
3717 			child = NIM_NIL;
3718 			{
3719 				NI i;
3720 				NI colontmp_;
3721 				NI i_2;
3722 				i = (NI)0;
3723 				colontmp_ = (NI)0;
3724 				colontmp_ = safeLen__ast_3191(n);
3725 				i_2 = ((NI) 0);
3726 				{
3727 					while (1) {
3728 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* last;
3729 						if (!(i_2 < colontmp_)) goto LA5;
3730 						i = i_2;
3731 						child = (*n)._kind_6.sons->data[i];
3732 						last = lastSon__ast_4832(child);
3733 						traverse__varpartitions_1272(c, last);
3734 						{
3735 							NIM_BOOL T8_;
3736 							T8_ = (NIM_BOOL)0;
3737 							T8_ = ((*child).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 36));
3738 							if (!(T8_)) goto LA9_;
3739 							T8_ = ((*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 37) || (*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160));
3740 							LA9_: ;
3741 							if (!T8_) goto LA10_;
3742 							{
3743 								NI T14_;
3744 								NI T15_;
3745 								T14_ = (NI)0;
3746 								T14_ = len__ast_3198(child);
3747 								T15_ = (NI)0;
3748 								T15_ = len__ast_3198(last);
3749 								if (!!(((NI)(T14_ - ((NI) 2)) == T15_))) goto LA16_;
3750 								goto BeforeRet_;
3751 							}
3752 							LA16_: ;
3753 							{
3754 								NI i_3;
3755 								NI colontmp__2;
3756 								NI T19_;
3757 								NI i_4;
3758 								i_3 = (NI)0;
3759 								colontmp__2 = (NI)0;
3760 								T19_ = (NI)0;
3761 								T19_ = len__ast_3198(child);
3762 								colontmp__2 = (NI)(T19_ - ((NI) 2));
3763 								i_4 = ((NI) 0);
3764 								{
3765 									while (1) {
3766 										if (!(i_4 < colontmp__2)) goto LA21;
3767 										i_3 = i_4;
3768 										deps__varpartitions_1150(c, (*child)._kind_6.sons->data[i_3], (*last)._kind_6.sons->data[i_3]);
3769 										i_4 += ((NI) 1);
3770 									} LA21: ;
3771 								}
3772 							}
3773 						}
3774 						goto LA6_;
3775 						LA10_: ;
3776 						{
3777 							{
3778 								NI i_5;
3779 								NI colontmp__3;
3780 								NI T24_;
3781 								NI i_6;
3782 								i_5 = (NI)0;
3783 								colontmp__3 = (NI)0;
3784 								T24_ = (NI)0;
3785 								T24_ = len__ast_3198(child);
3786 								colontmp__3 = (NI)(T24_ - ((NI) 2));
3787 								i_6 = ((NI) 0);
3788 								{
3789 									while (1) {
3790 										if (!(i_6 < colontmp__3)) goto LA26;
3791 										i_5 = i_6;
3792 										deps__varpartitions_1150(c, (*child)._kind_6.sons->data[i_5], last);
3793 										i_6 += ((NI) 1);
3794 									} LA26: ;
3795 								}
3796 							}
3797 						}
3798 						LA6_: ;
3799 						i_2 += ((NI) 1);
3800 					} LA5: ;
3801 				}
3802 			}
3803 		}
3804 	}
3805 	break;
3806 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73):
3807 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74):
3808 	{
3809 		traverse__varpartitions_1272(c, (*n)._kind_6.sons->data[((NI) 0)]);
3810 		(*c).inAsgnSource += ((NI) 1);
3811 		traverse__varpartitions_1272(c, (*n)._kind_6.sons->data[((NI) 1)]);
3812 		(*c).inAsgnSource -= ((NI) 1);
3813 		deps__varpartitions_1150(c, (*n)._kind_6.sons->data[((NI) 0)], (*n)._kind_6.sons->data[((NI) 1)]);
3814 	}
3815 	break;
3816 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
3817 	{
3818 		(*c).abstractTime -= ((NI) 1);
3819 	}
3820 	break;
3821 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
3822 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
3823 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
3824 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
3825 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 90):
3826 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
3827 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 102):
3828 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 116):
3829 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 118):
3830 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 121) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
3831 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
3832 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 132):
3833 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 158) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
3834 	{
3835 		(*c).abstractTime -= ((NI) 1);
3836 	}
3837 	break;
3838 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
3839 	{
3840 		tyObject_TType__facALICuu8zUj0hjvbTLFg* parameters;
3841 		NI L;
3842 		tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m;
3843 		{
3844 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_2;
3845 			child_2 = NIM_NIL;
3846 			{
3847 				NI i_7;
3848 				NI colontmp__4;
3849 				NI i_8;
3850 				i_7 = (NI)0;
3851 				colontmp__4 = (NI)0;
3852 				colontmp__4 = safeLen__ast_3191(n);
3853 				i_8 = ((NI) 0);
3854 				{
3855 					while (1) {
3856 						if (!(i_8 < colontmp__4)) goto LA34;
3857 						i_7 = i_8;
3858 						child_2 = (*n)._kind_6.sons->data[i_7];
3859 						traverse__varpartitions_1272(c, child_2);
3860 						i_8 += ((NI) 1);
3861 					} LA34: ;
3862 				}
3863 			}
3864 		}
3865 		parameters = (*(*n)._kind_6.sons->data[((NI) 0)]).typ;
3866 		{
3867 			if (!!((parameters == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA37_;
3868 			L = len__ast_4002(parameters);
3869 		}
3870 		goto LA35_;
3871 		LA37_: ;
3872 		{
3873 			L = ((NI) 0);
3874 		}
3875 		LA35_: ;
3876 		m = getMagic__trees_137(n);
3877 		{
3878 			NI i_9;
3879 			NI colontmp__5;
3880 			NI i_10;
3881 			i_9 = (NI)0;
3882 			colontmp__5 = (NI)0;
3883 			colontmp__5 = len__ast_3198(n);
3884 			i_10 = ((NI) 1);
3885 			{
3886 				while (1) {
3887 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
3888 					if (!(i_10 < colontmp__5)) goto LA42;
3889 					i_9 = i_10;
3890 					it = (*n)._kind_6.sons->data[i_9];
3891 					{
3892 						tyObject_TType__facALICuu8zUj0hjvbTLFg* paramType;
3893 						if (!(i_9 < L)) goto LA45_;
3894 						paramType = skipTypes__ast_3735((*parameters).sons->data[i_9], TM__39a9bfgg3gnILXo9by9cxATh0Q_13);
3895 						{
3896 							NIM_BOOL T49_;
3897 							NIM_BOOL T50_;
3898 							tySequence__u9c10b19cqoKPxYSuh3ZKtIw* roots;
3899 							T49_ = (NIM_BOOL)0;
3900 							T50_ = (NIM_BOOL)0;
3901 							T50_ = isCompileTimeOnly__types_3519(paramType);
3902 							T49_ = !(T50_);
3903 							if (!(T49_)) goto LA51_;
3904 							T49_ = ((*paramType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*paramType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46) || (*paramType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 45));
3905 							LA51_: ;
3906 							if (!T49_) goto LA52_;
3907 							roots = NIM_NIL;
3908 							allRoots__varpartitions_653(it, (&roots), ((NI) 1000));
3909 							{
3910 								if (!((*paramType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23))) goto LA56_;
3911 								{
3912 									if (!((*c).inNoSideEffectSection == ((NI) 0))) goto LA60_;
3913 									{
3914 										tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ* r;
3915 										NI i_11;
3916 										NI L_2;
3917 										NI T63_;
3918 										r = (tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ*)0;
3919 										i_11 = ((NI) 0);
3920 										T63_ = (roots ? roots->Sup.len : 0);
3921 										L_2 = T63_;
3922 										{
3923 											while (1) {
3924 												if (!(i_11 < L_2)) goto LA65;
3925 												r = (&roots->data[i_11]);
3926 												potentialMutation__varpartitions_335(c, (*r).Field0, (*r).Field1, (*it).info);
3927 												i_11 += ((NI) 1);
3928 											} LA65: ;
3929 										}
3930 									}
3931 								}
3932 								LA60_: ;
3933 								{
3934 									tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ* r_2;
3935 									NI i_12;
3936 									NI L_3;
3937 									NI T67_;
3938 									r_2 = (tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ*)0;
3939 									i_12 = ((NI) 0);
3940 									T67_ = (roots ? roots->Sup.len : 0);
3941 									L_3 = T67_;
3942 									{
3943 										while (1) {
3944 											if (!(i_12 < L_3)) goto LA69;
3945 											r_2 = (&roots->data[i_12]);
3946 											noCursor__varpartitions_985(c, (*r_2).Field0);
3947 											i_12 += ((NI) 1);
3948 										} LA69: ;
3949 									}
3950 								}
3951 								{
3952 									if (!(((*c).goals &((NU8)1<<((NU)(((tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg) 1))&7U)))!=0)) goto LA72_;
3953 									{
3954 										NIM_BOOL T76_;
3955 										tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog T77_;
3956 										tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog T79_;
3957 										T76_ = (NIM_BOOL)0;
3958 										T77_ = (tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog)0;
3959 										T77_ = directViewType__typeallowed_568((*paramType).sons->data[((NI) 0)]);
3960 										T76_ = (T77_ == ((tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog) 0));
3961 										if (!(T76_)) goto LA78_;
3962 										T79_ = (tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog)0;
3963 										T79_ = classifyViewType__typeallowed_564((*paramType).sons->data[((NI) 0)]);
3964 										T76_ = !((T79_ == ((tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog) 0)));
3965 										LA78_: ;
3966 										if (!T76_) goto LA80_;
3967 										borrowingCall__varpartitions_1068(c, (*paramType).sons->data[((NI) 0)], n, i_9);
3968 									}
3969 									LA80_: ;
3970 								}
3971 								LA72_: ;
3972 							}
3973 							LA56_: ;
3974 						}
3975 						goto LA47_;
3976 						LA52_: ;
3977 						{
3978 							if (!(m == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0))) goto LA83_;
3979 							potentialMutationViaArg__varpartitions_1255(c, (*n)._kind_6.sons->data[i_9], parameters);
3980 						}
3981 						goto LA47_;
3982 						LA83_: ;
3983 						LA47_: ;
3984 					}
3985 					LA45_: ;
3986 					i_10 += ((NI) 1);
3987 				} LA42: ;
3988 			}
3989 		}
3990 	}
3991 	break;
3992 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
3993 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
3994 	{
3995 		traverse__varpartitions_1272(c, (*n)._kind_6.sons->data[((NI) 0)]);
3996 	}
3997 	break;
3998 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160):
3999 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41):
4000 	{
4001 		{
4002 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_3;
4003 			child_3 = NIM_NIL;
4004 			{
4005 				NI i_13;
4006 				NI colontmp__6;
4007 				NI i_14;
4008 				i_13 = (NI)0;
4009 				colontmp__6 = (NI)0;
4010 				colontmp__6 = safeLen__ast_3191(n);
4011 				i_14 = ((NI) 0);
4012 				{
4013 					while (1) {
4014 						if (!(i_14 < colontmp__6)) goto LA90;
4015 						i_13 = i_14;
4016 						child_3 = (*n)._kind_6.sons->data[i_13];
4017 						traverse__varpartitions_1272(c, child_3);
4018 						i_14 += ((NI) 1);
4019 					} LA90: ;
4020 				}
4021 			}
4022 		}
4023 		{
4024 			if (!(((NI) 0) < (*c).inAsgnSource)) goto LA93_;
4025 			{
4026 				NI i_15;
4027 				NI colontmp__7;
4028 				NI i_16;
4029 				i_15 = (NI)0;
4030 				colontmp__7 = (NI)0;
4031 				colontmp__7 = len__ast_3198(n);
4032 				i_16 = ((NI) 0);
4033 				{
4034 					while (1) {
4035 						if (!(i_16 < colontmp__7)) goto LA97;
4036 						i_15 = i_16;
4037 						{
4038 							if (!((*(*n)._kind_6.sons->data[i_15]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA100_;
4039 							pretendOwnsData__varpartitions_993(c, (*(*n)._kind_6.sons->data[i_15])._kind_4.sym);
4040 						}
4041 						LA100_: ;
4042 						i_16 += ((NI) 1);
4043 					} LA97: ;
4044 				}
4045 			}
4046 		}
4047 		LA93_: ;
4048 	}
4049 	break;
4050 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38):
4051 	{
4052 		{
4053 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_4;
4054 			child_4 = NIM_NIL;
4055 			{
4056 				NI i_17;
4057 				NI colontmp__8;
4058 				NI i_18;
4059 				i_17 = (NI)0;
4060 				colontmp__8 = (NI)0;
4061 				colontmp__8 = safeLen__ast_3191(n);
4062 				i_18 = ((NI) 0);
4063 				{
4064 					while (1) {
4065 						if (!(i_18 < colontmp__8)) goto LA106;
4066 						i_17 = i_18;
4067 						child_4 = (*n)._kind_6.sons->data[i_17];
4068 						traverse__varpartitions_1272(c, child_4);
4069 						i_18 += ((NI) 1);
4070 					} LA106: ;
4071 				}
4072 			}
4073 		}
4074 		{
4075 			if (!(((NI) 0) < (*c).inAsgnSource)) goto LA109_;
4076 			{
4077 				NI i_19;
4078 				NI colontmp__9;
4079 				NI i_20;
4080 				i_19 = (NI)0;
4081 				colontmp__9 = (NI)0;
4082 				colontmp__9 = len__ast_3198(n);
4083 				i_20 = ((NI) 1);
4084 				{
4085 					while (1) {
4086 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it_2;
4087 						if (!(i_20 < colontmp__9)) goto LA113;
4088 						i_19 = i_20;
4089 						it_2 = skipColon__ast_4948((*n)._kind_6.sons->data[i_19]);
4090 						{
4091 							if (!((*it_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA116_;
4092 							pretendOwnsData__varpartitions_993(c, (*it_2)._kind_4.sym);
4093 						}
4094 						LA116_: ;
4095 						i_20 += ((NI) 1);
4096 					} LA113: ;
4097 				}
4098 			}
4099 		}
4100 		LA109_: ;
4101 	}
4102 	break;
4103 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 91):
4104 	{
4105 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* pragmaList;
4106 		NI enforceNoSideEffects;
4107 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T127_;
4108 		pragmaList = (*n)._kind_6.sons->data[((NI) 0)];
4109 		enforceNoSideEffects = ((NI) 0);
4110 		{
4111 			NI i_21;
4112 			NI colontmp__10;
4113 			NI i_22;
4114 			i_21 = (NI)0;
4115 			colontmp__10 = (NI)0;
4116 			colontmp__10 = len__ast_3198(pragmaList);
4117 			i_22 = ((NI) 0);
4118 			{
4119 				while (1) {
4120 					if (!(i_22 < colontmp__10)) goto LA121;
4121 					i_21 = i_22;
4122 					{
4123 						NIM_BOOL T124_;
4124 						T124_ = (NIM_BOOL)0;
4125 						T124_ = isNoSideEffectPragma__trees_257((*pragmaList)._kind_6.sons->data[i_21]);
4126 						if (!T124_) goto LA125_;
4127 						enforceNoSideEffects = ((NI) 1);
4128 						goto LA119;
4129 					}
4130 					LA125_: ;
4131 					i_22 += ((NI) 1);
4132 				} LA121: ;
4133 			}
4134 		} LA119: ;
4135 		(*c).inNoSideEffectSection += enforceNoSideEffects;
4136 		T127_ = NIM_NIL;
4137 		T127_ = lastSon__ast_4832(n);
4138 		traverse__varpartitions_1272(c, T127_);
4139 		(*c).inNoSideEffectSection -= enforceNoSideEffects;
4140 	}
4141 	break;
4142 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96):
4143 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 94):
4144 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 95):
4145 	{
4146 		{
4147 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_5;
4148 			child_5 = NIM_NIL;
4149 			{
4150 				NI i_23;
4151 				NI colontmp__11;
4152 				NI i_24;
4153 				i_23 = (NI)0;
4154 				colontmp__11 = (NI)0;
4155 				colontmp__11 = safeLen__ast_3191(n);
4156 				i_24 = ((NI) 0);
4157 				{
4158 					while (1) {
4159 						if (!(i_24 < colontmp__11)) goto LA132;
4160 						i_23 = i_24;
4161 						child_5 = (*n)._kind_6.sons->data[i_23];
4162 						traverse__varpartitions_1272(c, child_5);
4163 						i_24 += ((NI) 1);
4164 					} LA132: ;
4165 				}
4166 			}
4167 		}
4168 		{
4169 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_6;
4170 			child_6 = NIM_NIL;
4171 			{
4172 				NI i_25;
4173 				NI colontmp__12;
4174 				NI i_26;
4175 				i_25 = (NI)0;
4176 				colontmp__12 = (NI)0;
4177 				colontmp__12 = safeLen__ast_3191(n);
4178 				i_26 = ((NI) 0);
4179 				{
4180 					while (1) {
4181 						if (!(i_26 < colontmp__12)) goto LA136;
4182 						i_25 = i_26;
4183 						child_6 = (*n)._kind_6.sons->data[i_25];
4184 						traverse__varpartitions_1272(c, child_6);
4185 						i_26 += ((NI) 1);
4186 					} LA136: ;
4187 				}
4188 			}
4189 		}
4190 	}
4191 	break;
4192 	default:
4193 	{
4194 		{
4195 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child_7;
4196 			child_7 = NIM_NIL;
4197 			{
4198 				NI i_27;
4199 				NI colontmp__13;
4200 				NI i_28;
4201 				i_27 = (NI)0;
4202 				colontmp__13 = (NI)0;
4203 				colontmp__13 = safeLen__ast_3191(n);
4204 				i_28 = ((NI) 0);
4205 				{
4206 					while (1) {
4207 						if (!(i_28 < colontmp__13)) goto LA141;
4208 						i_27 = i_28;
4209 						child_7 = (*n)._kind_6.sons->data[i_27];
4210 						traverse__varpartitions_1272(c, child_7);
4211 						i_28 += ((NI) 1);
4212 					} LA141: ;
4213 				}
4214 			}
4215 		}
4216 	}
4217 	break;
4218 	}
4219 	}BeforeRet_: ;
4220 }
N_NIMCALL(void,computeGraphPartitions__varpartitions_1607)4221 N_LIB_PRIVATE N_NIMCALL(void, computeGraphPartitions__varpartitions_1607)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tySet_tyEnum_Goal__JuPChZ1Q9aI1A9aNNAM6t8Pg goals, tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* Result) {
4222 	(*Result).abstractTime = 0;
4223 	unsureAsgnRef((void**)&(*Result).s, NIM_NIL);
4224 	unsureAsgnRef((void**)&(*Result).graphs, NIM_NIL);
4225 	(*Result).unanalysableMutation = 0;
4226 	(*Result).inAsgnSource = 0;
4227 	(*Result).inConstructor = 0;
4228 	(*Result).inNoSideEffectSection = 0;
4229 	(*Result).inConditional = 0;
4230 	(*Result).inLoop = 0;
4231 	unsureAsgnRef((void**)&(*Result).owner, NIM_NIL);
4232 	unsureAsgnRef((void**)&(*Result).g, NIM_NIL);
4233 	unsureAsgnRef((void**) (&(*Result).owner), s);
4234 	unsureAsgnRef((void**) (&(*Result).g), g);
4235 	(*Result).goals = goals;
4236 	{
4237 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* params;
4238 		if (!!(((131136 &((NU32)1<<((NU)((*s).kind)&31U)))!=0))) goto LA3_;
4239 		params = (*(*s).typ).n;
4240 		{
4241 			NI i;
4242 			NI colontmp_;
4243 			NI i_2;
4244 			i = (NI)0;
4245 			colontmp_ = (NI)0;
4246 			colontmp_ = len__ast_3198(params);
4247 			i_2 = ((NI) 1);
4248 			{
4249 				while (1) {
4250 					if (!(i_2 < colontmp_)) goto LA7;
4251 					i = i_2;
4252 					registerParam__varpartitions_267(Result, (*params)._kind_6.sons->data[i]);
4253 					i_2 += ((NI) 1);
4254 				} LA7: ;
4255 			}
4256 		}
4257 		{
4258 			NI T10_;
4259 			T10_ = (NI)0;
4260 			T10_ = safeLen__ast_3191((*s).ast);
4261 			if (!(((NI) 7) < T10_)) goto LA11_;
4262 			registerResult__varpartitions_214(Result, (*(*s).ast)._kind_6.sons->data[((NI) 7)]);
4263 		}
4264 		LA11_: ;
4265 	}
4266 	LA3_: ;
4267 	computeLiveRanges__varpartitions_1454(Result, n);
4268 	(*Result).abstractTime = ((NI) 0);
4269 	traverse__varpartitions_1272(Result, n);
4270 }
N_INLINE(NIM_BOOL,mutationAfterConnection__varpartitions_105)4271 static N_INLINE(NIM_BOOL, mutationAfterConnection__varpartitions_105)(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g) {
4272 	NIM_BOOL result;
4273 	result = (NIM_BOOL)0;
4274 	result = ((*g).minConnection < (*g).maxMutation);
4275 	return result;
4276 }
N_NIMCALL(NIM_BOOL,hasSideEffect__varpartitions_131)4277 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasSideEffect__varpartitions_131)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* c, tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* info) {
4278 	NIM_BOOL result;
4279 {	result = (NIM_BOOL)0;
4280 	{
4281 		tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g;
4282 		NI i;
4283 		NI L;
4284 		NI T2_;
4285 		g = (tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug*)0;
4286 		i = ((NI) 0);
4287 		T2_ = ((*c).graphs ? (*c).graphs->Sup.len : 0);
4288 		L = T2_;
4289 		{
4290 			while (1) {
4291 				if (!(i < L)) goto LA4;
4292 				g = (&(*c).graphs->data[i]);
4293 				{
4294 					NIM_BOOL T7_;
4295 					NIM_BOOL T9_;
4296 					T7_ = (NIM_BOOL)0;
4297 					T7_ = (((*g).flags & 9) == 9);
4298 					if (!(T7_)) goto LA8_;
4299 					T9_ = (NIM_BOOL)0;
4300 					T9_ = mutationAfterConnection__varpartitions_105((&(*g)));
4301 					if (T9_) goto LA10_;
4302 					T9_ = (((*g).flags &((NU8)1<<((NU)(((tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw) 1))&7U)))!=0);
4303 					LA10_: ;
4304 					T7_ = T9_;
4305 					LA8_: ;
4306 					if (!T7_) goto LA11_;
4307 					genericAssign((void*)(&(*info)), (void*)(&(*g)), (&NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_));
4308 					result = NIM_TRUE;
4309 					goto BeforeRet_;
4310 				}
4311 				LA11_: ;
4312 				i += ((NI) 1);
4313 			} LA4: ;
4314 		}
4315 	}
4316 	result = NIM_FALSE;
4317 	goto BeforeRet_;
4318 	}BeforeRet_: ;
4319 	return result;
4320 }
N_INLINE(NIM_BOOL,contains__varpartitions_1698)4321 static N_INLINE(NIM_BOOL, contains__varpartitions_1698)(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA s, NI value) {
4322 	NIM_BOOL result;
4323 	NIM_BOOL T1_;
4324 	result = (NIM_BOOL)0;
4325 	T1_ = (NIM_BOOL)0;
4326 	T1_ = (s.a <= value);
4327 	if (!(T1_)) goto LA2_;
4328 	T1_ = (value <= s.b);
4329 	LA2_: ;
4330 	result = T1_;
4331 	return result;
4332 }
N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA,dotdot___varpartitions_1677)4333 static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___varpartitions_1677)(NI a, NI b) {
4334 	tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA result;
4335 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
4336 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
4337 	result.a = a;
4338 	result.b = b;
4339 	return result;
4340 }
N_NIMCALL(NIM_BOOL,dangerousMutation__varpartitions_1646)4341 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, dangerousMutation__varpartitions_1646)(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g, tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA* v) {
4342 	NIM_BOOL result;
4343 {	result = (NIM_BOOL)0;
4344 	{
4345 		if (!!(((5 & (*g).flags) == 0))) goto LA3_;
4346 		{
4347 			NI* m;
4348 			NI i;
4349 			NI L;
4350 			NI T6_;
4351 			m = (NI*)0;
4352 			i = ((NI) 0);
4353 			T6_ = ((*g).mutations ? (*g).mutations->Sup.len : 0);
4354 			L = T6_;
4355 			{
4356 				while (1) {
4357 					if (!(i < L)) goto LA8;
4358 					m = (&(*g).mutations->data[i]);
4359 					{
4360 						tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T11_;
4361 						NIM_BOOL T12_;
4362 						T11_ = dotdot___varpartitions_1677((*v).aliveStart, (*v).aliveEnd);
4363 						T12_ = (NIM_BOOL)0;
4364 						T12_ = contains__varpartitions_1698(T11_, (*m));
4365 						if (!T12_) goto LA13_;
4366 						result = NIM_TRUE;
4367 						goto BeforeRet_;
4368 					}
4369 					LA13_: ;
4370 					i += ((NI) 1);
4371 				} LA8: ;
4372 			}
4373 		}
4374 	}
4375 	LA3_: ;
4376 	result = NIM_FALSE;
4377 	goto BeforeRet_;
4378 	}BeforeRet_: ;
4379 	return result;
4380 }
N_NIMCALL(void,cannotBorrow__varpartitions_1714)4381 N_LIB_PRIVATE N_NIMCALL(void, cannotBorrow__varpartitions_1714)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g) {
4382 	NimStringDesc* m;
4383 	NimStringDesc* T1_;
4384 	T1_ = NIM_NIL;
4385 	T1_ = rawNewString(((*(*s).name).s ? (*(*s).name).s->Sup.len : 0) + 59);
4386 appendString(T1_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_26));
4387 appendString(T1_, (*(*s).name).s);
4388 appendString(T1_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_27));
4389 	m = T1_;
4390 	{
4391 		NIM_BOOL T4_;
4392 		NimStringDesc* T7_;
4393 		T4_ = (NIM_BOOL)0;
4394 		T4_ = eqeq___msgs_993((*g).mutatedHere, unknownLineInfo__lineinfos_280);
4395 		if (!!(T4_)) goto LA5_;
4396 		m = resizeString(m, 1);
4397 appendString(m, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_28));
4398 		T7_ = NIM_NIL;
4399 		T7_ = dollar___msgs_624(config, (*g).mutatedHere);
4400 		m = resizeString(m, (T7_ ? T7_->Sup.len : 0) + 0);
4401 appendString(m, T7_);
4402 		m = resizeString(m, 21);
4403 appendString(m, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_29));
4404 	}
4405 	LA5_: ;
4406 	{
4407 		NIM_BOOL T10_;
4408 		NimStringDesc* T13_;
4409 		T10_ = (NIM_BOOL)0;
4410 		T10_ = eqeq___msgs_993((*g).connectedVia, unknownLineInfo__lineinfos_280);
4411 		if (!!(T10_)) goto LA11_;
4412 		m = resizeString(m, 1);
4413 appendString(m, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_28));
4414 		T13_ = NIM_NIL;
4415 		T13_ = dollar___msgs_624(config, (*g).connectedVia);
4416 		m = resizeString(m, (T13_ ? T13_->Sup.len : 0) + 0);
4417 appendString(m, T13_);
4418 		m = resizeString(m, 62);
4419 appendString(m, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_30));
4420 	}
4421 	LA11_: ;
4422 	liMessage__msgs_1118(config, (*s).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), m, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__39a9bfgg3gnILXo9by9cxATh0Q_31, NIM_FALSE);
4423 }
N_NIMCALL(void,checkBorrowedLocations__varpartitions_1719)4424 N_LIB_PRIVATE N_NIMCALL(void, checkBorrowedLocations__varpartitions_1719)(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag* par, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config) {
4425 	{
4426 		NI i;
4427 		NI colontmp_;
4428 		NI T2_;
4429 		NI i_2;
4430 		i = (NI)0;
4431 		colontmp_ = (NI)0;
4432 		T2_ = ((*par).s ? (*par).s->Sup.len : 0);
4433 		colontmp_ = T2_;
4434 		i_2 = ((NI) 0);
4435 		{
4436 			while (1) {
4437 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v;
4438 				if (!(i_2 < colontmp_)) goto LA4;
4439 				i = i_2;
4440 				v = (*par).s->data[i].sym;
4441 				{
4442 					NIM_BOOL T7_;
4443 					tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog T9_;
4444 					NI rid;
4445 					T7_ = (NIM_BOOL)0;
4446 					T7_ = !(((*v).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3)));
4447 					if (!(T7_)) goto LA8_;
4448 					T9_ = (tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog)0;
4449 					T9_ = classifyViewType__typeallowed_564((*v).typ);
4450 					T7_ = !((T9_ == ((tyEnum_ViewTypeKind__3S4FAWaxPP9ahVaUnMsznog) 0)));
4451 					LA8_: ;
4452 					if (!T7_) goto LA10_;
4453 					rid = root__varpartitions_315(par, i);
4454 					{
4455 						NIM_BOOL constViolation;
4456 						if (!(((NI) 0) <= rid)) goto LA14_;
4457 						constViolation = NIM_FALSE;
4458 						{
4459 							NI* b;
4460 							tySequence__qwqHTkRvwhrRyENtudHQ7g* colontmp__2;
4461 							NI i_3;
4462 							NI L;
4463 							NI T17_;
4464 							b = (NI*)0;
4465 							colontmp__2 = NIM_NIL;
4466 							colontmp__2 = (*par).s->data[rid].borrowsFrom;
4467 							i_3 = ((NI) 0);
4468 							T17_ = (colontmp__2 ? colontmp__2->Sup.len : 0);
4469 							L = T17_;
4470 							{
4471 								while (1) {
4472 									NI sid;
4473 									if (!(i_3 < L)) goto LA19;
4474 									b = (&colontmp__2->data[i_3]);
4475 									sid = root__varpartitions_315(par, (*b));
4476 									{
4477 										if (!(((NI) 0) <= sid)) goto LA22_;
4478 										{
4479 											NIM_BOOL T26_;
4480 											T26_ = (NIM_BOOL)0;
4481 											T26_ = ((*par).s->data[sid].con.kind == ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 2));
4482 											if (!(T26_)) goto LA27_;
4483 											T26_ = dangerousMutation__varpartitions_1646((&(*par).graphs->data[(*par).s->data[sid].con.graphIndex]), (&(*par).s->data[i]));
4484 											LA27_: ;
4485 											if (!T26_) goto LA28_;
4486 											cannotBorrow__varpartitions_1714(config, v, (&(*par).graphs->data[(*par).s->data[sid].con.graphIndex]));
4487 										}
4488 										LA28_: ;
4489 										{
4490 											NIM_BOOL T32_;
4491 											NimStringDesc* T36_;
4492 											T32_ = (NIM_BOOL)0;
4493 											T32_ = !(((*(*par).s->data[sid].sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3)));
4494 											if (!(T32_)) goto LA33_;
4495 											T32_ = ((*par).s->data[sid].aliveEnd < (*par).s->data[rid].aliveEnd);
4496 											LA33_: ;
4497 											if (!T32_) goto LA34_;
4498 											T36_ = NIM_NIL;
4499 											T36_ = rawNewString(((*(*v).name).s ? (*(*v).name).s->Sup.len : 0) + ((*(*(*par).s->data[sid].sym).name).s ? (*(*(*par).s->data[sid].sym).name).s->Sup.len : 0) + 59);
4500 appendString(T36_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_32));
4501 appendString(T36_, (*(*v).name).s);
4502 appendString(T36_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_33));
4503 appendString(T36_, (*(*(*par).s->data[sid].sym).name).s);
4504 appendString(T36_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_34));
4505 											liMessage__msgs_1118(config, (*v).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T36_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__39a9bfgg3gnILXo9by9cxATh0Q_35, NIM_FALSE);
4506 										}
4507 										LA34_: ;
4508 										{
4509 											NIM_BOOL T39_;
4510 											NimStringDesc* T43_;
4511 											T39_ = (NIM_BOOL)0;
4512 											T39_ = (((*par).s->data[rid].flags &((NU8)1<<((NU)(((tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ) 4))&7U)))!=0);
4513 											if (!(T39_)) goto LA40_;
4514 											T39_ = isConstSym__varpartitions_1002((*par).s->data[sid].sym);
4515 											LA40_: ;
4516 											if (!T39_) goto LA41_;
4517 											T43_ = NIM_NIL;
4518 											T43_ = rawNewString(((*(*v).name).s ? (*(*v).name).s->Sup.len : 0) + ((*(*(*par).s->data[sid].sym).name).s ? (*(*(*par).s->data[sid].sym).name).s->Sup.len : 0) + 67);
4519 appendString(T43_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_32));
4520 appendString(T43_, (*(*v).name).s);
4521 appendString(T43_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_36));
4522 appendString(T43_, (*(*(*par).s->data[sid].sym).name).s);
4523 appendString(T43_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_37));
4524 											liMessage__msgs_1118(config, (*v).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T43_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__39a9bfgg3gnILXo9by9cxATh0Q_38, NIM_FALSE);
4525 											constViolation = NIM_TRUE;
4526 										}
4527 										LA41_: ;
4528 									}
4529 									LA22_: ;
4530 									i_3 += ((NI) 1);
4531 								} LA19: ;
4532 							}
4533 						}
4534 						{
4535 							NIM_BOOL T46_;
4536 							NimStringDesc* T50_;
4537 							T46_ = (NIM_BOOL)0;
4538 							T46_ = ((48 & (*par).s->data[rid].flags) == 48);
4539 							if (!(T46_)) goto LA47_;
4540 							T46_ = !(constViolation);
4541 							LA47_: ;
4542 							if (!T46_) goto LA48_;
4543 							T50_ = NIM_NIL;
4544 							T50_ = rawNewString(((*(*v).name).s ? (*(*v).name).s->Sup.len : 0) + 63);
4545 appendString(T50_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_32));
4546 appendString(T50_, (*(*v).name).s);
4547 appendString(T50_, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_39));
4548 							liMessage__msgs_1118(config, (*v).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T50_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__39a9bfgg3gnILXo9by9cxATh0Q_40, NIM_FALSE);
4549 						}
4550 						LA48_: ;
4551 					}
4552 					LA14_: ;
4553 				}
4554 				LA10_: ;
4555 				i_2 += ((NI) 1);
4556 			} LA4: ;
4557 		}
4558 	}
4559 }
N_NIMCALL(NimStringDesc *,dollar___varpartitions_108)4560 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___varpartitions_108)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug* g) {
4561 	NimStringDesc* result;
4562 	result = NIM_NIL;
4563 	result = ((NimStringDesc*) NIM_NIL);
4564 	{
4565 		if (!(((*g).flags & 9) == 9)) goto LA3_;
4566 		result = resizeString(result, 27);
4567 appendString(result, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_41));
4568 		result = resizeString(result, ((*(*(*g).param).name).s ? (*(*(*g).param).name).s->Sup.len : 0) + 0);
4569 appendString(result, (*(*(*g).param).name).s);
4570 		result = resizeString(result, 24);
4571 appendString(result, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_42));
4572 		{
4573 			NIM_BOOL T7_;
4574 			NimStringDesc* T10_;
4575 			T7_ = (NIM_BOOL)0;
4576 			T7_ = eqeq___msgs_993((*g).mutatedHere, unknownLineInfo__lineinfos_280);
4577 			if (!!(T7_)) goto LA8_;
4578 			result = resizeString(result, 1);
4579 appendString(result, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_28));
4580 			T10_ = NIM_NIL;
4581 			T10_ = dollar___msgs_624(config, (*g).mutatedHere);
4582 			result = resizeString(result, (T10_ ? T10_->Sup.len : 0) + 0);
4583 appendString(result, T10_);
4584 			result = resizeString(result, 21);
4585 appendString(result, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_29));
4586 		}
4587 		LA8_: ;
4588 		{
4589 			NIM_BOOL T13_;
4590 			NimStringDesc* T16_;
4591 			T13_ = (NIM_BOOL)0;
4592 			T13_ = eqeq___msgs_993((*g).connectedVia, unknownLineInfo__lineinfos_280);
4593 			if (!!(T13_)) goto LA14_;
4594 			result = resizeString(result, 1);
4595 appendString(result, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_28));
4596 			T16_ = NIM_NIL;
4597 			T16_ = dollar___msgs_624(config, (*g).connectedVia);
4598 			result = resizeString(result, (T16_ ? T16_->Sup.len : 0) + 0);
4599 appendString(result, T16_);
4600 			result = resizeString(result, 62);
4601 appendString(result, ((NimStringDesc*) &TM__39a9bfgg3gnILXo9by9cxATh0Q_30));
4602 		}
4603 		LA14_: ;
4604 	}
4605 	LA3_: ;
4606 	return result;
4607 }
N_NIMCALL(void,computeCursors__varpartitions_1784)4608 N_LIB_PRIVATE N_NIMCALL(void, computeCursors__varpartitions_1784)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g) {
4609 	tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag par;
4610 	nimZeroMem((void*)(&par), sizeof(tyObject_Partitions__BXM20779cYW9aXU5vArQdV9ag));
4611 	computeGraphPartitions__varpartitions_1607(s, n, g, 4, (&par));
4612 	{
4613 		NI i;
4614 		NI colontmp_;
4615 		NI T2_;
4616 		NI i_2;
4617 		i = (NI)0;
4618 		colontmp_ = (NI)0;
4619 		T2_ = (par.s ? par.s->Sup.len : 0);
4620 		colontmp_ = T2_;
4621 		i_2 = ((NI) 0);
4622 		{
4623 			while (1) {
4624 				tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA* v;
4625 				if (!(i_2 < colontmp_)) goto LA4;
4626 				i = i_2;
4627 				v = (&par.s->data[i]);
4628 				{
4629 					NIM_BOOL T7_;
4630 					NIM_BOOL T8_;
4631 					NIM_BOOL T9_;
4632 					NIM_BOOL T10_;
4633 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T15_;
4634 					NI rid;
4635 					T7_ = (NIM_BOOL)0;
4636 					T8_ = (NIM_BOOL)0;
4637 					T9_ = (NIM_BOOL)0;
4638 					T10_ = (NIM_BOOL)0;
4639 					T10_ = (((*v).flags & 11) == 0);
4640 					if (!(T10_)) goto LA11_;
4641 					T10_ = !(((2056 &((NU32)1<<((NU)((*(*v).sym).kind)&31U)))!=0));
4642 					LA11_: ;
4643 					T9_ = T10_;
4644 					if (!(T9_)) goto LA12_;
4645 					T9_ = (((*(*v).sym).flags & 67108872) == 0);
4646 					LA12_: ;
4647 					T8_ = T9_;
4648 					if (!(T8_)) goto LA13_;
4649 					T8_ = !(((IL64(2147483664) & (*(*(*v).sym).typ).flags) == 0));
4650 					LA13_: ;
4651 					T7_ = T8_;
4652 					if (!(T7_)) goto LA14_;
4653 					T15_ = NIM_NIL;
4654 					T15_ = skipTypes__ast_3735((*(*v).sym).typ, TM__39a9bfgg3gnILXo9by9cxATh0Q_13);
4655 					T7_ = !(((*T15_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 45)));
4656 					LA14_: ;
4657 					if (!T7_) goto LA16_;
4658 					rid = root__varpartitions_315((&par), i);
4659 					{
4660 						NIM_BOOL T20_;
4661 						T20_ = (NIM_BOOL)0;
4662 						T20_ = (par.s->data[rid].con.kind == ((tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA) 2));
4663 						if (!(T20_)) goto LA21_;
4664 						T20_ = dangerousMutation__varpartitions_1646((&par.graphs->data[par.s->data[rid].con.graphIndex]), (&par.s->data[i]));
4665 						LA21_: ;
4666 						if (!T20_) goto LA22_;
4667 					}
4668 					goto LA18_;
4669 					LA22_: ;
4670 					{
4671 						(*(*v).sym).flags |= ((NU64)1)<<((((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 41)) & 63);
4672 					}
4673 					LA18_: ;
4674 				}
4675 				LA16_: ;
4676 				i_2 += ((NI) 1);
4677 			} LA4: ;
4678 		}
4679 	}
4680 }
N_NIMCALL(void,compiler_varpartitionsDatInit000)4681 N_LIB_PRIVATE N_NIMCALL(void, compiler_varpartitionsDatInit000)(void) {
4682 static TNimNode* TM__39a9bfgg3gnILXo9by9cxATh0Q_2_7[7];
4683 static TNimNode* TM__39a9bfgg3gnILXo9by9cxATh0Q_3_3[3];
4684 NI TM__39a9bfgg3gnILXo9by9cxATh0Q_5;
4685 static char* NIM_CONST TM__39a9bfgg3gnILXo9by9cxATh0Q_4[3] = {
4686 "isEmptyRoot",
4687 "dependsOn",
4688 "isRootOf"};
4689 static TNimNode* TM__39a9bfgg3gnILXo9by9cxATh0Q_6_6[6];
4690 NI TM__39a9bfgg3gnILXo9by9cxATh0Q_8;
4691 static char* NIM_CONST TM__39a9bfgg3gnILXo9by9cxATh0Q_7[6] = {
4692 "ownsData",
4693 "preventCursor",
4694 "isReassigned",
4695 "isConditionallyReassigned",
4696 "viewDoesMutate",
4697 "viewBorrowsFromConst"};
4698 static TNimNode* TM__39a9bfgg3gnILXo9by9cxATh0Q_9_7[7];
4699 static TNimNode* TM__39a9bfgg3gnILXo9by9cxATh0Q_10_4[4];
4700 NI TM__39a9bfgg3gnILXo9by9cxATh0Q_12;
4701 static char* NIM_CONST TM__39a9bfgg3gnILXo9by9cxATh0Q_11[4] = {
4702 "isMutated",
4703 "isMutatedDirectly",
4704 "isMutatedByVarParam",
4705 "connectsConstParam"};
4706 static TNimNode* TM__39a9bfgg3gnILXo9by9cxATh0Q_21_2[2];
4707 static TNimNode TM__39a9bfgg3gnILXo9by9cxATh0Q_0[41];
4708 NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_.size = sizeof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA);
4709 NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_.align = NIM_ALIGNOF(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA);
4710 NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_.kind = 18;
4711 NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_.base = 0;
4712 TM__39a9bfgg3gnILXo9by9cxATh0Q_2_7[0] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[1];
4713 NTIconnection__EevFKe104MtQGkxxkLKkgg_.size = sizeof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg);
4714 NTIconnection__EevFKe104MtQGkxxkLKkgg_.align = NIM_ALIGNOF(tyObject_Connection__EevFKe104MtQGkxxkLKkgg);
4715 NTIconnection__EevFKe104MtQGkxxkLKkgg_.kind = 18;
4716 NTIconnection__EevFKe104MtQGkxxkLKkgg_.base = 0;
4717 NTIconnection__EevFKe104MtQGkxxkLKkgg_.flags = 1;
4718 NTIvarindexkind__TA6PMQGIDoHplflSd7kZxA_.size = sizeof(tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA);
4719 NTIvarindexkind__TA6PMQGIDoHplflSd7kZxA_.align = NIM_ALIGNOF(tyEnum_VarIndexKind__TA6PMQGIDoHplflSd7kZxA);
4720 NTIvarindexkind__TA6PMQGIDoHplflSd7kZxA_.kind = 14;
4721 NTIvarindexkind__TA6PMQGIDoHplflSd7kZxA_.base = 0;
4722 NTIvarindexkind__TA6PMQGIDoHplflSd7kZxA_.flags = 3;
4723 for (TM__39a9bfgg3gnILXo9by9cxATh0Q_5 = 0; TM__39a9bfgg3gnILXo9by9cxATh0Q_5 < 3; TM__39a9bfgg3gnILXo9by9cxATh0Q_5++) {
4724 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_5+3].kind = 1;
4725 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_5+3].offset = TM__39a9bfgg3gnILXo9by9cxATh0Q_5;
4726 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_5+3].name = TM__39a9bfgg3gnILXo9by9cxATh0Q_4[TM__39a9bfgg3gnILXo9by9cxATh0Q_5];
4727 TM__39a9bfgg3gnILXo9by9cxATh0Q_3_3[TM__39a9bfgg3gnILXo9by9cxATh0Q_5] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_5+3];
4728 }
4729 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[6].len = 3; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[6].kind = 2; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[6].sons = &TM__39a9bfgg3gnILXo9by9cxATh0Q_3_3[0];
4730 NTIvarindexkind__TA6PMQGIDoHplflSd7kZxA_.node = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[6];
4731 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[2].kind = 3;
4732 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[2].offset = offsetof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg, kind);
4733 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[2].typ = (&NTIvarindexkind__TA6PMQGIDoHplflSd7kZxA_);
4734 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[2].name = "kind";
4735 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[2].sons = &NimDT___EevFKe104MtQGkxxkLKkgg_kind[0];
4736 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[2].len = 3;
4737 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[7].len = 0; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[7].kind = 2;
4738 NimDT___EevFKe104MtQGkxxkLKkgg_kind[0] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[7];
4739 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[8].kind = 1;
4740 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[8].offset = offsetof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg, parent);
4741 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[8].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4742 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[8].name = "parent";
4743 NimDT___EevFKe104MtQGkxxkLKkgg_kind[1] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[8];
4744 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[9].kind = 1;
4745 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[9].offset = offsetof(tyObject_Connection__EevFKe104MtQGkxxkLKkgg, graphIndex);
4746 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[9].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4747 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[9].name = "graphIndex";
4748 NimDT___EevFKe104MtQGkxxkLKkgg_kind[2] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[9];
4749 NTIconnection__EevFKe104MtQGkxxkLKkgg_.node = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[2];
4750 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[1].kind = 1;
4751 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[1].offset = offsetof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA, con);
4752 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[1].typ = (&NTIconnection__EevFKe104MtQGkxxkLKkgg_);
4753 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[1].name = "con";
4754 TM__39a9bfgg3gnILXo9by9cxATh0Q_2_7[1] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[10];
4755 NTIvarflag__F7v3qXI9a6XJkYmtFhBnwUQ_.size = sizeof(tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ);
4756 NTIvarflag__F7v3qXI9a6XJkYmtFhBnwUQ_.align = NIM_ALIGNOF(tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ);
4757 NTIvarflag__F7v3qXI9a6XJkYmtFhBnwUQ_.kind = 14;
4758 NTIvarflag__F7v3qXI9a6XJkYmtFhBnwUQ_.base = 0;
4759 NTIvarflag__F7v3qXI9a6XJkYmtFhBnwUQ_.flags = 3;
4760 for (TM__39a9bfgg3gnILXo9by9cxATh0Q_8 = 0; TM__39a9bfgg3gnILXo9by9cxATh0Q_8 < 6; TM__39a9bfgg3gnILXo9by9cxATh0Q_8++) {
4761 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_8+11].kind = 1;
4762 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_8+11].offset = TM__39a9bfgg3gnILXo9by9cxATh0Q_8;
4763 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_8+11].name = TM__39a9bfgg3gnILXo9by9cxATh0Q_7[TM__39a9bfgg3gnILXo9by9cxATh0Q_8];
4764 TM__39a9bfgg3gnILXo9by9cxATh0Q_6_6[TM__39a9bfgg3gnILXo9by9cxATh0Q_8] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_8+11];
4765 }
4766 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[17].len = 6; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[17].kind = 2; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[17].sons = &TM__39a9bfgg3gnILXo9by9cxATh0Q_6_6[0];
4767 NTIvarflag__F7v3qXI9a6XJkYmtFhBnwUQ_.node = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[17];
4768 NTIsetLvarflagT__aPvbyqN5lPiKM7xpscHQuw_.size = sizeof(tySet_tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ);
4769 NTIsetLvarflagT__aPvbyqN5lPiKM7xpscHQuw_.align = NIM_ALIGNOF(tySet_tyEnum_VarFlag__F7v3qXI9a6XJkYmtFhBnwUQ);
4770 NTIsetLvarflagT__aPvbyqN5lPiKM7xpscHQuw_.kind = 19;
4771 NTIsetLvarflagT__aPvbyqN5lPiKM7xpscHQuw_.base = (&NTIvarflag__F7v3qXI9a6XJkYmtFhBnwUQ_);
4772 NTIsetLvarflagT__aPvbyqN5lPiKM7xpscHQuw_.flags = 3;
4773 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[18].len = 0; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[18].kind = 0;
4774 NTIsetLvarflagT__aPvbyqN5lPiKM7xpscHQuw_.node = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[18];
4775 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[10].kind = 1;
4776 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[10].offset = offsetof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA, flags);
4777 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[10].typ = (&NTIsetLvarflagT__aPvbyqN5lPiKM7xpscHQuw_);
4778 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[10].name = "flags";
4779 TM__39a9bfgg3gnILXo9by9cxATh0Q_2_7[2] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[19];
4780 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[19].kind = 1;
4781 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[19].offset = offsetof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA, sym);
4782 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[19].typ = (&NTIpsym__dG2QVH5Z69aMUY38zTqWxaA_);
4783 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[19].name = "sym";
4784 TM__39a9bfgg3gnILXo9by9cxATh0Q_2_7[3] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[20];
4785 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[20].kind = 1;
4786 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[20].offset = offsetof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA, reassignedTo);
4787 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[20].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4788 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[20].name = "reassignedTo";
4789 TM__39a9bfgg3gnILXo9by9cxATh0Q_2_7[4] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[21];
4790 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[21].kind = 1;
4791 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[21].offset = offsetof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA, aliveStart);
4792 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[21].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4793 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[21].name = "aliveStart";
4794 TM__39a9bfgg3gnILXo9by9cxATh0Q_2_7[5] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[22];
4795 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[22].kind = 1;
4796 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[22].offset = offsetof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA, aliveEnd);
4797 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[22].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4798 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[22].name = "aliveEnd";
4799 TM__39a9bfgg3gnILXo9by9cxATh0Q_2_7[6] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[23];
4800 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[23].kind = 1;
4801 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[23].offset = offsetof(tyObject_VarIndex__9bUY0kR5KFdp9cLhJiAMwmwA, borrowsFrom);
4802 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[23].typ = (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_);
4803 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[23].name = "borrowsFrom";
4804 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[0].len = 7; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[0].kind = 2; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[0].sons = &TM__39a9bfgg3gnILXo9by9cxATh0Q_2_7[0];
4805 NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_.node = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[0];
4806 NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_.size = sizeof(tySequence__7PsCyIDXDb8nGSU5UlS9cAA*);
4807 NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_.align = NIM_ALIGNOF(tySequence__7PsCyIDXDb8nGSU5UlS9cAA*);
4808 NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_.kind = 24;
4809 NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_.base = (&NTIvarindex__9bUY0kR5KFdp9cLhJiAMwmwA_);
4810 NTIseqLvarindexT__7PsCyIDXDb8nGSU5UlS9cAA_.marker = Marker_tySequence__7PsCyIDXDb8nGSU5UlS9cAA;
4811 NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_.size = sizeof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug);
4812 NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_.align = NIM_ALIGNOF(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug);
4813 NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_.kind = 18;
4814 NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_.base = 0;
4815 TM__39a9bfgg3gnILXo9by9cxATh0Q_9_7[0] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[25];
4816 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[25].kind = 1;
4817 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[25].offset = offsetof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug, param);
4818 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[25].typ = (&NTIpsym__dG2QVH5Z69aMUY38zTqWxaA_);
4819 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[25].name = "param";
4820 TM__39a9bfgg3gnILXo9by9cxATh0Q_9_7[1] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[26];
4821 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[26].kind = 1;
4822 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[26].offset = offsetof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug, mutatedHere);
4823 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[26].typ = (&NTItlineinfo__WGx4rAexNXnczy1Avn646Q_);
4824 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[26].name = "mutatedHere";
4825 TM__39a9bfgg3gnILXo9by9cxATh0Q_9_7[2] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[27];
4826 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[27].kind = 1;
4827 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[27].offset = offsetof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug, connectedVia);
4828 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[27].typ = (&NTItlineinfo__WGx4rAexNXnczy1Avn646Q_);
4829 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[27].name = "connectedVia";
4830 TM__39a9bfgg3gnILXo9by9cxATh0Q_9_7[3] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[28];
4831 NTIsubgraphflag__mxQvR0HTC631bhUr6jBDDw_.size = sizeof(tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw);
4832 NTIsubgraphflag__mxQvR0HTC631bhUr6jBDDw_.align = NIM_ALIGNOF(tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw);
4833 NTIsubgraphflag__mxQvR0HTC631bhUr6jBDDw_.kind = 14;
4834 NTIsubgraphflag__mxQvR0HTC631bhUr6jBDDw_.base = 0;
4835 NTIsubgraphflag__mxQvR0HTC631bhUr6jBDDw_.flags = 3;
4836 for (TM__39a9bfgg3gnILXo9by9cxATh0Q_12 = 0; TM__39a9bfgg3gnILXo9by9cxATh0Q_12 < 4; TM__39a9bfgg3gnILXo9by9cxATh0Q_12++) {
4837 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_12+29].kind = 1;
4838 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_12+29].offset = TM__39a9bfgg3gnILXo9by9cxATh0Q_12;
4839 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_12+29].name = TM__39a9bfgg3gnILXo9by9cxATh0Q_11[TM__39a9bfgg3gnILXo9by9cxATh0Q_12];
4840 TM__39a9bfgg3gnILXo9by9cxATh0Q_10_4[TM__39a9bfgg3gnILXo9by9cxATh0Q_12] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[TM__39a9bfgg3gnILXo9by9cxATh0Q_12+29];
4841 }
4842 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[33].len = 4; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[33].kind = 2; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[33].sons = &TM__39a9bfgg3gnILXo9by9cxATh0Q_10_4[0];
4843 NTIsubgraphflag__mxQvR0HTC631bhUr6jBDDw_.node = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[33];
4844 NTIsetLsubgraphflagT__o2yv2nZi9a9cCH8g7WNv9aEew_.size = sizeof(tySet_tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw);
4845 NTIsetLsubgraphflagT__o2yv2nZi9a9cCH8g7WNv9aEew_.align = NIM_ALIGNOF(tySet_tyEnum_SubgraphFlag__mxQvR0HTC631bhUr6jBDDw);
4846 NTIsetLsubgraphflagT__o2yv2nZi9a9cCH8g7WNv9aEew_.kind = 19;
4847 NTIsetLsubgraphflagT__o2yv2nZi9a9cCH8g7WNv9aEew_.base = (&NTIsubgraphflag__mxQvR0HTC631bhUr6jBDDw_);
4848 NTIsetLsubgraphflagT__o2yv2nZi9a9cCH8g7WNv9aEew_.flags = 3;
4849 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[34].len = 0; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[34].kind = 0;
4850 NTIsetLsubgraphflagT__o2yv2nZi9a9cCH8g7WNv9aEew_.node = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[34];
4851 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[28].kind = 1;
4852 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[28].offset = offsetof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug, flags);
4853 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[28].typ = (&NTIsetLsubgraphflagT__o2yv2nZi9a9cCH8g7WNv9aEew_);
4854 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[28].name = "flags";
4855 TM__39a9bfgg3gnILXo9by9cxATh0Q_9_7[4] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[35];
4856 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[35].kind = 1;
4857 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[35].offset = offsetof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug, maxMutation);
4858 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[35].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4859 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[35].name = "maxMutation";
4860 TM__39a9bfgg3gnILXo9by9cxATh0Q_9_7[5] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[36];
4861 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[36].kind = 1;
4862 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[36].offset = offsetof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug, minConnection);
4863 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[36].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4864 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[36].name = "minConnection";
4865 TM__39a9bfgg3gnILXo9by9cxATh0Q_9_7[6] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[37];
4866 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[37].kind = 1;
4867 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[37].offset = offsetof(tyObject_MutationInfo__0Sg6dzXBBdtdBAkDWxEFug, mutations);
4868 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[37].typ = (&NTIseqLtpositionT__qwqHTkRvwhrRyENtudHQ7g_);
4869 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[37].name = "mutations";
4870 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[24].len = 7; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[24].kind = 2; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[24].sons = &TM__39a9bfgg3gnILXo9by9cxATh0Q_9_7[0];
4871 NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_.node = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[24];
4872 NTIseqLmutationinfoT__QAWA9c8ge5HfZnhFNlb9c9ajA_.size = sizeof(tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA*);
4873 NTIseqLmutationinfoT__QAWA9c8ge5HfZnhFNlb9c9ajA_.align = NIM_ALIGNOF(tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA*);
4874 NTIseqLmutationinfoT__QAWA9c8ge5HfZnhFNlb9c9ajA_.kind = 24;
4875 NTIseqLmutationinfoT__QAWA9c8ge5HfZnhFNlb9c9ajA_.base = (&NTImutationinfo__0Sg6dzXBBdtdBAkDWxEFug_);
4876 NTIseqLmutationinfoT__QAWA9c8ge5HfZnhFNlb9c9ajA_.marker = Marker_tySequence__QAWA9c8ge5HfZnhFNlb9c9ajA;
4877 NTILpsym_intT__TZXo9ct5DP9bCdCGHY4IfZPQ_.size = sizeof(tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ);
4878 NTILpsym_intT__TZXo9ct5DP9bCdCGHY4IfZPQ_.align = NIM_ALIGNOF(tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ);
4879 NTILpsym_intT__TZXo9ct5DP9bCdCGHY4IfZPQ_.kind = 18;
4880 NTILpsym_intT__TZXo9ct5DP9bCdCGHY4IfZPQ_.base = 0;
4881 TM__39a9bfgg3gnILXo9by9cxATh0Q_21_2[0] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[39];
4882 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[39].kind = 1;
4883 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[39].offset = offsetof(tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ, Field0);
4884 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[39].typ = (&NTIpsym__dG2QVH5Z69aMUY38zTqWxaA_);
4885 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[39].name = "Field0";
4886 TM__39a9bfgg3gnILXo9by9cxATh0Q_21_2[1] = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[40];
4887 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[40].kind = 1;
4888 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[40].offset = offsetof(tyTuple__TZXo9ct5DP9bCdCGHY4IfZPQ, Field1);
4889 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[40].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4890 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[40].name = "Field1";
4891 TM__39a9bfgg3gnILXo9by9cxATh0Q_0[38].len = 2; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[38].kind = 2; TM__39a9bfgg3gnILXo9by9cxATh0Q_0[38].sons = &TM__39a9bfgg3gnILXo9by9cxATh0Q_21_2[0];
4892 NTILpsym_intT__TZXo9ct5DP9bCdCGHY4IfZPQ_.node = &TM__39a9bfgg3gnILXo9by9cxATh0Q_0[38];
4893 NTIseqLLpsym_intTT__u9c10b19cqoKPxYSuh3ZKtIw_.size = sizeof(tySequence__u9c10b19cqoKPxYSuh3ZKtIw*);
4894 NTIseqLLpsym_intTT__u9c10b19cqoKPxYSuh3ZKtIw_.align = NIM_ALIGNOF(tySequence__u9c10b19cqoKPxYSuh3ZKtIw*);
4895 NTIseqLLpsym_intTT__u9c10b19cqoKPxYSuh3ZKtIw_.kind = 24;
4896 NTIseqLLpsym_intTT__u9c10b19cqoKPxYSuh3ZKtIw_.base = (&NTILpsym_intT__TZXo9ct5DP9bCdCGHY4IfZPQ_);
4897 NTIseqLLpsym_intTT__u9c10b19cqoKPxYSuh3ZKtIw_.marker = Marker_tySequence__u9c10b19cqoKPxYSuh3ZKtIw;
4898 }
4899 
4900