1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 32
3 
4 #include "nimbase.h"
5 #include <string.h>
6 #include <setjmp.h>
7 #include <math.h>
8 #include <stdio.h>
9 #undef LANGUAGE_C
10 #undef MIPSEB
11 #undef MIPSEL
12 #undef PPC
13 #undef R3000
14 #undef R4000
15 #undef i386
16 #undef linux
17 #undef mips
18 #undef near
19 #undef far
20 #undef powerpc
21 #undef unix
22 #define nimfr_(x, y)
23 #define nimln_(x, y)
24 typedef struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w;
25 typedef struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ;
26 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
27 typedef struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q;
28 typedef struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ tySequence__4mZLwkxT8rbt9bf3wXrXYNQ;
29 typedef struct tySequence__rQHmYk1HzcwNxKBymIFHpA tySequence__rQHmYk1HzcwNxKBymIFHpA;
30 typedef struct tySequence__XMM60DtBsc6xYsIpNANkrA tySequence__XMM60DtBsc6xYsIpNANkrA;
31 typedef struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw;
32 typedef struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg;
33 typedef struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg;
34 typedef struct tySequence__mWRMiYLthG9coLjkbElCxkw tySequence__mWRMiYLthG9coLjkbElCxkw;
35 typedef struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyObject_Table__iowAVDkco3qpbEH0z8OmkQ;
36 typedef struct tySequence__bTDCDwD2P7TodzbAefLcSw tySequence__bTDCDwD2P7TodzbAefLcSw;
37 typedef struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w;
38 typedef struct tySequence__3MPVXAHA08SszBrU4ffqEg tySequence__3MPVXAHA08SszBrU4ffqEg;
39 typedef struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw tyObject_Table__KcymdZjUsmGSK8BxmvoJgw;
40 typedef struct tySequence__YCf5zJHm4JI06qpmKwPUWg tySequence__YCf5zJHm4JI06qpmKwPUWg;
41 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
42 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
43 typedef struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ;
44 typedef struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA;
45 typedef struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ tySequence__eHqUwlHGGaPw0TDPDeL79cQ;
46 typedef struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA;
47 typedef struct tySequence__61s9cbAniKuBrdHwBhMDfQg tySequence__61s9cbAniKuBrdHwBhMDfQg;
48 typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
49 typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
50 typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
51 typedef struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA tyObject_Table__fdKWDDO1P17zvuQPReVgRA;
52 typedef struct tySequence__fdmz6VkIf1ewwrssKYqRFg tySequence__fdmz6VkIf1ewwrssKYqRFg;
53 typedef struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ;
54 typedef struct tySequence__kxu4GK0onha2t9bo86mdVAg tySequence__kxu4GK0onha2t9bo86mdVAg;
55 typedef struct tySequence__48JTohSgTy339bRxHzUD8KA tySequence__48JTohSgTy339bRxHzUD8KA;
56 typedef struct RootObj RootObj;
57 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
58 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
59 typedef struct tySequence__s9byh6WFJ16lPMcmqdaMTHA tySequence__s9byh6WFJ16lPMcmqdaMTHA;
60 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
61 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
62 typedef struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw tyObject_Table__Ue6w4c82v7gc7t2qntTbAw;
63 typedef struct tySequence__1U9bG8RcAedEeYkQLZjVFKA tySequence__1U9bG8RcAedEeYkQLZjVFKA;
64 typedef struct tyObject_Table__G1v8c16HePOldLeucwe05Q tyObject_Table__G1v8c16HePOldLeucwe05Q;
65 typedef struct tySequence__fIB1rTQ55aFonoft9a9bmljQ tySequence__fIB1rTQ55aFonoft9a9bmljQ;
66 typedef struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA;
67 typedef struct tySequence__23SMqauuRsbDANhthj9bWlA tySequence__23SMqauuRsbDANhthj9bWlA;
68 typedef struct tyObject_Table__NttoEzoiq5CiphZe81oadg tyObject_Table__NttoEzoiq5CiphZe81oadg;
69 typedef struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA tySequence__squ9b9bUH4OLHf6cEMrt6hVA;
70 typedef struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg tyObject_Table__nagDFX4QHx0s6Fvma9blmSg;
71 typedef struct tySequence__pHNq3oXj9av2sEUdqaqeZjw tySequence__pHNq3oXj9av2sEUdqaqeZjw;
72 typedef struct tySequence__MAQKEADohlpnXTModtugbQ tySequence__MAQKEADohlpnXTModtugbQ;
73 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
74 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
75 typedef struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA;
76 typedef struct TNimType TNimType;
77 typedef struct TNimNode TNimNode;
78 typedef struct tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA;
79 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
80 typedef struct tySequence__SHVxAqOYtIy7teT1q4s0zQ tySequence__SHVxAqOYtIy7teT1q4s0zQ;
81 typedef struct tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow;
82 typedef struct tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ;
83 typedef struct tySequence__YT27F6szr8EQuTI39aUMYuA tySequence__YT27F6szr8EQuTI39aUMYuA;
84 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
85 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
86 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
87 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
88 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
89 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
90 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
91 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
92 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
93 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
94 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
95 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
96 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
97 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
98 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
99 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
100 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
101 typedef struct NimStringDesc NimStringDesc;
102 typedef struct TGenericSeq TGenericSeq;
103 typedef struct tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA;
104 typedef struct tySequence__sII3pVVRkIdBZ2HDPdZddA tySequence__sII3pVVRkIdBZ2HDPdZddA;
105 typedef struct tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A;
106 typedef struct tySequence__WPcy3bORPBFlmk2KIq2pbQ tySequence__WPcy3bORPBFlmk2KIq2pbQ;
107 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
108 typedef struct tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q;
109 typedef struct tyObject_TNodeTable__wN7B39cKxLpMkvKNm9bduZ0A tyObject_TNodeTable__wN7B39cKxLpMkvKNm9bduZ0A;
110 typedef struct tySequence__vhmj4KkIKPinmRXny9c2Q6Q tySequence__vhmj4KkIKPinmRXny9c2Q6Q;
111 typedef struct tyObject_CountTable__tUMxxU9cRgLolsrW9b7IBGsQ tyObject_CountTable__tUMxxU9cRgLolsrW9b7IBGsQ;
112 typedef struct tySequence__XUL1TrMU0tgXmaMFCIYgFQ tySequence__XUL1TrMU0tgXmaMFCIYgFQ;
113 typedef struct tyObject_NdiFile__9cEuXfAnHp9bnWFK409cMtsEw tyObject_NdiFile__9cEuXfAnHp9bnWFK409cMtsEw;
114 typedef struct tyTuple__wROVfG5RQYpjEAhvO3LqdQ tyTuple__wROVfG5RQYpjEAhvO3LqdQ;
115 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
116 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
117 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
118 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
119 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
120 typedef struct tyTuple__tA7Q8IrfOKH7Mn89cK9cBAIg tyTuple__tA7Q8IrfOKH7Mn89cK9cBAIg;
121 typedef struct tySequence__KjgUMUjT3LUKOFIK4xt5ug tySequence__KjgUMUjT3LUKOFIK4xt5ug;
122 typedef struct tySequence__WwUFq9cJ2xKRlsAWVEHyPRg tySequence__WwUFq9cJ2xKRlsAWVEHyPRg;
123 typedef struct tySequence__oUyaggHmIX9bpJcMeoG6lpA tySequence__oUyaggHmIX9bpJcMeoG6lpA;
124 typedef struct tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg;
125 typedef struct tySequence__jwzrUFjG9akTIJTBBFvvqxw tySequence__jwzrUFjG9akTIJTBBFvvqxw;
126 typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
127 typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
128 typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
129 typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
130 typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
131 typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
132 typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
133 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
134 typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
135 typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
136 typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
137 typedef struct tyObject_TBlock__GFhahvekTq3dDOkWyhchMA tyObject_TBlock__GFhahvekTq3dDOkWyhchMA;
138 typedef struct tyTuple__FxkU4d1VDodDMc9ah6Mbagw tyTuple__FxkU4d1VDodDMc9ah6Mbagw;
139 typedef struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA;
140 typedef struct tySequence__vv5mGmK03BCr5e3LTZA5Hw tySequence__vv5mGmK03BCr5e3LTZA5Hw;
141 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
142 typedef struct Exception Exception;
143 typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
144 typedef struct TSafePoint TSafePoint;
145 typedef struct tyObject_Int128__9a9axPfb75jdWY25AamJewkA tyObject_Int128__9a9axPfb75jdWY25AamJewkA;
146 typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
147 typedef struct tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag;
148 typedef struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw;
149 typedef struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA;
150 typedef struct tyTuple__XOVT24GHXwqiEj5GCsEGCA tyTuple__XOVT24GHXwqiEj5GCsEGCA;
151 typedef struct tyTuple__xfZjiVhSEwIz5DDkzuPwog tyTuple__xfZjiVhSEwIz5DDkzuPwog;
152 typedef struct tyTuple__gEWbG8M8MJ7Ol9cA9bCDm5PQ tyTuple__gEWbG8M8MJ7Ol9cA9bCDm5PQ;
153 typedef struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg tyTuple__7q7q3E6Oj24ZNVJb9aonhAg;
154 typedef struct tyTuple__5L3fCt9bX0gyEcO30ervPLw tyTuple__5L3fCt9bX0gyEcO30ervPLw;
155 typedef struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w;
156 typedef struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ;
157 typedef struct tySequence__PXIzfWocnrafGz5p3CP5LA tySequence__PXIzfWocnrafGz5p3CP5LA;
158 typedef struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA tySequence__9bAGqSvkAaFL9bWjsEPslrFA;
159 typedef struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw;
160 typedef struct tySequence__29bS0n2QNyO1R7e0qMMOvLA tySequence__29bS0n2QNyO1R7e0qMMOvLA;
161 typedef struct tySequence__b89aLriiJnVTD186H6zNIgg tySequence__b89aLriiJnVTD186H6zNIgg;
162 typedef struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg tySequence__REuPuHuSlOkZ0Q5oqzDrQg;
163 typedef struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA tySequence__I9aQmO9asXXWJ58UI9c8BCSzA;
164 typedef struct tySequence__NyaOkf8ZwxP6rkRF5TOkew tySequence__NyaOkf8ZwxP6rkRF5TOkew;
165 typedef struct tySequence__L9bOt8CaTEmIjgtuZvp6syg tySequence__L9bOt8CaTEmIjgtuZvp6syg;
166 typedef struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ tySequence__im8UB2GsZvUaQ4a1wKGWhQ;
167 typedef struct tySequence__xxnXDLpoqBo8zJzP9b1073g tySequence__xxnXDLpoqBo8zJzP9b1073g;
168 typedef struct tySequence__DfmUmNgVGnYaiV1I6227tw tySequence__DfmUmNgVGnYaiV1I6227tw;
169 typedef struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA tySequence__t8Uv4lEJ4lkuECvP9c6JMhA;
170 typedef struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg;
171 typedef struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ;
172 typedef struct tySequence__IHUFRsFxZNv7YydiUO2esQ tySequence__IHUFRsFxZNv7YydiUO2esQ;
173 typedef struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g tyObject_Table__CE4eiu6FavV1vmUiTXQ70g;
174 typedef struct tySequence__9bT7o0CflHuiE4VhmtqBPCw tySequence__9bT7o0CflHuiE4VhmtqBPCw;
175 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
176 typedef struct tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg;
177 typedef struct tyTuple__yByxe8FSFNTgs4tcAkTYag tyTuple__yByxe8FSFNTgs4tcAkTYag;
178 typedef struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ tySequence__6H5Oh5UUvVCLiakt9aTwtUQ;
179 typedef struct tyTuple__a1QJSSO0LTGR9bFH59c2xGCA tyTuple__a1QJSSO0LTGR9bFH59c2xGCA;
180 typedef struct tySequence__shxop0zPIs5Ec3k71aCLuQ tySequence__shxop0zPIs5Ec3k71aCLuQ;
181 typedef struct tyTuple__nsNHL3sm0TZE9bootw2pEXw tyTuple__nsNHL3sm0TZE9bootw2pEXw;
182 typedef struct tySequence__sno9c9bXUVS2CqhtWOJadaCw tySequence__sno9c9bXUVS2CqhtWOJadaCw;
183 typedef struct tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA;
184 typedef struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q;
185 typedef struct tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw;
186 typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
187 typedef struct tyTuple__eCO8mA2VZCpG2fD1wGsc8Q tyTuple__eCO8mA2VZCpG2fD1wGsc8Q;
188 typedef struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw;
189 typedef struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q tyObject_Table__TRm6MPqklA8EYBmBMY117Q;
190 typedef struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ tySequence__9cnx3zXnWzeclW8Ko4oUgAQ;
191 typedef struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ;
192 typedef struct tySequence__O5RcspOP32YJ4YtU5ppxxA tySequence__O5RcspOP32YJ4YtU5ppxxA;
193 typedef struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg;
194 typedef struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ;
195 typedef struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ;
196 typedef struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg tyTuple__o67sDX0wYbEuhI9cJYAbDtg;
197 typedef struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA;
198 typedef struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg;
199 typedef struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA tySequence__ipEvhpHAmm8ZCn9bZAOdNYA;
200 typedef struct tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA;
201 typedef struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q tyTuple__9aNnDWBFMF44sfFinBpMT4Q;
202 typedef struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg;
203 typedef struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g tySequence__159bHWBGAOOs6U7OZ9cQlO0g;
204 typedef struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ tyTuple__VrD6plbUKJjYKM0lCr3hGQ;
205 typedef struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA;
206 typedef struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA tyTuple__1ZbjBgxAbnye0IFMZ6w4OA;
207 typedef struct tyTuple__rplX06U9bjhu9asm5pWdgqsA tyTuple__rplX06U9bjhu9asm5pWdgqsA;
208 typedef struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ tyTuple__xDU9bZmv1ZbZkJDaATBekIQ;
209 typedef struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A;
210 typedef struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ tyTuple__3i6hlQmqrn6m7tuVN8FHjQ;
211 typedef struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw tyTuple__OJFzEczluV8Jmo9bRpBfkzw;
212 typedef struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw;
213 typedef struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg tyTuple__F3gkSrMB1qp2Tvf9bixVXwg;
214 typedef struct tyTuple__wcNatyuf8WOqAhGLhSvgiw tyTuple__wcNatyuf8WOqAhGLhSvgiw;
215 typedef struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg;
216 typedef struct tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g;
217 typedef struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ;
218 typedef struct tyObject_TNodePair__EZfI4tFqtDSTQys2UInNjg tyObject_TNodePair__EZfI4tFqtDSTQys2UInNjg;
219 typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
220 typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
221 typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
222 typedef struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q tyTuple__0q9cmhneJEKnQERTpXXdz6Q;
223 typedef struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow;
224 typedef struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg;
225 typedef struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ;
226 typedef struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA tyTuple__Q7r9caOmeWqQGZCIBHhGRUA;
227 typedef struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg;
228 typedef struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw tyTuple__XyJ8LOAZzVVXSsmt09b8uWw;
229 typedef struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA;
230 typedef struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw tySequence__vC9cvg0R8tfBaOXXi3sfMzw;
231 typedef struct tyTuple__9aoobCDZB4x41HJSOmh0mwA tyTuple__9aoobCDZB4x41HJSOmh0mwA;
232 typedef struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA tyTuple__g0Q6Qx15nK53ce9aLo7YyrA;
233 typedef struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw;
234 typedef struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw;
235 typedef struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA;
236 typedef struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ;
237 typedef struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA tyTuple__UvldbCB6B9ayi9bGYW7vJNLA;
238 struct tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw {
239 tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg* data;
240 NI counter;
241 };
242 struct tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg {
243 tySequence__mWRMiYLthG9coLjkbElCxkw* data;
244 NI counter;
245 };
246 struct tyObject_Table__iowAVDkco3qpbEH0z8OmkQ {
247 tySequence__bTDCDwD2P7TodzbAefLcSw* data;
248 NI counter;
249 };
250 typedef tyObject_Table__iowAVDkco3qpbEH0z8OmkQ tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ[5];
251 struct tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w {
252 tySequence__3MPVXAHA08SszBrU4ffqEg* data;
253 NI counter;
254 };
255 struct tyObject_Table__KcymdZjUsmGSK8BxmvoJgw {
256 tySequence__YCf5zJHm4JI06qpmKwPUWg* data;
257 NI counter;
258 };
259 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
260 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
261 NI counter;
262 };
263 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
264 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
265 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
266 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
267 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
268 struct tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ {
269 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
270 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
271 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
272 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
273 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
274 };
275 struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA {
276 NI counter;
277 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* data;
278 };
279 struct tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA {
280 tySequence__61s9cbAniKuBrdHwBhMDfQg* data;
281 NI counter;
282 };
283 typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
284 struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
285 NI elems;
286 NI counter;
287 NI max;
288 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
289 tySequence__Bre9bNyuQOg1EJKitjSzn8w* data;
290 tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
291 };
292 struct tyObject_Table__fdKWDDO1P17zvuQPReVgRA {
293 tySequence__fdmz6VkIf1ewwrssKYqRFg* data;
294 NI counter;
295 };
296 struct tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ {
297 tySequence__kxu4GK0onha2t9bo86mdVAg* data;
298 NI counter;
299 };
300 typedef struct {
301 N_NIMCALL_PTR(NIM_BOOL, ClP_0) (void* ClE_0);
302 void* ClE_0;
303 } tyProc__In3g79a0qTcRmbTbJp9ba9ctg;
304 typedef tyObject_TType__facALICuu8zUj0hjvbTLFg* tyArray__9bjuenwQUcqO3lbmS2wX7uA[65];
305 struct tyObject_Table__Ue6w4c82v7gc7t2qntTbAw {
306 tySequence__1U9bG8RcAedEeYkQLZjVFKA* data;
307 NI counter;
308 };
309 struct tyObject_Table__G1v8c16HePOldLeucwe05Q {
310 tySequence__fIB1rTQ55aFonoft9a9bmljQ* data;
311 NI counter;
312 };
313 typedef N_NIMCALL_PTR(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, tyProc__VHDwJFdIqpwtpUGuxiXUwg) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx);
314 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__mjUN9alLJ31lnSKkUsuyWMw) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, NI32 fileIdx);
315 struct tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA {
316 tySequence__23SMqauuRsbDANhthj9bWlA* data;
317 NI counter;
318 };
319 struct tyObject_Table__NttoEzoiq5CiphZe81oadg {
320 tySequence__squ9b9bUH4OLHf6cEMrt6hVA* data;
321 NI counter;
322 };
323 struct tyObject_Table__nagDFX4QHx0s6Fvma9blmSg {
324 tySequence__pHNq3oXj9av2sEUdqaqeZjw* data;
325 NI counter;
326 };
327 typedef N_NIMCALL_PTR(void, tyProc__TjycsqkDBjsxd4da6KYTng) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
328 typedef N_NIMCALL_PTR(void, tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* body);
329 typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__J7Jq15ZScfKLqcLx8sEz9cA) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TType__facALICuu8zUj0hjvbTLFg* formal, tyObject_TType__facALICuu8zUj0hjvbTLFg* actual);
330 struct tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA {
331 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opNot;
332 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opContains;
333 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLe;
334 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLt;
335 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAnd;
336 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opOr;
337 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opIsNil;
338 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opEq;
339 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opAdd;
340 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opSub;
341 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opMul;
342 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opDiv;
343 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opLen;
344 };
345 struct tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ {
346 tySequence__4mZLwkxT8rbt9bf3wXrXYNQ* ifaces;
347 tySequence__rQHmYk1HzcwNxKBymIFHpA* packed_0;
348 tySequence__XMM60DtBsc6xYsIpNANkrA* encoders;
349 tyObject_Table__ZqXrnX212T9bCb4lhpQ9bFBw typeInstCache;
350 tyObject_Table__UVZI5J9aS51B4B0eYPpW1Rg procInstCache;
351 tyArray__pxY9cgs6r9cBvGwlO8XZ9ccbQ attachedOps;
352 tyObject_Table__KUYGGgSxi8wBr0SXET9bi3w methodsPerType;
353 tyObject_Table__KcymdZjUsmGSK8BxmvoJgw enumToStringProcs;
354 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA emittedTypeInfo;
355 tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ startupPackedConfig;
356 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageSyms;
357 tyObject_Table__hd3qB0wXU9bWPJR7fjShhbA modulesPerPackage;
358 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA deps;
359 tyObject_Table__fdKWDDO1P17zvuQPReVgRA importDeps;
360 NIM_BOOL suggestMode;
361 NIM_BOOL invalidTransitiveClosure;
362 tyObject_Table__e2Ciu0s1q49aVQ7ULXy7l9bQ inclToMod;
363 tySequence__48JTohSgTy339bRxHzUD8KA* importStack;
364 RootObj* backend;
365 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
366 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
367 RootObj* vm;
368 tyProc__In3g79a0qTcRmbTbJp9ba9ctg doStopCompile;
369 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* usageSym;
370 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* owners;
371 tySequence__s9byh6WFJ16lPMcmqdaMTHA* methods;
372 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* systemModule;
373 tyArray__9bjuenwQUcqO3lbmS2wX7uA sysTypes;
374 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA compilerprocs;
375 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA exposed;
376 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA packageTypes;
377 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* emptyNode;
378 tyObject_Table__Ue6w4c82v7gc7t2qntTbAw canonTypes;
379 tyObject_Table__G1v8c16HePOldLeucwe05Q symBodyHashes;
380 tyProc__VHDwJFdIqpwtpUGuxiXUwg importModuleCallback;
381 tyProc__mjUN9alLJ31lnSKkUsuyWMw includeFileCallback;
382 tyObject_Table__0Y2brGGKD9bV6GJLXT9aUDgA cacheSeqs;
383 tyObject_Table__NttoEzoiq5CiphZe81oadg cacheCounters;
384 tyObject_Table__nagDFX4QHx0s6Fvma9blmSg cacheTables;
385 tySequence__MAQKEADohlpnXTModtugbQ* passes;
386 tyProc__TjycsqkDBjsxd4da6KYTng onDefinition;
387 tyProc__TjycsqkDBjsxd4da6KYTng onDefinitionResolveForward;
388 tyProc__TjycsqkDBjsxd4da6KYTng onUsage;
389 tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* globalDestructors;
390 tyProc__Mrj9cEgtPER9bAXMDB9cTXrfQ strongSemCheck;
391 tyProc__J7Jq15ZScfKLqcLx8sEz9cA compatibleProps;
392 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
393 tyObject_Operators__EbMP71azE1HSvYAQoCH9cXA operators;
394 };
395 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
396 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
397 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
398 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
399 struct TNimType {
400 NI size;
401 NI align;
402 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
403 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
404 TNimType* base;
405 TNimNode* node;
406 void* finalizer;
407 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
408 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
409 };
410 struct RootObj {
411 TNimType* m_type;
412 };
413 struct tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ {
414 tySequence__YT27F6szr8EQuTI39aUMYuA* data;
415 NI counter;
416 };
417 struct tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA {
418   RootObj Sup;
419 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* mainModProcs;
420 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* mainModInit;
421 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* otherModsInit;
422 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* mainDatInit;
423 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* mapping;
424 tySequence__SHVxAqOYtIy7teT1q4s0zQ* modules;
425 tySequence__SHVxAqOYtIy7teT1q4s0zQ* modulesClosed;
426 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* forwardedProcs;
427 tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* generatedHeader;
428 tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ typeInfoMarker;
429 tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ typeInfoMarkerV2;
430 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
431 tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph;
432 NI strVersion;
433 NI seqVersion;
434 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* nimtv;
435 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* nimtvDeps;
436 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA nimtvDeclared;
437 };
438 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
439 NI refcount;
440 TNimType* typ;
441 };
442 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
443 void* bottom;
444 };
445 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
446 NI len;
447 NI cap;
448 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
449 };
450 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
451 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
452 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
453 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
454 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
455 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
456 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
457 };
458 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
459 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
460 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
461 NI key;
462 NI upperBound;
463 NI level;
464 };
465 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
466 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
467 NI Field1;
468 };
469 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
470 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
471 NI len;
472 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
473 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
474 };
475 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
476 NI minLargeObj;
477 NI maxLargeObj;
478 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
479 NU32 flBitmap;
480 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
481 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
482 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
483 NI currMem;
484 NI maxMem;
485 NI freeMem;
486 NI occ;
487 NI lastSize;
488 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
489 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
490 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
491 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
492 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
493 NIM_BOOL locked;
494 NIM_BOOL blockChunkSizeIncrease;
495 NI nextChunkSize;
496 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
497 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
498 };
499 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
500 NI stackScans;
501 NI cycleCollections;
502 NI maxThreshold;
503 NI maxStackSize;
504 NI maxStackCells;
505 NI cycleTableSize;
506 NI64 maxPause;
507 };
508 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
509 NI counter;
510 NI max;
511 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
512 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
513 };
514 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
515 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
516 NI cycleThreshold;
517 NI zctThreshold;
518 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
519 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
520 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
521 NI recGcLock;
522 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
523 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
524 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
525 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
526 NI gcThreadId;
527 };
528 struct tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w {
529   RootObj Sup;
530 tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen;
531 };
532 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__pujFC2IN5RzE4MXkqaMD9aQ[20];
533 typedef NU8 tySet_tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q;
534 struct TGenericSeq {
535 NI len;
536 NI reserved;
537 };
538 struct NimStringDesc {
539   TGenericSeq Sup;
540 NIM_CHAR data[SEQ_DECL_SIZE];
541 };
542 struct tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA {
543 tySequence__sII3pVVRkIdBZ2HDPdZddA* data;
544 NI counter;
545 };
546 struct tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A {
547 tySequence__WPcy3bORPBFlmk2KIq2pbQ* data;
548 NI counter;
549 };
550 struct tyObject_TNodeTable__wN7B39cKxLpMkvKNm9bduZ0A {
551 NI counter;
552 tySequence__vhmj4KkIKPinmRXny9c2Q6Q* data;
553 };
554 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__MxT2Arb3Nlp7V9bRITO3dvg[10];
555 struct tyObject_CountTable__tUMxxU9cRgLolsrW9b7IBGsQ {
556 tySequence__XUL1TrMU0tgXmaMFCIYgFQ* data;
557 NI counter;
558 NIM_BOOL isSorted;
559 };
560 struct tyObject_NdiFile__9cEuXfAnHp9bnWFK409cMtsEw {
561 NIM_BOOL enabled;
562 FILE* f;
563 NimStringDesc* buf;
564 NimStringDesc* filename;
565 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* syms;
566 };
567 struct tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow {
568   tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w Sup;
569 tyArray__pujFC2IN5RzE4MXkqaMD9aQ s;
570 tySet_tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q flags;
571 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
572 NimStringDesc* filename;
573 NimStringDesc* cfilename;
574 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmpBase;
575 tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA typeCache;
576 tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A typeABICache;
577 tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA forwTypeCache;
578 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA declaredThings;
579 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA declaredProtos;
580 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA alive;
581 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* headerFiles;
582 tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA typeInfoMarker;
583 tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA typeInfoMarkerV2;
584 tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* initProc;
585 tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* preInitProc;
586 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* hcrCreateTypeInfosProc;
587 NIM_BOOL inHcrInitGuard;
588 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* typeStack;
589 tyObject_TNodeTable__wN7B39cKxLpMkvKNm9bduZ0A dataCache;
590 NI typeNodes;
591 NI nimTypes;
592 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* typeNodesName;
593 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* nimTypesName;
594 NI labels;
595 tyArray__MxT2Arb3Nlp7V9bRITO3dvg extensionLoaders;
596 tyObject_CountTable__tUMxxU9cRgLolsrW9b7IBGsQ sigConflicts;
597 tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g;
598 tyObject_NdiFile__9cEuXfAnHp9bnWFK409cMtsEw ndi;
599 };
600 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
601 struct TNimNode {
602 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
603 NI offset;
604 TNimType* typ;
605 NCSTRING name;
606 NI len;
607 TNimNode** sons;
608 };
609 struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA {
610   RootObj Sup;
611 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* left;
612 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* right;
613 NI L;
614 NimStringDesc* data;
615 };
616 typedef NU8 tyArray__qtqsWM5aXmcpMIVmvq3kAA[16];
617 struct tyTuple__wROVfG5RQYpjEAhvO3LqdQ {
618 NI Field0;
619 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
620 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* Field2;
621 };
622 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
623 NI32 module;
624 NI32 item;
625 };
626 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
627   RootObj Sup;
628 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
629 };
630 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
631 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
632 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
633 NU16 line;
634 NI16 col;
635 NI32 fileIndex;
636 };
637 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
638 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
639 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
640 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
641 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
642 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
643 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
644 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
645 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
646 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
647 };
648 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
649   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
650 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
651 union{
652 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
653 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
654 } _kind_1;
655 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
656 NI bitsize;
657 NI alignment;
658 } _kind_2;
659 };
660 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
661 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
662 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
663 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
664 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
665 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
666 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
667 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
668 NI position;
669 NI offset;
670 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
671 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
672 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
673 };
674 struct tyTuple__tA7Q8IrfOKH7Mn89cK9cBAIg {
675 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field0;
676 NI Field1;
677 };
678 typedef NU8 tySet_tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ;
679 struct tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg {
680 tySequence__jwzrUFjG9akTIJTBBFvvqxw* data;
681 NI counter;
682 NIM_BOOL isSorted;
683 };
684 struct tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q {
685 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc;
686 tySet_tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ flags;
687 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
688 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q currLineInfo;
689 tySequence__KjgUMUjT3LUKOFIK4xt5ug* nestedTryStmts;
690 tySequence__WwUFq9cJ2xKRlsAWVEHyPRg* finallySafePoints;
691 NI labels;
692 tySequence__oUyaggHmIX9bpJcMeoG6lpA* blocks;
693 NI breakIdx;
694 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
695 tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* module;
696 NI withinLoop;
697 NI splitDecls;
698 NI withinTryWithExcept;
699 NI withinBlockLeaveActions;
700 tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg sigConflicts;
701 };
702 typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
703 typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
704 struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
705 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
706 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
707 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
708 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
709 NI intSize;
710 NI floatSize;
711 NI ptrSize;
712 NimStringDesc* tnl;
713 };
714 typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
715 struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
716 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
717 NIM_BOOL trackPosAttached;
718 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
719 tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
720 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
721 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
722 tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
723 NI32 systemFileIdx;
724 };
725 typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ;
726 typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA;
727 typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
728 typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
729 struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
730 tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
731 NI counter;
732 };
733 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
734 typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
735 typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
736 typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11];
737 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
738 NI Field0;
739 NI Field1;
740 NI Field2;
741 };
742 typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
743 typedef struct {
744 N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
745 void* ClE_0;
746 } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
747 typedef struct {
748 N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
749 void* ClE_0;
750 } tyProc__k2HFjxisIgDALbEUFojxaQ;
751 typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
752 typedef struct {
753 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
754 void* ClE_0;
755 } tyProc__oL9coyIA2VDTGdUcur9aL9bew;
756 struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
757 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
758 tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
759 NI linesCompiled;
760 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
761 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
762 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
763 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
764 tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
765 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption;
766 NimStringDesc* unitSep;
767 NI evalTemplateCounter;
768 NI evalMacroCounter;
769 NI8 exitcode;
770 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd;
771 NimStringDesc* cmdInput;
772 NIM_BOOL projectIsCmd;
773 NIM_BOOL implicitCmd;
774 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
775 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
776 NIM_BOOL hintProcessingDots;
777 NI verbosity;
778 NI numberOfProcessors;
779 NF lastCmdTime;
780 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
781 NI spellSuggestMax;
782 tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
783 NimStringDesc* headerFile;
784 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
785 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
786 NimStringDesc* arguments;
787 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
788 NIM_BOOL oldNewlines;
789 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
790 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes;
791 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes;
792 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes;
793 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes;
794 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors;
795 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug mainPackageNotes;
796 NI mainPackageId;
797 NI errorCounter;
798 NI hintCounter;
799 NI warnCounter;
800 NI errorMax;
801 NI maxLoopIterationsVM;
802 NIM_BOOL isVmTrace;
803 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
804 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
805 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
806 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
807 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
808 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
809 NimStringDesc* outFile;
810 NimStringDesc* outDir;
811 NimStringDesc* jsonBuildFile;
812 NimStringDesc* prefixDir;
813 NimStringDesc* libpath;
814 NimStringDesc* nimcacheDir;
815 tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
816 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
817 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
818 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
819 NimStringDesc* projectName;
820 NimStringDesc* projectPath;
821 NimStringDesc* projectFull;
822 NIM_BOOL projectIsStdin;
823 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot;
824 NI32 projectMainIdx;
825 NI32 projectMainIdx2;
826 NimStringDesc* command;
827 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
828 NimStringDesc* commandLine;
829 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
830 NIM_BOOL keepComments;
831 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
832 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
833 NimStringDesc* docSeeSrcUrl;
834 NimStringDesc* docRoot;
835 NimStringDesc* docCmd;
836 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
837 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
838 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
839 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
840 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
841 NimStringDesc* linkOptionsCmd;
842 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
843 NimStringDesc* linkOptions;
844 NimStringDesc* compileOptions;
845 NimStringDesc* cCompilerPath;
846 tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
847 tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
848 NI suggestVersion;
849 NI suggestMaxResults;
850 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
851 tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
852 tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
853 NimStringDesc* cppCustomNamespace;
854 NimStringDesc* nimMainPrefix;
855 tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
856 };
857 typedef NU8 tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
858 typedef NU8 tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ;
859 typedef NU8 tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q;
860 typedef NU8 tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
861 typedef NU8 tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
862 struct tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q {
863 NI32 module;
864 NI32 symId;
865 NI32 typeId_0;
866 NIM_BOOL sealed;
867 };
868 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
869 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
870 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
871 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
872 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
873 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
874 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
875 union{
876 struct {NI64 intVal;
877 } _kind_1;
878 struct {NF floatVal;
879 } _kind_2;
880 struct {NimStringDesc* strVal;
881 } _kind_3;
882 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
883 } _kind_4;
884 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
885 } _kind_5;
886 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
887 } _kind_6;
888 };
889 };
890 typedef NU8 tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
891 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__c9b9aKKmyKnqxZD8lAny45jg[3];
892 struct tyObject_TBlock__GFhahvekTq3dDOkWyhchMA {
893 NI id;
894 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* label;
895 tyArray__c9b9aKKmyKnqxZD8lAny45jg sections;
896 NIM_BOOL isLoop;
897 NI16 nestedTryStmts;
898 NI16 nestedExceptStmts;
899 NI16 frameLen;
900 };
901 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__JiWwrsTRC6xqNlGcBthSVA[1];
902 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__qTjAvTvKF9anytN1At69aJMQ[1];
903 typedef NU8 tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg;
904 struct tyTuple__FxkU4d1VDodDMc9ah6Mbagw {
905 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field0;
906 NIM_BOOL Field1;
907 NI Field2;
908 };
909 typedef NU8 tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug;
910 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
911 NI id;
912 NimStringDesc* s;
913 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
914 NI h;
915 };
916 struct tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA {
917 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
918 tySequence__vv5mGmK03BCr5e3LTZA5Hw* converters;
919 tySequence__vv5mGmK03BCr5e3LTZA5Hw* patterns;
920 tySequence__vv5mGmK03BCr5e3LTZA5Hw* pureEnums;
921 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interf;
922 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA interfHidden;
923 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* uniqueName;
924 };
925 typedef NU8 tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
926 typedef NU8 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ;
927 struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA {
928 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ kind;
929 NIM_BOOL generated;
930 NIM_BOOL isOverriden;
931 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name;
932 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* path;
933 };
934 typedef NU8 tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg;
935 typedef NU8 tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag[9];
936 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
937 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
938 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
939 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
940   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
941 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
942 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
943 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
944 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
945 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
946 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
947 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
948 NI64 size;
949 NI16 align;
950 NI16 paddingAtEnd;
951 NI16 lockLevel;
952 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
953 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
954 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
955 };
956 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
957 NimStringDesc* Field0;
958 NI Field1;
959 NI Field2;
960 };
961 typedef NU8 tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw;
962 typedef NU8 tySet_tyEnum_ConsiderFlag__9a9az8WnKmq9bvt8EXoSUES7g;
963 struct Exception {
964   RootObj Sup;
965 Exception* parent;
966 NCSTRING name;
967 NimStringDesc* message;
968 tySequence__uB9b75OUPRENsBAu4AnoePA* trace;
969 Exception* up;
970 };
971 struct TSafePoint {
972 TSafePoint* prev;
973 NI status;
974 jmp_buf context;
975 };
976 typedef NU32 tyArray__FleBT9cC2nxhgiXmSYYnEKA[4];
977 struct tyObject_Int128__9a9axPfb75jdWY25AamJewkA {
978 tyArray__FleBT9cC2nxhgiXmSYYnEKA udata;
979 };
980 typedef NU8 tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w;
981 typedef NU8 tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
982 struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
983 NI Field0;
984 NimStringDesc* Field1;
985 };
986 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__mrugoXXRZUEeG9bEXo9auBKw[2];
987 struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA {
988   Exception Sup;
989 };
990 struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw {
991   tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup;
992 };
993 struct tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag {
994   tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw Sup;
995 };
996 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__duFhZXIIlrbrM62cWjNekg[5];
997 typedef NimStringDesc* tyArray__t1sx1FVcaX4m77XqENedIQ[11];
998 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__wqYjTJU9ab2ZgEFMaQc3vNA[3];
999 struct tyTuple__XOVT24GHXwqiEj5GCsEGCA {
1000 NimStringDesc* Field0;
1001 NI Field1;
1002 };
1003 typedef NU8 tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw;
1004 typedef NU8 tyEnum_TTypeFieldResult__aBXTX9cIKT9b0yNlXSu9aPT9cw;
1005 struct tyTuple__xfZjiVhSEwIz5DDkzuPwog {
1006 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* Field0;
1007 NI32 Field1;
1008 };
1009 struct tyTuple__gEWbG8M8MJ7Ol9cA9bCDm5PQ {
1010 NI Field0;
1011 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
1012 tyTuple__xfZjiVhSEwIz5DDkzuPwog Field2;
1013 };
1014 struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg {
1015 NimStringDesc* Field0;
1016 NimStringDesc* Field1;
1017 NimStringDesc* Field2;
1018 };
1019 typedef NU8 tySet_tyEnum_TInfoOSProp__thetQwB9agpeQ13qFmAcWhg;
1020 struct tyTuple__5L3fCt9bX0gyEcO30ervPLw {
1021 NimStringDesc* Field0;
1022 NimStringDesc* Field1;
1023 NimStringDesc* Field2;
1024 NimStringDesc* Field3;
1025 NimStringDesc* Field4;
1026 NimStringDesc* Field5;
1027 NimStringDesc* Field6;
1028 NimStringDesc* Field7;
1029 NimStringDesc* Field8;
1030 NimStringDesc* Field9;
1031 NimStringDesc* Field10;
1032 NimStringDesc* Field11;
1033 tySet_tyEnum_TInfoOSProp__thetQwB9agpeQ13qFmAcWhg Field12;
1034 };
1035 typedef tyTuple__5L3fCt9bX0gyEcO30ervPLw tyArray__VbVuAPt8GSIPhx9amVJ0MyA[32];
1036 typedef NimStringDesc* tyArray__nHXaesL0DJZHyVS07ARPRA[1];
1037 typedef NU8 tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q;
1038 struct tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw {
1039 tySequence__29bS0n2QNyO1R7e0qMMOvLA* nodes;
1040 };
1041 typedef NU8 tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g;
1042 struct tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg {
1043 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* vals;
1044 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
1045 };
1046 struct tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ {
1047 tySequence__IHUFRsFxZNv7YydiUO2esQ* vals;
1048 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* keys;
1049 };
1050 struct tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ {
1051 NimStringDesc* definedSymbols;
1052 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw moduleFlags;
1053 tySequence__PXIzfWocnrafGz5p3CP5LA* includes;
1054 tySequence__9bAGqSvkAaFL9bWjsEPslrFA* imports;
1055 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw toReplay;
1056 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw topLevel;
1057 tyObject_PackedTree__8otSrA7MENGYESDkEP7nnw bodies;
1058 tySequence__b89aLriiJnVTD186H6zNIgg* exports;
1059 tySequence__b89aLriiJnVTD186H6zNIgg* hidden;
1060 tySequence__REuPuHuSlOkZ0Q5oqzDrQg* reexports;
1061 tySequence__b89aLriiJnVTD186H6zNIgg* compilerProcs;
1062 tySequence__48JTohSgTy339bRxHzUD8KA* converters;
1063 tySequence__48JTohSgTy339bRxHzUD8KA* methods;
1064 tySequence__48JTohSgTy339bRxHzUD8KA* trmacros;
1065 tySequence__48JTohSgTy339bRxHzUD8KA* pureEnums;
1066 tySequence__I9aQmO9asXXWJ58UI9c8BCSzA* macroUsages;
1067 tySequence__NyaOkf8ZwxP6rkRF5TOkew* typeInstCache;
1068 tySequence__L9bOt8CaTEmIjgtuZvp6syg* procInstCache;
1069 tySequence__im8UB2GsZvUaQ4a1wKGWhQ* attachedOps;
1070 tySequence__xxnXDLpoqBo8zJzP9b1073g* methodsPerType;
1071 tySequence__NyaOkf8ZwxP6rkRF5TOkew* enumToStringProcs;
1072 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* emittedTypeInfo;
1073 tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g backendFlags;
1074 tySequence__DfmUmNgVGnYaiV1I6227tw* syms;
1075 tySequence__t8Uv4lEJ4lkuECvP9c6JMhA* types;
1076 tyObject_BiTable__SMd2CpsYscvX1veKoGcqmg strings;
1077 tyObject_BiTable__DyMEQOe8VsqcG49bIhU69bBQ numbers;
1078 tyObject_PackedConfig__McwvRupqDAJbGrinIDFZJQ cfg;
1079 };
1080 struct tyObject_Table__CE4eiu6FavV1vmUiTXQ70g {
1081 tySequence__9bT7o0CflHuiE4VhmtqBPCw* data;
1082 NI counter;
1083 };
1084 struct tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w {
1085 tyEnum_ModuleStatus__MgSLMPwZ4GVYYz7Kn9bmm6Q status;
1086 NIM_BOOL symsInit;
1087 NIM_BOOL typesInit;
1088 NIM_BOOL loadedButAliveSetChanged;
1089 tyObject_PackedModule__ZSxNoR2V6oK5xosmtvhjNQ fromDisk;
1090 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* syms;
1091 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* types;
1092 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module;
1093 tyObject_Table__CE4eiu6FavV1vmUiTXQ70g iface;
1094 tyObject_Table__CE4eiu6FavV1vmUiTXQ70g ifaceHidden;
1095 };
1096 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
1097 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
1098 typedef NU8 tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg;
1099 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__dNfZYyzVYdaWfURv4pxodA[6];
1100 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
1101 NI Field0;
1102 NimStringDesc* Field1;
1103 NI32 Field2;
1104 };
1105 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__f7nG5LD47BH5K9c6mASit3g[4];
1106 struct tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg {
1107 tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p;
1108 NimStringDesc* visitorFrmt;
1109 };
1110 typedef NU8 tySet_tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg;
1111 struct tyTuple__yByxe8FSFNTgs4tcAkTYag {
1112 NimStringDesc* Field0;
1113 NimStringDesc* Field1;
1114 NimStringDesc* Field2;
1115 NimStringDesc* Field3;
1116 NimStringDesc* Field4;
1117 NimStringDesc* Field5;
1118 NimStringDesc* Field6;
1119 NimStringDesc* Field7;
1120 NimStringDesc* Field8;
1121 NimStringDesc* Field9;
1122 NimStringDesc* Field10;
1123 NimStringDesc* Field11;
1124 NimStringDesc* Field12;
1125 NimStringDesc* Field13;
1126 NimStringDesc* Field14;
1127 NimStringDesc* Field15;
1128 NimStringDesc* Field16;
1129 NimStringDesc* Field17;
1130 NimStringDesc* Field18;
1131 NimStringDesc* Field19;
1132 NimStringDesc* Field20;
1133 tySet_tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg Field21;
1134 };
1135 typedef tyTuple__yByxe8FSFNTgs4tcAkTYag tyArray__sa9aJ6U8e9b7Bj4Yq8itsR8w[11];
1136 typedef NU8 tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg;
1137 typedef NU8 tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA;
1138 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__YcHYlgE5mhtkt9a3rnoucVg[7];
1139 typedef NU8 tyEnum_TClosureTypeKind__cLHRMz1vnpSK0uePy2qbWw;
1140 typedef NU8 tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw;
1141 typedef NU8 tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw;
1142 typedef NU8 tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg;
1143 typedef NimStringDesc* tyArray__Sjq0yxKksnvb1U6tEMqzYg[14];
1144 struct tyTuple__a1QJSSO0LTGR9bFH59c2xGCA {
1145 NI Field0;
1146 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
1147 };
1148 typedef NU16 tySet_tyEnum_TRenderFlag__wrPgUo1ExBlHvFnXN2nSHw;
1149 typedef NU8 tyEnum_AliasKind__mOZtJx9b3QXuy9bfWq9cuUNCg;
1150 struct tyTuple__nsNHL3sm0TZE9bootw2pEXw {
1151 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* Field0;
1152 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* Field1;
1153 };
1154 typedef NU8 tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w;
1155 typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
1156 typedef NimStringDesc* tyArray__ttGk45MsSAdGt9ciYdRA8VQ[4];
1157 typedef NimStringDesc* tyArray__rJSOG9bfI5wi9aqXvYJsFCWA[7];
1158 typedef NimStringDesc* tyArray__cqX2jO1YLR9bYjA09bx8BZVg[2];
1159 typedef tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* tyArray__jlWPjgtbdjE069arIWHC9c9bg[1];
1160 typedef NimStringDesc* tyArray__B06a0PrPRpY9aXtMPObCiCA[5];
1161 typedef NU8 tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
1162 typedef NU16 tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw;
1163 typedef NU8 tyEnum_TNodeKind__Dq0DNfMwTBUf7hLFKKDU7g;
1164 struct tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA {
1165 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA Field0;
1166 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* Field1;
1167 };
1168 struct tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q {
1169 NI Field0;
1170 NI32 Field1;
1171 tySequence__48JTohSgTy339bRxHzUD8KA* Field2;
1172 };
1173 struct tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw {
1174   RootObj Sup;
1175 NI colonstate_;
1176 tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m1;
1177 };
1178 typedef struct {
1179 N_NIMCALL_PTR(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, ClP_0) (NimStringDesc* handle, NimStringDesc* name, void* ClE_0);
1180 void* ClE_0;
1181 } tyProc__G7yv7dCrMxuDBcXNy2RR1w;
1182 typedef N_CLOSURE_PTR(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, TM__MQdRN7fpbG7rPm4JpVVAhA_1208) (NimStringDesc* handle, NimStringDesc* name);
1183 typedef N_CLOSURE_PTR(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, TM__MQdRN7fpbG7rPm4JpVVAhA_1212) (NimStringDesc* handle, NimStringDesc* name);
1184 typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
1185 struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
1186 NimStringDesc* nimname;
1187 NimStringDesc* cname;
1188 NimStringDesc* obj;
1189 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
1190 NimStringDesc* customArgs;
1191 };
1192 typedef NU8 tyEnum_Endianness__0BVYNY0K9cz7BUPI3AnbEQw;
1193 struct tyTuple__eCO8mA2VZCpG2fD1wGsc8Q {
1194 NimStringDesc* Field0;
1195 NI Field1;
1196 tyEnum_Endianness__0BVYNY0K9cz7BUPI3AnbEQw Field2;
1197 NI Field3;
1198 NI Field4;
1199 };
1200 typedef tyTuple__eCO8mA2VZCpG2fD1wGsc8Q tyArray__9cwFB2SXj9aw9cyLiDbvSiBEg[26];
1201 typedef NU8 tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g;
1202 struct tyObject_Table__TRm6MPqklA8EYBmBMY117Q {
1203 tySequence__9cnx3zXnWzeclW8Ko4oUgAQ* data;
1204 NI counter;
1205 };
1206 struct tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw {
1207 NI32 thisModule;
1208 NI32 lastFile;
1209 NU32 lastLit;
1210 tyObject_Table__TRm6MPqklA8EYBmBMY117Q filenames;
1211 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* pendingTypes;
1212 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* pendingSyms;
1213 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA typeMarker;
1214 tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA symMarker;
1215 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
1216 };
1217 struct tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ {
1218 NU32 module;
1219 NI32 item;
1220 };
1221 struct tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ {
1222 NI module;
1223 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ packed_0;
1224 };
1225 struct tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg {
1226 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id;
1227 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
1228 };
1229 struct tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ {
1230 NI Field0;
1231 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
1232 tySequence__O5RcspOP32YJ4YtU5ppxxA* Field2;
1233 };
1234 struct tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg {
1235 NI module;
1236 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ sym;
1237 tySequence__ipEvhpHAmm8ZCn9bZAOdNYA* concreteTypes;
1238 tyObject_TInstantiation__5LqgVn6Tq9ainQRK7TQAQxA* inst;
1239 };
1240 struct tyTuple__o67sDX0wYbEuhI9cJYAbDtg {
1241 NI Field0;
1242 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
1243 tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA* Field2;
1244 };
1245 struct tyTuple__9aNnDWBFMF44sfFinBpMT4Q {
1246 NI Field0;
1247 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
1248 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field2;
1249 };
1250 struct tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA {
1251 tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ id;
1252 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
1253 };
1254 struct tyTuple__VrD6plbUKJjYKM0lCr3hGQ {
1255 NI Field0;
1256 tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field1;
1257 };
1258 struct tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg {
1259 NI Field0;
1260 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
1261 tySequence__159bHWBGAOOs6U7OZ9cQlO0g* Field2;
1262 };
1263 struct tyTuple__1ZbjBgxAbnye0IFMZ6w4OA {
1264 NI Field0;
1265 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
1266 tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA Field2;
1267 };
1268 struct tyTuple__rplX06U9bjhu9asm5pWdgqsA {
1269 NI Field0;
1270 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g Field1;
1271 tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA Field2;
1272 };
1273 struct tyTuple__xDU9bZmv1ZbZkJDaATBekIQ {
1274 NI Field0;
1275 NI32 Field1;
1276 NI32 Field2;
1277 };
1278 struct tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A {
1279 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* Field0;
1280 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* Field1;
1281 };
1282 struct tyTuple__3i6hlQmqrn6m7tuVN8FHjQ {
1283 NI Field0;
1284 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field1;
1285 tyObject_TType__facALICuu8zUj0hjvbTLFg* Field2;
1286 };
1287 struct tyTuple__OJFzEczluV8Jmo9bRpBfkzw {
1288 NI Field0;
1289 NI Field1;
1290 tyArray__qtqsWM5aXmcpMIVmvq3kAA Field2;
1291 };
1292 struct tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw {
1293 NI Field0;
1294 NimStringDesc* Field1;
1295 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* Field2;
1296 };
1297 struct tyTuple__F3gkSrMB1qp2Tvf9bixVXwg {
1298 NI Field0;
1299 NimStringDesc* Field1;
1300 NI64 Field2;
1301 };
1302 struct tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg {
1303 tyObject_NodecolonObjectType___dNELmBSmY7nthjhZupWO6g* root;
1304 NI entries;
1305 };
1306 struct tyTuple__wcNatyuf8WOqAhGLhSvgiw {
1307 NI Field0;
1308 NimStringDesc* Field1;
1309 tyObject_BTree__VZdzO0Tlflp7WMN4gS8oPg Field2;
1310 };
1311 typedef N_NIMCALL_PTR(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*, tyProc__jkSFMhvPZ1AdGcvT2dK9a2w) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
1312 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__A7Sdoem70tRxSEmKrf9cmyg) (tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* topLevelStmt);
1313 typedef N_NIMCALL_PTR(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, tyProc__EAEKmBUgKFg29agoUGtzDEQ) (tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1314 struct tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ {
1315 tyProc__jkSFMhvPZ1AdGcvT2dK9a2w Field0;
1316 tyProc__A7Sdoem70tRxSEmKrf9cmyg Field1;
1317 tyProc__EAEKmBUgKFg29agoUGtzDEQ Field2;
1318 NIM_BOOL Field3;
1319 };
1320 struct tyObject_TNodePair__EZfI4tFqtDSTQys2UInNjg {
1321 NI h;
1322 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* key;
1323 NI val;
1324 };
1325 struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
1326 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
1327 NimStringDesc* Field1;
1328 };
1329 struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
1330 NimStringDesc* fullPath;
1331 NimStringDesc* projPath;
1332 NimStringDesc* shortName;
1333 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
1334 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
1335 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
1336 NimStringDesc* dirtyFile;
1337 NimStringDesc* hash;
1338 NIM_BOOL dirty;
1339 };
1340 struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
1341 NCSTRING procname;
1342 NI line;
1343 NCSTRING filename;
1344 };
1345 struct tyTuple__0q9cmhneJEKnQERTpXXdz6Q {
1346 NU32 Field0;
1347 NimStringDesc* Field1;
1348 };
1349 struct tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg {
1350 NU16 line;
1351 NI16 col;
1352 NU32 file;
1353 };
1354 struct tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow {
1355 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
1356 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
1357 NI32 operand;
1358 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeId_0;
1359 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info;
1360 };
1361 struct tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ {
1362 NU32 Field0;
1363 NI32 Field1;
1364 };
1365 struct tyTuple__Q7r9caOmeWqQGZCIBHhGRUA {
1366 NU32 Field0;
1367 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
1368 };
1369 struct tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg {
1370 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
1371 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg Field1;
1372 };
1373 struct tyTuple__XyJ8LOAZzVVXSsmt09b8uWw {
1374 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
1375 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
1376 };
1377 struct tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA {
1378 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ key;
1379 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym;
1380 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* concreteTypes;
1381 };
1382 struct tyTuple__9aoobCDZB4x41HJSOmh0mwA {
1383 tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg Field0;
1384 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field1;
1385 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2;
1386 };
1387 struct tyTuple__g0Q6Qx15nK53ce9aLo7YyrA {
1388 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field0;
1389 NI Field1;
1390 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ Field2;
1391 };
1392 struct tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw {
1393 tyEnum_TLibKind__9b8v60kso59bBaw9cp8B9a9apKQ kind;
1394 NIM_BOOL generated;
1395 NIM_BOOL isOverriden;
1396 NU32 name;
1397 NI32 path;
1398 };
1399 struct tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw {
1400 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
1401 NU32 name;
1402 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typ;
1403 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
1404 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
1405 tyObject_PackedLineInfo__Q9bbXLBurHo2r5TyF6UBshg info;
1406 NI32 ast;
1407 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner;
1408 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ guard;
1409 NI bitsize;
1410 NI alignment;
1411 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
1412 NI position;
1413 NI offset;
1414 NU32 externalName;
1415 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA locFlags;
1416 tyObject_PackedLib__oa01YzfeXO9bbIDH9cIki4Hw annex;
1417 NI32 constraint;
1418 };
1419 struct tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA {
1420 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
1421 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
1422 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
1423 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* types;
1424 NI32 n;
1425 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ sym;
1426 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ owner;
1427 NI64 size;
1428 NI16 align;
1429 NI16 paddingAtEnd;
1430 NI16 lockLevel;
1431 tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ typeInst;
1432 NI32 nonUniqueId;
1433 };
1434 struct tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ {
1435 NI Field0;
1436 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* Field1;
1437 tySequence__vC9cvg0R8tfBaOXXi3sfMzw* Field2;
1438 };
1439 struct tyTuple__UvldbCB6B9ayi9bGYW7vJNLA {
1440 NI Field0;
1441 NI32 Field1;
1442 NU32 Field2;
1443 };
1444 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
1445   TGenericSeq Sup;
1446   NimStringDesc* data[SEQ_DECL_SIZE];
1447 };
1448 struct tySequence__sII3pVVRkIdBZ2HDPdZddA {
1449   TGenericSeq Sup;
1450   tyTuple__wROVfG5RQYpjEAhvO3LqdQ data[SEQ_DECL_SIZE];
1451 };
1452 struct tySequence__XUL1TrMU0tgXmaMFCIYgFQ {
1453   TGenericSeq Sup;
1454   tyTuple__tA7Q8IrfOKH7Mn89cK9cBAIg data[SEQ_DECL_SIZE];
1455 };
1456 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
1457   TGenericSeq Sup;
1458   tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
1459 };
1460 struct tySequence__SHVxAqOYtIy7teT1q4s0zQ {
1461   TGenericSeq Sup;
1462   tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* data[SEQ_DECL_SIZE];
1463 };
1464 struct tySequence__oUyaggHmIX9bpJcMeoG6lpA {
1465   TGenericSeq Sup;
1466   tyObject_TBlock__GFhahvekTq3dDOkWyhchMA data[SEQ_DECL_SIZE];
1467 };
1468 struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ {
1469   TGenericSeq Sup;
1470   tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* data[SEQ_DECL_SIZE];
1471 };
1472 struct tySequence__WwUFq9cJ2xKRlsAWVEHyPRg {
1473   TGenericSeq Sup;
1474   tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* data[SEQ_DECL_SIZE];
1475 };
1476 struct tySequence__jwzrUFjG9akTIJTBBFvvqxw {
1477   TGenericSeq Sup;
1478   tyTuple__XOVT24GHXwqiEj5GCsEGCA data[SEQ_DECL_SIZE];
1479 };
1480 struct tySequence__YT27F6szr8EQuTI39aUMYuA {
1481   TGenericSeq Sup;
1482   tyTuple__gEWbG8M8MJ7Ol9cA9bCDm5PQ data[SEQ_DECL_SIZE];
1483 };
1484 struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ {
1485   TGenericSeq Sup;
1486   NU8 data[SEQ_DECL_SIZE];
1487 };
1488 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
1489   TGenericSeq Sup;
1490   tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
1491 };
1492 struct tySequence__WPcy3bORPBFlmk2KIq2pbQ {
1493   TGenericSeq Sup;
1494   tyTuple__a1QJSSO0LTGR9bFH59c2xGCA data[SEQ_DECL_SIZE];
1495 };
1496 struct tySequence__shxop0zPIs5Ec3k71aCLuQ {
1497   TGenericSeq Sup;
1498   NIM_BOOL data[SEQ_DECL_SIZE];
1499 };
1500 struct tySequence__sno9c9bXUVS2CqhtWOJadaCw {
1501   TGenericSeq Sup;
1502   tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA data[SEQ_DECL_SIZE];
1503 };
1504 struct tySequence__KjgUMUjT3LUKOFIK4xt5ug {
1505   TGenericSeq Sup;
1506   tyTuple__FxkU4d1VDodDMc9ah6Mbagw data[SEQ_DECL_SIZE];
1507 };
1508 struct tySequence__48JTohSgTy339bRxHzUD8KA {
1509   TGenericSeq Sup;
1510   NI32 data[SEQ_DECL_SIZE];
1511 };
1512 struct tySequence__4mZLwkxT8rbt9bf3wXrXYNQ {
1513   TGenericSeq Sup;
1514   tyObject_Iface__uvkV248cZcsEQKaQm7C9aEA data[SEQ_DECL_SIZE];
1515 };
1516 struct tySequence__rQHmYk1HzcwNxKBymIFHpA {
1517   TGenericSeq Sup;
1518   tyObject_LoadedModule__14iJKkvOiWT62KF2D8f9c5w data[SEQ_DECL_SIZE];
1519 };
1520 struct tySequence__XMM60DtBsc6xYsIpNANkrA {
1521   TGenericSeq Sup;
1522   tyObject_PackedEncoder__B9cE9a0GbvqWW9aHf4N7RAaIw data[SEQ_DECL_SIZE];
1523 };
1524 struct tySequence__O5RcspOP32YJ4YtU5ppxxA {
1525   TGenericSeq Sup;
1526   tyObject_LazyType__Q19c34D32PKyTKlx6R6yODg data[SEQ_DECL_SIZE];
1527 };
1528 struct tySequence__ChDZ6dokJ9aj9cg3KBoCU5vg {
1529   TGenericSeq Sup;
1530   tyTuple__l7R9cf53SDCcRmz9aWTyEKqQ data[SEQ_DECL_SIZE];
1531 };
1532 struct tySequence__Or1y9bNpmj8PM8AcK9c9cg7RA {
1533   TGenericSeq Sup;
1534   tyObject_LazyInstantiation__rlce0Sj8mBfLfm69c2yVTZg data[SEQ_DECL_SIZE];
1535 };
1536 struct tySequence__mWRMiYLthG9coLjkbElCxkw {
1537   TGenericSeq Sup;
1538   tyTuple__o67sDX0wYbEuhI9cJYAbDtg data[SEQ_DECL_SIZE];
1539 };
1540 struct tySequence__bTDCDwD2P7TodzbAefLcSw {
1541   TGenericSeq Sup;
1542   tyTuple__9aNnDWBFMF44sfFinBpMT4Q data[SEQ_DECL_SIZE];
1543 };
1544 struct tySequence__159bHWBGAOOs6U7OZ9cQlO0g {
1545   TGenericSeq Sup;
1546   tyTuple__VrD6plbUKJjYKM0lCr3hGQ data[SEQ_DECL_SIZE];
1547 };
1548 struct tySequence__3MPVXAHA08SszBrU4ffqEg {
1549   TGenericSeq Sup;
1550   tyTuple__dT8l9anHpNRgQSBAI9ctQ2wg data[SEQ_DECL_SIZE];
1551 };
1552 struct tySequence__YCf5zJHm4JI06qpmKwPUWg {
1553   TGenericSeq Sup;
1554   tyTuple__1ZbjBgxAbnye0IFMZ6w4OA data[SEQ_DECL_SIZE];
1555 };
1556 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
1557   TGenericSeq Sup;
1558   tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
1559 };
1560 struct tySequence__61s9cbAniKuBrdHwBhMDfQg {
1561   TGenericSeq Sup;
1562   tyTuple__rplX06U9bjhu9asm5pWdgqsA data[SEQ_DECL_SIZE];
1563 };
1564 struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
1565   TGenericSeq Sup;
1566   tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];
1567 };
1568 struct tySequence__fdmz6VkIf1ewwrssKYqRFg {
1569   TGenericSeq Sup;
1570   tyTuple__1mtQ8sCEE7DbfIuQciv9b5Q data[SEQ_DECL_SIZE];
1571 };
1572 struct tySequence__kxu4GK0onha2t9bo86mdVAg {
1573   TGenericSeq Sup;
1574   tyTuple__xDU9bZmv1ZbZkJDaATBekIQ data[SEQ_DECL_SIZE];
1575 };
1576 struct tySequence__s9byh6WFJ16lPMcmqdaMTHA {
1577   TGenericSeq Sup;
1578   tyTuple__a9bBCAQ2tegdUQVlHYxdJ2A data[SEQ_DECL_SIZE];
1579 };
1580 struct tySequence__1U9bG8RcAedEeYkQLZjVFKA {
1581   TGenericSeq Sup;
1582   tyTuple__3i6hlQmqrn6m7tuVN8FHjQ data[SEQ_DECL_SIZE];
1583 };
1584 struct tySequence__fIB1rTQ55aFonoft9a9bmljQ {
1585   TGenericSeq Sup;
1586   tyTuple__OJFzEczluV8Jmo9bRpBfkzw data[SEQ_DECL_SIZE];
1587 };
1588 struct tySequence__23SMqauuRsbDANhthj9bWlA {
1589   TGenericSeq Sup;
1590   tyTuple__2SGm9aGCXuo7XSQ9bqD29axXw data[SEQ_DECL_SIZE];
1591 };
1592 struct tySequence__squ9b9bUH4OLHf6cEMrt6hVA {
1593   TGenericSeq Sup;
1594   tyTuple__F3gkSrMB1qp2Tvf9bixVXwg data[SEQ_DECL_SIZE];
1595 };
1596 struct tySequence__pHNq3oXj9av2sEUdqaqeZjw {
1597   TGenericSeq Sup;
1598   tyTuple__wcNatyuf8WOqAhGLhSvgiw data[SEQ_DECL_SIZE];
1599 };
1600 struct tySequence__MAQKEADohlpnXTModtugbQ {
1601   TGenericSeq Sup;
1602   tyTuple__4o9cW9aUwdGqgZI9bSHHYnbaQ data[SEQ_DECL_SIZE];
1603 };
1604 struct tySequence__vhmj4KkIKPinmRXny9c2Q6Q {
1605   TGenericSeq Sup;
1606   tyObject_TNodePair__EZfI4tFqtDSTQys2UInNjg data[SEQ_DECL_SIZE];
1607 };
1608 struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
1609   TGenericSeq Sup;
1610   tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
1611 };
1612 struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
1613   TGenericSeq Sup;
1614   tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
1615 };
1616 struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
1617   TGenericSeq Sup;
1618   tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
1619 };
1620 struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
1621   TGenericSeq Sup;
1622   tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
1623 };
1624 struct tySequence__vv5mGmK03BCr5e3LTZA5Hw {
1625   TGenericSeq Sup;
1626   tyObject_LazySym__rhF4Xi6CELPmWy539c1l6fA data[SEQ_DECL_SIZE];
1627 };
1628 struct tySequence__uB9b75OUPRENsBAu4AnoePA {
1629   TGenericSeq Sup;
1630   tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];
1631 };
1632 struct tySequence__PXIzfWocnrafGz5p3CP5LA {
1633   TGenericSeq Sup;
1634   tyTuple__0q9cmhneJEKnQERTpXXdz6Q data[SEQ_DECL_SIZE];
1635 };
1636 struct tySequence__9bAGqSvkAaFL9bWjsEPslrFA {
1637   TGenericSeq Sup;
1638   NU32 data[SEQ_DECL_SIZE];
1639 };
1640 struct tySequence__29bS0n2QNyO1R7e0qMMOvLA {
1641   TGenericSeq Sup;
1642   tyObject_PackedNode__7lDGAZiNp4zbO65GEpoKow data[SEQ_DECL_SIZE];
1643 };
1644 struct tySequence__b89aLriiJnVTD186H6zNIgg {
1645   TGenericSeq Sup;
1646   tyTuple__Izx9aRSX9a0diDXD84jOS9aMQ data[SEQ_DECL_SIZE];
1647 };
1648 struct tySequence__REuPuHuSlOkZ0Q5oqzDrQg {
1649   TGenericSeq Sup;
1650   tyTuple__Q7r9caOmeWqQGZCIBHhGRUA data[SEQ_DECL_SIZE];
1651 };
1652 struct tySequence__I9aQmO9asXXWJ58UI9c8BCSzA {
1653   TGenericSeq Sup;
1654   tyTuple__7Wlwbz8zSe7Udyf7mmsd9cg data[SEQ_DECL_SIZE];
1655 };
1656 struct tySequence__NyaOkf8ZwxP6rkRF5TOkew {
1657   TGenericSeq Sup;
1658   tyTuple__XyJ8LOAZzVVXSsmt09b8uWw data[SEQ_DECL_SIZE];
1659 };
1660 struct tySequence__L9bOt8CaTEmIjgtuZvp6syg {
1661   TGenericSeq Sup;
1662   tyObject_PackedInstantiation__39cWRURu69agjI9c1ohiUmxiA data[SEQ_DECL_SIZE];
1663 };
1664 struct tySequence__im8UB2GsZvUaQ4a1wKGWhQ {
1665   TGenericSeq Sup;
1666   tyTuple__9aoobCDZB4x41HJSOmh0mwA data[SEQ_DECL_SIZE];
1667 };
1668 struct tySequence__xxnXDLpoqBo8zJzP9b1073g {
1669   TGenericSeq Sup;
1670   tyTuple__g0Q6Qx15nK53ce9aLo7YyrA data[SEQ_DECL_SIZE];
1671 };
1672 struct tySequence__DfmUmNgVGnYaiV1I6227tw {
1673   TGenericSeq Sup;
1674   tyObject_PackedSym__XjVn21MwvH8ij6CfopYZWw data[SEQ_DECL_SIZE];
1675 };
1676 struct tySequence__t8Uv4lEJ4lkuECvP9c6JMhA {
1677   TGenericSeq Sup;
1678   tyObject_PackedType__IhXsK7mrwumUBtEqbZ2BqA data[SEQ_DECL_SIZE];
1679 };
1680 struct tySequence__IHUFRsFxZNv7YydiUO2esQ {
1681   TGenericSeq Sup;
1682   NI64 data[SEQ_DECL_SIZE];
1683 };
1684 struct tySequence__vC9cvg0R8tfBaOXXi3sfMzw {
1685   TGenericSeq Sup;
1686   tyObject_PackedItemId__FzcXUzSZ9cNfGYsfibgjWlQ data[SEQ_DECL_SIZE];
1687 };
1688 struct tySequence__9bT7o0CflHuiE4VhmtqBPCw {
1689   TGenericSeq Sup;
1690   tyTuple__8x6vq4Dc9aLvKX9actMeR9avQ data[SEQ_DECL_SIZE];
1691 };
1692 struct tySequence__9cnx3zXnWzeclW8Ko4oUgAQ {
1693   TGenericSeq Sup;
1694   tyTuple__UvldbCB6B9ayi9bGYW7vJNLA data[SEQ_DECL_SIZE];
1695 };
1696 struct tySequence__ipEvhpHAmm8ZCn9bZAOdNYA {
1697   TGenericSeq Sup;
1698   tyObject_FullId__pfGm9bmVgXcP2kl6OfHhZgQ data[SEQ_DECL_SIZE];
1699 };
1700 N_LIB_PRIVATE N_NIMCALL(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA*, newModuleList__cgendata_374)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g);
1701 static N_INLINE(void, asgnRef)(void** dest, void* src);
1702 static N_INLINE(void, incRef__system_5308)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1703 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
1704 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5270)(void* usr);
1705 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
1706 static N_INLINE(void, decRef__system_5315)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1707 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
1708 static N_INLINE(void, rtlAddZCT__system_5313)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1709 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5264)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
1710 N_LIB_PRIVATE N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*, newModule__cgen_28277)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
1711 N_LIB_PRIVATE N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*, rawNewModule__cgen_28272)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
1712 N_LIB_PRIVATE N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*, rawNewModule__cgen_28179)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, NimStringDesc* filename);
1713 N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size);
1714 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rope__ropes_109)(NimStringDesc* s);
1715 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
1716 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
1717 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
1718 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___modulegraphs_8947)(tyArray__qtqsWM5aXmcpMIVmvq3kAA u);
1719 N_LIB_PRIVATE N_NIMCALL(void, hashOwner__sighashes_505)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyArray__qtqsWM5aXmcpMIVmvq3kAA Result);
1720 static N_INLINE(void, nimZeroMem)(void* p, NI size);
1721 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
1722 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
1723 static N_INLINE(void, nimGCunrefRC1)(void* p);
1724 static N_INLINE(void, initIntSet__pureZcollectionsZintsets_238)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
1725 N_LIB_PRIVATE N_NIMCALL(void, initPackedSet__pureZcollectionsZintsets_16)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result);
1726 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyStringRC1)(NimStringDesc* src);
1727 static N_INLINE(void, nimGCunrefNoCycle)(void* p);
1728 N_LIB_PRIVATE N_NIMCALL(void, initTable__cgen_28191)(NI initialSize, tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA* Result);
1729 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
1730 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count);
1731 N_LIB_PRIVATE N_NIMCALL(NI, nextPowerOfTwo__pureZmath_177)(NI x);
1732 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
1733 N_LIB_PRIVATE N_NIMCALL(void, initCountTable__cgen_28210)(NI initialSize, tyObject_CountTable__tUMxxU9cRgLolsrW9b7IBGsQ* Result);
1734 N_LIB_PRIVATE N_NIMCALL(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q*, newProc__cgendata_278)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* module);
1735 N_LIB_PRIVATE N_NIMCALL(tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg, initProcOptions__cgen_28167)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
1736 N_LIB_PRIVATE N_NIMCALL(void, initNodeTable__ast_4144)(tyObject_TNodeTable__wN7B39cKxLpMkvKNm9bduZ0A* x);
1737 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTempName__cgen_418)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
1738 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, amp___ropes_128)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* b);
1739 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rope__ropes_115)(NI64 i);
1740 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, noschangeFileExt)(NimStringDesc* filename, NimStringDesc* ext);
1741 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, completeCfilePath__extccomp_713)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cfile, NIM_BOOL createSubDir);
1742 N_LIB_PRIVATE N_NIMCALL(void, open__ndi_24)(tyObject_NdiFile__9cEuXfAnHp9bnWFK409cMtsEw* f, NimStringDesc* filename, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
1743 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toFullPath__msgs_538)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx);
1744 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
1745 N_LIB_PRIVATE N_NIMCALL(void, genTopLevelStmt__cgen_28402)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1746 static N_INLINE(NIM_BOOL, skipCodegen__passes_49)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1747 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformStmt__transf_1873)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1748 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, injectDestructorCalls__injectdestructors_10100)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1749 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hcrOn__cgen_42)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
1750 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hcrOn__options_569)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
1751 N_LIB_PRIVATE N_NIMCALL(void, addHcrInitGuards__cgen_28371)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL* inInitGuard);
1752 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1753 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1754 N_LIB_PRIVATE N_NIMCALL(void, endBlock__cgen_13210)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
1755 N_LIB_PRIVATE N_NIMCALL(void, add__ropes_159)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* b);
1756 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13462)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1757 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, runtimeFormat__ropes_271)(NimStringDesc* frmt, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1758 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13471)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1759 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7505)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1760 N_LIB_PRIVATE N_NIMCALL(void, endBlock__cgen_13443)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* blockEnd);
1761 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, blockBody__cgen_13435)(tyObject_TBlock__GFhahvekTq3dDOkWyhchMA* b);
1762 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13438)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1763 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**, s__cgendata_225)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg s);
1764 static N_INLINE(tyObject_TBlock__GFhahvekTq3dDOkWyhchMA*, X5BX5D___cgendata_229)(tyObject_TBlock__GFhahvekTq3dDOkWyhchMA* s, NI sLen_0, NI i);
1765 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, indentLine__cgen_280)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r);
1766 N_LIB_PRIVATE N_NIMCALL(void, prepend__ropes_265)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* b);
1767 N_NIMCALL(NimStringDesc*, rawNewString)(NI cap);
1768 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
1769 N_LIB_PRIVATE N_NIMCALL(NI, startBlockInternal__cgen_13189)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
1770 N_LIB_PRIVATE N_NIMCALL(NI, inExceptBlockLen__cgen_13154)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
1771 N_LIB_PRIVATE N_NIMCALL(void, genStmts__cgen_11457)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t);
1772 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasHint__options_517)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug note);
1773 N_LIB_PRIVATE N_NIMCALL(void, pushInfoContext__msgs_490)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* detail);
1774 N_LIB_PRIVATE N_NIMCALL(void, expr__cgen_11460)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
1775 N_LIB_PRIVATE N_NIMCALL(void, fillProcLoc__cgen_11428)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1776 N_LIB_PRIVATE N_NIMCALL(void, fillLoc__cgen_65)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a, tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r, tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw s);
1777 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, mangleName__cgen_628)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1778 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, mangle__ccgutils_112)(NimStringDesc* name);
1779 N_LIB_PRIVATE N_NIMCALL(void, add__ropes_162)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** a, NimStringDesc* b);
1780 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, idOrSig__sighashes_2057)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NimStringDesc* currentModule, tyObject_CountTable__tUMxxU9cRgLolsrW9b7IBGsQ* sigCollisions);
1781 N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
1782 N_LIB_PRIVATE N_NIMCALL(void, genProcPrototype__cgen_11464)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
1783 N_LIB_PRIVATE N_NIMCALL(void, useHeader__cgen_105)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
1784 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getStr__ast_4610)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a);
1785 N_LIB_PRIVATE N_NIMCALL(void, includeHeader__cgendata_214)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* this_0, NimStringDesc* header);
1786 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl__astalgo_402)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
1787 N_LIB_PRIVATE N_NIMCALL(void, cgFormatValue__cgen_145)(NimStringDesc** result, NimStringDesc* value);
1788 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isReloadable__cgen_6706)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc);
1789 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
1790 N_LIB_PRIVATE N_NIMCALL(void, cgFormatValue__cgen_141)(NimStringDesc** result, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* value);
1791 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, pop__ropes_180)(tySequence__WwUFq9cJ2xKRlsAWVEHyPRg** s);
1792 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypeDesc__cgen_6631)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind);
1793 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypeDescAux__cgen_1314)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* origTyp, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind);
1794 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, skipTypes__ast_3735)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kinds);
1795 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isImportedCppType__cgen_1294)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1796 N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1431)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2);
1797 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, typeToString__types_50)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw prefer);
1798 N_LIB_PRIVATE N_NIMCALL(void, hashType__sighashes_462)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tySet_tyEnum_ConsiderFlag__9a9az8WnKmq9bvt8EXoSUES7g flags, tyArray__qtqsWM5aXmcpMIVmvq3kAA Result);
1799 static N_INLINE(void, pushSafePoint)(TSafePoint* s);
1800 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypePre__cgen_3061)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyArray__qtqsWM5aXmcpMIVmvq3kAA sig);
1801 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getSimpleTypeDesc__cgen_1802)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1802 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, typeNameOrLiteral__cgen_1785)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, NimStringDesc* literal);
1803 N_LIB_PRIVATE N_NIMCALL(NI, detectStrVersion__cgen_472)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
1804 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getCompilerProc__magicsys_145)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NimStringDesc* name);
1805 N_LIB_PRIVATE N_NIMCALL(NI, toInt__int495056_170)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA arg);
1806 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, getInt__ast_4592)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a);
1807 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, cgsym__cgen_120)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* name);
1808 N_LIB_PRIVATE N_NIMCALL(void, genProc__cgen_411)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc);
1809 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isActivated__cgen_26637)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc);
1810 N_LIB_PRIVATE N_NIMCALL(void, addForwardedProc__cgen_48)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc);
1811 N_LIB_PRIVATE N_NIMCALL(void, genProcNoForward__cgen_26374)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc);
1812 N_LIB_PRIVATE N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*, findPendingModule__cgen_55)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1813 N_LIB_PRIVATE N_NIMCALL(void, genProcAux__cgen_26023)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc);
1814 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genProcHeader__cgen_614)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc, NIM_BOOL asPtr);
1815 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isNonReloadable__cgen_6714)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc);
1816 N_LIB_PRIVATE N_NIMCALL(void, genProcParams__cgen_3480)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** rettype, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** params, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check, NIM_BOOL declareEnvironment, NIM_BOOL weakDep);
1817 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInvalidReturnType__cgen_1335)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* rettype);
1818 N_LIB_PRIVATE N_NIMCALL(NI64, getSize__types_3327)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1819 N_LIB_PRIVATE N_NIMCALL(tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w, mapType__cgen_1209)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind);
1820 N_LIB_PRIVATE N_NIMCALL(tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w, mapSetType__cgen_1205)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1821 N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__systemZassertions_56)(NimStringDesc* msg);
1822 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, lastSon__ast_3743)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
1823 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___int495056_721)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, NI64 b);
1824 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, firstOrd__types_1353)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1825 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
1826 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsGarbageCollectedRef__types_612)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1827 static N_INLINE(NIM_BOOL, isObjLackingTypeField__cgen_1319)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1828 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isPureObject__types_132)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1829 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3494)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1830 static N_INLINE(NIM_BOOL, isCompileTimeOnly__types_3519)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1831 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3519)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1832 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, mangleParamName__cgen_640)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1833 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isKeyword__cgen_618)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* w);
1834 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__cgen_702)(tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg s, NimStringDesc* key);
1835 static N_INLINE(NI, rawGet__options_2608)(tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg t, NimStringDesc* key, NI* hc);
1836 N_LIB_PRIVATE N_NIMCALL(NI, hash__pureZhashes_279)(NimStringDesc* x);
1837 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZsets_38)(NI hcode);
1838 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
1839 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
1840 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
1841 static N_INLINE(NI, nextTry__pureZcollectionsZsets_41)(NI h, NI maxHash);
1842 N_LIB_PRIVATE N_NIMCALL(tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw, paramStorageLoc__cgen_3473)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param);
1843 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, ccgIntroducedPtr__ccgutils_153)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TType__facALICuu8zUj0hjvbTLFg* retType);
1844 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypeDescWeak__cgen_3317)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind);
1845 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypeForward__cgen_3113)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyArray__qtqsWM5aXmcpMIVmvq3kAA sig);
1846 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, cacheGetType__cgen_1353)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA tab, tyArray__qtqsWM5aXmcpMIVmvq3kAA sig);
1847 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getOrDefault__cgen_1423)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key);
1848 static N_INLINE(NI, rawGet__cgen_1432)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI* hc);
1849 N_LIB_PRIVATE N_NIMCALL(NI, hash__modulegraphs_8963)(tyArray__qtqsWM5aXmcpMIVmvq3kAA u);
1850 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode);
1851 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___modulegraphs_8959)(tyArray__qtqsWM5aXmcpMIVmvq3kAA a, tyArray__qtqsWM5aXmcpMIVmvq3kAA b);
1852 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash);
1853 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypeName__cgen_1161)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyArray__qtqsWM5aXmcpMIVmvq3kAA sig);
1854 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, amp___ropes_140)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* a, NimStringDesc* b);
1855 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, typeName__cgen_1143)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1856 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
1857 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___cgen_1867)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA* t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* val);
1858 static N_INLINE(NIM_BOOL, mustRehash__cgen_2066)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA t);
1859 N_LIB_PRIVATE N_NIMCALL(void, enlarge__cgen_2252)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA* t);
1860 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__cgen_2583)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA* t, tySequence__sII3pVVRkIdBZ2HDPdZddA** data, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* val, NI hc, NI h);
1861 static N_INLINE(NI, rawGetKnownHC__cgen_2764)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI hc);
1862 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isImportedType__cgen_1283)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1863 N_LIB_PRIVATE N_NIMCALL(void, addForwardStructFormat__cgen_3084)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* structOrUnion, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* typename_0);
1864 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3096)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1865 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3101)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1866 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, structOrUnion__cgen_3074)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1867 N_LIB_PRIVATE N_NIMCALL(void, pushType__cgen_3042)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1868 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**, X5BX5D___cgen_3230)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA* t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key);
1869 N_LIB_PRIVATE N_NOINLINE(void, raiseKeyError__cgen_3301)(tyArray__qtqsWM5aXmcpMIVmvq3kAA key) __attribute__((noreturn));
1870 N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e, NCSTRING ename, NCSTRING procname, NCSTRING filename, NI line);
1871 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, seqStar__cgen_3106)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
1872 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3526)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1873 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3535)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1874 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3544)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1875 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3566)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1876 N_LIB_PRIVATE N_NIMCALL(tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w, mapReturnType__cgen_1279)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1877 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3593)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1878 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, amp___ropes_144)(NimStringDesc* a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* b);
1879 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6753)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1880 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, transformBody__transf_16)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc, NIM_BOOL cache);
1881 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, easyResultAsgn__cgen_25751)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1882 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsResult__cgen_25722)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1883 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, localVarDecl__cgen_11059)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1884 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, mangleLocalName__cgen_726)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1885 static N_INLINE(void, shallow__system_7433)(NimStringDesc** s);
1886 N_NIMCALL(NimStringDesc*, mnewString)(NI len);
1887 N_LIB_PRIVATE N_NIMCALL(NI, getOrDefault__cgen_812)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg t, NimStringDesc* key, NI default_0);
1888 N_LIB_PRIVATE N_NIMCALL(NI, rawGet__cgen_833)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg t, NimStringDesc* key);
1889 N_LIB_PRIVATE N_NIMCALL(void, inc__cgen_935)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg* t, NimStringDesc* key, NI val);
1890 static N_INLINE(NIM_BOOL, mustRehash__cgen_1002)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg t);
1891 N_LIB_PRIVATE N_NIMCALL(void, enlarge__cgen_1038)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg* t);
1892 N_LIB_PRIVATE N_NIMCALL(void, ctRawInsert__cgen_1073)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg t, tySequence__jwzrUFjG9akTIJTBBFvvqxw** data, NimStringDesc* key, NI val);
1893 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3729)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1894 N_LIB_PRIVATE N_NIMCALL(void, initLocExprSingleUse__cgen_11487)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result);
1895 N_LIB_PRIVATE N_NIMCALL(void, initLoc__cgen_60)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result, tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode, tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw s);
1896 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rdLoc__cgen_425)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a);
1897 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_432)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1898 N_LIB_PRIVATE N_NIMCALL(void, assignLocalVar__cgen_11099)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
1899 N_LIB_PRIVATE N_NIMCALL(void, initLocalVar__cgen_10987)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v, NIM_BOOL immediateAsgn);
1900 N_LIB_PRIVATE N_NIMCALL(void, constructLoc__cgen_10922)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* loc, NIM_BOOL isTemp);
1901 static N_INLINE(tyObject_TType__facALICuu8zUj0hjvbTLFg*, t__cgen_79)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a);
1902 static N_INLINE(NIM_BOOL, isComplexValueType__cgen_10551)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1903 N_LIB_PRIVATE N_NIMCALL(void, genRefAssign__cgen_10547)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src);
1904 static N_INLINE(NIM_BOOL, usesWriteBarrier__options_3998)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
1905 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, addrLoc__cgen_10303)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a);
1906 N_LIB_PRIVATE N_NIMCALL(void, genObjectInit__cgen_10380)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg section, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a, tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw mode);
1907 N_LIB_PRIVATE N_NIMCALL(tyEnum_TTypeFieldResult__aBXTX9cIKT9b0yNlXSu9aPT9cw, analyseObjectWithTypeField__types_585)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1908 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTypeInfoV2__cgen_7924)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1909 N_LIB_PRIVATE N_NIMCALL(void, getOrDefault__cgen_8082)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, tyTuple__xfZjiVhSEwIz5DDkzuPwog* Result);
1910 static N_INLINE(NI, rawGet__cgen_8091)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI* hc);
1911 N_LIB_PRIVATE N_NIMCALL(void, declareNimType__cgen_7784)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* name, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* str, NI module);
1912 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7790)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1913 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7795)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1914 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getModuleDllPath__cgen_132)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NI module);
1915 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getModuleDllPath__cgen_125)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
1916 N_LIB_PRIVATE N_NIMCALL(void, splitFile__pathutils_26)(NimStringDesc* x, tyTuple__7q7q3E6Oj24ZNVJb9aonhAg* Result);
1917 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCFile__cgen_123)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
1918 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, withPackageName__options_4173)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* path);
1919 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
1920 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, makeCString__msgs_50)(NimStringDesc* s);
1921 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7800)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1922 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_8462)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1923 static N_INLINE(NIM_BOOL, moduleOpenForCodegen__modulegraphs_9377)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NI32 m);
1924 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___cgen_8556)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ* t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, tyTuple__xfZjiVhSEwIz5DDkzuPwog val);
1925 static N_INLINE(NIM_BOOL, mustRehash__cgen_8755)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ t);
1926 N_LIB_PRIVATE N_NIMCALL(void, enlarge__cgen_8941)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ* t);
1927 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__cgen_9272)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ* t, tySequence__YT27F6szr8EQuTI39aUMYuA** data, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, tyTuple__xfZjiVhSEwIz5DDkzuPwog val, NI hc, NI h);
1928 static N_INLINE(NI, rawGetKnownHC__cgen_9453)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI hc);
1929 N_LIB_PRIVATE N_NIMCALL(void, genTypeInfoV2Impl__cgen_7872)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1930 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);
1931 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTypeInfo2Name__cgen_7805)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1932 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7895)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1933 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genHook__cgen_7853)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg op);
1934 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getAttachedOp__modulegraphs_4011)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg op);
1935 static N_INLINE(NIM_BOOL, isTrivialProc__cgen_7846)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1936 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getBody__modulegraphs_11241)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1937 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, loadProcBody__icZic_8390)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tySequence__rQHmYk1HzcwNxKBymIFHpA** g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1938 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, canFormAcycle__types_762)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1939 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7903)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1940 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
1941 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTypeInfoV1__cgen_6768)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1942 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_9961)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1943 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, typeToC__cgen_9738)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1944 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
1945 N_LIB_PRIVATE N_NIMCALL(NIM_CHAR, nsuToLowerAsciiChar)(NIM_CHAR c);
1946 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x);
1947 N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_167)(NimStringDesc** result, NI64 x);
1948 N_LIB_PRIVATE N_NIMCALL(NI32, getOrDefault__cgen_10078)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA t, NimStringDesc* key);
1949 static N_INLINE(NI, rawGet__lineinfos_448)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA t, NimStringDesc* key, NI* hc);
1950 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___ropes_250)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r);
1951 N_LIB_PRIVATE N_NIMCALL(void, rememberEmittedTypeInfo__modulegraphs_9389)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NI32 m, NimStringDesc* ti);
1952 N_LIB_PRIVATE N_NIMCALL(void, genTypeInfoAuxBase__cgen_6788)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* base, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1953 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, tiNameForHcr__cgen_6784)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name);
1954 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6808)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1955 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6814)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1956 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefined__options_2279)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* symbol);
1957 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___msgs_624)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1958 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6828)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1959 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6833)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1960 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6838)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1961 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6843)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1962 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getModuleDllPath__cgen_136)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
1963 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6848)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1964 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_615)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info);
1965 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, fakeClosureType__cgen_7326)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner);
1966 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, newType__ast_3896)(tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind, tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g id, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner);
1967 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextTypeId__ast_3151)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x);
1968 N_LIB_PRIVATE N_NIMCALL(void, rawAddSon__ast_4288)(tyObject_TType__facALICuu8zUj0hjvbTLFg* father, tyObject_TType__facALICuu8zUj0hjvbTLFg* son, NIM_BOOL propagateHasAsgn);
1969 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, createObj__lowerings_288)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NIM_BOOL final);
1970 N_LIB_PRIVATE N_NIMCALL(void, genTupleInfo__cgen_7150)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1971 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getNimNode__cgen_6772)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
1972 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6775)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1973 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
1974 N_LIB_PRIVATE N_NIMCALL(void, genTNimNodeArray__cgen_6932)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* size);
1975 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6936)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1976 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6941)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1977 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6946)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1978 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6981)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1979 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7182)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1980 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6990)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1981 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6998)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1982 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7134)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1983 N_LIB_PRIVATE N_NIMCALL(void, genTypeInfoAux__cgen_6853)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
1984 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTraverseProc__cgen_7667)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* origTyp, tyArray__qtqsWM5aXmcpMIVmvq3kAA sig);
1985 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7677)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1986 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7684)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1987 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7689)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1988 N_LIB_PRIVATE N_NIMCALL(void, genTraverseProcSeq__cgen_7461)(tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg c, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1989 N_LIB_PRIVATE N_NIMCALL(void, getTemp__cgen_7343)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result, NIM_BOOL needsInit);
1990 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lodeTyp__cgen_86)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
1991 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNode__ast_3332)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind);
1992 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, getSysType__magicsys_60)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind);
1993 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7651)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1994 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, lenExpr__cgen_448)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a);
1995 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_456)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
1996 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, lenField__cgen_437)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
1997 N_LIB_PRIVATE N_NIMCALL(NI, len__ropes_10)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* a);
1998 N_LIB_PRIVATE N_NIMCALL(void, genTraverseProc__cgen_7336)(tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg c, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
1999 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, lengthOrd__types_1652)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
2000 N_LIB_PRIVATE N_NIMCALL(void, cgFormatValue__cgen_151)(NimStringDesc** result, tyObject_Int128__9a9axPfb75jdWY25AamJewkA value);
2001 N_LIB_PRIVATE N_NIMCALL(void, addInt128__int495056_643)(NimStringDesc** result, tyObject_Int128__9a9axPfb75jdWY25AamJewkA value);
2002 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, parentObj__cgen_7444)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2003 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7456)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2004 N_LIB_PRIVATE N_NIMCALL(void, genTraverseProc__cgen_7348)(tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg c, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2005 N_LIB_PRIVATE N_NIMCALL(void, fillObjectFields__cgen_3777)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2006 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getRecordFields__cgen_3772)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check);
2007 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genRecordFieldsAux__cgen_3634)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* rectype, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check, NimStringDesc* unionPrefix);
2008 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lastSon__ast_4832)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2009 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, mangleRecFieldName__cgen_3618)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field);
2010 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, mangleField__cgen_624)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name);
2011 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3691)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2012 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3696)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2013 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3709)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2014 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3718)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2015 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3738)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2016 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3749)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2017 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, elemType__types_263)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
2018 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3758)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2019 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3763)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2020 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7382)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2021 N_LIB_PRIVATE N_NIMCALL(void, genCaseRange__cgen_7340)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch);
2022 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15302)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2023 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genLiteral__cgen_11473)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2024 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genLiteral__cgen_17638)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* ty);
2025 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, intLiteral__cgen_11471)(NI64 i);
2026 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17618)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2027 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17590)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2028 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17595)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2029 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17648)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2030 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17653)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2031 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, int64Literal__cgen_17583)(NI64 i);
2032 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, uint64Literal__cgen_17600)(NU64 i);
2033 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_9)(NU64 x);
2034 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17658)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2035 N_LIB_PRIVATE N_NIMCALL(NI, nodeTableTestOrSet__treetab_198)(tyObject_TNodeTable__wN7B39cKxLpMkvKNm9bduZ0A* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* key, NI val);
2036 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17681)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2037 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17690)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2038 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genNilStringLiteral__cgen_595)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2039 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genStringLiteral__cgen_608)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2040 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genStringLiteralV1__cgen_507)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2041 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genStringLiteralDataOnlyV1__cgen_498)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* s);
2042 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_502)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2043 N_LIB_PRIVATE N_NIMCALL(void, cgFormatValue__cgen_148)(NimStringDesc** result, NI64 value);
2044 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genStringLiteralV2__cgen_561)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst);
2045 N_LIB_PRIVATE N_NIMCALL(void, genStringLiteralDataOnlyV2__cgen_542)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* s, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result, NIM_BOOL isConst);
2046 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_547)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2047 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_568)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2048 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toStrMaxPrecision__cgen_17712)(NF32 f);
2049 N_LIB_PRIVATE N_NIMCALL(tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA, classify__pureZmath_147)(NF x);
2050 static N_INLINE(NIM_BOOL, signbit__cgen_17718)(NF32 x);
2051 N_LIB_PRIVATE N_NIMCALL(void, addFloatRoundtrip__system_6834)(NimStringDesc** result, NF32 x);
2052 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toStrMaxPrecision__astalgo_920)(NF f);
2053 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyNode__ast_4336)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
2054 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15312)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2055 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7408)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2056 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7416)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2057 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7421)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2058 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7439)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2059 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7657)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2060 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, dataField__cgen_461)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
2061 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7716)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2062 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7722)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2063 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7727)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2064 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7732)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2065 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_10232)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2066 N_LIB_PRIVATE N_NIMCALL(void, genArrayInfo__cgen_7320)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2067 N_LIB_PRIVATE N_NIMCALL(void, genSetInfo__cgen_7301)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2068 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7315)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2069 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rope__cgen_6918)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA arg);
2070 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___int495056_53)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a);
2071 N_LIB_PRIVATE N_NIMCALL(void, genEnumInfo__cgen_7205)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2072 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7251)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2073 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7258)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2074 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7266)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2075 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7274)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2076 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7282)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2077 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7287)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2078 N_LIB_PRIVATE N_NIMCALL(void, genObjectInfo__cgen_7111)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2079 N_LIB_PRIVATE N_NIMCALL(void, genObjectFields__cgen_6951)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* expr, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2080 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, discriminatorTableName__cgen_6898)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* objtype, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* d);
2081 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupInRecord__astalgo_84)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* field);
2082 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6913)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2083 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7026)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2084 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6927)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2085 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, plus___int495056_794)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, NI64 b);
2086 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, getOrdValue__types_161)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_Int128__9a9axPfb75jdWY25AamJewkA onError);
2087 static N_INLINE(NIM_BOOL, isEmptyType__ast_4779)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
2088 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7097)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2089 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, openArrayToTuple__cgen_9713)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
2090 N_LIB_PRIVATE N_NIMCALL(void, add__concepts_23)(tyObject_TType__facALICuu8zUj0hjvbTLFg* father, tyObject_TType__facALICuu8zUj0hjvbTLFg* son);
2091 N_LIB_PRIVATE N_NIMCALL(void, genDeepCopyProc__cgen_7775)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result);
2092 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7779)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2093 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_10272)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2094 N_LIB_PRIVATE N_NIMCALL(void, rawConstExpr__cgen_10365)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2095 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17779)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2096 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genBracedInit__cgen_13772)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst, tyObject_TType__facALICuu8zUj0hjvbTLFg* optionalType);
2097 N_LIB_PRIVATE N_NIMCALL(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ*, toBitSet__nimsets_103)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s);
2098 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genRawSetData__cgen_17758)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* cs, NI size);
2099 N_LIB_PRIVATE N_NIMCALL(NU64, bitSetToWord__cgen_17742)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* s, NI size);
2100 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genConstSeqV2__cgen_25106)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, NIM_BOOL isConst);
2101 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25010)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2102 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25216)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2103 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getSeqPayloadType__cgen_3448)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
2104 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genConstSeq__cgen_24982)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, NIM_BOOL isConst);
2105 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24991)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2106 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25101)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2107 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25261)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2108 N_LIB_PRIVATE N_NIMCALL(void, initLocExpr__cgen_11483)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result);
2109 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25268)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2110 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getClosureType__cgen_6644)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyEnum_TClosureTypeKind__cLHRMz1vnpSK0uePy2qbWw kind);
2111 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5918)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2112 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5923)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2113 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genConstSimpleList__cgen_24938)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst);
2114 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genConstTuple__cgen_24959)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst, tyObject_TType__facALICuu8zUj0hjvbTLFg* tup);
2115 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25356)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2116 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genConstObjConstr__cgen_24922)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst);
2117 N_LIB_PRIVATE N_NIMCALL(void, getNullValueAuxT__cgen_17569)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* orig, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* obj, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constOrNil, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** result, NI* count, NIM_BOOL isConst, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2118 N_LIB_PRIVATE N_NIMCALL(void, getNullValueAux__cgen_24811)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* obj, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constOrNil, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** result, NI* count, NIM_BOOL isConst, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2119 N_LIB_PRIVATE N_NIMCALL(NI, caseObjDefaultBranch__cgen_24767)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* obj, tyObject_Int128__9a9axPfb75jdWY25AamJewkA branch);
2120 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lteq___int495056_309)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
2121 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___int495056_313)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
2122 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getDefaultValue__cgen_24723)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2123 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___renderer_2106)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2124 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24933)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2125 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genStringLiteralV2Const__cgen_577)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst);
2126 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_584)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2127 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeIT__ast_3378)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2128 N_LIB_PRIVATE N_NIMCALL(void, genAssignment__cgen_10369)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src, tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw flags);
2129 N_LIB_PRIVATE N_NIMCALL(void, genGenericAsgn__cgen_17989)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src, tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw flags);
2130 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, canMove__cgen_17802)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest);
2131 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDeepConstExpr__trees_171)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL preventInheritance);
2132 N_LIB_PRIVATE N_NIMCALL(void, optAsgnLoc__cgen_17893)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* field, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* Result);
2133 N_LIB_PRIVATE N_NIMCALL(void, genOptAsgnTuple__cgen_17905)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src, tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw flags);
2134 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17940)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2135 N_LIB_PRIVATE N_NIMCALL(NI, asgnComplexity__cgen_17881)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2136 N_LIB_PRIVATE N_NIMCALL(void, genOptAsgnObject__cgen_17955)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src, tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw flags, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2137 static N_INLINE(NIM_BOOL, reifiedOpenArray__cgen_11738)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2138 N_LIB_PRIVATE N_NIMCALL(void, genOpenArrayConv__cgen_18067)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA d, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a);
2139 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, byRefLoc__cgen_10319)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a);
2140 N_LIB_PRIVATE N_NIMCALL(NI, safeLineNm__cgen_331)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2141 static N_INLINE(NI, toLinenumber__msgs_609)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2142 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isException__types_3991)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
2143 N_LIB_PRIVATE N_NIMCALL(void, fillResult__cgen_1768)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* param);
2144 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_1771)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2145 N_LIB_PRIVATE N_NIMCALL(void, assignParam__cgen_11417)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TType__facALICuu8zUj0hjvbTLFg* retType);
2146 N_LIB_PRIVATE N_NIMCALL(void, scopeMangledParam__cgen_1119)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param);
2147 N_LIB_PRIVATE N_NIMCALL(tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg, allPathsAsgnResult__cgen_25806)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2148 N_LIB_PRIVATE N_NIMCALL(void, resetLoc__cgen_10832)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* loc);
2149 N_LIB_PRIVATE N_NIMCALL(void, specializeReset__cgen_10829)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a);
2150 N_LIB_PRIVATE N_NIMCALL(void, specializeResetT__cgen_10571)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2151 N_LIB_PRIVATE N_NIMCALL(void, specializeResetN__cgen_10575)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2152 N_LIB_PRIVATE N_NIMCALL(void, closureSetup__cgen_25675)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc);
2153 N_LIB_PRIVATE N_NIMCALL(void, genProcBody__cgen_25959)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* procBody);
2154 N_LIB_PRIVATE N_NIMCALL(void, genCLineDir__cgen_351)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** r, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
2155 N_LIB_PRIVATE N_NIMCALL(void, genCLineDir__cgen_334)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** r, NimStringDesc* filename, NI line, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
2156 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_346)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2157 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, makeSingleLineCString__ccgutils_108)(NimStringDesc* s);
2158 static N_INLINE(NIM_BOOL, isNoReturn__cgen_26011)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
2159 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, initFrame__cgen_17483)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* procname, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* filename);
2160 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, quotedFilename__msgs_1464)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q i);
2161 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26214)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2162 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, deinitFrame__cgen_17553)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
2163 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26223)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2164 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26228)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2165 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getProcTypeCast__cgen_25943)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc);
2166 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25954)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2167 N_LIB_PRIVATE N_NIMCALL(void, symInDynamicLib__cgen_25516)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2168 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isGetProcAddr__cgen_25375)(tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* lib);
2169 N_LIB_PRIVATE N_NIMCALL(void, loadDynamicLib__cgen_25391)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* lib);
2170 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25409)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2171 N_LIB_PRIVATE N_NIMCALL(void, libCandidates__pureZdynlib_37)(NimStringDesc* s, tySequence__sM4lkSb7zS6F7OVMvW9cffQ** dest);
2172 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newStrNode__ast_3813)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, NimStringDesc* strVal);
2173 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, mangleDynLibProc__cgen_3781)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2174 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
2175 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25540)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2176 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25581)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2177 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26449)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2178 N_LIB_PRIVATE N_NIMCALL(void, symInDynamicLibPartial__cgen_25627)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2179 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__astalgo_3496)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
2180 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23730)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2181 N_LIB_PRIVATE N_NIMCALL(void, genVarPrototype__cgen_11451)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2182 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, treatGlobalDifferentlyForHCR__cgen_11251)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
2183 N_LIB_PRIVATE N_NIMCALL(void, declareThreadVar__cgen_11150)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NIM_BOOL isExtern);
2184 static N_INLINE(NIM_BOOL, emulatedThreadVars__cgen_409)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
2185 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11200)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2186 N_LIB_PRIVATE N_NIMCALL(void, incl__pureZcollectionsZintsets_55)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
2187 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**, procSec__cgendata_274)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg s);
2188 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24279)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2189 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newSymNode__ast_3716)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2190 N_LIB_PRIVATE N_NIMCALL(void, addActualSuffixForHCR__cgen_12293)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** res, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2191 N_LIB_PRIVATE N_NIMCALL(void, excl__reorder_264)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
2192 static N_INLINE(void, popSafePoint)(void);
2193 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl__cgen_4140)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A* s, tyArray__qtqsWM5aXmcpMIVmvq3kAA key);
2194 static N_INLINE(NI, slotsNeeded__pureZcollectionsZsets_49)(NI count);
2195 static N_INLINE(NI, rawGet__cgen_4228)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI* hc);
2196 static N_INLINE(NIM_BOOL, mustRehash__cgen_4490)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A t);
2197 N_LIB_PRIVATE N_NIMCALL(void, enlarge__cgen_4682)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A* s);
2198 static N_INLINE(NI, rawGetKnownHC__cgen_4933)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI hc);
2199 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__cgen_5295)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A* s, tySequence__WPcy3bORPBFlmk2KIq2pbQ** data, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI hc, NI h);
2200 N_LIB_PRIVATE N_NIMCALL(void, addAbiCheck__cgen_1752)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name);
2201 N_LIB_PRIVATE N_NIMCALL(void, addTypeHeader__types_216)(NimStringDesc** result, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw prefer, NIM_BOOL getDeclarationPath);
2202 N_LIB_PRIVATE N_NIMCALL(void, addQuoted__pureZos_440)(NimStringDesc** s, NimStringDesc* x);
2203 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_1763)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2204 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getOpenArrayDesc__cgen_4015)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind);
2205 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_4079)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2206 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5842)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2207 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5847)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2208 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5852)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2209 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5861)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2210 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6146)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2211 N_LIB_PRIVATE N_NIMCALL(NI64, toInt64__int495056_88)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA arg);
2212 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6200)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2213 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, scanCppGenericSlot__cgen_3955)(NimStringDesc* pat, NI* cursor, NI* outIdx, NI* outStars);
2214 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7743)(NimStringDesc* s, NI first, NI last);
2215 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, resolveStarsInCppType__cgen_3984)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, NI idx, NI stars);
2216 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderTree__renderer_46)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySet_tyEnum_TRenderFlag__wrPgUo1ExBlHvFnXN2nSHw renderFlags);
2217 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7755)(NimStringDesc* s, NI first);
2218 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getRecordDesc__cgen_3783)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check);
2219 static N_INLINE(NIM_BOOL, lacksMTypeField__types_4105)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2220 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3902)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2221 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3912)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2222 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6291)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2223 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6297)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2224 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTupleDesc__cgen_3925)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check);
2225 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3931)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2226 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3946)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2227 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6590)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2228 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6595)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2229 N_LIB_PRIVATE N_NIMCALL(void, nimLeaveFinally)(void);
2230 N_LIB_PRIVATE N_NIMCALL(void, reraiseException)(void);
2231 static N_INLINE(NIM_BOOL, requiresExternC__cgen_26233)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2232 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getModule__astalgo_216)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
2233 N_LIB_PRIVATE N_NIMCALL(void, putLocIntoDest__cgen_11467)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA s);
2234 N_LIB_PRIVATE N_NIMCALL(void, genericAssign)(void* dest, void* src, TNimType* mt);
2235 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isSimpleConst__cgen_89)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2236 N_LIB_PRIVATE N_NIMCALL(void, putIntoDest__cgen_18656)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r, tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw s);
2237 N_LIB_PRIVATE N_NIMCALL(void, genConstHeader__cgen_24255)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* q, tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2238 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, genConstSetup__cgen_24238)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2239 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24274)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2240 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24284)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2241 N_LIB_PRIVATE N_NIMCALL(void, genComplexConst__cgen_23978)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2242 N_LIB_PRIVATE N_NIMCALL(void, requestConstImpl__cgen_11454)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2243 N_LIB_PRIVATE N_NIMCALL(void, genConstDefinition__cgen_24298)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* q, tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2244 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24303)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2245 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24312)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2246 N_LIB_PRIVATE N_NIMCALL(void, genSingleVar__cgen_13806)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* vn, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value);
2247 N_LIB_PRIVATE N_NIMCALL(void, genGotoVar__cgen_13760)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value);
2248 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13767)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2249 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, potentialValueInit__cgen_13777)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value);
2250 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hcrOn__cgen_45)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
2251 N_LIB_PRIVATE N_NIMCALL(void, assignGlobalVar__cgen_11271)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* value);
2252 N_LIB_PRIVATE N_NIMCALL(void, varInDynamicLib__cgen_11248)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym);
2253 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25622)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2254 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11400)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2255 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTraverseProc__cgen_13084)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v);
2256 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTraverseProcForGlobal__cgen_7746)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2257 N_LIB_PRIVATE N_NIMCALL(void, accessThreadLocalVar__cgen_406)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
2258 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11132)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2259 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7758)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2260 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7764)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2261 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7770)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2262 N_LIB_PRIVATE N_NIMCALL(void, registerTraverseProc__cgen_13096)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* traverseProc);
2263 static N_INLINE(NIM_BOOL, isAssignedImmediately__cgen_13146)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2264 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsHiddenPointer__types_658)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2265 N_LIB_PRIVATE N_NIMCALL(void, genLineDir__cgen_359)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t);
2266 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_367)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2267 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, sourceLine__msgs_1101)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q i);
2268 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, freshLineInfo__cgen_355)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2269 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genOtherArg__cgen_11476)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, NI i, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2270 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genArgNoParam__cgen_12115)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL needsTmp);
2271 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genArgStringToCString__cgen_12032)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL needsTmp);
2272 N_LIB_PRIVATE N_NIMCALL(void, withTmpIfNeeded__cgen_12015)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, NIM_BOOL needsTmp, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* Result);
2273 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13931)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2274 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13936)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2275 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13941)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2276 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13329)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2277 static N_INLINE(void, loadInto__cgen_13409)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a);
2278 N_LIB_PRIVATE N_NIMCALL(void, genAsgnCall__cgen_13048)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2279 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInactiveDestructorCall__cgen_13034)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e);
2280 static N_INLINE(NIM_BOOL, notYetAlive__cgen_13022)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2281 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getRoot__trees_390)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2282 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipAddr__ast_5218)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2283 N_LIB_PRIVATE N_NIMCALL(void, genClosureCall__cgen_12358)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2284 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genParams__cgen_12196)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2285 N_LIB_PRIVATE N_NIMCALL(tySequence__shxop0zPIs5Ec3k71aCLuQ*, newSeq__cgen_12205)(NI len);
2286 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipTrivialIndirections__cgen_12142)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2287 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, potentialAlias__cgen_12126)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* potentialWrites);
2288 N_LIB_PRIVATE N_NIMCALL(tyEnum_AliasKind__mOZtJx9b3QXuy9bfWq9cuUNCg, aliases__dfa_792)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* obj, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* field);
2289 N_LIB_PRIVATE N_NIMCALL(void, getPotentialReads__cgen_12188)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** result);
2290 N_LIB_PRIVATE N_NIMCALL(void, getPotentialWrites__cgen_12147)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL mutate, tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** result);
2291 N_LIB_PRIVATE N_NIMCALL(tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg, getMagic__trees_137)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* op);
2292 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genArg__cgen_12048)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* call, NIM_BOOL needsTmp);
2293 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, openArrayLoc__cgen_11866)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* formalType, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2294 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipConv__types_3588)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2295 N_LIB_PRIVATE N_NIMCALL(void, genOpenArraySlice__cgen_11755)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* q, tyObject_TType__facALICuu8zUj0hjvbTLFg* formalType, tyObject_TType__facALICuu8zUj0hjvbTLFg* destType, tyTuple__nsNHL3sm0TZE9bootw2pEXw* Result);
2296 N_LIB_PRIVATE N_NIMCALL(void, genBoundsCheck__cgen_11733)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA arr, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b);
2297 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, raiseInstr__cgen_414)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
2298 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, intLiteral__cgen_17635)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA i);
2299 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rdCharLoc__cgen_10343)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a);
2300 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_10350)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2301 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, lastOrd__types_1465)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
2302 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11777)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2303 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11784)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2304 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11789)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2305 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11795)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2306 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11800)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2307 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11847)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2308 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11852)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2309 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11923)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2310 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11928)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2311 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11933)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2312 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11981)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2313 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11986)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2314 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11991)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2315 N_LIB_PRIVATE N_NIMCALL(void, literalsNeedsTmp__cgen_12028)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* Result);
2316 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, canRaiseDisp__cgen_11523)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2317 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, canRaise__ast_5088)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fn);
2318 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, canRaiseConservative__ast_5076)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fn);
2319 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, preventNrvo__cgen_11551)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri);
2320 N_LIB_PRIVATE N_NIMCALL(tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w, isPartOf__aliases_129)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
2321 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, locationEscapes__cgen_11556)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, NIM_BOOL inTryStmt);
2322 static N_INLINE(NIM_BOOL, hasNoInit__cgen_11595)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* call);
2323 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12435)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2324 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, addComma__cgen_12363)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r);
2325 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12440)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2326 N_LIB_PRIVATE N_NIMCALL(void, raiseExit__cgen_11481)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
2327 static N_INLINE(tyTuple__FxkU4d1VDodDMc9ah6Mbagw*, X5BX5D___cgen_14745)(tyTuple__FxkU4d1VDodDMc9ah6Mbagw* s, NI sLen_0, NI i);
2328 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isHarmlessStore__cgen_11608)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, NIM_BOOL canRaise, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA d);
2329 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12476)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2330 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12481)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2331 N_LIB_PRIVATE N_NIMCALL(void, genInfixCall__cgen_12751)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2332 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__pureZstrutils_1635)(NimStringDesc* s, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars);
2333 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genPatternCall__cgen_12646)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, NimStringDesc* pat, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2334 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11635)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2335 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11681)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2336 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genThisArg__cgen_12578)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, NI i, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2337 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipAddrDeref__cgen_12556)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node);
2338 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12819)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2339 N_LIB_PRIVATE N_NIMCALL(void, fixupCall__cgen_11622)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* callee, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* params);
2340 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11670)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2341 N_LIB_PRIVATE N_NIMCALL(void, getTempCpp__cgen_11017)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* value);
2342 N_LIB_PRIVATE N_NIMCALL(void, genNamedParamCall__cgen_12854)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2343 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12860)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2344 static N_INLINE(NIM_BOOL, contains__pureZos_651)(NIM_CHAR* a, NI aLen_0, NIM_CHAR item);
2345 static N_INLINE(NI, find__pureZos_656)(NIM_CHAR* a, NI aLen_0, NIM_CHAR item);
2346 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12898)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2347 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12984)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2348 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12989)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2349 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13000)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2350 N_LIB_PRIVATE N_NIMCALL(void, genPrefixCall__cgen_12325)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2351 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, astdef__ast_3483)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
2352 N_LIB_PRIVATE N_NIMCALL(void, putDataIntoDest__cgen_18642)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r);
2353 N_LIB_PRIVATE N_NIMCALL(void, genMagicExpr__cgen_23264)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg op);
2354 N_LIB_PRIVATE N_NIMCALL(void, genAndOr__cgen_20229)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m);
2355 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getLabel__cgen_11436)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
2356 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_20245)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2357 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_20250)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2358 N_LIB_PRIVATE N_NIMCALL(void, fixLabel__cgen_11443)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* labl);
2359 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11446)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2360 N_LIB_PRIVATE N_NIMCALL(void, unaryArith__cgen_19239)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg op);
2361 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19257)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2362 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19262)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2363 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19267)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2364 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18935)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2365 N_LIB_PRIVATE N_NIMCALL(void, unaryArithOverflow__cgen_18897)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m);
2366 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18930)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2367 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18940)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2368 N_LIB_PRIVATE N_NIMCALL(void, binaryFloatArith__cgen_22977)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m);
2369 N_LIB_PRIVATE N_NIMCALL(void, binaryArith__cgen_18951)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg op);
2370 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18980)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2371 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18985)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2372 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18990)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2373 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18995)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2374 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19000)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2375 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19005)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2376 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19010)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2377 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19015)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2378 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19020)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2379 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19025)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2380 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19030)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2381 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19035)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2382 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19040)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2383 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19045)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2384 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19050)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2385 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19055)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2386 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19060)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2387 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19065)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2388 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19070)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2389 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19075)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2390 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19092)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2391 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19097)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2392 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19114)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2393 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19119)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2394 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19124)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2395 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19153)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2396 N_LIB_PRIVATE N_NIMCALL(void, genEqProc__cgen_19164)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2397 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19192)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2398 N_LIB_PRIVATE N_NIMCALL(void, binaryArithOverflow__cgen_18764)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m);
2399 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18797)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2400 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18874)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2401 N_LIB_PRIVATE N_NIMCALL(void, genRepr__cgen_21464)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2402 N_LIB_PRIVATE N_NIMCALL(void, gcUsage__cgen_20362)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2403 N_LIB_PRIVATE N_NIMCALL(void, genGetTypeInfo__cgen_21636)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2404 N_LIB_PRIVATE N_NIMCALL(void, genGetTypeInfoV2__cgen_21642)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2405 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isFinal__types_750)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
2406 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rdMType__cgen_21580)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** nilCheck, NIM_BOOL enforceV1);
2407 N_LIB_PRIVATE N_NIMCALL(void, genSwap__cgen_21943)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2408 N_LIB_PRIVATE N_NIMCALL(void, cowBracket__cgen_19425)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2409 N_LIB_PRIVATE N_NIMCALL(void, binaryStmt__cgen_18671)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, NimStringDesc* op);
2410 N_LIB_PRIVATE N_NIMCALL(void, genStrConcat__cgen_20377)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2411 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, strLoc__cgen_20369)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA d);
2412 N_LIB_PRIVATE N_NIMCALL(void, binaryStmtAddr__cgen_18697)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, NimStringDesc* cpname);
2413 N_LIB_PRIVATE N_NIMCALL(void, genStrAppend__cgen_20457)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2414 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, makeAddr__cgen_21851)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
2415 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newTree__ast_3392)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** children, NI childrenLen_0);
2416 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, makePtrType__cgen_21847)(tyObject_TType__facALICuu8zUj0hjvbTLFg* baseType, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen);
2417 N_LIB_PRIVATE N_NIMCALL(void, addSonSkipIntLit__magicsys_136)(tyObject_TType__facALICuu8zUj0hjvbTLFg* father, tyObject_TType__facALICuu8zUj0hjvbTLFg* son, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* id);
2418 N_LIB_PRIVATE N_NIMCALL(void, genCall__cgen_13078)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2419 N_LIB_PRIVATE N_NIMCALL(void, genSeqElemAppend__cgen_20555)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2420 N_LIB_PRIVATE N_NIMCALL(void, getIntTemp__cgen_11039)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result);
2421 N_LIB_PRIVATE N_NIMCALL(void, genStrEquals__cgen_22909)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2422 N_LIB_PRIVATE N_NIMCALL(void, genIsNil__cgen_19201)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2423 N_LIB_PRIVATE N_NIMCALL(void, genEnumToStr__cgen_23251)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2424 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getToStringProc__modulegraphs_5648)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
2425 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, copyTree__ast_4431)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* src);
2426 N_LIB_PRIVATE N_NIMCALL(void, genOf__cgen_21458)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2427 N_LIB_PRIVATE N_NIMCALL(void, genOf__cgen_21367)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2428 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_21430)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2429 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genOfHelper__cgen_21311)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* dest, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* a, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2430 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_21343)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2431 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_21353)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2432 N_LIB_PRIVATE N_NIMCALL(void, genNew__cgen_20791)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e);
2433 N_LIB_PRIVATE N_NIMCALL(void, rawGenNew__cgen_20634)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* sizeExpr, NIM_BOOL needsInit);
2434 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_20657)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2435 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_20699)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2436 N_LIB_PRIVATE N_NIMCALL(void, genNewFinalize__cgen_21280)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e);
2437 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTypeInfo__cgen_10280)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2438 N_LIB_PRIVATE N_NIMCALL(void, genNewSeq__cgen_20895)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e);
2439 N_LIB_PRIVATE N_NIMCALL(void, genNewSeqAux__cgen_20801)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* length, NIM_BOOL lenIsZero);
2440 N_LIB_PRIVATE N_NIMCALL(void, genNewSeqOfCap__cgen_20934)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2441 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23613)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2442 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23620)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2443 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23649)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2444 N_LIB_PRIVATE N_NIMCALL(void, genSomeCast__cgen_22664)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2445 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22686)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2446 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22703)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2447 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22716)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2448 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22729)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2449 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22742)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2450 N_LIB_PRIVATE N_NIMCALL(void, genOrd__cgen_22648)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2451 N_LIB_PRIVATE N_NIMCALL(void, genArrayLen__cgen_21665)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg op);
2452 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_21813)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2453 N_LIB_PRIVATE N_NIMCALL(void, genSetLengthStr__cgen_21917)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2454 N_LIB_PRIVATE N_NIMCALL(void, genSetLengthSeq__cgen_21859)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2455 N_LIB_PRIVATE N_NIMCALL(void, genSetOp__cgen_22115)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg op);
2456 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22140)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2457 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rdSetElemLoc__cgen_17579)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2458 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___int495056_759)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, NI64 b);
2459 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_21968)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2460 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22158)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2461 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22176)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2462 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22194)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2463 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22215)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2464 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22233)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2465 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22251)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2466 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22269)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2467 N_LIB_PRIVATE N_NIMCALL(void, genInOp__cgen_22038)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2468 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, fewCmps__cgen_21973)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s);
2469 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22083)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2470 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22088)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2471 N_LIB_PRIVATE N_NIMCALL(void, genInExprAux__cgen_19633)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* b, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2472 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22006)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2473 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22011)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2474 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22016)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2475 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22021)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2476 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22026)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2477 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22500)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2478 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22518)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2479 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22625)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2480 N_LIB_PRIVATE N_NIMCALL(void, genDefault__cgen_20626)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2481 N_LIB_PRIVATE N_NIMCALL(void, genReset__cgen_20621)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2482 N_LIB_PRIVATE N_NIMCALL(void, genEcho__cgen_20264)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2483 N_LIB_PRIVATE N_NIMCALL(void, genArrToSeq__cgen_21174)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2484 N_LIB_PRIVATE N_NIMCALL(void, genSeqConstr__cgen_21099)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2485 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lhsDoesAlias__cgen_21090)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
2486 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, wrapProcForSpawn__spawn_510)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* spawnExpr, tyObject_TType__facALICuu8zUj0hjvbTLFg* retType, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* barrier, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dest);
2487 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, liftParallel__semparallel_831)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2488 N_LIB_PRIVATE N_NIMCALL(void, genDeepCopy__cgen_18498)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src);
2489 N_LIB_PRIVATE N_NIMCALL(void, genWasMoved__cgen_23082)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2490 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipAddr__cgen_23074)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2491 N_LIB_PRIVATE N_NIMCALL(void, genMove__cgen_23088)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2492 N_LIB_PRIVATE N_NIMCALL(void, genDestroy__cgen_23130)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2493 N_LIB_PRIVATE N_NIMCALL(void, genAccessTypeField__cgen_21652)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2494 N_LIB_PRIVATE N_NIMCALL(void, genSlice__cgen_23225)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2495 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genSetNode__cgen_17768)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2496 N_LIB_PRIVATE N_NIMCALL(void, genSetConstr__cgen_23792)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2497 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23830)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2498 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23835)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2499 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_6)(NI64 x);
2500 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23841)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2501 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23856)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2502 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23861)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2503 N_LIB_PRIVATE N_NIMCALL(void, exprComplexConst__cgen_24215)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2504 N_LIB_PRIVATE N_NIMCALL(void, genArrayConstr__cgen_23956)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2505 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, handleConstExpr__cgen_20991)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2506 N_LIB_PRIVATE N_NIMCALL(void, genClosure__cgen_23913)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2507 static N_INLINE(NIM_BOOL, isConstClosure__cgen_23899)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2508 static N_INLINE(NIM_BOOL, isRoutine__ast_4676)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
2509 N_LIB_PRIVATE N_NIMCALL(void, genTupleConstr__cgen_23866)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2510 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13309)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2511 N_LIB_PRIVATE N_NIMCALL(void, genObjConstr__cgen_10361)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2512 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupFieldAgain__cgen_19537)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* ty, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** r, tyObject_TType__facALICuu8zUj0hjvbTLFg** resTyp);
2513 N_LIB_PRIVATE N_NIMCALL(void, genFieldCheck__cgen_19639)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* obj, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field);
2514 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_619)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
2515 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toMsgFilename__msgs_602)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NI32 fileIdx);
2516 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, genFieldDefect__astmsgs_61)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* field, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* disc);
2517 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___cgen_19724)(tyTuple__47w2DboNEPf69aPgubZdd7Q x, tyTuple__47w2DboNEPf69aPgubZdd7Q y);
2518 N_LIB_PRIVATE N_NIMCALL(NI, cmp__system_7452)(NI x, NI y);
2519 N_LIB_PRIVATE N_NIMCALL(tyTuple__47w2DboNEPf69aPgubZdd7Q, getStdlibVersion__options_3889)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
2520 N_LIB_PRIVATE N_NIMCALL(void, genCast__cgen_22751)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2521 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22773)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2522 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22793)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2523 N_LIB_PRIVATE N_NIMCALL(void, genConv__cgen_22872)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2524 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameBackendType__types_2641)(tyObject_TType__facALICuu8zUj0hjvbTLFg* x, tyObject_TType__facALICuu8zUj0hjvbTLFg* y);
2525 N_LIB_PRIVATE N_NIMCALL(void, genAddr__cgen_19464)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2526 static N_INLINE(NIM_BOOL, isCppRef__cgen_19286)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
2527 N_LIB_PRIVATE N_NIMCALL(void, genBracketExpr__cgen_20179)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2528 N_LIB_PRIVATE N_NIMCALL(void, genUncheckedArrayElem__cgen_19859)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2529 N_LIB_PRIVATE N_NIMCALL(void, genArrayElem__cgen_19880)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2530 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isConstExpr__trees_146)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2531 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lteq___int495056_752)(NI64 a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
2532 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___int495056_305)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
2533 N_LIB_PRIVATE N_NIMCALL(void, genOpenArrayElem__cgen_20027)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2534 N_LIB_PRIVATE N_NIMCALL(void, genSeqElem__cgen_20095)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2535 N_LIB_PRIVATE N_NIMCALL(void, genCStringElem__cgen_19947)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2536 N_LIB_PRIVATE N_NIMCALL(void, genTupleElem__cgen_19506)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2537 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19532)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2538 N_LIB_PRIVATE N_NIMCALL(void, genDeref__cgen_19306)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2539 N_LIB_PRIVATE N_NIMCALL(void, genRecordField__cgen_19584)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2540 N_LIB_PRIVATE N_NIMCALL(void, genRecordFieldAux__cgen_19491)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a);
2541 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19619)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2542 N_LIB_PRIVATE N_NIMCALL(void, genCheckedRecordField__cgen_19812)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2543 N_LIB_PRIVATE N_NIMCALL(void, genBlock__cgen_14540)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2544 N_LIB_PRIVATE N_NIMCALL(void, genStmtListExpr__cgen_23995)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2545 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, initFrameNoDebug__cgen_17511)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* frame, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* procname, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* filename, NI line);
2546 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17518)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2547 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, deinitFrameNoDebug__cgen_17536)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* frame);
2548 N_LIB_PRIVATE N_NIMCALL(void, genStmtList__cgen_24049)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2549 N_LIB_PRIVATE N_NIMCALL(void, genIf__cgen_14061)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2550 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14101)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2551 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14119)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2552 N_LIB_PRIVATE N_NIMCALL(void, downConv__cgen_24169)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2553 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isLValue__parampatterns_497)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2554 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24156)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2555 N_LIB_PRIVATE N_NIMCALL(NI, inheritanceDiff__types_2676)(tyObject_TType__facALICuu8zUj0hjvbTLFg* a, tyObject_TType__facALICuu8zUj0hjvbTLFg* b);
2556 N_LIB_PRIVATE N_NIMCALL(void, upConv__cgen_24103)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2557 N_LIB_PRIVATE N_NIMCALL(void, genRangeChck__cgen_22798)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2558 N_LIB_PRIVATE N_NIMCALL(void, convStrToCStr__cgen_22879)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2559 N_LIB_PRIVATE N_NIMCALL(void, convCStrToStr__cgen_22894)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2560 N_LIB_PRIVATE N_NIMCALL(void, genWhileStmt__cgen_14463)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t);
2561 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, stmtsContainPragma__ccgutils_42)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw w);
2562 N_LIB_PRIVATE N_NIMCALL(void, genComputedGoto__cgen_14291)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2563 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, flattenStmts__trees_355)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2564 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, enumHasHoles__types_287)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
2565 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___int495056_738)(NI64 a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
2566 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14327)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2567 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14333)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2568 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14344)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2569 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14349)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2570 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14364)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2571 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14407)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2572 N_LIB_PRIVATE N_NIMCALL(void, transitionSonsKind__ast_4359)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyEnum_TNodeKind__Dq0DNfMwTBUf7hLFKKDU7g kind);
2573 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, assignLabel__cgen_13432)(tyObject_TBlock__GFhahvekTq3dDOkWyhchMA* b);
2574 N_LIB_PRIVATE N_NIMCALL(void, genVarStmt__cgen_14041)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2575 N_LIB_PRIVATE N_NIMCALL(void, genSingleVar__cgen_14005)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a);
2576 N_LIB_PRIVATE N_NIMCALL(void, genClosureVar__cgen_14028)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a);
2577 N_LIB_PRIVATE N_NIMCALL(void, genVarTuple__cgen_13212)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2578 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lowerTupleUnpacking__lowerings_116)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner);
2579 N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
2580 static N_NIMCALL(void, Marker_tySequence__sno9c9bXUVS2CqhtWOJadaCw)(void* p, NI op);
2581 N_LIB_PRIVATE N_NIMCALL(void, genConstStmt__cgen_24330)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2582 N_LIB_PRIVATE N_NIMCALL(void, genCase__cgen_15478)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2583 N_LIB_PRIVATE N_NIMCALL(void, genStringCase__cgen_15043)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2584 N_LIB_PRIVATE N_NIMCALL(void, genCaseStringBranch__cgen_14993)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA e, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* labl, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** branches, NI branchesLen_0);
2585 N_LIB_PRIVATE N_NIMCALL(NI64, hashString__ccgutils_50)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* s);
2586 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15121)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2587 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15139)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2588 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genCaseSecondPass__cgen_14934)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, NI labId, NI until);
2589 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14951)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2590 N_LIB_PRIVATE N_NIMCALL(void, exprBlock__cgen_13496)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2591 N_LIB_PRIVATE N_NIMCALL(void, genGotoForCase__cgen_14208)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* caseStmt);
2592 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14249)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2593 N_LIB_PRIVATE N_NIMCALL(void, genOrdinalCase__cgen_15326)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2594 N_LIB_PRIVATE N_NIMCALL(NI, ifSwitchSplitPoint__cgen_15252)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2595 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, branchHasTooBigRange__cgen_15242)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
2596 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13684)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2597 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15465)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2598 N_LIB_PRIVATE N_NIMCALL(void, genReturnStmt__cgen_14144)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t);
2599 N_LIB_PRIVATE N_NIMCALL(void, blockLeaveActions__cgen_13564)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, NI howManyTrys, NI howManyExcepts);
2600 N_LIB_PRIVATE N_NIMCALL(tySequence__KjgUMUjT3LUKOFIK4xt5ug*, newSeq__cgen_13575)(NI len);
2601 static N_INLINE(void, pop__cgen_13602)(tySequence__KjgUMUjT3LUKOFIK4xt5ug** s, tyTuple__FxkU4d1VDodDMc9ah6Mbagw* Result);
2602 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**, X5BX5D___cgen_14171)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** s, NI sLen_0, NI i);
2603 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14194)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2604 N_LIB_PRIVATE N_NIMCALL(void, genBreakStmt__cgen_14659)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t);
2605 static N_INLINE(void, cow__cgen_19456)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2606 N_LIB_PRIVATE N_NIMCALL(void, genAsgn__cgen_17422)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, NIM_BOOL fastAsgn);
2607 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDiscriminantField__astalgo_4335)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2608 N_LIB_PRIVATE N_NIMCALL(void, asgnFieldDiscriminant__cgen_17401)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e);
2609 N_LIB_PRIVATE N_NIMCALL(void, genDiscriminantCheck__cgen_17287)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp, tyObject_TType__facALICuu8zUj0hjvbTLFg* objtype, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field);
2610 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, discriminatorTableDecl__cgen_6921)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* objtype, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* d);
2611 N_LIB_PRIVATE N_NIMCALL(void, genAsmStmt__cgen_17232)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t);
2612 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genAsmOrEmitStmt__cgen_17188)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, NIM_BOOL isAsmStmt);
2613 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuReplaceStr)(NimStringDesc* s, NimStringDesc* sub, NimStringDesc* by);
2614 N_LIB_PRIVATE N_NIMCALL(void, genTryGoto__cgen_16365)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2615 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_16489)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2616 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, bodyCanRaise__cgen_16345)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2617 N_LIB_PRIVATE N_NIMCALL(void, genTryCpp__cgen_15648)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2618 N_LIB_PRIVATE N_NIMCALL(void, genRestoreFrameAfterException__cgen_15595)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
2619 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15784)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2620 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInfixAs__ast_4935)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2621 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isImportedException__ast_4904)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
2622 N_LIB_PRIVATE N_NIMCALL(void, genTrySetjmp__cgen_16709)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2623 N_LIB_PRIVATE N_NIMCALL(void, genRaiseStmt__cgen_14840)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t);
2624 N_LIB_PRIVATE N_NIMCALL(void, finallyActions__cgen_14776)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p);
2625 static N_INLINE(void, genSimpleBlock__cgen_13480)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* stmts);
2626 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14858)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2627 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14901)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2628 N_LIB_PRIVATE N_NIMCALL(void, genTypeSection__cgen_10277)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2629 N_LIB_PRIVATE N_NIMCALL(void, genPragma__cgen_17280)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2630 N_LIB_PRIVATE N_NIMCALL(tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw, whichPragma__trees_244)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2631 N_LIB_PRIVATE N_NIMCALL(void, genEmit__cgen_17269)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t);
2632 N_LIB_PRIVATE N_NIMCALL(tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg, determineSection__cgen_17247)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2633 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuStartsWith)(NimStringDesc* s, NimStringDesc* prefix);
2634 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, skipGenericOwner__ast_4658)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s);
2635 N_LIB_PRIVATE N_NIMCALL(void, genParForStmt__cgen_14583)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t);
2636 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14622)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2637 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14628)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2638 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14636)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2639 N_LIB_PRIVATE N_NIMCALL(void, genState__cgen_13516)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2640 N_LIB_PRIVATE N_NIMCALL(void, genGotoState__cgen_13679)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2641 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13693)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2642 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13701)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2643 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13728)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2644 N_LIB_PRIVATE N_NIMCALL(void, genBreakState__cgen_13737)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d);
2645 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13749)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2646 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13755)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2647 N_LIB_PRIVATE N_NIMCALL(void, popInfoContext__msgs_507)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
2648 N_LIB_PRIVATE N_NIMCALL(void, finalCodegenActions__cgen_28455)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
2649 N_LIB_PRIVATE N_NIMCALL(void, add__ast_4797)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son);
2650 static N_INLINE(NIM_BOOL, moduleHasChanged__passes_207)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module);
2651 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, generateMethodDispatchers__cgmeth_546)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g);
2652 N_LIB_PRIVATE N_NIMCALL(void, genForwardedProcs__cgen_28535)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g);
2653 static N_INLINE(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, pop__icZic_2460)(tySequence__eHqUwlHGGaPw0TDPDeL79cQ** s);
2654 N_LIB_PRIVATE N_NIMCALL(void, writeModule__cgen_28428)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NIM_BOOL pending);
2655 N_LIB_PRIVATE N_NIMCALL(void, genInitCode__cgen_27847)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2656 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getInitName__cgen_26919)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2657 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getSomeInitName__cgen_26915)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* suffix);
2658 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getSomeNameForModule__cgen_26890)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m);
2659 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27782)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2660 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27900)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2661 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27909)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2662 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27914)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2663 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27919)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2664 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27953)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2665 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27793)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2666 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28004)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2667 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getHcrInitName__cgen_26929)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2668 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, hcrGetProcLoadCode__cgen_26932)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* sym, NimStringDesc* prefix, NimStringDesc* handle, NimStringDesc* getProcFunc);
2669 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27837)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2670 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27842)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2671 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28129)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2672 N_LIB_PRIVATE N_NIMCALL(void, genDatInitCode__cgen_27779)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2673 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getDatInitName__cgen_26926)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2674 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28139)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2675 N_LIB_PRIVATE N_NIMCALL(void, registerModuleToMain__cgen_27280)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2676 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27285)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2677 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27297)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2678 static N_INLINE(NI, rawGet__cgen_27308)(tyObject_Table__fdKWDDO1P17zvuQPReVgRA t, NI32 key, NI* hc);
2679 static N_INLINE(NI, hash__ast_780)(NI32 x);
2680 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x);
2681 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b);
2682 static N_INLINE(NU64, hiXorLoFallback64__pureZhashes_35)(NU64 a, NU64 b);
2683 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27629)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2684 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27634)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2685 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27639)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2686 N_LIB_PRIVATE N_NIMCALL(void, sigHash__sighashes_522)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyArray__qtqsWM5aXmcpMIVmvq3kAA Result);
2687 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27648)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2688 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27653)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2689 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27662)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2690 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27667)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2691 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27222)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2692 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27676)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2693 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27681)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2694 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27686)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2695 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27691)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2696 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27701)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2697 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27706)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2698 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27217)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2699 N_LIB_PRIVATE N_NIMCALL(void, finishTypeDescriptions__cgen_6680)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2700 N_LIB_PRIVATE N_NIMCALL(void, seqV2ContentType__cgen_3453)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check);
2701 N_LIB_PRIVATE N_NIMCALL(void, genMainProc__cgen_26938)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2702 static N_NIMCALL(void, Marker_tyRef__UjwNQwrGjW3X9ahveEH9bnWA)(void* p, NI op);
2703 N_LIB_PRIVATE N_CLOSURE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, loadLib__cgen_26941)(NimStringDesc* handle, NimStringDesc* name, void* ClE_0);
2704 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, closeNamespaceNim__cgen_25673)(void);
2705 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, openNamespaceNim__cgen_25670)(NimStringDesc* namespace_0);
2706 N_LIB_PRIVATE N_NIMCALL(void, generateThreadVarsSize__cgen_11228)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2707 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11243)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2708 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toObjFile__extccomp_718)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename);
2709 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genModule__cgen_28157)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cfile);
2710 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getFileHeader__cgen_26886)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cfile);
2711 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getCopyright__cgen_26873)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cfile);
2712 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, headerTop__cgen_26866)(void);
2713 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26868)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2714 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26881)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2715 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompileCFileCmd__extccomp_997)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cfile, NIM_BOOL isMainFile, NIM_BOOL produceOutput);
2716 static N_INLINE(void, addNimDefines__cgen_26858)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** result, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
2717 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26861)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2718 N_LIB_PRIVATE N_NIMCALL(void, generateThreadLocalStorage__cgen_11205)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2719 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11223)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2720 N_LIB_PRIVATE N_NIMCALL(void, generateHeaders__cgen_25650)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2721 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuReplaceChar)(NimStringDesc* s, NIM_CHAR sub, NIM_CHAR by);
2722 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25660)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2723 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25665)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2724 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, shouldRecompile__cgen_28419)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* code, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cfile);
2725 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, equalsFile__ropes_453)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r, NimStringDesc* filename);
2726 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, writeRope__ropes_241)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* head, NimStringDesc* filename);
2727 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosfileExists)(NimStringDesc* filename);
2728 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosfileNewer)(NimStringDesc* a, NimStringDesc* b);
2729 N_LIB_PRIVATE N_NIMCALL(void, addFileToCompile__extccomp_722)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cf);
2730 N_LIB_PRIVATE N_NIMCALL(void, close__ndi_31)(tyObject_NdiFile__9cEuXfAnHp9bnWFK409cMtsEw* f, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
2731 N_LIB_PRIVATE N_NIMCALL(void, writeMapping__extccomp_2650)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* symbolMapping);
2732 N_LIB_PRIVATE N_NIMCALL(void, writeHeader__cgen_28313)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m);
2733 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28316)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2734 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28322)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2735 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28341)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2736 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28346)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
2737 extern TNimType NTIbmodule__NkKlBfvvsMUW70DxvxLVIg_;
2738 extern TNimType NTItcgen__9cG6VsX22pOhho6kxyhFVow_;
2739 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_2, "TM", 2);
2740 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_3, "_", 1);
2741 extern TNimType NTIkeyvaluepairseq__sII3pVVRkIdBZ2HDPdZddA_;
2742 extern TNimType NTIseqLtupleLkey58sighash_val58intTT__XUL1TrMU0tgXmaMFCIYgFQ_;
2743 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_4, "ndi", 3);
2744 extern TNimType NTIseqLbmoduleT__SHVxAqOYtIy7teT1q4s0zQ_;
2745 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_5, ".h", 2);
2746 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_6, "FR_.len-=$1;$n", 14);
2747 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_7, "} $1: ;$n", 9);
2748 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_8, "}$n", 3);
2749 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_9, "FR_.len+=$1;$n", 14);
2750 extern TNimType NTIseqLtblockT__oUyaggHmIX9bpJcMeoG6lpA_;
2751 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_10, "\011", 1);
2752 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_11, "if (nim_hcr_do_init_)\012", 22);
2753 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_12, "{", 1);
2754 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_13, "\012", 1);
2755 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_14, "__", 2);
2756 extern TNimType NTIseqLpsymT__eHqUwlHGGaPw0TDPDeL79cQ_;
2757 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_15, "static", 6);
2758 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_16, "extern", 6);
2759 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_17, " ", 1);
2760 extern TNimType NTIseqLropeT__WwUFq9cJ2xKRlsAWVEHyPRg_;
2761 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_18 = {
2762 0x10, 0x2e, 0x10, 0x00, 0x00, 0x40, 0x80, 0x10,
2763 0x00}
2764 ;
2765 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_19 = {
2766 0x10, 0x2e, 0x10, 0x00, 0x00, 0x60, 0x80, 0x10,
2767 0x00}
2768 ;
2769 extern NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q unknownLineInfo__lineinfos_280;
2770 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_20, "cannot generate C type for: ", 28);
2771 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_22, "/home/runner/work/nightlies/nightlies/nim/compiler/ccgtypes.nim", 63);
2772 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_21 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
2773 ((NI) 682),
2774 ((NI) 19)}
2775 ;
2776 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_24, "void", 4);
2777 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_25, "void*", 5);
2778 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_26, "nimStrVersion", 13);
2779 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_27, "N_LIB_IMPORT ", 13);
2780 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_28, "N_LIB_EXPORT ", 13);
2781 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_29, "static ", 7);
2782 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_30, "N_LIB_PRIVATE ", 14);
2783 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_31, "ccgtypes.nim(163, 14) `typ.isResolvedUserTypeClass` ", 52);
2784 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_32 = {
2785 0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x90, 0x00,
2786 0x00}
2787 ;
2788 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_33, "ccgtypes.nim(196, 19) `false` mapType: ", 39);
2789 extern TNimType NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_;
2790 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_34, "ccgtypes.nim(197, 17) `false` mapType: ", 39);
2791 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_35, "genProcParams", 13);
2792 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_36 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
2793 ((NI) 434),
2794 ((NI) 42)}
2795 ;
2796 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_37, ", ", 2);
2797 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_38, "_0", 2);
2798 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_39 = {
2799 0x00, 0x01, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00,
2800 0x00}
2801 ;
2802 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_40 = {
2803 0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00,
2804 0x00}
2805 ;
2806 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_41, "getTypeName: ", 13);
2807 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_42 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
2808 ((NI) 139),
2809 ((NI) 33)}
2810 ;
2811 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_43, "$1 $2;$n", 8);
2812 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_44, "typedef $1 $2 $2;$n", 19);
2813 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_45, "union", 5);
2814 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_46, "struct", 6);
2815 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_47 = {
2816 0x10, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00,
2817 0x00}
2818 ;
2819 extern TNimType NTIttypeseq__9aZVGG5Gtti9cC9bqRpXCtA3A_;
2820 extern TNimType NTIrefkeyerror__8SzoIAgLw9ci2v0yafHj9b6Q_;
2821 extern TNimType NTIkeyerror__t7nhKLvXTQS9cS8ByJU9bIag_;
2822 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_48, "key not found: ", 15);
2823 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_49, "ccgtypes.nim(355, 14) `m.forwTypeCache[sig] == result` ", 55);
2824 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_50, "getTypeForward(", 15);
2825 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_51 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
2826 ((NI) 356),
2827 ((NI) 21)}
2828 ;
2829 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_52, "cannot map the empty seq type to a C type", 41);
2830 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_53 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
2831 ((NI) 374),
2832 ((NI) 21)}
2833 ;
2834 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_54, "struct", 6);
2835 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_55, "_Content", 8);
2836 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_56, "struct ", 7);
2837 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_57, " {\012  NI len; ", 13);
2838 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_58, "_Content* p;\012};\012", 16);
2839 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_59, "*", 1);
2840 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_60, "NIM_NOALIAS ", 12);
2841 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_61 = {
2842 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2843 0x00}
2844 ;
2845 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_62, ", NI $1Len_$2", 13);
2846 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_63 = {
2847 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00,
2848 0x00}
2849 ;
2850 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_64, " Result", 7);
2851 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_65, "void* ClE_0", 11);
2852 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_66, "...", 3);
2853 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_67, "void)", 5);
2854 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_68, ")", 1);
2855 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_69, "(", 1);
2856 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_70, "_PTR", 4);
2857 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_71, "_actual", 7);
2858 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_72, "$1$2($3, $4)$5", 14);
2859 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_73, "N_NIMCALL", 9);
2860 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_74, "N_STDCALL", 9);
2861 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_75, "N_CDECL", 7);
2862 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_76, "N_SAFECALL", 10);
2863 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_77, "N_SYSCALL", 9);
2864 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_78, "N_INLINE", 8);
2865 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_79, "N_NOINLINE", 10);
2866 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_80, "N_FASTCALL", 10);
2867 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_81, "N_THISCALL", 10);
2868 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_82, "N_CLOSURE", 9);
2869 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_83, "N_NOCONV", 8);
2870 N_LIB_PRIVATE NIM_CONST tyArray__t1sx1FVcaX4m77XqENedIQ CallingConvToStr__cgen_1352 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_73),
2871 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_74),
2872 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_75),
2873 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_76),
2874 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_77),
2875 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_78),
2876 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_79),
2877 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_80),
2878 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_81),
2879 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_82),
2880 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_83)}
2881 ;
2882 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_84, "(*", 2);
2883 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_85, "proc has no result symbol", 25);
2884 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_87, "/home/runner/work/nightlies/nightlies/nim/compiler/cgen.nim", 59);
2885 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_86 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
2886 ((NI) 1034),
2887 ((NI) 19)}
2888 ;
2889 extern TNimType NTIseqLtupleLkey58string_val58intTT__jwzrUFjG9akTIJTBBFvvqxw_;
2890 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_88, "NIM_ALIGN($1) ", 14);
2891 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_89, " register", 9);
2892 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_90, " volatile", 9);
2893 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_91, " NIM_NOALIAS", 12);
2894 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_92, " = ", 3);
2895 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_93, "(*$1)", 5);
2896 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_94, ";", 1);
2897 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_95 = {
2898 0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x10,
2899 0x00}
2900 ;
2901 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_96, ".len = 0; ", 10);
2902 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_97, ".p = NIM_NIL;", 13);
2903 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_98 = {
2904 0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0xb0, 0x00,
2905 0x00}
2906 ;
2907 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_99, "NIM_NIL", 7);
2908 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_100, "asgnRef", 7);
2909 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_101, "((void**) ", 10);
2910 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_102, "(&", 2);
2911 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_103, ");", 2);
2912 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_104, "unsureAsgnRef", 13);
2913 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_105, " = (", 4);
2914 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_106, ")0;", 3);
2915 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_107, "nimZeroMem", 10);
2916 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_108, "((void*)", 8);
2917 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_109, ", sizeof(", 9);
2918 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_110, "));", 3);
2919 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_111, ".Sup", 4);
2920 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_112 = {
2921 0x10, 0x09, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
2922 0x00}
2923 ;
2924 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_113, ".m_type = ", 10);
2925 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_114 = {
2926 0x10, 0x0e, 0x10, 0x00, 0x00, 0x60, 0xb0, 0x10,
2927 0x00}
2928 ;
2929 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_115, "TNimTypeV2", 10);
2930 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_116, "static $2* $1;$n", 16);
2931 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_117, "\011$1 = ($3*)hcrGetGlobal($2, \"$1\");$n", 36);
2932 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_118, ".nim.cpp", 8);
2933 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_119, ".nim.m", 6);
2934 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_120, ".nim.c", 6);
2935 extern NIM_CONST tyArray__VbVuAPt8GSIPhx9amVJ0MyA OS__platform_504;
2936 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_121, "/", 1);
2937 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_122, "extern $2 $1;$n", 15);
2938 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_123, "NTIv2$1_", 8);
2939 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_124 = {
2940 0x10, 0xa9, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
2941 0x00}
2942 ;
2943 extern TNimType NTIkeyvaluepairseq__YT27F6szr8EQuTI39aUMYuA_;
2944 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_125, "request for RTTI generation for incomplete object: ", 51);
2945 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_126 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
2946 ((NI) 1319),
2947 ((NI) 16)}
2948 ;
2949 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_127, "|", 1);
2950 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_128, ".", 1);
2951 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_129, "N_LIB_PRIVATE TNimTypeV2 $1;$n", 30);
2952 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_130, " needs to have the \'nimcall\' calling convention", 47);
2953 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_131 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
2954 ((NI) 1297),
2955 ((NI) 16)}
2956 ;
2957 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_132, "$1.destructor = (void*)$2; $1.size = sizeof($3); $1.align = NIM_ALIGNOF($3); $1.name = $4;$n; $1.traceImpl = (void*)$5; $1.flags = $6;", 134);
2958 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_133 = {
2959 0x10, 0x2e, 0x10, 0x00, 0x00, 0x60, 0xb0, 0x10,
2960 0x00}
2961 ;
2962 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_134, "TNimType", 8);
2963 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_135, "TNimNode", 8);
2964 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_136, "NTI$1$2_", 8);
2965 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_137, "0", 1);
2966 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_138, "void*", 5);
2967 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_139, "$1.size = sizeof($2);$n$1.align = NIM_ALIGNOF($2);$n$1.kind = $3;$n$1.base = $4;$n", 82);
2968 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_140, "$1.flags = $2;$n", 16);
2969 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_141, "nimTypeNames", 12);
2970 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_142, "ref object", 10);
2971 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_143, "anon ref object from ", 21);
2972 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_144, "$1.name = $2;$n", 15);
2973 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_145, "nimTypeRoot", 11);
2974 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_146, "$1.nextType = nimTypeRoot; nimTypeRoot=&$1;$n", 45);
2975 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_147, "static TNimType* $1;$n", 22);
2976 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_148, "\011hcrRegisterGlobal($2, \"$1\", sizeof(TNimType), NULL, (void**)&$1);$n", 68);
2977 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_149, "N_LIB_PRIVATE TNimType $1;$n", 28);
2978 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_150, "genTypeInfoV1(", 14);
2979 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_151 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
2980 ((NI) 1463),
2981 ((NI) 23)}
2982 ;
2983 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_152 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
2984 ((NI) 1465),
2985 ((NI) 19)}
2986 ;
2987 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_153, "0", 1);
2988 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_154, "$1[$2]", 6);
2989 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_155, "static TNimNode** $1;$n", 23);
2990 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_156, "\011hcrRegisterGlobal($3, \"$1\", sizeof(TNimNode*) * $2, NULL, (void**)&$1);$n", 74);
2991 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_157, "static TNimNode* $1[$2];$n", 26);
2992 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_158, "$1[$2] = &$3;$n", 15);
2993 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_159, "$1.kind = 1;$n$1.offset = offsetof($2, Field$3);$n$1.typ = $4;$n$1.name = \"Field$3\";$n", 86);
2994 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_160, "$1.len = $2; $1.kind = 2; $1.sons = &$3[0];$n", 45);
2995 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_161, "$1.len = $2; $1.kind = 2;$n", 27);
2996 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_162, "$1.node = &$2;$n", 16);
2997 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_163, "Marker_", 7);
2998 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_164 = {
2999 0x10, 0xa9, 0x00, 0x00, 0x00, 0x60, 0x80, 0x00,
3000 0x00}
3001 ;
3002 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_165, "static N_NIMCALL(void, $1)(void* p, NI op)", 42);
3003 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_166, "$1 a;$n", 7);
3004 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_167, "a = ($1)p;$n", 12);
3005 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_168, "op", 2);
3006 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_169, "T", 1);
3007 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_170, "for ($1 = 0; $1 < $2; $1++) {$n", 31);
3008 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_171, ".len", 4);
3009 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_172, "($1 \? $1->$2 : 0)", 17);
3010 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_173, "len", 3);
3011 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_174, "Sup.len", 7);
3012 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_175, "for (", 5);
3013 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_176, " = 0; ", 6);
3014 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_177, " < ", 3);
3015 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_178, "; ", 2);
3016 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_179, "++) {", 5);
3017 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_180, "[", 1);
3018 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_181, "]", 1);
3019 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_182, "$1.Sup", 6);
3020 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_183, "genTraverseProc", 15);
3021 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_185, "/home/runner/work/nightlies/nightlies/nim/compiler/ccgtrav.nim", 62);
3022 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_184 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_185),
3023 ((NI) 34),
3024 ((NI) 42)}
3025 ;
3026 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_186, "genRecordFieldsAux", 18);
3027 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_187 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3028 ((NI) 499),
3029 ((NI) 40)}
3030 ;
3031 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_188, "mangleRecFieldName", 18);
3032 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_189 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3033 ((NI) 488),
3034 ((NI) 33)}
3035 ;
3036 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_190, "struct {", 8);
3037 extern NIM_CONST tyArray__sa9aJ6U8e9b7Bj4Yq8itsR8w CC__extccomp_508;
3038 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_191, "struct __attribute__((__packed__)){", 35);
3039 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_192, "#pragma pack(push, 1)$nstruct{", 30);
3040 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_193, "} $1;$n", 7);
3041 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_194, "#pragma pack(pop)$n", 19);
3042 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_195, "genRecordFieldsAux(record case branch)", 38);
3043 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_196 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3044 ((NI) 525),
3045 ((NI) 25)}
3046 ;
3047 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_197, "union{$n$1};$n", 14);
3048 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_198, "$1 $2[SEQ_DECL_SIZE];$n", 23);
3049 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_199, "$1$3 $2;$n", 10);
3050 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_200, "$1$4 $2:$3;$n", 13);
3051 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_201, "genRecordFieldsAux()", 20);
3052 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_202 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3053 ((NI) 555),
3054 ((NI) 21)}
3055 ;
3056 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_203, "genTraverseProc()", 17);
3057 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_204 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_185),
3058 ((NI) 39),
3059 ((NI) 19)}
3060 ;
3061 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_205, "switch ($1.$2) {$n", 18);
3062 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_206, "case $1 ... $2:$n", 17);
3063 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_207 = {
3064 0x10, 0xa9, 0x90, 0x00, 0x00, 0x60, 0x80, 0x00,
3065 0x00}
3066 ;
3067 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_208, "(-2147483647 -1)", 16);
3068 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_209, "IL64($1)", 8);
3069 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_210, "(IL64(-9223372036854775807) - IL64(1))", 38);
3070 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_211, "NIM_TRUE", 8);
3071 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_212, "NIM_FALSE", 9);
3072 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_213, "ULL", 3);
3073 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_214, "(($1) $2)", 9);
3074 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_215, "static NIM_CONST $1 $2 = {NIM_NIL,NIM_NIL};$n", 45);
3075 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_216, "(($1) NIM_NIL)", 14);
3076 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_217 = {
3077 0x10, 0xa9, 0x90, 0x00, 0x00, 0x60, 0xb0, 0x10,
3078 0x00}
3079 ;
3080 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_218, "((", 2);
3081 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_219, "NimStringDesc", 13);
3082 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_220, "*) NIM_NIL)", 11);
3083 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_221, "*) &", 4);
3084 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_222, "TGenericSeq", 11);
3085 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_223, "STRING_LITERAL($1, $2, $3);$n", 29);
3086 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_224, "static $4 struct {$n  NI cap; NIM_CHAR data[$2+1];$n} $1 = { $2 | NIM_STRLIT_FLAG, $3 };$n", 90);
3087 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_225, "const", 5);
3088 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_226, "NimStrPayload", 13);
3089 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_227, "NimStringV2", 11);
3090 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_228, "static $4 NimStringV2 $1 = {$2, (NimStrPayload*)&$3};$n", 55);
3091 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_229, "cannot determine how to produce code for string literal", 55);
3092 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_231, "/home/runner/work/nightlies/nightlies/nim/compiler/ccgliterals.nim", 66);
3093 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_230 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_231),
3094 ((NI) 113),
3095 ((NI) 14)}
3096 ;
3097 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_232, "-NAN", 4);
3098 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_233, "NAN", 3);
3099 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_234, "-0.0f", 5);
3100 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_235, "0.0f", 4);
3101 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_236, "INF", 3);
3102 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_237, "-INF", 4);
3103 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_238, "f", 1);
3104 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_239, "genLiteral(", 11);
3105 extern TNimType NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_;
3106 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_241, "/home/runner/work/nightlies/nightlies/nim/compiler/ccgexprs.nim", 63);
3107 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_240 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3108 ((NI) 106),
3109 ((NI) 17)}
3110 ;
3111 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_242, "case $1:$n", 10);
3112 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_243, "default:$n", 10);
3113 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_244, "break;$n", 8);
3114 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_245, "} $n", 4);
3115 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_246 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_185),
3116 ((NI) 56),
3117 ((NI) 19)}
3118 ;
3119 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_247, "$1.$2", 5);
3120 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_248 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_185),
3121 ((NI) 58),
3122 ((NI) 21)}
3123 ;
3124 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_249, ".Field", 6);
3125 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_250, "nimGCvisit", 10);
3126 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_251, "nimGCvisitSeq", 13);
3127 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_252, ".ClE_0", 6);
3128 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_253, "$1$3[$2]", 8);
3129 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_254, ".p->data", 8);
3130 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_255, "->data", 6);
3131 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_256, "a", 1);
3132 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_257, "(*a)", 4);
3133 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_258, "$1 {$n$2$3$4}\012", 14);
3134 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_259, "$1;\012", 4);
3135 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_260, "N_NIMCALL_PTR(void, $1)(void*, NI);\012", 36);
3136 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_261, "\011$1 = (N_NIMCALL_PTR(void, )(void*, NI)) hcrRegisterProc($3, \"$1\", (void*)$2);\012", 79);
3137 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_262, "$1.marker = $2;$n", 17);
3138 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_263, "$1.len = $2; $1.kind = 0;$n$3.node = &$1;$n", 43);
3139 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_264, ", \012", 3);
3140 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_265, "$1.offset = $2;$n", 17);
3141 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_266, "NI $1;$n", 8);
3142 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_267, "static char* NIM_CONST $1[$2] = {$n$3};$n", 41);
3143 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_268, "for ($1 = 0; $1 < $2; $1++) {$n$3[$1+$4].kind = 1;$n$3[$1+$4].offset = $1;$n$3[$1+$4].name = $5[$1];$n$6[$1] = &$3[$1+$4];$n}$n", 127);
3144 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_269, "$1.len = $2; $1.kind = 2; $1.sons = &$3[0];$n$4.node = &$1;$n", 61);
3145 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_270, "$1.flags = 1<<2;$n", 18);
3146 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_271 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3147 ((NI) 1152),
3148 ((NI) 16)}
3149 ;
3150 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_272 = {
3151 0x10, 0xa9, 0xe0, 0x00, 0x00, 0xe0, 0x80, 0x00,
3152 0x00}
3153 ;
3154 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_273, "anonymous obj with discriminator", 32);
3155 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_274 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3156 ((NI) 1061),
3157 ((NI) 17)}
3158 ;
3159 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_275, "NimDT_$1_$2", 11);
3160 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_276, "genObjectFields", 15);
3161 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_277 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3162 ((NI) 1104),
3163 ((NI) 19)}
3164 ;
3165 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_278, "$1.kind = 3;$n$1.offset = offsetof($2, $3);$n$1.typ = $4;$n$1.name = $5;$n$1.sons = &$6[0];$n$1.len = $7;$n", 107);
3166 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_279, "TNimNode* $1[$2];$n", 19);
3167 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_280, "genObjectFields; nkOfBranch broken", 34);
3168 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_281 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3169 ((NI) 1120),
3170 ((NI) 23)}
3171 ;
3172 extern NIM_CONST tyObject_Int128__9a9axPfb75jdWY25AamJewkA Max__int495056_27;
3173 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_282, "genObjectFields(nkRecCase)", 26);
3174 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_283 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3175 ((NI) 1134),
3176 ((NI) 25)}
3177 ;
3178 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_284 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3179 ((NI) 1142),
3180 ((NI) 21)}
3181 ;
3182 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_285, "$1.kind = 1;$n$1.offset = offsetof($2, $3);$n$1.typ = $4;$n$1.name = $5;$n", 74);
3183 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_286 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3184 ((NI) 1147),
3185 ((NI) 21)}
3186 ;
3187 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_287 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3188 ((NI) 1498),
3189 ((NI) 21)}
3190 ;
3191 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_288, "$1.deepcopy =(void* (N_RAW_NIMCALL*)(void*))$2;$n", 49);
3192 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_289, "$1->typeInfoV1 = (void*)&$2; $2.typeInfoV2 = (void*)$1;$n", 57);
3193 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_290 = {
3194 0x10, 0xa9, 0x40, 0x00, 0x00, 0x60, 0x80, 0x00,
3195 0x00}
3196 ;
3197 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_291, "static NIM_CONST $1 $2 = $3;$n", 30);
3198 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_292, "node has no type", 16);
3199 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_293 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3200 ((NI) 3183),
3201 ((NI) 21)}
3202 ;
3203 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_294, "{\012", 2);
3204 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_295, "0x", 2);
3205 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_296, "0123456789abcdef", 16);
3206 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_297, ",\012", 2);
3207 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_298, "}\012", 2);
3208 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_299, "{", 1);
3209 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_300, ",$n", 3);
3210 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_301, "}", 1);
3211 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_302, " struct {", 9);
3212 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_303, "  NI cap; ", 10);
3213 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_304, " data[", 6);
3214 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_305, "];", 2);
3215 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_306, "} ", 2);
3216 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_307, " = {", 4);
3217 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_308, " | NIM_STRLIT_FLAG, ", 20);
3218 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_309, "};", 2);
3219 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_310, "{$1, ($2*)&$3}", 14);
3220 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_311, "{{$1, $1 | NIM_STRLIT_FLAG}", 27);
3221 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_312, ", {", 3);
3222 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_313, "NIM_CONST", 9);
3223 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_314, "  ", 2);
3224 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_315, " Sup;", 5);
3225 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_316, "(($1)&$2)", 9);
3226 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_317, "{NIM_NIL,NIM_NIL}", 17);
3227 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_318, "{(($1) $2),NIM_NIL}", 19);
3228 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_319, "typedef $1_PTR($2, $3) $4;$n", 28);
3229 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_320, "typedef struct {$nN_NIMCALL_PTR($2, ClP_0) $3;$nvoid* ClE_0;$n} $1;$n", 69);
3230 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_321, "const openArray expression is not an array construction", 55);
3231 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_322 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3232 ((NI) 3223),
3233 ((NI) 21)}
3234 ;
3235 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_323, "] = ", 4);
3236 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_324, "{($1*)&$2, $3}", 14);
3237 extern NIM_CONST tyObject_Int128__9a9axPfb75jdWY25AamJewkA Zero__int495056_7;
3238 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_325, "._", 2);
3239 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_326 = {
3240 0x10, 0xa8, 0x10, 0x00, 0x00, 0x60, 0x80, 0x00,
3241 0x00}
3242 ;
3243 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_327, "NIM_FALSE", 9);
3244 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_328, "0.0", 3);
3245 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_329, "NIM_NIL", 7);
3246 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_330, "{0, NIM_NIL}", 12);
3247 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_331, "{NIM_NIL, NIM_NIL}", 18);
3248 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_332, "{NIM_NIL, 0}", 12);
3249 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_333, "{}", 2);
3250 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_334, "cannot create null element for: ", 32);
3251 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_335 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3252 ((NI) 3008),
3253 ((NI) 15)}
3254 ;
3255 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_336 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3256 ((NI) 3078),
3257 ((NI) 14)}
3258 ;
3259 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_337, "{$1}$n", 6);
3260 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_338, "{$1, (NimStrPayload*)&$2}", 25);
3261 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_339, "nimCopyMem", 10);
3262 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_340, ", (NIM_CONST void*)&", 20);
3263 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_341 = {
3264 0x10, 0xa9, 0x10, 0x00, 0x00, 0x60, 0xb0, 0x10,
3265 0x00}
3266 ;
3267 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_342, ", (NIM_CONST void*)", 19);
3268 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_343, "genericShallowAssign", 20);
3269 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_344, ", (void*)", 9);
3270 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_345, "genericAssign", 13);
3271 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_346, "genericSeqAssign", 16);
3272 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_347, "copyString", 10);
3273 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_348, "copyStringRC1", 13);
3274 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_349, "if (", 4);
3275 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_350, ") ", 2);
3276 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_351, "nimGCunrefNoCycle", 17);
3277 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_352, "ClE_0", 5);
3278 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_353, ".ClP_0 = ", 9);
3279 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_354, ".ClP_0;", 7);
3280 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_355, "Field$1", 7);
3281 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_356 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3282 ((NI) 372),
3283 ((NI) 23)}
3284 ;
3285 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_357 = {
3286 0x10, 0xa9, 0x80, 0x00, 0x00, 0xe0, 0x80, 0x00,
3287 0x00}
3288 ;
3289 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_358, ".Field0 = ", 10);
3290 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_359, ".Field0; ", 9);
3291 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_360, ".Field1 = ", 10);
3292 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_361, ".Field1;", 8);
3293 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_362, "Len_0;", 6);
3294 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_363, "nimPrepareStrMutationV2", 23);
3295 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_364, "cannot handle ", 14);
3296 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_365 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3297 ((NI) 308),
3298 ((NI) 17)}
3299 ;
3300 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_366, "genericAssignOpenArray", 22);
3301 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_367, "Len_0, ", 7);
3302 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_368, "genAssignment: ", 15);
3303 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_369 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3304 ((NI) 410),
3305 ((NI) 21)}
3306 ;
3307 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_370, "memTrackerWrite", 15);
3308 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_371, "objectInit", 10);
3309 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_372, ".name = ", 8);
3310 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_373, "\011return ", 8);
3311 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_374, "Result", 6);
3312 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_375 = {
3313 0x10, 0xa8, 0x90, 0x00, 0x00, 0x60, 0x80, 0x00,
3314 0x00}
3315 ;
3316 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_376, "->len = 0; ", 11);
3317 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_377, "->p = NIM_NIL;", 14);
3318 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_378, " = 0;", 5);
3319 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_379, "specializeResetN", 16);
3320 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_381, "/home/runner/work/nightlies/nightlies/nim/compiler/ccgreset.nim", 63);
3321 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_380 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_381),
3322 ((NI) 25),
3323 ((NI) 42)}
3324 ;
3325 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_382, "specializeResetN()", 18);
3326 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_383 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_381),
3327 ((NI) 29),
3328 ((NI) 19)}
3329 ;
3330 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_384 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_381),
3331 ((NI) 47),
3332 ((NI) 19)}
3333 ;
3334 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_385 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_381),
3335 ((NI) 49),
3336 ((NI) 21)}
3337 ;
3338 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_386, "((void**)&", 10);
3339 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_387, ", NIM_NIL);", 11);
3340 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_388, ".ClE_0, NIM_NIL);", 17);
3341 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_389, ".ClP_0 = NIM_NIL;", 17);
3342 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_390, " = NIM_NIL;", 11);
3343 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_391, "closure generation failed", 25);
3344 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_392 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
3345 ((NI) 854),
3346 ((NI) 17)}
3347 ;
3348 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_393, ", (", 3);
3349 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_394, ") ClE_0);", 9);
3350 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_395, ") ClE_0;", 8);
3351 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_396, "NIM_BOOL* nimErr_;", 18);
3352 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_397, "nimErr_ = ", 10);
3353 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_398, "nimErrorFlag", 12);
3354 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_399, "();", 3);
3355 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_400, "$N#line $2 $1$N", 15);
3356 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_401, "__declspec(noreturn) ", 21);
3357 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_402, "__declspec(naked) ", 18);
3358 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_403, " {", 2);
3359 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_404, "}\012\012", 3);
3360 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_405, "#", 1);
3361 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_406, "  define nimfr_(proc, file) \\\012      TFrame FR_; \\\012      FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = 0; ", 125);
3362 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_407, "nimFrame", 8);
3363 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_408, "(&FR_);\012\012  ", 11);
3364 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_409, "  define nimfrs_(proc, file, slots, length) \\\012      struct {TFrame* prev;NCSTRING procname;NI line;NCSTRING filename; NI len; VarSlot s[slots];} FR_; \\\012      FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = length; ", 232);
3365 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_410, "((TFrame*)&FR_);\012\012  ", 20);
3366 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_411, "  define nimln_(n, file) \\\012      FR_.line = n; FR_.filename = file;\012  ", 70);
3367 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_412, "\011nimfr_(", 8);
3368 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_413, "nimProfile", 10);
3369 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_414, "\011}BeforeRet_: ;$n", 17);
3370 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_415, "popFrame", 8);
3371 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_416, "}$N", 3);
3372 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_417, "\011$1 = ($3) hcrRegisterProc($4, \"$1\", (void*)$2);$n", 50);
3373 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_418, "$1(*)$2", 7);
3374 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_419, "static void* $1;$n", 18);
3375 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_420 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
3376 ((NI) 704),
3377 ((NI) 16)}
3378 ;
3379 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_421, "||", 2);
3380 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_422, "nimLoadLibrary", 14);
3381 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_423, "))", 2);
3382 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_424, "if (!(", 6);
3383 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_425, ")) ", 3);
3384 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_426, "nimLoadLibraryError", 19);
3385 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_427, "))) ", 4);
3386 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_428, "loadDynamicLib", 14);
3387 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_429 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
3388 ((NI) 734),
3389 ((NI) 35)}
3390 ;
3391 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_430, "Dl_$1_", 6);
3392 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_431, "\011$1 = ($2) ($3$4));$n", 21);
3393 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_432 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
3394 ((NI) 767),
3395 ((NI) 18)}
3396 ;
3397 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_433, "wrong index: ", 13);
3398 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_434 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
3399 ((NI) 774),
3400 ((NI) 19)}
3401 ;
3402 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_435, "nimGetProcAddr", 14);
3403 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_436, "$2 $1;$n", 8);
3404 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_437, "\011$1 = ($2) hcrRegisterProc($3, \"$1\", (void*)$1);$n", 50);
3405 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_438, "\011$1 = ($2) hcrGetProc($3, \"$1\");$n", 34);
3406 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_439, "extern ", 7);
3407 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_440, "N_LIB_EXPORT_VAR ", 17);
3408 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_441, "NIM_THREAD_LOCAL ", 17);
3409 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_442, "NIM_THREADVAR ", 14);
3410 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_443, " $1;$n", 6);
3411 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_444, "\011$1 = ($2*)hcrGetGlobal($3, \"$1\");$n", 36);
3412 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_445, "cgsym: ", 7);
3413 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_446, ": ", 2);
3414 extern TNimType NTItsymkind__cNCW9acsSznmEccl1fgQwkw_;
3415 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_447 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
3416 ((NI) 806),
3417 ((NI) 23)}
3418 ;
3419 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_448, "system module needs: ", 21);
3420 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_449 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
3421 ((NI) 811),
3422 ((NI) 14)}
3423 ;
3424 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_450, "NimStringDesc*", 14);
3425 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_451, "NCSTRING", 8);
3426 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_452, "NIM_BOOL", 8);
3427 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_453, "NIM_CHAR", 8);
3428 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_454, "NI", 2);
3429 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_455, "NI8", 3);
3430 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_456, "NI16", 4);
3431 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_457, "NI32", 4);
3432 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_458, "NI64", 4);
3433 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_459, "NF", 2);
3434 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_460, "NF32", 4);
3435 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_461, "NF64", 4);
3436 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_462, "NF128", 5);
3437 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_463, "NU", 2);
3438 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_464, "NU8", 3);
3439 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_465, "NU16", 4);
3440 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_466, "NU32", 4);
3441 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_467, "NU64", 4);
3442 N_LIB_PRIVATE NIM_CONST tyArray__Sjq0yxKksnvb1U6tEMqzYg NumericalTypeToStr__cgen_1806 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_454),
3443 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_455),
3444 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_456),
3445 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_457),
3446 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_458),
3447 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_459),
3448 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_460),
3449 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_461),
3450 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_462),
3451 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_463),
3452 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_464),
3453 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_465),
3454 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_466),
3455 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_467)}
3456 ;
3457 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_468, "tyStatic for getSimpleTypeDesc", 30);
3458 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_469 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3459 ((NI) 302),
3460 ((NI) 23)}
3461 ;
3462 extern TNimType NTIkeyvaluepairseq__WPcy3bORPBFlmk2KIq2pbQ_;
3463 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_470, "checkAbi", 8);
3464 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_471, "backend & Nim disagree on size for: ", 36);
3465 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_472, "NIM_STATIC_ASSERT(sizeof($1) == $2, $3);$n", 42);
3466 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_473, "&", 1);
3467 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_474, "typedef struct {$n$2* Field0;$nNI Field1;$n} $1;$n", 50);
3468 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_475, "typedef NI32 $1;$n", 18);
3469 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_476, "typedef NU8 $1;$n", 17);
3470 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_477, "typedef NU16 $1;$n", 18);
3471 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_478, "typedef NI64 $1;$n", 18);
3472 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_479, "getTypeDescAux: enum", 20);
3473 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_480 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3474 ((NI) 754),
3475 ((NI) 29)}
3476 ;
3477 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_481, " : ", 3);
3478 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_482, " data[SEQ_DECL_SIZE];", 21);
3479 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_483, "typedef $1 $2[1];$n", 19);
3480 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_484, "typedef $1 $2[$3];$n", 20);
3481 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_485, "ccgtypes.nim(655, 14) `false` invalid apostrophe type parameter index", 69);
3482 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_486 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3483 ((NI) 835),
3484 ((NI) 25)}
3485 ;
3486 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_487, "<", 1);
3487 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_488, " COMMA ", 7);
3488 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_489, "> ", 2);
3489 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_490, " __attribute__((__packed__))", 28);
3490 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_491, "#pragma pack(push, 1)\012", 22);
3491 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_492, "* m_type;", 9);
3492 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_493, " : public ", 10);
3493 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_494, " {$n", 4);
3494 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_495, "char dummy;$n", 13);
3495 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_496, "};\012", 3);
3496 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_497, "#pragma pack(pop)\012", 18);
3497 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_498, "TY", 2);
3498 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_499, "typedef $1 $2;$n", 16);
3499 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_500, "$1 $2 {$n", 9);
3500 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_501, "$1 Field$2;$n", 13);
3501 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_502, "char dummy;\012", 12);
3502 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_503, "typedef NU$2 $1;$n", 18);
3503 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_504, "typedef NU8 $1[$2];$n", 21);
3504 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_505, "getTypeDescAux(", 15);
3505 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_506 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_22),
3506 ((NI) 901),
3507 ((NI) 17)}
3508 ;
3509 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_507, "extern \"C\" ", 11);
3510 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_508, " __attribute__((naked))", 23);
3511 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_509, " __attribute__((noreturn))", 26);
3512 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_510, ";\012", 2);
3513 extern TNimType NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_;
3514 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_511, "request to generate code for .compileTime proc: ", 48);
3515 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_512 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3516 ((NI) 2754),
3517 ((NI) 18)}
3518 ;
3519 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_513, "expr: proc not init ", 20);
3520 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_514 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3521 ((NI) 2762),
3522 ((NI) 21)}
3523 ;
3524 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_515, "static $1* $2;$n", 16);
3525 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_516, "extern NIM_CONST $1 $2;$n", 25);
3526 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_517, "_const", 6);
3527 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_518, "N_LIB_PRIVATE NIM_CONST $1 $2 = $3;$n", 37);
3528 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_519, "\011hcrRegisterGlobal($1, \"$2\", sizeof($3), NULL, (void**)&$2);$n", 62);
3529 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_520, "\'goto\' target must be a literal value", 37);
3530 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_522, "/home/runner/work/nightlies/nightlies/nim/compiler/ccgstmts.nim", 63);
3531 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_521 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
3532 ((NI) 271),
3533 ((NI) 14)}
3534 ;
3535 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_523, "goto NIMSTATE_$#;$n", 19);
3536 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_524, "*) ", 3);
3537 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_525, "$2* $1;$n", 9);
3538 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_526, ".dynlib variables cannot have a value", 37);
3539 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_527 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
3540 ((NI) 566),
3541 ((NI) 19)}
3542 ;
3543 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_528, ".threadvar variables cannot have a value", 40);
3544 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_529 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
3545 ((NI) 574),
3546 ((NI) 21)}
3547 ;
3548 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_530, "NIM_CONST ", 10);
3549 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_531, " $1 = $2;$n", 11);
3550 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_532, " = $#;$n", 8);
3551 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_533, ";$n", 3);
3552 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_534, "\011NimThreadVars* NimTV_;$n", 25);
3553 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_535, "\011NimTV_ = (NimThreadVars*) ", 27);
3554 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_536, "GetThreadLocalVars", 18);
3555 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_537, "NimTV_->", 8);
3556 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_538, "static N_NIMCALL(void, $1)(void)", 32);
3557 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_539, "$1 {$n$2$3$4}$n", 15);
3558 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_540, "$1;$n", 5);
3559 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_541, "nimRegisterThreadLocalMarker", 28);
3560 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_542, "nimRegisterGlobalMarker", 23);
3561 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_543, "//", 2);
3562 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_544, "nimln_(", 7);
3563 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_545, "nimToCStringConv", 16);
3564 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_546, "wrong argument count", 20);
3565 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_548, "/home/runner/work/nightlies/nightlies/nim/compiler/ccgcalls.nim", 63);
3566 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_547 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_548),
3567 ((NI) 503),
3568 ((NI) 16)}
3569 ;
3570 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_549, "$#;$n", 5);
3571 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_550, "$#($#);$n", 9);
3572 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_551, "$# = $#;$n", 10);
3573 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_552, "NULL", 4);
3574 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_553, "hcrRegisterGlobal(", 18);
3575 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_554, ", \"", 3);
3576 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_555, "\", sizeof(", 10);
3577 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_556, "), ", 3);
3578 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_557, ", (void**)&", 11);
3579 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_558, "if (hcrRegisterGlobal(", 22);
3580 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_559, "))\012", 3);
3581 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_560, "=destroy", 8);
3582 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_561 = {
3583 0x10, 0x08, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00,
3584 0x00}
3585 ;
3586 extern TNimType NTIseqLboolT__shxop0zPIs5Ec3k71aCLuQ_;
3587 extern TNimType NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_;
3588 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_562, "-", 1);
3589 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_563, " != -1 && ((NU)(", 16);
3590 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_564, ") >= (NU)(", 10);
3591 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_565, ".Field1) || (NU)(", 17);
3592 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_566, ".Field1))){ ", 12);
3593 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_567, "raiseIndexError", 15);
3594 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_568, "(); ", 4);
3595 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_569, "goto BeforeRet_;", 16);
3596 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_570, "goto LA", 7);
3597 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_571, "_;", 2);
3598 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_572, "Len_0) || (NU)(", 15);
3599 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_573, "Len_0))){ ", 10);
3600 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_574 = {
3601 0x10, 0xa9, 0x10, 0x00, 0x00, 0x60, 0x80, 0x00,
3602 0x00}
3603 ;
3604 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_575, "((NU8)($1))", 11);
3605 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_576, " != -1 && (", 11);
3606 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_577, " < -1 || ", 9);
3607 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_578, " || ", 4);
3608 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_579, " > ", 3);
3609 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_580, ")){ ", 4);
3610 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_581, ") >= (NU)", 9);
3611 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_582, " || (NU)(", 9);
3612 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_583 = {
3613 0x10, 0xa9, 0xa0, 0x00, 0x00, 0xe0, 0x80, 0x00,
3614 0x00}
3615 ;
3616 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_584, "($1)-($2)+1", 11);
3617 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_585, "($3*)(($1)+($2))", 16);
3618 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_586, "($4*)($1)+(($2)-($3))", 21);
3619 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_587, "($3*)($1.Field0)+($2)", 21);
3620 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_588, "($3*)($1)+($2)", 14);
3621 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_589, "($4*)(*$1)$3+($2)", 17);
3622 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_590, "($4*)$1$3+($2)", 14);
3623 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_591, "openArrayLoc: ", 14);
3624 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_592 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_548),
3625 ((NI) 196),
3626 ((NI) 17)}
3627 ;
3628 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_593 = {
3629 0x10, 0xa9, 0x80, 0x00, 0x00, 0xe0, 0x80, 0x10,
3630 0x00}
3631 ;
3632 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_594, "$1->Field0, $1->Field1", 22);
3633 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_595, "$1.Field0, $1.Field1", 20);
3634 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_596, "$1, $1Len_0", 11);
3635 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_597, "(*$1)$3, $2", 11);
3636 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_598, "$1$3, $2", 8);
3637 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_599, "$1, $2", 6);
3638 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_600 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_548),
3639 ((NI) 248),
3640 ((NI) 21)}
3641 ;
3642 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_601 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_548),
3643 ((NI) 249),
3644 ((NI) 23)}
3645 ;
3646 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_602 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_548),
3647 ((NI) 56),
3648 ((NI) 13)}
3649 ;
3650 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_603, "$1.ClP_0($3$1.ClE_0);$n", 23);
3651 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_604, "$1.ClE_0\? $1.ClP_0($3$1.ClE_0):(($4)($1.ClP_0))($2);$n", 54);
3652 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_605, "if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;", 44);
3653 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_606, "if (NIM_UNLIKELY(*nimErr_)) goto LA", 35);
3654 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_607, "$1.ClP_0($3$1.ClE_0)", 20);
3655 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_608, "$1.ClE_0\? $1.ClP_0($3$1.ClE_0):(($4)($1.ClP_0))($2)", 51);
3656 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_609 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_548),
3657 ((NI) 664),
3658 ((NI) 17)}
3659 ;
3660 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__MQdRN7fpbG7rPm4JpVVAhA_610 = {
3661 0x00, 0x00, 0x00, 0x00, 0x88, 0x01, 0x00, 0x00,
3662 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3663 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3664 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3665 ;
3666 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_611, "call expression expected for C++ pattern", 40);
3667 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_612 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_548),
3668 ((NI) 627),
3669 ((NI) 20)}
3670 ;
3671 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_613 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_548),
3672 ((NI) 567),
3673 ((NI) 17)}
3674 ;
3675 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_614 = {
3676 0x10, 0x08, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00,
3677 0x00}
3678 ;
3679 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_615, "->", 2);
3680 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_616, ");$n", 4);
3681 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_617 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_548),
3682 ((NI) 712),
3683 ((NI) 17)}
3684 ;
3685 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_618, "varargs for objective C method\?", 31);
3686 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_619 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_548),
3687 ((NI) 732),
3688 ((NI) 19)}
3689 ;
3690 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_620, "Result: ", 8);
3691 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_621, "];$n", 4);
3692 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_622, "expr: var not init ", 19);
3693 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_623 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3694 ((NI) 2787),
3695 ((NI) 22)}
3696 ;
3697 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_624, "expr: temp not init ", 20);
3698 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_625 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3699 ((NI) 2806),
3700 ((NI) 21)}
3701 ;
3702 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_626, "expr: param not init ", 21);
3703 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_627 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3704 ((NI) 2813),
3705 ((NI) 21)}
3706 ;
3707 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_628, "expr(", 5);
3708 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_629, "); unknown symbol", 17);
3709 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_630 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3710 ((NI) 2815),
3711 ((NI) 23)}
3712 ;
3713 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_631, "LA", 2);
3714 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_632, "if ($1) goto $2;$n", 18);
3715 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_633, "if (!($1)) goto $2;$n", 21);
3716 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_634, "$1: ;$n", 7);
3717 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_635, "!($1)", 5);
3718 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_636, "$1", 2);
3719 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_637, "($3)((NU$2) ~($1))", 18);
3720 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_638, "-($1)", 5);
3721 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_639, " == ", 4);
3722 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_640, "){ ", 3);
3723 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_641, "raiseOverflow", 13);
3724 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_642, "((NI$2)-($1))", 13);
3725 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_643, "($1 > 0\? ($1) : -($1))", 22);
3726 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_644, ")(", 2);
3727 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_645, "+", 1);
3728 N_LIB_PRIVATE NIM_CONST tyArray__ttGk45MsSAdGt9ciYdRA8VQ opr__cgen_22990 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_645),
3729 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_562),
3730 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59),
3731 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_121)}
3732 ;
3733 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_646, " (", 2);
3734 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_647, " != ", 4);
3735 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_648, "raiseFloatInvalidOp", 19);
3736 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_649, " != 0.0 && ", 11);
3737 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_650, "*0.5 == ", 8);
3738 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_651, ") { ", 4);
3739 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_652, "raiseFloatOverflow", 18);
3740 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_653, "); ", 3);
3741 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_654, "(($4)($1) + ($4)($2))", 21);
3742 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_655, "(($4)($1) - ($4)($2))", 21);
3743 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_656, "(($4)($1) * ($4)($2))", 21);
3744 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_657, "(($4)($1) / ($4)($2))", 21);
3745 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_658, "($4)((NU$5)($1) >> (NU$3)($2))", 30);
3746 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_659, "($4)((NU$3)($1) << (NU$3)($2))", 30);
3747 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_660, "($4)((NI$3)($1) >> (NU$3)($2))", 30);
3748 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_661, "($4)($1 & $2)", 13);
3749 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_662, "($4)($1 | $2)", 13);
3750 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_663, "($4)($1 ^ $2)", 13);
3751 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_664, "(($1 <= $2) \? $1 : $2)", 22);
3752 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_665, "(($1 >= $2) \? $1 : $2)", 22);
3753 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_666, "($4)((NU$3)($1) + (NU$3)($2))", 29);
3754 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_667, "($4)((NU$3)($1) - (NU$3)($2))", 29);
3755 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_668, "($4)((NU$3)($1) * (NU$3)($2))", 29);
3756 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_669, "($4)((NU$3)($1) / (NU$3)($2))", 29);
3757 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_670, "($4)((NU$3)($1) % (NU$3)($2))", 29);
3758 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_671, "($1 == $2)", 10);
3759 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_672, "($1 <= $2)", 10);
3760 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_673, "($1 < $2)", 9);
3761 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_674, "((NU$3)($1) <= (NU$3)($2))", 26);
3762 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_675, "((NU$3)($1) < (NU$3)($2))", 25);
3763 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_676, "((NU8)($1) == (NU8)($2))", 24);
3764 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_677, "((NU8)($1) <= (NU8)($2))", 24);
3765 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_678, "((NU8)($1) < (NU8)($2))", 23);
3766 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_679, "($1 != $2)", 10);
3767 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_680, "($1.ClP_0 == $2.ClP_0 && $1.ClE_0 == $2.ClE_0)", 46);
3768 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_681, "($1)($2 $3 $4)", 14);
3769 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_682, "%", 1);
3770 N_LIB_PRIVATE NIM_CONST tyArray__rJSOG9bfI5wi9aqXvYJsFCWA opr__cgen_18771 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_645),
3771 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_562),
3772 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59),
3773 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_121),
3774 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_682),
3775 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_645),
3776 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_562)}
3777 ;
3778 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_683, " == 0){ ", 8);
3779 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_684, "raiseDivByZero", 14);
3780 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_685, "nimAddInt64", 11);
3781 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_686, "nimSubInt64", 11);
3782 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_687, "nimMulInt64", 11);
3783 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_688, "nimDivInt64", 11);
3784 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_689, "nimModInt64", 11);
3785 N_LIB_PRIVATE NIM_CONST tyArray__rJSOG9bfI5wi9aqXvYJsFCWA prc64__cgen_18770 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_685),
3786 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_686),
3787 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_687),
3788 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_688),
3789 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_689),
3790 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_685),
3791 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_686)}
3792 ;
3793 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_690, "nimAddInt", 9);
3794 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_691, "nimSubInt", 9);
3795 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_692, "nimMulInt", 9);
3796 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_693, "nimDivInt", 9);
3797 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_694, "nimModInt", 9);
3798 N_LIB_PRIVATE NIM_CONST tyArray__rJSOG9bfI5wi9aqXvYJsFCWA prc__cgen_18769 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_690),
3799 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_691),
3800 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_692),
3801 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_693),
3802 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_694),
3803 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_690),
3804 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_691)}
3805 ;
3806 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_695, ", &", 3);
3807 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_696, ")) { ", 5);
3808 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_697, "($#)($#)", 8);
3809 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_698, "\'repr\' is not available for --newruntime", 40);
3810 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_699 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3811 ((NI) 1659),
3812 ((NI) 14)}
3813 ;
3814 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_700, "reprInt", 7);
3815 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_701, "((NI64)", 7);
3816 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_702, "reprFloat", 9);
3817 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_703, "reprBool", 8);
3818 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_704, "reprChar", 8);
3819 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_705, "reprEnum", 8);
3820 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_706, "((NI)", 5);
3821 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_707, "reprStr", 7);
3822 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_708, "reprSet", 7);
3823 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_709, "genRepr()", 9);
3824 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_710 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3825 ((NI) 1693),
3826 ((NI) 23)}
3827 ;
3828 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_711, "reprOpenArray", 13);
3829 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_712, "reprAny", 7);
3830 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_713, "\'repr\' doesn\'t support \'void\' type", 34);
3831 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_714 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3832 ((NI) 1702),
3833 ((NI) 14)}
3834 ;
3835 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_715 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3836 ((NI) 1166),
3837 ((NI) 39)}
3838 ;
3839 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_716, "getDynamicTypeInfo", 18);
3840 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_717, ".m_type", 7);
3841 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_718, "->typeInfoV1", 12);
3842 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_719 = {
3843 0x10, 0x28, 0x90, 0x00, 0x00, 0xc0, 0x00, 0x00,
3844 0x00}
3845 ;
3846 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_720, "binaryStmt", 10);
3847 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_721 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3848 ((NI) 501),
3849 ((NI) 34)}
3850 ;
3851 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_722, "+=", 2);
3852 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_723, "-=", 2);
3853 N_LIB_PRIVATE NIM_CONST tyArray__cqX2jO1YLR9bYjA09bx8BZVg opr__cgen_23269 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_722),
3854 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_723)}
3855 ;
3856 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_724 = {
3857 0x10, 0x28, 0x80, 0x00, 0x00, 0xc0, 0x00, 0x00,
3858 0x00}
3859 ;
3860 N_LIB_PRIVATE NIM_CONST tyArray__cqX2jO1YLR9bYjA09bx8BZVg fun64__cgen_23270 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_685),
3861 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_686)}
3862 ;
3863 N_LIB_PRIVATE NIM_CONST tyArray__cqX2jO1YLR9bYjA09bx8BZVg fun__cgen_23271 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_690),
3864 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_691)}
3865 ;
3866 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_725, "appendChar", 10);
3867 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_726, " + ", 3);
3868 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_727, "appendString", 12);
3869 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_728, "rawNewString", 12);
3870 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_729, "binaryStmtAddr", 14);
3871 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_730 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3872 ((NI) 508),
3873 ((NI) 34)}
3874 ;
3875 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_731, "nimAddCharV1", 12);
3876 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_732, "addChar", 7);
3877 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_733, "prepareAdd", 10);
3878 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_734, "resizeString", 12);
3879 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_735 = {
3880 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
3881 0x00}
3882 ;
3883 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_736, "incrSeqV3", 9);
3884 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_737, "((TGenericSeq*)(", 16);
3885 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_738, "NI ", 3);
3886 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_739, "++;", 3);
3887 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_740, " == 0)", 6);
3888 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_741, "eqStrings", 9);
3889 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_742, "cmpStrings", 10);
3890 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_743, ") <= 0)", 7);
3891 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_744, ") < 0)", 6);
3892 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_745, ".ClP_0 == 0)", 12);
3893 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_746, "nimIntToStr", 11);
3894 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_747, "nimInt64ToStr", 13);
3895 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_748, "nimBoolToStr", 12);
3896 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_749, "nimCharToStr", 12);
3897 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_750, "nimFloat32ToStr", 15);
3898 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_751, "nimFloatToStr", 13);
3899 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_752, "cstrToNimstr", 12);
3900 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_753 = {
3901 0x10, 0xa9, 0x10, 0x00, 0x00, 0x60, 0x80, 0x00,
3902 0x00}
3903 ;
3904 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_754, "no \'of\' operator available for pure objects", 43);
3905 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_755 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3906 ((NI) 1646),
3907 ((NI) 15)}
3908 ;
3909 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_756, ") && (", 6);
3910 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_757, "isObj", 5);
3911 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_758, ".m_type, ", 9);
3912 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_759, "$1.m_type == $2", 15);
3913 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_760, "Nim_OfCheck_CACHE", 17);
3914 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_761, "static TNimType* $#[2];$n", 25);
3915 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_762, "isObjWithCache", 14);
3916 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_763, "sizeof($1)", 10);
3917 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_764, "nimNewObj", 9);
3918 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_765, ", NIM_ALIGNOF(", 14);
3919 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_766, "nimNewObjUninit", 15);
3920 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_767, "the destructor that is turned into a finalizer needs to have the \'nimcall\' calling convention", 93);
3921 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_768 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3922 ((NI) 1331),
3923 ((NI) 18)}
3924 ;
3925 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_769, "$1->finalizer = (void*)$2;$n", 28);
3926 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_770, "nimGCunrefRC1", 13);
3927 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_771, " = NIM_NIL; }", 13);
3928 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_772, "newObj", 6);
3929 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_773, "newObjRC1", 9);
3930 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_774, ".len = ", 7);
3931 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_775, ".p = (", 6);
3932 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_776, "newSeqPayload", 13);
3933 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_777, "), NIM_ALIGNOF(", 15);
3934 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_778, "newSeq", 6);
3935 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_779, "newSeqRC1", 9);
3936 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_780, "nimNewSeqOfCap", 14);
3937 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_781 = {
3938 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3939 0x00}
3940 ;
3941 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_782, "((NI)sizeof($1))", 16);
3942 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_783, "((NI)NIM_ALIGNOF($1))", 21);
3943 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_784, "unknown ast", 11);
3944 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_785 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3945 ((NI) 2381),
3946 ((NI) 19)}
3947 ;
3948 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_786, "Field", 5);
3949 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_787, "((NI)offsetof($1, $2))", 22);
3950 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_788, "(*($1*) ($2))", 13);
3951 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_789, "(($1) ($2))", 11);
3952 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_790, "(($1) (ptrdiff_t) ($2))", 23);
3953 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_791, "(*($1*) (&$2))", 14);
3954 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_792, "(($1) != 0)", 11);
3955 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_793 = {
3956 0x10, 0xa9, 0x80, 0x00, 0x00, 0xe0, 0xb0, 0x00,
3957 0x00}
3958 ;
3959 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_794, ")-(", 3);
3960 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_795, ")+1", 3);
3961 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_796, "Len_0-1)", 8);
3962 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_797, "Len_0", 5);
3963 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_798, ".Field1-1)", 10);
3964 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_799, ".Field1", 7);
3965 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_800, " \? (", 4);
3966 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_801, "nimCStrLen", 10);
3967 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_802, ")-1) : -1)", 10);
3968 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_803, " \? ", 3);
3969 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_804, ") : 0)", 6);
3970 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_805, "($1-1)", 6);
3971 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_806, "genArrayLen()", 13);
3972 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_807 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3973 ((NI) 1805),
3974 ((NI) 21)}
3975 ;
3976 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_808, "unaryStmt", 9);
3977 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_809 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3978 ((NI) 515),
3979 ((NI) 34)}
3980 ;
3981 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_810, "nimGCref", 8);
3982 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_811, "); }", 4);
3983 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_812, "nimGCunref", 10);
3984 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_813, "setLengthStrV2", 14);
3985 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_814, "genSetLengthStr", 15);
3986 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_815 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
3987 ((NI) 1852),
3988 ((NI) 36)}
3989 ;
3990 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_816, "setLengthStr", 12);
3991 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_817, "setLengthSeqV2", 14);
3992 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_818, "(&(", 3);
3993 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_819, ")->Sup, ", 8);
3994 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_820, "$1 |= ((NU8)1)<<(($2) & 7);$n", 29);
3995 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_821, "($1- $2)", 8);
3996 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_822, "$1 |= ((NU16)1)<<(($2) & 15);$n", 31);
3997 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_823, "$1 |= ((NU32)1)<<(($2) & 31);$n", 31);
3998 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_824, "$1 |= ((NU64)1)<<(($2) & 63);$n", 31);
3999 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_825, "$1 &= ~(((NU8)1) << (($2) & 7));$n", 34);
4000 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_826, "$1 &= ~(((NU16)1) << (($2) & 15));$n", 36);
4001 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_827, "$1 &= ~(((NU32)1) << (($2) & 31));$n", 36);
4002 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_828, "$1 &= ~(((NU64)1) << (($2) & 63));$n", 36);
4003 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_829, "countBits32", 11);
4004 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_830, "countBits64", 11);
4005 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_831, "(((", 3);
4006 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_832, " & ~ ", 5);
4007 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_833, ")==0)&&(", 8);
4008 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_834, ")==0)", 5);
4009 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_835, " & ", 3);
4010 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_836, " | ", 3);
4011 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_837, "$1 >= $2 && $1 <= $3", 20);
4012 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_838, "$1 == $2", 8);
4013 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_839, "(($1 &((NU8)1<<((NU)($2)&7U)))!=0)", 34);
4014 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_840, "(($1 &((NU16)1<<((NU)($2)&15U)))!=0)", 36);
4015 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_841, "(($1 &((NU32)1<<((NU)($2)&31U)))!=0)", 36);
4016 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_842, "(($1 &((NU64)1<<((NU)($2)&63U)))!=0)", 36);
4017 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_843, "(($1[(NU)($2)>>3] &(1U<<((NU)($2)&7U)))!=0)", 43);
4018 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_844, "genSetOp()", 10);
4019 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_845 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4020 ((NI) 1997),
4021 ((NI) 23)}
4022 ;
4023 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_846, "$1[(NU)($2)>>3] |=(1U<<($2&7U));$n", 34);
4024 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_847, "$1[(NU)($2)>>3] &= ~(1U<<($2&7U));$n", 36);
4025 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_848, "cardSet", 7);
4026 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_849, "++) { ", 6);
4027 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_850, " = ((", 5);
4028 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_851, "] & ~ ", 6);
4029 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_852, "]) == 0);", 9);
4030 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_853, "  if (!", 7);
4031 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_854, ") break;}", 9);
4032 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_855, "nimCmpMem", 9);
4033 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_856, ") != 0);", 8);
4034 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_857, "for ($1 = 0; $1 < $2; $1++) $n  $3[$1] = $4[$1] $6 $5[$1];$n", 60);
4035 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_858, "for ($1 = 0; $1 < $2; $1++) { $n  $3 = (($4[$1] & ~ $5[$1]) == 0);$n  if (!$3) break;}$n", 88);
4036 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_859, "for ($1 = 0; $1 < $2; $1++) { $n  $3 = (($4[$1] & ~ $5[$1]) == 0);$n  if (!$3) break;}$nif ($3) $3 = (#nimCmpMem($4, $5, $2) != 0);$n", 133);
4037 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_860, "& ~", 3);
4038 N_LIB_PRIVATE NIM_CONST tyArray__B06a0PrPRpY9aXtMPObCiCA lookupOpr__cgen_22120 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_858),
4039 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_859),
4040 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_473),
4041 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_127),
4042 ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_860)}
4043 ;
4044 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_861, "genSetOp", 8);
4045 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_862 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4046 ((NI) 2036),
4047 ((NI) 23)}
4048 ;
4049 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_863 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4050 ((NI) 1132),
4051 ((NI) 17)}
4052 ;
4053 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_864, ", \"\"", 4);
4054 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_865, "Genode::Cstring(", 16);
4055 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_866, ".p->data, ", 10);
4056 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_867, ".len)", 5);
4057 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_868, "->data, ", 8);
4058 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_869, "->len)", 6);
4059 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_870, "<base/log.h>", 12);
4060 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_871, "<util/string.h>", 15);
4061 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_872, "Genode::log(", 12);
4062 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_873, "echoBinSafe", 11);
4063 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_874, "(NIM_NIL, ", 10);
4064 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_875, "\'$1\' can only be used in compile-time context", 45);
4065 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_876 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4066 ((NI) 2431),
4067 ((NI) 14)}
4068 ;
4069 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_877, "for --gc:arc|orc \'deepcopy\' support has to be enabled with --deepcopy:on", 72);
4070 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_878 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4071 ((NI) 2446),
4072 ((NI) 16)}
4073 ;
4074 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_879 = {
4075 0x10, 0xa9, 0x90, 0x00, 0x00, 0x60, 0x80, 0x10,
4076 0x00}
4077 ;
4078 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_880, "genericDeepCopy", 15);
4079 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_881, "genericSeqDeepCopy", 18);
4080 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_882, "genericDeepCopyOpenArray", 24);
4081 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_883, "genDeepCopy: ", 13);
4082 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_884 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4083 ((NI) 460),
4084 ((NI) 21)}
4085 ;
4086 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_885, ".p != ", 6);
4087 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_886, ".p) {", 5);
4088 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_887, ".len; ", 6);
4089 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_888, ".p = ", 5);
4090 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_889, ".p;", 3);
4091 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_890, ".p && !(", 8);
4092 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_891, ".p->cap & NIM_STRLIT_FLAG)) {", 29);
4093 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_892, "deallocShared", 13);
4094 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_893, ".p);", 4);
4095 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_894, "dealloc", 7);
4096 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_895, "alignedDealloc", 14);
4097 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_896, ".p, NIM_ALIGNOF(", 16);
4098 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_897, "destructor turned out to be not trivial", 39);
4099 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_898 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4100 ((NI) 2242),
4101 ((NI) 19)}
4102 ;
4103 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_899, "genMagicExpr: ", 14);
4104 extern TNimType NTItmagic__shZhZOdbVC5nnFvcXQAImg_;
4105 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_900 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4106 ((NI) 2465),
4107 ((NI) 17)}
4108 ;
4109 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_901, "for ($1 = $3; $1 <= $4; $1++) $n$2[(NU)($1)>>3] |=(1U<<((NU)($1)&7U));$n", 72);
4110 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_902, "$1[(NU)($2)>>3] |=(1U<<((NU)($2)&7U));$n", 40);
4111 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_903, "$1 = 0;$n", 9);
4112 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_904, "for ($1 = $3; $1 <= $4; $1++) $n$2 |=(($5)(1)<<(($1)%(sizeof($5)*8)));$n", 72);
4113 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_905, "$1 |=(($3)(1)<<(($2)%(sizeof($3)*8)));$n", 40);
4114 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_906, "CNSTCLOSURE", 11);
4115 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_907, "closure to closure created", 26);
4116 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_908 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4117 ((NI) 2545),
4118 ((NI) 19)}
4119 ;
4120 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_909, ".ClE_0 = ", 9);
4121 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_910, "$1.Field$2", 10);
4122 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_911, "genCheckedRecordField", 21);
4123 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_912 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4124 ((NI) 838),
4125 ((NI) 33)}
4126 ;
4127 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_913, "genObjConstr", 12);
4128 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_914 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4129 ((NI) 1493),
4130 ((NI) 40)}
4131 ;
4132 static NIM_CONST tyTuple__47w2DboNEPf69aPgubZdd7Q TM__MQdRN7fpbG7rPm4JpVVAhA_915 = {((NI) 1),
4133 ((NI) 5),
4134 ((NI) 1)}
4135 ;
4136 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_916, "{ ", 2);
4137 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_917, "raiseFieldError", 15);
4138 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_918, "raiseFieldError2", 16);
4139 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_919, ", (NI)", 6);
4140 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_920, "reprDiscriminant", 16);
4141 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_921, "(((NI)", 6);
4142 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_922, ") + (NI)", 8);
4143 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_923, ")); ", 4);
4144 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_924, "LOC$1.source", 12);
4145 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_925, "union { ", 8);
4146 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_926, " source; ", 9);
4147 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_927, " dest; } LOC", 12);
4148 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_928, "LOC$#.dest", 10);
4149 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_929 = {
4150 0x10, 0x08, 0x80, 0x00, 0x00, 0xc0, 0x00, 0x00,
4151 0x00}
4152 ;
4153 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_930 = {
4154 0x10, 0xa9, 0x90, 0x00, 0x00, 0x60, 0xb0, 0x00,
4155 0x00}
4156 ;
4157 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_931 = {
4158 0x10, 0xa9, 0xf0, 0x00, 0x00, 0xe0, 0xb0, 0x00,
4159 0x00}
4160 ;
4161 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_932, "if ((NU)(", 9);
4162 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_933, ") > (NU)(", 9);
4163 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_934, "raiseIndexError2", 16);
4164 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_935, "raiseIndexError3", 16);
4165 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_936, "index out of bounds, the container is empty", 43);
4166 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_937, "index ", 6);
4167 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_938, " not in ", 8);
4168 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_939, " .. ", 4);
4169 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_940 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4170 ((NI) 961),
4171 ((NI) 18)}
4172 ;
4173 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_941, "[(", 2);
4174 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_942, ")- ", 3);
4175 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_943, "Len_0)){ ", 9);
4176 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_944, ",", 1);
4177 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_945, "Len_0-1); ", 10);
4178 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_946, ".Field1)){ ", 11);
4179 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_947, ".Field1-1); ", 12);
4180 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_948, ".Field0[", 8);
4181 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_949, "-1); ", 5);
4182 static NIM_CONST tySet_tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag TM__MQdRN7fpbG7rPm4JpVVAhA_950 = {
4183 0x10, 0xa9, 0x80, 0x00, 0x00, 0x60, 0x80, 0x00,
4184 0x00}
4185 ;
4186 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_951, "genTupleElem", 12);
4187 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_952 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4188 ((NI) 821),
4189 ((NI) 21)}
4190 ;
4191 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_953, ".Field$1", 8);
4192 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_954, "expr(nkBracketExpr, ", 20);
4193 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_955 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4194 ((NI) 1052),
4195 ((NI) 21)}
4196 ;
4197 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_956, "genDeref ", 9);
4198 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_957 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4199 ((NI) 759),
4200 ((NI) 21)}
4201 ;
4202 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_958, "genRecordFieldAux", 17);
4203 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_959 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4204 ((NI) 805),
4205 ((NI) 38)}
4206 ;
4207 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_960, "genRecordField 3 ", 17);
4208 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_961 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4209 ((NI) 855),
4210 ((NI) 40)}
4211 ;
4212 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_962, ".$1", 3);
4213 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_963 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4214 ((NI) 926),
4215 ((NI) 19)}
4216 ;
4217 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_964, "FR", 2);
4218 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_965, "TFrame $1;$n", 12);
4219 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_966, ".procname = ", 12);
4220 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_967, ".filename = ", 12);
4221 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_968, ";  ", 3);
4222 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_969, ".line = ", 8);
4223 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_970, ".len = -1; nimFrame(&", 21);
4224 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_971, "popFrameOfAddr", 14);
4225 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_972, "if (!$1) goto $2;$n", 19);
4226 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_973, "goto $1;$n", 10);
4227 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_974, "genIf()", 7);
4228 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_975 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4229 ((NI) 460),
4230 ((NI) 23)}
4231 ;
4232 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_976, "(*(($1*) (&($2))))", 18);
4233 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_977, "->Sup", 5);
4234 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_978, " && !", 5);
4235 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_979, "raiseObjectConversionError", 26);
4236 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_980, "if (!", 5);
4237 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_981, " > (", 4);
4238 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_982, "raiseRangeErrorNoArgs", 21);
4239 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_983, "raiseRangeErrorU", 16);
4240 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_984, "raiseRangeErrorF", 16);
4241 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_985, "raiseRangeErrorI", 16);
4242 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_986, "csize", 5);
4243 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_987, "(NI64)", 6);
4244 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_988, ") < ", 4);
4245 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_989, ") > ", 4);
4246 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_990 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4247 ((NI) 2884),
4248 ((NI) 19)}
4249 ;
4250 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_991, "case statement must be exhaustive for computed goto", 51);
4251 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_992 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4252 ((NI) 513),
4253 ((NI) 18)}
4254 ;
4255 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_993, "case statement cannot work on enums with holes for computed goto", 64);
4256 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_994 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4257 ((NI) 517),
4258 ((NI) 18)}
4259 ;
4260 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_995, "case statement has too many cases for computed goto", 51);
4261 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_996 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4262 ((NI) 521),
4263 ((NI) 18)}
4264 ;
4265 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_997, "case statement has to start at 0 for computed goto", 50);
4266 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_998 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4267 ((NI) 525),
4268 ((NI) 18)}
4269 ;
4270 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_999, "no case statement found for computed goto", 41);
4271 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1000 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4272 ((NI) 528),
4273 ((NI) 14)}
4274 ;
4275 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1001, "TMP$1_", 6);
4276 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1002, "static void* $#[$#] = {", 23);
4277 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1003, "&&TMP$#_, ", 10);
4278 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1004, "&&TMP$#_};$n", 12);
4279 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1005, "goto *$#[$#];$n", 15);
4280 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1006, "range notation not available for computed goto", 46);
4281 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1007 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4282 ((NI) 552),
4283 ((NI) 18)}
4284 ;
4285 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1008, "TMP$#_:$n", 9);
4286 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1009, "while (1) {", 11);
4287 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1010, "genVarTuple", 11);
4288 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1011 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4289 ((NI) 64),
4290 ((NI) 40)}
4291 ;
4292 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1012 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4293 ((NI) 107),
4294 ((NI) 44)}
4295 ;
4296 N_LIB_PRIVATE TNimType NTItupleLloc58tloc_tp58ropeT__9cSd9cjH9cnPQaBRO0ioKSxRA_;
4297 extern TNimType NTIrope__4hi0XQqK9aLiPuWT9acsXm9aQ_;
4298 N_LIB_PRIVATE TNimType NTIseqLtupleLloc58tloc_tp58ropeTT__sno9c9bXUVS2CqhtWOJadaCw_;
4299 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1014, "NIM_BOOL ", 9);
4300 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1015, " = NIM_FALSE;", 13);
4301 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1016, " |= hcrRegisterGlobal(", 22);
4302 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1017, ");\012", 3);
4303 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1018, "for statement not eliminated", 28);
4304 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1019 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4305 ((NI) 2895),
4306 ((NI) 29)}
4307 ;
4308 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1020, ")) goto ", 8);
4309 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1021, "switch (", 8);
4310 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1022, "hashString", 10);
4311 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1023, ") & ", 4);
4312 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1024, ") {", 3);
4313 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1025, "case $1: $n$2break;$n", 21);
4314 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1026, "goto LA$1_;$n", 13);
4315 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1027, "LA$1_: ;$n", 10);
4316 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1028, " >= ", 4);
4317 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1029, " && ", 4);
4318 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1030, " <= ", 4);
4319 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1031, ") goto ", 7);
4320 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1032 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4321 ((NI) 484),
4322 ((NI) 18)}
4323 ;
4324 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1033, "NIMSTATE_$#:$n", 14);
4325 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1034, "switch ($1) {$n", 15);
4326 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1035, "default: __assume(0);$n", 23);
4327 extern TNimType NTIseqLtupleLfin58pnode_inexcept58bool_label58naturalTT__KjgUMUjT3LUKOFIK4xt5ug_;
4328 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1036, "popSafePoint", 12);
4329 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1037, "popCurrentException", 19);
4330 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1038, ".status != 0) ", 14);
4331 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1039, "goto BeforeRet_;$n", 18);
4332 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1040, "ccgstmts.nim(691, 13) `sym.loc.k == locOther` ", 46);
4333 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1041, "no loop to break", 16);
4334 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1042 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4335 ((NI) 697),
4336 ((NI) 19)}
4337 ;
4338 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1043, "FieldDiscriminantCheck", 22);
4339 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1044, "((NI)(NU)(", 10);
4340 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1045, "), (NI)(NU)(", 12);
4341 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1046 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4342 ((NI) 1565),
4343 ((NI) 11)}
4344 ;
4345 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1047, "(void)(", 7);
4346 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1048, "\"", 1);
4347 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1049, "\\\"", 2);
4348 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1050, "\\n\"\012", 4);
4349 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1051, "if (NIM_UNLIKELY(*nimErr_)) {", 29);
4350 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1052, "_:;", 3);
4351 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1053, "else", 4);
4352 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1054, "*nimErr_ = NIM_FALSE;", 21);
4353 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1055, "m_type", 6);
4354 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1056, "Sup.m_type", 10);
4355 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1057, "nimBorrowCurrentException", 25);
4356 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1058, "()->", 4);
4357 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1059, "else ", 5);
4358 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1060, "NIM_BOOL oldNimErrFin", 21);
4359 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1061, "oldNimErrFin", 12);
4360 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1062, "_ = *nimErr_; *nimErr_ = NIM_FALSE;", 35);
4361 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1063, "*nimErr_ = oldNimErrFin", 23);
4362 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1064, "<exception>", 11);
4363 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1065, "\011std::exception_ptr T", 21);
4364 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1066, "_ = nullptr;", 12);
4365 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1067, "try {", 5);
4366 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1068, "catch (", 7);
4367 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1069, "Exception", 9);
4368 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1070, "* T", 3);
4369 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1071, "_) {", 4);
4370 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1072, "\011TFrame* _nimCurFrame;", 22);
4371 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1073, "\011_nimCurFrame = ", 16);
4372 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1074, "getFrame", 8);
4373 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1075, "setFrame", 8);
4374 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1076, "(_nimCurFrame);", 15);
4375 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1077, "_ = std::current_exception();", 29);
4376 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1078, "else if (", 9);
4377 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1079, " = T", 4);
4378 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1080, "else throw;", 11);
4379 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1081, "catch (...) {", 13);
4380 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1082, "& ", 2);
4381 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1083, "&) {", 4);
4382 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1084, "if (T", 5);
4383 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1085, "_) std::rethrow_exception(T", 27);
4384 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1086, "_);", 3);
4385 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1087, "<setjmp.h>", 10);
4386 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1088, "TSafePoint", 10);
4387 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1089, "pushSafePoint", 13);
4388 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1090, "nimStdSetjmp", 12);
4389 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1091, ".status = setjmp(", 17);
4390 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1092, ".context);", 10);
4391 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1093, "nimSigSetjmp", 12);
4392 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1094, ".status = sigsetjmp(", 20);
4393 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1095, ".context, 0);", 13);
4394 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1096, "nimBuiltinSetjmp", 16);
4395 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1097, ".status = __builtin_setjmp(", 27);
4396 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1098, "nimRawSetjmp", 12);
4397 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1099, "mswindows", 9);
4398 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1100, ".status = _setjmp(", 18);
4399 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1101, ".status == 0) {", 15);
4400 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1102, "else {", 6);
4401 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1103, "()) {", 5);
4402 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1104, ".status = 0;", 12);
4403 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1105, "nimLeaveFinally", 15);
4404 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1106, "reraiseException", 16);
4405 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1107, "throw $1;$n", 11);
4406 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1108, "raiseExceptionEx", 16);
4407 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1109, "*)", 2);
4408 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1110, "throw;$n", 8);
4409 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1111, "/*TYPESECTION*/", 15);
4410 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1112, "/*VARSECTION*/", 14);
4411 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1113, "/*INCLUDESECTION*/", 18);
4412 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1114, "$n#pragma omp $4$nfor ($1 = $2; $1 <= $3; ++$1)", 47);
4413 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1115, "$n#pragma $4$nfor ($1 = $2; $1 <= $3; ++$1)", 43);
4414 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1116, "$n#pragma omp $5$nfor ($1 = $2; $1 <= $3; $1 += $4)", 51);
4415 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1117 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4416 ((NI) 189),
4417 ((NI) 17)}
4418 ;
4419 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1118, "STATE", 5);
4420 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1119, ": ;", 3);
4421 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1120, "case -1:$n", 10);
4422 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1121, " goto BeforeRet_;$n", 19);
4423 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1122, "STATE", 5);
4424 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1123, "case $2: goto $1$2;$n", 21);
4425 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1124, "(((NI*) $1)[1] < 0)", 19);
4426 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1125, "((((NI*) $1.ClE_0)[1]) < 0)", 27);
4427 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1126, "); unknown node kind", 20);
4428 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1127 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_241),
4429 ((NI) 2959),
4430 ((NI) 21)}
4431 ;
4432 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1128 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_522),
4433 ((NI) 1597),
4434 ((NI) 17)}
4435 ;
4436 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1129, "nimTestErrorFlag", 16);
4437 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1130, "programResult", 13);
4438 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1131, "procAddrError", 13);
4439 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1132, "rawWrite", 8);
4440 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1133, "initStackBottomWith", 19);
4441 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1134, "initThreadVarsEmulation", 23);
4442 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1135, "still forwarded: ", 17);
4443 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1136 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
4444 ((NI) 2083),
4445 ((NI) 19)}
4446 ;
4447 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1137, "NimMainModule", 13);
4448 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1138, "Init000", 7);
4449 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1139, "$1 N_NIMCALL(void, $2)(void) {$N", 32);
4450 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1140, "N_LIB_EXPORT", 12);
4451 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1141, "N_LIB_PRIVATE", 13);
4452 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1142, "generated_not_to_break_here", 27);
4453 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1143, "* ", 2);
4454 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1144, "\011hcrRegisterGlobal(", 19);
4455 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1145, "\", sizeof(TNimNode) * ", 22);
4456 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1146, ", NULL, (void**)&", 17);
4457 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1147, "\011int* nim_hcr_dummy_ = 0;$n\011NIM_BOOL nim_hcr_do_init_ = hcrRegisterGlobal($1, \"module_initialized_\", 1, NULL, (void**)&nim_hcr_dummy_);$n", 137);
4458 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1148, "{$N", 3);
4459 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1149, "\011TFrame FR_; FR_.len = 0;$N", 27);
4460 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1150, "\011if (nim_hcr_do_init_) {\012\012", 26);
4461 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1151, "\012\011} // nim_hcr_do_init_\012", 24);
4462 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1152, "}/* preInitProc end */$N", 24);
4463 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1153, "\011BeforeRet_: ;$n", 16);
4464 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1154, "}$N$N", 5);
4465 extern TNimType NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_;
4466 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1155, "hcrRegisterProc", 15);
4467 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1156, "hcrGetProc", 10);
4468 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1157, "hcrRegisterGlobal", 17);
4469 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1158, "hcrGetGlobal", 12);
4470 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1159, "N_LIB_EXPORT N_NIMCALL(void, $1)(void* handle, N_NIMCALL_PTR(void*, getProcAddr)(void*, char*)) {$N", 99);
4471 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1160, "HcrInit000", 10);
4472 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1161, "hcrInit", 7);
4473 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1162, "hcrAddModule", 12);
4474 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1163, "static $2 $1;$n", 15);
4475 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1164, "\011$1 = ($2) $3($4, $5);$n", 24);
4476 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1165, "handle", 6);
4477 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1166, "getProcAddr", 11);
4478 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1167, "NIM_EXTERNC N_NIMCALL(void, nimLoadProcs$1)(void) {$2}$N$N", 58);
4479 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1168, "DatInit000", 10);
4480 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1169, "N_LIB_EXPORT N_NIMCALL(void, HcrCreateTypeInfos)(void) {$N", 58);
4481 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1170, "$nN_LIB_PRIVATE const char* hcr_module_list[] = {$n", 51);
4482 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1171, "\011$1,$n", 6);
4483 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1172, "\011\"\"};$n", 7);
4484 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1173, "$nN_LIB_EXPORT N_NIMCALL(void**, HcrGetImportedModules)() { return (void**)hcr_module_list; }$n", 95);
4485 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1174, "$nN_LIB_EXPORT N_NIMCALL(char*, HcrGetSigHash)() { return \"$1\"; }$n$n", 69);
4486 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1175, "static void* hcr_handle;$N", 26);
4487 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1176, "N_LIB_EXPORT N_NIMCALL(void, $1)(void);$N", 41);
4488 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1177, "N_LIB_EXPORT N_NIMCALL(void, $1)(void*, N_NIMCALL_PTR(void*, getProcAddr)(void*, char*));$N", 91);
4489 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1178, "N_LIB_EXPORT N_NIMCALL(void, HcrCreateTypeInfos)(void);$N", 57);
4490 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1179, "\011$1();$N", 8);
4491 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1180, "\011hcrInit((void**)hcr_module_list, $1, $2, $3, hcr_handle, nimGetProcAddr);$n", 76);
4492 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1181, "\011$1(hcr_handle, nimGetProcAddr);$N", 34);
4493 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1182, "\011hcrAddModule($1);\012", 19);
4494 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1183, "\011HcrCreateTypeInfos();$N", 24);
4495 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1184, "stdlib_system", 13);
4496 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1185, "stdlib_os", 9);
4497 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1186, "\011int* cmd_count;\012", 17);
4498 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1187, "\011char*** cmd_line;\012", 19);
4499 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1188, "\011hcrRegisterGlobal($1, \"cmdCount\", sizeof(cmd_count), NULL, (void**)&cmd_count);$N", 82);
4500 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1189, "\011hcrRegisterGlobal($1, \"cmdLine\", sizeof(cmd_line), NULL, (void**)&cmd_line);$N", 79);
4501 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1190, "\011*cmd_count = cmdCount;\012", 24);
4502 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1191, "\011*cmd_line = cmdLine;\012", 22);
4503 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1192, "N_LIB_PRIVATE N_NIMCALL(void, $1)(void);$N", 42);
4504 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1193, "();\012", 4);
4505 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1194, "((void *)&inner);\012", 18);
4506 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1195, "\012\012", 2);
4507 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1196, "#", 1);
4508 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1197, "ifndef ", 7);
4509 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1198, "_Content_PP\012", 12);
4510 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1199, "define ", 7);
4511 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1200, "_Content_PP\012struct ", 19);
4512 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1201, "_Content { NI cap; ", 19);
4513 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1202, " data[SEQ_DECL_SIZE];};\012", 24);
4514 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1203, "endif\012\012      ", 13);
4515 extern TNimType NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_;
4516 N_LIB_PRIVATE TNimType NTIobject__IDX4istqRyOZp3l6j9aUesw_;
4517 extern TNimType NTIint__xHTZrq9aYs6boc9bCba0JbpQ_;
4518 N_LIB_PRIVATE TNimType NTIrefobject__UjwNQwrGjW3X9ahveEH9bnWA_;
4519 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1205, "\011if (!(", 7);
4520 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1206, ")))\012\011\011", 6);
4521 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1207, "hcr_handle", 10);
4522 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1209, "\011void* rtl_handle;\012", 19);
4523 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1210, "rtl_handle", 10);
4524 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1211, "nimGC_setStackBottom", 20);
4525 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1213, "nimrtl_", 7);
4526 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1214, "\011inner = PreMain;\012", 18);
4527 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1215, "\011initStackBottomWith_actual((void *)&inner);\012", 45);
4528 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1216, "\011(*inner)();\012", 13);
4529 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1217, "\011PreMain();\012", 12);
4530 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1218, "<windows.h>", 11);
4531 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1219, "<libc/component.h>", 18);
4532 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1220, "\012N_LIB_PRIVATE void PreMainInner(void) {\012", 41);
4533 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1221, "}\012\012N_LIB_PRIVATE int cmdCount;\012N_LIB_PRIVATE char** cmdLine;\012N_LIB_PRIVATE char** gEnv;\012N_LIB_PRIVATE void PreMain(void) {\012\011void (*volatile inner)(void);\012\011inner = PreMainInner;\012", 177);
4534 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1222, "\011(*inner)();\012}\012\012", 16);
4535 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1223, "N_LIB_PRIVATE N_CDECL(void, NimMainInner)(void) {\012", 50);
4536 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1224, "}\012\012N_CDECL(void, ", 17);
4537 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1225, "NimMain)(void) {\012\011void (*volatile inner)(void);\012", 48);
4538 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1226, "\011inner = NimMainInner;\012", 23);
4539 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1227, "}\012\012N_LIB_EXPORT N_CDECL(void, ", 30);
4540 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1228, "extern Genode::Env *nim_runtime_env;\012extern \"C\" void nim_component_construct(Genode::Env*);\012\012N_LIB_PRIVATE N_CDECL(void, NimMainInner)(void) {\012", 143);
4541 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1229, "using namespace ", 16);
4542 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1230, "N_STDCALL(int, WinMain)(HINSTANCE hCurInstance, \012                        HINSTANCE hPrevInstance, \012                        LPSTR lpCmdLine, int nCmdShow) {\012\011", 157);
4543 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1231, "NimMain();\012\011return ", 19);
4544 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1232, "nim_program_result;\012}\012\012", 23);
4545 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1233, "BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fwdreason, \012                    LPVOID lpvReserved) {\012\011if(fwdreason == DLL_PROCESS_ATTACH) {\012\011", 140);
4546 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1234, "NimMain();\012}\012\011return 1;\012}\012\012", 27);
4547 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1235, "void Libc::Component::construct(Libc::Env &env) {\012\011// Set Env used during runtime initialization\012\011nim_runtime_env = &env;\012\011Libc::with_libc([&] () {\012\011\011// Initialize runtime and globals\012\011", 185);
4548 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1236, "NimMain();\012\011// Call application construct\012\011\011nim_component_construct(&env);\012\011});\012}\012\012", 83);
4549 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1237, "N_LIB_PRIVATE void NIM_POSIX_INIT NimMainInit(void) {\012\011", 55);
4550 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1238, "NimMain();\012}\012\012", 14);
4551 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1239, "int main(void) {\012\011", 18);
4552 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1240, "NimMain();\012\011return 0;\012}\012\012", 25);
4553 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1241, "int main(int argc, char** args, char** env) {\012\011cmdLine = args;\012\011cmdCount = argc;\012\011gEnv = env;\012\011", 95);
4554 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1242, "namespace ", 10);
4555 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1243, " {\012", 3);
4556 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1244, "$#NI NimThreadVarsSize(){return (NI)sizeof(NimThreadVars);}$n", 61);
4557 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1245, "/* Generated by Nim Compiler v$1 */$N", 37);
4558 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1246, "1.6.2", 5);
4559 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1247, "/* Compiled for: $1, $2, $3 */$N/* Command for C compiler:$n   $4 */$N", 70);
4560 extern NIM_CONST tyArray__9cwFB2SXj9aw9cyLiDbvSiBEg CPU__platform_691;
4561 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1248, "#define NIM_HOT_CODE_RELOADING\012", 31);
4562 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1249, "#define NIM_INTBITS $1\012", 23);
4563 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1250, "#define USE_NIM_NAMESPACE ", 26);
4564 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1251, "nimEmulateOverflowChecks", 24);
4565 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1252, "#define NIM_EmulateOverflowChecks\012", 34);
4566 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1253, "typedef struct {$1} NimThreadVars;$n", 36);
4567 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1254, "\012#include \"nimbase.h\"\012", 22);
4568 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1255, "#include \"$1\"$N", 15);
4569 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1256, "#include $1$N", 13);
4570 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1257, "#undef LANGUAGE_C\012#undef MIPSEB\012#undef MIPSEL\012#undef PPC\012#undef R3000\012#undef R4000\012#undef i386\012#undef linux\012#undef mips\012#undef near\012#undef far\012#undef powerpc\012#undef unix\012", 170);
4571 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1258, "#define nimfr_(x, y)\012#define nimln_(x, y)\012", 42);
4572 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1259 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
4573 ((NI) 1964),
4574 ((NI) 18)}
4575 ;
4576 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1260 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
4577 ((NI) 1972),
4578 ((NI) 16)}
4579 ;
4580 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1261, "__$1__", 6);
4581 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1262, "#ifndef $1$n#define $1$n", 24);
4582 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1263, "N_CDECL(void, $1NimMain)(void);$n", 33);
4583 STRING_LITERAL(TM__MQdRN7fpbG7rPm4JpVVAhA_1264, "#endif /* $1 */$n", 17);
4584 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__MQdRN7fpbG7rPm4JpVVAhA_1265 = {((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_87),
4585 ((NI) 1895),
4586 ((NI) 14)}
4587 ;
4588 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5217;
4589 extern TSafePoint* excHandler__system_2565;
4590 extern TSafePoint* excHandler__system_2565;
4591 extern TSafePoint* excHandler__system_2565;
4592 extern TSafePoint* excHandler__system_2565;
N_INLINE(NI,pluspercent___system_696)4593 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
4594 	NI result;
4595 	result = (NI)0;
4596 	result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
4597 	return result;
4598 }
N_INLINE(void,incRef__system_5308)4599 static N_INLINE(void, incRef__system_5308)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
4600 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
4601 }
N_INLINE(NI,minuspercent___system_716)4602 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
4603 	NI result;
4604 	result = (NI)0;
4605 	result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
4606 	return result;
4607 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5270)4608 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5270)(void* usr) {
4609 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
4610 	NI T1_;
4611 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
4612 	T1_ = (NI)0;
4613 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
4614 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
4615 	return result;
4616 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)4617 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
4618 	NIM_BOOL result;
4619 	result = (NIM_BOOL)0;
4620 	result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
4621 	return result;
4622 }
N_INLINE(void,rtlAddZCT__system_5313)4623 static N_INLINE(void, rtlAddZCT__system_5313)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
4624 	addZCT__system_5264((&gch__system_5217.zct), c);
4625 }
N_INLINE(void,decRef__system_5315)4626 static N_INLINE(void, decRef__system_5315)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
4627 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
4628 	{
4629 		NIM_BOOL T3_;
4630 		T3_ = (NIM_BOOL)0;
4631 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
4632 		if (!T3_) goto LA4_;
4633 		rtlAddZCT__system_5313(c);
4634 	}
4635 	LA4_: ;
4636 }
N_INLINE(void,asgnRef)4637 static N_INLINE(void, asgnRef)(void** dest, void* src) {
4638 	{
4639 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
4640 		if (!!((src == NIM_NIL))) goto LA3_;
4641 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
4642 		T5_ = usrToCell__system_5270(src);
4643 		incRef__system_5308(T5_);
4644 	}
4645 	LA3_: ;
4646 	{
4647 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
4648 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
4649 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
4650 		T10_ = usrToCell__system_5270((*dest));
4651 		decRef__system_5315(T10_);
4652 	}
4653 	LA8_: ;
4654 	(*dest) = src;
4655 }
N_INLINE(void,nimCopyMem)4656 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
4657 	void* T1_;
4658 	T1_ = (void*)0;
4659 	T1_ = memcpy(dest, source, ((size_t) (size)));
4660 }
N_INLINE(void,copyMem__system_1727)4661 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
4662 	nimCopyMem(dest, source, size);
4663 }
N_INLINE(void,appendString)4664 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
4665 	{
4666 		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
4667 		copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
4668 		(*dest).Sup.len += (*src).Sup.len;
4669 	}
4670 	LA3_: ;
4671 }
N_INLINE(void,nimSetMem__systemZmemory_7)4672 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
4673 	void* T1_;
4674 	T1_ = (void*)0;
4675 	T1_ = memset(a, v, ((size_t) (size)));
4676 }
N_INLINE(void,nimZeroMem)4677 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
4678 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
4679 }
N_INLINE(void,nimGCunrefRC1)4680 static N_INLINE(void, nimGCunrefRC1)(void* p) {
4681 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
4682 	T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
4683 	T1_ = usrToCell__system_5270(p);
4684 	decRef__system_5315(T1_);
4685 }
N_INLINE(void,initIntSet__pureZcollectionsZintsets_238)4686 static N_INLINE(void, initIntSet__pureZcollectionsZintsets_238)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* Result) {
4687 	initPackedSet__pureZcollectionsZintsets_16(Result);
4688 }
N_INLINE(void,nimGCunrefNoCycle)4689 static N_INLINE(void, nimGCunrefNoCycle)(void* p) {
4690 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
4691 	T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
4692 	T1_ = usrToCell__system_5270(p);
4693 	decRef__system_5315(T1_);
4694 }
N_INLINE(NI,slotsNeeded__pureZcollectionsZtables_42)4695 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count) {
4696 	NI result;
4697 	result = (NI)0;
4698 	result = nextPowerOfTwo__pureZmath_177((NI)((NI)((NI)(((NI) (count)) * ((NI) 3)) / ((NI) 2)) + ((NI) 4)));
4699 	return result;
4700 }
N_NIMCALL(void,initTable__cgen_28191)4701 N_LIB_PRIVATE N_NIMCALL(void, initTable__cgen_28191)(NI initialSize, tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA* Result) {
4702 	NI correctSizeX60gensym6454_;
4703 	unsureAsgnRef((void**)&(*Result).data, NIM_NIL);
4704 	(*Result).counter = 0;
4705 	correctSizeX60gensym6454_ = slotsNeeded__pureZcollectionsZtables_42(((NI) (initialSize)));
4706 	(*Result).counter = ((NI) 0);
4707 	unsureAsgnRef((void**) (&(*Result).data), (tySequence__sII3pVVRkIdBZ2HDPdZddA*) newSeq((&NTIkeyvaluepairseq__sII3pVVRkIdBZ2HDPdZddA_), ((NI) (correctSizeX60gensym6454_))));
4708 }
N_NIMCALL(void,initCountTable__cgen_28210)4709 N_LIB_PRIVATE N_NIMCALL(void, initCountTable__cgen_28210)(NI initialSize, tyObject_CountTable__tUMxxU9cRgLolsrW9b7IBGsQ* Result) {
4710 	NI correctSizeX60gensym6456_;
4711 	unsureAsgnRef((void**)&(*Result).data, NIM_NIL);
4712 	(*Result).counter = 0;
4713 	(*Result).isSorted = 0;
4714 	correctSizeX60gensym6456_ = slotsNeeded__pureZcollectionsZtables_42(((NI) (initialSize)));
4715 	(*Result).counter = ((NI) 0);
4716 	unsureAsgnRef((void**) (&(*Result).data), (tySequence__XUL1TrMU0tgXmaMFCIYgFQ*) newSeq((&NTIseqLtupleLkey58sighash_val58intTT__XUL1TrMU0tgXmaMFCIYgFQ_), ((NI) (correctSizeX60gensym6456_))));
4717 }
N_NIMCALL(tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg,initProcOptions__cgen_28167)4718 N_LIB_PRIVATE N_NIMCALL(tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg, initProcOptions__cgen_28167)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
4719 	tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg result;
4720 	tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg opts;
4721 	nimZeroMem((void*)(&result), sizeof(tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg));
4722 	opts = (*(*(*m).g).config).options;
4723 	{
4724 		if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0)) goto LA3_;
4725 		result = (opts & ~ 131072);
4726 	}
4727 	goto LA1_;
4728 	LA3_: ;
4729 	{
4730 		result = opts;
4731 	}
4732 	LA1_: ;
4733 	return result;
4734 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getTempName__cgen_418)4735 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTempName__cgen_418)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
4736 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
4737 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
4738 	result = NIM_NIL;
4739 	T1_ = NIM_NIL;
4740 	T1_ = rope__ropes_115(((NI64) ((*m).labels)));
4741 	result = amp___ropes_128((*m).tmpBase, T1_);
4742 	(*m).labels += ((NI) 1);
4743 	return result;
4744 }
N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow *,rawNewModule__cgen_28179)4745 N_LIB_PRIVATE N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*, rawNewModule__cgen_28179)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, NimStringDesc* filename) {
4746 	tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* result;
4747 	NimStringDesc* T1_;
4748 	tyArray__qtqsWM5aXmcpMIVmvq3kAA T2_;
4749 	NimStringDesc* T3_;
4750 	NimStringDesc* T4_;
4751 	NimStringDesc* T5_;
4752 	NimStringDesc* ndiName;
4753 	result = NIM_NIL;
4754 	result = (tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) newObj((&NTIbmodule__NkKlBfvvsMUW70DxvxLVIg_), sizeof(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow));
4755 	(*result).Sup.Sup.m_type = (&NTItcgen__9cG6VsX22pOhho6kxyhFVow_);
4756 	asgnRef((void**) (&(*result).g), g);
4757 	T1_ = NIM_NIL;
4758 	nimZeroMem((void*)T2_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
4759 	hashOwner__sighashes_505(module, T2_);
4760 	T3_ = NIM_NIL;
4761 	T3_ = dollar___modulegraphs_8947(T2_);
4762 	T1_ = rawNewString((T3_ ? T3_->Sup.len : 0) + 3);
4763 appendString(T1_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_2));
4764 appendString(T1_, T3_);
4765 appendString(T1_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
4766 	asgnRef((void**) (&(*result).tmpBase), rope__ropes_109(T1_));
4767 	if ((*result).headerFiles) { nimGCunrefRC1((*result).headerFiles); (*result).headerFiles = NIM_NIL; }
4768 	initIntSet__pureZcollectionsZintsets_238((&(*result).declaredThings));
4769 	initIntSet__pureZcollectionsZintsets_238((&(*result).declaredProtos));
4770 	T4_ = NIM_NIL;
4771 	T4_ = (*result).cfilename; (*result).cfilename = copyStringRC1(filename);
4772 	if (T4_) nimGCunrefNoCycle(T4_);
4773 	T5_ = NIM_NIL;
4774 	T5_ = (*result).filename; (*result).filename = copyStringRC1(filename);
4775 	if (T5_) nimGCunrefNoCycle(T5_);
4776 	initTable__cgen_28191(((NI) 32), (&(*result).typeCache));
4777 	initTable__cgen_28191(((NI) 32), (&(*result).forwTypeCache));
4778 	asgnRef((void**) (&(*result).module), module);
4779 	initTable__cgen_28191(((NI) 32), (&(*result).typeInfoMarker));
4780 	initCountTable__cgen_28210(((NI) 32), (&(*result).sigConflicts));
4781 	asgnRef((void**) (&(*result).initProc), newProc__cgendata_278(((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL), result));
4782 	(*(*result).initProc).options = initProcOptions__cgen_28167(result);
4783 	asgnRef((void**) (&(*result).preInitProc), newProc__cgendata_278(((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL), result));
4784 	(*(*result).preInitProc).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 6)) & 7);
4785 	(*(*result).preInitProc).labels = ((NI) 100000);
4786 	initNodeTable__ast_4144((&(*result).dataCache));
4787 	if ((*result).typeStack) { nimGCunrefRC1((*result).typeStack); (*result).typeStack = NIM_NIL; }
4788 	asgnRef((void**) (&(*result).typeNodesName), getTempName__cgen_418(result));
4789 	asgnRef((void**) (&(*result).nimTypesName), getTempName__cgen_418(result));
4790 	{
4791 		if (!(((*module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0)) goto LA8_;
4792 		(*result).flags |= ((NU8)1)<<((((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 0)) & 7);
4793 		(*(*result).preInitProc).options &= ~(((NU32)1) << ((((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 17)) & 31));
4794 	}
4795 	LA8_: ;
4796 	{
4797 		NimStringDesc* T14_;
4798 		if (!(((*(*g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 6))&63U)))!=0)) goto LA12_;
4799 		T14_ = NIM_NIL;
4800 		T14_ = completeCfilePath__extccomp_713((*g).config, filename, NIM_TRUE);
4801 		ndiName = noschangeFileExt(T14_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_4));
4802 	}
4803 	goto LA10_;
4804 	LA12_: ;
4805 	{
4806 		ndiName = ((NimStringDesc*) NIM_NIL);
4807 	}
4808 	LA10_: ;
4809 	open__ndi_24((&(*result).ndi), ndiName, (*g).config);
4810 	return result;
4811 }
N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow *,rawNewModule__cgen_28272)4812 N_LIB_PRIVATE N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*, rawNewModule__cgen_28272)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
4813 	tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* result;
4814 	NimStringDesc* T1_;
4815 	result = NIM_NIL;
4816 	T1_ = NIM_NIL;
4817 	T1_ = toFullPath__msgs_538(conf, ((NI32) ((*module).position)));
4818 	result = rawNewModule__cgen_28179(g, module, T1_);
4819 	return result;
4820 }
N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow *,newModule__cgen_28277)4821 N_LIB_PRIVATE N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*, newModule__cgen_28277)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
4822 	tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* result;
4823 	result = NIM_NIL;
4824 	result = rawNewModule__cgen_28272(g, module, conf);
4825 	{
4826 		NI T3_;
4827 		T3_ = ((*g).modules ? (*g).modules->Sup.len : 0);
4828 		if (!(T3_ <= (*module).position)) goto LA4_;
4829 		asgnRef((void**) (&(*g).modules), (tySequence__SHVxAqOYtIy7teT1q4s0zQ*) setLengthSeqV2(&((*g).modules)->Sup, (&NTIseqLbmoduleT__SHVxAqOYtIy7teT1q4s0zQ_), ((NI) ((NI)((*module).position + ((NI) 1))))));
4830 	}
4831 	LA4_: ;
4832 	asgnRef((void**) (&(*g).modules->data[(*module).position]), result);
4833 	return result;
4834 }
N_NIMCALL(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w *,myOpen__cgen_28290)4835 N_LIB_PRIVATE N_NIMCALL(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*, myOpen__cgen_28290)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen) {
4836 	tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* result;
4837 	tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g;
4838 	tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* T6_;
4839 	result = NIM_NIL;
4840 	{
4841 		tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* T5_;
4842 		if (!((*graph).backend == ((RootObj*) NIM_NIL))) goto LA3_;
4843 		T5_ = NIM_NIL;
4844 		T5_ = newModuleList__cgendata_374(graph);
4845 		asgnRef((void**) (&(*graph).backend), &T5_->Sup);
4846 	}
4847 	LA3_: ;
4848 	g = (*((tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA**) (&((*graph).backend))));
4849 	T6_ = NIM_NIL;
4850 	T6_ = newModule__cgen_28277(g, module, (*graph).config);
4851 	result = &T6_->Sup;
4852 	asgnRef((void**) (&(*result).idgen), idgen);
4853 	{
4854 		NIM_BOOL T9_;
4855 		NimStringDesc* f;
4856 		NimStringDesc* T18_;
4857 		NimStringDesc* T19_;
4858 		T9_ = (NIM_BOOL)0;
4859 		T9_ = (((*(*graph).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 27))&63U)))!=0);
4860 		if (!(T9_)) goto LA10_;
4861 		T9_ = ((*g).generatedHeader == ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) NIM_NIL));
4862 		LA10_: ;
4863 		if (!T9_) goto LA11_;
4864 		{
4865 			if (!(((NI) 0) < ((*(*graph).config).headerFile ? (*(*graph).config).headerFile->Sup.len : 0))) goto LA15_;
4866 			f = (*(*graph).config).headerFile;
4867 		}
4868 		goto LA13_;
4869 		LA15_: ;
4870 		{
4871 			f = (*(*graph).config).projectFull;
4872 		}
4873 		LA13_: ;
4874 		T18_ = NIM_NIL;
4875 		T18_ = completeCfilePath__extccomp_713((*graph).config, f, NIM_TRUE);
4876 		T19_ = NIM_NIL;
4877 		T19_ = noschangeFileExt(T18_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_5));
4878 		asgnRef((void**) (&(*g).generatedHeader), rawNewModule__cgen_28179(g, module, T19_));
4879 		(*(*g).generatedHeader).flags |= ((NU8)1)<<((((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 3)) & 7);
4880 	}
4881 	LA11_: ;
4882 	return result;
4883 }
N_INLINE(NIM_BOOL,skipCodegen__passes_49)4884 static N_INLINE(NIM_BOOL, skipCodegen__passes_49)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
4885 	NIM_BOOL result;
4886 	result = (NIM_BOOL)0;
4887 	result = (((NI) 0) < (*config).errorCounter);
4888 	return result;
4889 }
N_NIMCALL(NIM_BOOL,hcrOn__cgen_42)4890 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hcrOn__cgen_42)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
4891 	NIM_BOOL result;
4892 	result = (NIM_BOOL)0;
4893 	result = hcrOn__options_569((*(*m).g).config);
4894 	return result;
4895 }
N_INLINE(NI,len__ast_3198)4896 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
4897 	NI result;
4898 	NI T1_;
4899 	result = (NI)0;
4900 	T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
4901 	result = T1_;
4902 	return result;
4903 }
N_INLINE(NI,safeLen__ast_3191)4904 static N_INLINE(NI, safeLen__ast_3191)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
4905 	NI result;
4906 	result = (NI)0;
4907 	{
4908 		if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 0) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
4909 		result = ((NI) 0);
4910 	}
4911 	goto LA1_;
4912 	LA3_: ;
4913 	{
4914 		result = len__ast_3198(n);
4915 	}
4916 	LA1_: ;
4917 	return result;
4918 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13462)4919 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13462)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
4920 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
4921 	result = NIM_NIL;
4922 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_6), args, argsLen_0);
4923 	return result;
4924 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13471)4925 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13471)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
4926 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
4927 	result = NIM_NIL;
4928 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_7), args, argsLen_0);
4929 	return result;
4930 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7505)4931 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7505)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
4932 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
4933 	result = NIM_NIL;
4934 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_8), args, argsLen_0);
4935 	return result;
4936 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13438)4937 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13438)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
4938 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
4939 	result = NIM_NIL;
4940 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_9), args, argsLen_0);
4941 	return result;
4942 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,blockBody__cgen_13435)4943 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, blockBody__cgen_13435)(tyObject_TBlock__GFhahvekTq3dDOkWyhchMA* b) {
4944 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
4945 	result = NIM_NIL;
4946 	result = (*b).sections[(((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0))- 0];
4947 	{
4948 		tyArray__JiWwrsTRC6xqNlGcBthSVA T5_;
4949 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
4950 		if (!(((NI16) 0) < (*b).frameLen)) goto LA3_;
4951 		nimZeroMem((void*)T5_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
4952 		T5_[0] = rope__ropes_115(((NI64) ((*b).frameLen)));
4953 		T6_ = NIM_NIL;
4954 		T6_ = percent___cgen_13438(T5_, 1);
4955 		add__ropes_159(&result, T6_);
4956 	}
4957 	LA3_: ;
4958 	add__ropes_159(&result, (*b).sections[(((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1))- 0]);
4959 	add__ropes_159(&result, (*b).sections[(((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2))- 0]);
4960 	return result;
4961 }
N_INLINE(tyObject_TBlock__GFhahvekTq3dDOkWyhchMA *,X5BX5D___cgendata_229)4962 static N_INLINE(tyObject_TBlock__GFhahvekTq3dDOkWyhchMA*, X5BX5D___cgendata_229)(tyObject_TBlock__GFhahvekTq3dDOkWyhchMA* s, NI sLen_0, NI i) {
4963 	tyObject_TBlock__GFhahvekTq3dDOkWyhchMA* result;
4964 	result = (tyObject_TBlock__GFhahvekTq3dDOkWyhchMA*)0;
4965 	result = (&s[(NI)(sLen_0 - i)]);
4966 	return result;
4967 }
N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA **,s__cgendata_225)4968 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**, s__cgendata_225)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg s) {
4969 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** result;
4970 	tyObject_TBlock__GFhahvekTq3dDOkWyhchMA* T1_;
4971 	result = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
4972 	T1_ = (tyObject_TBlock__GFhahvekTq3dDOkWyhchMA*)0;
4973 	T1_ = X5BX5D___cgendata_229((*p).blocks->data, ((*p).blocks ? (*p).blocks->Sup.len : 0), ((NI) 1));
4974 	result = &(*T1_).sections[(s)- 0];
4975 	return result;
4976 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,indentLine__cgen_280)4977 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, indentLine__cgen_280)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r) {
4978 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
4979 	result = NIM_NIL;
4980 	result = r;
4981 	{
4982 		NI i;
4983 		NI colontmp_;
4984 		NI T2_;
4985 		NI i_2;
4986 		i = (NI)0;
4987 		colontmp_ = (NI)0;
4988 		T2_ = ((*p).blocks ? (*p).blocks->Sup.len : 0);
4989 		colontmp_ = T2_;
4990 		i_2 = ((NI) 0);
4991 		{
4992 			while (1) {
4993 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
4994 				if (!(i_2 < colontmp_)) goto LA4;
4995 				i = i_2;
4996 				T5_ = NIM_NIL;
4997 				T5_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
4998 				prepend__ropes_265(&result, T5_);
4999 				i_2 += ((NI) 1);
5000 			} LA4: ;
5001 		}
5002 	}
5003 	return result;
5004 }
N_NIMCALL(void,endBlock__cgen_13443)5005 N_LIB_PRIVATE N_NIMCALL(void, endBlock__cgen_13443)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* blockEnd) {
5006 	NI topBlock;
5007 	NI T1_;
5008 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
5009 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T3_;
5010 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
5011 	T1_ = ((*p).blocks ? (*p).blocks->Sup.len : 0);
5012 	topBlock = (NI)(T1_ - ((NI) 1));
5013 	T2_ = NIM_NIL;
5014 	T2_ = blockBody__cgen_13435((&(*p).blocks->data[topBlock]));
5015 	add__ropes_159(&(*p).blocks->data[(NI)(topBlock - ((NI) 1))].sections[(((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2))- 0], T2_);
5016 	asgnRef((void**) (&(*p).blocks), (tySequence__oUyaggHmIX9bpJcMeoG6lpA*) setLengthSeqV2(&((*p).blocks)->Sup, (&NTIseqLtblockT__oUyaggHmIX9bpJcMeoG6lpA_), ((NI) (topBlock))));
5017 	T3_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
5018 	T3_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
5019 	T4_ = NIM_NIL;
5020 	T4_ = indentLine__cgen_280(p, blockEnd);
5021 	add__ropes_159(T3_, T4_);
5022 }
N_NIMCALL(void,endBlock__cgen_13210)5023 N_LIB_PRIVATE N_NIMCALL(void, endBlock__cgen_13210)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
5024 	NI topBlock;
5025 	NI T1_;
5026 	NI16 frameLen;
5027 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* blockEnd;
5028 	T1_ = ((*p).blocks ? (*p).blocks->Sup.len : 0);
5029 	topBlock = (NI)(T1_ - ((NI) 1));
5030 	frameLen = (*p).blocks->data[topBlock].frameLen;
5031 	blockEnd = NIM_NIL;
5032 	{
5033 		tyArray__JiWwrsTRC6xqNlGcBthSVA T6_;
5034 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
5035 		if (!(((NI16) 0) < frameLen)) goto LA4_;
5036 		nimZeroMem((void*)T6_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
5037 		T6_[0] = rope__ropes_115(((NI64) (frameLen)));
5038 		T7_ = NIM_NIL;
5039 		T7_ = percent___cgen_13462(T6_, 1);
5040 		add__ropes_159(&blockEnd, T7_);
5041 	}
5042 	LA4_: ;
5043 	{
5044 		tyArray__JiWwrsTRC6xqNlGcBthSVA T12_;
5045 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
5046 		if (!!(((*p).blocks->data[topBlock].label == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA10_;
5047 		nimZeroMem((void*)T12_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
5048 		T12_[0] = (*p).blocks->data[topBlock].label;
5049 		T13_ = NIM_NIL;
5050 		T13_ = percent___cgen_13471(T12_, 1);
5051 		add__ropes_159(&blockEnd, T13_);
5052 	}
5053 	goto LA8_;
5054 	LA10_: ;
5055 	{
5056 		tyArray__qTjAvTvKF9anytN1At69aJMQ T15_;
5057 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
5058 		nimZeroMem((void*)T15_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
5059 		T16_ = NIM_NIL;
5060 		T16_ = percent___cgen_7505(T15_, 0);
5061 		add__ropes_159(&blockEnd, T16_);
5062 	}
5063 	LA8_: ;
5064 	endBlock__cgen_13443(p, blockEnd);
5065 }
N_NIMCALL(NI,inExceptBlockLen__cgen_13154)5066 N_LIB_PRIVATE N_NIMCALL(NI, inExceptBlockLen__cgen_13154)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
5067 	NI result;
5068 	result = (NI)0;
5069 	{
5070 		tyTuple__FxkU4d1VDodDMc9ah6Mbagw* x;
5071 		NI i;
5072 		NI L;
5073 		NI T2_;
5074 		x = (tyTuple__FxkU4d1VDodDMc9ah6Mbagw*)0;
5075 		i = ((NI) 0);
5076 		T2_ = ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0);
5077 		L = T2_;
5078 		{
5079 			while (1) {
5080 				if (!(i < L)) goto LA4;
5081 				x = (&(*p).nestedTryStmts->data[i]);
5082 				{
5083 					if (!(*x).Field1) goto LA7_;
5084 					result += ((NI) 1);
5085 				}
5086 				LA7_: ;
5087 				i += ((NI) 1);
5088 			} LA4: ;
5089 		}
5090 	}
5091 	return result;
5092 }
N_NIMCALL(NI,startBlockInternal__cgen_13189)5093 N_LIB_PRIVATE N_NIMCALL(NI, startBlockInternal__cgen_13189)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
5094 	NI result;
5095 	NI T1_;
5096 	NI T2_;
5097 	NI T3_;
5098 	result = (NI)0;
5099 	(*p).labels += ((NI) 1);
5100 	T1_ = ((*p).blocks ? (*p).blocks->Sup.len : 0);
5101 	result = T1_;
5102 	asgnRef((void**) (&(*p).blocks), (tySequence__oUyaggHmIX9bpJcMeoG6lpA*) setLengthSeqV2(&((*p).blocks)->Sup, (&NTIseqLtblockT__oUyaggHmIX9bpJcMeoG6lpA_), ((NI) ((NI)(result + ((NI) 1))))));
5103 	(*p).blocks->data[result].id = ((NI) ((*p).labels));
5104 	T2_ = ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0);
5105 	(*p).blocks->data[result].nestedTryStmts = ((NI16) (T2_));
5106 	T3_ = (NI)0;
5107 	T3_ = inExceptBlockLen__cgen_13154(p);
5108 	(*p).blocks->data[result].nestedExceptStmts = ((NI16) (T3_));
5109 	return result;
5110 }
N_NIMCALL(void,fillLoc__cgen_65)5111 N_LIB_PRIVATE N_NIMCALL(void, fillLoc__cgen_65)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a, tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r, tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw s) {
5112 	{
5113 		if (!((*a).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA3_;
5114 		(*a).k = k;
5115 		unsureAsgnRef((void**) (&(*a).lode), lode);
5116 		(*a).storage = s;
5117 		{
5118 			if (!((*a).r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA7_;
5119 			unsureAsgnRef((void**) (&(*a).r), r);
5120 		}
5121 		LA7_: ;
5122 	}
5123 	LA3_: ;
5124 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,mangleName__cgen_628)5125 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, mangleName__cgen_628)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
5126 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
5127 	result = NIM_NIL;
5128 	result = (*s).loc.r;
5129 	{
5130 		NimStringDesc* T5_;
5131 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
5132 		if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA3_;
5133 		T5_ = NIM_NIL;
5134 		T5_ = mangle__ccgutils_112((*(*s).name).s);
5135 		result = rope__ropes_109(T5_);
5136 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_14));
5137 		add__ropes_159(&result, (*(*(*m).g).graph).ifaces->data[(*s).Sup.itemId.module].uniqueName);
5138 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
5139 		T6_ = NIM_NIL;
5140 		T6_ = rope__ropes_115(((NI64) ((*s).Sup.itemId.item)));
5141 		add__ropes_159(&result, T6_);
5142 		{
5143 			NIM_BOOL T9_;
5144 			NimStringDesc* T12_;
5145 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
5146 			T9_ = (NIM_BOOL)0;
5147 			T9_ = hcrOn__cgen_42(m);
5148 			if (!T9_) goto LA10_;
5149 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
5150 			T12_ = NIM_NIL;
5151 			T12_ = mangle__ccgutils_112((*(*(*m).module).name).s);
5152 			T13_ = NIM_NIL;
5153 			T13_ = idOrSig__sighashes_2057(s, T12_, (&(*m).sigConflicts));
5154 			add__ropes_159(&result, T13_);
5155 		}
5156 		LA10_: ;
5157 		asgnRef((void**) (&(*s).loc.r), result);
5158 		{
5159 			NI T18_;
5160 			if (!(*m).ndi.enabled) goto LA16_;
5161 			asgnRef((void**) (&(*m).ndi.syms), (tySequence__eHqUwlHGGaPw0TDPDeL79cQ*) incrSeqV3((TGenericSeq*)((*m).ndi.syms), (&NTIseqLpsymT__eHqUwlHGGaPw0TDPDeL79cQ_)));
5162 			T18_ = (*m).ndi.syms->Sup.len++;
5163 			asgnRef((void**) (&(*m).ndi.syms->data[T18_]), s);
5164 		}
5165 		LA16_: ;
5166 	}
5167 	LA3_: ;
5168 	return result;
5169 }
N_NIMCALL(void,fillProcLoc__cgen_11428)5170 N_LIB_PRIVATE N_NIMCALL(void, fillProcLoc__cgen_11428)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
5171 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
5172 	sym = (*n)._kind_4.sym;
5173 	{
5174 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
5175 		if (!((*sym).loc.k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA3_;
5176 		T5_ = NIM_NIL;
5177 		T5_ = mangleName__cgen_628(m, sym);
5178 		fillLoc__cgen_65((&(*sym).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 7), n, T5_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
5179 	}
5180 	LA3_: ;
5181 }
N_NIMCALL(void,useHeader__cgen_105)5182 N_LIB_PRIVATE N_NIMCALL(void, useHeader__cgen_105)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
5183 	{
5184 		NimStringDesc* str;
5185 		if (!(((*sym).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 6))&15U)))!=0)) goto LA3_;
5186 		str = getStr__ast_4610((*(*sym).annex).path);
5187 		includeHeader__cgendata_214(m, str);
5188 	}
5189 	LA3_: ;
5190 }
N_NIMCALL(void,cgFormatValue__cgen_145)5191 N_LIB_PRIVATE N_NIMCALL(void, cgFormatValue__cgen_145)(NimStringDesc** result, NimStringDesc* value) {
5192 	unsureAsgnRef((void**) (&(*result)), resizeString((*result), (value ? value->Sup.len : 0) + 0));
5193 appendString((*result), value);
5194 }
N_NIMCALL(NIM_BOOL,isReloadable__cgen_6706)5195 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isReloadable__cgen_6706)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc) {
5196 	NIM_BOOL result;
5197 	NIM_BOOL T1_;
5198 {	result = (NIM_BOOL)0;
5199 	T1_ = (NIM_BOOL)0;
5200 	T1_ = hcrOn__cgen_42(m);
5201 	if (!(T1_)) goto LA2_;
5202 	T1_ = !((((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 38))&63U)))!=0));
5203 	LA2_: ;
5204 	result = T1_;
5205 	goto BeforeRet_;
5206 	}BeforeRet_: ;
5207 	return result;
5208 }
N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,pop__ropes_180)5209 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, pop__ropes_180)(tySequence__WwUFq9cJ2xKRlsAWVEHyPRg** s) {
5210 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
5211 	NI L;
5212 	NI T1_;
5213 	result = NIM_NIL;
5214 	T1_ = ((*s) ? (*s)->Sup.len : 0);
5215 	L = (NI)(T1_ - ((NI) 1));
5216 	result = (*s)->data[L];
5217 	unsureAsgnRef((void**) (&(*s)), (tySequence__WwUFq9cJ2xKRlsAWVEHyPRg*) setLengthSeqV2(&((*s))->Sup, (&NTIseqLropeT__WwUFq9cJ2xKRlsAWVEHyPRg_), ((NI) (L))));
5218 	return result;
5219 }
N_NIMCALL(void,cgFormatValue__cgen_141)5220 N_LIB_PRIVATE N_NIMCALL(void, cgFormatValue__cgen_141)(NimStringDesc** result, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* value) {
5221 	{
5222 		NimStringDesc* str;
5223 		str = NIM_NIL;
5224 		{
5225 			tySequence__WwUFq9cJ2xKRlsAWVEHyPRg* stack;
5226 			if (!!((value == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA4_;
5227 			stack = (tySequence__WwUFq9cJ2xKRlsAWVEHyPRg*) newSeq((&NTIseqLropeT__WwUFq9cJ2xKRlsAWVEHyPRg_), 1);
5228 			asgnRef((void**) (&stack->data[0]), value);
5229 			{
5230 				while (1) {
5231 					NI T8_;
5232 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* it;
5233 					T8_ = (stack ? stack->Sup.len : 0);
5234 					if (!(((NI) 0) < T8_)) goto LA7;
5235 					it = pop__ropes_180((&stack));
5236 					{
5237 						while (1) {
5238 							NI T11_;
5239 							if (!!(((*it).left == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA10;
5240 							stack = (tySequence__WwUFq9cJ2xKRlsAWVEHyPRg*) incrSeqV3((TGenericSeq*)(stack), (&NTIseqLropeT__WwUFq9cJ2xKRlsAWVEHyPRg_));
5241 							T11_ = stack->Sup.len++;
5242 							asgnRef((void**) (&stack->data[T11_]), (*it).right);
5243 							it = (*it).left;
5244 						} LA10: ;
5245 					}
5246 					str = (*it).data;
5247 					unsureAsgnRef((void**) (&(*result)), resizeString((*result), (str ? str->Sup.len : 0) + 0));
5248 appendString((*result), str);
5249 				} LA7: ;
5250 			}
5251 		}
5252 		LA4_: ;
5253 	}
5254 }
N_NIMCALL(NIM_BOOL,isImportedCppType__cgen_1294)5255 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isImportedCppType__cgen_1294)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
5256 	NIM_BOOL result;
5257 	tyObject_TType__facALICuu8zUj0hjvbTLFg* x;
5258 	NIM_BOOL T1_;
5259 	NIM_BOOL T2_;
5260 	NIM_BOOL T5_;
5261 	result = (NIM_BOOL)0;
5262 	x = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_19);
5263 	T1_ = (NIM_BOOL)0;
5264 	T2_ = (NIM_BOOL)0;
5265 	T2_ = !(((*t).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
5266 	if (!(T2_)) goto LA3_;
5267 	T2_ = (((*(*t).sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
5268 	LA3_: ;
5269 	T1_ = T2_;
5270 	if (T1_) goto LA4_;
5271 	T5_ = (NIM_BOOL)0;
5272 	T5_ = !(((*x).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
5273 	if (!(T5_)) goto LA6_;
5274 	T5_ = (((*(*x).sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
5275 	LA6_: ;
5276 	T1_ = T5_;
5277 	LA4_: ;
5278 	result = T1_;
5279 	return result;
5280 }
N_INLINE(void,pushSafePoint)5281 static N_INLINE(void, pushSafePoint)(TSafePoint* s) {
5282 	(*s).prev = excHandler__system_2565;
5283 	excHandler__system_2565 = s;
5284 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,typeNameOrLiteral__cgen_1785)5285 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, typeNameOrLiteral__cgen_1785)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, NimStringDesc* literal) {
5286 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
5287 	result = NIM_NIL;
5288 	{
5289 		NIM_BOOL T3_;
5290 		NIM_BOOL T4_;
5291 		T3_ = (NIM_BOOL)0;
5292 		T4_ = (NIM_BOOL)0;
5293 		T4_ = !(((*t).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
5294 		if (!(T4_)) goto LA5_;
5295 		T4_ = (((*(*t).sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0);
5296 		LA5_: ;
5297 		T3_ = T4_;
5298 		if (!(T3_)) goto LA6_;
5299 		T3_ = ((*(*t).sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0));
5300 		LA6_: ;
5301 		if (!T3_) goto LA7_;
5302 		useHeader__cgen_105(m, (*t).sym);
5303 		result = (*(*t).sym).loc.r;
5304 	}
5305 	goto LA1_;
5306 	LA7_: ;
5307 	{
5308 		result = rope__ropes_109(literal);
5309 	}
5310 	LA1_: ;
5311 	return result;
5312 }
N_NIMCALL(NI,detectStrVersion__cgen_472)5313 N_LIB_PRIVATE N_NIMCALL(NI, detectStrVersion__cgen_472)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
5314 	NI result;
5315 	result = (NI)0;
5316 	{
5317 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* coreX60gensym66_;
5318 		if (!((*(*m).g).strVersion == ((NI) 0))) goto LA3_;
5319 		coreX60gensym66_ = getCompilerProc__magicsys_145((*(*m).g).graph, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_26));
5320 		{
5321 			NIM_BOOL T7_;
5322 			T7_ = (NIM_BOOL)0;
5323 			T7_ = (coreX60gensym66_ == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
5324 			if (T7_) goto LA8_;
5325 			T7_ = !(((*coreX60gensym66_).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 10)));
5326 			LA8_: ;
5327 			if (!T7_) goto LA9_;
5328 			(*(*m).g).strVersion = ((NI) 1);
5329 		}
5330 		goto LA5_;
5331 		LA9_: ;
5332 		{
5333 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T12_;
5334 			T12_ = getInt__ast_4592((*coreX60gensym66_).ast);
5335 			(*(*m).g).strVersion = toInt__int495056_170(T12_);
5336 		}
5337 		LA5_: ;
5338 	}
5339 	LA3_: ;
5340 	result = (*(*m).g).strVersion;
5341 	return result;
5342 }
N_NIMCALL(NIM_BOOL,isActivated__cgen_26637)5343 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isActivated__cgen_26637)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc) {
5344 	NIM_BOOL result;
5345 	result = (NIM_BOOL)0;
5346 	result = !(((*prc).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
5347 	return result;
5348 }
N_NIMCALL(void,addForwardedProc__cgen_48)5349 N_LIB_PRIVATE N_NIMCALL(void, addForwardedProc__cgen_48)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc) {
5350 	NI T1_;
5351 	asgnRef((void**) (&(*(*m).g).forwardedProcs), (tySequence__eHqUwlHGGaPw0TDPDeL79cQ*) incrSeqV3((TGenericSeq*)((*(*m).g).forwardedProcs), (&NTIseqLpsymT__eHqUwlHGGaPw0TDPDeL79cQ_)));
5352 	T1_ = (*(*m).g).forwardedProcs->Sup.len++;
5353 	asgnRef((void**) (&(*(*m).g).forwardedProcs->data[T1_]), prc);
5354 }
N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow *,findPendingModule__cgen_55)5355 N_LIB_PRIVATE N_NIMCALL(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*, findPendingModule__cgen_55)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
5356 	tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* result;
5357 	NI32 ms;
5358 	result = NIM_NIL;
5359 	ms = (*s).Sup.itemId.module;
5360 	result = (*(*m).g).modules->data[ms];
5361 	return result;
5362 }
N_NIMCALL(NIM_BOOL,isNonReloadable__cgen_6714)5363 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isNonReloadable__cgen_6714)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc) {
5364 	NIM_BOOL result;
5365 	NIM_BOOL T1_;
5366 {	result = (NIM_BOOL)0;
5367 	T1_ = (NIM_BOOL)0;
5368 	T1_ = hcrOn__cgen_42(m);
5369 	if (!(T1_)) goto LA2_;
5370 	T1_ = (((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 38))&63U)))!=0);
5371 	LA2_: ;
5372 	result = T1_;
5373 	goto BeforeRet_;
5374 	}BeforeRet_: ;
5375 	return result;
5376 }
N_NIMCALL(tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w,mapSetType__cgen_1205)5377 N_LIB_PRIVATE N_NIMCALL(tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w, mapSetType__cgen_1205)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
5378 	tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w result;
5379 	NI64 T1_;
5380 	result = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
5381 	T1_ = (NI64)0;
5382 	T1_ = getSize__types_3327(conf, typ);
5383 	switch (((NI) (T1_))) {
5384 	case ((NI) 1):
5385 	{
5386 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 4);
5387 	}
5388 	break;
5389 	case ((NI) 2):
5390 	{
5391 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 5);
5392 	}
5393 	break;
5394 	case ((NI) 4):
5395 	{
5396 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 6);
5397 	}
5398 	break;
5399 	case ((NI) 8):
5400 	{
5401 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 7);
5402 	}
5403 	break;
5404 	default:
5405 	{
5406 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17);
5407 	}
5408 	break;
5409 	}
5410 	return result;
5411 }
N_NIMCALL(tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w,mapType__cgen_1209)5412 N_LIB_PRIVATE N_NIMCALL(tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w, mapType__cgen_1209)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind) {
5413 	tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w result;
5414 {	result = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
5415 	switch ((*typ).kind) {
5416 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 0):
5417 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 7):
5418 	{
5419 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 0);
5420 	}
5421 	break;
5422 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
5423 	{
5424 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 2);
5425 	}
5426 	break;
5427 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
5428 	{
5429 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 1);
5430 	}
5431 	break;
5432 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 5):
5433 	{
5434 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 20);
5435 	}
5436 	break;
5437 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
5438 	{
5439 		result = mapSetType__cgen_1205(conf, typ);
5440 	}
5441 	break;
5442 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
5443 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
5444 	{
5445 		{
5446 			if (!(kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3))) goto LA9_;
5447 			result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17);
5448 		}
5449 		goto LA7_;
5450 		LA9_: ;
5451 		{
5452 			result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 19);
5453 		}
5454 		LA7_: ;
5455 	}
5456 	break;
5457 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
5458 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 49):
5459 	{
5460 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17);
5461 	}
5462 	break;
5463 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
5464 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
5465 	{
5466 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 19);
5467 	}
5468 	break;
5469 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 52) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 53):
5470 	{
5471 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T19_;
5472 		{
5473 			if (!!((((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 10))&63U)))!=0))) goto LA17_;
5474 			failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_31));
5475 		}
5476 		LA17_: ;
5477 		T19_ = NIM_NIL;
5478 		T19_ = lastSon__ast_3743(typ);
5479 		result = mapType__cgen_1209(conf, T19_, kind);
5480 		goto BeforeRet_;
5481 	}
5482 	break;
5483 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 10):
5484 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11):
5485 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 12):
5486 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 13):
5487 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 15):
5488 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8):
5489 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 4):
5490 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46):
5491 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 55):
5492 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 45):
5493 	{
5494 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T21_;
5495 		T21_ = NIM_NIL;
5496 		T21_ = lastSon__ast_3743(typ);
5497 		result = mapType__cgen_1209(conf, T21_, kind);
5498 	}
5499 	break;
5500 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
5501 	{
5502 		{
5503 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T25_;
5504 			NIM_BOOL T26_;
5505 			T25_ = firstOrd__types_1353(conf, typ);
5506 			T26_ = (NIM_BOOL)0;
5507 			T26_ = lt___int495056_721(T25_, IL64(0));
5508 			if (!T26_) goto LA27_;
5509 			result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 6);
5510 		}
5511 		goto LA23_;
5512 		LA27_: ;
5513 		{
5514 			NI64 T30_;
5515 			T30_ = (NI64)0;
5516 			T30_ = getSize__types_3327(conf, typ);
5517 			switch (((NI) (T30_))) {
5518 			case ((NI) 1):
5519 			{
5520 				result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 13);
5521 			}
5522 			break;
5523 			case ((NI) 2):
5524 			{
5525 				result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 14);
5526 			}
5527 			break;
5528 			case ((NI) 4):
5529 			{
5530 				result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 6);
5531 			}
5532 			break;
5533 			case ((NI) 8):
5534 			{
5535 				result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 7);
5536 			}
5537 			break;
5538 			default:
5539 			{
5540 				result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 6);
5541 			}
5542 			break;
5543 			}
5544 		}
5545 		LA23_: ;
5546 	}
5547 	break;
5548 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20):
5549 	{
5550 		result = mapType__cgen_1209(conf, (*typ).sons->data[((NI) 0)], kind);
5551 	}
5552 	break;
5553 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
5554 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23):
5555 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47):
5556 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
5557 	{
5558 		tyObject_TType__facALICuu8zUj0hjvbTLFg* base;
5559 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T38_;
5560 		T38_ = NIM_NIL;
5561 		T38_ = lastSon__ast_3743(typ);
5562 		base = skipTypes__ast_3735(T38_, TM__MQdRN7fpbG7rPm4JpVVAhA_32);
5563 		switch ((*base).kind) {
5564 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
5565 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
5566 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
5567 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 49):
5568 		{
5569 			result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 18);
5570 		}
5571 		break;
5572 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
5573 		{
5574 			{
5575 				tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T43_;
5576 				T43_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
5577 				T43_ = mapSetType__cgen_1205(conf, base);
5578 				if (!(T43_ == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17))) goto LA44_;
5579 				result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 18);
5580 			}
5581 			goto LA41_;
5582 			LA44_: ;
5583 			{
5584 				result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 20);
5585 			}
5586 			LA41_: ;
5587 		}
5588 		break;
5589 		default:
5590 		{
5591 			result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 20);
5592 		}
5593 		break;
5594 		}
5595 	}
5596 	break;
5597 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26):
5598 	{
5599 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 20);
5600 	}
5601 	break;
5602 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
5603 	{
5604 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 22);
5605 	}
5606 	break;
5607 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25):
5608 	{
5609 		{
5610 			if (!!(((*typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9)))) goto LA53_;
5611 			result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 23);
5612 		}
5613 		goto LA51_;
5614 		LA53_: ;
5615 		{
5616 			result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 19);
5617 		}
5618 		LA51_: ;
5619 	}
5620 	break;
5621 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
5622 	{
5623 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 21);
5624 	}
5625 	break;
5626 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
5627 	{
5628 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 24);
5629 	}
5630 	break;
5631 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
5632 	{
5633 		result = ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) ((NI)((NI)((*typ).kind - ((NI) 31)) + ((NI) 3))));
5634 	}
5635 	break;
5636 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60):
5637 	{
5638 		{
5639 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T64_;
5640 			if (!!(((*typ).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA62_;
5641 			T64_ = NIM_NIL;
5642 			T64_ = lastSon__ast_3743(typ);
5643 			result = mapType__cgen_1209(conf, T64_, kind);
5644 		}
5645 		goto LA60_;
5646 		LA62_: ;
5647 		{
5648 			{
5649 				NimStringDesc* T70_;
5650 				if (!NIM_TRUE) goto LA68_;
5651 				T70_ = NIM_NIL;
5652 				T70_ = rawNewString((reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 39);
5653 appendString(T70_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_33));
5654 appendString(T70_, reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
5655 				failedAssertImpl__systemZassertions_56(T70_);
5656 			}
5657 			LA68_: ;
5658 		}
5659 		LA60_: ;
5660 	}
5661 	break;
5662 	default:
5663 	{
5664 		{
5665 			NimStringDesc* T76_;
5666 			if (!NIM_TRUE) goto LA74_;
5667 			T76_ = NIM_NIL;
5668 			T76_ = rawNewString((reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 39);
5669 appendString(T76_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_34));
5670 appendString(T76_, reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
5671 			failedAssertImpl__systemZassertions_56(T76_);
5672 		}
5673 		LA74_: ;
5674 	}
5675 	break;
5676 	}
5677 	}BeforeRet_: ;
5678 	return result;
5679 }
N_INLINE(NIM_BOOL,isObjLackingTypeField__cgen_1319)5680 static N_INLINE(NIM_BOOL, isObjLackingTypeField__cgen_1319)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
5681 	NIM_BOOL result;
5682 	NIM_BOOL T1_;
5683 	NIM_BOOL T3_;
5684 	NIM_BOOL T4_;
5685 	result = (NIM_BOOL)0;
5686 	T1_ = (NIM_BOOL)0;
5687 	T1_ = ((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
5688 	if (!(T1_)) goto LA2_;
5689 	T3_ = (NIM_BOOL)0;
5690 	T4_ = (NIM_BOOL)0;
5691 	T4_ = (((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 2))&63U)))!=0);
5692 	if (!(T4_)) goto LA5_;
5693 	T4_ = ((*typ).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
5694 	LA5_: ;
5695 	T3_ = T4_;
5696 	if (T3_) goto LA6_;
5697 	T3_ = isPureObject__types_132(typ);
5698 	LA6_: ;
5699 	T1_ = T3_;
5700 	LA2_: ;
5701 	result = T1_;
5702 	return result;
5703 }
N_NIMCALL(NIM_BOOL,isInvalidReturnType__cgen_1335)5704 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInvalidReturnType__cgen_1335)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* rettype) {
5705 	NIM_BOOL result;
5706 {	result = (NIM_BOOL)0;
5707 	{
5708 		NIM_BOOL T3_;
5709 		NI64 T5_;
5710 		T3_ = (NIM_BOOL)0;
5711 		T3_ = (rettype == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
5712 		if (T3_) goto LA4_;
5713 		T5_ = (NI64)0;
5714 		T5_ = getSize__types_3327(conf, rettype);
5715 		T3_ = (((NI64) ((NI)((*conf).target.floatSize * ((NI) 3)))) < T5_);
5716 		LA4_: ;
5717 		if (!T3_) goto LA6_;
5718 		result = NIM_TRUE;
5719 	}
5720 	goto LA1_;
5721 	LA6_: ;
5722 	{
5723 		tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T9_;
5724 		T9_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
5725 		T9_ = mapType__cgen_1209(conf, rettype, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11));
5726 		switch (T9_) {
5727 		case ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17):
5728 		{
5729 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T11_;
5730 			T11_ = NIM_NIL;
5731 			T11_ = skipTypes__ast_3735(rettype, TM__MQdRN7fpbG7rPm4JpVVAhA_32);
5732 			result = !(((*T11_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*T11_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47) || (*T11_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*T11_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21)));
5733 		}
5734 		break;
5735 		case ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 19):
5736 		{
5737 			tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
5738 			NIM_BOOL T19_;
5739 			NIM_BOOL T21_;
5740 			NIM_BOOL T23_;
5741 			t = skipTypes__ast_3735(rettype, TM__MQdRN7fpbG7rPm4JpVVAhA_32);
5742 			{
5743 				NIM_BOOL T15_;
5744 				T15_ = (NIM_BOOL)0;
5745 				T15_ = isImportedCppType__cgen_1294(rettype);
5746 				if (T15_) goto LA16_;
5747 				T15_ = isImportedCppType__cgen_1294(t);
5748 				LA16_: ;
5749 				if (!T15_) goto LA17_;
5750 				result = NIM_FALSE;
5751 				goto BeforeRet_;
5752 			}
5753 			LA17_: ;
5754 			T19_ = (NIM_BOOL)0;
5755 			T19_ = containsGarbageCollectedRef__types_612(t);
5756 			if (T19_) goto LA20_;
5757 			T21_ = (NIM_BOOL)0;
5758 			T21_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
5759 			if (!(T21_)) goto LA22_;
5760 			T23_ = (NIM_BOOL)0;
5761 			T23_ = isObjLackingTypeField__cgen_1319(t);
5762 			T21_ = !(T23_);
5763 			LA22_: ;
5764 			T19_ = T21_;
5765 			LA20_: ;
5766 			result = T19_;
5767 		}
5768 		break;
5769 		default:
5770 		{
5771 			result = NIM_FALSE;
5772 		}
5773 		break;
5774 		}
5775 	}
5776 	LA1_: ;
5777 	}BeforeRet_: ;
5778 	return result;
5779 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3494)5780 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3494)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
5781 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
5782 	result = NIM_NIL;
5783 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_24), args, argsLen_0);
5784 	return result;
5785 }
N_INLINE(NIM_BOOL,isCompileTimeOnly__types_3519)5786 static N_INLINE(NIM_BOOL, isCompileTimeOnly__types_3519)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
5787 	NIM_BOOL result;
5788 	result = (NIM_BOOL)0;
5789 	result = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60));
5790 	return result;
5791 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3519)5792 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3519)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
5793 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
5794 	result = NIM_NIL;
5795 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37), args, argsLen_0);
5796 	return result;
5797 }
N_NIMCALL(NIM_BOOL,isKeyword__cgen_618)5798 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isKeyword__cgen_618)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* w) {
5799 	NIM_BOOL result;
5800 {	result = (NIM_BOOL)0;
5801 	switch ((*w).id) {
5802 	case ((NI) 226) ... ((NI) 291):
5803 	case ((NI) 4) ... ((NI) 66):
5804 	case ((NI) 147):
5805 	{
5806 		result = NIM_TRUE;
5807 		goto BeforeRet_;
5808 	}
5809 	break;
5810 	default:
5811 	{
5812 		result = NIM_FALSE;
5813 		goto BeforeRet_;
5814 	}
5815 	break;
5816 	}
5817 	}BeforeRet_: ;
5818 	return result;
5819 }
N_INLINE(NIM_BOOL,isFilled__pureZcollectionsZsets_38)5820 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZsets_38)(NI hcode) {
5821 	NIM_BOOL result;
5822 	result = (NIM_BOOL)0;
5823 	result = !((hcode == ((NI) 0)));
5824 	return result;
5825 }
N_INLINE(int,nimCmpMem)5826 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
5827 	int result;
5828 	result = (int)0;
5829 	result = memcmp(a, b, ((size_t) (size)));
5830 	return result;
5831 }
N_INLINE(NIM_BOOL,equalMem__system_1735)5832 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
5833 	NIM_BOOL result;
5834 	int T1_;
5835 	result = (NIM_BOOL)0;
5836 	T1_ = (int)0;
5837 	T1_ = nimCmpMem(a, b, size);
5838 	result = (T1_ == ((NI32) 0));
5839 	return result;
5840 }
N_INLINE(NIM_BOOL,eqStrings)5841 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
5842 	NIM_BOOL result;
5843 	NI alen;
5844 	NI blen;
5845 {	result = (NIM_BOOL)0;
5846 	alen = (a ? a->Sup.len : 0);
5847 	blen = (b ? b->Sup.len : 0);
5848 	{
5849 		if (!(alen == blen)) goto LA3_;
5850 		{
5851 			if (!(alen == ((NI) 0))) goto LA7_;
5852 			result = NIM_TRUE;
5853 			goto BeforeRet_;
5854 		}
5855 		LA7_: ;
5856 		result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
5857 		goto BeforeRet_;
5858 	}
5859 	LA3_: ;
5860 	}BeforeRet_: ;
5861 	return result;
5862 }
N_INLINE(NI,nextTry__pureZcollectionsZsets_41)5863 static N_INLINE(NI, nextTry__pureZcollectionsZsets_41)(NI h, NI maxHash) {
5864 	NI result;
5865 	result = (NI)0;
5866 	result = (NI)((NI)(h + ((NI) 1)) & maxHash);
5867 	return result;
5868 }
N_INLINE(NI,rawGet__options_2608)5869 static N_INLINE(NI, rawGet__options_2608)(tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg t, NimStringDesc* key, NI* hc) {
5870 	NI result;
5871 	NI h;
5872 	NI T10_;
5873 {	result = (NI)0;
5874 	(*hc) = hash__pureZhashes_279(key);
5875 	{
5876 		if (!((*hc) == ((NI) 0))) goto LA3_;
5877 		(*hc) = ((NI) 314159265);
5878 	}
5879 	LA3_: ;
5880 	{
5881 		NI T7_;
5882 		T7_ = (t.data ? t.data->Sup.len : 0);
5883 		if (!(T7_ == ((NI) 0))) goto LA8_;
5884 		result = ((NI) -1);
5885 		goto BeforeRet_;
5886 	}
5887 	LA8_: ;
5888 	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
5889 	h = (NI)((*hc) & T10_);
5890 	{
5891 		while (1) {
5892 			NIM_BOOL T13_;
5893 			NI T20_;
5894 			T13_ = (NIM_BOOL)0;
5895 			T13_ = isFilled__pureZcollectionsZsets_38(t.data->data[h].Field0);
5896 			if (!T13_) goto LA12;
5897 			{
5898 				NIM_BOOL T16_;
5899 				T16_ = (NIM_BOOL)0;
5900 				T16_ = (t.data->data[h].Field0 == (*hc));
5901 				if (!(T16_)) goto LA17_;
5902 				T16_ = eqStrings(t.data->data[h].Field1, key);
5903 				LA17_: ;
5904 				if (!T16_) goto LA18_;
5905 				result = h;
5906 				goto BeforeRet_;
5907 			}
5908 			LA18_: ;
5909 			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
5910 			h = nextTry__pureZcollectionsZsets_41(h, T20_);
5911 		} LA12: ;
5912 	}
5913 	result = (NI)(((NI) -1) - h);
5914 	}BeforeRet_: ;
5915 	return result;
5916 }
N_NIMCALL(NIM_BOOL,contains__cgen_702)5917 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__cgen_702)(tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg s, NimStringDesc* key) {
5918 	NIM_BOOL result;
5919 	NI hc;
5920 	NI index;
5921 	result = (NIM_BOOL)0;
5922 	hc = (NI)0;
5923 	index = rawGet__options_2608(s, key, (&hc));
5924 	result = (((NI) 0) <= index);
5925 	return result;
5926 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,mangleParamName__cgen_640)5927 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, mangleParamName__cgen_640)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
5928 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
5929 	result = NIM_NIL;
5930 	result = (*s).loc.r;
5931 	{
5932 		NimStringDesc* res;
5933 		if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA3_;
5934 		res = mangle__ccgutils_112((*(*s).name).s);
5935 		{
5936 			NIM_BOOL T7_;
5937 			NIM_BOOL T8_;
5938 			T7_ = (NIM_BOOL)0;
5939 			T8_ = (NIM_BOOL)0;
5940 			T8_ = hcrOn__cgen_42(m);
5941 			if (T8_) goto LA9_;
5942 			T8_ = isKeyword__cgen_618((*s).name);
5943 			LA9_: ;
5944 			T7_ = T8_;
5945 			if (T7_) goto LA10_;
5946 			T7_ = contains__cgen_702((*(*(*m).g).config).cppDefines, res);
5947 			LA10_: ;
5948 			if (!T7_) goto LA11_;
5949 			res = resizeString(res, 2);
5950 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_38));
5951 		}
5952 		LA11_: ;
5953 		result = rope__ropes_109(res);
5954 		asgnRef((void**) (&(*s).loc.r), result);
5955 		{
5956 			NI T17_;
5957 			if (!(*m).ndi.enabled) goto LA15_;
5958 			asgnRef((void**) (&(*m).ndi.syms), (tySequence__eHqUwlHGGaPw0TDPDeL79cQ*) incrSeqV3((TGenericSeq*)((*m).ndi.syms), (&NTIseqLpsymT__eHqUwlHGGaPw0TDPDeL79cQ_)));
5959 			T17_ = (*m).ndi.syms->Sup.len++;
5960 			asgnRef((void**) (&(*m).ndi.syms->data[T17_]), s);
5961 		}
5962 		LA15_: ;
5963 	}
5964 	LA3_: ;
5965 	return result;
5966 }
N_NIMCALL(tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw,paramStorageLoc__cgen_3473)5967 N_LIB_PRIVATE N_NIMCALL(tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw, paramStorageLoc__cgen_3473)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param) {
5968 	tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw result;
5969 	result = (tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw)0;
5970 	{
5971 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T3_;
5972 		T3_ = NIM_NIL;
5973 		T3_ = skipTypes__ast_3735((*param).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_39);
5974 		if (!!(((*T3_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16) || (*T3_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27) || (*T3_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48)))) goto LA4_;
5975 		result = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2);
5976 	}
5977 	goto LA1_;
5978 	LA4_: ;
5979 	{
5980 		result = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0);
5981 	}
5982 	LA1_: ;
5983 	return result;
5984 }
N_INLINE(NIM_BOOL,isFilled__pureZcollectionsZtables_31)5985 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode) {
5986 	NIM_BOOL result;
5987 	result = (NIM_BOOL)0;
5988 	result = !((hcode == ((NI) 0)));
5989 	return result;
5990 }
N_INLINE(NI,nextTry__pureZcollectionsZtables_34)5991 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash) {
5992 	NI result;
5993 	result = (NI)0;
5994 	result = (NI)((NI)(h + ((NI) 1)) & maxHash);
5995 	return result;
5996 }
N_INLINE(NI,rawGet__cgen_1432)5997 static N_INLINE(NI, rawGet__cgen_1432)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI* hc) {
5998 	NI result;
5999 	NI h;
6000 	NI T10_;
6001 {	result = (NI)0;
6002 	(*hc) = hash__modulegraphs_8963(key);
6003 	{
6004 		if (!((*hc) == ((NI) 0))) goto LA3_;
6005 		(*hc) = ((NI) 314159265);
6006 	}
6007 	LA3_: ;
6008 	{
6009 		NI T7_;
6010 		T7_ = (t.data ? t.data->Sup.len : 0);
6011 		if (!(T7_ == ((NI) 0))) goto LA8_;
6012 		result = ((NI) -1);
6013 		goto BeforeRet_;
6014 	}
6015 	LA8_: ;
6016 	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
6017 	h = (NI)((*hc) & T10_);
6018 	{
6019 		while (1) {
6020 			NIM_BOOL T13_;
6021 			NI T20_;
6022 			T13_ = (NIM_BOOL)0;
6023 			T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
6024 			if (!T13_) goto LA12;
6025 			{
6026 				NIM_BOOL T16_;
6027 				T16_ = (NIM_BOOL)0;
6028 				T16_ = (t.data->data[h].Field0 == (*hc));
6029 				if (!(T16_)) goto LA17_;
6030 				T16_ = eqeq___modulegraphs_8959(t.data->data[h].Field1, key);
6031 				LA17_: ;
6032 				if (!T16_) goto LA18_;
6033 				result = h;
6034 				goto BeforeRet_;
6035 			}
6036 			LA18_: ;
6037 			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
6038 			h = nextTry__pureZcollectionsZtables_34(h, T20_);
6039 		} LA12: ;
6040 	}
6041 	result = (NI)(((NI) -1) - h);
6042 	}BeforeRet_: ;
6043 	return result;
6044 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getOrDefault__cgen_1423)6045 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getOrDefault__cgen_1423)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key) {
6046 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6047 	NI hcX60gensym148_;
6048 	NI indexX60gensym148_;
6049 	result = NIM_NIL;
6050 	hcX60gensym148_ = (NI)0;
6051 	indexX60gensym148_ = rawGet__cgen_1432(t, key, (&hcX60gensym148_));
6052 	{
6053 		if (!(((NI) 0) <= indexX60gensym148_)) goto LA3_;
6054 		result = t.data->data[indexX60gensym148_].Field2;
6055 	}
6056 	LA3_: ;
6057 	return result;
6058 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,cacheGetType__cgen_1353)6059 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, cacheGetType__cgen_1353)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA tab, tyArray__qtqsWM5aXmcpMIVmvq3kAA sig) {
6060 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6061 	result = NIM_NIL;
6062 	result = getOrDefault__cgen_1423(tab, sig);
6063 	return result;
6064 }
N_INLINE(void,appendChar)6065 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c) {
6066 	(*dest).data[(*dest).Sup.len] = c;
6067 	(*dest).data[(NI)((*dest).Sup.len + ((NI) 1))] = 0;
6068 	(*dest).Sup.len += ((NI) 1);
6069 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,typeName__cgen_1143)6070 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, typeName__cgen_1143)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
6071 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6072 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ_2;
6073 	result = NIM_NIL;
6074 	typ_2 = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_19);
6075 	{
6076 		NIM_BOOL T3_;
6077 		NimStringDesc* T7_;
6078 		NimStringDesc* T8_;
6079 		T3_ = (NIM_BOOL)0;
6080 		T3_ = !(((*typ_2).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
6081 		if (!(T3_)) goto LA4_;
6082 		T3_ = ((*typ_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17) || (*typ_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14));
6083 		LA4_: ;
6084 		if (!T3_) goto LA5_;
6085 		T7_ = NIM_NIL;
6086 		T8_ = NIM_NIL;
6087 		T8_ = mangle__ccgutils_112((*(*(*typ_2).sym).name).s);
6088 		T7_ = rawNewString((reprEnum((NI)(*typ_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*typ_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + (T8_ ? T8_->Sup.len : 0) + 1);
6089 appendString(T7_, reprEnum((NI)(*typ_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
6090 appendChar(T7_, 95);
6091 appendString(T7_, T8_);
6092 		result = rope__ropes_109(T7_);
6093 	}
6094 	goto LA1_;
6095 	LA5_: ;
6096 	{
6097 		result = rope__ropes_109(reprEnum((NI)(*typ_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
6098 	}
6099 	LA1_: ;
6100 	return result;
6101 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getTypeName__cgen_1161)6102 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypeName__cgen_1161)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyArray__qtqsWM5aXmcpMIVmvq3kAA sig) {
6103 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6104 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
6105 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ_2;
6106 {	result = NIM_NIL;
6107 	t = typ;
6108 	{
6109 		while (1) {
6110 			{
6111 				NIM_BOOL T5_;
6112 				T5_ = (NIM_BOOL)0;
6113 				T5_ = !(((*t).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
6114 				if (!(T5_)) goto LA6_;
6115 				T5_ = !(((192 & (*(*t).sym).flags) == 0));
6116 				LA6_: ;
6117 				if (!T5_) goto LA7_;
6118 				result = (*(*t).sym).loc.r;
6119 				goto BeforeRet_;
6120 			}
6121 			LA7_: ;
6122 			{
6123 				if (!((TM__MQdRN7fpbG7rPm4JpVVAhA_19[(NU)((*t).kind)>>3] &(1U<<((NU)((*t).kind)&7U)))!=0)) goto LA11_;
6124 				t = lastSon__ast_3743(t);
6125 			}
6126 			goto LA9_;
6127 			LA11_: ;
6128 			{
6129 				goto LA1;
6130 			}
6131 			LA9_: ;
6132 		}
6133 	} LA1: ;
6134 	{
6135 		if (!((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 4) || (*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46) || (*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 45))) goto LA16_;
6136 		typ_2 = lastSon__ast_3743(typ);
6137 	}
6138 	goto LA14_;
6139 	LA16_: ;
6140 	{
6141 		typ_2 = typ;
6142 	}
6143 	LA14_: ;
6144 	{
6145 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
6146 		NimStringDesc* T24_;
6147 		if (!((*typ_2).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA21_;
6148 		T23_ = NIM_NIL;
6149 		T23_ = typeName__cgen_1143(typ_2);
6150 		T24_ = NIM_NIL;
6151 		T24_ = dollar___modulegraphs_8947(sig);
6152 		asgnRef((void**) (&(*typ_2).loc.r), amp___ropes_140(T23_, T24_));
6153 	}
6154 	goto LA19_;
6155 	LA21_: ;
6156 	{
6157 	}
6158 	LA19_: ;
6159 	result = (*typ_2).loc.r;
6160 	{
6161 		NimStringDesc* T30_;
6162 		if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA28_;
6163 		T30_ = NIM_NIL;
6164 		T30_ = rawNewString((reprEnum((NI)(*typ_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*typ_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 13);
6165 appendString(T30_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_41));
6166 appendString(T30_, reprEnum((NI)(*typ_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
6167 		internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, T30_, TM__MQdRN7fpbG7rPm4JpVVAhA_42);
6168 	}
6169 	LA28_: ;
6170 	}BeforeRet_: ;
6171 	return result;
6172 }
N_INLINE(NIM_BOOL,mustRehash__cgen_2066)6173 static N_INLINE(NIM_BOOL, mustRehash__cgen_2066)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA t) {
6174 	NIM_BOOL result;
6175 	NIM_BOOL T1_;
6176 	NI T2_;
6177 	NI T4_;
6178 	result = (NIM_BOOL)0;
6179 	T1_ = (NIM_BOOL)0;
6180 	T2_ = (t.data ? t.data->Sup.len : 0);
6181 	T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
6182 	if (T1_) goto LA3_;
6183 	T4_ = (t.data ? t.data->Sup.len : 0);
6184 	T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
6185 	LA3_: ;
6186 	result = T1_;
6187 	return result;
6188 }
N_NIMCALL(void,rawInsert__cgen_2583)6189 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__cgen_2583)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA* t, tySequence__sII3pVVRkIdBZ2HDPdZddA** data, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* val, NI hc, NI h) {
6190 	nimCopyMem((void*)(*data)->data[h].Field1, (NIM_CONST void*)key, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
6191 	asgnRef((void**) (&(*data)->data[h].Field2), val);
6192 	(*data)->data[h].Field0 = hc;
6193 }
N_NIMCALL(void,enlarge__cgen_2252)6194 N_LIB_PRIVATE N_NIMCALL(void, enlarge__cgen_2252)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA* t) {
6195 	tySequence__sII3pVVRkIdBZ2HDPdZddA* n;
6196 	NI T1_;
6197 	tySequence__sII3pVVRkIdBZ2HDPdZddA* T2_;
6198 	n = NIM_NIL;
6199 	T1_ = ((*t).data ? (*t).data->Sup.len : 0);
6200 	n = (tySequence__sII3pVVRkIdBZ2HDPdZddA*) newSeq((&NTIkeyvaluepairseq__sII3pVVRkIdBZ2HDPdZddA_), ((NI) ((NI)(T1_ * ((NI) 2)))));
6201 	T2_ = NIM_NIL;
6202 	T2_ = (*t).data;
6203 	unsureAsgnRef((void**) (&(*t).data), n);
6204 	n = T2_;
6205 	{
6206 		NI i;
6207 		NI colontmp_;
6208 		NI T4_;
6209 		NI res;
6210 		i = (NI)0;
6211 		colontmp_ = (NI)0;
6212 		T4_ = ((n ? n->Sup.len : 0)-1);
6213 		colontmp_ = T4_;
6214 		res = ((NI) 0);
6215 		{
6216 			while (1) {
6217 				NI eh;
6218 				if (!(res <= colontmp_)) goto LA6;
6219 				i = res;
6220 				eh = n->data[i].Field0;
6221 				{
6222 					NIM_BOOL T9_;
6223 					NI j;
6224 					NI T12_;
6225 					tyArray__qtqsWM5aXmcpMIVmvq3kAA T17_;
6226 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
6227 					T9_ = (NIM_BOOL)0;
6228 					T9_ = isFilled__pureZcollectionsZtables_31(eh);
6229 					if (!T9_) goto LA10_;
6230 					T12_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
6231 					j = (NI)(eh & T12_);
6232 					{
6233 						while (1) {
6234 							NIM_BOOL T15_;
6235 							NI T16_;
6236 							T15_ = (NIM_BOOL)0;
6237 							T15_ = isFilled__pureZcollectionsZtables_31((*t).data->data[j].Field0);
6238 							if (!T15_) goto LA14;
6239 							T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
6240 							j = nextTry__pureZcollectionsZtables_34(j, T16_);
6241 						} LA14: ;
6242 					}
6243 					nimCopyMem((void*)T17_, (NIM_CONST void*)n->data[i].Field1, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
6244 					nimZeroMem((void*)n->data[i].Field1, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
6245 					T18_ = NIM_NIL;
6246 					T18_ = n->data[i].Field2;
6247 					asgnRef((void**) (&n->data[i].Field2), NIM_NIL);
6248 					rawInsert__cgen_2583(t, (&(*t).data), T17_, T18_, eh, j);
6249 				}
6250 				LA10_: ;
6251 				res += ((NI) 1);
6252 			} LA6: ;
6253 		}
6254 	}
6255 }
N_INLINE(NI,rawGetKnownHC__cgen_2764)6256 static N_INLINE(NI, rawGetKnownHC__cgen_2764)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI hc) {
6257 	NI result;
6258 	NI h;
6259 	NI T6_;
6260 {	result = (NI)0;
6261 	{
6262 		NI T3_;
6263 		T3_ = (t.data ? t.data->Sup.len : 0);
6264 		if (!(T3_ == ((NI) 0))) goto LA4_;
6265 		result = ((NI) -1);
6266 		goto BeforeRet_;
6267 	}
6268 	LA4_: ;
6269 	T6_ = ((t.data ? t.data->Sup.len : 0)-1);
6270 	h = (NI)(hc & T6_);
6271 	{
6272 		while (1) {
6273 			NIM_BOOL T9_;
6274 			NI T16_;
6275 			T9_ = (NIM_BOOL)0;
6276 			T9_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
6277 			if (!T9_) goto LA8;
6278 			{
6279 				NIM_BOOL T12_;
6280 				T12_ = (NIM_BOOL)0;
6281 				T12_ = (t.data->data[h].Field0 == hc);
6282 				if (!(T12_)) goto LA13_;
6283 				T12_ = eqeq___modulegraphs_8959(t.data->data[h].Field1, key);
6284 				LA13_: ;
6285 				if (!T12_) goto LA14_;
6286 				result = h;
6287 				goto BeforeRet_;
6288 			}
6289 			LA14_: ;
6290 			T16_ = ((t.data ? t.data->Sup.len : 0)-1);
6291 			h = nextTry__pureZcollectionsZtables_34(h, T16_);
6292 		} LA8: ;
6293 	}
6294 	result = (NI)(((NI) -1) - h);
6295 	}BeforeRet_: ;
6296 	return result;
6297 }
N_NIMCALL(void,X5BX5Deq___cgen_1867)6298 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___cgen_1867)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA* t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* val) {
6299 	NI hc;
6300 	NI index;
6301 	{
6302 		NI T3_;
6303 		NI correctSizeX60gensym168_;
6304 		T3_ = ((*t).data ? (*t).data->Sup.len : 0);
6305 		if (!(T3_ == ((NI) 0))) goto LA4_;
6306 		correctSizeX60gensym168_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
6307 		(*t).counter = ((NI) 0);
6308 		unsureAsgnRef((void**) (&(*t).data), (tySequence__sII3pVVRkIdBZ2HDPdZddA*) newSeq((&NTIkeyvaluepairseq__sII3pVVRkIdBZ2HDPdZddA_), ((NI) (correctSizeX60gensym168_))));
6309 	}
6310 	LA4_: ;
6311 	hc = (NI)0;
6312 	index = rawGet__cgen_1432((*t), key, (&hc));
6313 	{
6314 		if (!(((NI) 0) <= index)) goto LA8_;
6315 		asgnRef((void**) (&(*t).data->data[index].Field2), val);
6316 	}
6317 	goto LA6_;
6318 	LA8_: ;
6319 	{
6320 		{
6321 			NI T13_;
6322 			NI correctSizeX60gensym171_;
6323 			T13_ = ((*t).data ? (*t).data->Sup.len : 0);
6324 			if (!(T13_ == ((NI) 0))) goto LA14_;
6325 			correctSizeX60gensym171_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
6326 			(*t).counter = ((NI) 0);
6327 			unsureAsgnRef((void**) (&(*t).data), (tySequence__sII3pVVRkIdBZ2HDPdZddA*) newSeq((&NTIkeyvaluepairseq__sII3pVVRkIdBZ2HDPdZddA_), ((NI) (correctSizeX60gensym171_))));
6328 		}
6329 		LA14_: ;
6330 		{
6331 			NIM_BOOL T18_;
6332 			T18_ = (NIM_BOOL)0;
6333 			T18_ = mustRehash__cgen_2066((*t));
6334 			if (!T18_) goto LA19_;
6335 			enlarge__cgen_2252(t);
6336 			index = rawGetKnownHC__cgen_2764((*t), key, hc);
6337 		}
6338 		LA19_: ;
6339 		index = (NI)(((NI) -1) - index);
6340 		rawInsert__cgen_2583(t, (&(*t).data), key, val, hc, index);
6341 		(*t).counter += ((NI) 1);
6342 	}
6343 	LA6_: ;
6344 }
N_NIMCALL(NIM_BOOL,isImportedType__cgen_1283)6345 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isImportedType__cgen_1283)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
6346 	NIM_BOOL result;
6347 	NIM_BOOL T1_;
6348 	result = (NIM_BOOL)0;
6349 	T1_ = (NIM_BOOL)0;
6350 	T1_ = !(((*t).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
6351 	if (!(T1_)) goto LA2_;
6352 	T1_ = (((*(*t).sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0);
6353 	LA2_: ;
6354 	result = T1_;
6355 	return result;
6356 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3096)6357 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3096)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
6358 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6359 	result = NIM_NIL;
6360 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_43), args, argsLen_0);
6361 	return result;
6362 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3101)6363 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3101)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
6364 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6365 	result = NIM_NIL;
6366 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_44), args, argsLen_0);
6367 	return result;
6368 }
N_NIMCALL(void,addForwardStructFormat__cgen_3084)6369 N_LIB_PRIVATE N_NIMCALL(void, addForwardStructFormat__cgen_3084)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* structOrUnion, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* typename_0) {
6370 	{
6371 		NIM_BOOL T3_;
6372 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T7_;
6373 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
6374 		T3_ = (NIM_BOOL)0;
6375 		T3_ = ((*(*(*m).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
6376 		if (T3_) goto LA4_;
6377 		T3_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
6378 		LA4_: ;
6379 		if (!T3_) goto LA5_;
6380 		nimZeroMem((void*)T7_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
6381 		T7_[0] = structOrUnion;
6382 		T7_[1] = typename_0;
6383 		T8_ = NIM_NIL;
6384 		T8_ = percent___cgen_3096(T7_, 2);
6385 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 3))- 0], T8_);
6386 	}
6387 	goto LA1_;
6388 	LA5_: ;
6389 	{
6390 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T10_;
6391 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
6392 		nimZeroMem((void*)T10_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
6393 		T10_[0] = structOrUnion;
6394 		T10_[1] = typename_0;
6395 		T11_ = NIM_NIL;
6396 		T11_ = percent___cgen_3101(T10_, 2);
6397 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 3))- 0], T11_);
6398 	}
6399 	LA1_: ;
6400 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,structOrUnion__cgen_3074)6401 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, structOrUnion__cgen_3074)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
6402 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6403 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* cachedUnion;
6404 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* cachedStruct;
6405 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t_2;
6406 	result = NIM_NIL;
6407 	cachedUnion = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_45));
6408 	cachedStruct = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_46));
6409 	t_2 = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_47);
6410 	{
6411 		if (!(((*t_2).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 1))&63U)))!=0)) goto LA3_;
6412 		result = cachedUnion;
6413 	}
6414 	goto LA1_;
6415 	LA3_: ;
6416 	{
6417 		result = cachedStruct;
6418 	}
6419 	LA1_: ;
6420 	return result;
6421 }
N_NIMCALL(void,pushType__cgen_3042)6422 N_LIB_PRIVATE N_NIMCALL(void, pushType__cgen_3042)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
6423 	NI T9_;
6424 {	{
6425 		NI i;
6426 		NI colontmp_;
6427 		NI T2_;
6428 		NI res;
6429 		i = (NI)0;
6430 		colontmp_ = (NI)0;
6431 		T2_ = (((*m).typeStack ? (*m).typeStack->Sup.len : 0)-1);
6432 		colontmp_ = T2_;
6433 		res = ((NI) 0);
6434 		{
6435 			while (1) {
6436 				if (!(res <= colontmp_)) goto LA4;
6437 				i = res;
6438 				{
6439 					if (!((*m).typeStack->data[i] == typ)) goto LA7_;
6440 					goto BeforeRet_;
6441 				}
6442 				LA7_: ;
6443 				res += ((NI) 1);
6444 			} LA4: ;
6445 		}
6446 	}
6447 	asgnRef((void**) (&(*m).typeStack), (tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A*) incrSeqV3((TGenericSeq*)((*m).typeStack), (&NTIttypeseq__9aZVGG5Gtti9cC9bqRpXCtA3A_)));
6448 	T9_ = (*m).typeStack->Sup.len++;
6449 	asgnRef((void**) (&(*m).typeStack->data[T9_]), typ);
6450 	}BeforeRet_: ;
6451 }
N_NOINLINE(void,raiseKeyError__cgen_3301)6452 N_LIB_PRIVATE N_NOINLINE(void, raiseKeyError__cgen_3301)(tyArray__qtqsWM5aXmcpMIVmvq3kAA key) {
6453 	tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag* T1_;
6454 	NimStringDesc* T2_;
6455 	NimStringDesc* T3_;
6456 	T1_ = NIM_NIL;
6457 	T1_ = (tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag*) newObj((&NTIrefkeyerror__8SzoIAgLw9ci2v0yafHj9b6Q_), sizeof(tyObject_KeyError__t7nhKLvXTQS9cS8ByJU9bIag));
6458 	(*T1_).Sup.Sup.Sup.Sup.m_type = (&NTIkeyerror__t7nhKLvXTQS9cS8ByJU9bIag_);
6459 	(*T1_).Sup.Sup.Sup.name = "KeyError";
6460 	T2_ = NIM_NIL;
6461 	T3_ = NIM_NIL;
6462 	T3_ = dollar___modulegraphs_8947(key);
6463 	T2_ = rawNewString((T3_ ? T3_->Sup.len : 0) + 15);
6464 appendString(T2_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_48));
6465 appendString(T2_, T3_);
6466 	asgnRef((void**) (&(*T1_).Sup.Sup.Sup.message), T2_);
6467 	asgnRef((void**) (&(*T1_).Sup.Sup.Sup.parent), ((Exception*) NIM_NIL));
6468 	raiseExceptionEx((Exception*)T1_, "KeyError", "raiseKeyError", "tables.nim", 234);
6469 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA **,X5BX5D___cgen_3230)6470 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**, X5BX5D___cgen_3230)(tyObject_Table__gZ3EYQdz9coOB7ngN9a1cqwA* t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key) {
6471 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** result;
6472 	NI hcX60gensym22_;
6473 	NI indexX60gensym22_;
6474 	result = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
6475 	hcX60gensym22_ = (NI)0;
6476 	indexX60gensym22_ = rawGet__cgen_1432((*t), key, (&hcX60gensym22_));
6477 	{
6478 		if (!(((NI) 0) <= indexX60gensym22_)) goto LA3_;
6479 		result = &(*t).data->data[indexX60gensym22_].Field2;
6480 	}
6481 	goto LA1_;
6482 	LA3_: ;
6483 	{
6484 		raiseKeyError__cgen_3301(key);
6485 	}
6486 	LA1_: ;
6487 	return result;
6488 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getTypeForward__cgen_3113)6489 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypeForward__cgen_3113)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyArray__qtqsWM5aXmcpMIVmvq3kAA sig) {
6490 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6491 	tyObject_TType__facALICuu8zUj0hjvbTLFg* concrete;
6492 {	result = NIM_NIL;
6493 	result = cacheGetType__cgen_1353((*m).forwTypeCache, sig);
6494 	{
6495 		if (!!((result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA3_;
6496 		goto BeforeRet_;
6497 	}
6498 	LA3_: ;
6499 	result = getTypePre__cgen_3061(m, typ, sig);
6500 	{
6501 		if (!!((result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA7_;
6502 		goto BeforeRet_;
6503 	}
6504 	LA7_: ;
6505 	concrete = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
6506 	switch ((*concrete).kind) {
6507 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
6508 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
6509 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
6510 	{
6511 		result = getTypeName__cgen_1161(m, typ, sig);
6512 		X5BX5Deq___cgen_1867((&(*m).forwTypeCache), sig, result);
6513 		{
6514 			NIM_BOOL T12_;
6515 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
6516 			T12_ = (NIM_BOOL)0;
6517 			T12_ = isImportedType__cgen_1283(concrete);
6518 			if (!!(T12_)) goto LA13_;
6519 			T15_ = NIM_NIL;
6520 			T15_ = structOrUnion__cgen_3074(typ);
6521 			addForwardStructFormat__cgen_3084(m, T15_, result);
6522 		}
6523 		goto LA10_;
6524 		LA13_: ;
6525 		{
6526 			pushType__cgen_3042(m, concrete);
6527 		}
6528 		LA10_: ;
6529 		{
6530 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T19_;
6531 			T19_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
6532 			T19_ = X5BX5D___cgen_3230((&(*m).forwTypeCache), sig);
6533 			if (!!(((*T19_) == result))) goto LA20_;
6534 			failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_49));
6535 		}
6536 		LA20_: ;
6537 	}
6538 	break;
6539 	default:
6540 	{
6541 		NimStringDesc* T23_;
6542 		T23_ = NIM_NIL;
6543 		T23_ = rawNewString((reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 16);
6544 appendString(T23_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_50));
6545 appendString(T23_, reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
6546 appendChar(T23_, 41);
6547 		internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, T23_, TM__MQdRN7fpbG7rPm4JpVVAhA_51);
6548 	}
6549 	break;
6550 	}
6551 	}BeforeRet_: ;
6552 	return result;
6553 }
N_NIMCALL(NimStringDesc *,seqStar__cgen_3106)6554 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, seqStar__cgen_3106)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
6555 	NimStringDesc* result;
6556 	result = NIM_NIL;
6557 	{
6558 		if (!(((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA3_;
6559 		result = ((NimStringDesc*) NIM_NIL);
6560 	}
6561 	goto LA1_;
6562 	LA3_: ;
6563 	{
6564 		result = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59));
6565 	}
6566 	LA1_: ;
6567 	return result;
6568 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getTypeDescWeak__cgen_3317)6569 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypeDescWeak__cgen_3317)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind) {
6570 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6571 	tyObject_TType__facALICuu8zUj0hjvbTLFg* etB;
6572 	result = NIM_NIL;
6573 	etB = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
6574 	switch ((*etB).kind) {
6575 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
6576 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
6577 	{
6578 		{
6579 			NIM_BOOL T4_;
6580 			T4_ = (NIM_BOOL)0;
6581 			T4_ = isImportedCppType__cgen_1294(etB);
6582 			if (!(T4_)) goto LA5_;
6583 			T4_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11));
6584 			LA5_: ;
6585 			if (!T4_) goto LA6_;
6586 			result = getTypeDescAux__cgen_1314(m, t, check, kind);
6587 		}
6588 		goto LA2_;
6589 		LA6_: ;
6590 		{
6591 			tyArray__qtqsWM5aXmcpMIVmvq3kAA T9_;
6592 			nimZeroMem((void*)T9_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
6593 			hashType__sighashes_462(t, 2, T9_);
6594 			result = getTypeForward__cgen_3113(m, t, T9_);
6595 			pushType__cgen_3042(m, t);
6596 		}
6597 		LA2_: ;
6598 	}
6599 	break;
6600 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
6601 	{
6602 		tyArray__qtqsWM5aXmcpMIVmvq3kAA sig;
6603 		nimZeroMem((void*)sig, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
6604 		hashType__sighashes_462(t, 2, sig);
6605 		{
6606 			if (!(((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA13_;
6607 			{
6608 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T17_;
6609 				T17_ = NIM_NIL;
6610 				T17_ = skipTypes__ast_3735((*etB).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_32);
6611 				if (!((*T17_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 3))) goto LA18_;
6612 				internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_52), TM__MQdRN7fpbG7rPm4JpVVAhA_53);
6613 			}
6614 			LA18_: ;
6615 			result = cacheGetType__cgen_1353((*m).forwTypeCache, sig);
6616 			{
6617 				if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA22_;
6618 				result = getTypeName__cgen_1161(m, t, sig);
6619 				{
6620 					NIM_BOOL T26_;
6621 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
6622 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* payload;
6623 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
6624 					T26_ = (NIM_BOOL)0;
6625 					T26_ = isImportedType__cgen_1283(t);
6626 					if (!!(T26_)) goto LA27_;
6627 					X5BX5Deq___cgen_1867((&(*m).forwTypeCache), sig, result);
6628 					T29_ = NIM_NIL;
6629 					T29_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_54));
6630 					addForwardStructFormat__cgen_3084(m, T29_, result);
6631 					payload = amp___ropes_140(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_55));
6632 					T30_ = NIM_NIL;
6633 					T30_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_54));
6634 					addForwardStructFormat__cgen_3084(m, T30_, payload);
6635 				}
6636 				LA27_: ;
6637 			}
6638 			LA22_: ;
6639 			{
6640 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
6641 				NimStringDesc* res;
6642 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
6643 				T33_ = NIM_NIL;
6644 				T33_ = cacheGetType__cgen_1353((*m).typeCache, sig);
6645 				if (!(T33_ == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA34_;
6646 				X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
6647 				res = rawNewString(((NI) 80));
6648 				res = resizeString(res, 7);
6649 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_56));
6650 				cgFormatValue__cgen_141((&res), result);
6651 				res = resizeString(res, 13);
6652 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_57));
6653 				cgFormatValue__cgen_141((&res), result);
6654 				res = resizeString(res, 16);
6655 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_58));
6656 				T36_ = NIM_NIL;
6657 				T36_ = rope__ropes_109(res);
6658 				add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T36_);
6659 			}
6660 			LA34_: ;
6661 		}
6662 		goto LA11_;
6663 		LA13_: ;
6664 		{
6665 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
6666 			NimStringDesc* T39_;
6667 			T38_ = NIM_NIL;
6668 			T38_ = getTypeForward__cgen_3113(m, t, sig);
6669 			T39_ = NIM_NIL;
6670 			T39_ = seqStar__cgen_3106(m);
6671 			result = amp___ropes_140(T38_, T39_);
6672 		}
6673 		LA11_: ;
6674 		pushType__cgen_3042(m, t);
6675 	}
6676 	break;
6677 	default:
6678 	{
6679 		result = getTypeDescAux__cgen_1314(m, t, check, kind);
6680 	}
6681 	break;
6682 	}
6683 	return result;
6684 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3526)6685 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3526)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
6686 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6687 	result = NIM_NIL;
6688 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59), args, argsLen_0);
6689 	return result;
6690 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3535)6691 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3535)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
6692 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6693 	result = NIM_NIL;
6694 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17), args, argsLen_0);
6695 	return result;
6696 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3544)6697 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3544)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
6698 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6699 	result = NIM_NIL;
6700 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_60), args, argsLen_0);
6701 	return result;
6702 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3566)6703 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3566)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
6704 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6705 	result = NIM_NIL;
6706 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_62), args, argsLen_0);
6707 	return result;
6708 }
N_NIMCALL(tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w,mapReturnType__cgen_1279)6709 N_LIB_PRIVATE N_NIMCALL(tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w, mapReturnType__cgen_1279)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
6710 	tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w result;
6711 	result = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
6712 	result = mapType__cgen_1209(conf, typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11));
6713 	return result;
6714 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3593)6715 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3593)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
6716 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6717 	result = NIM_NIL;
6718 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_64), args, argsLen_0);
6719 	return result;
6720 }
N_NIMCALL(void,genProcParams__cgen_3480)6721 N_LIB_PRIVATE N_NIMCALL(void, genProcParams__cgen_3480)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** rettype, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** params, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check, NIM_BOOL declareEnvironment, NIM_BOOL weakDep) {
6722 	unsureAsgnRef((void**) (&(*params)), ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
6723 	{
6724 		NIM_BOOL T3_;
6725 		tyArray__qTjAvTvKF9anytN1At69aJMQ T7_;
6726 		T3_ = (NIM_BOOL)0;
6727 		T3_ = ((*t).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
6728 		if (T3_) goto LA4_;
6729 		T3_ = isInvalidReturnType__cgen_1335((*(*m).g).config, (*t).sons->data[((NI) 0)]);
6730 		LA4_: ;
6731 		if (!T3_) goto LA5_;
6732 		nimZeroMem((void*)T7_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
6733 		unsureAsgnRef((void**) (&(*rettype)), percent___cgen_3494(T7_, 0));
6734 	}
6735 	goto LA1_;
6736 	LA5_: ;
6737 	{
6738 		unsureAsgnRef((void**) (&(*rettype)), getTypeDescAux__cgen_1314(m, (*t).sons->data[((NI) 0)], check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11)));
6739 	}
6740 	LA1_: ;
6741 	{
6742 		NI i;
6743 		NI colontmp_;
6744 		NI i_2;
6745 		i = (NI)0;
6746 		colontmp_ = (NI)0;
6747 		colontmp_ = len__ast_3198((*t).n);
6748 		i_2 = ((NI) 1);
6749 		{
6750 			while (1) {
6751 				if (!(i_2 < colontmp_)) goto LA11;
6752 				i = i_2;
6753 				{
6754 					tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param;
6755 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
6756 					tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw T29_;
6757 					tyArray__qTjAvTvKF9anytN1At69aJMQ T44_;
6758 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
6759 					tyObject_TType__facALICuu8zUj0hjvbTLFg* arr;
6760 					NI j;
6761 					{
6762 						if (!!(((*(*(*t).n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA15_;
6763 						internalErrorImpl__msgs_1431((*(*m).g).config, (*(*t).n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_35), TM__MQdRN7fpbG7rPm4JpVVAhA_36);
6764 					}
6765 					LA15_: ;
6766 					param = (*(*(*t).n)._kind_6.sons->data[i])._kind_4.sym;
6767 					{
6768 						NIM_BOOL T19_;
6769 						T19_ = (NIM_BOOL)0;
6770 						T19_ = isCompileTimeOnly__types_3519((*param).typ);
6771 						if (!T19_) goto LA20_;
6772 						goto LA12;
6773 					}
6774 					LA20_: ;
6775 					{
6776 						tyArray__qTjAvTvKF9anytN1At69aJMQ T26_;
6777 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
6778 						if (!!(((*params) == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA24_;
6779 						nimZeroMem((void*)T26_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
6780 						T27_ = NIM_NIL;
6781 						T27_ = percent___cgen_3519(T26_, 0);
6782 						add__ropes_159(params, T27_);
6783 					}
6784 					LA24_: ;
6785 					T28_ = NIM_NIL;
6786 					T28_ = mangleParamName__cgen_640(m, param);
6787 					T29_ = (tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw)0;
6788 					T29_ = paramStorageLoc__cgen_3473(param);
6789 					fillLoc__cgen_65((&(*param).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 4), (*(*t).n)._kind_6.sons->data[i], T28_, T29_);
6790 					{
6791 						NIM_BOOL T32_;
6792 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
6793 						tyArray__qTjAvTvKF9anytN1At69aJMQ T36_;
6794 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
6795 						T32_ = (NIM_BOOL)0;
6796 						T32_ = ccgIntroducedPtr__ccgutils_153((*(*m).g).config, param, (*t).sons->data[((NI) 0)]);
6797 						if (!T32_) goto LA33_;
6798 						T35_ = NIM_NIL;
6799 						T35_ = getTypeDescWeak__cgen_3317(m, (*param).typ, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
6800 						add__ropes_159(params, T35_);
6801 						nimZeroMem((void*)T36_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
6802 						T37_ = NIM_NIL;
6803 						T37_ = percent___cgen_3526(T36_, 0);
6804 						add__ropes_159(params, T37_);
6805 						(*param).loc.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15);
6806 						(*param).loc.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0);
6807 					}
6808 					goto LA30_;
6809 					LA33_: ;
6810 					{
6811 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
6812 						if (!weakDep) goto LA39_;
6813 						T41_ = NIM_NIL;
6814 						T41_ = getTypeDescWeak__cgen_3317(m, (*param).typ, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
6815 						add__ropes_159(params, T41_);
6816 					}
6817 					goto LA30_;
6818 					LA39_: ;
6819 					{
6820 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
6821 						T43_ = NIM_NIL;
6822 						T43_ = getTypeDescAux__cgen_1314(m, (*param).typ, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
6823 						add__ropes_159(params, T43_);
6824 					}
6825 					LA30_: ;
6826 					nimZeroMem((void*)T44_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
6827 					T45_ = NIM_NIL;
6828 					T45_ = percent___cgen_3535(T44_, 0);
6829 					add__ropes_159(params, T45_);
6830 					{
6831 						tyArray__qTjAvTvKF9anytN1At69aJMQ T50_;
6832 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
6833 						if (!(((*param).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 46))&63U)))!=0)) goto LA48_;
6834 						nimZeroMem((void*)T50_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
6835 						T51_ = NIM_NIL;
6836 						T51_ = percent___cgen_3544(T50_, 0);
6837 						add__ropes_159(params, T51_);
6838 					}
6839 					LA48_: ;
6840 					add__ropes_159(params, (*param).loc.r);
6841 					arr = skipTypes__ast_3735((*param).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_61);
6842 					{
6843 						if (!((*arr).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*arr).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47) || (*arr).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46))) goto LA54_;
6844 						arr = lastSon__ast_3743(arr);
6845 					}
6846 					LA54_: ;
6847 					j = ((NI) 0);
6848 					{
6849 						while (1) {
6850 							tyArray__mrugoXXRZUEeG9bEXo9auBKw T62_;
6851 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
6852 							if (!((*arr).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27) || (*arr).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48))) goto LA57;
6853 							{
6854 								if (!((*(*param).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*(*param).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47))) goto LA60_;
6855 								(*param).loc.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0);
6856 							}
6857 							LA60_: ;
6858 							nimZeroMem((void*)T62_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
6859 							T62_[0] = (*param).loc.r;
6860 							T62_[1] = rope__ropes_115(((NI64) (j)));
6861 							T63_ = NIM_NIL;
6862 							T63_ = percent___cgen_3566(T62_, 2);
6863 							add__ropes_159(params, T63_);
6864 							j += ((NI) 1);
6865 							arr = skipTypes__ast_3735((*arr).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_63);
6866 						} LA57: ;
6867 					}
6868 				} LA12: ;
6869 				i_2 += ((NI) 1);
6870 			} LA11: ;
6871 		}
6872 	}
6873 	{
6874 		NIM_BOOL T66_;
6875 		tyObject_TType__facALICuu8zUj0hjvbTLFg* arr_2;
6876 		tyArray__qTjAvTvKF9anytN1At69aJMQ T82_;
6877 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T83_;
6878 		T66_ = (NIM_BOOL)0;
6879 		T66_ = !(((*t).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
6880 		if (!(T66_)) goto LA67_;
6881 		T66_ = isInvalidReturnType__cgen_1335((*(*m).g).config, (*t).sons->data[((NI) 0)]);
6882 		LA67_: ;
6883 		if (!T66_) goto LA68_;
6884 		arr_2 = (*t).sons->data[((NI) 0)];
6885 		{
6886 			if (!!(((*params) == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA72_;
6887 			add__ropes_162(params, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
6888 		}
6889 		LA72_: ;
6890 		{
6891 			tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T76_;
6892 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T79_;
6893 			T76_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
6894 			T76_ = mapReturnType__cgen_1279((*(*m).g).config, (*t).sons->data[((NI) 0)]);
6895 			if (!!((T76_ == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17)))) goto LA77_;
6896 			T79_ = NIM_NIL;
6897 			T79_ = getTypeDescWeak__cgen_3317(m, arr_2, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11));
6898 			add__ropes_159(params, T79_);
6899 			add__ropes_162(params, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59));
6900 		}
6901 		goto LA74_;
6902 		LA77_: ;
6903 		{
6904 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
6905 			T81_ = NIM_NIL;
6906 			T81_ = getTypeDescAux__cgen_1314(m, arr_2, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11));
6907 			add__ropes_159(params, T81_);
6908 		}
6909 		LA74_: ;
6910 		nimZeroMem((void*)T82_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
6911 		T83_ = NIM_NIL;
6912 		T83_ = percent___cgen_3593(T82_, 0);
6913 		add__ropes_159(params, T83_);
6914 	}
6915 	LA68_: ;
6916 	{
6917 		NIM_BOOL T86_;
6918 		T86_ = (NIM_BOOL)0;
6919 		T86_ = ((*t).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9));
6920 		if (!(T86_)) goto LA87_;
6921 		T86_ = declareEnvironment;
6922 		LA87_: ;
6923 		if (!T86_) goto LA88_;
6924 		{
6925 			if (!!(((*params) == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA92_;
6926 			add__ropes_162(params, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
6927 		}
6928 		LA92_: ;
6929 		add__ropes_162(params, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_65));
6930 	}
6931 	LA88_: ;
6932 	{
6933 		if (!(((*t).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 0))&63U)))!=0)) goto LA96_;
6934 		{
6935 			if (!!(((*params) == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA100_;
6936 			add__ropes_162(params, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
6937 		}
6938 		LA100_: ;
6939 		add__ropes_162(params, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_66));
6940 	}
6941 	LA96_: ;
6942 	{
6943 		if (!((*params) == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA104_;
6944 		add__ropes_162(params, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_67));
6945 	}
6946 	goto LA102_;
6947 	LA104_: ;
6948 	{
6949 		add__ropes_162(params, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
6950 	}
6951 	LA102_: ;
6952 	unsureAsgnRef((void**) (&(*params)), amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69), (*params)));
6953 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6753)6954 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6753)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
6955 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6956 	result = NIM_NIL;
6957 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_72), args, argsLen_0);
6958 	return result;
6959 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genProcHeader__cgen_614)6960 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genProcHeader__cgen_614)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc, NIM_BOOL asPtr) {
6961 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
6962 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* rettype;
6963 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* params;
6964 	tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA check;
6965 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
6966 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* asPtrStr;
6967 	NimStringDesc* T21_;
6968 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name;
6969 	result = NIM_NIL;
6970 	rettype = NIM_NIL;
6971 	params = NIM_NIL;
6972 	{
6973 		if (!(((*prc).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 5))&15U)))!=0)) goto LA3_;
6974 		{
6975 			if (!(((*m).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 3))&7U)))!=0)) goto LA7_;
6976 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_27));
6977 		}
6978 		goto LA5_;
6979 		LA7_: ;
6980 		{
6981 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_28));
6982 		}
6983 		LA5_: ;
6984 	}
6985 	goto LA1_;
6986 	LA3_: ;
6987 	{
6988 		NIM_BOOL T11_;
6989 		NIM_BOOL T12_;
6990 		T11_ = (NIM_BOOL)0;
6991 		T12_ = (NIM_BOOL)0;
6992 		T12_ = ((*(*prc).typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 5));
6993 		if (T12_) goto LA13_;
6994 		T12_ = asPtr;
6995 		LA13_: ;
6996 		T11_ = T12_;
6997 		if (T11_) goto LA14_;
6998 		T11_ = isNonReloadable__cgen_6714(m, prc);
6999 		LA14_: ;
7000 		if (!T11_) goto LA15_;
7001 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_29));
7002 	}
7003 	goto LA1_;
7004 	LA15_: ;
7005 	{
7006 		if (!!((((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0))) goto LA18_;
7007 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_30));
7008 	}
7009 	goto LA1_;
7010 	LA18_: ;
7011 	LA1_: ;
7012 	nimZeroMem((void*)(&check), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
7013 	initIntSet__pureZcollectionsZintsets_238((&check));
7014 	T20_ = NIM_NIL;
7015 	T20_ = mangleName__cgen_628(m, prc);
7016 	fillLoc__cgen_65((&(*prc).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 7), (*(*prc).ast)._kind_6.sons->data[((NI) 0)], T20_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
7017 	genProcParams__cgen_3480(m, (*prc).typ, &rettype, &params, (&check), NIM_TRUE, NIM_FALSE);
7018 	T21_ = NIM_NIL;
7019 	{
7020 		if (!asPtr) goto LA24_;
7021 		T21_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_70));
7022 	}
7023 	goto LA22_;
7024 	LA24_: ;
7025 	{
7026 		T21_ = ((NimStringDesc*) NIM_NIL);
7027 	}
7028 	LA22_: ;
7029 	asPtrStr = rope__ropes_109(T21_);
7030 	name = (*prc).loc.r;
7031 	{
7032 		NIM_BOOL T29_;
7033 		T29_ = (NIM_BOOL)0;
7034 		T29_ = isReloadable__cgen_6706(m, prc);
7035 		if (!(T29_)) goto LA30_;
7036 		T29_ = !(asPtr);
7037 		LA30_: ;
7038 		if (!T29_) goto LA31_;
7039 		add__ropes_162(&name, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_71));
7040 	}
7041 	LA31_: ;
7042 	{
7043 		tyArray__duFhZXIIlrbrM62cWjNekg T37_;
7044 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
7045 		if (!((*prc).constraint == 0)) goto LA35_;
7046 		nimZeroMem((void*)T37_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
7047 		T37_[0] = rope__ropes_109(CallingConvToStr__cgen_1352[((*(*prc).typ).callConv)- 0]);
7048 		T37_[1] = asPtrStr;
7049 		T37_[2] = rettype;
7050 		T37_[3] = name;
7051 		T37_[4] = params;
7052 		T38_ = NIM_NIL;
7053 		T38_ = percent___cgen_6753(T37_, 5);
7054 		add__ropes_159(&result, T38_);
7055 	}
7056 	goto LA33_;
7057 	LA35_: ;
7058 	{
7059 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* asPtrStr_2;
7060 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T47_;
7061 		{
7062 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
7063 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
7064 			if (!asPtr) goto LA42_;
7065 			T44_ = NIM_NIL;
7066 			T44_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_84));
7067 			T45_ = NIM_NIL;
7068 			T45_ = amp___ropes_128(T44_, name);
7069 			asPtrStr_2 = amp___ropes_140(T45_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
7070 		}
7071 		goto LA40_;
7072 		LA42_: ;
7073 		{
7074 			asPtrStr_2 = name;
7075 		}
7076 		LA40_: ;
7077 		nimZeroMem((void*)T47_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
7078 		T47_[0] = rettype;
7079 		T47_[1] = asPtrStr_2;
7080 		T47_[2] = params;
7081 		result = runtimeFormat__ropes_271((*(*prc).constraint)._kind_3.strVal, T47_, 3);
7082 	}
7083 	LA33_: ;
7084 	return result;
7085 }
N_NIMCALL(NIM_BOOL,containsResult__cgen_25722)7086 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsResult__cgen_25722)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
7087 	NIM_BOOL result;
7088 {	result = (NIM_BOOL)0;
7089 	result = NIM_FALSE;
7090 	switch ((*n).kind) {
7091 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
7092 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
7093 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 76):
7094 	{
7095 	}
7096 	break;
7097 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
7098 	{
7099 		{
7100 			if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11))) goto LA5_;
7101 			result = NIM_TRUE;
7102 		}
7103 		LA5_: ;
7104 	}
7105 	break;
7106 	default:
7107 	{
7108 		{
7109 			NI i;
7110 			NI colontmp_;
7111 			NI i_2;
7112 			i = (NI)0;
7113 			colontmp_ = (NI)0;
7114 			colontmp_ = len__ast_3198(n);
7115 			i_2 = ((NI) 0);
7116 			{
7117 				while (1) {
7118 					if (!(i_2 < colontmp_)) goto LA10;
7119 					i = i_2;
7120 					{
7121 						NIM_BOOL T13_;
7122 						T13_ = (NIM_BOOL)0;
7123 						T13_ = containsResult__cgen_25722((*n)._kind_6.sons->data[i]);
7124 						if (!T13_) goto LA14_;
7125 						result = NIM_TRUE;
7126 						goto BeforeRet_;
7127 					}
7128 					LA14_: ;
7129 					i_2 += ((NI) 1);
7130 				} LA10: ;
7131 			}
7132 		}
7133 	}
7134 	break;
7135 	}
7136 	}BeforeRet_: ;
7137 	return result;
7138 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,easyResultAsgn__cgen_25751)7139 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, easyResultAsgn__cgen_25751)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
7140 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
7141 {	result = NIM_NIL;
7142 	switch ((*n).kind) {
7143 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
7144 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
7145 	{
7146 		NI i;
7147 		i = ((NI) 0);
7148 		{
7149 			while (1) {
7150 				NIM_BOOL T4_;
7151 				NI T5_;
7152 				T4_ = (NIM_BOOL)0;
7153 				T5_ = (NI)0;
7154 				T5_ = len__ast_3198(n);
7155 				T4_ = (i < T5_);
7156 				if (!(T4_)) goto LA6_;
7157 				T4_ = ((*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) || (*(*n)._kind_6.sons->data[i]).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) && (*(*n)._kind_6.sons->data[i]).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84) || (*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98) || (*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101) || (*(*n)._kind_6.sons->data[i]).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) && (*(*n)._kind_6.sons->data[i]).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123) || (*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125) || (*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159));
7158 				LA6_: ;
7159 				if (!T4_) goto LA3;
7160 				i += ((NI) 1);
7161 			} LA3: ;
7162 		}
7163 		{
7164 			NI T9_;
7165 			T9_ = (NI)0;
7166 			T9_ = len__ast_3198(n);
7167 			if (!(i < T9_)) goto LA10_;
7168 			result = easyResultAsgn__cgen_25751((*n)._kind_6.sons->data[i]);
7169 		}
7170 		LA10_: ;
7171 	}
7172 	break;
7173 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73):
7174 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74):
7175 	{
7176 		{
7177 			NIM_BOOL T15_;
7178 			NIM_BOOL T16_;
7179 			NIM_BOOL T19_;
7180 			T15_ = (NIM_BOOL)0;
7181 			T16_ = (NIM_BOOL)0;
7182 			T16_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
7183 			if (!(T16_)) goto LA17_;
7184 			T16_ = ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11));
7185 			LA17_: ;
7186 			T15_ = T16_;
7187 			if (!(T15_)) goto LA18_;
7188 			T19_ = (NIM_BOOL)0;
7189 			T19_ = containsResult__cgen_25722((*n)._kind_6.sons->data[((NI) 1)]);
7190 			T15_ = !(T19_);
7191 			LA18_: ;
7192 			if (!T15_) goto LA20_;
7193 			(*n).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 15)) & 31);
7194 			result = (*n)._kind_6.sons->data[((NI) 1)];
7195 			goto BeforeRet_;
7196 		}
7197 		LA20_: ;
7198 	}
7199 	break;
7200 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109):
7201 	{
7202 		{
7203 			NI T25_;
7204 			T25_ = (NI)0;
7205 			T25_ = len__ast_3198(n);
7206 			if (!(((NI) 0) < T25_)) goto LA26_;
7207 			result = easyResultAsgn__cgen_25751((*n)._kind_6.sons->data[((NI) 0)]);
7208 			{
7209 				if (!!((result == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA30_;
7210 				(*n).flags |= ((NU32)1)<<((((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 15)) & 31);
7211 			}
7212 			LA30_: ;
7213 		}
7214 		LA26_: ;
7215 	}
7216 	break;
7217 	default:
7218 	{
7219 	}
7220 	break;
7221 	}
7222 	}BeforeRet_: ;
7223 	return result;
7224 }
N_INLINE(void,shallow__system_7433)7225 static N_INLINE(void, shallow__system_7433)(NimStringDesc** s) {
7226 	TGenericSeq* s_2;
7227 	s_2 = ((TGenericSeq*) ((*s)));
7228 	{
7229 		NimStringDesc* T5_;
7230 		if (!(s_2 == ((TGenericSeq*) NIM_NIL))) goto LA3_;
7231 		T5_ = NIM_NIL;
7232 		T5_ = mnewString(((NI) 0));
7233 		s_2 = ((TGenericSeq*) (T5_));
7234 	}
7235 	LA3_: ;
7236 	{
7237 		if (!((NI)((*s_2).reserved & ((NI) 1073741824)) == ((NI) 0))) goto LA8_;
7238 		(*s_2).reserved = (NI)((*s_2).reserved | ((NI) (-2147483647 -1)));
7239 	}
7240 	LA8_: ;
7241 }
N_NIMCALL(NI,rawGet__cgen_833)7242 N_LIB_PRIVATE N_NIMCALL(NI, rawGet__cgen_833)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg t, NimStringDesc* key) {
7243 	NI result;
7244 	NI h;
7245 	NI T6_;
7246 	NI T7_;
7247 {	result = (NI)0;
7248 	{
7249 		NI T3_;
7250 		T3_ = (t.data ? t.data->Sup.len : 0);
7251 		if (!(T3_ == ((NI) 0))) goto LA4_;
7252 		result = ((NI) -1);
7253 		goto BeforeRet_;
7254 	}
7255 	LA4_: ;
7256 	T6_ = (NI)0;
7257 	T6_ = hash__pureZhashes_279(key);
7258 	T7_ = ((t.data ? t.data->Sup.len : 0)-1);
7259 	h = (NI)(T6_ & T7_);
7260 	{
7261 		while (1) {
7262 			NI T14_;
7263 			if (!!((t.data->data[h].Field1 == ((NI) 0)))) goto LA9;
7264 			{
7265 				if (!eqStrings(t.data->data[h].Field0, key)) goto LA12_;
7266 				result = h;
7267 				goto BeforeRet_;
7268 			}
7269 			LA12_: ;
7270 			T14_ = ((t.data ? t.data->Sup.len : 0)-1);
7271 			h = nextTry__pureZcollectionsZtables_34(h, T14_);
7272 		} LA9: ;
7273 	}
7274 	result = (NI)(((NI) -1) - h);
7275 	}BeforeRet_: ;
7276 	return result;
7277 }
N_NIMCALL(NI,getOrDefault__cgen_812)7278 N_LIB_PRIVATE N_NIMCALL(NI, getOrDefault__cgen_812)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg t, NimStringDesc* key, NI default_0) {
7279 	NI result;
7280 	NI indexX60gensym198_;
7281 	result = (NI)0;
7282 	indexX60gensym198_ = rawGet__cgen_833(t, key);
7283 	{
7284 		if (!(((NI) 0) <= indexX60gensym198_)) goto LA3_;
7285 		result = t.data->data[indexX60gensym198_].Field1;
7286 	}
7287 	goto LA1_;
7288 	LA3_: ;
7289 	{
7290 		result = default_0;
7291 	}
7292 	LA1_: ;
7293 	return result;
7294 }
N_INLINE(NIM_BOOL,mustRehash__cgen_1002)7295 static N_INLINE(NIM_BOOL, mustRehash__cgen_1002)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg t) {
7296 	NIM_BOOL result;
7297 	NIM_BOOL T1_;
7298 	NI T2_;
7299 	NI T4_;
7300 	result = (NIM_BOOL)0;
7301 	T1_ = (NIM_BOOL)0;
7302 	T2_ = (t.data ? t.data->Sup.len : 0);
7303 	T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
7304 	if (T1_) goto LA3_;
7305 	T4_ = (t.data ? t.data->Sup.len : 0);
7306 	T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
7307 	LA3_: ;
7308 	result = T1_;
7309 	return result;
7310 }
N_NIMCALL(void,ctRawInsert__cgen_1073)7311 N_LIB_PRIVATE N_NIMCALL(void, ctRawInsert__cgen_1073)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg t, tySequence__jwzrUFjG9akTIJTBBFvvqxw** data, NimStringDesc* key, NI val) {
7312 	NI h;
7313 	NI T1_;
7314 	NI T2_;
7315 	NimStringDesc* T6_;
7316 	T1_ = (NI)0;
7317 	T1_ = hash__pureZhashes_279(key);
7318 	T2_ = (((*data) ? (*data)->Sup.len : 0)-1);
7319 	h = (NI)(T1_ & T2_);
7320 	{
7321 		while (1) {
7322 			NI T5_;
7323 			if (!!(((*data)->data[h].Field1 == ((NI) 0)))) goto LA4;
7324 			T5_ = (((*data) ? (*data)->Sup.len : 0)-1);
7325 			h = nextTry__pureZcollectionsZtables_34(h, T5_);
7326 		} LA4: ;
7327 	}
7328 	T6_ = NIM_NIL;
7329 	T6_ = (*data)->data[h].Field0; (*data)->data[h].Field0 = copyStringRC1(key);
7330 	if (T6_) nimGCunrefNoCycle(T6_);
7331 	(*data)->data[h].Field1 = val;
7332 }
N_NIMCALL(void,enlarge__cgen_1038)7333 N_LIB_PRIVATE N_NIMCALL(void, enlarge__cgen_1038)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg* t) {
7334 	tySequence__jwzrUFjG9akTIJTBBFvvqxw* n;
7335 	NI T1_;
7336 	tySequence__jwzrUFjG9akTIJTBBFvvqxw* T12_;
7337 	n = NIM_NIL;
7338 	T1_ = ((*t).data ? (*t).data->Sup.len : 0);
7339 	n = (tySequence__jwzrUFjG9akTIJTBBFvvqxw*) newSeq((&NTIseqLtupleLkey58string_val58intTT__jwzrUFjG9akTIJTBBFvvqxw_), ((NI) ((NI)(T1_ * ((NI) 2)))));
7340 	{
7341 		NI i;
7342 		NI colontmp_;
7343 		NI T3_;
7344 		NI res;
7345 		i = (NI)0;
7346 		colontmp_ = (NI)0;
7347 		T3_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
7348 		colontmp_ = T3_;
7349 		res = ((NI) 0);
7350 		{
7351 			while (1) {
7352 				if (!(res <= colontmp_)) goto LA5;
7353 				i = res;
7354 				{
7355 					NimStringDesc* T10_;
7356 					NI T11_;
7357 					if (!!(((*t).data->data[i].Field1 == ((NI) 0)))) goto LA8_;
7358 					T10_ = NIM_NIL;
7359 					T10_ = (*t).data->data[i].Field0;
7360 					asgnRef((void**) (&(*t).data->data[i].Field0), NIM_NIL);
7361 					T11_ = (NI)0;
7362 					T11_ = (*t).data->data[i].Field1;
7363 					(*t).data->data[i].Field1 = 0;
7364 					ctRawInsert__cgen_1073((*t), (&n), T10_, T11_);
7365 				}
7366 				LA8_: ;
7367 				res += ((NI) 1);
7368 			} LA5: ;
7369 		}
7370 	}
7371 	T12_ = NIM_NIL;
7372 	T12_ = (*t).data;
7373 	unsureAsgnRef((void**) (&(*t).data), n);
7374 	n = T12_;
7375 }
N_NIMCALL(void,inc__cgen_935)7376 N_LIB_PRIVATE N_NIMCALL(void, inc__cgen_935)(tyObject_CountTable__chlLjy9bvnFM9b9bSZfiIkyGg* t, NimStringDesc* key, NI val) {
7377 	NI index;
7378 	index = rawGet__cgen_833((*t), key);
7379 	{
7380 		if (!(((NI) 0) <= index)) goto LA3_;
7381 		(*t).data->data[index].Field1 += val;
7382 		{
7383 			NI mskX60gensym179_;
7384 			NI T9_;
7385 			if (!((*t).data->data[index].Field1 == ((NI) 0))) goto LA7_;
7386 			T9_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
7387 			mskX60gensym179_ = T9_;
7388 			{
7389 				if (!(((NI) 0) <= index)) goto LA12_;
7390 				(*t).counter -= ((NI) 1);
7391 				{
7392 					{
7393 						while (1) {
7394 							NI jX60gensym179_;
7395 							NI rX60gensym179_;
7396 							jX60gensym179_ = index;
7397 							rX60gensym179_ = jX60gensym179_;
7398 							(*t).data->data[index].Field1 = ((NI) 0);
7399 							asgnRef((void**) (&(*t).data->data[index].Field0), NIM_NIL);
7400 							(*t).data->data[index].Field1 = 0;
7401 							{
7402 								while (1) {
7403 									NI T23_;
7404 									index = (NI)((NI)(index + ((NI) 1)) & mskX60gensym179_);
7405 									{
7406 										if (!((*t).data->data[index].Field1 == ((NI) 0))) goto LA21_;
7407 										goto LA14;
7408 									}
7409 									LA21_: ;
7410 									T23_ = (NI)0;
7411 									T23_ = hash__pureZhashes_279((*t).data->data[index].Field0);
7412 									rX60gensym179_ = (NI)(T23_ & mskX60gensym179_);
7413 									{
7414 										NIM_BOOL T26_;
7415 										NIM_BOOL T27_;
7416 										NIM_BOOL T28_;
7417 										NIM_BOOL T31_;
7418 										NIM_BOOL T34_;
7419 										T26_ = (NIM_BOOL)0;
7420 										T27_ = (NIM_BOOL)0;
7421 										T28_ = (NIM_BOOL)0;
7422 										T28_ = (rX60gensym179_ <= index);
7423 										if (!(T28_)) goto LA29_;
7424 										T28_ = (jX60gensym179_ < rX60gensym179_);
7425 										LA29_: ;
7426 										T27_ = T28_;
7427 										if (T27_) goto LA30_;
7428 										T31_ = (NIM_BOOL)0;
7429 										T31_ = (jX60gensym179_ < rX60gensym179_);
7430 										if (!(T31_)) goto LA32_;
7431 										T31_ = (index < jX60gensym179_);
7432 										LA32_: ;
7433 										T27_ = T31_;
7434 										LA30_: ;
7435 										T26_ = T27_;
7436 										if (T26_) goto LA33_;
7437 										T34_ = (NIM_BOOL)0;
7438 										T34_ = (index < jX60gensym179_);
7439 										if (!(T34_)) goto LA35_;
7440 										T34_ = (rX60gensym179_ <= index);
7441 										LA35_: ;
7442 										T26_ = T34_;
7443 										LA33_: ;
7444 										if (!!(T26_)) goto LA36_;
7445 										goto LA17;
7446 									}
7447 									LA36_: ;
7448 								}
7449 							} LA17: ;
7450 							asgnRef((void**) (&(*t).data->data[jX60gensym179_].Field0), (*t).data->data[index].Field0);
7451 							(*t).data->data[jX60gensym179_].Field1 = (*t).data->data[index].Field1;
7452 							unsureAsgnRef((void**)&(*t).data->data[index].Field0, NIM_NIL);
7453 							(*t).data->data[index].Field1 = 0;
7454 						}
7455 					}
7456 				} LA14: ;
7457 			}
7458 			LA12_: ;
7459 		}
7460 		LA7_: ;
7461 	}
7462 	goto LA1_;
7463 	LA3_: ;
7464 	{
7465 		{
7466 			if (!!((val == ((NI) 0)))) goto LA41_;
7467 			{
7468 				NI T45_;
7469 				NI correctSizeX60gensym108_;
7470 				T45_ = ((*t).data ? (*t).data->Sup.len : 0);
7471 				if (!(T45_ == ((NI) 0))) goto LA46_;
7472 				correctSizeX60gensym108_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
7473 				(*t).counter = ((NI) 0);
7474 				unsureAsgnRef((void**) (&(*t).data), (tySequence__jwzrUFjG9akTIJTBBFvvqxw*) newSeq((&NTIseqLtupleLkey58string_val58intTT__jwzrUFjG9akTIJTBBFvvqxw_), ((NI) (correctSizeX60gensym108_))));
7475 			}
7476 			LA46_: ;
7477 			{
7478 				NIM_BOOL T50_;
7479 				T50_ = (NIM_BOOL)0;
7480 				T50_ = mustRehash__cgen_1002((*t));
7481 				if (!T50_) goto LA51_;
7482 				enlarge__cgen_1038(t);
7483 			}
7484 			LA51_: ;
7485 			ctRawInsert__cgen_1073((*t), (&(*t).data), key, val);
7486 			(*t).counter += ((NI) 1);
7487 		}
7488 		LA41_: ;
7489 	}
7490 	LA1_: ;
7491 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,mangleLocalName__cgen_726)7492 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, mangleLocalName__cgen_726)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
7493 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
7494 	result = NIM_NIL;
7495 	result = (*s).loc.r;
7496 	{
7497 		NimStringDesc* key;
7498 		NI counter;
7499 		if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA3_;
7500 		key = mangle__ccgutils_112((*(*s).name).s);
7501 		shallow__system_7433((&key));
7502 		counter = getOrDefault__cgen_812((*p).sigConflicts, key, ((NI) 0));
7503 		result = rope__ropes_109(key);
7504 		{
7505 			if (!((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 5))) goto LA7_;
7506 			{
7507 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
7508 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
7509 				if (!!((counter == ((NI) 0)))) goto LA11_;
7510 				T13_ = NIM_NIL;
7511 				T13_ = rope__ropes_115(((NI64) ((NI)(counter + ((NI) 1)))));
7512 				T14_ = NIM_NIL;
7513 				T14_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3), T13_);
7514 				add__ropes_159(&result, T14_);
7515 			}
7516 			LA11_: ;
7517 		}
7518 		goto LA5_;
7519 		LA7_: ;
7520 		{
7521 			NIM_BOOL T16_;
7522 			NIM_BOOL T17_;
7523 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
7524 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
7525 			T16_ = (NIM_BOOL)0;
7526 			T17_ = (NIM_BOOL)0;
7527 			T17_ = !((counter == ((NI) 0)));
7528 			if (T17_) goto LA18_;
7529 			T17_ = isKeyword__cgen_618((*s).name);
7530 			LA18_: ;
7531 			T16_ = T17_;
7532 			if (T16_) goto LA19_;
7533 			T16_ = contains__cgen_702((*(*(*(*p).module).g).config).cppDefines, key);
7534 			LA19_: ;
7535 			if (!T16_) goto LA20_;
7536 			T22_ = NIM_NIL;
7537 			T22_ = rope__ropes_115(((NI64) ((NI)(counter + ((NI) 1)))));
7538 			T23_ = NIM_NIL;
7539 			T23_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3), T22_);
7540 			add__ropes_159(&result, T23_);
7541 		}
7542 		goto LA5_;
7543 		LA20_: ;
7544 		LA5_: ;
7545 		inc__cgen_935((&(*p).sigConflicts), key, ((NI) 1));
7546 		asgnRef((void**) (&(*s).loc.r), result);
7547 		{
7548 			if (!!(((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 5)))) goto LA26_;
7549 			{
7550 				NI T32_;
7551 				if (!(*(*p).module).ndi.enabled) goto LA30_;
7552 				asgnRef((void**) (&(*(*p).module).ndi.syms), (tySequence__eHqUwlHGGaPw0TDPDeL79cQ*) incrSeqV3((TGenericSeq*)((*(*p).module).ndi.syms), (&NTIseqLpsymT__eHqUwlHGGaPw0TDPDeL79cQ_)));
7553 				T32_ = (*(*p).module).ndi.syms->Sup.len++;
7554 				asgnRef((void**) (&(*(*p).module).ndi.syms->data[T32_]), s);
7555 			}
7556 			LA30_: ;
7557 		}
7558 		LA26_: ;
7559 	}
7560 	LA3_: ;
7561 	return result;
7562 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3729)7563 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3729)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
7564 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
7565 	result = NIM_NIL;
7566 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_88), args, argsLen_0);
7567 	return result;
7568 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,localVarDecl__cgen_11059)7569 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, localVarDecl__cgen_11059)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
7570 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
7571 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s;
7572 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
7573 	result = NIM_NIL;
7574 	s = (*n)._kind_4.sym;
7575 	{
7576 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
7577 		if (!((*s).loc.k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA3_;
7578 		T5_ = NIM_NIL;
7579 		T5_ = mangleLocalName__cgen_726(p, s);
7580 		fillLoc__cgen_65((&(*s).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 2), n, T5_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
7581 		{
7582 			if (!((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 9))) goto LA8_;
7583 			(*s).loc.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 2)) & 15);
7584 		}
7585 		LA8_: ;
7586 	}
7587 	LA3_: ;
7588 	{
7589 		NIM_BOOL T12_;
7590 		tyArray__JiWwrsTRC6xqNlGcBthSVA T16_;
7591 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
7592 		T12_ = (NIM_BOOL)0;
7593 		T12_ = ((2622208 &((NU32)1<<((NU)((*s).kind)&31U)))!=0);
7594 		if (!(T12_)) goto LA13_;
7595 		T12_ = (((NI) 0) < (*s)._kind_2.alignment);
7596 		LA13_: ;
7597 		if (!T12_) goto LA14_;
7598 		nimZeroMem((void*)T16_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
7599 		T16_[0] = rope__ropes_115(((NI64) ((*s)._kind_2.alignment)));
7600 		T17_ = NIM_NIL;
7601 		T17_ = percent___cgen_3729(T16_, 1);
7602 		add__ropes_159(&result, T17_);
7603 	}
7604 	LA14_: ;
7605 	T18_ = NIM_NIL;
7606 	T18_ = getTypeDesc__cgen_6631((*p).module, (*s).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
7607 	add__ropes_159(&result, T18_);
7608 	{
7609 		if (!((*s).constraint == 0)) goto LA21_;
7610 		{
7611 			if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 10))&63U)))!=0)) goto LA25_;
7612 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_89));
7613 		}
7614 		LA25_: ;
7615 		{
7616 			if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 9))&63U)))!=0)) goto LA29_;
7617 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_90));
7618 		}
7619 		LA29_: ;
7620 		{
7621 			if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 46))&63U)))!=0)) goto LA33_;
7622 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_91));
7623 		}
7624 		LA33_: ;
7625 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
7626 		add__ropes_159(&result, (*s).loc.r);
7627 	}
7628 	goto LA19_;
7629 	LA21_: ;
7630 	{
7631 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T36_;
7632 		nimZeroMem((void*)T36_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
7633 		T36_[0] = result;
7634 		T36_[1] = (*s).loc.r;
7635 		result = runtimeFormat__ropes_271((*(*s).constraint)._kind_3.strVal, T36_, 2);
7636 	}
7637 	LA19_: ;
7638 	return result;
7639 }
N_NIMCALL(void,initLoc__cgen_60)7640 N_LIB_PRIVATE N_NIMCALL(void, initLoc__cgen_60)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result, tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode, tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw s) {
7641 	(*result).k = k;
7642 	(*result).storage = s;
7643 	unsureAsgnRef((void**) (&(*result).lode), lode);
7644 	unsureAsgnRef((void**) (&(*result).r), ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
7645 	(*result).flags = 0;
7646 }
N_NIMCALL(void,initLocExprSingleUse__cgen_11487)7647 N_LIB_PRIVATE N_NIMCALL(void, initLocExprSingleUse__cgen_11487)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result) {
7648 	initLoc__cgen_60(result, ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0), e, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
7649 	{
7650 		NIM_BOOL T3_;
7651 		NIM_BOOL T5_;
7652 		T3_ = (NIM_BOOL)0;
7653 		T3_ = ((*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32));
7654 		if (!(T3_)) goto LA4_;
7655 		T5_ = (NIM_BOOL)0;
7656 		T5_ = !(((*(*e)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)));
7657 		if (T5_) goto LA6_;
7658 		T5_ = ((*(*(*e)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0));
7659 		LA6_: ;
7660 		T3_ = T5_;
7661 		LA4_: ;
7662 		if (!T3_) goto LA7_;
7663 		{
7664 			NIM_BOOL T11_;
7665 			T11_ = (NIM_BOOL)0;
7666 			T11_ = ((*(*e)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
7667 			if (!(T11_)) goto LA12_;
7668 			T11_ = (((*(*(*e)._kind_6.sons->data[((NI) 0)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
7669 			LA12_: ;
7670 			if (!T11_) goto LA13_;
7671 			(*result).flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 8)) & 15);
7672 		}
7673 		LA13_: ;
7674 	}
7675 	goto LA1_;
7676 	LA7_: ;
7677 	{
7678 		(*result).flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 8)) & 15);
7679 	}
7680 	LA1_: ;
7681 	expr__cgen_11460(p, e, result);
7682 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_432)7683 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_432)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
7684 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
7685 	result = NIM_NIL;
7686 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_93), args, argsLen_0);
7687 	return result;
7688 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,rdLoc__cgen_425)7689 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rdLoc__cgen_425)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a) {
7690 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
7691 	result = NIM_NIL;
7692 	result = a.r;
7693 	{
7694 		tyArray__JiWwrsTRC6xqNlGcBthSVA T5_;
7695 		if (!((a.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0))&15U)))!=0)) goto LA3_;
7696 		nimZeroMem((void*)T5_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
7697 		T5_[0] = result;
7698 		result = percent___cgen_432(T5_, 1);
7699 	}
7700 	LA3_: ;
7701 	return result;
7702 }
N_NIMCALL(void,assignLocalVar__cgen_11099)7703 N_LIB_PRIVATE N_NIMCALL(void, assignLocalVar__cgen_11099)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
7704 	NimStringDesc* nl;
7705 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* decl;
7706 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
7707 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
7708 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T8_;
7709 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
7710 	{
7711 		if (!(((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0)) goto LA3_;
7712 		nl = ((NimStringDesc*) NIM_NIL);
7713 	}
7714 	goto LA1_;
7715 	LA3_: ;
7716 	{
7717 		nl = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
7718 	}
7719 	LA1_: ;
7720 	T6_ = NIM_NIL;
7721 	T6_ = localVarDecl__cgen_11059(p, n);
7722 	T7_ = NIM_NIL;
7723 	T7_ = amp___ropes_140(T6_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
7724 	decl = amp___ropes_140(T7_, nl);
7725 	T8_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
7726 	T8_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
7727 	T9_ = NIM_NIL;
7728 	T9_ = indentLine__cgen_280(p, decl);
7729 	add__ropes_159(T8_, T9_);
7730 }
N_INLINE(tyObject_TType__facALICuu8zUj0hjvbTLFg *,t__cgen_79)7731 static N_INLINE(tyObject_TType__facALICuu8zUj0hjvbTLFg*, t__cgen_79)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a) {
7732 	tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
7733 	result = NIM_NIL;
7734 	{
7735 		if (!((*a.lode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA3_;
7736 		result = (*(*a.lode)._kind_4.sym).typ;
7737 	}
7738 	goto LA1_;
7739 	LA3_: ;
7740 	{
7741 		result = (*a.lode).typ;
7742 	}
7743 	LA1_: ;
7744 	return result;
7745 }
N_INLINE(NIM_BOOL,isComplexValueType__cgen_10551)7746 static N_INLINE(NIM_BOOL, isComplexValueType__cgen_10551)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
7747 	NIM_BOOL result;
7748 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t_2;
7749 	NIM_BOOL T1_;
7750 	NIM_BOOL T3_;
7751 	result = (NIM_BOOL)0;
7752 	t_2 = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_98);
7753 	T1_ = (NIM_BOOL)0;
7754 	T1_ = ((*t_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16) || (*t_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19) || (*t_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18) || (*t_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17) || (*t_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27));
7755 	if (T1_) goto LA2_;
7756 	T3_ = (NIM_BOOL)0;
7757 	T3_ = ((*t_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25));
7758 	if (!(T3_)) goto LA4_;
7759 	T3_ = ((*t_2).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9));
7760 	LA4_: ;
7761 	T1_ = T3_;
7762 	LA2_: ;
7763 	result = T1_;
7764 	return result;
7765 }
N_INLINE(NIM_BOOL,usesWriteBarrier__options_3998)7766 static N_INLINE(NIM_BOOL, usesWriteBarrier__options_3998)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
7767 	NIM_BOOL result;
7768 	result = (NIM_BOOL)0;
7769 	result = (((tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw) 8) <= (*conf).selectedGC);
7770 	return result;
7771 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,addrLoc__cgen_10303)7772 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, addrLoc__cgen_10303)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a) {
7773 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
7774 	result = NIM_NIL;
7775 	result = a.r;
7776 	{
7777 		NIM_BOOL T3_;
7778 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
7779 		tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw T6_;
7780 		tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T12_;
7781 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
7782 		T3_ = (NIM_BOOL)0;
7783 		T3_ = !(((a.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0))&15U)))!=0));
7784 		if (!(T3_)) goto LA4_;
7785 		T5_ = NIM_NIL;
7786 		T5_ = t__cgen_79(a);
7787 		T6_ = (tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw)0;
7788 		{
7789 			if (!((*a.lode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA9_;
7790 			T6_ = (*(*a.lode)._kind_4.sym).kind;
7791 		}
7792 		goto LA7_;
7793 		LA9_: ;
7794 		{
7795 			T6_ = ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8);
7796 		}
7797 		LA7_: ;
7798 		T12_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
7799 		T12_ = mapType__cgen_1209(conf, T5_, T6_);
7800 		T3_ = !((T12_ == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17)));
7801 		LA4_: ;
7802 		if (!T3_) goto LA13_;
7803 		T15_ = NIM_NIL;
7804 		T15_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_102), result);
7805 		result = amp___ropes_140(T15_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
7806 	}
7807 	LA13_: ;
7808 	return result;
7809 }
N_NIMCALL(void,genRefAssign__cgen_10547)7810 N_LIB_PRIVATE N_NIMCALL(void, genRefAssign__cgen_10547)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src) {
7811 	{
7812 		NIM_BOOL T3_;
7813 		NIM_BOOL T4_;
7814 		NIM_BOOL T7_;
7815 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
7816 		NimStringDesc* res;
7817 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
7818 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
7819 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
7820 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
7821 		T3_ = (NIM_BOOL)0;
7822 		T4_ = (NIM_BOOL)0;
7823 		T4_ = (dest.storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
7824 		if (!(T4_)) goto LA5_;
7825 		T4_ = !(((*(*(*(*p).module).g).config).selectedGC == ((tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw) 10)));
7826 		LA5_: ;
7827 		T3_ = T4_;
7828 		if (T3_) goto LA6_;
7829 		T7_ = (NIM_BOOL)0;
7830 		T7_ = usesWriteBarrier__options_3998((*(*(*p).module).g).config);
7831 		T3_ = !(T7_);
7832 		LA6_: ;
7833 		if (!T3_) goto LA8_;
7834 		T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
7835 		T10_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
7836 		res = rawNewString(((NI) 80));
7837 		T11_ = NIM_NIL;
7838 		T11_ = rdLoc__cgen_425(dest);
7839 		cgFormatValue__cgen_141((&res), T11_);
7840 		res = resizeString(res, 3);
7841 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
7842 		T12_ = NIM_NIL;
7843 		T12_ = rdLoc__cgen_425(src);
7844 		cgFormatValue__cgen_141((&res), T12_);
7845 		res = resizeString(res, 1);
7846 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
7847 		{
7848 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA15_;
7849 			res = resizeString(res, 1);
7850 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
7851 		}
7852 		LA15_: ;
7853 		T17_ = NIM_NIL;
7854 		T17_ = rope__ropes_109(res);
7855 		T18_ = NIM_NIL;
7856 		T18_ = indentLine__cgen_280(p, T17_);
7857 		add__ropes_159(T10_, T18_);
7858 	}
7859 	goto LA1_;
7860 	LA8_: ;
7861 	{
7862 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T22_;
7863 		NimStringDesc* res_2;
7864 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
7865 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
7866 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
7867 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
7868 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
7869 		if (!(dest.storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3))) goto LA20_;
7870 		T22_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
7871 		T22_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
7872 		res_2 = rawNewString(((NI) 80));
7873 		T23_ = NIM_NIL;
7874 		T23_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_100));
7875 		cgFormatValue__cgen_141((&res_2), T23_);
7876 		res_2 = resizeString(res_2, 10);
7877 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_101));
7878 		T24_ = NIM_NIL;
7879 		T24_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
7880 		cgFormatValue__cgen_141((&res_2), T24_);
7881 		res_2 = resizeString(res_2, 2);
7882 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
7883 		T25_ = NIM_NIL;
7884 		T25_ = rdLoc__cgen_425(src);
7885 		cgFormatValue__cgen_141((&res_2), T25_);
7886 		res_2 = resizeString(res_2, 2);
7887 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
7888 		{
7889 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA28_;
7890 			res_2 = resizeString(res_2, 1);
7891 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
7892 		}
7893 		LA28_: ;
7894 		T30_ = NIM_NIL;
7895 		T30_ = rope__ropes_109(res_2);
7896 		T31_ = NIM_NIL;
7897 		T31_ = indentLine__cgen_280(p, T30_);
7898 		add__ropes_159(T22_, T31_);
7899 	}
7900 	goto LA1_;
7901 	LA20_: ;
7902 	{
7903 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T33_;
7904 		NimStringDesc* res_3;
7905 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
7906 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
7907 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
7908 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
7909 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
7910 		T33_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
7911 		T33_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
7912 		res_3 = rawNewString(((NI) 80));
7913 		T34_ = NIM_NIL;
7914 		T34_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_104));
7915 		cgFormatValue__cgen_141((&res_3), T34_);
7916 		res_3 = resizeString(res_3, 10);
7917 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_101));
7918 		T35_ = NIM_NIL;
7919 		T35_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
7920 		cgFormatValue__cgen_141((&res_3), T35_);
7921 		res_3 = resizeString(res_3, 2);
7922 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
7923 		T36_ = NIM_NIL;
7924 		T36_ = rdLoc__cgen_425(src);
7925 		cgFormatValue__cgen_141((&res_3), T36_);
7926 		res_3 = resizeString(res_3, 2);
7927 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
7928 		{
7929 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA39_;
7930 			res_3 = resizeString(res_3, 1);
7931 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
7932 		}
7933 		LA39_: ;
7934 		T41_ = NIM_NIL;
7935 		T41_ = rope__ropes_109(res_3);
7936 		T42_ = NIM_NIL;
7937 		T42_ = indentLine__cgen_280(p, T41_);
7938 		add__ropes_159(T33_, T42_);
7939 	}
7940 	LA1_: ;
7941 }
N_INLINE(NI,rawGet__cgen_8091)7942 static N_INLINE(NI, rawGet__cgen_8091)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI* hc) {
7943 	NI result;
7944 	NI h;
7945 	NI T10_;
7946 {	result = (NI)0;
7947 	(*hc) = hash__modulegraphs_8963(key);
7948 	{
7949 		if (!((*hc) == ((NI) 0))) goto LA3_;
7950 		(*hc) = ((NI) 314159265);
7951 	}
7952 	LA3_: ;
7953 	{
7954 		NI T7_;
7955 		T7_ = (t.data ? t.data->Sup.len : 0);
7956 		if (!(T7_ == ((NI) 0))) goto LA8_;
7957 		result = ((NI) -1);
7958 		goto BeforeRet_;
7959 	}
7960 	LA8_: ;
7961 	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
7962 	h = (NI)((*hc) & T10_);
7963 	{
7964 		while (1) {
7965 			NIM_BOOL T13_;
7966 			NI T20_;
7967 			T13_ = (NIM_BOOL)0;
7968 			T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
7969 			if (!T13_) goto LA12;
7970 			{
7971 				NIM_BOOL T16_;
7972 				T16_ = (NIM_BOOL)0;
7973 				T16_ = (t.data->data[h].Field0 == (*hc));
7974 				if (!(T16_)) goto LA17_;
7975 				T16_ = eqeq___modulegraphs_8959(t.data->data[h].Field1, key);
7976 				LA17_: ;
7977 				if (!T16_) goto LA18_;
7978 				result = h;
7979 				goto BeforeRet_;
7980 			}
7981 			LA18_: ;
7982 			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
7983 			h = nextTry__pureZcollectionsZtables_34(h, T20_);
7984 		} LA12: ;
7985 	}
7986 	result = (NI)(((NI) -1) - h);
7987 	}BeforeRet_: ;
7988 	return result;
7989 }
N_NIMCALL(void,getOrDefault__cgen_8082)7990 N_LIB_PRIVATE N_NIMCALL(void, getOrDefault__cgen_8082)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, tyTuple__xfZjiVhSEwIz5DDkzuPwog* Result) {
7991 	NI hcX60gensym768_;
7992 	NI indexX60gensym768_;
7993 	unsureAsgnRef((void**)&(*Result).Field0, NIM_NIL);
7994 	(*Result).Field1 = 0;
7995 	hcX60gensym768_ = (NI)0;
7996 	indexX60gensym768_ = rawGet__cgen_8091(t, key, (&hcX60gensym768_));
7997 	{
7998 		if (!(((NI) 0) <= indexX60gensym768_)) goto LA3_;
7999 		unsureAsgnRef((void**) (&(*Result).Field0), t.data->data[indexX60gensym768_].Field2.Field0);
8000 		(*Result).Field1 = t.data->data[indexX60gensym768_].Field2.Field1;
8001 	}
8002 	LA3_: ;
8003 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7790)8004 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7790)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8005 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8006 	result = NIM_NIL;
8007 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_116), args, argsLen_0);
8008 	return result;
8009 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7795)8010 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7795)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8011 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8012 	result = NIM_NIL;
8013 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_117), args, argsLen_0);
8014 	return result;
8015 }
N_NIMCALL(NimStringDesc *,getCFile__cgen_123)8016 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCFile__cgen_123)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
8017 	NimStringDesc* result;
8018 	NimStringDesc* ext;
8019 	NimStringDesc* T13_;
8020 	NimStringDesc* T14_;
8021 	result = NIM_NIL;
8022 	{
8023 		NIM_BOOL T3_;
8024 		T3_ = (NIM_BOOL)0;
8025 		T3_ = ((*(*(*m).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
8026 		if (T3_) goto LA4_;
8027 		T3_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
8028 		LA4_: ;
8029 		if (!T3_) goto LA5_;
8030 		ext = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_118));
8031 	}
8032 	goto LA1_;
8033 	LA5_: ;
8034 	{
8035 		NIM_BOOL T8_;
8036 		T8_ = (NIM_BOOL)0;
8037 		T8_ = ((*(*(*m).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 4));
8038 		if (T8_) goto LA9_;
8039 		T8_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 33))&63U)))!=0);
8040 		LA9_: ;
8041 		if (!T8_) goto LA10_;
8042 		ext = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_119));
8043 	}
8044 	goto LA1_;
8045 	LA10_: ;
8046 	{
8047 		ext = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_120));
8048 	}
8049 	LA1_: ;
8050 	T13_ = NIM_NIL;
8051 	T13_ = withPackageName__options_4173((*(*m).g).config, (*m).cfilename);
8052 	T14_ = NIM_NIL;
8053 	T14_ = completeCfilePath__extccomp_713((*(*m).g).config, T13_, NIM_TRUE);
8054 	result = noschangeFileExt(T14_, ext);
8055 	return result;
8056 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getModuleDllPath__cgen_125)8057 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getModuleDllPath__cgen_125)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
8058 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8059 	NimStringDesc* T1_;
8060 	tyTuple__7q7q3E6Oj24ZNVJb9aonhAg T2_;
8061 	NimStringDesc* dir;
8062 	NimStringDesc* name;
8063 	NimStringDesc* ext;
8064 	NimStringDesc* filename;
8065 	tyArray__nHXaesL0DJZHyVS07ARPRA T3_;
8066 	NimStringDesc* T4_;
8067 	NimStringDesc* T5_;
8068 	result = NIM_NIL;
8069 	T1_ = NIM_NIL;
8070 	T1_ = getCFile__cgen_123(m);
8071 	nimZeroMem((void*)(&T2_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
8072 	splitFile__pathutils_26(T1_, (&T2_));
8073 	dir = NIM_NIL;
8074 	dir = T2_.Field0;
8075 	name = NIM_NIL;
8076 	name = T2_.Field1;
8077 	ext = NIM_NIL;
8078 	ext = T2_.Field2;
8079 	nimZeroMem((void*)T3_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
8080 	T4_ = NIM_NIL;
8081 	T4_ = rawNewString((name ? name->Sup.len : 0) + (ext ? ext->Sup.len : 0) + 0);
8082 appendString(T4_, name);
8083 appendString(T4_, ext);
8084 	T3_[0] = T4_;
8085 	filename = nsuFormatOpenArray(OS__platform_504[((*(*(*m).g).config).target.targetOS)- 1].Field2, T3_, 1);
8086 	T5_ = NIM_NIL;
8087 	T5_ = rawNewString((dir ? dir->Sup.len : 0) + (filename ? filename->Sup.len : 0) + 1);
8088 appendString(T5_, dir);
8089 appendString(T5_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_121));
8090 appendString(T5_, filename);
8091 	result = makeCString__msgs_50(T5_);
8092 	return result;
8093 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getModuleDllPath__cgen_132)8094 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getModuleDllPath__cgen_132)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NI module) {
8095 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8096 	result = NIM_NIL;
8097 	result = getModuleDllPath__cgen_125((*(*m).g).modules->data[module]);
8098 	return result;
8099 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7800)8100 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7800)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8101 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8102 	result = NIM_NIL;
8103 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_122), args, argsLen_0);
8104 	return result;
8105 }
N_NIMCALL(void,declareNimType__cgen_7784)8106 N_LIB_PRIVATE N_NIMCALL(void, declareNimType__cgen_7784)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* name, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* str, NI module) {
8107 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* nr;
8108 	nr = rope__ropes_109(name);
8109 	{
8110 		NIM_BOOL T3_;
8111 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T6_;
8112 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
8113 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T8_;
8114 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
8115 		T3_ = (NIM_BOOL)0;
8116 		T3_ = hcrOn__cgen_42(m);
8117 		if (!T3_) goto LA4_;
8118 		nimZeroMem((void*)T6_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
8119 		T6_[0] = str;
8120 		T6_[1] = nr;
8121 		T7_ = NIM_NIL;
8122 		T7_ = percent___cgen_7790(T6_, 2);
8123 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T7_);
8124 		nimZeroMem((void*)T8_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
8125 		T8_[0] = str;
8126 		T8_[1] = getModuleDllPath__cgen_132(m, module);
8127 		T8_[2] = nr;
8128 		T9_ = NIM_NIL;
8129 		T9_ = percent___cgen_7795(T8_, 3);
8130 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 14))- 0], T9_);
8131 	}
8132 	goto LA1_;
8133 	LA4_: ;
8134 	{
8135 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T11_;
8136 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
8137 		nimZeroMem((void*)T11_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
8138 		T11_[0] = str;
8139 		T11_[1] = nr;
8140 		T12_ = NIM_NIL;
8141 		T12_ = percent___cgen_7800(T11_, 2);
8142 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T12_);
8143 	}
8144 	LA1_: ;
8145 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_8462)8146 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_8462)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8147 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8148 	result = NIM_NIL;
8149 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_123), args, argsLen_0);
8150 	return result;
8151 }
N_INLINE(NIM_BOOL,moduleOpenForCodegen__modulegraphs_9377)8152 static N_INLINE(NIM_BOOL, moduleOpenForCodegen__modulegraphs_9377)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, NI32 m) {
8153 	NIM_BOOL result;
8154 	result = (NIM_BOOL)0;
8155 	{
8156 		if (!((*(*g).config).symbolFiles == ((tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ) 0))) goto LA3_;
8157 		result = NIM_TRUE;
8158 	}
8159 	goto LA1_;
8160 	LA3_: ;
8161 	{
8162 		result = !(((41 &((NU8)1<<((NU)((*g).packed_0->data[m].status)&7U)))!=0));
8163 	}
8164 	LA1_: ;
8165 	return result;
8166 }
N_INLINE(NIM_BOOL,mustRehash__cgen_8755)8167 static N_INLINE(NIM_BOOL, mustRehash__cgen_8755)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ t) {
8168 	NIM_BOOL result;
8169 	NIM_BOOL T1_;
8170 	NI T2_;
8171 	NI T4_;
8172 	result = (NIM_BOOL)0;
8173 	T1_ = (NIM_BOOL)0;
8174 	T2_ = (t.data ? t.data->Sup.len : 0);
8175 	T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
8176 	if (T1_) goto LA3_;
8177 	T4_ = (t.data ? t.data->Sup.len : 0);
8178 	T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
8179 	LA3_: ;
8180 	result = T1_;
8181 	return result;
8182 }
N_NIMCALL(void,rawInsert__cgen_9272)8183 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__cgen_9272)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ* t, tySequence__YT27F6szr8EQuTI39aUMYuA** data, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, tyTuple__xfZjiVhSEwIz5DDkzuPwog val, NI hc, NI h) {
8184 	nimCopyMem((void*)(*data)->data[h].Field1, (NIM_CONST void*)key, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
8185 	asgnRef((void**) (&(*data)->data[h].Field2.Field0), val.Field0);
8186 	(*data)->data[h].Field2.Field1 = val.Field1;
8187 	(*data)->data[h].Field0 = hc;
8188 }
N_NIMCALL(void,enlarge__cgen_8941)8189 N_LIB_PRIVATE N_NIMCALL(void, enlarge__cgen_8941)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ* t) {
8190 	tySequence__YT27F6szr8EQuTI39aUMYuA* n;
8191 	NI T1_;
8192 	tySequence__YT27F6szr8EQuTI39aUMYuA* T2_;
8193 	n = NIM_NIL;
8194 	T1_ = ((*t).data ? (*t).data->Sup.len : 0);
8195 	n = (tySequence__YT27F6szr8EQuTI39aUMYuA*) newSeq((&NTIkeyvaluepairseq__YT27F6szr8EQuTI39aUMYuA_), ((NI) ((NI)(T1_ * ((NI) 2)))));
8196 	T2_ = NIM_NIL;
8197 	T2_ = (*t).data;
8198 	unsureAsgnRef((void**) (&(*t).data), n);
8199 	n = T2_;
8200 	{
8201 		NI i;
8202 		NI colontmp_;
8203 		NI T4_;
8204 		NI res;
8205 		i = (NI)0;
8206 		colontmp_ = (NI)0;
8207 		T4_ = ((n ? n->Sup.len : 0)-1);
8208 		colontmp_ = T4_;
8209 		res = ((NI) 0);
8210 		{
8211 			while (1) {
8212 				NI eh;
8213 				if (!(res <= colontmp_)) goto LA6;
8214 				i = res;
8215 				eh = n->data[i].Field0;
8216 				{
8217 					NIM_BOOL T9_;
8218 					NI j;
8219 					NI T12_;
8220 					tyArray__qtqsWM5aXmcpMIVmvq3kAA T17_;
8221 					tyTuple__xfZjiVhSEwIz5DDkzuPwog T18_;
8222 					T9_ = (NIM_BOOL)0;
8223 					T9_ = isFilled__pureZcollectionsZtables_31(eh);
8224 					if (!T9_) goto LA10_;
8225 					T12_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
8226 					j = (NI)(eh & T12_);
8227 					{
8228 						while (1) {
8229 							NIM_BOOL T15_;
8230 							NI T16_;
8231 							T15_ = (NIM_BOOL)0;
8232 							T15_ = isFilled__pureZcollectionsZtables_31((*t).data->data[j].Field0);
8233 							if (!T15_) goto LA14;
8234 							T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
8235 							j = nextTry__pureZcollectionsZtables_34(j, T16_);
8236 						} LA14: ;
8237 					}
8238 					nimCopyMem((void*)T17_, (NIM_CONST void*)n->data[i].Field1, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
8239 					nimZeroMem((void*)n->data[i].Field1, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
8240 					nimZeroMem((void*)(&T18_), sizeof(tyTuple__xfZjiVhSEwIz5DDkzuPwog));
8241 					T18_.Field0 = n->data[i].Field2.Field0;
8242 					T18_.Field1 = n->data[i].Field2.Field1;
8243 					unsureAsgnRef((void**)&n->data[i].Field2.Field0, NIM_NIL);
8244 					n->data[i].Field2.Field1 = 0;
8245 					rawInsert__cgen_9272(t, (&(*t).data), T17_, T18_, eh, j);
8246 				}
8247 				LA10_: ;
8248 				res += ((NI) 1);
8249 			} LA6: ;
8250 		}
8251 	}
8252 }
N_INLINE(NI,rawGetKnownHC__cgen_9453)8253 static N_INLINE(NI, rawGetKnownHC__cgen_9453)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI hc) {
8254 	NI result;
8255 	NI h;
8256 	NI T6_;
8257 {	result = (NI)0;
8258 	{
8259 		NI T3_;
8260 		T3_ = (t.data ? t.data->Sup.len : 0);
8261 		if (!(T3_ == ((NI) 0))) goto LA4_;
8262 		result = ((NI) -1);
8263 		goto BeforeRet_;
8264 	}
8265 	LA4_: ;
8266 	T6_ = ((t.data ? t.data->Sup.len : 0)-1);
8267 	h = (NI)(hc & T6_);
8268 	{
8269 		while (1) {
8270 			NIM_BOOL T9_;
8271 			NI T16_;
8272 			T9_ = (NIM_BOOL)0;
8273 			T9_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
8274 			if (!T9_) goto LA8;
8275 			{
8276 				NIM_BOOL T12_;
8277 				T12_ = (NIM_BOOL)0;
8278 				T12_ = (t.data->data[h].Field0 == hc);
8279 				if (!(T12_)) goto LA13_;
8280 				T12_ = eqeq___modulegraphs_8959(t.data->data[h].Field1, key);
8281 				LA13_: ;
8282 				if (!T12_) goto LA14_;
8283 				result = h;
8284 				goto BeforeRet_;
8285 			}
8286 			LA14_: ;
8287 			T16_ = ((t.data ? t.data->Sup.len : 0)-1);
8288 			h = nextTry__pureZcollectionsZtables_34(h, T16_);
8289 		} LA8: ;
8290 	}
8291 	result = (NI)(((NI) -1) - h);
8292 	}BeforeRet_: ;
8293 	return result;
8294 }
N_NIMCALL(void,X5BX5Deq___cgen_8556)8295 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___cgen_8556)(tyObject_Table__8LfpO9aQ1o1cXrzKxTeuSYQ* t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, tyTuple__xfZjiVhSEwIz5DDkzuPwog val) {
8296 	NI hc;
8297 	NI index;
8298 	{
8299 		NI T3_;
8300 		NI correctSizeX60gensym775_;
8301 		T3_ = ((*t).data ? (*t).data->Sup.len : 0);
8302 		if (!(T3_ == ((NI) 0))) goto LA4_;
8303 		correctSizeX60gensym775_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
8304 		(*t).counter = ((NI) 0);
8305 		unsureAsgnRef((void**) (&(*t).data), (tySequence__YT27F6szr8EQuTI39aUMYuA*) newSeq((&NTIkeyvaluepairseq__YT27F6szr8EQuTI39aUMYuA_), ((NI) (correctSizeX60gensym775_))));
8306 	}
8307 	LA4_: ;
8308 	hc = (NI)0;
8309 	index = rawGet__cgen_8091((*t), key, (&hc));
8310 	{
8311 		if (!(((NI) 0) <= index)) goto LA8_;
8312 		asgnRef((void**) (&(*t).data->data[index].Field2.Field0), val.Field0);
8313 		(*t).data->data[index].Field2.Field1 = val.Field1;
8314 	}
8315 	goto LA6_;
8316 	LA8_: ;
8317 	{
8318 		{
8319 			NI T13_;
8320 			NI correctSizeX60gensym778_;
8321 			T13_ = ((*t).data ? (*t).data->Sup.len : 0);
8322 			if (!(T13_ == ((NI) 0))) goto LA14_;
8323 			correctSizeX60gensym778_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
8324 			(*t).counter = ((NI) 0);
8325 			unsureAsgnRef((void**) (&(*t).data), (tySequence__YT27F6szr8EQuTI39aUMYuA*) newSeq((&NTIkeyvaluepairseq__YT27F6szr8EQuTI39aUMYuA_), ((NI) (correctSizeX60gensym778_))));
8326 		}
8327 		LA14_: ;
8328 		{
8329 			NIM_BOOL T18_;
8330 			T18_ = (NIM_BOOL)0;
8331 			T18_ = mustRehash__cgen_8755((*t));
8332 			if (!T18_) goto LA19_;
8333 			enlarge__cgen_8941(t);
8334 			index = rawGetKnownHC__cgen_9453((*t), key, hc);
8335 		}
8336 		LA19_: ;
8337 		index = (NI)(((NI) -1) - index);
8338 		rawInsert__cgen_9272(t, (&(*t).data), key, val, hc, index);
8339 		(*t).counter += ((NI) 1);
8340 	}
8341 	LA6_: ;
8342 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genTypeInfo2Name__cgen_7805)8343 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTypeInfo2Name__cgen_7805)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
8344 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8345 	NimStringDesc* res;
8346 	tyObject_TType__facALICuu8zUj0hjvbTLFg* it;
8347 	result = NIM_NIL;
8348 	res = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_127));
8349 	it = t;
8350 	{
8351 		while (1) {
8352 			if (!!((it == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA2;
8353 			it = skipTypes__ast_3735(it, TM__MQdRN7fpbG7rPm4JpVVAhA_112);
8354 			{
8355 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m_2;
8356 				if (!!(((*it).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA5_;
8357 				m_2 = (*(*it).sym).owner;
8358 				{
8359 					while (1) {
8360 						NIM_BOOL T9_;
8361 						T9_ = (NIM_BOOL)0;
8362 						T9_ = !((m_2 == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
8363 						if (!(T9_)) goto LA10_;
8364 						T9_ = !(((*m_2).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 6)));
8365 						LA10_: ;
8366 						if (!T9_) goto LA8;
8367 						m_2 = (*m_2).owner;
8368 					} LA8: ;
8369 				}
8370 				{
8371 					NIM_BOOL T13_;
8372 					T13_ = (NIM_BOOL)0;
8373 					T13_ = (m_2 == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
8374 					if (T13_) goto LA14_;
8375 					T13_ = (((*m_2).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0);
8376 					LA14_: ;
8377 					if (!T13_) goto LA15_;
8378 					res = resizeString(res, ((*(*(*it).sym).name).s ? (*(*(*it).sym).name).s->Sup.len : 0) + 0);
8379 appendString(res, (*(*(*it).sym).name).s);
8380 				}
8381 				goto LA11_;
8382 				LA15_: ;
8383 				{
8384 					tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* p;
8385 					NimStringDesc* T25_;
8386 					p = (*m_2).owner;
8387 					{
8388 						NIM_BOOL T20_;
8389 						NimStringDesc* T24_;
8390 						T20_ = (NIM_BOOL)0;
8391 						T20_ = !((p == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
8392 						if (!(T20_)) goto LA21_;
8393 						T20_ = ((*p).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 24));
8394 						LA21_: ;
8395 						if (!T20_) goto LA22_;
8396 						T24_ = NIM_NIL;
8397 						T24_ = rawNewString(((*(*p).name).s ? (*(*p).name).s->Sup.len : 0) + 1);
8398 appendString(T24_, (*(*p).name).s);
8399 appendString(T24_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128));
8400 						res = resizeString(res, (T24_ ? T24_->Sup.len : 0) + 0);
8401 appendString(res, T24_);
8402 					}
8403 					LA22_: ;
8404 					T25_ = NIM_NIL;
8405 					T25_ = rawNewString(((*(*m_2).name).s ? (*(*m_2).name).s->Sup.len : 0) + 1);
8406 appendString(T25_, (*(*m_2).name).s);
8407 appendString(T25_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128));
8408 					res = resizeString(res, (T25_ ? T25_->Sup.len : 0) + 0);
8409 appendString(res, T25_);
8410 					res = resizeString(res, ((*(*(*it).sym).name).s ? (*(*(*it).sym).name).s->Sup.len : 0) + 0);
8411 appendString(res, (*(*(*it).sym).name).s);
8412 				}
8413 				LA11_: ;
8414 			}
8415 			goto LA3_;
8416 			LA5_: ;
8417 			{
8418 				tyArray__qtqsWM5aXmcpMIVmvq3kAA T27_;
8419 				NimStringDesc* T28_;
8420 				nimZeroMem((void*)T27_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
8421 				hashType__sighashes_462(it, 2, T27_);
8422 				T28_ = NIM_NIL;
8423 				T28_ = dollar___modulegraphs_8947(T27_);
8424 				res = resizeString(res, (T28_ ? T28_->Sup.len : 0) + 0);
8425 appendString(res, T28_);
8426 			}
8427 			LA3_: ;
8428 			res = resizeString(res, 1);
8429 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_127));
8430 			it = (*it).sons->data[((NI) 0)];
8431 		} LA2: ;
8432 	}
8433 	result = makeCString__msgs_50(res);
8434 	return result;
8435 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7895)8436 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7895)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8437 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8438 	result = NIM_NIL;
8439 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_129), args, argsLen_0);
8440 	return result;
8441 }
N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,getBody__modulegraphs_11241)8442 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getBody__modulegraphs_11241)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
8443 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
8444 	result = NIM_NIL;
8445 	result = (*(*s).ast)._kind_6.sons->data[((NI) 6)];
8446 	{
8447 		NIM_BOOL T3_;
8448 		T3_ = (NIM_BOOL)0;
8449 		T3_ = (result == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
8450 		if (!(T3_)) goto LA4_;
8451 		T3_ = ((28 &((NU8)1<<((NU)((*(*g).config).symbolFiles)&7U)))!=0);
8452 		LA4_: ;
8453 		if (!T3_) goto LA5_;
8454 		result = loadProcBody__icZic_8390((*g).config, (*g).cache, (&(*g).packed_0), s);
8455 		asgnRef((void**) (&(*(*s).ast)._kind_6.sons->data[((NI) 6)]), result);
8456 	}
8457 	LA5_: ;
8458 	return result;
8459 }
N_INLINE(NIM_BOOL,isTrivialProc__cgen_7846)8460 static N_INLINE(NIM_BOOL, isTrivialProc__cgen_7846)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
8461 	NIM_BOOL result;
8462 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1_;
8463 	NI T2_;
8464 	result = (NIM_BOOL)0;
8465 	T1_ = NIM_NIL;
8466 	T1_ = getBody__modulegraphs_11241(g, s);
8467 	T2_ = (NI)0;
8468 	T2_ = len__ast_3198(T1_);
8469 	result = (T2_ == ((NI) 0));
8470 	return result;
8471 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genHook__cgen_7853)8472 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genHook__cgen_7853)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg op) {
8473 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8474 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* theProc;
8475 	result = NIM_NIL;
8476 	theProc = getAttachedOp__modulegraphs_4011((*(*m).g).graph, t, op);
8477 	{
8478 		NIM_BOOL T3_;
8479 		NIM_BOOL T5_;
8480 		T3_ = (NIM_BOOL)0;
8481 		T3_ = !((theProc == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
8482 		if (!(T3_)) goto LA4_;
8483 		T5_ = (NIM_BOOL)0;
8484 		T5_ = isTrivialProc__cgen_7846((*(*m).g).graph, theProc);
8485 		T3_ = !(T5_);
8486 		LA4_: ;
8487 		if (!T3_) goto LA6_;
8488 		{
8489 			NIM_BOOL T10_;
8490 			NimStringDesc* T14_;
8491 			T10_ = (NIM_BOOL)0;
8492 			T10_ = ((*theProc).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
8493 			if (T10_) goto LA11_;
8494 			T10_ = !(((*(*theProc).typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 0)));
8495 			LA11_: ;
8496 			if (!T10_) goto LA12_;
8497 			T14_ = NIM_NIL;
8498 			T14_ = rawNewString(((*(*theProc).name).s ? (*(*theProc).name).s->Sup.len : 0) + 47);
8499 appendString(T14_, (*(*theProc).name).s);
8500 appendString(T14_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_130));
8501 			liMessage__msgs_1118((*(*m).g).config, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T14_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_131, NIM_FALSE);
8502 		}
8503 		LA12_: ;
8504 		genProc__cgen_411(m, theProc);
8505 		result = (*theProc).loc.r;
8506 	}
8507 	goto LA1_;
8508 	LA6_: ;
8509 	{
8510 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_99));
8511 	}
8512 	LA1_: ;
8513 	return result;
8514 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7903)8515 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7903)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8516 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8517 	result = NIM_NIL;
8518 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_132), args, argsLen_0);
8519 	return result;
8520 }
N_INLINE(NI,len__ast_4002)8521 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n) {
8522 	NI result;
8523 	NI T1_;
8524 	result = (NI)0;
8525 	T1_ = ((*n).sons ? (*n).sons->Sup.len : 0);
8526 	result = T1_;
8527 	return result;
8528 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_9961)8529 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_9961)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8530 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8531 	result = NIM_NIL;
8532 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_136), args, argsLen_0);
8533 	return result;
8534 }
N_INLINE(void,addInt__stdZprivateZdigitsutils_189)8535 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x) {
8536 	addInt__stdZprivateZdigitsutils_167(result, ((NI64) (x)));
8537 }
N_NIMCALL(NimStringDesc *,typeToC__cgen_9738)8538 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, typeToC__cgen_9738)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
8539 	NimStringDesc* result;
8540 	NimStringDesc* s;
8541 	result = NIM_NIL;
8542 	s = typeToString__types_50(t, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
8543 	result = rawNewString(((NI) ((s ? s->Sup.len : 0))));
8544 	{
8545 		NI i;
8546 		NI colontmp_;
8547 		NI i_2;
8548 		i = (NI)0;
8549 		colontmp_ = (NI)0;
8550 		colontmp_ = (s ? s->Sup.len : 0);
8551 		i_2 = ((NI) 0);
8552 		{
8553 			while (1) {
8554 				NIM_CHAR c;
8555 				if (!(i_2 < colontmp_)) goto LA3;
8556 				i = i_2;
8557 				c = s->data[i];
8558 				switch (((NU8)(c))) {
8559 				case 97 ... 122:
8560 				{
8561 					result = addChar(result, c);
8562 				}
8563 				break;
8564 				case 65 ... 90:
8565 				{
8566 					NIM_CHAR T6_;
8567 					T6_ = (NIM_CHAR)0;
8568 					T6_ = nsuToLowerAsciiChar(c);
8569 					result = addChar(result, T6_);
8570 				}
8571 				break;
8572 				case 32:
8573 				{
8574 				}
8575 				break;
8576 				case 44:
8577 				{
8578 					result = addChar(result, 95);
8579 				}
8580 				break;
8581 				case 46:
8582 				{
8583 					result = addChar(result, 79);
8584 				}
8585 				break;
8586 				case 91:
8587 				case 40:
8588 				case 123:
8589 				{
8590 					result = addChar(result, 76);
8591 				}
8592 				break;
8593 				case 93:
8594 				case 41:
8595 				case 125:
8596 				{
8597 					result = addChar(result, 84);
8598 				}
8599 				break;
8600 				default:
8601 				{
8602 					addInt__stdZprivateZdigitsutils_189((&result), ((NU8)(c)));
8603 				}
8604 				break;
8605 				}
8606 				i_2 += ((NI) 1);
8607 			} LA3: ;
8608 		}
8609 	}
8610 	return result;
8611 }
N_INLINE(NI,rawGet__lineinfos_448)8612 static N_INLINE(NI, rawGet__lineinfos_448)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA t, NimStringDesc* key, NI* hc) {
8613 	NI result;
8614 	NI h;
8615 	NI T10_;
8616 {	result = (NI)0;
8617 	(*hc) = hash__pureZhashes_279(key);
8618 	{
8619 		if (!((*hc) == ((NI) 0))) goto LA3_;
8620 		(*hc) = ((NI) 314159265);
8621 	}
8622 	LA3_: ;
8623 	{
8624 		NI T7_;
8625 		T7_ = (t.data ? t.data->Sup.len : 0);
8626 		if (!(T7_ == ((NI) 0))) goto LA8_;
8627 		result = ((NI) -1);
8628 		goto BeforeRet_;
8629 	}
8630 	LA8_: ;
8631 	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
8632 	h = (NI)((*hc) & T10_);
8633 	{
8634 		while (1) {
8635 			NIM_BOOL T13_;
8636 			NI T20_;
8637 			T13_ = (NIM_BOOL)0;
8638 			T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
8639 			if (!T13_) goto LA12;
8640 			{
8641 				NIM_BOOL T16_;
8642 				T16_ = (NIM_BOOL)0;
8643 				T16_ = (t.data->data[h].Field0 == (*hc));
8644 				if (!(T16_)) goto LA17_;
8645 				T16_ = eqStrings(t.data->data[h].Field1, key);
8646 				LA17_: ;
8647 				if (!T16_) goto LA18_;
8648 				result = h;
8649 				goto BeforeRet_;
8650 			}
8651 			LA18_: ;
8652 			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
8653 			h = nextTry__pureZcollectionsZtables_34(h, T20_);
8654 		} LA12: ;
8655 	}
8656 	result = (NI)(((NI) -1) - h);
8657 	}BeforeRet_: ;
8658 	return result;
8659 }
N_NIMCALL(NI32,getOrDefault__cgen_10078)8660 N_LIB_PRIVATE N_NIMCALL(NI32, getOrDefault__cgen_10078)(tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA t, NimStringDesc* key) {
8661 	NI32 result;
8662 	NI hcX60gensym788_;
8663 	NI indexX60gensym788_;
8664 	result = (NI32)0;
8665 	hcX60gensym788_ = (NI)0;
8666 	indexX60gensym788_ = rawGet__lineinfos_448(t, key, (&hcX60gensym788_));
8667 	{
8668 		if (!(((NI) 0) <= indexX60gensym788_)) goto LA3_;
8669 		result = t.data->data[indexX60gensym788_].Field2;
8670 	}
8671 	LA3_: ;
8672 	return result;
8673 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,tiNameForHcr__cgen_6784)8674 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, tiNameForHcr__cgen_6784)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name) {
8675 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8676 {	result = NIM_NIL;
8677 	{
8678 		NIM_BOOL T3_;
8679 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
8680 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
8681 		T3_ = (NIM_BOOL)0;
8682 		T3_ = hcrOn__cgen_42(m);
8683 		if (!T3_) goto LA4_;
8684 		T6_ = NIM_NIL;
8685 		T6_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_84));
8686 		T7_ = NIM_NIL;
8687 		T7_ = amp___ropes_128(T6_, name);
8688 		result = amp___ropes_140(T7_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
8689 	}
8690 	goto LA1_;
8691 	LA4_: ;
8692 	{
8693 		result = name;
8694 	}
8695 	LA1_: ;
8696 	goto BeforeRet_;
8697 	}BeforeRet_: ;
8698 	return result;
8699 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6808)8700 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6808)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8701 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8702 	result = NIM_NIL;
8703 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_139), args, argsLen_0);
8704 	return result;
8705 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6814)8706 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6814)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8707 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8708 	result = NIM_NIL;
8709 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_140), args, argsLen_0);
8710 	return result;
8711 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6828)8712 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6828)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8713 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8714 	result = NIM_NIL;
8715 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_144), args, argsLen_0);
8716 	return result;
8717 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6833)8718 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6833)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8719 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8720 	result = NIM_NIL;
8721 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_146), args, argsLen_0);
8722 	return result;
8723 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6838)8724 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6838)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8725 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8726 	result = NIM_NIL;
8727 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_147), args, argsLen_0);
8728 	return result;
8729 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6843)8730 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6843)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8731 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8732 	result = NIM_NIL;
8733 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_148), args, argsLen_0);
8734 	return result;
8735 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getModuleDllPath__cgen_136)8736 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getModuleDllPath__cgen_136)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
8737 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8738 	result = NIM_NIL;
8739 	result = getModuleDllPath__cgen_125((*(*m).g).modules->data[(*s).Sup.itemId.module]);
8740 	return result;
8741 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6848)8742 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6848)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8743 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8744 	result = NIM_NIL;
8745 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_149), args, argsLen_0);
8746 	return result;
8747 }
N_NIMCALL(void,genTypeInfoAuxBase__cgen_6788)8748 N_LIB_PRIVATE N_NIMCALL(void, genTypeInfoAuxBase__cgen_6788)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* base, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
8749 	NI nimtypeKind;
8750 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* nameHcr;
8751 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* size;
8752 	tyArray__f7nG5LD47BH5K9c6mASit3g T12_;
8753 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
8754 	NI flags;
8755 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
8756 	nimtypeKind = (NI)0;
8757 	{
8758 		NIM_BOOL T3_;
8759 		T3_ = (NIM_BOOL)0;
8760 		T3_ = isObjLackingTypeField__cgen_1319(typ);
8761 		if (!T3_) goto LA4_;
8762 		nimtypeKind = ((NI) 18);
8763 	}
8764 	goto LA1_;
8765 	LA4_: ;
8766 	{
8767 		nimtypeKind = (*typ).kind;
8768 	}
8769 	LA1_: ;
8770 	nameHcr = tiNameForHcr__cgen_6784(m, name);
8771 	size = NIM_NIL;
8772 	{
8773 		if (!(((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 40))&63U)))!=0)) goto LA9_;
8774 		size = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_138));
8775 	}
8776 	goto LA7_;
8777 	LA9_: ;
8778 	{
8779 		size = getTypeDesc__cgen_6631(m, origType, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
8780 	}
8781 	LA7_: ;
8782 	nimZeroMem((void*)T12_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
8783 	T12_[0] = nameHcr;
8784 	T12_[1] = size;
8785 	T12_[2] = rope__ropes_115(((NI64) (nimtypeKind)));
8786 	T12_[3] = base;
8787 	T13_ = NIM_NIL;
8788 	T13_ = percent___cgen_6808(T12_, 4);
8789 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T13_);
8790 	flags = ((NI) 0);
8791 	{
8792 		NIM_BOOL T16_;
8793 		T16_ = (NIM_BOOL)0;
8794 		T16_ = containsGarbageCollectedRef__types_612(typ);
8795 		if (!!(T16_)) goto LA17_;
8796 		flags = (NI)(flags | ((NI) 1));
8797 	}
8798 	LA17_: ;
8799 	{
8800 		NIM_BOOL T21_;
8801 		T21_ = (NIM_BOOL)0;
8802 		T21_ = canFormAcycle__types_762(typ);
8803 		if (!!(T21_)) goto LA22_;
8804 		flags = (NI)(flags | ((NI) 2));
8805 	}
8806 	LA22_: ;
8807 	{
8808 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T28_;
8809 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
8810 		if (!!((flags == ((NI) 0)))) goto LA26_;
8811 		nimZeroMem((void*)T28_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
8812 		T28_[0] = nameHcr;
8813 		T28_[1] = rope__ropes_115(((NI64) (flags)));
8814 		T29_ = NIM_NIL;
8815 		T29_ = percent___cgen_6814(T28_, 2);
8816 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T29_);
8817 	}
8818 	LA26_: ;
8819 	T30_ = NIM_NIL;
8820 	T30_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134));
8821 	(void)(T30_);
8822 	{
8823 		NIM_BOOL T33_;
8824 		NimStringDesc* typename_1;
8825 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T36_;
8826 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T52_;
8827 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
8828 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
8829 		tyArray__JiWwrsTRC6xqNlGcBthSVA T55_;
8830 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
8831 		T33_ = (NIM_BOOL)0;
8832 		T33_ = isDefined__options_2279((*(*m).g).config, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_141));
8833 		if (!T33_) goto LA34_;
8834 		T36_ = NIM_NIL;
8835 		{
8836 			if (!!(((*origType).typeInst == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA39_;
8837 			T36_ = (*origType).typeInst;
8838 		}
8839 		goto LA37_;
8840 		LA39_: ;
8841 		{
8842 			T36_ = origType;
8843 		}
8844 		LA37_: ;
8845 		typename_1 = typeToString__types_50(T36_, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
8846 		{
8847 			NIM_BOOL T44_;
8848 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T46_;
8849 			NimStringDesc* T49_;
8850 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T50_;
8851 			NimStringDesc* T51_;
8852 			T44_ = (NIM_BOOL)0;
8853 			T44_ = eqStrings(typename_1, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_142));
8854 			if (!(T44_)) goto LA45_;
8855 			T46_ = NIM_NIL;
8856 			T46_ = skipTypes__ast_3735(origType, TM__MQdRN7fpbG7rPm4JpVVAhA_112);
8857 			T44_ = !(((*T46_).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
8858 			LA45_: ;
8859 			if (!T44_) goto LA47_;
8860 			T49_ = NIM_NIL;
8861 			T50_ = NIM_NIL;
8862 			T50_ = skipTypes__ast_3735(origType, TM__MQdRN7fpbG7rPm4JpVVAhA_112);
8863 			T51_ = NIM_NIL;
8864 			T51_ = dollar___msgs_624((*(*m).g).config, (*(*T50_).sym).info);
8865 			T49_ = rawNewString((T51_ ? T51_->Sup.len : 0) + 21);
8866 appendString(T49_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_143));
8867 appendString(T49_, T51_);
8868 			typename_1 = T49_;
8869 		}
8870 		LA47_: ;
8871 		nimZeroMem((void*)T52_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
8872 		T52_[0] = nameHcr;
8873 		T52_[1] = makeCString__msgs_50(typename_1);
8874 		T53_ = NIM_NIL;
8875 		T53_ = percent___cgen_6828(T52_, 2);
8876 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T53_);
8877 		T54_ = NIM_NIL;
8878 		T54_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_145));
8879 		(void)(T54_);
8880 		nimZeroMem((void*)T55_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
8881 		T55_[0] = nameHcr;
8882 		T56_ = NIM_NIL;
8883 		T56_ = percent___cgen_6833(T55_, 1);
8884 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T56_);
8885 	}
8886 	LA34_: ;
8887 	{
8888 		NIM_BOOL T59_;
8889 		tyArray__JiWwrsTRC6xqNlGcBthSVA T62_;
8890 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
8891 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T64_;
8892 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T65_;
8893 		T59_ = (NIM_BOOL)0;
8894 		T59_ = hcrOn__cgen_42(m);
8895 		if (!T59_) goto LA60_;
8896 		nimZeroMem((void*)T62_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
8897 		T62_[0] = name;
8898 		T63_ = NIM_NIL;
8899 		T63_ = percent___cgen_6838(T62_, 1);
8900 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T63_);
8901 		nimZeroMem((void*)T64_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
8902 		T64_[0] = name;
8903 		T64_[1] = getModuleDllPath__cgen_136(m, (*m).module);
8904 		T65_ = NIM_NIL;
8905 		T65_ = percent___cgen_6843(T64_, 2);
8906 		add__ropes_159(&(*m).hcrCreateTypeInfosProc, T65_);
8907 	}
8908 	goto LA57_;
8909 	LA60_: ;
8910 	{
8911 		tyArray__JiWwrsTRC6xqNlGcBthSVA T67_;
8912 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
8913 		nimZeroMem((void*)T67_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
8914 		T67_[0] = name;
8915 		T68_ = NIM_NIL;
8916 		T68_ = percent___cgen_6848(T67_, 1);
8917 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T68_);
8918 	}
8919 	LA57_: ;
8920 }
N_INLINE(NimStringDesc *,toFileLineCol__msgs_615)8921 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_615)(tyTuple__kN8up2W6YKc5YA9avn5mV5w info) {
8922 	NimStringDesc* result;
8923 	result = NIM_NIL;
8924 	result = resizeString(result, (info.Field0 ? info.Field0->Sup.len : 0) + 0);
8925 appendString(result, info.Field0);
8926 	{
8927 		if (!(((NI) 0) < info.Field1)) goto LA3_;
8928 		result = resizeString(result, 1);
8929 appendString(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
8930 		addInt__stdZprivateZdigitsutils_189((&result), info.Field1);
8931 		{
8932 			if (!(((NI) 0) < (NI)(info.Field2 + ((NI) 1)))) goto LA7_;
8933 			result = resizeString(result, 2);
8934 appendString(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
8935 			addInt__stdZprivateZdigitsutils_189((&result), (NI)(info.Field2 + ((NI) 1)));
8936 		}
8937 		LA7_: ;
8938 		result = resizeString(result, 1);
8939 appendString(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
8940 	}
8941 	LA3_: ;
8942 	return result;
8943 }
N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g,nextTypeId__ast_3151)8944 static N_INLINE(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g, nextTypeId__ast_3151)(tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* x) {
8945 	tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g result;
8946 	nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
8947 	(*x).typeId_0 += ((NI) 1);
8948 	nimZeroMem((void*)(&result), sizeof(tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g));
8949 	result.module = (*x).module;
8950 	result.item = (*x).typeId_0;
8951 	return result;
8952 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,fakeClosureType__cgen_7326)8953 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, fakeClosureType__cgen_7326)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner) {
8954 	tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
8955 	tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T1_;
8956 	tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T2_;
8957 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T3_;
8958 	tyObject_TType__facALICuu8zUj0hjvbTLFg* r;
8959 	tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T4_;
8960 	tyObject_TType__facALICuu8zUj0hjvbTLFg* obj;
8961 	result = NIM_NIL;
8962 	T1_ = nextTypeId__ast_3151((*m).Sup.idgen);
8963 	result = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18), T1_, owner);
8964 	T2_ = nextTypeId__ast_3151((*m).Sup.idgen);
8965 	T3_ = NIM_NIL;
8966 	T3_ = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26), T2_, owner);
8967 	rawAddSon__ast_4288(result, T3_, NIM_TRUE);
8968 	T4_ = nextTypeId__ast_3151((*m).Sup.idgen);
8969 	r = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22), T4_, owner);
8970 	obj = createObj__lowerings_288((*(*m).g).graph, (*m).Sup.idgen, owner, (*owner).info, NIM_FALSE);
8971 	rawAddSon__ast_4288(r, obj, NIM_TRUE);
8972 	rawAddSon__ast_4288(result, r, NIM_TRUE);
8973 	return result;
8974 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6775)8975 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6775)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8976 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8977 	result = NIM_NIL;
8978 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_154), args, argsLen_0);
8979 	return result;
8980 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getNimNode__cgen_6772)8981 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getNimNode__cgen_6772)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
8982 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8983 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T1_;
8984 	result = NIM_NIL;
8985 	nimZeroMem((void*)T1_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
8986 	T1_[0] = (*m).typeNodesName;
8987 	T1_[1] = rope__ropes_115(((NI64) ((*m).typeNodes)));
8988 	result = percent___cgen_6775(T1_, 2);
8989 	(*m).typeNodes += ((NI) 1);
8990 	return result;
8991 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6936)8992 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6936)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8993 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
8994 	result = NIM_NIL;
8995 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_155), args, argsLen_0);
8996 	return result;
8997 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6941)8998 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6941)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
8999 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9000 	result = NIM_NIL;
9001 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_156), args, argsLen_0);
9002 	return result;
9003 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6946)9004 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6946)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9005 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9006 	result = NIM_NIL;
9007 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_157), args, argsLen_0);
9008 	return result;
9009 }
N_NIMCALL(void,genTNimNodeArray__cgen_6932)9010 N_LIB_PRIVATE N_NIMCALL(void, genTNimNodeArray__cgen_6932)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* size) {
9011 	{
9012 		NIM_BOOL T3_;
9013 		tyArray__JiWwrsTRC6xqNlGcBthSVA T6_;
9014 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
9015 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T8_;
9016 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
9017 		T3_ = (NIM_BOOL)0;
9018 		T3_ = hcrOn__cgen_42(m);
9019 		if (!T3_) goto LA4_;
9020 		nimZeroMem((void*)T6_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
9021 		T6_[0] = name;
9022 		T7_ = NIM_NIL;
9023 		T7_ = percent___cgen_6936(T6_, 1);
9024 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T7_);
9025 		nimZeroMem((void*)T8_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
9026 		T8_[0] = name;
9027 		T8_[1] = size;
9028 		T8_[2] = getModuleDllPath__cgen_136(m, (*m).module);
9029 		T9_ = NIM_NIL;
9030 		T9_ = percent___cgen_6941(T8_, 3);
9031 		add__ropes_159(&(*m).hcrCreateTypeInfosProc, T9_);
9032 	}
9033 	goto LA1_;
9034 	LA4_: ;
9035 	{
9036 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T11_;
9037 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
9038 		nimZeroMem((void*)T11_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
9039 		T11_[0] = name;
9040 		T11_[1] = size;
9041 		T12_ = NIM_NIL;
9042 		T12_ = percent___cgen_6946(T11_, 2);
9043 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 14))- 0], T12_);
9044 	}
9045 	LA1_: ;
9046 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6981)9047 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6981)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9048 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9049 	result = NIM_NIL;
9050 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_158), args, argsLen_0);
9051 	return result;
9052 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7182)9053 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7182)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9054 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9055 	result = NIM_NIL;
9056 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_159), args, argsLen_0);
9057 	return result;
9058 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6990)9059 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6990)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9060 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9061 	result = NIM_NIL;
9062 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_160), args, argsLen_0);
9063 	return result;
9064 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6998)9065 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6998)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9066 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9067 	result = NIM_NIL;
9068 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_161), args, argsLen_0);
9069 	return result;
9070 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7134)9071 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7134)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9072 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9073 	result = NIM_NIL;
9074 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_162), args, argsLen_0);
9075 	return result;
9076 }
N_NIMCALL(void,genTupleInfo__cgen_7150)9077 N_LIB_PRIVATE N_NIMCALL(void, genTupleInfo__cgen_7150)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
9078 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
9079 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* expr;
9080 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T27_;
9081 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
9082 	T1_ = NIM_NIL;
9083 	T1_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_153));
9084 	genTypeInfoAuxBase__cgen_6788(m, typ, typ, name, T1_, info);
9085 	expr = getNimNode__cgen_6772(m);
9086 	{
9087 		NI T4_;
9088 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
9089 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
9090 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
9091 		NI T9_;
9092 		NimStringDesc* T10_;
9093 		NI T11_;
9094 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
9095 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T20_;
9096 		NI T21_;
9097 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
9098 		T4_ = (NI)0;
9099 		T4_ = len__ast_4002(typ);
9100 		if (!(((NI) 0) < T4_)) goto LA5_;
9101 		T7_ = NIM_NIL;
9102 		T7_ = getTempName__cgen_418(m);
9103 		T8_ = NIM_NIL;
9104 		T8_ = amp___ropes_140(T7_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
9105 		T9_ = (NI)0;
9106 		T9_ = len__ast_4002(typ);
9107 		T10_ = NIM_NIL;
9108 		T10_ = dollar___systemZdollars_3(T9_);
9109 		tmp = amp___ropes_140(T8_, T10_);
9110 		T11_ = (NI)0;
9111 		T11_ = len__ast_4002(typ);
9112 		T12_ = NIM_NIL;
9113 		T12_ = rope__ropes_115(((NI64) (T11_)));
9114 		genTNimNodeArray__cgen_6932(m, tmp, T12_);
9115 		{
9116 			NI i;
9117 			NI colontmp_;
9118 			NI i_2;
9119 			i = (NI)0;
9120 			colontmp_ = (NI)0;
9121 			colontmp_ = len__ast_4002(typ);
9122 			i_2 = ((NI) 0);
9123 			{
9124 				while (1) {
9125 					tyObject_TType__facALICuu8zUj0hjvbTLFg* a;
9126 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp2;
9127 					tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T16_;
9128 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
9129 					tyArray__f7nG5LD47BH5K9c6mASit3g T18_;
9130 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
9131 					if (!(i_2 < colontmp_)) goto LA15;
9132 					i = i_2;
9133 					a = (*typ).sons->data[i];
9134 					tmp2 = getNimNode__cgen_6772(m);
9135 					nimZeroMem((void*)T16_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
9136 					T16_[0] = tmp;
9137 					T16_[1] = rope__ropes_115(((NI64) (i)));
9138 					T16_[2] = tmp2;
9139 					T17_ = NIM_NIL;
9140 					T17_ = percent___cgen_6981(T16_, 3);
9141 					add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T17_);
9142 					nimZeroMem((void*)T18_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
9143 					T18_[0] = tmp2;
9144 					T18_[1] = getTypeDesc__cgen_6631(m, origType, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
9145 					T18_[2] = rope__ropes_115(((NI64) (i)));
9146 					T18_[3] = genTypeInfoV1__cgen_6768(m, a, info);
9147 					T19_ = NIM_NIL;
9148 					T19_ = percent___cgen_7182(T18_, 4);
9149 					add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T19_);
9150 					i_2 += ((NI) 1);
9151 				} LA15: ;
9152 			}
9153 		}
9154 		nimZeroMem((void*)T20_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
9155 		T20_[0] = expr;
9156 		T21_ = (NI)0;
9157 		T21_ = len__ast_4002(typ);
9158 		T20_[1] = rope__ropes_115(((NI64) (T21_)));
9159 		T20_[2] = tmp;
9160 		T22_ = NIM_NIL;
9161 		T22_ = percent___cgen_6990(T20_, 3);
9162 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T22_);
9163 	}
9164 	goto LA2_;
9165 	LA5_: ;
9166 	{
9167 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T24_;
9168 		NI T25_;
9169 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
9170 		nimZeroMem((void*)T24_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
9171 		T24_[0] = expr;
9172 		T25_ = (NI)0;
9173 		T25_ = len__ast_4002(typ);
9174 		T24_[1] = rope__ropes_115(((NI64) (T25_)));
9175 		T26_ = NIM_NIL;
9176 		T26_ = percent___cgen_6998(T24_, 2);
9177 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T26_);
9178 	}
9179 	LA2_: ;
9180 	nimZeroMem((void*)T27_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
9181 	T27_[0] = tiNameForHcr__cgen_6784(m, name);
9182 	T27_[1] = expr;
9183 	T28_ = NIM_NIL;
9184 	T28_ = percent___cgen_7134(T27_, 2);
9185 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T28_);
9186 }
N_NIMCALL(void,genTypeInfoAux__cgen_6853)9187 N_LIB_PRIVATE N_NIMCALL(void, genTypeInfoAux__cgen_6853)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
9188 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* base;
9189 	base = NIM_NIL;
9190 	{
9191 		NIM_BOOL T3_;
9192 		NI T4_;
9193 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
9194 		tyObject_TType__facALICuu8zUj0hjvbTLFg* x;
9195 		T3_ = (NIM_BOOL)0;
9196 		T4_ = (NI)0;
9197 		T4_ = len__ast_4002(typ);
9198 		T3_ = (((NI) 0) < T4_);
9199 		if (!(T3_)) goto LA5_;
9200 		T6_ = NIM_NIL;
9201 		T6_ = lastSon__ast_3743(typ);
9202 		T3_ = !((T6_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
9203 		LA5_: ;
9204 		if (!T3_) goto LA7_;
9205 		x = lastSon__ast_3743(typ);
9206 		{
9207 			if (!((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17))) goto LA11_;
9208 			x = skipTypes__ast_3735(x, TM__MQdRN7fpbG7rPm4JpVVAhA_112);
9209 		}
9210 		LA11_: ;
9211 		{
9212 			NIM_BOOL T15_;
9213 			NIM_BOOL T16_;
9214 			NIM_BOOL T19_;
9215 			T15_ = (NIM_BOOL)0;
9216 			T16_ = (NIM_BOOL)0;
9217 			T16_ = ((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21));
9218 			if (!(T16_)) goto LA17_;
9219 			T16_ = ((*x).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
9220 			LA17_: ;
9221 			T15_ = T16_;
9222 			if (!(T15_)) goto LA18_;
9223 			T19_ = (NIM_BOOL)0;
9224 			T19_ = !(((*x).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
9225 			if (!(T19_)) goto LA20_;
9226 			T19_ = ((1040 & (*(*x).sym).flags) == 16);
9227 			LA20_: ;
9228 			T15_ = T19_;
9229 			LA18_: ;
9230 			if (!T15_) goto LA21_;
9231 			base = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_153));
9232 		}
9233 		goto LA13_;
9234 		LA21_: ;
9235 		{
9236 			base = genTypeInfoV1__cgen_6768(m, x, info);
9237 		}
9238 		LA13_: ;
9239 	}
9240 	goto LA1_;
9241 	LA7_: ;
9242 	{
9243 		base = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_153));
9244 	}
9245 	LA1_: ;
9246 	genTypeInfoAuxBase__cgen_6788(m, typ, origType, name, base, info);
9247 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7677)9248 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7677)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9249 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9250 	result = NIM_NIL;
9251 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_165), args, argsLen_0);
9252 	return result;
9253 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7684)9254 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7684)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9255 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9256 	result = NIM_NIL;
9257 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_166), args, argsLen_0);
9258 	return result;
9259 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7689)9260 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7689)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9261 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9262 	result = NIM_NIL;
9263 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_167), args, argsLen_0);
9264 	return result;
9265 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,lodeTyp__cgen_86)9266 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lodeTyp__cgen_86)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
9267 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
9268 	result = NIM_NIL;
9269 	result = newNode__ast_3332(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1));
9270 	asgnRef((void**) (&(*result).typ), t);
9271 	return result;
9272 }
N_NIMCALL(void,getTemp__cgen_7343)9273 N_LIB_PRIVATE N_NIMCALL(void, getTemp__cgen_7343)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result, NIM_BOOL needsInit) {
9274 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
9275 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
9276 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T3_;
9277 	NimStringDesc* res;
9278 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
9279 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
9280 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
9281 	(*p).labels += ((NI) 1);
9282 	T1_ = NIM_NIL;
9283 	T1_ = rope__ropes_115(((NI64) ((*p).labels)));
9284 	T2_ = NIM_NIL;
9285 	T2_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_169), T1_);
9286 	unsureAsgnRef((void**) (&(*result).r), amp___ropes_140(T2_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3)));
9287 	T3_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
9288 	T3_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
9289 	res = rawNewString(((NI) 80));
9290 	T4_ = NIM_NIL;
9291 	T4_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
9292 	cgFormatValue__cgen_141((&res), T4_);
9293 	res = resizeString(res, 1);
9294 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
9295 	cgFormatValue__cgen_141((&res), (*result).r);
9296 	res = resizeString(res, 1);
9297 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
9298 	{
9299 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA7_;
9300 		res = resizeString(res, 1);
9301 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
9302 	}
9303 	LA7_: ;
9304 	T9_ = NIM_NIL;
9305 	T9_ = rope__ropes_109(res);
9306 	T10_ = NIM_NIL;
9307 	T10_ = indentLine__cgen_280(p, T9_);
9308 	add__ropes_159(T3_, T10_);
9309 	(*result).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1);
9310 	unsureAsgnRef((void**) (&(*result).lode), lodeTyp__cgen_86(t));
9311 	(*result).storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2);
9312 	(*result).flags = 0;
9313 	constructLoc__cgen_10922(p, result, !(needsInit));
9314 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7651)9315 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7651)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9316 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9317 	result = NIM_NIL;
9318 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_170), args, argsLen_0);
9319 	return result;
9320 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_456)9321 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_456)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9322 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9323 	result = NIM_NIL;
9324 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_172), args, argsLen_0);
9325 	return result;
9326 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,lenField__cgen_437)9327 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, lenField__cgen_437)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
9328 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9329 	NimStringDesc* T1_;
9330 	result = NIM_NIL;
9331 	T1_ = NIM_NIL;
9332 	{
9333 		NIM_BOOL T4_;
9334 		T4_ = (NIM_BOOL)0;
9335 		T4_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
9336 		if (T4_) goto LA5_;
9337 		T4_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
9338 		LA5_: ;
9339 		if (!T4_) goto LA6_;
9340 		T1_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_173));
9341 	}
9342 	goto LA2_;
9343 	LA6_: ;
9344 	{
9345 		T1_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_174));
9346 	}
9347 	LA2_: ;
9348 	result = rope__ropes_109(T1_);
9349 	return result;
9350 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,lenExpr__cgen_448)9351 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, lenExpr__cgen_448)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a) {
9352 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9353 	result = NIM_NIL;
9354 	{
9355 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
9356 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA3_;
9357 		T5_ = NIM_NIL;
9358 		T5_ = rdLoc__cgen_425(a);
9359 		result = amp___ropes_140(T5_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_171));
9360 	}
9361 	goto LA1_;
9362 	LA3_: ;
9363 	{
9364 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T7_;
9365 		nimZeroMem((void*)T7_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
9366 		T7_[0] = rdLoc__cgen_425(a);
9367 		T7_[1] = lenField__cgen_437(p);
9368 		result = percent___cgen_456(T7_, 2);
9369 	}
9370 	LA1_: ;
9371 	return result;
9372 }
N_NIMCALL(void,cgFormatValue__cgen_151)9373 N_LIB_PRIVATE N_NIMCALL(void, cgFormatValue__cgen_151)(NimStringDesc** result, tyObject_Int128__9a9axPfb75jdWY25AamJewkA value) {
9374 	addInt128__int495056_643(result, value);
9375 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7456)9376 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7456)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9377 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9378 	result = NIM_NIL;
9379 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_182), args, argsLen_0);
9380 	return result;
9381 }
N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,parentObj__cgen_7444)9382 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, parentObj__cgen_7444)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
9383 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9384 	result = NIM_NIL;
9385 	{
9386 		NIM_BOOL T3_;
9387 		tyArray__JiWwrsTRC6xqNlGcBthSVA T7_;
9388 		T3_ = (NIM_BOOL)0;
9389 		T3_ = ((*(*(*m).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
9390 		if (T3_) goto LA4_;
9391 		T3_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
9392 		LA4_: ;
9393 		if (!!(T3_)) goto LA5_;
9394 		nimZeroMem((void*)T7_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
9395 		T7_[0] = accessor;
9396 		result = percent___cgen_7456(T7_, 1);
9397 	}
9398 	goto LA1_;
9399 	LA5_: ;
9400 	{
9401 		result = accessor;
9402 	}
9403 	LA1_: ;
9404 	return result;
9405 }
N_NIMCALL(NimStringDesc *,mangleField__cgen_624)9406 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, mangleField__cgen_624)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name) {
9407 	NimStringDesc* result;
9408 	result = NIM_NIL;
9409 	result = mangle__ccgutils_112((*name).s);
9410 	{
9411 		NIM_BOOL T3_;
9412 		T3_ = (NIM_BOOL)0;
9413 		T3_ = isKeyword__cgen_618(name);
9414 		if (!T3_) goto LA4_;
9415 		result = resizeString(result, 2);
9416 appendString(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_38));
9417 	}
9418 	LA4_: ;
9419 	return result;
9420 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,mangleRecFieldName__cgen_3618)9421 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, mangleRecFieldName__cgen_3618)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field) {
9422 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9423 	result = NIM_NIL;
9424 	{
9425 		if (!!(((192 & (*field).flags) == 0))) goto LA3_;
9426 		result = (*field).loc.r;
9427 	}
9428 	goto LA1_;
9429 	LA3_: ;
9430 	{
9431 		NimStringDesc* T6_;
9432 		T6_ = NIM_NIL;
9433 		T6_ = mangleField__cgen_624(m, (*field).name);
9434 		result = rope__ropes_109(T6_);
9435 	}
9436 	LA1_: ;
9437 	{
9438 		if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA9_;
9439 		internalErrorImpl__msgs_1431((*(*m).g).config, (*field).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_188), TM__MQdRN7fpbG7rPm4JpVVAhA_189);
9440 	}
9441 	LA9_: ;
9442 	return result;
9443 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3691)9444 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3691)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9445 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9446 	result = NIM_NIL;
9447 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_192), args, argsLen_0);
9448 	return result;
9449 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3696)9450 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3696)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9451 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9452 	result = NIM_NIL;
9453 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_193), args, argsLen_0);
9454 	return result;
9455 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3709)9456 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3709)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9457 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9458 	result = NIM_NIL;
9459 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_194), args, argsLen_0);
9460 	return result;
9461 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3718)9462 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3718)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9463 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9464 	result = NIM_NIL;
9465 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_197), args, argsLen_0);
9466 	return result;
9467 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3738)9468 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3738)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9469 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9470 	result = NIM_NIL;
9471 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_91), args, argsLen_0);
9472 	return result;
9473 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3749)9474 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3749)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9475 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9476 	result = NIM_NIL;
9477 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_198), args, argsLen_0);
9478 	return result;
9479 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3758)9480 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3758)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9481 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9482 	result = NIM_NIL;
9483 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_199), args, argsLen_0);
9484 	return result;
9485 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3763)9486 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3763)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9487 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9488 	result = NIM_NIL;
9489 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_200), args, argsLen_0);
9490 	return result;
9491 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genRecordFieldsAux__cgen_3634)9492 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genRecordFieldsAux__cgen_3634)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* rectype, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check, NimStringDesc* unionPrefix) {
9493 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9494 {	result = NIM_NIL;
9495 	result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
9496 	switch ((*n).kind) {
9497 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
9498 	{
9499 		{
9500 			NI i;
9501 			NI colontmp_;
9502 			NI i_2;
9503 			i = (NI)0;
9504 			colontmp_ = (NI)0;
9505 			colontmp_ = len__ast_3198(n);
9506 			i_2 = ((NI) 0);
9507 			{
9508 				while (1) {
9509 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
9510 					if (!(i_2 < colontmp_)) goto LA4;
9511 					i = i_2;
9512 					T5_ = NIM_NIL;
9513 					T5_ = genRecordFieldsAux__cgen_3634(m, (*n)._kind_6.sons->data[i], rectype, check, unionPrefix);
9514 					add__ropes_159(&result, T5_);
9515 					i_2 += ((NI) 1);
9516 				} LA4: ;
9517 			}
9518 		}
9519 	}
9520 	break;
9521 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
9522 	{
9523 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
9524 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* unionBody;
9525 		{
9526 			if (!!(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA9_;
9527 			internalErrorImpl__msgs_1431((*(*m).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_186), TM__MQdRN7fpbG7rPm4JpVVAhA_187);
9528 		}
9529 		LA9_: ;
9530 		T11_ = NIM_NIL;
9531 		T11_ = genRecordFieldsAux__cgen_3634(m, (*n)._kind_6.sons->data[((NI) 0)], rectype, check, unionPrefix);
9532 		add__ropes_159(&result, T11_);
9533 		unionBody = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
9534 		{
9535 			NI i_3;
9536 			NI colontmp__2;
9537 			NI i_4;
9538 			i_3 = (NI)0;
9539 			colontmp__2 = (NI)0;
9540 			colontmp__2 = len__ast_3198(n);
9541 			i_4 = ((NI) 1);
9542 			{
9543 				while (1) {
9544 					if (!(i_4 < colontmp__2)) goto LA14;
9545 					i_3 = i_4;
9546 					switch ((*(*n)._kind_6.sons->data[i_3]).kind) {
9547 					case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85):
9548 					case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
9549 					{
9550 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* k;
9551 						k = lastSon__ast_4832((*n)._kind_6.sons->data[i_3]);
9552 						{
9553 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* structName;
9554 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
9555 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
9556 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
9557 							NimStringDesc* T23_;
9558 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* a;
9559 							NimStringDesc* T24_;
9560 							NimStringDesc* T25_;
9561 							if (!!(((*k).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA18_;
9562 							T20_ = NIM_NIL;
9563 							T20_ = mangleRecFieldName__cgen_3618(m, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym);
9564 							T21_ = NIM_NIL;
9565 							T21_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3), T20_);
9566 							T22_ = NIM_NIL;
9567 							T22_ = amp___ropes_140(T21_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
9568 							T23_ = NIM_NIL;
9569 							T23_ = dollar___systemZdollars_3(i_3);
9570 							structName = amp___ropes_140(T22_, T23_);
9571 							T24_ = NIM_NIL;
9572 							T25_ = NIM_NIL;
9573 							T25_ = dollar___ropes_250(structName);
9574 							T24_ = rawNewString((unionPrefix ? unionPrefix->Sup.len : 0) + (T25_ ? T25_->Sup.len : 0) + 1);
9575 appendString(T24_, unionPrefix);
9576 appendString(T24_, T25_);
9577 appendString(T24_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128));
9578 							a = genRecordFieldsAux__cgen_3634(m, k, rectype, check, T24_);
9579 							{
9580 								tyArray__JiWwrsTRC6xqNlGcBthSVA T42_;
9581 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
9582 								if (!!((a == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA28_;
9583 								{
9584 									if (!!((((*rectype).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 23))&63U)))!=0))) goto LA32_;
9585 									add__ropes_162(&unionBody, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_190));
9586 								}
9587 								goto LA30_;
9588 								LA32_: ;
9589 								{
9590 									{
9591 										if (!((CC__extccomp_508[((*(*(*m).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 7))&7U)))!=0)) goto LA37_;
9592 										add__ropes_162(&unionBody, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_191));
9593 									}
9594 									goto LA35_;
9595 									LA37_: ;
9596 									{
9597 										tyArray__qTjAvTvKF9anytN1At69aJMQ T40_;
9598 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
9599 										nimZeroMem((void*)T40_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
9600 										T41_ = NIM_NIL;
9601 										T41_ = percent___cgen_3691(T40_, 0);
9602 										add__ropes_159(&unionBody, T41_);
9603 									}
9604 									LA35_: ;
9605 								}
9606 								LA30_: ;
9607 								add__ropes_159(&unionBody, a);
9608 								nimZeroMem((void*)T42_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
9609 								T42_[0] = structName;
9610 								T43_ = NIM_NIL;
9611 								T43_ = percent___cgen_3696(T42_, 1);
9612 								add__ropes_159(&unionBody, T43_);
9613 								{
9614 									NIM_BOOL T46_;
9615 									tyArray__qTjAvTvKF9anytN1At69aJMQ T50_;
9616 									tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
9617 									T46_ = (NIM_BOOL)0;
9618 									T46_ = (((*rectype).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 23))&63U)))!=0);
9619 									if (!(T46_)) goto LA47_;
9620 									T46_ = !(((CC__extccomp_508[((*(*(*m).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 7))&7U)))!=0));
9621 									LA47_: ;
9622 									if (!T46_) goto LA48_;
9623 									nimZeroMem((void*)T50_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
9624 									T51_ = NIM_NIL;
9625 									T51_ = percent___cgen_3709(T50_, 0);
9626 									add__ropes_159(&unionBody, T51_);
9627 								}
9628 								LA48_: ;
9629 							}
9630 							LA28_: ;
9631 						}
9632 						goto LA16_;
9633 						LA18_: ;
9634 						{
9635 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
9636 							T53_ = NIM_NIL;
9637 							T53_ = genRecordFieldsAux__cgen_3634(m, k, rectype, check, unionPrefix);
9638 							add__ropes_159(&unionBody, T53_);
9639 						}
9640 						LA16_: ;
9641 					}
9642 					break;
9643 					default:
9644 					{
9645 						internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_195), TM__MQdRN7fpbG7rPm4JpVVAhA_196);
9646 					}
9647 					break;
9648 					}
9649 					i_4 += ((NI) 1);
9650 				} LA14: ;
9651 			}
9652 		}
9653 		{
9654 			tyArray__JiWwrsTRC6xqNlGcBthSVA T59_;
9655 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
9656 			if (!!((unionBody == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA57_;
9657 			nimZeroMem((void*)T59_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
9658 			T59_[0] = unionBody;
9659 			T60_ = NIM_NIL;
9660 			T60_ = percent___cgen_3718(T59_, 1);
9661 			add__ropes_159(&result, T60_);
9662 		}
9663 		LA57_: ;
9664 	}
9665 	break;
9666 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
9667 	{
9668 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
9669 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* sname;
9670 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
9671 		field = (*n)._kind_4.sym;
9672 		{
9673 			if (!((*(*field).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63))) goto LA64_;
9674 			goto BeforeRet_;
9675 		}
9676 		LA64_: ;
9677 		sname = mangleRecFieldName__cgen_3618(m, field);
9678 		T66_ = NIM_NIL;
9679 		T66_ = amp___ropes_144(unionPrefix, sname);
9680 		fillLoc__cgen_65((&(*field).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 5), n, T66_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
9681 		{
9682 			tyArray__JiWwrsTRC6xqNlGcBthSVA T71_;
9683 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T72_;
9684 			if (!(((NI) 0) < (*field)._kind_2.alignment)) goto LA69_;
9685 			nimZeroMem((void*)T71_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
9686 			T71_[0] = rope__ropes_115(((NI64) ((*field)._kind_2.alignment)));
9687 			T72_ = NIM_NIL;
9688 			T72_ = percent___cgen_3729(T71_, 1);
9689 			add__ropes_159(&result, T72_);
9690 		}
9691 		LA69_: ;
9692 		{
9693 			NIM_BOOL T75_;
9694 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* noAlias;
9695 			tyObject_TType__facALICuu8zUj0hjvbTLFg* fieldType;
9696 			T75_ = (NIM_BOOL)0;
9697 			T75_ = isImportedCppType__cgen_1294(rectype);
9698 			if (!!(T75_)) goto LA76_;
9699 			{
9700 				tyArray__qTjAvTvKF9anytN1At69aJMQ T82_;
9701 				if (!(((*field).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 46))&63U)))!=0)) goto LA80_;
9702 				nimZeroMem((void*)T82_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
9703 				noAlias = percent___cgen_3738(T82_, 0);
9704 			}
9705 			goto LA78_;
9706 			LA80_: ;
9707 			{
9708 				noAlias = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
9709 			}
9710 			LA78_: ;
9711 			fieldType = skipTypes__ast_3735((*(*field).loc.lode).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
9712 			{
9713 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T88_;
9714 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T89_;
9715 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T90_;
9716 				if (!((*fieldType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 49))) goto LA86_;
9717 				nimZeroMem((void*)T88_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
9718 				T89_ = NIM_NIL;
9719 				T89_ = elemType__types_263(fieldType);
9720 				T88_[0] = getTypeDescAux__cgen_1314(m, T89_, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19));
9721 				T88_[1] = sname;
9722 				T90_ = NIM_NIL;
9723 				T90_ = percent___cgen_3749(T88_, 2);
9724 				add__ropes_159(&result, T90_);
9725 			}
9726 			goto LA84_;
9727 			LA86_: ;
9728 			{
9729 				tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T94_;
9730 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T95_;
9731 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T96_;
9732 				if (!((*fieldType).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24))) goto LA92_;
9733 				nimZeroMem((void*)T94_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
9734 				T95_ = NIM_NIL;
9735 				T95_ = t__cgen_79((*field).loc);
9736 				T94_[0] = getTypeDescWeak__cgen_3317(m, T95_, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19));
9737 				T94_[1] = sname;
9738 				T94_[2] = noAlias;
9739 				T96_ = NIM_NIL;
9740 				T96_ = percent___cgen_3758(T94_, 3);
9741 				add__ropes_159(&result, T96_);
9742 			}
9743 			goto LA84_;
9744 			LA92_: ;
9745 			{
9746 				tyArray__f7nG5LD47BH5K9c6mASit3g T100_;
9747 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T101_;
9748 				NimStringDesc* T102_;
9749 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T103_;
9750 				if (!!(((*field)._kind_2.bitsize == ((NI) 0)))) goto LA98_;
9751 				nimZeroMem((void*)T100_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
9752 				T101_ = NIM_NIL;
9753 				T101_ = t__cgen_79((*field).loc);
9754 				T100_[0] = getTypeDescAux__cgen_1314(m, T101_, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19));
9755 				T100_[1] = sname;
9756 				T102_ = NIM_NIL;
9757 				T102_ = dollar___systemZdollars_3((*field)._kind_2.bitsize);
9758 				T100_[2] = rope__ropes_109(T102_);
9759 				T100_[3] = noAlias;
9760 				T103_ = NIM_NIL;
9761 				T103_ = percent___cgen_3763(T100_, 4);
9762 				add__ropes_159(&result, T103_);
9763 			}
9764 			goto LA84_;
9765 			LA98_: ;
9766 			{
9767 				tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T105_;
9768 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T106_;
9769 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T107_;
9770 				nimZeroMem((void*)T105_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
9771 				T106_ = NIM_NIL;
9772 				T106_ = t__cgen_79((*field).loc);
9773 				T105_[0] = getTypeDescAux__cgen_1314(m, T106_, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19));
9774 				T105_[1] = sname;
9775 				T105_[2] = noAlias;
9776 				T107_ = NIM_NIL;
9777 				T107_ = percent___cgen_3758(T105_, 3);
9778 				add__ropes_159(&result, T107_);
9779 			}
9780 			LA84_: ;
9781 		}
9782 		LA76_: ;
9783 	}
9784 	break;
9785 	default:
9786 	{
9787 		internalErrorImpl__msgs_1431((*(*m).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_201), TM__MQdRN7fpbG7rPm4JpVVAhA_202);
9788 	}
9789 	break;
9790 	}
9791 	}BeforeRet_: ;
9792 	return result;
9793 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getRecordFields__cgen_3772)9794 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getRecordFields__cgen_3772)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check) {
9795 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9796 	result = NIM_NIL;
9797 	result = genRecordFieldsAux__cgen_3634(m, (*typ).n, typ, check, ((NimStringDesc*) NIM_NIL));
9798 	return result;
9799 }
N_NIMCALL(void,fillObjectFields__cgen_3777)9800 N_LIB_PRIVATE N_NIMCALL(void, fillObjectFields__cgen_3777)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
9801 	tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA check;
9802 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
9803 	nimZeroMem((void*)(&check), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
9804 	initIntSet__pureZcollectionsZintsets_238((&check));
9805 	T1_ = NIM_NIL;
9806 	T1_ = getRecordFields__cgen_3772(m, typ, (&check));
9807 	(void)(T1_);
9808 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7382)9809 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7382)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9810 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9811 	result = NIM_NIL;
9812 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_205), args, argsLen_0);
9813 	return result;
9814 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_15302)9815 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15302)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9816 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9817 	result = NIM_NIL;
9818 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_206), args, argsLen_0);
9819 	return result;
9820 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17618)9821 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17618)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9822 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9823 	result = NIM_NIL;
9824 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_208), args, argsLen_0);
9825 	return result;
9826 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17590)9827 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17590)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9828 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9829 	result = NIM_NIL;
9830 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_209), args, argsLen_0);
9831 	return result;
9832 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17595)9833 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17595)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9834 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9835 	result = NIM_NIL;
9836 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_210), args, argsLen_0);
9837 	return result;
9838 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,intLiteral__cgen_11471)9839 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, intLiteral__cgen_11471)(NI64 i) {
9840 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9841 	result = NIM_NIL;
9842 	{
9843 		NIM_BOOL T3_;
9844 		T3_ = (NIM_BOOL)0;
9845 		T3_ = (IL64(-2147483648) < i);
9846 		if (!(T3_)) goto LA4_;
9847 		T3_ = (i <= IL64(2147483647));
9848 		LA4_: ;
9849 		if (!T3_) goto LA5_;
9850 		result = rope__ropes_115(i);
9851 	}
9852 	goto LA1_;
9853 	LA5_: ;
9854 	{
9855 		tyArray__qTjAvTvKF9anytN1At69aJMQ T10_;
9856 		if (!(i == IL64(-2147483648))) goto LA8_;
9857 		nimZeroMem((void*)T10_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
9858 		result = percent___cgen_17618(T10_, 0);
9859 	}
9860 	goto LA1_;
9861 	LA8_: ;
9862 	{
9863 		tyArray__JiWwrsTRC6xqNlGcBthSVA T14_;
9864 		if (!((IL64(-9223372036854775807) - IL64(1)) < i)) goto LA12_;
9865 		nimZeroMem((void*)T14_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
9866 		T14_[0] = rope__ropes_115(i);
9867 		result = percent___cgen_17590(T14_, 1);
9868 	}
9869 	goto LA1_;
9870 	LA12_: ;
9871 	{
9872 		tyArray__qTjAvTvKF9anytN1At69aJMQ T16_;
9873 		nimZeroMem((void*)T16_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
9874 		result = percent___cgen_17595(T16_, 0);
9875 	}
9876 	LA1_: ;
9877 	return result;
9878 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17648)9879 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17648)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9880 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9881 	result = NIM_NIL;
9882 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_211), args, argsLen_0);
9883 	return result;
9884 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17653)9885 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17653)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9886 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9887 	result = NIM_NIL;
9888 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_212), args, argsLen_0);
9889 	return result;
9890 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,int64Literal__cgen_17583)9891 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, int64Literal__cgen_17583)(NI64 i) {
9892 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9893 	result = NIM_NIL;
9894 	{
9895 		tyArray__JiWwrsTRC6xqNlGcBthSVA T5_;
9896 		if (!((IL64(-9223372036854775807) - IL64(1)) < i)) goto LA3_;
9897 		nimZeroMem((void*)T5_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
9898 		T5_[0] = rope__ropes_115(i);
9899 		result = percent___cgen_17590(T5_, 1);
9900 	}
9901 	goto LA1_;
9902 	LA3_: ;
9903 	{
9904 		tyArray__qTjAvTvKF9anytN1At69aJMQ T7_;
9905 		nimZeroMem((void*)T7_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
9906 		result = percent___cgen_17595(T7_, 0);
9907 	}
9908 	LA1_: ;
9909 	return result;
9910 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,uint64Literal__cgen_17600)9911 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, uint64Literal__cgen_17600)(NU64 i) {
9912 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9913 	NimStringDesc* T1_;
9914 	NimStringDesc* T2_;
9915 	result = NIM_NIL;
9916 	T1_ = NIM_NIL;
9917 	T2_ = NIM_NIL;
9918 	T2_ = dollar___systemZdollars_9(i);
9919 	T1_ = rawNewString((T2_ ? T2_->Sup.len : 0) + 3);
9920 appendString(T1_, T2_);
9921 appendString(T1_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_213));
9922 	result = rope__ropes_109(T1_);
9923 	return result;
9924 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17658)9925 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17658)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9926 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9927 	result = NIM_NIL;
9928 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_214), args, argsLen_0);
9929 	return result;
9930 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17681)9931 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17681)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9932 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9933 	result = NIM_NIL;
9934 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_215), args, argsLen_0);
9935 	return result;
9936 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17690)9937 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17690)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9938 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9939 	result = NIM_NIL;
9940 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_216), args, argsLen_0);
9941 	return result;
9942 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genNilStringLiteral__cgen_595)9943 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genNilStringLiteral__cgen_595)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
9944 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9945 	NimStringDesc* res;
9946 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
9947 	result = NIM_NIL;
9948 	res = rawNewString(((NI) 80));
9949 	res = resizeString(res, 2);
9950 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_218));
9951 	T1_ = NIM_NIL;
9952 	T1_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_219));
9953 	cgFormatValue__cgen_141((&res), T1_);
9954 	res = resizeString(res, 11);
9955 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_220));
9956 	result = rope__ropes_109(res);
9957 	return result;
9958 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_502)9959 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_502)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
9960 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9961 	result = NIM_NIL;
9962 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_223), args, argsLen_0);
9963 	return result;
9964 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genStringLiteralDataOnlyV1__cgen_498)9965 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genStringLiteralDataOnlyV1__cgen_498)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* s) {
9966 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9967 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
9968 	tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T2_;
9969 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
9970 	result = NIM_NIL;
9971 	T1_ = NIM_NIL;
9972 	T1_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_222));
9973 	(void)(T1_);
9974 	result = getTempName__cgen_418(m);
9975 	nimZeroMem((void*)T2_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
9976 	T2_[0] = result;
9977 	T2_[1] = makeCString__msgs_50(s);
9978 	T2_[2] = rope__ropes_115(((NI64) ((s ? s->Sup.len : 0))));
9979 	T3_ = NIM_NIL;
9980 	T3_ = percent___cgen_502(T2_, 3);
9981 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T3_);
9982 	return result;
9983 }
N_NIMCALL(void,cgFormatValue__cgen_148)9984 N_LIB_PRIVATE N_NIMCALL(void, cgFormatValue__cgen_148)(NimStringDesc** result, NI64 value) {
9985 	addInt__stdZprivateZdigitsutils_167(result, value);
9986 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genStringLiteralV1__cgen_507)9987 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genStringLiteralV1__cgen_507)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
9988 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
9989 	result = NIM_NIL;
9990 	{
9991 		NimStringDesc* res;
9992 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
9993 		if (!NIM_FALSE) goto LA3_;
9994 		res = rawNewString(((NI) 80));
9995 		res = resizeString(res, 2);
9996 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_218));
9997 		T5_ = NIM_NIL;
9998 		T5_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_219));
9999 		cgFormatValue__cgen_141((&res), T5_);
10000 		res = resizeString(res, 11);
10001 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_220));
10002 		result = rope__ropes_109(res);
10003 	}
10004 	goto LA1_;
10005 	LA3_: ;
10006 	{
10007 		NI id;
10008 		id = nodeTableTestOrSet__treetab_198((&(*m).dataCache), n, ((NI) ((*m).labels)));
10009 		{
10010 			NimStringDesc* res_2;
10011 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
10012 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
10013 			if (!(id == ((NI) ((*m).labels)))) goto LA9_;
10014 			res_2 = rawNewString(((NI) 80));
10015 			res_2 = resizeString(res_2, 2);
10016 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_218));
10017 			T11_ = NIM_NIL;
10018 			T11_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_219));
10019 			cgFormatValue__cgen_141((&res_2), T11_);
10020 			res_2 = resizeString(res_2, 4);
10021 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_221));
10022 			T12_ = NIM_NIL;
10023 			T12_ = genStringLiteralDataOnlyV1__cgen_498(m, (*n)._kind_3.strVal);
10024 			cgFormatValue__cgen_141((&res_2), T12_);
10025 			res_2 = resizeString(res_2, 1);
10026 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
10027 			result = rope__ropes_109(res_2);
10028 		}
10029 		goto LA7_;
10030 		LA9_: ;
10031 		{
10032 			NimStringDesc* res_3;
10033 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
10034 			res_3 = rawNewString(((NI) 80));
10035 			res_3 = resizeString(res_3, 2);
10036 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_218));
10037 			T14_ = NIM_NIL;
10038 			T14_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_219));
10039 			cgFormatValue__cgen_141((&res_3), T14_);
10040 			res_3 = resizeString(res_3, 4);
10041 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_221));
10042 			cgFormatValue__cgen_141((&res_3), (*m).tmpBase);
10043 			cgFormatValue__cgen_148((&res_3), ((NI64) (id)));
10044 			res_3 = resizeString(res_3, 1);
10045 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
10046 			result = rope__ropes_109(res_3);
10047 		}
10048 		LA7_: ;
10049 	}
10050 	LA1_: ;
10051 	return result;
10052 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_547)10053 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_547)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
10054 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10055 	result = NIM_NIL;
10056 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_224), args, argsLen_0);
10057 	return result;
10058 }
N_NIMCALL(void,genStringLiteralDataOnlyV2__cgen_542)10059 N_LIB_PRIVATE N_NIMCALL(void, genStringLiteralDataOnlyV2__cgen_542)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* s, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result, NIM_BOOL isConst) {
10060 	tyArray__f7nG5LD47BH5K9c6mASit3g T1_;
10061 	NimStringDesc* T2_;
10062 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
10063 	nimZeroMem((void*)T1_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
10064 	T1_[0] = result;
10065 	T1_[1] = rope__ropes_115(((NI64) ((s ? s->Sup.len : 0))));
10066 	T1_[2] = makeCString__msgs_50(s);
10067 	T2_ = NIM_NIL;
10068 	{
10069 		if (!isConst) goto LA5_;
10070 		T2_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_225));
10071 	}
10072 	goto LA3_;
10073 	LA5_: ;
10074 	{
10075 		T2_ = ((NimStringDesc*) NIM_NIL);
10076 	}
10077 	LA3_: ;
10078 	T1_[3] = rope__ropes_109(T2_);
10079 	T8_ = NIM_NIL;
10080 	T8_ = percent___cgen_547(T1_, 4);
10081 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T8_);
10082 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_568)10083 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_568)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
10084 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10085 	result = NIM_NIL;
10086 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_228), args, argsLen_0);
10087 	return result;
10088 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genStringLiteralV2__cgen_561)10089 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genStringLiteralV2__cgen_561)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst) {
10090 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10091 	NI id;
10092 	result = NIM_NIL;
10093 	id = nodeTableTestOrSet__treetab_198((&(*m).dataCache), n, ((NI) ((*m).labels)));
10094 	{
10095 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* pureLit;
10096 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
10097 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
10098 		tyArray__f7nG5LD47BH5K9c6mASit3g T7_;
10099 		NimStringDesc* T8_;
10100 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
10101 		if (!(id == ((NI) ((*m).labels)))) goto LA3_;
10102 		pureLit = getTempName__cgen_418(m);
10103 		genStringLiteralDataOnlyV2__cgen_542(m, (*n)._kind_3.strVal, pureLit, isConst);
10104 		result = getTempName__cgen_418(m);
10105 		T5_ = NIM_NIL;
10106 		T5_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_226));
10107 		(void)(T5_);
10108 		T6_ = NIM_NIL;
10109 		T6_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_227));
10110 		(void)(T6_);
10111 		nimZeroMem((void*)T7_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
10112 		T7_[0] = result;
10113 		T7_[1] = rope__ropes_115(((NI64) (((*n)._kind_3.strVal ? (*n)._kind_3.strVal->Sup.len : 0))));
10114 		T7_[2] = pureLit;
10115 		T8_ = NIM_NIL;
10116 		{
10117 			if (!isConst) goto LA11_;
10118 			T8_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_225));
10119 		}
10120 		goto LA9_;
10121 		LA11_: ;
10122 		{
10123 			T8_ = ((NimStringDesc*) NIM_NIL);
10124 		}
10125 		LA9_: ;
10126 		T7_[3] = rope__ropes_109(T8_);
10127 		T14_ = NIM_NIL;
10128 		T14_ = percent___cgen_568(T7_, 4);
10129 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T14_);
10130 	}
10131 	goto LA1_;
10132 	LA3_: ;
10133 	{
10134 		tyArray__f7nG5LD47BH5K9c6mASit3g T16_;
10135 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
10136 		NimStringDesc* T18_;
10137 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
10138 		result = getTempName__cgen_418(m);
10139 		nimZeroMem((void*)T16_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
10140 		T16_[0] = result;
10141 		T16_[1] = rope__ropes_115(((NI64) (((*n)._kind_3.strVal ? (*n)._kind_3.strVal->Sup.len : 0))));
10142 		T17_ = NIM_NIL;
10143 		T17_ = rope__ropes_115(((NI64) (id)));
10144 		T16_[2] = amp___ropes_128((*m).tmpBase, T17_);
10145 		T18_ = NIM_NIL;
10146 		{
10147 			if (!isConst) goto LA21_;
10148 			T18_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_225));
10149 		}
10150 		goto LA19_;
10151 		LA21_: ;
10152 		{
10153 			T18_ = ((NimStringDesc*) NIM_NIL);
10154 		}
10155 		LA19_: ;
10156 		T16_[3] = rope__ropes_109(T18_);
10157 		T24_ = NIM_NIL;
10158 		T24_ = percent___cgen_568(T16_, 4);
10159 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T24_);
10160 	}
10161 	LA1_: ;
10162 	return result;
10163 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genStringLiteral__cgen_608)10164 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genStringLiteral__cgen_608)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
10165 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10166 	NI T1_;
10167 	result = NIM_NIL;
10168 	T1_ = (NI)0;
10169 	T1_ = detectStrVersion__cgen_472(m);
10170 	switch (T1_) {
10171 	case ((NI) 0):
10172 	case ((NI) 1):
10173 	{
10174 		result = genStringLiteralV1__cgen_507(m, n);
10175 	}
10176 	break;
10177 	case ((NI) 2):
10178 	{
10179 		result = genStringLiteralV2__cgen_561(m, n, NIM_TRUE);
10180 	}
10181 	break;
10182 	default:
10183 	{
10184 		liMessage__msgs_1118((*(*m).g).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_229), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_230, NIM_FALSE);
10185 	}
10186 	break;
10187 	}
10188 	return result;
10189 }
N_INLINE(NIM_BOOL,signbit__cgen_17718)10190 static N_INLINE(NIM_BOOL, signbit__cgen_17718)(NF32 x) {
10191 	NIM_BOOL result;
10192 	int T1_;
10193 	result = (NIM_BOOL)0;
10194 	T1_ = (int)0;
10195 	T1_ = signbit(x);
10196 	result = !((T1_ == ((NI32) 0)));
10197 	return result;
10198 }
N_NIMCALL(NimStringDesc *,toStrMaxPrecision__cgen_17712)10199 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toStrMaxPrecision__cgen_17712)(NF32 f) {
10200 	NimStringDesc* result;
10201 	tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA T1_;
10202 	result = NIM_NIL;
10203 	T1_ = (tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA)0;
10204 	T1_ = classify__pureZmath_147(((NF) (f)));
10205 	switch (T1_) {
10206 	case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 4):
10207 	{
10208 		{
10209 			NIM_BOOL T5_;
10210 			T5_ = (NIM_BOOL)0;
10211 			T5_ = signbit__cgen_17718(f);
10212 			if (!T5_) goto LA6_;
10213 			result = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_232));
10214 		}
10215 		goto LA3_;
10216 		LA6_: ;
10217 		{
10218 			result = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_233));
10219 		}
10220 		LA3_: ;
10221 	}
10222 	break;
10223 	case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 3):
10224 	{
10225 		result = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_234));
10226 	}
10227 	break;
10228 	case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 2):
10229 	{
10230 		result = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_235));
10231 	}
10232 	break;
10233 	case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 5):
10234 	{
10235 		result = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_236));
10236 	}
10237 	break;
10238 	case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 6):
10239 	{
10240 		result = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_237));
10241 	}
10242 	break;
10243 	default:
10244 	{
10245 		addFloatRoundtrip__system_6834((&result), f);
10246 		result = resizeString(result, 1);
10247 appendString(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_238));
10248 	}
10249 	break;
10250 	}
10251 	return result;
10252 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genLiteral__cgen_17638)10253 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genLiteral__cgen_17638)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* ty) {
10254 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10255 	result = NIM_NIL;
10256 	switch ((*n).kind) {
10257 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
10258 	{
10259 		tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag k;
10260 		k = (tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag)0;
10261 		{
10262 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
10263 			if (!!((ty == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA4_;
10264 			T6_ = NIM_NIL;
10265 			T6_ = skipTypes__ast_3735(ty, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
10266 			k = (*T6_).kind;
10267 		}
10268 		goto LA2_;
10269 		LA4_: ;
10270 		{
10271 			switch ((*n).kind) {
10272 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5):
10273 			{
10274 				k = ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2);
10275 			}
10276 			break;
10277 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
10278 			{
10279 				k = ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44);
10280 			}
10281 			break;
10282 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 10):
10283 			{
10284 				k = ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35);
10285 			}
10286 			break;
10287 			default:
10288 			{
10289 				k = ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 5);
10290 			}
10291 			break;
10292 			}
10293 		}
10294 		LA2_: ;
10295 		switch (k) {
10296 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
10297 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 5):
10298 		{
10299 			result = intLiteral__cgen_11471((*n)._kind_1.intVal);
10300 		}
10301 		break;
10302 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
10303 		{
10304 			{
10305 				tyArray__qTjAvTvKF9anytN1At69aJMQ T18_;
10306 				if (!!(((*n)._kind_1.intVal == IL64(0)))) goto LA16_;
10307 				nimZeroMem((void*)T18_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
10308 				result = percent___cgen_17648(T18_, 0);
10309 			}
10310 			goto LA14_;
10311 			LA16_: ;
10312 			{
10313 				tyArray__qTjAvTvKF9anytN1At69aJMQ T20_;
10314 				nimZeroMem((void*)T20_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
10315 				result = percent___cgen_17653(T20_, 0);
10316 			}
10317 			LA14_: ;
10318 		}
10319 		break;
10320 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35):
10321 		{
10322 			result = int64Literal__cgen_17583((*n)._kind_1.intVal);
10323 		}
10324 		break;
10325 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
10326 		{
10327 			result = uint64Literal__cgen_17600(((NU64) ((*n)._kind_1.intVal)));
10328 		}
10329 		break;
10330 		default:
10331 		{
10332 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T24_;
10333 			nimZeroMem((void*)T24_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
10334 			T24_[0] = getTypeDesc__cgen_6631((*p).module, ty, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
10335 			T24_[1] = intLiteral__cgen_11471((*n)._kind_1.intVal);
10336 			result = percent___cgen_17658(T24_, 2);
10337 		}
10338 		break;
10339 		}
10340 	}
10341 	break;
10342 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
10343 	{
10344 		tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag k_2;
10345 		{
10346 			if (!(ty == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA28_;
10347 			k_2 = ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26);
10348 		}
10349 		goto LA26_;
10350 		LA28_: ;
10351 		{
10352 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T31_;
10353 			T31_ = NIM_NIL;
10354 			T31_ = skipTypes__ast_3735(ty, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
10355 			k_2 = (*T31_).kind;
10356 		}
10357 		LA26_: ;
10358 		{
10359 			NIM_BOOL T34_;
10360 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T36_;
10361 			NI id;
10362 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
10363 			T34_ = (NIM_BOOL)0;
10364 			T34_ = (k_2 == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25));
10365 			if (!(T34_)) goto LA35_;
10366 			T36_ = NIM_NIL;
10367 			T36_ = skipTypes__ast_3735(ty, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
10368 			T34_ = ((*T36_).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9));
10369 			LA35_: ;
10370 			if (!T34_) goto LA37_;
10371 			id = nodeTableTestOrSet__treetab_198((&(*(*p).module).dataCache), n, ((NI) ((*(*p).module).labels)));
10372 			T39_ = NIM_NIL;
10373 			T39_ = rope__ropes_115(((NI64) (id)));
10374 			result = amp___ropes_128((*(*p).module).tmpBase, T39_);
10375 			{
10376 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T44_;
10377 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
10378 				if (!(id == ((NI) ((*(*p).module).labels)))) goto LA42_;
10379 				(*(*p).module).labels += ((NI) 1);
10380 				nimZeroMem((void*)T44_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
10381 				T44_[0] = getTypeDesc__cgen_6631((*p).module, ty, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
10382 				T44_[1] = result;
10383 				T45_ = NIM_NIL;
10384 				T45_ = percent___cgen_17681(T44_, 2);
10385 				add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T45_);
10386 			}
10387 			LA42_: ;
10388 		}
10389 		goto LA32_;
10390 		LA37_: ;
10391 		{
10392 			if (!(k_2 == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26) || k_2 == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 5) || k_2 == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25))) goto LA47_;
10393 			result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_99));
10394 		}
10395 		goto LA32_;
10396 		LA47_: ;
10397 		{
10398 			tyArray__JiWwrsTRC6xqNlGcBthSVA T50_;
10399 			nimZeroMem((void*)T50_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
10400 			T50_[0] = getTypeDesc__cgen_6631((*p).module, ty, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
10401 			result = percent___cgen_17690(T50_, 1);
10402 		}
10403 		LA32_: ;
10404 	}
10405 	break;
10406 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
10407 	{
10408 		tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag k_3;
10409 		{
10410 			if (!(ty == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA54_;
10411 			k_3 = ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28);
10412 		}
10413 		goto LA52_;
10414 		LA54_: ;
10415 		{
10416 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T57_;
10417 			T57_ = NIM_NIL;
10418 			T57_ = skipTypes__ast_3735(ty, TM__MQdRN7fpbG7rPm4JpVVAhA_217);
10419 			k_3 = (*T57_).kind;
10420 		}
10421 		LA52_: ;
10422 		switch (k_3) {
10423 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 5):
10424 		{
10425 			result = genNilStringLiteral__cgen_595((*p).module, (*n).info);
10426 		}
10427 		break;
10428 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
10429 		{
10430 			{
10431 				NIM_BOOL T62_;
10432 				T62_ = (NIM_BOOL)0;
10433 				T62_ = (((*n)._kind_3.strVal ? (*n)._kind_3.strVal->Sup.len : 0) == ((NI) 0));
10434 				if (!(T62_)) goto LA63_;
10435 				T62_ = !((((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0));
10436 				LA63_: ;
10437 				if (!T62_) goto LA64_;
10438 				result = genNilStringLiteral__cgen_595((*p).module, (*n).info);
10439 			}
10440 			goto LA60_;
10441 			LA64_: ;
10442 			{
10443 				result = genStringLiteral__cgen_608((*p).module, n);
10444 			}
10445 			LA60_: ;
10446 		}
10447 		break;
10448 		default:
10449 		{
10450 			result = makeCString__msgs_50((*n)._kind_3.strVal);
10451 		}
10452 		break;
10453 		}
10454 	}
10455 	break;
10456 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16):
10457 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18):
10458 	{
10459 		{
10460 			NimStringDesc* T73_;
10461 			if (!((*ty).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 37))) goto LA71_;
10462 			T73_ = NIM_NIL;
10463 			T73_ = toStrMaxPrecision__cgen_17712(((NF32) ((*n)._kind_2.floatVal)));
10464 			result = rope__ropes_109(T73_);
10465 		}
10466 		goto LA69_;
10467 		LA71_: ;
10468 		{
10469 			NimStringDesc* T75_;
10470 			T75_ = NIM_NIL;
10471 			T75_ = toStrMaxPrecision__astalgo_920((*n)._kind_2.floatVal);
10472 			result = rope__ropes_109(T75_);
10473 		}
10474 		LA69_: ;
10475 	}
10476 	break;
10477 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 17):
10478 	{
10479 		NimStringDesc* T77_;
10480 		T77_ = NIM_NIL;
10481 		T77_ = toStrMaxPrecision__cgen_17712(((NF32) ((*n)._kind_2.floatVal)));
10482 		result = rope__ropes_109(T77_);
10483 	}
10484 	break;
10485 	default:
10486 	{
10487 		NimStringDesc* T79_;
10488 		T79_ = NIM_NIL;
10489 		T79_ = rawNewString((reprEnum((NI)(*n).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*n).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 12);
10490 appendString(T79_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_239));
10491 appendString(T79_, reprEnum((NI)(*n).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)));
10492 appendChar(T79_, 41);
10493 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, T79_, TM__MQdRN7fpbG7rPm4JpVVAhA_240);
10494 		result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
10495 	}
10496 	break;
10497 	}
10498 	return result;
10499 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genLiteral__cgen_11473)10500 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genLiteral__cgen_11473)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
10501 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10502 	result = NIM_NIL;
10503 	result = genLiteral__cgen_17638(p, n, (*n).typ);
10504 	return result;
10505 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_15312)10506 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15312)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
10507 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10508 	result = NIM_NIL;
10509 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_242), args, argsLen_0);
10510 	return result;
10511 }
N_NIMCALL(void,genCaseRange__cgen_7340)10512 N_LIB_PRIVATE N_NIMCALL(void, genCaseRange__cgen_7340)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch) {
10513 	{
10514 		NI j;
10515 		NI colontmp_;
10516 		NI T2_;
10517 		NI i;
10518 		j = (NI)0;
10519 		colontmp_ = (NI)0;
10520 		T2_ = (NI)0;
10521 		T2_ = len__ast_3198(branch);
10522 		colontmp_ = (NI)(T2_ - ((NI) 1));
10523 		i = ((NI) 0);
10524 		{
10525 			while (1) {
10526 				if (!(i < colontmp_)) goto LA4;
10527 				j = i;
10528 				{
10529 					if (!((*(*branch)._kind_6.sons->data[j]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA7_;
10530 					{
10531 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T13_;
10532 						tyArray__mrugoXXRZUEeG9bEXo9auBKw T14_;
10533 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
10534 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
10535 						if (!((CC__extccomp_508[((*(*(*(*p).module).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 0))&7U)))!=0)) goto LA11_;
10536 						T13_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10537 						T13_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10538 						nimZeroMem((void*)T14_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
10539 						T14_[0] = genLiteral__cgen_11473(p, (*(*branch)._kind_6.sons->data[j])._kind_6.sons->data[((NI) 0)]);
10540 						T14_[1] = genLiteral__cgen_11473(p, (*(*branch)._kind_6.sons->data[j])._kind_6.sons->data[((NI) 1)]);
10541 						T15_ = NIM_NIL;
10542 						T15_ = percent___cgen_15302(T14_, 2);
10543 						T16_ = NIM_NIL;
10544 						T16_ = indentLine__cgen_280(p, T15_);
10545 						add__ropes_159(T13_, T16_);
10546 					}
10547 					goto LA9_;
10548 					LA11_: ;
10549 					{
10550 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* v;
10551 						v = copyNode__ast_4336((*(*branch)._kind_6.sons->data[j])._kind_6.sons->data[((NI) 0)]);
10552 						{
10553 							while (1) {
10554 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T20_;
10555 								tyArray__JiWwrsTRC6xqNlGcBthSVA T21_;
10556 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
10557 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
10558 								if (!((*v)._kind_1.intVal <= (*(*(*branch)._kind_6.sons->data[j])._kind_6.sons->data[((NI) 1)])._kind_1.intVal)) goto LA19;
10559 								T20_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10560 								T20_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10561 								nimZeroMem((void*)T21_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
10562 								T21_[0] = genLiteral__cgen_11473(p, v);
10563 								T22_ = NIM_NIL;
10564 								T22_ = percent___cgen_15312(T21_, 1);
10565 								T23_ = NIM_NIL;
10566 								T23_ = indentLine__cgen_280(p, T22_);
10567 								add__ropes_159(T20_, T23_);
10568 								(*v)._kind_1.intVal += ((NI) 1);
10569 							} LA19: ;
10570 						}
10571 					}
10572 					LA9_: ;
10573 				}
10574 				goto LA5_;
10575 				LA7_: ;
10576 				{
10577 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T25_;
10578 					tyArray__JiWwrsTRC6xqNlGcBthSVA T26_;
10579 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
10580 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
10581 					T25_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10582 					T25_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10583 					nimZeroMem((void*)T26_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
10584 					T26_[0] = genLiteral__cgen_11473(p, (*branch)._kind_6.sons->data[j]);
10585 					T27_ = NIM_NIL;
10586 					T27_ = percent___cgen_15312(T26_, 1);
10587 					T28_ = NIM_NIL;
10588 					T28_ = indentLine__cgen_280(p, T27_);
10589 					add__ropes_159(T25_, T28_);
10590 				}
10591 				LA5_: ;
10592 				i += ((NI) 1);
10593 			} LA4: ;
10594 		}
10595 	}
10596 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7408)10597 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7408)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
10598 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10599 	result = NIM_NIL;
10600 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_243), args, argsLen_0);
10601 	return result;
10602 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7416)10603 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7416)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
10604 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10605 	result = NIM_NIL;
10606 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_244), args, argsLen_0);
10607 	return result;
10608 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7421)10609 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7421)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
10610 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10611 	result = NIM_NIL;
10612 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_245), args, argsLen_0);
10613 	return result;
10614 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7439)10615 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7439)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
10616 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
10617 	result = NIM_NIL;
10618 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_247), args, argsLen_0);
10619 	return result;
10620 }
N_NIMCALL(void,genTraverseProc__cgen_7348)10621 N_LIB_PRIVATE N_NIMCALL(void, genTraverseProc__cgen_7348)(tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg c, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
10622 {	{
10623 		if (!(n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
10624 		goto BeforeRet_;
10625 	}
10626 	LA3_: ;
10627 	switch ((*n).kind) {
10628 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
10629 	{
10630 		{
10631 			NI i;
10632 			NI colontmp_;
10633 			NI i_2;
10634 			i = (NI)0;
10635 			colontmp_ = (NI)0;
10636 			colontmp_ = len__ast_3198(n);
10637 			i_2 = ((NI) 0);
10638 			{
10639 				while (1) {
10640 					if (!(i_2 < colontmp_)) goto LA8;
10641 					i = i_2;
10642 					genTraverseProc__cgen_7348(c, accessor, (*n)._kind_6.sons->data[i], typ);
10643 					i_2 += ((NI) 1);
10644 				} LA8: ;
10645 			}
10646 		}
10647 	}
10648 	break;
10649 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
10650 	{
10651 		tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p;
10652 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* disc;
10653 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T23_;
10654 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T24_;
10655 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
10656 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
10657 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T44_;
10658 		tyArray__qTjAvTvKF9anytN1At69aJMQ T45_;
10659 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
10660 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
10661 		{
10662 			if (!!(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA12_;
10663 			internalErrorImpl__msgs_1431((*(*(*c.p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_183), TM__MQdRN7fpbG7rPm4JpVVAhA_184);
10664 		}
10665 		LA12_: ;
10666 		p = c.p;
10667 		disc = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
10668 		{
10669 			if (!((*disc).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA16_;
10670 			fillObjectFields__cgen_3777((*c.p).module, typ);
10671 		}
10672 		LA16_: ;
10673 		{
10674 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T20_;
10675 			T20_ = NIM_NIL;
10676 			T20_ = t__cgen_79((*disc).loc);
10677 			if (!(T20_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA21_;
10678 			internalErrorImpl__msgs_1431((*(*(*c.p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_203), TM__MQdRN7fpbG7rPm4JpVVAhA_204);
10679 		}
10680 		LA21_: ;
10681 		T23_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10682 		T23_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10683 		nimZeroMem((void*)T24_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
10684 		T24_[0] = accessor;
10685 		T24_[1] = (*disc).loc.r;
10686 		T25_ = NIM_NIL;
10687 		T25_ = percent___cgen_7382(T24_, 2);
10688 		T26_ = NIM_NIL;
10689 		T26_ = indentLine__cgen_280(p, T25_);
10690 		add__ropes_159(T23_, T26_);
10691 		{
10692 			NI i_3;
10693 			NI colontmp__2;
10694 			NI i_4;
10695 			i_3 = (NI)0;
10696 			colontmp__2 = (NI)0;
10697 			colontmp__2 = len__ast_3198(n);
10698 			i_4 = ((NI) 1);
10699 			{
10700 				while (1) {
10701 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch;
10702 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T39_;
10703 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T40_;
10704 					tyArray__qTjAvTvKF9anytN1At69aJMQ T41_;
10705 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
10706 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
10707 					if (!(i_4 < colontmp__2)) goto LA29;
10708 					i_3 = i_4;
10709 					branch = (*n)._kind_6.sons->data[i_3];
10710 					{
10711 						if (!((*branch).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85))) goto LA32_;
10712 						genCaseRange__cgen_7340(c.p, branch);
10713 					}
10714 					goto LA30_;
10715 					LA32_: ;
10716 					{
10717 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T35_;
10718 						tyArray__qTjAvTvKF9anytN1At69aJMQ T36_;
10719 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
10720 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
10721 						T35_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10722 						T35_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10723 						nimZeroMem((void*)T36_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
10724 						T37_ = NIM_NIL;
10725 						T37_ = percent___cgen_7408(T36_, 0);
10726 						T38_ = NIM_NIL;
10727 						T38_ = indentLine__cgen_280(p, T37_);
10728 						add__ropes_159(T35_, T38_);
10729 					}
10730 					LA30_: ;
10731 					T39_ = NIM_NIL;
10732 					T39_ = lastSon__ast_4832(branch);
10733 					genTraverseProc__cgen_7348(c, accessor, T39_, typ);
10734 					T40_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10735 					T40_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10736 					nimZeroMem((void*)T41_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
10737 					T42_ = NIM_NIL;
10738 					T42_ = percent___cgen_7416(T41_, 0);
10739 					T43_ = NIM_NIL;
10740 					T43_ = indentLine__cgen_280(p, T42_);
10741 					add__ropes_159(T40_, T43_);
10742 					i_4 += ((NI) 1);
10743 				} LA29: ;
10744 			}
10745 		}
10746 		T44_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10747 		T44_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10748 		nimZeroMem((void*)T45_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
10749 		T46_ = NIM_NIL;
10750 		T46_ = percent___cgen_7421(T45_, 0);
10751 		T47_ = NIM_NIL;
10752 		T47_ = indentLine__cgen_280(p, T46_);
10753 		add__ropes_159(T44_, T47_);
10754 	}
10755 	break;
10756 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
10757 	{
10758 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
10759 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T62_;
10760 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
10761 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T64_;
10762 		field = (*n)._kind_4.sym;
10763 		{
10764 			if (!((*(*field).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63))) goto LA51_;
10765 			goto BeforeRet_;
10766 		}
10767 		LA51_: ;
10768 		{
10769 			if (!((*field).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA55_;
10770 			fillObjectFields__cgen_3777((*c.p).module, typ);
10771 		}
10772 		LA55_: ;
10773 		{
10774 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T59_;
10775 			T59_ = NIM_NIL;
10776 			T59_ = t__cgen_79((*field).loc);
10777 			if (!(T59_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA60_;
10778 			internalErrorImpl__msgs_1431((*(*(*c.p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_203), TM__MQdRN7fpbG7rPm4JpVVAhA_246);
10779 		}
10780 		LA60_: ;
10781 		nimZeroMem((void*)T62_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
10782 		T62_[0] = accessor;
10783 		T62_[1] = (*field).loc.r;
10784 		T63_ = NIM_NIL;
10785 		T63_ = percent___cgen_7439(T62_, 2);
10786 		T64_ = NIM_NIL;
10787 		T64_ = t__cgen_79((*field).loc);
10788 		genTraverseProc__cgen_7336(c, T63_, T64_);
10789 	}
10790 	break;
10791 	default:
10792 	{
10793 		internalErrorImpl__msgs_1431((*(*(*c.p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_203), TM__MQdRN7fpbG7rPm4JpVVAhA_248);
10794 	}
10795 	break;
10796 	}
10797 	}BeforeRet_: ;
10798 }
N_NIMCALL(void,genTraverseProc__cgen_7336)10799 N_LIB_PRIVATE N_NIMCALL(void, genTraverseProc__cgen_7336)(tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg c, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
10800 	tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p;
10801 {	{
10802 		if (!(typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA3_;
10803 		goto BeforeRet_;
10804 	}
10805 	LA3_: ;
10806 	p = c.p;
10807 	switch ((*typ).kind) {
10808 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11):
10809 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 10):
10810 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8):
10811 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 4):
10812 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 13):
10813 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 55):
10814 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46):
10815 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 45):
10816 	{
10817 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
10818 		T6_ = NIM_NIL;
10819 		T6_ = lastSon__ast_3743(typ);
10820 		genTraverseProc__cgen_7336(c, accessor, T6_);
10821 	}
10822 	break;
10823 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
10824 	{
10825 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA arraySize;
10826 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA i;
10827 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T8_;
10828 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* oldCode;
10829 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T9_;
10830 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
10831 		NimStringDesc* res;
10832 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
10833 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
10834 		NI oldLen;
10835 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T17_;
10836 		NimStringDesc* res_2;
10837 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
10838 		arraySize = lengthOrd__types_1652((*(*(*c.p).module).g).config, (*typ).sons->data[((NI) 0)]);
10839 		nimZeroMem((void*)(&i), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
10840 		T8_ = NIM_NIL;
10841 		T8_ = getSysType__magicsys_60((*(*(*c.p).module).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
10842 		getTemp__cgen_7343(p, T8_, (&i), NIM_FALSE);
10843 		T9_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10844 		T9_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10845 		oldCode = (*T9_);
10846 		T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10847 		T10_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10848 		res = rawNewString(((NI) 80));
10849 		res = resizeString(res, 5);
10850 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_175));
10851 		cgFormatValue__cgen_141((&res), i.r);
10852 		res = resizeString(res, 6);
10853 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_176));
10854 		cgFormatValue__cgen_141((&res), i.r);
10855 		res = resizeString(res, 3);
10856 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_177));
10857 		cgFormatValue__cgen_151((&res), arraySize);
10858 		res = resizeString(res, 2);
10859 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
10860 		cgFormatValue__cgen_141((&res), i.r);
10861 		res = resizeString(res, 5);
10862 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_179));
10863 		{
10864 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA13_;
10865 			res = resizeString(res, 1);
10866 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
10867 		}
10868 		LA13_: ;
10869 		T15_ = NIM_NIL;
10870 		T15_ = rope__ropes_109(res);
10871 		T16_ = NIM_NIL;
10872 		T16_ = indentLine__cgen_280(p, T15_);
10873 		add__ropes_159(T10_, T16_);
10874 		T17_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10875 		T17_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10876 		oldLen = len__ropes_10((*T17_));
10877 		res_2 = rawNewString(((NI) 80));
10878 		cgFormatValue__cgen_141((&res_2), accessor);
10879 		res_2 = resizeString(res_2, 1);
10880 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
10881 		cgFormatValue__cgen_141((&res_2), i.r);
10882 		res_2 = resizeString(res_2, 1);
10883 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
10884 		T18_ = NIM_NIL;
10885 		T18_ = rope__ropes_109(res_2);
10886 		genTraverseProc__cgen_7336(c, T18_, (*typ).sons->data[((NI) 1)]);
10887 		{
10888 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T21_;
10889 			NI T22_;
10890 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T25_;
10891 			T21_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10892 			T21_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10893 			T22_ = (NI)0;
10894 			T22_ = len__ropes_10((*T21_));
10895 			if (!(T22_ == oldLen)) goto LA23_;
10896 			T25_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10897 			T25_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10898 			unsureAsgnRef((void**) (&(*T25_)), oldCode);
10899 		}
10900 		goto LA19_;
10901 		LA23_: ;
10902 		{
10903 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T27_;
10904 			tyArray__qTjAvTvKF9anytN1At69aJMQ T28_;
10905 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
10906 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
10907 			T27_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10908 			T27_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10909 			nimZeroMem((void*)T28_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
10910 			T29_ = NIM_NIL;
10911 			T29_ = percent___cgen_7505(T28_, 0);
10912 			T30_ = NIM_NIL;
10913 			T30_ = indentLine__cgen_280(p, T29_);
10914 			add__ropes_159(T27_, T30_);
10915 		}
10916 		LA19_: ;
10917 	}
10918 	break;
10919 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
10920 	{
10921 		{
10922 			NI i_2;
10923 			NI colontmp_;
10924 			NI i_3;
10925 			i_2 = (NI)0;
10926 			colontmp_ = (NI)0;
10927 			colontmp_ = len__ast_4002(typ);
10928 			i_3 = ((NI) 0);
10929 			{
10930 				while (1) {
10931 					tyObject_TType__facALICuu8zUj0hjvbTLFg* x;
10932 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
10933 					if (!(i_3 < colontmp_)) goto LA34;
10934 					i_2 = i_3;
10935 					x = (*typ).sons->data[i_2];
10936 					{
10937 						if (!!((x == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA37_;
10938 						x = skipTypes__ast_3735(x, TM__MQdRN7fpbG7rPm4JpVVAhA_112);
10939 					}
10940 					LA37_: ;
10941 					T39_ = NIM_NIL;
10942 					T39_ = parentObj__cgen_7444(accessor, (*c.p).module);
10943 					genTraverseProc__cgen_7336(c, T39_, x);
10944 					i_3 += ((NI) 1);
10945 				} LA34: ;
10946 			}
10947 		}
10948 		{
10949 			if (!!(((*typ).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA42_;
10950 			genTraverseProc__cgen_7348(c, accessor, (*typ).n, typ);
10951 		}
10952 		LA42_: ;
10953 	}
10954 	break;
10955 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
10956 	{
10957 		tyObject_TType__facALICuu8zUj0hjvbTLFg* typ_2;
10958 		typ_2 = typ;
10959 		{
10960 			NI i_4;
10961 			NI colontmp__2;
10962 			NI i_5;
10963 			i_4 = (NI)0;
10964 			colontmp__2 = (NI)0;
10965 			colontmp__2 = len__ast_4002(typ_2);
10966 			i_5 = ((NI) 0);
10967 			{
10968 				while (1) {
10969 					NimStringDesc* res_3;
10970 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
10971 					if (!(i_5 < colontmp__2)) goto LA47;
10972 					i_4 = i_5;
10973 					res_3 = rawNewString(((NI) 80));
10974 					cgFormatValue__cgen_141((&res_3), accessor);
10975 					res_3 = resizeString(res_3, 6);
10976 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_249));
10977 					cgFormatValue__cgen_148((&res_3), ((NI64) (i_4)));
10978 					T48_ = NIM_NIL;
10979 					T48_ = rope__ropes_109(res_3);
10980 					genTraverseProc__cgen_7336(c, T48_, (*typ_2).sons->data[i_4]);
10981 					i_5 += ((NI) 1);
10982 				} LA47: ;
10983 			}
10984 		}
10985 	}
10986 	break;
10987 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
10988 	{
10989 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T50_;
10990 		NimStringDesc* res_4;
10991 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
10992 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
10993 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
10994 		T50_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
10995 		T50_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
10996 		res_4 = rawNewString(((NI) 80));
10997 		T51_ = NIM_NIL;
10998 		T51_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_250));
10999 		cgFormatValue__cgen_141((&res_4), T51_);
11000 		res_4 = resizeString(res_4, 8);
11001 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
11002 		cgFormatValue__cgen_141((&res_4), accessor);
11003 		res_4 = resizeString(res_4, 2);
11004 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
11005 		cgFormatValue__cgen_145((&res_4), c.visitorFrmt);
11006 		res_4 = resizeString(res_4, 2);
11007 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
11008 		{
11009 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA54_;
11010 			res_4 = resizeString(res_4, 1);
11011 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
11012 		}
11013 		LA54_: ;
11014 		T56_ = NIM_NIL;
11015 		T56_ = rope__ropes_109(res_4);
11016 		T57_ = NIM_NIL;
11017 		T57_ = indentLine__cgen_280(p, T56_);
11018 		add__ropes_159(T50_, T57_);
11019 	}
11020 	break;
11021 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
11022 	{
11023 		{
11024 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T63_;
11025 			NimStringDesc* res_5;
11026 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
11027 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
11028 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
11029 			if (!!((((*(*(*(*c.p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0))) goto LA61_;
11030 			T63_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11031 			T63_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11032 			res_5 = rawNewString(((NI) 80));
11033 			T64_ = NIM_NIL;
11034 			T64_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_250));
11035 			cgFormatValue__cgen_141((&res_5), T64_);
11036 			res_5 = resizeString(res_5, 8);
11037 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
11038 			cgFormatValue__cgen_141((&res_5), accessor);
11039 			res_5 = resizeString(res_5, 2);
11040 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
11041 			cgFormatValue__cgen_145((&res_5), c.visitorFrmt);
11042 			res_5 = resizeString(res_5, 2);
11043 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
11044 			{
11045 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA67_;
11046 				res_5 = resizeString(res_5, 1);
11047 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
11048 			}
11049 			LA67_: ;
11050 			T69_ = NIM_NIL;
11051 			T69_ = rope__ropes_109(res_5);
11052 			T70_ = NIM_NIL;
11053 			T70_ = indentLine__cgen_280(p, T69_);
11054 			add__ropes_159(T63_, T70_);
11055 		}
11056 		goto LA59_;
11057 		LA61_: ;
11058 		{
11059 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T72_;
11060 			NIM_BOOL T73_;
11061 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T76_;
11062 			NimStringDesc* res_6;
11063 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T77_;
11064 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T82_;
11065 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T83_;
11066 			T72_ = NIM_NIL;
11067 			T72_ = lastSon__ast_3743(typ);
11068 			T73_ = (NIM_BOOL)0;
11069 			T73_ = containsGarbageCollectedRef__types_612(T72_);
11070 			if (!T73_) goto LA74_;
11071 			T76_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11072 			T76_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11073 			res_6 = rawNewString(((NI) 80));
11074 			T77_ = NIM_NIL;
11075 			T77_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_251));
11076 			cgFormatValue__cgen_141((&res_6), T77_);
11077 			res_6 = resizeString(res_6, 8);
11078 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
11079 			cgFormatValue__cgen_141((&res_6), accessor);
11080 			res_6 = resizeString(res_6, 2);
11081 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
11082 			cgFormatValue__cgen_145((&res_6), c.visitorFrmt);
11083 			res_6 = resizeString(res_6, 2);
11084 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
11085 			{
11086 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA80_;
11087 				res_6 = resizeString(res_6, 1);
11088 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
11089 			}
11090 			LA80_: ;
11091 			T82_ = NIM_NIL;
11092 			T82_ = rope__ropes_109(res_6);
11093 			T83_ = NIM_NIL;
11094 			T83_ = indentLine__cgen_280(p, T82_);
11095 			add__ropes_159(T76_, T83_);
11096 		}
11097 		goto LA59_;
11098 		LA74_: ;
11099 		LA59_: ;
11100 	}
11101 	break;
11102 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
11103 	{
11104 		{
11105 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T89_;
11106 			NimStringDesc* res_7;
11107 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T90_;
11108 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T95_;
11109 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T96_;
11110 			if (!!((((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 31))&63U)))!=0))) goto LA87_;
11111 			T89_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11112 			T89_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11113 			res_7 = rawNewString(((NI) 80));
11114 			T90_ = NIM_NIL;
11115 			T90_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_250));
11116 			cgFormatValue__cgen_141((&res_7), T90_);
11117 			res_7 = resizeString(res_7, 8);
11118 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
11119 			cgFormatValue__cgen_141((&res_7), accessor);
11120 			res_7 = resizeString(res_7, 2);
11121 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
11122 			cgFormatValue__cgen_145((&res_7), c.visitorFrmt);
11123 			res_7 = resizeString(res_7, 2);
11124 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
11125 			{
11126 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA93_;
11127 				res_7 = resizeString(res_7, 1);
11128 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
11129 			}
11130 			LA93_: ;
11131 			T95_ = NIM_NIL;
11132 			T95_ = rope__ropes_109(res_7);
11133 			T96_ = NIM_NIL;
11134 			T96_ = indentLine__cgen_280(p, T95_);
11135 			add__ropes_159(T89_, T96_);
11136 		}
11137 		LA87_: ;
11138 	}
11139 	break;
11140 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25):
11141 	{
11142 		{
11143 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T102_;
11144 			NimStringDesc* res_8;
11145 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T103_;
11146 			NimStringDesc* res_9;
11147 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T104_;
11148 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T109_;
11149 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T110_;
11150 			if (!((*typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9))) goto LA100_;
11151 			T102_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11152 			T102_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11153 			res_8 = rawNewString(((NI) 80));
11154 			T103_ = NIM_NIL;
11155 			T103_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_250));
11156 			cgFormatValue__cgen_141((&res_8), T103_);
11157 			res_8 = resizeString(res_8, 8);
11158 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
11159 			res_9 = rawNewString(((NI) 80));
11160 			cgFormatValue__cgen_141((&res_9), accessor);
11161 			res_9 = resizeString(res_9, 6);
11162 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_252));
11163 			T104_ = NIM_NIL;
11164 			T104_ = rope__ropes_109(res_9);
11165 			cgFormatValue__cgen_141((&res_8), T104_);
11166 			res_8 = resizeString(res_8, 2);
11167 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
11168 			cgFormatValue__cgen_145((&res_8), c.visitorFrmt);
11169 			res_8 = resizeString(res_8, 2);
11170 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
11171 			{
11172 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA107_;
11173 				res_8 = resizeString(res_8, 1);
11174 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
11175 			}
11176 			LA107_: ;
11177 			T109_ = NIM_NIL;
11178 			T109_ = rope__ropes_109(res_8);
11179 			T110_ = NIM_NIL;
11180 			T110_ = indentLine__cgen_280(p, T109_);
11181 			add__ropes_159(T102_, T110_);
11182 		}
11183 		LA100_: ;
11184 	}
11185 	break;
11186 	default:
11187 	{
11188 	}
11189 	break;
11190 	}
11191 	}BeforeRet_: ;
11192 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7657)11193 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7657)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11194 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11195 	result = NIM_NIL;
11196 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_253), args, argsLen_0);
11197 	return result;
11198 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,dataField__cgen_461)11199 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, dataField__cgen_461)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
11200 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11201 	result = NIM_NIL;
11202 	{
11203 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA3_;
11204 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_254));
11205 	}
11206 	goto LA1_;
11207 	LA3_: ;
11208 	{
11209 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_255));
11210 	}
11211 	LA1_: ;
11212 	return result;
11213 }
N_NIMCALL(void,genTraverseProcSeq__cgen_7461)11214 N_LIB_PRIVATE N_NIMCALL(void, genTraverseProcSeq__cgen_7461)(tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg c, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
11215 	tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p;
11216 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA i;
11217 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
11218 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* oldCode;
11219 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T2_;
11220 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
11221 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T3_;
11222 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T4_;
11223 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
11224 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
11225 	NI oldLen;
11226 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T7_;
11227 	tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T8_;
11228 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
11229 	p = c.p;
11230 	nimZeroMem((void*)(&i), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
11231 	T1_ = NIM_NIL;
11232 	T1_ = getSysType__magicsys_60((*(*(*c.p).module).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
11233 	getTemp__cgen_7343(p, T1_, (&i), NIM_FALSE);
11234 	T2_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11235 	T2_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11236 	oldCode = (*T2_);
11237 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
11238 	a.r = accessor;
11239 	T3_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11240 	T3_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11241 	nimZeroMem((void*)T4_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
11242 	T4_[0] = i.r;
11243 	T4_[1] = lenExpr__cgen_448(c.p, a);
11244 	T5_ = NIM_NIL;
11245 	T5_ = percent___cgen_7651(T4_, 2);
11246 	T6_ = NIM_NIL;
11247 	T6_ = indentLine__cgen_280(p, T5_);
11248 	add__ropes_159(T3_, T6_);
11249 	T7_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11250 	T7_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11251 	oldLen = len__ropes_10((*T7_));
11252 	nimZeroMem((void*)T8_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
11253 	T8_[0] = accessor;
11254 	T8_[1] = i.r;
11255 	T8_[2] = dataField__cgen_461(c.p);
11256 	T9_ = NIM_NIL;
11257 	T9_ = percent___cgen_7657(T8_, 3);
11258 	genTraverseProc__cgen_7336(c, T9_, (*typ).sons->data[((NI) 0)]);
11259 	{
11260 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T12_;
11261 		NI T13_;
11262 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T16_;
11263 		T12_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11264 		T12_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11265 		T13_ = (NI)0;
11266 		T13_ = len__ropes_10((*T12_));
11267 		if (!(T13_ == oldLen)) goto LA14_;
11268 		T16_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11269 		T16_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11270 		unsureAsgnRef((void**) (&(*T16_)), oldCode);
11271 	}
11272 	goto LA10_;
11273 	LA14_: ;
11274 	{
11275 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T18_;
11276 		tyArray__qTjAvTvKF9anytN1At69aJMQ T19_;
11277 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
11278 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
11279 		T18_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11280 		T18_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11281 		nimZeroMem((void*)T19_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
11282 		T20_ = NIM_NIL;
11283 		T20_ = percent___cgen_7505(T19_, 0);
11284 		T21_ = NIM_NIL;
11285 		T21_ = indentLine__cgen_280(p, T20_);
11286 		add__ropes_159(T18_, T21_);
11287 	}
11288 	LA10_: ;
11289 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7716)11290 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7716)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11291 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11292 	result = NIM_NIL;
11293 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_258), args, argsLen_0);
11294 	return result;
11295 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7722)11296 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7722)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11297 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11298 	result = NIM_NIL;
11299 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_259), args, argsLen_0);
11300 	return result;
11301 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7727)11302 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7727)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11303 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11304 	result = NIM_NIL;
11305 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_260), args, argsLen_0);
11306 	return result;
11307 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7732)11308 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7732)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11309 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11310 	result = NIM_NIL;
11311 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_261), args, argsLen_0);
11312 	return result;
11313 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genTraverseProc__cgen_7667)11314 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTraverseProc__cgen_7667)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* origTyp, tyArray__qtqsWM5aXmcpMIVmvq3kAA sig) {
11315 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11316 	tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg c;
11317 	tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p;
11318 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
11319 	NIM_BOOL hcrOn;
11320 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
11321 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* markerName;
11322 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* header;
11323 	tyArray__JiWwrsTRC6xqNlGcBthSVA T7_;
11324 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* t;
11325 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T8_;
11326 	tyArray__JiWwrsTRC6xqNlGcBthSVA T9_;
11327 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
11328 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
11329 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T12_;
11330 	tyArray__JiWwrsTRC6xqNlGcBthSVA T13_;
11331 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
11332 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
11333 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* generatedProc;
11334 	tyArray__f7nG5LD47BH5K9c6mASit3g T30_;
11335 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T31_;
11336 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T32_;
11337 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T33_;
11338 	tyArray__JiWwrsTRC6xqNlGcBthSVA T34_;
11339 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
11340 	result = NIM_NIL;
11341 	nimZeroMem((void*)(&c), sizeof(tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg));
11342 	p = newProc__cgendata_278(((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL), m);
11343 	T1_ = NIM_NIL;
11344 	T1_ = getTypeName__cgen_1161(m, origTyp, sig);
11345 	result = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_163), T1_);
11346 	hcrOn = hcrOn__cgen_42(m);
11347 	typ = skipTypes__ast_3735(origTyp, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
11348 	{
11349 		if (!hcrOn) goto LA4_;
11350 		markerName = amp___ropes_140(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_71));
11351 	}
11352 	goto LA2_;
11353 	LA4_: ;
11354 	{
11355 		markerName = result;
11356 	}
11357 	LA2_: ;
11358 	nimZeroMem((void*)T7_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
11359 	T7_[0] = markerName;
11360 	header = percent___cgen_7677(T7_, 1);
11361 	t = getTypeDesc__cgen_6631(m, typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
11362 	T8_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11363 	T8_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
11364 	nimZeroMem((void*)T9_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
11365 	T9_[0] = t;
11366 	T10_ = NIM_NIL;
11367 	T10_ = percent___cgen_7684(T9_, 1);
11368 	T11_ = NIM_NIL;
11369 	T11_ = indentLine__cgen_280(p, T10_);
11370 	add__ropes_159(T8_, T11_);
11371 	T12_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11372 	T12_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
11373 	nimZeroMem((void*)T13_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
11374 	T13_[0] = t;
11375 	T14_ = NIM_NIL;
11376 	T14_ = percent___cgen_7689(T13_, 1);
11377 	T15_ = NIM_NIL;
11378 	T15_ = indentLine__cgen_280(p, T14_);
11379 	add__ropes_159(T12_, T15_);
11380 	c.p = p;
11381 	c.visitorFrmt = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_168));
11382 	{
11383 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
11384 		if (!((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24))) goto LA18_;
11385 		T20_ = NIM_NIL;
11386 		T20_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_256));
11387 		genTraverseProcSeq__cgen_7461(c, T20_, typ);
11388 	}
11389 	goto LA16_;
11390 	LA18_: ;
11391 	{
11392 		{
11393 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T24_;
11394 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
11395 			T24_ = NIM_NIL;
11396 			T24_ = skipTypes__ast_3735((*typ).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_32);
11397 			if (!((*T24_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16))) goto LA25_;
11398 			T27_ = NIM_NIL;
11399 			T27_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_256));
11400 			genTraverseProc__cgen_7336(c, T27_, (*typ).sons->data[((NI) 0)]);
11401 		}
11402 		goto LA22_;
11403 		LA25_: ;
11404 		{
11405 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
11406 			T29_ = NIM_NIL;
11407 			T29_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_257));
11408 			genTraverseProc__cgen_7336(c, T29_, (*typ).sons->data[((NI) 0)]);
11409 		}
11410 		LA22_: ;
11411 	}
11412 	LA16_: ;
11413 	nimZeroMem((void*)T30_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
11414 	T30_[0] = header;
11415 	T31_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11416 	T31_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
11417 	T30_[1] = (*T31_);
11418 	T32_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11419 	T32_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
11420 	T30_[2] = (*T32_);
11421 	T33_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
11422 	T33_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
11423 	T30_[3] = (*T33_);
11424 	generatedProc = percent___cgen_7716(T30_, 4);
11425 	nimZeroMem((void*)T34_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
11426 	T34_[0] = header;
11427 	T35_ = NIM_NIL;
11428 	T35_ = percent___cgen_7722(T34_, 1);
11429 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 8))- 0], T35_);
11430 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], generatedProc);
11431 	{
11432 		tyArray__JiWwrsTRC6xqNlGcBthSVA T40_;
11433 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
11434 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T42_;
11435 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
11436 		if (!hcrOn) goto LA38_;
11437 		nimZeroMem((void*)T40_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
11438 		T40_[0] = result;
11439 		T41_ = NIM_NIL;
11440 		T41_ = percent___cgen_7727(T40_, 1);
11441 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 8))- 0], T41_);
11442 		nimZeroMem((void*)T42_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
11443 		T42_[0] = result;
11444 		T42_[1] = markerName;
11445 		T42_[2] = getModuleDllPath__cgen_125(m);
11446 		T43_ = NIM_NIL;
11447 		T43_ = percent___cgen_7732(T42_, 3);
11448 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T43_);
11449 	}
11450 	LA38_: ;
11451 	return result;
11452 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_10232)11453 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_10232)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11454 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11455 	result = NIM_NIL;
11456 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_262), args, argsLen_0);
11457 	return result;
11458 }
N_NIMCALL(void,genArrayInfo__cgen_7320)11459 N_LIB_PRIVATE N_NIMCALL(void, genArrayInfo__cgen_7320)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
11460 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
11461 	T1_ = NIM_NIL;
11462 	T1_ = genTypeInfoV1__cgen_6768(m, (*typ).sons->data[((NI) 1)], info);
11463 	genTypeInfoAuxBase__cgen_6788(m, typ, typ, name, T1_, info);
11464 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7315)11465 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7315)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11466 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11467 	result = NIM_NIL;
11468 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_263), args, argsLen_0);
11469 	return result;
11470 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,rope__cgen_6918)11471 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rope__cgen_6918)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA arg) {
11472 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11473 	NimStringDesc* T1_;
11474 	result = NIM_NIL;
11475 	T1_ = NIM_NIL;
11476 	T1_ = dollar___int495056_53(arg);
11477 	result = rope__ropes_109(T1_);
11478 	return result;
11479 }
N_NIMCALL(void,genSetInfo__cgen_7301)11480 N_LIB_PRIVATE N_NIMCALL(void, genSetInfo__cgen_7301)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
11481 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
11482 	tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T1_;
11483 	tyObject_Int128__9a9axPfb75jdWY25AamJewkA T2_;
11484 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
11485 	genTypeInfoAux__cgen_6853(m, typ, typ, name, info);
11486 	tmp = getNimNode__cgen_6772(m);
11487 	nimZeroMem((void*)T1_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
11488 	T1_[0] = tmp;
11489 	T2_ = firstOrd__types_1353((*(*m).g).config, typ);
11490 	T1_[1] = rope__cgen_6918(T2_);
11491 	T1_[2] = tiNameForHcr__cgen_6784(m, name);
11492 	T3_ = NIM_NIL;
11493 	T3_ = percent___cgen_7315(T1_, 3);
11494 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T3_);
11495 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7251)11496 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7251)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11497 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11498 	result = NIM_NIL;
11499 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_265), args, argsLen_0);
11500 	return result;
11501 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7258)11502 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7258)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11503 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11504 	result = NIM_NIL;
11505 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_266), args, argsLen_0);
11506 	return result;
11507 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7266)11508 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7266)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11509 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11510 	result = NIM_NIL;
11511 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_267), args, argsLen_0);
11512 	return result;
11513 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7274)11514 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7274)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11515 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11516 	result = NIM_NIL;
11517 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_268), args, argsLen_0);
11518 	return result;
11519 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7282)11520 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7282)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11521 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11522 	result = NIM_NIL;
11523 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_269), args, argsLen_0);
11524 	return result;
11525 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7287)11526 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7287)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11527 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11528 	result = NIM_NIL;
11529 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_270), args, argsLen_0);
11530 	return result;
11531 }
N_NIMCALL(void,genEnumInfo__cgen_7205)11532 N_LIB_PRIVATE N_NIMCALL(void, genEnumInfo__cgen_7205)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
11533 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* nodePtrs;
11534 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
11535 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
11536 	NI T3_;
11537 	NimStringDesc* T4_;
11538 	NI T5_;
11539 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
11540 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* enumNames;
11541 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* specialCases;
11542 	NI firstNimNode;
11543 	NIM_BOOL hasHoles;
11544 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* enumArray;
11545 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* counter;
11546 	tyArray__JiWwrsTRC6xqNlGcBthSVA T30_;
11547 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
11548 	tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T32_;
11549 	NI T33_;
11550 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
11551 	tyArray__dNfZYyzVYdaWfURv4pxodA T35_;
11552 	NI T36_;
11553 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
11554 	tyArray__f7nG5LD47BH5K9c6mASit3g T38_;
11555 	NI T39_;
11556 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
11557 	genTypeInfoAux__cgen_6853(m, typ, typ, name, info);
11558 	T1_ = NIM_NIL;
11559 	T1_ = getTempName__cgen_418(m);
11560 	T2_ = NIM_NIL;
11561 	T2_ = amp___ropes_140(T1_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
11562 	T3_ = (NI)0;
11563 	T3_ = len__ast_3198((*typ).n);
11564 	T4_ = NIM_NIL;
11565 	T4_ = dollar___systemZdollars_3(T3_);
11566 	nodePtrs = amp___ropes_140(T2_, T4_);
11567 	T5_ = (NI)0;
11568 	T5_ = len__ast_3198((*typ).n);
11569 	T6_ = NIM_NIL;
11570 	T6_ = rope__ropes_115(((NI64) (T5_)));
11571 	genTNimNodeArray__cgen_6932(m, nodePtrs, T6_);
11572 	enumNames = NIM_NIL;
11573 	specialCases = NIM_NIL;
11574 	firstNimNode = (*m).typeNodes;
11575 	hasHoles = NIM_FALSE;
11576 	{
11577 		NI i;
11578 		NI colontmp_;
11579 		NI i_2;
11580 		i = (NI)0;
11581 		colontmp_ = (NI)0;
11582 		colontmp_ = len__ast_3198((*typ).n);
11583 		i_2 = ((NI) 0);
11584 		{
11585 			while (1) {
11586 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
11587 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* elemNode;
11588 				if (!(i_2 < colontmp_)) goto LA9;
11589 				i = i_2;
11590 				field = (*(*(*typ).n)._kind_6.sons->data[i])._kind_4.sym;
11591 				elemNode = getNimNode__cgen_6772(m);
11592 				{
11593 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
11594 					if (!((*field).ast == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA12_;
11595 					T14_ = NIM_NIL;
11596 					T14_ = makeCString__msgs_50((*(*field).name).s);
11597 					add__ropes_159(&enumNames, T14_);
11598 				}
11599 				goto LA10_;
11600 				LA12_: ;
11601 				{
11602 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
11603 					T16_ = NIM_NIL;
11604 					T16_ = makeCString__msgs_50((*(*field).ast)._kind_3.strVal);
11605 					add__ropes_159(&enumNames, T16_);
11606 				}
11607 				LA10_: ;
11608 				{
11609 					NI T19_;
11610 					T19_ = (NI)0;
11611 					T19_ = len__ast_3198((*typ).n);
11612 					if (!(i < (NI)(T19_ - ((NI) 1)))) goto LA20_;
11613 					add__ropes_162(&enumNames, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_264));
11614 				}
11615 				LA20_: ;
11616 				{
11617 					NIM_BOOL T24_;
11618 					tyArray__mrugoXXRZUEeG9bEXo9auBKw T28_;
11619 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
11620 					T24_ = (NIM_BOOL)0;
11621 					T24_ = !(((*field).position == i));
11622 					if (T24_) goto LA25_;
11623 					T24_ = (((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 5))&63U)))!=0);
11624 					LA25_: ;
11625 					if (!T24_) goto LA26_;
11626 					nimZeroMem((void*)T28_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
11627 					T28_[0] = elemNode;
11628 					T28_[1] = rope__ropes_115(((NI64) ((*field).position)));
11629 					T29_ = NIM_NIL;
11630 					T29_ = percent___cgen_7251(T28_, 2);
11631 					add__ropes_159(&specialCases, T29_);
11632 					hasHoles = NIM_TRUE;
11633 				}
11634 				LA26_: ;
11635 				i_2 += ((NI) 1);
11636 			} LA9: ;
11637 		}
11638 	}
11639 	enumArray = getTempName__cgen_418(m);
11640 	counter = getTempName__cgen_418(m);
11641 	nimZeroMem((void*)T30_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
11642 	T30_[0] = counter;
11643 	T31_ = NIM_NIL;
11644 	T31_ = percent___cgen_7258(T30_, 1);
11645 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 14))- 0], T31_);
11646 	nimZeroMem((void*)T32_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
11647 	T32_[0] = enumArray;
11648 	T33_ = (NI)0;
11649 	T33_ = len__ast_3198((*typ).n);
11650 	T32_[1] = rope__ropes_115(((NI64) (T33_)));
11651 	T32_[2] = enumNames;
11652 	T34_ = NIM_NIL;
11653 	T34_ = percent___cgen_7266(T32_, 3);
11654 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 14))- 0], T34_);
11655 	nimZeroMem((void*)T35_, sizeof(tyArray__dNfZYyzVYdaWfURv4pxodA));
11656 	T35_[0] = counter;
11657 	T36_ = (NI)0;
11658 	T36_ = len__ast_3198((*typ).n);
11659 	T35_[1] = rope__ropes_115(((NI64) (T36_)));
11660 	T35_[2] = (*m).typeNodesName;
11661 	T35_[3] = rope__ropes_115(((NI64) (firstNimNode)));
11662 	T35_[4] = enumArray;
11663 	T35_[5] = nodePtrs;
11664 	T37_ = NIM_NIL;
11665 	T37_ = percent___cgen_7274(T35_, 6);
11666 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T37_);
11667 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], specialCases);
11668 	nimZeroMem((void*)T38_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
11669 	T38_[0] = getNimNode__cgen_6772(m);
11670 	T39_ = (NI)0;
11671 	T39_ = len__ast_3198((*typ).n);
11672 	T38_[1] = rope__ropes_115(((NI64) (T39_)));
11673 	T38_[2] = nodePtrs;
11674 	T38_[3] = tiNameForHcr__cgen_6784(m, name);
11675 	T40_ = NIM_NIL;
11676 	T40_ = percent___cgen_7282(T38_, 4);
11677 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T40_);
11678 	{
11679 		tyArray__JiWwrsTRC6xqNlGcBthSVA T45_;
11680 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
11681 		if (!hasHoles) goto LA43_;
11682 		nimZeroMem((void*)T45_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
11683 		T45_[0] = tiNameForHcr__cgen_6784(m, name);
11684 		T46_ = NIM_NIL;
11685 		T46_ = percent___cgen_7287(T45_, 1);
11686 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T46_);
11687 	}
11688 	LA43_: ;
11689 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6913)11690 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6913)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11691 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11692 	result = NIM_NIL;
11693 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_275), args, argsLen_0);
11694 	return result;
11695 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,discriminatorTableName__cgen_6898)11696 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, discriminatorTableName__cgen_6898)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* objtype, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* d) {
11697 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11698 	tyObject_TType__facALICuu8zUj0hjvbTLFg* objtype_2;
11699 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T8_;
11700 	tyArray__qtqsWM5aXmcpMIVmvq3kAA T9_;
11701 	NimStringDesc* T10_;
11702 	NimStringDesc* T11_;
11703 	result = NIM_NIL;
11704 	objtype_2 = skipTypes__ast_3735(objtype, TM__MQdRN7fpbG7rPm4JpVVAhA_272);
11705 	{
11706 		while (1) {
11707 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T3_;
11708 			T3_ = NIM_NIL;
11709 			T3_ = lookupInRecord__astalgo_84((*objtype_2).n, (*d).name);
11710 			if (!(T3_ == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA2;
11711 			objtype_2 = skipTypes__ast_3735((*objtype_2).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_272);
11712 		} LA2: ;
11713 	}
11714 	{
11715 		if (!((*objtype_2).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA6_;
11716 		internalErrorImpl__msgs_1431((*(*m).g).config, (*d).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_273), TM__MQdRN7fpbG7rPm4JpVVAhA_274);
11717 	}
11718 	LA6_: ;
11719 	nimZeroMem((void*)T8_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
11720 	nimZeroMem((void*)T9_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
11721 	hashType__sighashes_462(objtype_2, 2, T9_);
11722 	T10_ = NIM_NIL;
11723 	T10_ = dollar___modulegraphs_8947(T9_);
11724 	T8_[0] = rope__ropes_109(T10_);
11725 	T11_ = NIM_NIL;
11726 	T11_ = mangle__ccgutils_112((*(*d).name).s);
11727 	T8_[1] = rope__ropes_109(T11_);
11728 	result = percent___cgen_6913(T8_, 2);
11729 	return result;
11730 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7026)11731 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7026)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11732 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11733 	result = NIM_NIL;
11734 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_278), args, argsLen_0);
11735 	return result;
11736 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6927)11737 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6927)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11738 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11739 	result = NIM_NIL;
11740 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_279), args, argsLen_0);
11741 	return result;
11742 }
N_INLINE(NIM_BOOL,isEmptyType__ast_4779)11743 static N_INLINE(NIM_BOOL, isEmptyType__ast_4779)(tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
11744 	NIM_BOOL result;
11745 	NIM_BOOL T1_;
11746 	result = (NIM_BOOL)0;
11747 	T1_ = (NIM_BOOL)0;
11748 	T1_ = (t == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
11749 	if (T1_) goto LA2_;
11750 	T1_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 7));
11751 	LA2_: ;
11752 	result = T1_;
11753 	return result;
11754 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7097)11755 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7097)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
11756 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
11757 	result = NIM_NIL;
11758 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_285), args, argsLen_0);
11759 	return result;
11760 }
N_NIMCALL(void,genObjectFields__cgen_6951)11761 N_LIB_PRIVATE N_NIMCALL(void, genObjectFields__cgen_6951)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* expr, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
11762 {	switch ((*n).kind) {
11763 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
11764 	{
11765 		{
11766 			NI T4_;
11767 			T4_ = (NI)0;
11768 			T4_ = len__ast_3198(n);
11769 			if (!(T4_ == ((NI) 1))) goto LA5_;
11770 			genObjectFields__cgen_6951(m, typ, origType, (*n)._kind_6.sons->data[((NI) 0)], expr, info);
11771 		}
11772 		goto LA2_;
11773 		LA5_: ;
11774 		{
11775 			NI T8_;
11776 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
11777 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
11778 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
11779 			NI T13_;
11780 			NimStringDesc* T14_;
11781 			NI T15_;
11782 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
11783 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T22_;
11784 			NI T23_;
11785 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
11786 			T8_ = (NI)0;
11787 			T8_ = len__ast_3198(n);
11788 			if (!(((NI) 0) < T8_)) goto LA9_;
11789 			T11_ = NIM_NIL;
11790 			T11_ = getTempName__cgen_418(m);
11791 			T12_ = NIM_NIL;
11792 			T12_ = amp___ropes_140(T11_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
11793 			T13_ = (NI)0;
11794 			T13_ = len__ast_3198(n);
11795 			T14_ = NIM_NIL;
11796 			T14_ = dollar___systemZdollars_3(T13_);
11797 			tmp = amp___ropes_140(T12_, T14_);
11798 			T15_ = (NI)0;
11799 			T15_ = len__ast_3198(n);
11800 			T16_ = NIM_NIL;
11801 			T16_ = rope__ropes_115(((NI64) (T15_)));
11802 			genTNimNodeArray__cgen_6932(m, tmp, T16_);
11803 			{
11804 				NI i;
11805 				NI colontmp_;
11806 				NI i_2;
11807 				i = (NI)0;
11808 				colontmp_ = (NI)0;
11809 				colontmp_ = len__ast_3198(n);
11810 				i_2 = ((NI) 0);
11811 				{
11812 					while (1) {
11813 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp2;
11814 						tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T20_;
11815 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
11816 						if (!(i_2 < colontmp_)) goto LA19;
11817 						i = i_2;
11818 						tmp2 = getNimNode__cgen_6772(m);
11819 						nimZeroMem((void*)T20_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
11820 						T20_[0] = tmp;
11821 						T20_[1] = rope__ropes_115(((NI64) (i)));
11822 						T20_[2] = tmp2;
11823 						T21_ = NIM_NIL;
11824 						T21_ = percent___cgen_6981(T20_, 3);
11825 						add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T21_);
11826 						genObjectFields__cgen_6951(m, typ, origType, (*n)._kind_6.sons->data[i], tmp2, info);
11827 						i_2 += ((NI) 1);
11828 					} LA19: ;
11829 				}
11830 			}
11831 			nimZeroMem((void*)T22_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
11832 			T22_[0] = expr;
11833 			T23_ = (NI)0;
11834 			T23_ = len__ast_3198(n);
11835 			T22_[1] = rope__ropes_115(((NI64) (T23_)));
11836 			T22_[2] = tmp;
11837 			T24_ = NIM_NIL;
11838 			T24_ = percent___cgen_6990(T22_, 3);
11839 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T24_);
11840 		}
11841 		goto LA2_;
11842 		LA9_: ;
11843 		{
11844 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T26_;
11845 			NI T27_;
11846 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
11847 			nimZeroMem((void*)T26_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
11848 			T26_[0] = expr;
11849 			T27_ = (NI)0;
11850 			T27_ = len__ast_3198(n);
11851 			T26_[1] = rope__ropes_115(((NI64) (T27_)));
11852 			T28_ = NIM_NIL;
11853 			T28_ = percent___cgen_6998(T26_, 2);
11854 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T28_);
11855 		}
11856 		LA2_: ;
11857 	}
11858 	break;
11859 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
11860 	{
11861 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
11862 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp_2;
11863 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA L;
11864 		tyArray__YcHYlgE5mhtkt9a3rnoucVg T39_;
11865 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
11866 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T41_;
11867 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA T42_;
11868 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
11869 		field = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
11870 		tmp_2 = discriminatorTableName__cgen_6898(m, typ, field);
11871 		L = lengthOrd__types_1652((*(*m).g).config, (*field).typ);
11872 		{
11873 			if (!((*field).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA32_;
11874 			fillObjectFields__cgen_3777(m, typ);
11875 		}
11876 		LA32_: ;
11877 		{
11878 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T36_;
11879 			T36_ = NIM_NIL;
11880 			T36_ = t__cgen_79((*field).loc);
11881 			if (!(T36_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA37_;
11882 			internalErrorImpl__msgs_1431((*(*m).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_276), TM__MQdRN7fpbG7rPm4JpVVAhA_277);
11883 		}
11884 		LA37_: ;
11885 		nimZeroMem((void*)T39_, sizeof(tyArray__YcHYlgE5mhtkt9a3rnoucVg));
11886 		T39_[0] = expr;
11887 		T39_[1] = getTypeDesc__cgen_6631(m, origType, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
11888 		T39_[2] = (*field).loc.r;
11889 		T39_[3] = genTypeInfoV1__cgen_6768(m, (*field).typ, info);
11890 		T39_[4] = makeCString__msgs_50((*(*field).name).s);
11891 		T39_[5] = tmp_2;
11892 		T39_[6] = rope__cgen_6918(L);
11893 		T40_ = NIM_NIL;
11894 		T40_ = percent___cgen_7026(T39_, 7);
11895 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T40_);
11896 		nimZeroMem((void*)T41_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
11897 		T41_[0] = tmp_2;
11898 		T42_ = plus___int495056_794(L, IL64(1));
11899 		T41_[1] = rope__cgen_6918(T42_);
11900 		T43_ = NIM_NIL;
11901 		T43_ = percent___cgen_6927(T41_, 2);
11902 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T43_);
11903 		{
11904 			NI i_3;
11905 			NI colontmp__2;
11906 			NI i_4;
11907 			i_3 = (NI)0;
11908 			colontmp__2 = (NI)0;
11909 			colontmp__2 = len__ast_3198(n);
11910 			i_4 = ((NI) 1);
11911 			{
11912 				while (1) {
11913 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b;
11914 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp2_2;
11915 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T47_;
11916 					if (!(i_4 < colontmp__2)) goto LA46;
11917 					i_3 = i_4;
11918 					b = (*n)._kind_6.sons->data[i_3];
11919 					tmp2_2 = getNimNode__cgen_6772(m);
11920 					T47_ = NIM_NIL;
11921 					T47_ = lastSon__ast_4832(b);
11922 					genObjectFields__cgen_6951(m, typ, origType, T47_, tmp2_2, info);
11923 					switch ((*b).kind) {
11924 					case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85):
11925 					{
11926 						{
11927 							NI T51_;
11928 							T51_ = (NI)0;
11929 							T51_ = len__ast_3198(b);
11930 							if (!(T51_ < ((NI) 2))) goto LA52_;
11931 							internalErrorImpl__msgs_1431((*(*m).g).config, (*b).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_280), TM__MQdRN7fpbG7rPm4JpVVAhA_281);
11932 						}
11933 						LA52_: ;
11934 						{
11935 							NI j;
11936 							NI colontmp__3;
11937 							NI T55_;
11938 							NI i_5;
11939 							j = (NI)0;
11940 							colontmp__3 = (NI)0;
11941 							T55_ = (NI)0;
11942 							T55_ = len__ast_3198(b);
11943 							colontmp__3 = (NI)(T55_ - ((NI) 1));
11944 							i_5 = ((NI) 0);
11945 							{
11946 								while (1) {
11947 									if (!(i_5 < colontmp__3)) goto LA57;
11948 									j = i_5;
11949 									{
11950 										NI x;
11951 										tyObject_Int128__9a9axPfb75jdWY25AamJewkA T62_;
11952 										NI y;
11953 										tyObject_Int128__9a9axPfb75jdWY25AamJewkA T63_;
11954 										if (!((*(*b)._kind_6.sons->data[j]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA60_;
11955 										T62_ = getOrdValue__types_161((*(*b)._kind_6.sons->data[j])._kind_6.sons->data[((NI) 0)], Max__int495056_27);
11956 										x = toInt__int495056_170(T62_);
11957 										T63_ = getOrdValue__types_161((*(*b)._kind_6.sons->data[j])._kind_6.sons->data[((NI) 1)], Max__int495056_27);
11958 										y = toInt__int495056_170(T63_);
11959 										{
11960 											while (1) {
11961 												tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T66_;
11962 												tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T67_;
11963 												if (!(x <= y)) goto LA65;
11964 												nimZeroMem((void*)T66_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
11965 												T66_[0] = tmp_2;
11966 												T66_[1] = rope__ropes_115(((NI64) (x)));
11967 												T66_[2] = tmp2_2;
11968 												T67_ = NIM_NIL;
11969 												T67_ = percent___cgen_6981(T66_, 3);
11970 												add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T67_);
11971 												x += ((NI) 1);
11972 											} LA65: ;
11973 										}
11974 									}
11975 									goto LA58_;
11976 									LA60_: ;
11977 									{
11978 										tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T69_;
11979 										tyObject_Int128__9a9axPfb75jdWY25AamJewkA T70_;
11980 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
11981 										nimZeroMem((void*)T69_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
11982 										T69_[0] = tmp_2;
11983 										T70_ = getOrdValue__types_161((*b)._kind_6.sons->data[j], Max__int495056_27);
11984 										T69_[1] = rope__cgen_6918(T70_);
11985 										T69_[2] = tmp2_2;
11986 										T71_ = NIM_NIL;
11987 										T71_ = percent___cgen_6981(T69_, 3);
11988 										add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T71_);
11989 									}
11990 									LA58_: ;
11991 									i_5 += ((NI) 1);
11992 								} LA57: ;
11993 							}
11994 						}
11995 					}
11996 					break;
11997 					case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
11998 					{
11999 						tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T73_;
12000 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T74_;
12001 						nimZeroMem((void*)T73_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
12002 						T73_[0] = tmp_2;
12003 						T73_[1] = rope__cgen_6918(L);
12004 						T73_[2] = tmp2_2;
12005 						T74_ = NIM_NIL;
12006 						T74_ = percent___cgen_6981(T73_, 3);
12007 						add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T74_);
12008 					}
12009 					break;
12010 					default:
12011 					{
12012 						internalErrorImpl__msgs_1431((*(*m).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_282), TM__MQdRN7fpbG7rPm4JpVVAhA_283);
12013 					}
12014 					break;
12015 					}
12016 					i_4 += ((NI) 1);
12017 				} LA46: ;
12018 			}
12019 		}
12020 	}
12021 	break;
12022 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
12023 	{
12024 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field_2;
12025 		field_2 = (*n)._kind_4.sym;
12026 		{
12027 			NIM_BOOL T79_;
12028 			T79_ = (NIM_BOOL)0;
12029 			T79_ = isEmptyType__ast_4779((*field_2).typ);
12030 			if (!T79_) goto LA80_;
12031 			goto BeforeRet_;
12032 		}
12033 		LA80_: ;
12034 		{
12035 			tyArray__duFhZXIIlrbrM62cWjNekg T95_;
12036 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T96_;
12037 			if (!((*field_2)._kind_2.bitsize == ((NI) 0))) goto LA84_;
12038 			{
12039 				if (!((*field_2).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA88_;
12040 				fillObjectFields__cgen_3777(m, typ);
12041 			}
12042 			LA88_: ;
12043 			{
12044 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T92_;
12045 				T92_ = NIM_NIL;
12046 				T92_ = t__cgen_79((*field_2).loc);
12047 				if (!(T92_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA93_;
12048 				internalErrorImpl__msgs_1431((*(*m).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_276), TM__MQdRN7fpbG7rPm4JpVVAhA_284);
12049 			}
12050 			LA93_: ;
12051 			nimZeroMem((void*)T95_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
12052 			T95_[0] = expr;
12053 			T95_[1] = getTypeDesc__cgen_6631(m, origType, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
12054 			T95_[2] = (*field_2).loc.r;
12055 			T95_[3] = genTypeInfoV1__cgen_6768(m, (*field_2).typ, info);
12056 			T95_[4] = makeCString__msgs_50((*(*field_2).name).s);
12057 			T96_ = NIM_NIL;
12058 			T96_ = percent___cgen_7097(T95_, 5);
12059 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T96_);
12060 		}
12061 		LA84_: ;
12062 	}
12063 	break;
12064 	default:
12065 	{
12066 		internalErrorImpl__msgs_1431((*(*m).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_276), TM__MQdRN7fpbG7rPm4JpVVAhA_286);
12067 	}
12068 	break;
12069 	}
12070 	}BeforeRet_: ;
12071 }
N_NIMCALL(void,genObjectInfo__cgen_7111)12072 N_LIB_PRIVATE N_NIMCALL(void, genObjectInfo__cgen_7111)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
12073 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
12074 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T20_;
12075 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
12076 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
12077 	{
12078 		if (!((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17))) goto LA3_;
12079 		{
12080 			NIM_BOOL T7_;
12081 			NimStringDesc* T11_;
12082 			NimStringDesc* T12_;
12083 			T7_ = (NIM_BOOL)0;
12084 			T7_ = !(((*typ).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
12085 			if (!(T7_)) goto LA8_;
12086 			T7_ = ((1040 & (*(*typ).sym).flags) == 16);
12087 			LA8_: ;
12088 			if (!T7_) goto LA9_;
12089 			T11_ = NIM_NIL;
12090 			T12_ = NIM_NIL;
12091 			T12_ = typeToString__types_50(typ, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
12092 			T11_ = rawNewString((T12_ ? T12_->Sup.len : 0) + 51);
12093 appendString(T11_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_125));
12094 appendString(T11_, T12_);
12095 			liMessage__msgs_1118((*(*m).g).config, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T11_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_271, NIM_FALSE);
12096 		}
12097 		LA9_: ;
12098 		genTypeInfoAux__cgen_6853(m, typ, origType, name, info);
12099 	}
12100 	goto LA1_;
12101 	LA3_: ;
12102 	{
12103 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
12104 		T14_ = NIM_NIL;
12105 		T14_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_153));
12106 		genTypeInfoAuxBase__cgen_6788(m, typ, origType, name, T14_, info);
12107 	}
12108 	LA1_: ;
12109 	tmp = getNimNode__cgen_6772(m);
12110 	{
12111 		NIM_BOOL T17_;
12112 		T17_ = (NIM_BOOL)0;
12113 		T17_ = isImportedType__cgen_1283(typ);
12114 		if (!!(T17_)) goto LA18_;
12115 		genObjectFields__cgen_6951(m, typ, origType, (*typ).n, tmp, info);
12116 	}
12117 	LA18_: ;
12118 	nimZeroMem((void*)T20_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
12119 	T20_[0] = tiNameForHcr__cgen_6784(m, name);
12120 	T20_[1] = tmp;
12121 	T21_ = NIM_NIL;
12122 	T21_ = percent___cgen_7134(T20_, 2);
12123 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T21_);
12124 	t = (*typ).sons->data[((NI) 0)];
12125 	{
12126 		while (1) {
12127 			if (!!((t == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA23;
12128 			t = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_112);
12129 			(*t).flags |= ((NU64)1)<<((((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 5)) & 63);
12130 			t = (*t).sons->data[((NI) 0)];
12131 		} LA23: ;
12132 	}
12133 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,openArrayToTuple__cgen_9713)12134 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, openArrayToTuple__cgen_9713)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
12135 	tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
12136 	tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T1_;
12137 	tyObject_TType__facALICuu8zUj0hjvbTLFg* p;
12138 	tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T2_;
12139 	tyObject_TType__facALICuu8zUj0hjvbTLFg* a;
12140 	tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T3_;
12141 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T4_;
12142 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
12143 	result = NIM_NIL;
12144 	T1_ = nextTypeId__ast_3151((*m).Sup.idgen);
12145 	result = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18), T1_, (*t).owner);
12146 	T2_ = nextTypeId__ast_3151((*m).Sup.idgen);
12147 	p = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21), T2_, (*t).owner);
12148 	T3_ = nextTypeId__ast_3151((*m).Sup.idgen);
12149 	a = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 49), T3_, (*t).owner);
12150 	T4_ = NIM_NIL;
12151 	T4_ = lastSon__ast_3743(t);
12152 	add__concepts_23(a, T4_);
12153 	add__concepts_23(p, a);
12154 	add__concepts_23(result, p);
12155 	T5_ = NIM_NIL;
12156 	T5_ = getSysType__magicsys_60((*(*m).g).graph, (*(*t).owner).info, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
12157 	add__concepts_23(result, T5_);
12158 	return result;
12159 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7779)12160 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7779)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
12161 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
12162 	result = NIM_NIL;
12163 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_288), args, argsLen_0);
12164 	return result;
12165 }
N_NIMCALL(void,genDeepCopyProc__cgen_7775)12166 N_LIB_PRIVATE N_NIMCALL(void, genDeepCopyProc__cgen_7775)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result) {
12167 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T1_;
12168 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
12169 	genProc__cgen_411(m, s);
12170 	nimZeroMem((void*)T1_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
12171 	T1_[0] = result;
12172 	T1_[1] = (*s).loc.r;
12173 	T2_ = NIM_NIL;
12174 	T2_ = percent___cgen_7779(T1_, 2);
12175 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T2_);
12176 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_10272)12177 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_10272)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
12178 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
12179 	result = NIM_NIL;
12180 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_289), args, argsLen_0);
12181 	return result;
12182 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genTypeInfoV1__cgen_6768)12183 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTypeInfoV1__cgen_6768)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
12184 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
12185 	tyObject_TType__facALICuu8zUj0hjvbTLFg* origType;
12186 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t_2;
12187 	NimStringDesc* prefixTI;
12188 	tyArray__qtqsWM5aXmcpMIVmvq3kAA sig;
12189 	tyTuple__xfZjiVhSEwIz5DDkzuPwog marker;
12190 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T23_;
12191 	NimStringDesc* T24_;
12192 	NimStringDesc* T25_;
12193 	NI32 old;
12194 	NimStringDesc* T26_;
12195 	NI32 owner;
12196 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T36_;
12197 	tyTuple__xfZjiVhSEwIz5DDkzuPwog T50_;
12198 	NimStringDesc* T51_;
12199 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* op;
12200 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T117_;
12201 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T118_;
12202 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T119_;
12203 {	result = NIM_NIL;
12204 	origType = t;
12205 	t_2 = skipTypes__ast_3735(origType, TM__MQdRN7fpbG7rPm4JpVVAhA_133);
12206 	{
12207 		NIM_BOOL T3_;
12208 		T3_ = (NIM_BOOL)0;
12209 		T3_ = hcrOn__cgen_42(m);
12210 		if (!T3_) goto LA4_;
12211 		prefixTI = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
12212 	}
12213 	goto LA1_;
12214 	LA4_: ;
12215 	{
12216 		prefixTI = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_102));
12217 	}
12218 	LA1_: ;
12219 	nimZeroMem((void*)sig, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
12220 	hashType__sighashes_462(origType, 2, sig);
12221 	result = getOrDefault__cgen_1423((*m).typeInfoMarker, sig);
12222 	{
12223 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
12224 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
12225 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
12226 		if (!!((result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA9_;
12227 		T11_ = NIM_NIL;
12228 		T11_ = rope__ropes_109(prefixTI);
12229 		T12_ = NIM_NIL;
12230 		T12_ = amp___ropes_128(T11_, result);
12231 		T13_ = NIM_NIL;
12232 		T13_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
12233 		result = amp___ropes_128(T12_, T13_);
12234 		goto BeforeRet_;
12235 	}
12236 	LA9_: ;
12237 	nimZeroMem((void*)(&marker), sizeof(tyTuple__xfZjiVhSEwIz5DDkzuPwog));
12238 	getOrDefault__cgen_8082((*(*m).g).typeInfoMarker, sig, (&marker));
12239 	{
12240 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
12241 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
12242 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
12243 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
12244 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
12245 		if (!!((marker.Field0 == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA16_;
12246 		T18_ = NIM_NIL;
12247 		T18_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134));
12248 		(void)(T18_);
12249 		T19_ = NIM_NIL;
12250 		T19_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_135));
12251 		(void)(T19_);
12252 		declareNimType__cgen_7784(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134), marker.Field0, ((NI) (marker.Field1)));
12253 		X5BX5Deq___cgen_1867((&(*m).typeInfoMarker), sig, marker.Field0);
12254 		T20_ = NIM_NIL;
12255 		T20_ = rope__ropes_109(prefixTI);
12256 		T21_ = NIM_NIL;
12257 		T21_ = amp___ropes_128(T20_, marker.Field0);
12258 		T22_ = NIM_NIL;
12259 		T22_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
12260 		result = amp___ropes_128(T21_, T22_);
12261 		goto BeforeRet_;
12262 	}
12263 	LA16_: ;
12264 	nimZeroMem((void*)T23_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
12265 	T24_ = NIM_NIL;
12266 	T24_ = typeToC__cgen_9738(t_2);
12267 	T23_[0] = rope__ropes_109(T24_);
12268 	T25_ = NIM_NIL;
12269 	T25_ = dollar___modulegraphs_8947(sig);
12270 	T23_[1] = rope__ropes_109(T25_);
12271 	result = percent___cgen_9961(T23_, 2);
12272 	X5BX5Deq___cgen_1867((&(*m).typeInfoMarker), sig, result);
12273 	T26_ = NIM_NIL;
12274 	T26_ = dollar___ropes_250(result);
12275 	old = getOrDefault__cgen_10078((*(*(*m).g).graph).emittedTypeInfo, T26_);
12276 	{
12277 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
12278 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
12279 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
12280 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
12281 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
12282 		if (!!((old == ((NI32) 0)))) goto LA29_;
12283 		T31_ = NIM_NIL;
12284 		T31_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134));
12285 		(void)(T31_);
12286 		T32_ = NIM_NIL;
12287 		T32_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_135));
12288 		(void)(T32_);
12289 		declareNimType__cgen_7784(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134), result, ((NI) (old)));
12290 		T33_ = NIM_NIL;
12291 		T33_ = rope__ropes_109(prefixTI);
12292 		T34_ = NIM_NIL;
12293 		T34_ = amp___ropes_128(T33_, result);
12294 		T35_ = NIM_NIL;
12295 		T35_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
12296 		result = amp___ropes_128(T34_, T35_);
12297 		goto BeforeRet_;
12298 	}
12299 	LA29_: ;
12300 	T36_ = NIM_NIL;
12301 	T36_ = skipTypes__ast_3735(t_2, TM__MQdRN7fpbG7rPm4JpVVAhA_124);
12302 	owner = (*T36_).Sup.itemId.module;
12303 	{
12304 		NIM_BOOL T39_;
12305 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
12306 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
12307 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
12308 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
12309 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
12310 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
12311 		T39_ = (NIM_BOOL)0;
12312 		T39_ = !((((NI) (owner)) == (*(*m).module).position));
12313 		if (!(T39_)) goto LA40_;
12314 		T39_ = moduleOpenForCodegen__modulegraphs_9377((*(*m).g).graph, owner);
12315 		LA40_: ;
12316 		if (!T39_) goto LA41_;
12317 		T43_ = NIM_NIL;
12318 		T43_ = genTypeInfoV1__cgen_6768((*(*m).g).modules->data[owner], origType, info);
12319 		(void)(T43_);
12320 		T44_ = NIM_NIL;
12321 		T44_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134));
12322 		(void)(T44_);
12323 		T45_ = NIM_NIL;
12324 		T45_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_135));
12325 		(void)(T45_);
12326 		declareNimType__cgen_7784(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134), result, ((NI) (owner)));
12327 		T46_ = NIM_NIL;
12328 		T46_ = rope__ropes_109(prefixTI);
12329 		T47_ = NIM_NIL;
12330 		T47_ = amp___ropes_128(T46_, result);
12331 		T48_ = NIM_NIL;
12332 		T48_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
12333 		result = amp___ropes_128(T47_, T48_);
12334 		goto BeforeRet_;
12335 	}
12336 	goto LA37_;
12337 	LA41_: ;
12338 	{
12339 		owner = ((NI32) ((*(*m).module).position));
12340 	}
12341 	LA37_: ;
12342 	nimZeroMem((void*)(&T50_), sizeof(tyTuple__xfZjiVhSEwIz5DDkzuPwog));
12343 	T50_.Field0 = result;
12344 	T50_.Field1 = owner;
12345 	X5BX5Deq___cgen_8556((&(*(*m).g).typeInfoMarker), sig, T50_);
12346 	T51_ = NIM_NIL;
12347 	T51_ = dollar___ropes_250(result);
12348 	rememberEmittedTypeInfo__modulegraphs_9389((*(*m).g).graph, owner, T51_);
12349 	switch ((*t_2).kind) {
12350 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 3):
12351 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63):
12352 	{
12353 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_137));
12354 	}
12355 	break;
12356 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26):
12357 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
12358 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
12359 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
12360 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
12361 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
12362 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23):
12363 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47):
12364 	{
12365 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
12366 		T54_ = NIM_NIL;
12367 		T54_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_137));
12368 		genTypeInfoAuxBase__cgen_6788(m, t_2, t_2, result, T54_, info);
12369 	}
12370 	break;
12371 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60):
12372 	{
12373 		{
12374 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T60_;
12375 			if (!!(((*t_2).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA58_;
12376 			T60_ = NIM_NIL;
12377 			T60_ = lastSon__ast_3743(t_2);
12378 			result = genTypeInfoV1__cgen_6768(m, T60_, info);
12379 		}
12380 		goto LA56_;
12381 		LA58_: ;
12382 		{
12383 			NimStringDesc* T62_;
12384 			T62_ = NIM_NIL;
12385 			T62_ = rawNewString((reprEnum((NI)(*t_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*t_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 15);
12386 appendString(T62_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_150));
12387 appendString(T62_, reprEnum((NI)(*t_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
12388 appendChar(T62_, 41);
12389 			internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, T62_, TM__MQdRN7fpbG7rPm4JpVVAhA_151);
12390 		}
12391 		LA56_: ;
12392 	}
12393 	break;
12394 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 52) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 53):
12395 	{
12396 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T68_;
12397 		{
12398 			NimStringDesc* argX60gensym799_;
12399 			if (!!((((*t_2).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 10))&63U)))!=0))) goto LA66_;
12400 			argX60gensym799_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_152);
12401 			internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, argX60gensym799_, TM__MQdRN7fpbG7rPm4JpVVAhA_152);
12402 		}
12403 		LA66_: ;
12404 		T68_ = NIM_NIL;
12405 		T68_ = lastSon__ast_3743(t_2);
12406 		result = genTypeInfoV1__cgen_6768(m, T68_, info);
12407 		goto BeforeRet_;
12408 	}
12409 	break;
12410 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25):
12411 	{
12412 		{
12413 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T74_;
12414 			if (!!(((*t_2).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9)))) goto LA72_;
12415 			T74_ = NIM_NIL;
12416 			T74_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_137));
12417 			genTypeInfoAuxBase__cgen_6788(m, t_2, t_2, result, T74_, info);
12418 		}
12419 		goto LA70_;
12420 		LA72_: ;
12421 		{
12422 			tyObject_TType__facALICuu8zUj0hjvbTLFg* x;
12423 			x = fakeClosureType__cgen_7326(m, (*t_2).owner);
12424 			genTupleInfo__cgen_7150(m, x, x, result, info);
12425 		}
12426 		LA70_: ;
12427 	}
12428 	break;
12429 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
12430 	{
12431 		genTypeInfoAux__cgen_6853(m, t_2, t_2, result, info);
12432 		{
12433 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* markerProc;
12434 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T81_;
12435 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T82_;
12436 			if (!((1856 &((NU16)1<<((NU)((*(*(*m).g).config).selectedGC)&15U)))!=0)) goto LA79_;
12437 			markerProc = genTraverseProc__cgen_7667(m, origType, sig);
12438 			nimZeroMem((void*)T81_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
12439 			T81_[0] = tiNameForHcr__cgen_6784(m, result);
12440 			T81_[1] = markerProc;
12441 			T82_ = NIM_NIL;
12442 			T82_ = percent___cgen_10232(T81_, 2);
12443 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T82_);
12444 		}
12445 		LA79_: ;
12446 	}
12447 	break;
12448 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
12449 	{
12450 		genTypeInfoAux__cgen_6853(m, t_2, t_2, result, info);
12451 		{
12452 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* markerProc_2;
12453 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T88_;
12454 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T89_;
12455 			if (!((1856 &((NU16)1<<((NU)((*(*(*m).g).config).selectedGC)&15U)))!=0)) goto LA86_;
12456 			markerProc_2 = genTraverseProc__cgen_7667(m, origType, sig);
12457 			nimZeroMem((void*)T88_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
12458 			T88_[0] = tiNameForHcr__cgen_6784(m, result);
12459 			T88_[1] = markerProc_2;
12460 			T89_ = NIM_NIL;
12461 			T89_ = percent___cgen_10232(T88_, 2);
12462 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T89_);
12463 		}
12464 		LA86_: ;
12465 	}
12466 	break;
12467 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
12468 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20):
12469 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 49):
12470 	{
12471 		genTypeInfoAux__cgen_6853(m, t_2, t_2, result, info);
12472 	}
12473 	break;
12474 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
12475 	{
12476 		genArrayInfo__cgen_7320(m, t_2, result, info);
12477 	}
12478 	break;
12479 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
12480 	{
12481 		genSetInfo__cgen_7301(m, t_2, result, info);
12482 	}
12483 	break;
12484 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
12485 	{
12486 		genEnumInfo__cgen_7205(m, t_2, result, info);
12487 	}
12488 	break;
12489 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
12490 	{
12491 		genObjectInfo__cgen_7111(m, t_2, origType, result, info);
12492 	}
12493 	break;
12494 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
12495 	{
12496 		genTupleInfo__cgen_7150(m, t_2, origType, result, info);
12497 	}
12498 	break;
12499 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
12500 	{
12501 		tyObject_TType__facALICuu8zUj0hjvbTLFg* x_2;
12502 		x_2 = openArrayToTuple__cgen_9713(m, t_2);
12503 		genTupleInfo__cgen_7150(m, x_2, origType, result, info);
12504 	}
12505 	break;
12506 	default:
12507 	{
12508 		NimStringDesc* T98_;
12509 		T98_ = NIM_NIL;
12510 		T98_ = rawNewString((reprEnum((NI)(*t_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*t_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 15);
12511 appendString(T98_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_150));
12512 appendString(T98_, reprEnum((NI)(*t_2).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
12513 appendChar(T98_, 41);
12514 		internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, T98_, TM__MQdRN7fpbG7rPm4JpVVAhA_287);
12515 	}
12516 	break;
12517 	}
12518 	op = getAttachedOp__modulegraphs_4011((*(*m).g).graph, t_2, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 4));
12519 	{
12520 		if (!(op == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA101_;
12521 		op = getAttachedOp__modulegraphs_4011((*(*m).g).graph, origType, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 4));
12522 	}
12523 	LA101_: ;
12524 	{
12525 		if (!!((op == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA105_;
12526 		genDeepCopyProc__cgen_7775(m, op, result);
12527 	}
12528 	LA105_: ;
12529 	{
12530 		NIM_BOOL T109_;
12531 		NIM_BOOL T110_;
12532 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* v2info;
12533 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T115_;
12534 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T116_;
12535 		T109_ = (NIM_BOOL)0;
12536 		T110_ = (NIM_BOOL)0;
12537 		T110_ = (((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0);
12538 		if (!(T110_)) goto LA111_;
12539 		T110_ = ((*t_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
12540 		LA111_: ;
12541 		T109_ = T110_;
12542 		if (!(T109_)) goto LA112_;
12543 		T109_ = !((((*(*t_2).sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0));
12544 		LA112_: ;
12545 		if (!T109_) goto LA113_;
12546 		v2info = genTypeInfoV2__cgen_7924(m, origType, info);
12547 		nimZeroMem((void*)T115_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
12548 		T115_[0] = v2info;
12549 		T115_[1] = result;
12550 		T116_ = NIM_NIL;
12551 		T116_ = percent___cgen_10272(T115_, 2);
12552 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T116_);
12553 	}
12554 	LA113_: ;
12555 	T117_ = NIM_NIL;
12556 	T117_ = rope__ropes_109(prefixTI);
12557 	T118_ = NIM_NIL;
12558 	T118_ = amp___ropes_128(T117_, result);
12559 	T119_ = NIM_NIL;
12560 	T119_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
12561 	result = amp___ropes_128(T118_, T119_);
12562 	}BeforeRet_: ;
12563 	return result;
12564 }
N_NIMCALL(void,genTypeInfoV2Impl__cgen_7872)12565 N_LIB_PRIVATE N_NIMCALL(void, genTypeInfoV2Impl__cgen_7872)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TType__facALICuu8zUj0hjvbTLFg* origType, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
12566 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* typeName_1;
12567 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
12568 	tyArray__JiWwrsTRC6xqNlGcBthSVA T15_;
12569 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
12570 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* destroyImpl;
12571 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* traceImpl;
12572 	NI flags;
12573 	tyArray__dNfZYyzVYdaWfURv4pxodA T22_;
12574 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
12575 	typeName_1 = NIM_NIL;
12576 	{
12577 		if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 13))) goto LA3_;
12578 		{
12579 			NIM_BOOL T7_;
12580 			NimStringDesc* T11_;
12581 			NimStringDesc* T12_;
12582 			T7_ = (NIM_BOOL)0;
12583 			T7_ = !(((*t).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
12584 			if (!(T7_)) goto LA8_;
12585 			T7_ = ((1040 & (*(*t).sym).flags) == 16);
12586 			LA8_: ;
12587 			if (!T7_) goto LA9_;
12588 			T11_ = NIM_NIL;
12589 			T12_ = NIM_NIL;
12590 			T12_ = typeToString__types_50(t, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
12591 			T11_ = rawNewString((T12_ ? T12_->Sup.len : 0) + 51);
12592 appendString(T11_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_125));
12593 appendString(T11_, T12_);
12594 			liMessage__msgs_1118((*(*m).g).config, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T11_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_126, NIM_FALSE);
12595 		}
12596 		LA9_: ;
12597 		typeName_1 = genTypeInfo2Name__cgen_7805(m, t);
12598 	}
12599 	goto LA1_;
12600 	LA3_: ;
12601 	{
12602 		typeName_1 = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_99));
12603 	}
12604 	LA1_: ;
12605 	T14_ = NIM_NIL;
12606 	T14_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_115));
12607 	(void)(T14_);
12608 	nimZeroMem((void*)T15_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
12609 	T15_[0] = name;
12610 	T16_ = NIM_NIL;
12611 	T16_ = percent___cgen_7895(T15_, 1);
12612 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T16_);
12613 	destroyImpl = genHook__cgen_7853(m, t, info, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 0));
12614 	traceImpl = genHook__cgen_7853(m, t, info, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 3));
12615 	flags = ((NI) 0);
12616 	{
12617 		NIM_BOOL T19_;
12618 		T19_ = (NIM_BOOL)0;
12619 		T19_ = canFormAcycle__types_762(t);
12620 		if (!!(T19_)) goto LA20_;
12621 		flags = (NI)(flags | ((NI) 1));
12622 	}
12623 	LA20_: ;
12624 	nimZeroMem((void*)T22_, sizeof(tyArray__dNfZYyzVYdaWfURv4pxodA));
12625 	T22_[0] = name;
12626 	T22_[1] = destroyImpl;
12627 	T22_[2] = getTypeDesc__cgen_6631(m, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
12628 	T22_[3] = typeName_1;
12629 	T22_[4] = traceImpl;
12630 	T22_[5] = rope__ropes_115(((NI64) (flags)));
12631 	T23_ = NIM_NIL;
12632 	T23_ = percent___cgen_7903(T22_, 6);
12633 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T23_);
12634 	{
12635 		NIM_BOOL T26_;
12636 		NIM_BOOL T27_;
12637 		NIM_BOOL T28_;
12638 		NI T30_;
12639 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
12640 		T26_ = (NIM_BOOL)0;
12641 		T27_ = (NIM_BOOL)0;
12642 		T28_ = (NIM_BOOL)0;
12643 		T28_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
12644 		if (!(T28_)) goto LA29_;
12645 		T30_ = (NI)0;
12646 		T30_ = len__ast_4002(t);
12647 		T28_ = (((NI) 0) < T30_);
12648 		LA29_: ;
12649 		T27_ = T28_;
12650 		if (!(T27_)) goto LA31_;
12651 		T27_ = !(((*t).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
12652 		LA31_: ;
12653 		T26_ = T27_;
12654 		if (!(T26_)) goto LA32_;
12655 		T26_ = (((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 51))&63U)))!=0);
12656 		LA32_: ;
12657 		if (!T26_) goto LA33_;
12658 		T35_ = NIM_NIL;
12659 		T35_ = genTypeInfoV1__cgen_6768(m, t, info);
12660 		(void)(T35_);
12661 	}
12662 	LA33_: ;
12663 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genTypeInfoV2__cgen_7924)12664 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTypeInfoV2__cgen_7924)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
12665 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
12666 	tyObject_TType__facALICuu8zUj0hjvbTLFg* origType;
12667 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t_2;
12668 	NimStringDesc* prefixTI;
12669 	tyArray__qtqsWM5aXmcpMIVmvq3kAA sig;
12670 	tyTuple__xfZjiVhSEwIz5DDkzuPwog marker;
12671 	tyArray__JiWwrsTRC6xqNlGcBthSVA T22_;
12672 	NimStringDesc* T23_;
12673 	NI32 owner;
12674 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T24_;
12675 	tyTuple__xfZjiVhSEwIz5DDkzuPwog T36_;
12676 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
12677 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
12678 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
12679 {	result = NIM_NIL;
12680 	origType = t;
12681 	t_2 = skipTypes__ast_3735(origType, TM__MQdRN7fpbG7rPm4JpVVAhA_114);
12682 	{
12683 		NIM_BOOL T3_;
12684 		T3_ = (NIM_BOOL)0;
12685 		T3_ = hcrOn__cgen_42(m);
12686 		if (!T3_) goto LA4_;
12687 		prefixTI = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
12688 	}
12689 	goto LA1_;
12690 	LA4_: ;
12691 	{
12692 		prefixTI = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_102));
12693 	}
12694 	LA1_: ;
12695 	nimZeroMem((void*)sig, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
12696 	hashType__sighashes_462(origType, 2, sig);
12697 	result = getOrDefault__cgen_1423((*m).typeInfoMarkerV2, sig);
12698 	{
12699 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
12700 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
12701 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
12702 		if (!!((result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA9_;
12703 		T11_ = NIM_NIL;
12704 		T11_ = rope__ropes_109(prefixTI);
12705 		T12_ = NIM_NIL;
12706 		T12_ = amp___ropes_128(T11_, result);
12707 		T13_ = NIM_NIL;
12708 		T13_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
12709 		result = amp___ropes_128(T12_, T13_);
12710 		goto BeforeRet_;
12711 	}
12712 	LA9_: ;
12713 	nimZeroMem((void*)(&marker), sizeof(tyTuple__xfZjiVhSEwIz5DDkzuPwog));
12714 	getOrDefault__cgen_8082((*(*m).g).typeInfoMarkerV2, sig, (&marker));
12715 	{
12716 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
12717 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
12718 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
12719 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
12720 		if (!!((marker.Field0 == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA16_;
12721 		T18_ = NIM_NIL;
12722 		T18_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_115));
12723 		(void)(T18_);
12724 		declareNimType__cgen_7784(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_115), marker.Field0, ((NI) (marker.Field1)));
12725 		X5BX5Deq___cgen_1867((&(*m).typeInfoMarkerV2), sig, marker.Field0);
12726 		T19_ = NIM_NIL;
12727 		T19_ = rope__ropes_109(prefixTI);
12728 		T20_ = NIM_NIL;
12729 		T20_ = amp___ropes_128(T19_, marker.Field0);
12730 		T21_ = NIM_NIL;
12731 		T21_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
12732 		result = amp___ropes_128(T20_, T21_);
12733 		goto BeforeRet_;
12734 	}
12735 	LA16_: ;
12736 	nimZeroMem((void*)T22_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
12737 	T23_ = NIM_NIL;
12738 	T23_ = dollar___modulegraphs_8947(sig);
12739 	T22_[0] = rope__ropes_109(T23_);
12740 	result = percent___cgen_8462(T22_, 1);
12741 	X5BX5Deq___cgen_1867((&(*m).typeInfoMarkerV2), sig, result);
12742 	T24_ = NIM_NIL;
12743 	T24_ = skipTypes__ast_3735(t_2, TM__MQdRN7fpbG7rPm4JpVVAhA_124);
12744 	owner = (*T24_).Sup.itemId.module;
12745 	{
12746 		NIM_BOOL T27_;
12747 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
12748 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
12749 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
12750 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
12751 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
12752 		T27_ = (NIM_BOOL)0;
12753 		T27_ = !((((NI) (owner)) == (*(*m).module).position));
12754 		if (!(T27_)) goto LA28_;
12755 		T27_ = moduleOpenForCodegen__modulegraphs_9377((*(*m).g).graph, owner);
12756 		LA28_: ;
12757 		if (!T27_) goto LA29_;
12758 		T31_ = NIM_NIL;
12759 		T31_ = genTypeInfoV2__cgen_7924((*(*m).g).modules->data[owner], origType, info);
12760 		(void)(T31_);
12761 		T32_ = NIM_NIL;
12762 		T32_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_115));
12763 		(void)(T32_);
12764 		declareNimType__cgen_7784(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_115), result, ((NI) (owner)));
12765 		T33_ = NIM_NIL;
12766 		T33_ = rope__ropes_109(prefixTI);
12767 		T34_ = NIM_NIL;
12768 		T34_ = amp___ropes_128(T33_, result);
12769 		T35_ = NIM_NIL;
12770 		T35_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
12771 		result = amp___ropes_128(T34_, T35_);
12772 		goto BeforeRet_;
12773 	}
12774 	LA29_: ;
12775 	nimZeroMem((void*)(&T36_), sizeof(tyTuple__xfZjiVhSEwIz5DDkzuPwog));
12776 	T36_.Field0 = result;
12777 	T36_.Field1 = owner;
12778 	X5BX5Deq___cgen_8556((&(*(*m).g).typeInfoMarkerV2), sig, T36_);
12779 	genTypeInfoV2Impl__cgen_7872(m, t_2, origType, result, info);
12780 	T37_ = NIM_NIL;
12781 	T37_ = rope__ropes_109(prefixTI);
12782 	T38_ = NIM_NIL;
12783 	T38_ = amp___ropes_128(T37_, result);
12784 	T39_ = NIM_NIL;
12785 	T39_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
12786 	result = amp___ropes_128(T38_, T39_);
12787 	}BeforeRet_: ;
12788 	return result;
12789 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17779)12790 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17779)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
12791 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
12792 	result = NIM_NIL;
12793 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_291), args, argsLen_0);
12794 	return result;
12795 }
N_NIMCALL(NU64,bitSetToWord__cgen_17742)12796 N_LIB_PRIVATE N_NIMCALL(NU64, bitSetToWord__cgen_17742)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* s, NI size) {
12797 	NU64 result;
12798 	result = (NU64)0;
12799 	result = 0ULL;
12800 	{
12801 		NI j;
12802 		NI i;
12803 		j = (NI)0;
12804 		i = ((NI) 0);
12805 		{
12806 			while (1) {
12807 				if (!(i < size)) goto LA3;
12808 				j = i;
12809 				{
12810 					NI T6_;
12811 					T6_ = (s ? s->Sup.len : 0);
12812 					if (!(j < T6_)) goto LA7_;
12813 					result = (NU64)(result | (NU64)((NU64)(((NU64) (s->data[j]))) << (NU64)((NI)(j * ((NI) 8)))));
12814 				}
12815 				LA7_: ;
12816 				i += ((NI) 1);
12817 			} LA3: ;
12818 		}
12819 	}
12820 	return result;
12821 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genRawSetData__cgen_17758)12822 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genRawSetData__cgen_17758)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* cs, NI size) {
12823 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
12824 	result = NIM_NIL;
12825 	{
12826 		NimStringDesc* res;
12827 		if (!(((NI) 8) < size)) goto LA3_;
12828 		res = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_294));
12829 		{
12830 			NI i;
12831 			NI i_2;
12832 			i = (NI)0;
12833 			i_2 = ((NI) 0);
12834 			{
12835 				while (1) {
12836 					if (!(i_2 < size)) goto LA7;
12837 					i = i_2;
12838 					res = resizeString(res, 2);
12839 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_295));
12840 					res = addChar(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_296)->data[(NU8)((NU8)(cs->data[i]) / (NU8)(((NU8) 16)))]);
12841 					res = addChar(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_296)->data[(NU8)((NU8)(cs->data[i]) % (NU8)(((NU8) 16)))]);
12842 					{
12843 						if (!(i < (NI)(size - ((NI) 1)))) goto LA10_;
12844 						{
12845 							if (!((NI)(i % ((NI) 8)) == ((NI) 7))) goto LA14_;
12846 							res = resizeString(res, 2);
12847 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_297));
12848 						}
12849 						goto LA12_;
12850 						LA14_: ;
12851 						{
12852 							res = resizeString(res, 2);
12853 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
12854 						}
12855 						LA12_: ;
12856 					}
12857 					goto LA8_;
12858 					LA10_: ;
12859 					{
12860 						res = resizeString(res, 2);
12861 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_298));
12862 					}
12863 					LA8_: ;
12864 					i_2 += ((NI) 1);
12865 				} LA7: ;
12866 			}
12867 		}
12868 		result = rope__ropes_109(res);
12869 	}
12870 	goto LA1_;
12871 	LA3_: ;
12872 	{
12873 		NU64 T19_;
12874 		T19_ = (NU64)0;
12875 		T19_ = bitSetToWord__cgen_17742(cs, size);
12876 		result = intLiteral__cgen_11471(((NI64) (T19_)));
12877 	}
12878 	LA1_: ;
12879 	return result;
12880 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25010)12881 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25010)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
12882 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
12883 	result = NIM_NIL;
12884 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_300), args, argsLen_0);
12885 	return result;
12886 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25216)12887 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25216)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
12888 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
12889 	result = NIM_NIL;
12890 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_310), args, argsLen_0);
12891 	return result;
12892 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getSeqPayloadType__cgen_3448)12893 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getSeqPayloadType__cgen_3448)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t) {
12894 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
12895 	tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA check;
12896 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
12897 	result = NIM_NIL;
12898 	nimZeroMem((void*)(&check), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
12899 	initIntSet__pureZcollectionsZintsets_238((&check));
12900 	T1_ = NIM_NIL;
12901 	T1_ = getTypeDescWeak__cgen_3317(m, t, (&check), ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
12902 	result = amp___ropes_140(T1_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_55));
12903 	return result;
12904 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genConstSeqV2__cgen_25106)12905 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genConstSeqV2__cgen_25106)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, NIM_BOOL isConst) {
12906 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
12907 	tyObject_TType__facALICuu8zUj0hjvbTLFg* base;
12908 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
12909 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* data;
12910 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* payload;
12911 	NimStringDesc* res;
12912 	NimStringDesc* T12_;
12913 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
12914 	NI T23_;
12915 	NI T28_;
12916 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
12917 	tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T34_;
12918 	NI T35_;
12919 	result = NIM_NIL;
12920 	T1_ = NIM_NIL;
12921 	T1_ = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
12922 	base = (*T1_).sons->data[((NI) 0)];
12923 	data = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_299));
12924 	{
12925 		NI i;
12926 		NI colontmp_;
12927 		NI i_2;
12928 		i = (NI)0;
12929 		colontmp_ = (NI)0;
12930 		colontmp_ = len__ast_3198(n);
12931 		i_2 = ((NI) 0);
12932 		{
12933 			while (1) {
12934 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
12935 				if (!(i_2 < colontmp_)) goto LA4;
12936 				i = i_2;
12937 				{
12938 					tyArray__qTjAvTvKF9anytN1At69aJMQ T9_;
12939 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
12940 					if (!(((NI) 0) < i)) goto LA7_;
12941 					nimZeroMem((void*)T9_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
12942 					T10_ = NIM_NIL;
12943 					T10_ = percent___cgen_25010(T9_, 0);
12944 					add__ropes_159(&data, T10_);
12945 				}
12946 				LA7_: ;
12947 				T11_ = NIM_NIL;
12948 				T11_ = genBracedInit__cgen_13772(p, (*n)._kind_6.sons->data[i], isConst, base);
12949 				add__ropes_159(&data, T11_);
12950 				i_2 += ((NI) 1);
12951 			} LA4: ;
12952 		}
12953 	}
12954 	add__ropes_162(&data, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
12955 	payload = getTempName__cgen_418((*p).module);
12956 	res = rawNewString(((NI) 80));
12957 	res = resizeString(res, 7);
12958 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_29));
12959 	T12_ = NIM_NIL;
12960 	{
12961 		if (!isConst) goto LA15_;
12962 		T12_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_225));
12963 	}
12964 	goto LA13_;
12965 	LA15_: ;
12966 	{
12967 		T12_ = ((NimStringDesc*) NIM_NIL);
12968 	}
12969 	LA13_: ;
12970 	cgFormatValue__cgen_145((&res), T12_);
12971 	res = resizeString(res, 9);
12972 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_302));
12973 	{
12974 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA20_;
12975 		res = resizeString(res, 1);
12976 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
12977 	}
12978 	LA20_: ;
12979 	res = resizeString(res, 10);
12980 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_303));
12981 	T22_ = NIM_NIL;
12982 	T22_ = getTypeDesc__cgen_6631((*p).module, base, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
12983 	cgFormatValue__cgen_141((&res), T22_);
12984 	res = resizeString(res, 6);
12985 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_304));
12986 	T23_ = (NI)0;
12987 	T23_ = len__ast_3198(n);
12988 	cgFormatValue__cgen_148((&res), ((NI64) (T23_)));
12989 	res = resizeString(res, 2);
12990 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_305));
12991 	{
12992 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA26_;
12993 		res = resizeString(res, 1);
12994 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
12995 	}
12996 	LA26_: ;
12997 	res = resizeString(res, 2);
12998 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_306));
12999 	cgFormatValue__cgen_141((&res), payload);
13000 	res = resizeString(res, 4);
13001 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_307));
13002 	T28_ = (NI)0;
13003 	T28_ = len__ast_3198(n);
13004 	cgFormatValue__cgen_148((&res), ((NI64) (T28_)));
13005 	res = resizeString(res, 20);
13006 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_308));
13007 	cgFormatValue__cgen_141((&res), data);
13008 	res = resizeString(res, 2);
13009 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_309));
13010 	{
13011 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA31_;
13012 		res = resizeString(res, 1);
13013 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
13014 	}
13015 	LA31_: ;
13016 	T33_ = NIM_NIL;
13017 	T33_ = rope__ropes_109(res);
13018 	add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T33_);
13019 	nimZeroMem((void*)T34_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
13020 	T35_ = (NI)0;
13021 	T35_ = len__ast_3198(n);
13022 	T34_[0] = rope__ropes_115(((NI64) (T35_)));
13023 	T34_[1] = getSeqPayloadType__cgen_3448((*p).module, t);
13024 	T34_[2] = payload;
13025 	result = percent___cgen_25216(T34_, 3);
13026 	return result;
13027 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_24991)13028 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24991)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
13029 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13030 	result = NIM_NIL;
13031 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_311), args, argsLen_0);
13032 	return result;
13033 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25101)13034 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25101)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
13035 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13036 	result = NIM_NIL;
13037 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_316), args, argsLen_0);
13038 	return result;
13039 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genConstSeq__cgen_24982)13040 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genConstSeq__cgen_24982)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, NIM_BOOL isConst) {
13041 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13042 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* data;
13043 	tyArray__JiWwrsTRC6xqNlGcBthSVA T1_;
13044 	NI T2_;
13045 	tyObject_TType__facALICuu8zUj0hjvbTLFg* base;
13046 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T3_;
13047 	NimStringDesc* res;
13048 	NimStringDesc* T19_;
13049 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
13050 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
13051 	NI T35_;
13052 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
13053 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T45_;
13054 	result = NIM_NIL;
13055 	nimZeroMem((void*)T1_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
13056 	T2_ = (NI)0;
13057 	T2_ = len__ast_3198(n);
13058 	T1_[0] = rope__ropes_115(((NI64) (T2_)));
13059 	data = percent___cgen_24991(T1_, 1);
13060 	T3_ = NIM_NIL;
13061 	T3_ = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
13062 	base = (*T3_).sons->data[((NI) 0)];
13063 	{
13064 		NI T6_;
13065 		T6_ = (NI)0;
13066 		T6_ = len__ast_3198(n);
13067 		if (!(((NI) 0) < T6_)) goto LA7_;
13068 		add__ropes_162(&data, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_312));
13069 		{
13070 			NI i;
13071 			NI colontmp_;
13072 			NI i_2;
13073 			i = (NI)0;
13074 			colontmp_ = (NI)0;
13075 			colontmp_ = len__ast_3198(n);
13076 			i_2 = ((NI) 0);
13077 			{
13078 				while (1) {
13079 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
13080 					if (!(i_2 < colontmp_)) goto LA11;
13081 					i = i_2;
13082 					{
13083 						tyArray__qTjAvTvKF9anytN1At69aJMQ T16_;
13084 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
13085 						if (!(((NI) 0) < i)) goto LA14_;
13086 						nimZeroMem((void*)T16_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
13087 						T17_ = NIM_NIL;
13088 						T17_ = percent___cgen_25010(T16_, 0);
13089 						add__ropes_159(&data, T17_);
13090 					}
13091 					LA14_: ;
13092 					T18_ = NIM_NIL;
13093 					T18_ = genBracedInit__cgen_13772(p, (*n)._kind_6.sons->data[i], isConst, base);
13094 					add__ropes_159(&data, T18_);
13095 					i_2 += ((NI) 1);
13096 				} LA11: ;
13097 			}
13098 		}
13099 		add__ropes_162(&data, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
13100 	}
13101 	LA7_: ;
13102 	add__ropes_162(&data, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
13103 	result = getTempName__cgen_418((*p).module);
13104 	res = rawNewString(((NI) 80));
13105 	res = resizeString(res, 7);
13106 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_29));
13107 	T19_ = NIM_NIL;
13108 	{
13109 		if (!isConst) goto LA22_;
13110 		T19_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_313));
13111 	}
13112 	goto LA20_;
13113 	LA22_: ;
13114 	{
13115 		T19_ = ((NimStringDesc*) NIM_NIL);
13116 	}
13117 	LA20_: ;
13118 	cgFormatValue__cgen_145((&res), T19_);
13119 	res = resizeString(res, 9);
13120 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_302));
13121 	{
13122 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA27_;
13123 		res = resizeString(res, 1);
13124 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
13125 	}
13126 	LA27_: ;
13127 	res = resizeString(res, 2);
13128 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_314));
13129 	T29_ = NIM_NIL;
13130 	T29_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_222));
13131 	cgFormatValue__cgen_141((&res), T29_);
13132 	res = resizeString(res, 5);
13133 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_315));
13134 	{
13135 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA32_;
13136 		res = resizeString(res, 1);
13137 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
13138 	}
13139 	LA32_: ;
13140 	res = resizeString(res, 2);
13141 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_314));
13142 	T34_ = NIM_NIL;
13143 	T34_ = getTypeDesc__cgen_6631((*p).module, base, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
13144 	cgFormatValue__cgen_141((&res), T34_);
13145 	res = resizeString(res, 6);
13146 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_304));
13147 	T35_ = (NI)0;
13148 	T35_ = len__ast_3198(n);
13149 	cgFormatValue__cgen_148((&res), ((NI64) (T35_)));
13150 	res = resizeString(res, 2);
13151 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_305));
13152 	{
13153 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA38_;
13154 		res = resizeString(res, 1);
13155 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
13156 	}
13157 	LA38_: ;
13158 	res = resizeString(res, 2);
13159 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_306));
13160 	cgFormatValue__cgen_141((&res), result);
13161 	res = resizeString(res, 3);
13162 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
13163 	cgFormatValue__cgen_141((&res), data);
13164 	res = resizeString(res, 1);
13165 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
13166 	{
13167 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA42_;
13168 		res = resizeString(res, 1);
13169 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
13170 	}
13171 	LA42_: ;
13172 	T44_ = NIM_NIL;
13173 	T44_ = rope__ropes_109(res);
13174 	add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T44_);
13175 	nimZeroMem((void*)T45_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
13176 	T45_[0] = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
13177 	T45_[1] = result;
13178 	result = percent___cgen_25101(T45_, 2);
13179 	return result;
13180 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25261)13181 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25261)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
13182 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13183 	result = NIM_NIL;
13184 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_317), args, argsLen_0);
13185 	return result;
13186 }
N_NIMCALL(void,initLocExpr__cgen_11483)13187 N_LIB_PRIVATE N_NIMCALL(void, initLocExpr__cgen_11483)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result) {
13188 	initLoc__cgen_60(result, ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0), e, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
13189 	expr__cgen_11460(p, e, result);
13190 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25268)13191 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25268)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
13192 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13193 	result = NIM_NIL;
13194 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_318), args, argsLen_0);
13195 	return result;
13196 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_5918)13197 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5918)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
13198 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13199 	result = NIM_NIL;
13200 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_319), args, argsLen_0);
13201 	return result;
13202 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_5923)13203 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5923)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
13204 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13205 	result = NIM_NIL;
13206 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_320), args, argsLen_0);
13207 	return result;
13208 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getClosureType__cgen_6644)13209 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getClosureType__cgen_6644)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyEnum_TClosureTypeKind__cLHRMz1vnpSK0uePy2qbWw kind) {
13210 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13211 	tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA check;
13212 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* rettype;
13213 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* desc;
13214 	result = NIM_NIL;
13215 	nimZeroMem((void*)(&check), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
13216 	initIntSet__pureZcollectionsZintsets_238((&check));
13217 	result = getTempName__cgen_418(m);
13218 	rettype = NIM_NIL;
13219 	desc = NIM_NIL;
13220 	genProcParams__cgen_3480(m, t, &rettype, &desc, (&check), !((kind == ((tyEnum_TClosureTypeKind__cLHRMz1vnpSK0uePy2qbWw) 0))), NIM_FALSE);
13221 	{
13222 		NIM_BOOL T3_;
13223 		T3_ = (NIM_BOOL)0;
13224 		T3_ = isImportedType__cgen_1283(t);
13225 		if (!!(T3_)) goto LA4_;
13226 		{
13227 			NIM_BOOL T8_;
13228 			tyArray__f7nG5LD47BH5K9c6mASit3g T12_;
13229 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
13230 			T8_ = (NIM_BOOL)0;
13231 			T8_ = !(((*t).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9)));
13232 			if (T8_) goto LA9_;
13233 			T8_ = !((kind == ((tyEnum_TClosureTypeKind__cLHRMz1vnpSK0uePy2qbWw) 2)));
13234 			LA9_: ;
13235 			if (!T8_) goto LA10_;
13236 			nimZeroMem((void*)T12_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
13237 			T12_[0] = rope__ropes_109(CallingConvToStr__cgen_1352[((*t).callConv)- 0]);
13238 			T12_[1] = rettype;
13239 			T12_[2] = result;
13240 			T12_[3] = desc;
13241 			T13_ = NIM_NIL;
13242 			T13_ = percent___cgen_5918(T12_, 4);
13243 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T13_);
13244 		}
13245 		goto LA6_;
13246 		LA10_: ;
13247 		{
13248 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T15_;
13249 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
13250 			nimZeroMem((void*)T15_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
13251 			T15_[0] = result;
13252 			T15_[1] = rettype;
13253 			T15_[2] = desc;
13254 			T16_ = NIM_NIL;
13255 			T16_ = percent___cgen_5923(T15_, 3);
13256 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T16_);
13257 		}
13258 		LA6_: ;
13259 	}
13260 	LA4_: ;
13261 	return result;
13262 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genConstSimpleList__cgen_24938)13263 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genConstSimpleList__cgen_24938)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst) {
13264 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13265 	result = NIM_NIL;
13266 	result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
13267 	{
13268 		NI i;
13269 		NI colontmp_;
13270 		NI i_2;
13271 		i = (NI)0;
13272 		colontmp_ = (NI)0;
13273 		colontmp_ = len__ast_3198(n);
13274 		i_2 = ((NI) 0);
13275 		{
13276 			while (1) {
13277 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
13278 				if (!(i_2 < colontmp_)) goto LA3;
13279 				i = i_2;
13280 				it = (*n)._kind_6.sons->data[i];
13281 				{
13282 					if (!(((NI) 0) < i)) goto LA6_;
13283 					add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_297));
13284 				}
13285 				LA6_: ;
13286 				{
13287 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
13288 					if (!((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA10_;
13289 					T12_ = NIM_NIL;
13290 					T12_ = genBracedInit__cgen_13772(p, (*it)._kind_6.sons->data[((NI) 1)], isConst, (*(*it)._kind_6.sons->data[((NI) 0)]).typ);
13291 					add__ropes_159(&result, T12_);
13292 				}
13293 				goto LA8_;
13294 				LA10_: ;
13295 				{
13296 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
13297 					T14_ = NIM_NIL;
13298 					T14_ = genBracedInit__cgen_13772(p, it, isConst, (*it).typ);
13299 					add__ropes_159(&result, T14_);
13300 				}
13301 				LA8_: ;
13302 				i_2 += ((NI) 1);
13303 			} LA3: ;
13304 		}
13305 	}
13306 	add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_298));
13307 	return result;
13308 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genConstTuple__cgen_24959)13309 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genConstTuple__cgen_24959)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst, tyObject_TType__facALICuu8zUj0hjvbTLFg* tup) {
13310 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13311 	result = NIM_NIL;
13312 	result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
13313 	{
13314 		NI i;
13315 		NI colontmp_;
13316 		NI i_2;
13317 		i = (NI)0;
13318 		colontmp_ = (NI)0;
13319 		colontmp_ = len__ast_3198(n);
13320 		i_2 = ((NI) 0);
13321 		{
13322 			while (1) {
13323 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
13324 				if (!(i_2 < colontmp_)) goto LA3;
13325 				i = i_2;
13326 				it = (*n)._kind_6.sons->data[i];
13327 				{
13328 					if (!(((NI) 0) < i)) goto LA6_;
13329 					add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_297));
13330 				}
13331 				LA6_: ;
13332 				{
13333 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
13334 					if (!((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA10_;
13335 					T12_ = NIM_NIL;
13336 					T12_ = genBracedInit__cgen_13772(p, (*it)._kind_6.sons->data[((NI) 1)], isConst, (*tup).sons->data[i]);
13337 					add__ropes_159(&result, T12_);
13338 				}
13339 				goto LA8_;
13340 				LA10_: ;
13341 				{
13342 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
13343 					T14_ = NIM_NIL;
13344 					T14_ = genBracedInit__cgen_13772(p, it, isConst, (*tup).sons->data[i]);
13345 					add__ropes_159(&result, T14_);
13346 				}
13347 				LA8_: ;
13348 				i_2 += ((NI) 1);
13349 			} LA3: ;
13350 		}
13351 	}
13352 	add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_298));
13353 	return result;
13354 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25356)13355 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25356)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
13356 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13357 	result = NIM_NIL;
13358 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_324), args, argsLen_0);
13359 	return result;
13360 }
N_NIMCALL(NI,caseObjDefaultBranch__cgen_24767)13361 N_LIB_PRIVATE N_NIMCALL(NI, caseObjDefaultBranch__cgen_24767)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* obj, tyObject_Int128__9a9axPfb75jdWY25AamJewkA branch) {
13362 	NI result;
13363 {	result = (NI)0;
13364 	{
13365 		NI i;
13366 		NI colontmp_;
13367 		NI i_2;
13368 		i = (NI)0;
13369 		colontmp_ = (NI)0;
13370 		colontmp_ = len__ast_3198(obj);
13371 		i_2 = ((NI) 1);
13372 		{
13373 			while (1) {
13374 				if (!(i_2 < colontmp_)) goto LA3;
13375 				i = i_2;
13376 				{
13377 					NI j;
13378 					NI colontmp__2;
13379 					NI T5_;
13380 					NI res;
13381 					j = (NI)0;
13382 					colontmp__2 = (NI)0;
13383 					T5_ = (NI)0;
13384 					T5_ = len__ast_3198((*obj)._kind_6.sons->data[i]);
13385 					colontmp__2 = (NI)(T5_ - ((NI) 2));
13386 					res = ((NI) 0);
13387 					{
13388 						while (1) {
13389 							if (!(res <= colontmp__2)) goto LA7;
13390 							j = res;
13391 							{
13392 								tyObject_Int128__9a9axPfb75jdWY25AamJewkA x;
13393 								tyObject_Int128__9a9axPfb75jdWY25AamJewkA y;
13394 								if (!((*(*(*obj)._kind_6.sons->data[i])._kind_6.sons->data[j]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA10_;
13395 								x = getOrdValue__types_161((*(*(*obj)._kind_6.sons->data[i])._kind_6.sons->data[j])._kind_6.sons->data[((NI) 0)], Max__int495056_27);
13396 								y = getOrdValue__types_161((*(*(*obj)._kind_6.sons->data[i])._kind_6.sons->data[j])._kind_6.sons->data[((NI) 1)], Max__int495056_27);
13397 								{
13398 									NIM_BOOL T14_;
13399 									T14_ = (NIM_BOOL)0;
13400 									T14_ = lteq___int495056_309(x, branch);
13401 									if (!(T14_)) goto LA15_;
13402 									T14_ = lteq___int495056_309(branch, y);
13403 									LA15_: ;
13404 									if (!T14_) goto LA16_;
13405 									result = i;
13406 									goto BeforeRet_;
13407 								}
13408 								LA16_: ;
13409 							}
13410 							goto LA8_;
13411 							LA10_: ;
13412 							{
13413 								tyObject_Int128__9a9axPfb75jdWY25AamJewkA T19_;
13414 								NIM_BOOL T20_;
13415 								T19_ = getOrdValue__types_161((*(*obj)._kind_6.sons->data[i])._kind_6.sons->data[j], Max__int495056_27);
13416 								T20_ = (NIM_BOOL)0;
13417 								T20_ = eqeq___int495056_313(T19_, branch);
13418 								if (!T20_) goto LA21_;
13419 								result = i;
13420 								goto BeforeRet_;
13421 							}
13422 							goto LA8_;
13423 							LA21_: ;
13424 							LA8_: ;
13425 							res += ((NI) 1);
13426 						} LA7: ;
13427 					}
13428 				}
13429 				{
13430 					NI T25_;
13431 					T25_ = (NI)0;
13432 					T25_ = len__ast_3198((*obj)._kind_6.sons->data[i]);
13433 					if (!(T25_ == ((NI) 1))) goto LA26_;
13434 					result = i;
13435 					goto BeforeRet_;
13436 				}
13437 				LA26_: ;
13438 				i_2 += ((NI) 1);
13439 			} LA3: ;
13440 		}
13441 	}
13442 	}BeforeRet_: ;
13443 	return result;
13444 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getDefaultValue__cgen_24723)13445 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getDefaultValue__cgen_24723)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
13446 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13447 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
13448 	result = NIM_NIL;
13449 	t = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_326);
13450 	switch ((*t).kind) {
13451 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
13452 	{
13453 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_327));
13454 	}
13455 	break;
13456 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
13457 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
13458 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35):
13459 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
13460 	{
13461 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_137));
13462 	}
13463 	break;
13464 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39):
13465 	{
13466 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_328));
13467 	}
13468 	break;
13469 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
13470 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23):
13471 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47):
13472 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26):
13473 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
13474 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 6):
13475 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 7):
13476 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8):
13477 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60):
13478 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
13479 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 5):
13480 	{
13481 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_329));
13482 	}
13483 	break;
13484 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
13485 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
13486 	{
13487 		{
13488 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA8_;
13489 			result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_330));
13490 		}
13491 		goto LA6_;
13492 		LA8_: ;
13493 		{
13494 			result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_329));
13495 		}
13496 		LA6_: ;
13497 	}
13498 	break;
13499 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25):
13500 	{
13501 		{
13502 			if (!!(((*t).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9)))) goto LA14_;
13503 			result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_329));
13504 		}
13505 		goto LA12_;
13506 		LA14_: ;
13507 		{
13508 			result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_331));
13509 		}
13510 		LA12_: ;
13511 	}
13512 	break;
13513 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
13514 	{
13515 		NI count;
13516 		count = ((NI) 0);
13517 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
13518 		getNullValueAuxT__cgen_17569(p, t, t, (*t).n, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), &result, (&count), NIM_TRUE, info);
13519 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
13520 	}
13521 	break;
13522 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
13523 	{
13524 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_299));
13525 		{
13526 			NI i;
13527 			NI colontmp_;
13528 			NI i_2;
13529 			i = (NI)0;
13530 			colontmp_ = (NI)0;
13531 			colontmp_ = len__ast_4002(t);
13532 			i_2 = ((NI) 0);
13533 			{
13534 				while (1) {
13535 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
13536 					if (!(i_2 < colontmp_)) goto LA21;
13537 					i = i_2;
13538 					{
13539 						if (!(((NI) 0) < i)) goto LA24_;
13540 						add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
13541 					}
13542 					LA24_: ;
13543 					T26_ = NIM_NIL;
13544 					T26_ = getDefaultValue__cgen_24723(p, (*t).sons->data[i], info);
13545 					add__ropes_159(&result, T26_);
13546 					i_2 += ((NI) 1);
13547 				} LA21: ;
13548 			}
13549 		}
13550 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
13551 	}
13552 	break;
13553 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
13554 	{
13555 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_299));
13556 		{
13557 			NI i_3;
13558 			NI colontmp__2;
13559 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T29_;
13560 			NI i_4;
13561 			i_3 = (NI)0;
13562 			colontmp__2 = (NI)0;
13563 			T29_ = lengthOrd__types_1652((*(*(*p).module).g).config, (*t).sons->data[((NI) 0)]);
13564 			colontmp__2 = toInt__int495056_170(T29_);
13565 			i_4 = ((NI) 0);
13566 			{
13567 				while (1) {
13568 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
13569 					if (!(i_4 < colontmp__2)) goto LA31;
13570 					i_3 = i_4;
13571 					{
13572 						if (!(((NI) 0) < i_3)) goto LA34_;
13573 						add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
13574 					}
13575 					LA34_: ;
13576 					T36_ = NIM_NIL;
13577 					T36_ = getDefaultValue__cgen_24723(p, (*t).sons->data[((NI) 1)], info);
13578 					add__ropes_159(&result, T36_);
13579 					i_4 += ((NI) 1);
13580 				} LA31: ;
13581 			}
13582 		}
13583 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
13584 	}
13585 	break;
13586 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
13587 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
13588 	{
13589 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_332));
13590 	}
13591 	break;
13592 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
13593 	{
13594 		{
13595 			tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T41_;
13596 			T41_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
13597 			T41_ = mapSetType__cgen_1205((*(*(*p).module).g).config, t);
13598 			if (!(T41_ == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17))) goto LA42_;
13599 			result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_333));
13600 		}
13601 		goto LA39_;
13602 		LA42_: ;
13603 		{
13604 			result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_137));
13605 		}
13606 		LA39_: ;
13607 	}
13608 	break;
13609 	default:
13610 	{
13611 		NimStringDesc* T46_;
13612 		T46_ = NIM_NIL;
13613 		T46_ = rawNewString((reprEnum((NI)(*t).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*t).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 32);
13614 appendString(T46_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_334));
13615 appendString(T46_, reprEnum((NI)(*t).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
13616 		liMessage__msgs_1118((*(*(*p).module).g).config, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T46_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__MQdRN7fpbG7rPm4JpVVAhA_335, NIM_FALSE);
13617 	}
13618 	break;
13619 	}
13620 	return result;
13621 }
N_NIMCALL(void,getNullValueAux__cgen_24811)13622 N_LIB_PRIVATE N_NIMCALL(void, getNullValueAux__cgen_24811)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* obj, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constOrNil, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** result, NI* count, NIM_BOOL isConst, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
13623 {	switch ((*obj).kind) {
13624 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
13625 	{
13626 		{
13627 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** it;
13628 			tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp_;
13629 			NI i;
13630 			NI L;
13631 			NI T3_;
13632 			it = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
13633 			colontmp_ = NIM_NIL;
13634 			colontmp_ = (*obj)._kind_6.sons;
13635 			i = ((NI) 0);
13636 			T3_ = (colontmp_ ? colontmp_->Sup.len : 0);
13637 			L = T3_;
13638 			{
13639 				while (1) {
13640 					if (!(i < L)) goto LA5;
13641 					it = &colontmp_->data[i];
13642 					getNullValueAux__cgen_24811(p, t, (*it), constOrNil, result, count, isConst, info);
13643 					i += ((NI) 1);
13644 				} LA5: ;
13645 			}
13646 		}
13647 	}
13648 	break;
13649 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
13650 	{
13651 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA branch;
13652 		NI selectedBranch;
13653 		NI countB;
13654 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b;
13655 		getNullValueAux__cgen_24811(p, t, (*obj)._kind_6.sons->data[((NI) 0)], constOrNil, result, count, isConst, info);
13656 		{
13657 			if (!(((NI) 0) < (*count))) goto LA9_;
13658 			add__ropes_162(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
13659 		}
13660 		LA9_: ;
13661 		branch = Zero__int495056_7;
13662 		{
13663 			if (!!((constOrNil == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA13_;
13664 			{
13665 				NI i_2;
13666 				NI colontmp__2;
13667 				NI i_3;
13668 				i_2 = (NI)0;
13669 				colontmp__2 = (NI)0;
13670 				colontmp__2 = len__ast_3198(constOrNil);
13671 				i_3 = ((NI) 1);
13672 				{
13673 					while (1) {
13674 						if (!(i_3 < colontmp__2)) goto LA17;
13675 						i_2 = i_3;
13676 						{
13677 							if (!((*(*constOrNil)._kind_6.sons->data[i_2]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA20_;
13678 							{
13679 								if (!((*(*(*(*(*constOrNil)._kind_6.sons->data[i_2])._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).id == (*(*(*(*obj)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).id)) goto LA24_;
13680 								branch = getOrdValue__types_161((*(*constOrNil)._kind_6.sons->data[i_2])._kind_6.sons->data[((NI) 1)], Max__int495056_27);
13681 								goto LA15;
13682 							}
13683 							LA24_: ;
13684 						}
13685 						goto LA18_;
13686 						LA20_: ;
13687 						{
13688 							if (!(i_2 == (*(*(*obj)._kind_6.sons->data[((NI) 0)])._kind_4.sym).position)) goto LA27_;
13689 							branch = getOrdValue__types_161((*constOrNil)._kind_6.sons->data[i_2], Max__int495056_27);
13690 							goto LA15;
13691 						}
13692 						goto LA18_;
13693 						LA27_: ;
13694 						LA18_: ;
13695 						i_3 += ((NI) 1);
13696 					} LA17: ;
13697 				}
13698 			} LA15: ;
13699 		}
13700 		LA13_: ;
13701 		selectedBranch = caseObjDefaultBranch__cgen_24767(obj, branch);
13702 		add__ropes_162(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
13703 		countB = ((NI) 0);
13704 		b = lastSon__ast_4832((*obj)._kind_6.sons->data[selectedBranch]);
13705 		{
13706 			NIM_BOOL T31_;
13707 			NI T33_;
13708 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
13709 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
13710 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
13711 			NimStringDesc* T39_;
13712 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
13713 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
13714 			T31_ = (NIM_BOOL)0;
13715 			T31_ = ((*b).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138));
13716 			if (!(T31_)) goto LA32_;
13717 			T33_ = (NI)0;
13718 			T33_ = len__ast_3198(b);
13719 			T31_ = (((NI) 0) < T33_);
13720 			LA32_: ;
13721 			if (!T31_) goto LA34_;
13722 			T36_ = NIM_NIL;
13723 			T36_ = mangleRecFieldName__cgen_3618((*p).module, (*(*obj)._kind_6.sons->data[((NI) 0)])._kind_4.sym);
13724 			T37_ = NIM_NIL;
13725 			T37_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_325), T36_);
13726 			T38_ = NIM_NIL;
13727 			T38_ = amp___ropes_140(T37_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
13728 			T39_ = NIM_NIL;
13729 			T39_ = dollar___systemZdollars_3(selectedBranch);
13730 			T40_ = NIM_NIL;
13731 			T40_ = amp___ropes_140(T38_, T39_);
13732 			T41_ = NIM_NIL;
13733 			T41_ = amp___ropes_140(T40_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_307));
13734 			add__ropes_159(result, T41_);
13735 			getNullValueAux__cgen_24811(p, t, b, constOrNil, result, (&countB), isConst, info);
13736 			add__ropes_162(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
13737 		}
13738 		goto LA29_;
13739 		LA34_: ;
13740 		{
13741 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
13742 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
13743 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
13744 			if (!((*b).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA43_;
13745 			T45_ = NIM_NIL;
13746 			T45_ = mangleRecFieldName__cgen_3618((*p).module, (*b)._kind_4.sym);
13747 			T46_ = NIM_NIL;
13748 			T46_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128), T45_);
13749 			T47_ = NIM_NIL;
13750 			T47_ = amp___ropes_140(T46_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
13751 			add__ropes_159(result, T47_);
13752 			getNullValueAux__cgen_24811(p, t, b, constOrNil, result, (&countB), isConst, info);
13753 		}
13754 		goto LA29_;
13755 		LA43_: ;
13756 		LA29_: ;
13757 		add__ropes_162(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
13758 	}
13759 	break;
13760 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
13761 	{
13762 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
13763 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T73_;
13764 		{
13765 			if (!(((NI) 0) < (*count))) goto LA51_;
13766 			add__ropes_162(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
13767 		}
13768 		LA51_: ;
13769 		(*count) += ((NI) 1);
13770 		field = (*obj)._kind_4.sym;
13771 		{
13772 			if (!!((constOrNil == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA55_;
13773 			{
13774 				NI i_4;
13775 				NI colontmp__3;
13776 				NI i_5;
13777 				i_4 = (NI)0;
13778 				colontmp__3 = (NI)0;
13779 				colontmp__3 = len__ast_3198(constOrNil);
13780 				i_5 = ((NI) 1);
13781 				{
13782 					while (1) {
13783 						if (!(i_5 < colontmp__3)) goto LA59;
13784 						i_4 = i_5;
13785 						{
13786 							if (!((*(*constOrNil)._kind_6.sons->data[i_4]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA62_;
13787 							{
13788 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
13789 								if (!((*(*(*(*(*constOrNil)._kind_6.sons->data[i_4])._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).id == (*(*field).name).id)) goto LA66_;
13790 								T68_ = NIM_NIL;
13791 								T68_ = genBracedInit__cgen_13772(p, (*(*constOrNil)._kind_6.sons->data[i_4])._kind_6.sons->data[((NI) 1)], isConst, (*field).typ);
13792 								add__ropes_159(result, T68_);
13793 								goto BeforeRet_;
13794 							}
13795 							LA66_: ;
13796 						}
13797 						goto LA60_;
13798 						LA62_: ;
13799 						{
13800 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T72_;
13801 							if (!(i_4 == (*field).position)) goto LA70_;
13802 							T72_ = NIM_NIL;
13803 							T72_ = genBracedInit__cgen_13772(p, (*constOrNil)._kind_6.sons->data[i_4], isConst, (*field).typ);
13804 							add__ropes_159(result, T72_);
13805 							goto BeforeRet_;
13806 						}
13807 						goto LA60_;
13808 						LA70_: ;
13809 						LA60_: ;
13810 						i_5 += ((NI) 1);
13811 					} LA59: ;
13812 				}
13813 			}
13814 		}
13815 		LA55_: ;
13816 		T73_ = NIM_NIL;
13817 		T73_ = getDefaultValue__cgen_24723(p, (*field).typ, info);
13818 		add__ropes_159(result, T73_);
13819 	}
13820 	break;
13821 	default:
13822 	{
13823 		NimStringDesc* T75_;
13824 		NimStringDesc* T76_;
13825 		T75_ = NIM_NIL;
13826 		T76_ = NIM_NIL;
13827 		T76_ = dollar___renderer_2106(obj);
13828 		T75_ = rawNewString((T76_ ? T76_->Sup.len : 0) + 32);
13829 appendString(T75_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_334));
13830 appendString(T75_, T76_);
13831 		liMessage__msgs_1118((*(*(*p).module).g).config, info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T75_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_336, NIM_FALSE);
13832 	}
13833 	break;
13834 	}
13835 	}BeforeRet_: ;
13836 }
N_NIMCALL(void,getNullValueAuxT__cgen_17569)13837 N_LIB_PRIVATE N_NIMCALL(void, getNullValueAuxT__cgen_17569)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* orig, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* obj, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constOrNil, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** result, NI* count, NIM_BOOL isConst, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
13838 	tyObject_TType__facALICuu8zUj0hjvbTLFg* base;
13839 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* oldRes;
13840 	NI oldcount;
13841 	base = (*t).sons->data[((NI) 0)];
13842 	oldRes = (*result);
13843 	oldcount = (*count);
13844 	{
13845 		if (!!((base == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA3_;
13846 		add__ropes_162(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
13847 		base = skipTypes__ast_3735(base, TM__MQdRN7fpbG7rPm4JpVVAhA_112);
13848 		getNullValueAuxT__cgen_17569(p, orig, base, (*base).n, constOrNil, result, count, isConst, info);
13849 		add__ropes_162(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
13850 	}
13851 	goto LA1_;
13852 	LA3_: ;
13853 	{
13854 		NIM_BOOL T6_;
13855 		T6_ = (NIM_BOOL)0;
13856 		T6_ = isObjLackingTypeField__cgen_1319(t);
13857 		if (!!(T6_)) goto LA7_;
13858 		{
13859 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
13860 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA11_;
13861 			T13_ = NIM_NIL;
13862 			T13_ = genTypeInfoV2__cgen_7924((*p).module, orig, (*obj).info);
13863 			add__ropes_159(result, T13_);
13864 		}
13865 		goto LA9_;
13866 		LA11_: ;
13867 		{
13868 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
13869 			T15_ = NIM_NIL;
13870 			T15_ = genTypeInfoV1__cgen_6768((*p).module, orig, (*obj).info);
13871 			add__ropes_159(result, T15_);
13872 		}
13873 		LA9_: ;
13874 		(*count) += ((NI) 1);
13875 	}
13876 	goto LA1_;
13877 	LA7_: ;
13878 	LA1_: ;
13879 	getNullValueAux__cgen_24811(p, t, obj, constOrNil, result, count, isConst, info);
13880 	{
13881 		if (!(oldcount == (*count))) goto LA18_;
13882 		unsureAsgnRef((void**) (&(*result)), oldRes);
13883 	}
13884 	LA18_: ;
13885 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_24933)13886 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24933)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
13887 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13888 	result = NIM_NIL;
13889 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_337), args, argsLen_0);
13890 	return result;
13891 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genConstObjConstr__cgen_24922)13892 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genConstObjConstr__cgen_24922)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst) {
13893 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13894 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
13895 	NI count;
13896 	tyArray__JiWwrsTRC6xqNlGcBthSVA T5_;
13897 	result = NIM_NIL;
13898 	result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
13899 	t = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
13900 	count = ((NI) 0);
13901 	{
13902 		if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17))) goto LA3_;
13903 		getNullValueAuxT__cgen_17569(p, t, t, (*t).n, n, &result, (&count), isConst, (*n).info);
13904 	}
13905 	LA3_: ;
13906 	nimZeroMem((void*)T5_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
13907 	T5_[0] = result;
13908 	result = percent___cgen_24933(T5_, 1);
13909 	return result;
13910 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_584)13911 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_584)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
13912 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13913 	result = NIM_NIL;
13914 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_338), args, argsLen_0);
13915 	return result;
13916 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genStringLiteralV2Const__cgen_577)13917 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genStringLiteralV2Const__cgen_577)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst) {
13918 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13919 	NI id;
13920 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* pureLit;
13921 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T9_;
13922 	result = NIM_NIL;
13923 	id = nodeTableTestOrSet__treetab_198((&(*m).dataCache), n, ((NI) ((*m).labels)));
13924 	pureLit = NIM_NIL;
13925 	{
13926 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
13927 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
13928 		if (!(id == ((NI) ((*m).labels)))) goto LA3_;
13929 		pureLit = getTempName__cgen_418(m);
13930 		T5_ = NIM_NIL;
13931 		T5_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_226));
13932 		(void)(T5_);
13933 		T6_ = NIM_NIL;
13934 		T6_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_227));
13935 		(void)(T6_);
13936 		genStringLiteralDataOnlyV2__cgen_542(m, (*n)._kind_3.strVal, pureLit, isConst);
13937 	}
13938 	goto LA1_;
13939 	LA3_: ;
13940 	{
13941 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
13942 		T8_ = NIM_NIL;
13943 		T8_ = rope__ropes_115(((NI64) (id)));
13944 		pureLit = amp___ropes_128((*m).tmpBase, T8_);
13945 	}
13946 	LA1_: ;
13947 	nimZeroMem((void*)T9_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
13948 	T9_[0] = rope__ropes_115(((NI64) (((*n)._kind_3.strVal ? (*n)._kind_3.strVal->Sup.len : 0))));
13949 	T9_[1] = pureLit;
13950 	result = percent___cgen_584(T9_, 2);
13951 	return result;
13952 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genBracedInit__cgen_13772)13953 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genBracedInit__cgen_13772)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL isConst, tyObject_TType__facALICuu8zUj0hjvbTLFg* optionalType) {
13954 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
13955 	result = NIM_NIL;
13956 	switch ((*n).kind) {
13957 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
13958 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
13959 	{
13960 		result = genBracedInit__cgen_13772(p, (*n)._kind_6.sons->data[((NI) 1)], isConst, (*n).typ);
13961 	}
13962 	break;
13963 	default:
13964 	{
13965 		tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag ty;
13966 		tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
13967 		ty = ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 0);
13968 		typ = ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL);
13969 		{
13970 			if (!(optionalType == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA5_;
13971 			{
13972 				if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA9_;
13973 				ty = ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28);
13974 			}
13975 			goto LA7_;
13976 			LA9_: ;
13977 			{
13978 				internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_292), TM__MQdRN7fpbG7rPm4JpVVAhA_293);
13979 			}
13980 			LA7_: ;
13981 		}
13982 		goto LA3_;
13983 		LA5_: ;
13984 		{
13985 			typ = skipTypes__ast_3735(optionalType, TM__MQdRN7fpbG7rPm4JpVVAhA_95);
13986 			ty = (*typ).kind;
13987 		}
13988 		LA3_: ;
13989 		switch (ty) {
13990 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
13991 		{
13992 			tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* cs;
13993 			NI64 T14_;
13994 			cs = toBitSet__nimsets_103((*(*(*p).module).g).config, n);
13995 			T14_ = (NI64)0;
13996 			T14_ = getSize__types_3327((*(*(*p).module).g).config, (*n).typ);
13997 			result = genRawSetData__cgen_17758(cs, ((NI) (T14_)));
13998 		}
13999 		break;
14000 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
14001 		{
14002 			{
14003 				if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA18_;
14004 				result = genConstSeqV2__cgen_25106(p, n, typ, isConst);
14005 			}
14006 			goto LA16_;
14007 			LA18_: ;
14008 			{
14009 				result = genConstSeq__cgen_24982(p, n, typ, isConst);
14010 			}
14011 			LA16_: ;
14012 		}
14013 		break;
14014 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25):
14015 		{
14016 			{
14017 				NIM_BOOL T24_;
14018 				NIM_BOOL T25_;
14019 				NI T27_;
14020 				T24_ = (NIM_BOOL)0;
14021 				T25_ = (NIM_BOOL)0;
14022 				T25_ = ((*typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9));
14023 				if (!(T25_)) goto LA26_;
14024 				T27_ = (NI)0;
14025 				T27_ = safeLen__ast_3191(n);
14026 				T25_ = (((NI) 1) < T27_);
14027 				LA26_: ;
14028 				T24_ = T25_;
14029 				if (!(T24_)) goto LA28_;
14030 				T24_ = ((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
14031 				LA28_: ;
14032 				if (!T24_) goto LA29_;
14033 				{
14034 					tyArray__qTjAvTvKF9anytN1At69aJMQ T35_;
14035 					if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA33_;
14036 					nimZeroMem((void*)T35_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
14037 					result = percent___cgen_25261(T35_, 0);
14038 				}
14039 				goto LA31_;
14040 				LA33_: ;
14041 				{
14042 					tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA d;
14043 					tyArray__mrugoXXRZUEeG9bEXo9auBKw T37_;
14044 					nimZeroMem((void*)(&d), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
14045 					initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 0)], (&d));
14046 					nimZeroMem((void*)T37_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
14047 					T37_[0] = getClosureType__cgen_6644((*p).module, typ, ((tyEnum_TClosureTypeKind__cLHRMz1vnpSK0uePy2qbWw) 1));
14048 					T37_[1] = rdLoc__cgen_425(d);
14049 					result = percent___cgen_25268(T37_, 2);
14050 				}
14051 				LA31_: ;
14052 			}
14053 			goto LA22_;
14054 			LA29_: ;
14055 			{
14056 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA d_2;
14057 				nimZeroMem((void*)(&d_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
14058 				initLocExpr__cgen_11483(p, n, (&d_2));
14059 				result = rdLoc__cgen_425(d_2);
14060 			}
14061 			LA22_: ;
14062 		}
14063 		break;
14064 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
14065 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
14066 		{
14067 			result = genConstSimpleList__cgen_24938(p, n, isConst);
14068 		}
14069 		break;
14070 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
14071 		{
14072 			result = genConstTuple__cgen_24959(p, n, isConst, typ);
14073 		}
14074 		break;
14075 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
14076 		{
14077 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* data;
14078 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* payload;
14079 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* ctype;
14080 			NI arrLen;
14081 			NimStringDesc* res;
14082 			NimStringDesc* T46_;
14083 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
14084 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T57_;
14085 			{
14086 				if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41)))) goto LA44_;
14087 				internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_321), TM__MQdRN7fpbG7rPm4JpVVAhA_322);
14088 			}
14089 			LA44_: ;
14090 			data = genConstSimpleList__cgen_24938(p, n, isConst);
14091 			payload = getTempName__cgen_418((*p).module);
14092 			ctype = getTypeDesc__cgen_6631((*p).module, (*typ).sons->data[((NI) 0)], ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
14093 			arrLen = len__ast_3198(n);
14094 			res = rawNewString(((NI) 80));
14095 			res = resizeString(res, 7);
14096 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_29));
14097 			T46_ = NIM_NIL;
14098 			{
14099 				if (!isConst) goto LA49_;
14100 				T46_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_225));
14101 			}
14102 			goto LA47_;
14103 			LA49_: ;
14104 			{
14105 				T46_ = ((NimStringDesc*) NIM_NIL);
14106 			}
14107 			LA47_: ;
14108 			cgFormatValue__cgen_145((&res), T46_);
14109 			res = resizeString(res, 1);
14110 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
14111 			cgFormatValue__cgen_141((&res), ctype);
14112 			res = resizeString(res, 1);
14113 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
14114 			cgFormatValue__cgen_141((&res), payload);
14115 			res = resizeString(res, 1);
14116 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
14117 			cgFormatValue__cgen_148((&res), ((NI64) (arrLen)));
14118 			res = resizeString(res, 4);
14119 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_323));
14120 			cgFormatValue__cgen_141((&res), data);
14121 			res = resizeString(res, 1);
14122 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
14123 			{
14124 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA54_;
14125 				res = resizeString(res, 1);
14126 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
14127 			}
14128 			LA54_: ;
14129 			T56_ = NIM_NIL;
14130 			T56_ = rope__ropes_109(res);
14131 			add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T56_);
14132 			nimZeroMem((void*)T57_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
14133 			T57_[0] = ctype;
14134 			T57_[1] = payload;
14135 			T57_[2] = rope__ropes_115(((NI64) (arrLen)));
14136 			result = percent___cgen_25356(T57_, 3);
14137 		}
14138 		break;
14139 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
14140 		{
14141 			result = genConstObjConstr__cgen_24922(p, n, isConst);
14142 		}
14143 		break;
14144 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
14145 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
14146 		{
14147 			{
14148 				NIM_BOOL T62_;
14149 				NIM_BOOL T63_;
14150 				T62_ = (NIM_BOOL)0;
14151 				T63_ = (NIM_BOOL)0;
14152 				T63_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0);
14153 				if (!(T63_)) goto LA64_;
14154 				T63_ = !(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23)));
14155 				LA64_: ;
14156 				T62_ = T63_;
14157 				if (!(T62_)) goto LA65_;
14158 				T62_ = (ty == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28));
14159 				LA65_: ;
14160 				if (!T62_) goto LA66_;
14161 				result = genStringLiteralV2Const__cgen_577((*p).module, n, isConst);
14162 			}
14163 			goto LA60_;
14164 			LA66_: ;
14165 			{
14166 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA d_3;
14167 				nimZeroMem((void*)(&d_3), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
14168 				initLocExpr__cgen_11483(p, n, (&d_3));
14169 				result = rdLoc__cgen_425(d_3);
14170 			}
14171 			LA60_: ;
14172 		}
14173 		break;
14174 		default:
14175 		{
14176 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA d_4;
14177 			nimZeroMem((void*)(&d_4), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
14178 			initLocExpr__cgen_11483(p, n, (&d_4));
14179 			result = rdLoc__cgen_425(d_4);
14180 		}
14181 		break;
14182 		}
14183 	}
14184 	break;
14185 	}
14186 	return result;
14187 }
N_NIMCALL(void,rawConstExpr__cgen_10365)14188 N_LIB_PRIVATE N_NIMCALL(void, rawConstExpr__cgen_10365)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
14189 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
14190 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
14191 	NI id;
14192 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
14193 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
14194 	t = (*n).typ;
14195 	T1_ = NIM_NIL;
14196 	T1_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
14197 	(void)(T1_);
14198 	id = nodeTableTestOrSet__treetab_198((&(*(*p).module).dataCache), n, ((NI) ((*(*p).module).labels)));
14199 	T2_ = NIM_NIL;
14200 	T2_ = rope__ropes_115(((NI64) (id)));
14201 	T3_ = NIM_NIL;
14202 	T3_ = amp___ropes_128((*(*p).module).tmpBase, T2_);
14203 	fillLoc__cgen_65(d, ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 8), n, T3_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1));
14204 	{
14205 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T8_;
14206 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
14207 		if (!(id == ((NI) ((*(*p).module).labels)))) goto LA6_;
14208 		(*(*p).module).labels += ((NI) 1);
14209 		nimZeroMem((void*)T8_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
14210 		T8_[0] = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
14211 		T8_[1] = (*d).r;
14212 		T8_[2] = genBracedInit__cgen_13772(p, n, NIM_TRUE, t);
14213 		T9_ = NIM_NIL;
14214 		T9_ = percent___cgen_17779(T8_, 3);
14215 		add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T9_);
14216 	}
14217 	LA6_: ;
14218 }
N_NIMCALL(void,genGenericAsgn__cgen_17989)14219 N_LIB_PRIVATE N_NIMCALL(void, genGenericAsgn__cgen_17989)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src, tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw flags) {
14220 	{
14221 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T5_;
14222 		NimStringDesc* res;
14223 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
14224 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
14225 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
14226 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
14227 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA3_;
14228 		T5_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
14229 		T5_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
14230 		res = rawNewString(((NI) 80));
14231 		T6_ = NIM_NIL;
14232 		T6_ = rdLoc__cgen_425(dest);
14233 		cgFormatValue__cgen_141((&res), T6_);
14234 		res = resizeString(res, 3);
14235 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
14236 		T7_ = NIM_NIL;
14237 		T7_ = rdLoc__cgen_425(src);
14238 		cgFormatValue__cgen_141((&res), T7_);
14239 		res = resizeString(res, 1);
14240 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
14241 		{
14242 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA10_;
14243 			res = resizeString(res, 1);
14244 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
14245 		}
14246 		LA10_: ;
14247 		T12_ = NIM_NIL;
14248 		T12_ = rope__ropes_109(res);
14249 		T13_ = NIM_NIL;
14250 		T13_ = indentLine__cgen_280(p, T12_);
14251 		add__ropes_159(T5_, T13_);
14252 	}
14253 	goto LA1_;
14254 	LA3_: ;
14255 	{
14256 		NIM_BOOL T15_;
14257 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T17_;
14258 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T18_;
14259 		T15_ = (NIM_BOOL)0;
14260 		T15_ = !(((flags &((NU8)1<<((NU)(((tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw) 0))&7U)))!=0));
14261 		if (T15_) goto LA16_;
14262 		T17_ = NIM_NIL;
14263 		T17_ = t__cgen_79(dest);
14264 		T18_ = NIM_NIL;
14265 		T18_ = skipTypes__ast_3735(T17_, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
14266 		T15_ = (((*T18_).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 6))&63U)))!=0);
14267 		LA16_: ;
14268 		if (!T15_) goto LA19_;
14269 		{
14270 			NIM_BOOL T23_;
14271 			NIM_BOOL T24_;
14272 			NIM_BOOL T27_;
14273 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T30_;
14274 			NimStringDesc* res_2;
14275 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
14276 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
14277 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
14278 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
14279 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
14280 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
14281 			T23_ = (NIM_BOOL)0;
14282 			T24_ = (NIM_BOOL)0;
14283 			T24_ = (dest.storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
14284 			if (!(T24_)) goto LA25_;
14285 			T24_ = !(((*(*(*(*p).module).g).config).selectedGC == ((tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw) 10)));
14286 			LA25_: ;
14287 			T23_ = T24_;
14288 			if (T23_) goto LA26_;
14289 			T27_ = (NIM_BOOL)0;
14290 			T27_ = usesWriteBarrier__options_3998((*(*(*p).module).g).config);
14291 			T23_ = !(T27_);
14292 			LA26_: ;
14293 			if (!T23_) goto LA28_;
14294 			T30_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
14295 			T30_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
14296 			res_2 = rawNewString(((NI) 80));
14297 			T31_ = NIM_NIL;
14298 			T31_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_339));
14299 			cgFormatValue__cgen_141((&res_2), T31_);
14300 			res_2 = resizeString(res_2, 8);
14301 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
14302 			T32_ = NIM_NIL;
14303 			T32_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
14304 			cgFormatValue__cgen_141((&res_2), T32_);
14305 			res_2 = resizeString(res_2, 19);
14306 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_342));
14307 			T33_ = NIM_NIL;
14308 			T33_ = addrLoc__cgen_10303((*(*(*p).module).g).config, src);
14309 			cgFormatValue__cgen_141((&res_2), T33_);
14310 			res_2 = resizeString(res_2, 9);
14311 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
14312 			T34_ = NIM_NIL;
14313 			T34_ = rdLoc__cgen_425(dest);
14314 			cgFormatValue__cgen_141((&res_2), T34_);
14315 			res_2 = resizeString(res_2, 3);
14316 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
14317 			{
14318 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA37_;
14319 				res_2 = resizeString(res_2, 1);
14320 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
14321 			}
14322 			LA37_: ;
14323 			T39_ = NIM_NIL;
14324 			T39_ = rope__ropes_109(res_2);
14325 			T40_ = NIM_NIL;
14326 			T40_ = indentLine__cgen_280(p, T39_);
14327 			add__ropes_159(T30_, T40_);
14328 		}
14329 		goto LA21_;
14330 		LA28_: ;
14331 		{
14332 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T42_;
14333 			NimStringDesc* res_3;
14334 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
14335 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
14336 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
14337 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T46_;
14338 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
14339 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
14340 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
14341 			T42_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
14342 			T42_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
14343 			res_3 = rawNewString(((NI) 80));
14344 			T43_ = NIM_NIL;
14345 			T43_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_343));
14346 			cgFormatValue__cgen_141((&res_3), T43_);
14347 			res_3 = resizeString(res_3, 8);
14348 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
14349 			T44_ = NIM_NIL;
14350 			T44_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
14351 			cgFormatValue__cgen_141((&res_3), T44_);
14352 			res_3 = resizeString(res_3, 9);
14353 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_344));
14354 			T45_ = NIM_NIL;
14355 			T45_ = addrLoc__cgen_10303((*(*(*p).module).g).config, src);
14356 			cgFormatValue__cgen_141((&res_3), T45_);
14357 			res_3 = resizeString(res_3, 2);
14358 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
14359 			T46_ = NIM_NIL;
14360 			T46_ = t__cgen_79(dest);
14361 			T47_ = NIM_NIL;
14362 			T47_ = genTypeInfoV1__cgen_6768((*p).module, T46_, (*dest.lode).info);
14363 			cgFormatValue__cgen_141((&res_3), T47_);
14364 			res_3 = resizeString(res_3, 2);
14365 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
14366 			{
14367 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA50_;
14368 				res_3 = resizeString(res_3, 1);
14369 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
14370 			}
14371 			LA50_: ;
14372 			T52_ = NIM_NIL;
14373 			T52_ = rope__ropes_109(res_3);
14374 			T53_ = NIM_NIL;
14375 			T53_ = indentLine__cgen_280(p, T52_);
14376 			add__ropes_159(T42_, T53_);
14377 		}
14378 		LA21_: ;
14379 	}
14380 	goto LA1_;
14381 	LA19_: ;
14382 	{
14383 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T55_;
14384 		NimStringDesc* res_4;
14385 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
14386 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
14387 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
14388 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T59_;
14389 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
14390 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T65_;
14391 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
14392 		T55_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
14393 		T55_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
14394 		res_4 = rawNewString(((NI) 80));
14395 		T56_ = NIM_NIL;
14396 		T56_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_345));
14397 		cgFormatValue__cgen_141((&res_4), T56_);
14398 		res_4 = resizeString(res_4, 8);
14399 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
14400 		T57_ = NIM_NIL;
14401 		T57_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
14402 		cgFormatValue__cgen_141((&res_4), T57_);
14403 		res_4 = resizeString(res_4, 9);
14404 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_344));
14405 		T58_ = NIM_NIL;
14406 		T58_ = addrLoc__cgen_10303((*(*(*p).module).g).config, src);
14407 		cgFormatValue__cgen_141((&res_4), T58_);
14408 		res_4 = resizeString(res_4, 2);
14409 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
14410 		T59_ = NIM_NIL;
14411 		T59_ = t__cgen_79(dest);
14412 		T60_ = NIM_NIL;
14413 		T60_ = genTypeInfoV1__cgen_6768((*p).module, T59_, (*dest.lode).info);
14414 		cgFormatValue__cgen_141((&res_4), T60_);
14415 		res_4 = resizeString(res_4, 2);
14416 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
14417 		{
14418 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA63_;
14419 			res_4 = resizeString(res_4, 1);
14420 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
14421 		}
14422 		LA63_: ;
14423 		T65_ = NIM_NIL;
14424 		T65_ = rope__ropes_109(res_4);
14425 		T66_ = NIM_NIL;
14426 		T66_ = indentLine__cgen_280(p, T65_);
14427 		add__ropes_159(T55_, T66_);
14428 	}
14429 	LA1_: ;
14430 }
N_NIMCALL(NIM_BOOL,canMove__cgen_17802)14431 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, canMove__cgen_17802)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest) {
14432 	NIM_BOOL result;
14433 {	result = (NIM_BOOL)0;
14434 	{
14435 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41))) goto LA3_;
14436 		{
14437 			NIM_BOOL T7_;
14438 			NIM_BOOL T8_;
14439 			NI T10_;
14440 			T7_ = (NIM_BOOL)0;
14441 			T8_ = (NIM_BOOL)0;
14442 			T8_ = isDeepConstExpr__trees_171(n, NIM_FALSE);
14443 			T7_ = !(T8_);
14444 			if (T7_) goto LA9_;
14445 			T10_ = (NI)0;
14446 			T10_ = len__ast_3198(n);
14447 			T7_ = (T10_ == ((NI) 0));
14448 			LA9_: ;
14449 			if (!T7_) goto LA11_;
14450 			{
14451 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T15_;
14452 				T15_ = NIM_NIL;
14453 				T15_ = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
14454 				if (!((*T15_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24))) goto LA16_;
14455 				result = NIM_TRUE;
14456 				goto BeforeRet_;
14457 			}
14458 			LA16_: ;
14459 		}
14460 		LA11_: ;
14461 	}
14462 	goto LA1_;
14463 	LA3_: ;
14464 	{
14465 		NIM_BOOL T19_;
14466 		T19_ = (NIM_BOOL)0;
14467 		T19_ = ((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22));
14468 		if (!(T19_)) goto LA20_;
14469 		T19_ = (((*n)._kind_3.strVal ? (*n)._kind_3.strVal->Sup.len : 0) == ((NI) 0));
14470 		LA20_: ;
14471 		if (!T19_) goto LA21_;
14472 		result = NIM_TRUE;
14473 		goto BeforeRet_;
14474 	}
14475 	goto LA1_;
14476 	LA21_: ;
14477 	LA1_: ;
14478 	result = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32));
14479 	}BeforeRet_: ;
14480 	return result;
14481 }
N_NIMCALL(void,optAsgnLoc__cgen_17893)14482 N_LIB_PRIVATE N_NIMCALL(void, optAsgnLoc__cgen_17893)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* field, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* Result) {
14483 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
14484 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
14485 	(*Result).k = 0;
14486 	(*Result).storage = 0;
14487 	unsureAsgnRef((void**)&(*Result).lode, NIM_NIL);
14488 	unsureAsgnRef((void**)&(*Result).r, NIM_NIL);
14489 	(*Result).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 5);
14490 	(*Result).storage = a.storage;
14491 	unsureAsgnRef((void**) (&(*Result).lode), lodeTyp__cgen_86(t));
14492 	T1_ = NIM_NIL;
14493 	T1_ = rdLoc__cgen_425(a);
14494 	T2_ = NIM_NIL;
14495 	T2_ = amp___ropes_140(T1_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128));
14496 	unsureAsgnRef((void**) (&(*Result).r), amp___ropes_128(T2_, field));
14497 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17940)14498 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17940)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
14499 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
14500 	result = NIM_NIL;
14501 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_355), args, argsLen_0);
14502 	return result;
14503 }
N_NIMCALL(void,genOptAsgnTuple__cgen_17905)14504 N_LIB_PRIVATE N_NIMCALL(void, genOptAsgnTuple__cgen_17905)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src, tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw flags) {
14505 	tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw newflags;
14506 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
14507 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T10_;
14508 	{
14509 		if (!(src.storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1))) goto LA3_;
14510 		newflags = (flags | 1);
14511 	}
14512 	goto LA1_;
14513 	LA3_: ;
14514 	{
14515 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
14516 		T6_ = NIM_NIL;
14517 		T6_ = t__cgen_79(dest);
14518 		if (!(((*T6_).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 6))&63U)))!=0)) goto LA7_;
14519 		newflags = (flags & ~ 1);
14520 	}
14521 	goto LA1_;
14522 	LA7_: ;
14523 	{
14524 		newflags = flags;
14525 	}
14526 	LA1_: ;
14527 	T10_ = NIM_NIL;
14528 	T10_ = t__cgen_79(dest);
14529 	t = skipTypes__ast_3735(T10_, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
14530 	{
14531 		NI i;
14532 		NI colontmp_;
14533 		NI i_2;
14534 		i = (NI)0;
14535 		colontmp_ = (NI)0;
14536 		colontmp_ = len__ast_4002(t);
14537 		i_2 = ((NI) 0);
14538 		{
14539 			while (1) {
14540 				tyObject_TType__facALICuu8zUj0hjvbTLFg* t_2;
14541 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* field;
14542 				tyArray__JiWwrsTRC6xqNlGcBthSVA T14_;
14543 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T15_;
14544 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T16_;
14545 				if (!(i_2 < colontmp_)) goto LA13;
14546 				i = i_2;
14547 				t_2 = (*t).sons->data[i];
14548 				nimZeroMem((void*)T14_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
14549 				T14_[0] = rope__ropes_115(((NI64) (i)));
14550 				field = percent___cgen_17940(T14_, 1);
14551 				nimZeroMem((void*)(&T15_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
14552 				optAsgnLoc__cgen_17893(dest, t_2, field, (&T15_));
14553 				nimZeroMem((void*)(&T16_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
14554 				optAsgnLoc__cgen_17893(src, t_2, field, (&T16_));
14555 				genAssignment__cgen_10369(p, T15_, T16_, newflags);
14556 				i_2 += ((NI) 1);
14557 			} LA13: ;
14558 		}
14559 	}
14560 }
N_NIMCALL(NI,asgnComplexity__cgen_17881)14561 N_LIB_PRIVATE N_NIMCALL(NI, asgnComplexity__cgen_17881)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
14562 	NI result;
14563 	result = (NI)0;
14564 	{
14565 		if (!!((n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA3_;
14566 		switch ((*n).kind) {
14567 		case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
14568 		{
14569 			result = ((NI) 1);
14570 		}
14571 		break;
14572 		case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
14573 		{
14574 			result = ((NI) 100);
14575 		}
14576 		break;
14577 		case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
14578 		{
14579 			{
14580 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t;
14581 				t = NIM_NIL;
14582 				{
14583 					NI i;
14584 					NI colontmp_;
14585 					NI i_2;
14586 					i = (NI)0;
14587 					colontmp_ = (NI)0;
14588 					colontmp_ = safeLen__ast_3191(n);
14589 					i_2 = ((NI) 0);
14590 					{
14591 						while (1) {
14592 							NI T12_;
14593 							if (!(i_2 < colontmp_)) goto LA11;
14594 							i = i_2;
14595 							t = (*n)._kind_6.sons->data[i];
14596 							T12_ = (NI)0;
14597 							T12_ = asgnComplexity__cgen_17881(t);
14598 							result += T12_;
14599 							i_2 += ((NI) 1);
14600 						} LA11: ;
14601 					}
14602 				}
14603 			}
14604 		}
14605 		break;
14606 		default:
14607 		{
14608 		}
14609 		break;
14610 		}
14611 	}
14612 	LA3_: ;
14613 	return result;
14614 }
N_NIMCALL(void,genOptAsgnObject__cgen_17955)14615 N_LIB_PRIVATE N_NIMCALL(void, genOptAsgnObject__cgen_17955)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src, tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw flags, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
14616 	tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw newflags;
14617 {	{
14618 		if (!(t == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
14619 		goto BeforeRet_;
14620 	}
14621 	LA3_: ;
14622 	{
14623 		if (!(src.storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1))) goto LA7_;
14624 		newflags = (flags | 1);
14625 	}
14626 	goto LA5_;
14627 	LA7_: ;
14628 	{
14629 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T10_;
14630 		T10_ = NIM_NIL;
14631 		T10_ = t__cgen_79(dest);
14632 		if (!(((*T10_).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 6))&63U)))!=0)) goto LA11_;
14633 		newflags = (flags & ~ 1);
14634 	}
14635 	goto LA5_;
14636 	LA11_: ;
14637 	{
14638 		newflags = flags;
14639 	}
14640 	LA5_: ;
14641 	switch ((*t).kind) {
14642 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
14643 	{
14644 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
14645 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T19_;
14646 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T20_;
14647 		field = (*t)._kind_4.sym;
14648 		{
14649 			if (!((*field).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA17_;
14650 			fillObjectFields__cgen_3777((*p).module, typ);
14651 		}
14652 		LA17_: ;
14653 		nimZeroMem((void*)(&T19_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
14654 		optAsgnLoc__cgen_17893(dest, (*field).typ, (*field).loc.r, (&T19_));
14655 		nimZeroMem((void*)(&T20_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
14656 		optAsgnLoc__cgen_17893(src, (*field).typ, (*field).loc.r, (&T20_));
14657 		genAssignment__cgen_10369(p, T19_, T20_, newflags);
14658 	}
14659 	break;
14660 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
14661 	{
14662 		{
14663 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child;
14664 			child = NIM_NIL;
14665 			{
14666 				NI i;
14667 				NI colontmp_;
14668 				NI i_2;
14669 				i = (NI)0;
14670 				colontmp_ = (NI)0;
14671 				colontmp_ = safeLen__ast_3191(t);
14672 				i_2 = ((NI) 0);
14673 				{
14674 					while (1) {
14675 						if (!(i_2 < colontmp_)) goto LA25;
14676 						i = i_2;
14677 						child = (*t)._kind_6.sons->data[i];
14678 						genOptAsgnObject__cgen_17955(p, dest, src, newflags, child, typ);
14679 						i_2 += ((NI) 1);
14680 					} LA25: ;
14681 				}
14682 			}
14683 		}
14684 	}
14685 	break;
14686 	default:
14687 	{
14688 	}
14689 	break;
14690 	}
14691 	}BeforeRet_: ;
14692 }
N_INLINE(NIM_BOOL,reifiedOpenArray__cgen_11738)14693 static N_INLINE(NIM_BOOL, reifiedOpenArray__cgen_11738)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
14694 	NIM_BOOL result;
14695 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
14696 	result = (NIM_BOOL)0;
14697 	x = n;
14698 	{
14699 		while (1) {
14700 			if (!((*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63) || (*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64) || (*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58) || (*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65))) goto LA2;
14701 			x = (*x)._kind_6.sons->data[((NI) 0)];
14702 		} LA2: ;
14703 	}
14704 	{
14705 		NIM_BOOL T5_;
14706 		T5_ = (NIM_BOOL)0;
14707 		T5_ = ((*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
14708 		if (!(T5_)) goto LA6_;
14709 		T5_ = ((*(*x)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
14710 		LA6_: ;
14711 		if (!T5_) goto LA7_;
14712 		result = NIM_FALSE;
14713 	}
14714 	goto LA3_;
14715 	LA7_: ;
14716 	{
14717 		result = NIM_TRUE;
14718 	}
14719 	LA3_: ;
14720 	return result;
14721 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,byRefLoc__cgen_10319)14722 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, byRefLoc__cgen_10319)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a) {
14723 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
14724 	result = NIM_NIL;
14725 	result = a.r;
14726 	{
14727 		NIM_BOOL T3_;
14728 		NIM_BOOL T4_;
14729 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
14730 		tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw T7_;
14731 		tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T13_;
14732 		NIM_BOOL T15_;
14733 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
14734 		T3_ = (NIM_BOOL)0;
14735 		T4_ = (NIM_BOOL)0;
14736 		T4_ = !(((a.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0))&15U)))!=0));
14737 		if (!(T4_)) goto LA5_;
14738 		T6_ = NIM_NIL;
14739 		T6_ = t__cgen_79(a);
14740 		T7_ = (tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw)0;
14741 		{
14742 			if (!((*a.lode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA10_;
14743 			T7_ = (*(*a.lode)._kind_4.sym).kind;
14744 		}
14745 		goto LA8_;
14746 		LA10_: ;
14747 		{
14748 			T7_ = ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8);
14749 		}
14750 		LA8_: ;
14751 		T13_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
14752 		T13_ = mapType__cgen_1209((*(*(*p).module).g).config, T6_, T7_);
14753 		T4_ = !((T13_ == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17)));
14754 		LA5_: ;
14755 		T3_ = T4_;
14756 		if (!(T3_)) goto LA14_;
14757 		T15_ = (NIM_BOOL)0;
14758 		T15_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
14759 		if (T15_) goto LA16_;
14760 		T15_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
14761 		LA16_: ;
14762 		T3_ = !(T15_);
14763 		LA14_: ;
14764 		if (!T3_) goto LA17_;
14765 		T19_ = NIM_NIL;
14766 		T19_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_102), result);
14767 		result = amp___ropes_140(T19_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
14768 	}
14769 	LA17_: ;
14770 	return result;
14771 }
N_NIMCALL(void,genOpenArrayConv__cgen_18067)14772 N_LIB_PRIVATE N_NIMCALL(void, genOpenArrayConv__cgen_18067)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA d, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a) {
14773 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
14774 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T2_;
14775 	T1_ = NIM_NIL;
14776 	T1_ = t__cgen_79(a);
14777 	T2_ = NIM_NIL;
14778 	T2_ = skipTypes__ast_3735(T1_, TM__MQdRN7fpbG7rPm4JpVVAhA_357);
14779 	switch ((*T2_).kind) {
14780 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
14781 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
14782 	{
14783 		{
14784 			NIM_BOOL T6_;
14785 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T9_;
14786 			NimStringDesc* res;
14787 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
14788 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
14789 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
14790 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
14791 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
14792 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
14793 			T6_ = (NIM_BOOL)0;
14794 			T6_ = reifiedOpenArray__cgen_11738(a.lode);
14795 			if (!T6_) goto LA7_;
14796 			T9_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
14797 			T9_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
14798 			res = rawNewString(((NI) 80));
14799 			T10_ = NIM_NIL;
14800 			T10_ = rdLoc__cgen_425(d);
14801 			cgFormatValue__cgen_141((&res), T10_);
14802 			res = resizeString(res, 10);
14803 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_358));
14804 			T11_ = NIM_NIL;
14805 			T11_ = rdLoc__cgen_425(a);
14806 			cgFormatValue__cgen_141((&res), T11_);
14807 			res = resizeString(res, 9);
14808 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_359));
14809 			T12_ = NIM_NIL;
14810 			T12_ = rdLoc__cgen_425(d);
14811 			cgFormatValue__cgen_141((&res), T12_);
14812 			res = resizeString(res, 10);
14813 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_360));
14814 			T13_ = NIM_NIL;
14815 			T13_ = rdLoc__cgen_425(a);
14816 			cgFormatValue__cgen_141((&res), T13_);
14817 			res = resizeString(res, 8);
14818 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_361));
14819 			{
14820 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA16_;
14821 				res = resizeString(res, 1);
14822 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
14823 			}
14824 			LA16_: ;
14825 			T18_ = NIM_NIL;
14826 			T18_ = rope__ropes_109(res);
14827 			T19_ = NIM_NIL;
14828 			T19_ = indentLine__cgen_280(p, T18_);
14829 			add__ropes_159(T9_, T19_);
14830 		}
14831 		goto LA4_;
14832 		LA7_: ;
14833 		{
14834 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T21_;
14835 			NimStringDesc* res_2;
14836 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
14837 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
14838 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
14839 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
14840 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
14841 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
14842 			T21_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
14843 			T21_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
14844 			res_2 = rawNewString(((NI) 80));
14845 			T22_ = NIM_NIL;
14846 			T22_ = rdLoc__cgen_425(d);
14847 			cgFormatValue__cgen_141((&res_2), T22_);
14848 			res_2 = resizeString(res_2, 10);
14849 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_358));
14850 			T23_ = NIM_NIL;
14851 			T23_ = rdLoc__cgen_425(a);
14852 			cgFormatValue__cgen_141((&res_2), T23_);
14853 			res_2 = resizeString(res_2, 2);
14854 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
14855 			T24_ = NIM_NIL;
14856 			T24_ = rdLoc__cgen_425(d);
14857 			cgFormatValue__cgen_141((&res_2), T24_);
14858 			res_2 = resizeString(res_2, 10);
14859 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_360));
14860 			T25_ = NIM_NIL;
14861 			T25_ = rdLoc__cgen_425(a);
14862 			cgFormatValue__cgen_141((&res_2), T25_);
14863 			res_2 = resizeString(res_2, 6);
14864 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_362));
14865 			{
14866 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA28_;
14867 				res_2 = resizeString(res_2, 1);
14868 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
14869 			}
14870 			LA28_: ;
14871 			T30_ = NIM_NIL;
14872 			T30_ = rope__ropes_109(res_2);
14873 			T31_ = NIM_NIL;
14874 			T31_ = indentLine__cgen_280(p, T30_);
14875 			add__ropes_159(T21_, T31_);
14876 		}
14877 		LA4_: ;
14878 	}
14879 	break;
14880 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
14881 	{
14882 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T33_;
14883 		NimStringDesc* res_3;
14884 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
14885 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
14886 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
14887 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
14888 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
14889 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
14890 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
14891 		T33_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
14892 		T33_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
14893 		res_3 = rawNewString(((NI) 80));
14894 		T34_ = NIM_NIL;
14895 		T34_ = rdLoc__cgen_425(d);
14896 		cgFormatValue__cgen_141((&res_3), T34_);
14897 		res_3 = resizeString(res_3, 10);
14898 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_358));
14899 		T35_ = NIM_NIL;
14900 		T35_ = rdLoc__cgen_425(a);
14901 		cgFormatValue__cgen_141((&res_3), T35_);
14902 		T36_ = NIM_NIL;
14903 		T36_ = dataField__cgen_461(p);
14904 		cgFormatValue__cgen_141((&res_3), T36_);
14905 		res_3 = resizeString(res_3, 2);
14906 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
14907 		T37_ = NIM_NIL;
14908 		T37_ = rdLoc__cgen_425(d);
14909 		cgFormatValue__cgen_141((&res_3), T37_);
14910 		res_3 = resizeString(res_3, 10);
14911 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_360));
14912 		T38_ = NIM_NIL;
14913 		T38_ = lenExpr__cgen_448(p, a);
14914 		cgFormatValue__cgen_141((&res_3), T38_);
14915 		res_3 = resizeString(res_3, 1);
14916 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
14917 		{
14918 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA41_;
14919 			res_3 = resizeString(res_3, 1);
14920 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
14921 		}
14922 		LA41_: ;
14923 		T43_ = NIM_NIL;
14924 		T43_ = rope__ropes_109(res_3);
14925 		T44_ = NIM_NIL;
14926 		T44_ = indentLine__cgen_280(p, T43_);
14927 		add__ropes_159(T33_, T44_);
14928 	}
14929 	break;
14930 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
14931 	{
14932 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T46_;
14933 		NimStringDesc* res_4;
14934 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
14935 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
14936 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
14937 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T50_;
14938 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA T51_;
14939 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
14940 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
14941 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
14942 		T46_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
14943 		T46_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
14944 		res_4 = rawNewString(((NI) 80));
14945 		T47_ = NIM_NIL;
14946 		T47_ = rdLoc__cgen_425(d);
14947 		cgFormatValue__cgen_141((&res_4), T47_);
14948 		res_4 = resizeString(res_4, 10);
14949 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_358));
14950 		T48_ = NIM_NIL;
14951 		T48_ = rdLoc__cgen_425(a);
14952 		cgFormatValue__cgen_141((&res_4), T48_);
14953 		res_4 = resizeString(res_4, 2);
14954 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
14955 		T49_ = NIM_NIL;
14956 		T49_ = rdLoc__cgen_425(d);
14957 		cgFormatValue__cgen_141((&res_4), T49_);
14958 		res_4 = resizeString(res_4, 10);
14959 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_360));
14960 		T50_ = NIM_NIL;
14961 		T50_ = t__cgen_79(a);
14962 		T51_ = lengthOrd__types_1652((*(*(*p).module).g).config, T50_);
14963 		T52_ = NIM_NIL;
14964 		T52_ = rope__cgen_6918(T51_);
14965 		cgFormatValue__cgen_141((&res_4), T52_);
14966 		res_4 = resizeString(res_4, 1);
14967 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
14968 		{
14969 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA55_;
14970 			res_4 = resizeString(res_4, 1);
14971 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
14972 		}
14973 		LA55_: ;
14974 		T57_ = NIM_NIL;
14975 		T57_ = rope__ropes_109(res_4);
14976 		T58_ = NIM_NIL;
14977 		T58_ = indentLine__cgen_280(p, T57_);
14978 		add__ropes_159(T46_, T58_);
14979 	}
14980 	break;
14981 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
14982 	{
14983 		tyObject_TType__facALICuu8zUj0hjvbTLFg* etyp;
14984 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T60_;
14985 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T76_;
14986 		NimStringDesc* res_6;
14987 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T77_;
14988 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T78_;
14989 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T79_;
14990 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T80_;
14991 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
14992 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T86_;
14993 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T87_;
14994 		T60_ = NIM_NIL;
14995 		T60_ = t__cgen_79(a);
14996 		etyp = skipTypes__ast_3735(T60_, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
14997 		{
14998 			NIM_BOOL T63_;
14999 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T67_;
15000 			NimStringDesc* res_5;
15001 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
15002 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
15003 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T74_;
15004 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T75_;
15005 			T63_ = (NIM_BOOL)0;
15006 			T63_ = ((*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
15007 			if (!(T63_)) goto LA64_;
15008 			T63_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0);
15009 			LA64_: ;
15010 			if (!T63_) goto LA65_;
15011 			T67_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15012 			T67_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15013 			res_5 = rawNewString(((NI) 80));
15014 			T68_ = NIM_NIL;
15015 			T68_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_363));
15016 			cgFormatValue__cgen_141((&res_5), T68_);
15017 			res_5 = resizeString(res_5, 1);
15018 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
15019 			T69_ = NIM_NIL;
15020 			T69_ = byRefLoc__cgen_10319(p, a);
15021 			cgFormatValue__cgen_141((&res_5), T69_);
15022 			res_5 = resizeString(res_5, 2);
15023 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
15024 			{
15025 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA72_;
15026 				res_5 = resizeString(res_5, 1);
15027 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15028 			}
15029 			LA72_: ;
15030 			T74_ = NIM_NIL;
15031 			T74_ = rope__ropes_109(res_5);
15032 			T75_ = NIM_NIL;
15033 			T75_ = indentLine__cgen_280(p, T74_);
15034 			add__ropes_159(T67_, T75_);
15035 		}
15036 		LA65_: ;
15037 		T76_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15038 		T76_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15039 		res_6 = rawNewString(((NI) 80));
15040 		T77_ = NIM_NIL;
15041 		T77_ = rdLoc__cgen_425(d);
15042 		cgFormatValue__cgen_141((&res_6), T77_);
15043 		res_6 = resizeString(res_6, 10);
15044 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_358));
15045 		T78_ = NIM_NIL;
15046 		T78_ = rdLoc__cgen_425(a);
15047 		cgFormatValue__cgen_141((&res_6), T78_);
15048 		T79_ = NIM_NIL;
15049 		T79_ = dataField__cgen_461(p);
15050 		cgFormatValue__cgen_141((&res_6), T79_);
15051 		res_6 = resizeString(res_6, 2);
15052 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
15053 		T80_ = NIM_NIL;
15054 		T80_ = rdLoc__cgen_425(d);
15055 		cgFormatValue__cgen_141((&res_6), T80_);
15056 		res_6 = resizeString(res_6, 10);
15057 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_360));
15058 		T81_ = NIM_NIL;
15059 		T81_ = lenExpr__cgen_448(p, a);
15060 		cgFormatValue__cgen_141((&res_6), T81_);
15061 		res_6 = resizeString(res_6, 1);
15062 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
15063 		{
15064 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA84_;
15065 			res_6 = resizeString(res_6, 1);
15066 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15067 		}
15068 		LA84_: ;
15069 		T86_ = NIM_NIL;
15070 		T86_ = rope__ropes_109(res_6);
15071 		T87_ = NIM_NIL;
15072 		T87_ = indentLine__cgen_280(p, T86_);
15073 		add__ropes_159(T76_, T87_);
15074 	}
15075 	break;
15076 	default:
15077 	{
15078 		NimStringDesc* T89_;
15079 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T90_;
15080 		T89_ = NIM_NIL;
15081 		T90_ = NIM_NIL;
15082 		T90_ = t__cgen_79(a);
15083 		T89_ = rawNewString((reprEnum((NI)(*T90_).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*T90_).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 14);
15084 appendString(T89_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_364));
15085 appendString(T89_, reprEnum((NI)(*T90_).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
15086 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*a.lode).info, T89_, TM__MQdRN7fpbG7rPm4JpVVAhA_365);
15087 	}
15088 	break;
15089 	}
15090 }
N_INLINE(NI,toLinenumber__msgs_609)15091 static N_INLINE(NI, toLinenumber__msgs_609)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
15092 	NI result;
15093 	result = (NI)0;
15094 	result = ((NI) (info.line));
15095 	return result;
15096 }
N_NIMCALL(NI,safeLineNm__cgen_331)15097 N_LIB_PRIVATE N_NIMCALL(NI, safeLineNm__cgen_331)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
15098 	NI result;
15099 	result = (NI)0;
15100 	result = toLinenumber__msgs_609(info);
15101 	{
15102 		if (!(result < ((NI) 0))) goto LA3_;
15103 		result = ((NI) 0);
15104 	}
15105 	LA3_: ;
15106 	return result;
15107 }
N_NIMCALL(void,genAssignment__cgen_10369)15108 N_LIB_PRIVATE N_NIMCALL(void, genAssignment__cgen_10369)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src, tySet_tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw flags) {
15109 	tyObject_TType__facALICuu8zUj0hjvbTLFg* ty;
15110 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T18_;
15111 {	{
15112 		NIM_BOOL T3_;
15113 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T4_;
15114 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
15115 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T9_;
15116 		NimStringDesc* res;
15117 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
15118 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
15119 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
15120 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
15121 		T3_ = (NIM_BOOL)0;
15122 		T4_ = NIM_NIL;
15123 		T4_ = t__cgen_79(src);
15124 		T3_ = !((T4_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
15125 		if (!(T3_)) goto LA5_;
15126 		T6_ = NIM_NIL;
15127 		T6_ = t__cgen_79(src);
15128 		T3_ = ((*T6_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21));
15129 		LA5_: ;
15130 		if (!T3_) goto LA7_;
15131 		T9_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15132 		T9_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15133 		res = rawNewString(((NI) 80));
15134 		T10_ = NIM_NIL;
15135 		T10_ = rdLoc__cgen_425(dest);
15136 		cgFormatValue__cgen_141((&res), T10_);
15137 		res = resizeString(res, 3);
15138 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
15139 		T11_ = NIM_NIL;
15140 		T11_ = rdLoc__cgen_425(src);
15141 		cgFormatValue__cgen_141((&res), T11_);
15142 		res = resizeString(res, 1);
15143 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
15144 		{
15145 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA14_;
15146 			res = resizeString(res, 1);
15147 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15148 		}
15149 		LA14_: ;
15150 		T16_ = NIM_NIL;
15151 		T16_ = rope__ropes_109(res);
15152 		T17_ = NIM_NIL;
15153 		T17_ = indentLine__cgen_280(p, T16_);
15154 		add__ropes_159(T9_, T17_);
15155 		goto BeforeRet_;
15156 	}
15157 	LA7_: ;
15158 	T18_ = NIM_NIL;
15159 	T18_ = t__cgen_79(dest);
15160 	ty = skipTypes__ast_3735(T18_, TM__MQdRN7fpbG7rPm4JpVVAhA_341);
15161 	switch ((*ty).kind) {
15162 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
15163 	{
15164 		genRefAssign__cgen_10547(p, dest, src);
15165 	}
15166 	break;
15167 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
15168 	{
15169 		{
15170 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA23_;
15171 			genGenericAsgn__cgen_17989(p, dest, src, flags);
15172 		}
15173 		goto LA21_;
15174 		LA23_: ;
15175 		{
15176 			NIM_BOOL T26_;
15177 			NIM_BOOL T27_;
15178 			T26_ = (NIM_BOOL)0;
15179 			T27_ = (NIM_BOOL)0;
15180 			T27_ = !(((flags &((NU8)1<<((NU)(((tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw) 0))&7U)))!=0));
15181 			if (!(T27_)) goto LA28_;
15182 			T27_ = !((src.storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1)));
15183 			LA28_: ;
15184 			T26_ = T27_;
15185 			if (T26_) goto LA29_;
15186 			T26_ = canMove__cgen_17802(p, src.lode, dest);
15187 			LA29_: ;
15188 			if (!T26_) goto LA30_;
15189 			genRefAssign__cgen_10547(p, dest, src);
15190 		}
15191 		goto LA21_;
15192 		LA30_: ;
15193 		{
15194 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T33_;
15195 			NimStringDesc* res_2;
15196 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
15197 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
15198 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
15199 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T37_;
15200 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
15201 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
15202 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
15203 			T33_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15204 			T33_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15205 			res_2 = rawNewString(((NI) 80));
15206 			T34_ = NIM_NIL;
15207 			T34_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_346));
15208 			cgFormatValue__cgen_141((&res_2), T34_);
15209 			res_2 = resizeString(res_2, 1);
15210 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
15211 			T35_ = NIM_NIL;
15212 			T35_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
15213 			cgFormatValue__cgen_141((&res_2), T35_);
15214 			res_2 = resizeString(res_2, 2);
15215 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
15216 			T36_ = NIM_NIL;
15217 			T36_ = rdLoc__cgen_425(src);
15218 			cgFormatValue__cgen_141((&res_2), T36_);
15219 			res_2 = resizeString(res_2, 2);
15220 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
15221 			T37_ = NIM_NIL;
15222 			T37_ = t__cgen_79(dest);
15223 			T38_ = NIM_NIL;
15224 			T38_ = genTypeInfoV1__cgen_6768((*p).module, T37_, (*dest.lode).info);
15225 			cgFormatValue__cgen_141((&res_2), T38_);
15226 			res_2 = resizeString(res_2, 2);
15227 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
15228 			{
15229 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA41_;
15230 				res_2 = resizeString(res_2, 1);
15231 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15232 			}
15233 			LA41_: ;
15234 			T43_ = NIM_NIL;
15235 			T43_ = rope__ropes_109(res_2);
15236 			T44_ = NIM_NIL;
15237 			T44_ = indentLine__cgen_280(p, T43_);
15238 			add__ropes_159(T33_, T44_);
15239 		}
15240 		LA21_: ;
15241 	}
15242 	break;
15243 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
15244 	{
15245 		{
15246 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA48_;
15247 			genGenericAsgn__cgen_17989(p, dest, src, flags);
15248 		}
15249 		goto LA46_;
15250 		LA48_: ;
15251 		{
15252 			NIM_BOOL T51_;
15253 			NIM_BOOL T52_;
15254 			T51_ = (NIM_BOOL)0;
15255 			T52_ = (NIM_BOOL)0;
15256 			T52_ = !(((flags &((NU8)1<<((NU)(((tyEnum_TAssignmentFlag__Kd9aFyBNhxSsWFh1Km9a2hMw) 0))&7U)))!=0));
15257 			if (!(T52_)) goto LA53_;
15258 			T52_ = !((src.storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1)));
15259 			LA53_: ;
15260 			T51_ = T52_;
15261 			if (T51_) goto LA54_;
15262 			T51_ = canMove__cgen_17802(p, src.lode, dest);
15263 			LA54_: ;
15264 			if (!T51_) goto LA55_;
15265 			genRefAssign__cgen_10547(p, dest, src);
15266 		}
15267 		goto LA46_;
15268 		LA55_: ;
15269 		{
15270 			{
15271 				NIM_BOOL T60_;
15272 				NIM_BOOL T61_;
15273 				NIM_BOOL T64_;
15274 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T67_;
15275 				NimStringDesc* res_3;
15276 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
15277 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
15278 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
15279 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T75_;
15280 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T76_;
15281 				T60_ = (NIM_BOOL)0;
15282 				T61_ = (NIM_BOOL)0;
15283 				T61_ = (dest.storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
15284 				if (!(T61_)) goto LA62_;
15285 				T61_ = !(((*(*(*(*p).module).g).config).selectedGC == ((tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw) 10)));
15286 				LA62_: ;
15287 				T60_ = T61_;
15288 				if (T60_) goto LA63_;
15289 				T64_ = (NIM_BOOL)0;
15290 				T64_ = usesWriteBarrier__options_3998((*(*(*p).module).g).config);
15291 				T60_ = !(T64_);
15292 				LA63_: ;
15293 				if (!T60_) goto LA65_;
15294 				T67_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15295 				T67_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15296 				res_3 = rawNewString(((NI) 80));
15297 				T68_ = NIM_NIL;
15298 				T68_ = rdLoc__cgen_425(dest);
15299 				cgFormatValue__cgen_141((&res_3), T68_);
15300 				res_3 = resizeString(res_3, 3);
15301 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
15302 				T69_ = NIM_NIL;
15303 				T69_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_347));
15304 				cgFormatValue__cgen_141((&res_3), T69_);
15305 				res_3 = resizeString(res_3, 1);
15306 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
15307 				T70_ = NIM_NIL;
15308 				T70_ = rdLoc__cgen_425(src);
15309 				cgFormatValue__cgen_141((&res_3), T70_);
15310 				res_3 = resizeString(res_3, 2);
15311 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
15312 				{
15313 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA73_;
15314 					res_3 = resizeString(res_3, 1);
15315 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15316 				}
15317 				LA73_: ;
15318 				T75_ = NIM_NIL;
15319 				T75_ = rope__ropes_109(res_3);
15320 				T76_ = NIM_NIL;
15321 				T76_ = indentLine__cgen_280(p, T75_);
15322 				add__ropes_159(T67_, T76_);
15323 			}
15324 			goto LA58_;
15325 			LA65_: ;
15326 			{
15327 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
15328 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T80_;
15329 				NimStringDesc* res_4;
15330 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
15331 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T82_;
15332 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T83_;
15333 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T84_;
15334 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T85_;
15335 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T90_;
15336 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T91_;
15337 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T92_;
15338 				NimStringDesc* res_5;
15339 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T93_;
15340 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T94_;
15341 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T95_;
15342 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T100_;
15343 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T101_;
15344 				if (!(dest.storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3))) goto LA78_;
15345 				nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
15346 				getTemp__cgen_7343(p, ty, (&tmp), NIM_FALSE);
15347 				T80_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15348 				T80_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15349 				res_4 = rawNewString(((NI) 80));
15350 				T81_ = NIM_NIL;
15351 				T81_ = rdLoc__cgen_425(tmp);
15352 				cgFormatValue__cgen_141((&res_4), T81_);
15353 				res_4 = resizeString(res_4, 3);
15354 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
15355 				T82_ = NIM_NIL;
15356 				T82_ = rdLoc__cgen_425(dest);
15357 				cgFormatValue__cgen_141((&res_4), T82_);
15358 				res_4 = resizeString(res_4, 2);
15359 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
15360 				T83_ = NIM_NIL;
15361 				T83_ = rdLoc__cgen_425(dest);
15362 				cgFormatValue__cgen_141((&res_4), T83_);
15363 				res_4 = resizeString(res_4, 3);
15364 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
15365 				T84_ = NIM_NIL;
15366 				T84_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_348));
15367 				cgFormatValue__cgen_141((&res_4), T84_);
15368 				res_4 = resizeString(res_4, 1);
15369 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
15370 				T85_ = NIM_NIL;
15371 				T85_ = rdLoc__cgen_425(src);
15372 				cgFormatValue__cgen_141((&res_4), T85_);
15373 				res_4 = resizeString(res_4, 2);
15374 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
15375 				{
15376 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA88_;
15377 					res_4 = resizeString(res_4, 1);
15378 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15379 				}
15380 				LA88_: ;
15381 				T90_ = NIM_NIL;
15382 				T90_ = rope__ropes_109(res_4);
15383 				T91_ = NIM_NIL;
15384 				T91_ = indentLine__cgen_280(p, T90_);
15385 				add__ropes_159(T80_, T91_);
15386 				T92_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15387 				T92_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15388 				res_5 = rawNewString(((NI) 80));
15389 				res_5 = resizeString(res_5, 4);
15390 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
15391 				T93_ = NIM_NIL;
15392 				T93_ = rdLoc__cgen_425(tmp);
15393 				cgFormatValue__cgen_141((&res_5), T93_);
15394 				res_5 = resizeString(res_5, 2);
15395 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
15396 				T94_ = NIM_NIL;
15397 				T94_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_351));
15398 				cgFormatValue__cgen_141((&res_5), T94_);
15399 				res_5 = resizeString(res_5, 1);
15400 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
15401 				T95_ = NIM_NIL;
15402 				T95_ = rdLoc__cgen_425(tmp);
15403 				cgFormatValue__cgen_141((&res_5), T95_);
15404 				res_5 = resizeString(res_5, 2);
15405 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
15406 				{
15407 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA98_;
15408 					res_5 = resizeString(res_5, 1);
15409 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15410 				}
15411 				LA98_: ;
15412 				T100_ = NIM_NIL;
15413 				T100_ = rope__ropes_109(res_5);
15414 				T101_ = NIM_NIL;
15415 				T101_ = indentLine__cgen_280(p, T100_);
15416 				add__ropes_159(T92_, T101_);
15417 			}
15418 			goto LA58_;
15419 			LA78_: ;
15420 			{
15421 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T103_;
15422 				NimStringDesc* res_6;
15423 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T104_;
15424 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T105_;
15425 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T106_;
15426 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T107_;
15427 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T112_;
15428 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T113_;
15429 				T103_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15430 				T103_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15431 				res_6 = rawNewString(((NI) 80));
15432 				T104_ = NIM_NIL;
15433 				T104_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_104));
15434 				cgFormatValue__cgen_141((&res_6), T104_);
15435 				res_6 = resizeString(res_6, 10);
15436 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_101));
15437 				T105_ = NIM_NIL;
15438 				T105_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
15439 				cgFormatValue__cgen_141((&res_6), T105_);
15440 				res_6 = resizeString(res_6, 2);
15441 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
15442 				T106_ = NIM_NIL;
15443 				T106_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_347));
15444 				cgFormatValue__cgen_141((&res_6), T106_);
15445 				res_6 = resizeString(res_6, 1);
15446 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
15447 				T107_ = NIM_NIL;
15448 				T107_ = rdLoc__cgen_425(src);
15449 				cgFormatValue__cgen_141((&res_6), T107_);
15450 				res_6 = resizeString(res_6, 3);
15451 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
15452 				{
15453 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA110_;
15454 					res_6 = resizeString(res_6, 1);
15455 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15456 				}
15457 				LA110_: ;
15458 				T112_ = NIM_NIL;
15459 				T112_ = rope__ropes_109(res_6);
15460 				T113_ = NIM_NIL;
15461 				T113_ = indentLine__cgen_280(p, T112_);
15462 				add__ropes_159(T103_, T113_);
15463 			}
15464 			LA58_: ;
15465 		}
15466 		LA46_: ;
15467 	}
15468 	break;
15469 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25):
15470 	{
15471 		{
15472 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T117_;
15473 			NIM_BOOL T118_;
15474 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
15475 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T121_;
15476 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T122_;
15477 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T123_;
15478 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
15479 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T124_;
15480 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T125_;
15481 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T126_;
15482 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T127_;
15483 			NimStringDesc* res_7;
15484 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T128_;
15485 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T129_;
15486 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T134_;
15487 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T135_;
15488 			T117_ = NIM_NIL;
15489 			T117_ = t__cgen_79(dest);
15490 			T118_ = (NIM_BOOL)0;
15491 			T118_ = containsGarbageCollectedRef__types_612(T117_);
15492 			if (!T118_) goto LA119_;
15493 			nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
15494 			T121_ = NIM_NIL;
15495 			T121_ = t__cgen_79(dest);
15496 			T122_ = NIM_NIL;
15497 			T122_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_352));
15498 			nimZeroMem((void*)(&T123_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
15499 			optAsgnLoc__cgen_17893(dest, T121_, T122_, (&T123_));
15500 			nimCopyMem((void*)(&a), (NIM_CONST void*)(&T123_), sizeof(a));
15501 			nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
15502 			T124_ = NIM_NIL;
15503 			T124_ = t__cgen_79(dest);
15504 			T125_ = NIM_NIL;
15505 			T125_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_352));
15506 			nimZeroMem((void*)(&T126_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
15507 			optAsgnLoc__cgen_17893(src, T124_, T125_, (&T126_));
15508 			nimCopyMem((void*)(&b), (NIM_CONST void*)(&T126_), sizeof(b));
15509 			genRefAssign__cgen_10547(p, a, b);
15510 			T127_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15511 			T127_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15512 			res_7 = rawNewString(((NI) 80));
15513 			T128_ = NIM_NIL;
15514 			T128_ = rdLoc__cgen_425(dest);
15515 			cgFormatValue__cgen_141((&res_7), T128_);
15516 			res_7 = resizeString(res_7, 9);
15517 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_353));
15518 			T129_ = NIM_NIL;
15519 			T129_ = rdLoc__cgen_425(src);
15520 			cgFormatValue__cgen_141((&res_7), T129_);
15521 			res_7 = resizeString(res_7, 7);
15522 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_354));
15523 			{
15524 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA132_;
15525 				res_7 = resizeString(res_7, 1);
15526 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15527 			}
15528 			LA132_: ;
15529 			T134_ = NIM_NIL;
15530 			T134_ = rope__ropes_109(res_7);
15531 			T135_ = NIM_NIL;
15532 			T135_ = indentLine__cgen_280(p, T134_);
15533 			add__ropes_159(T127_, T135_);
15534 		}
15535 		goto LA115_;
15536 		LA119_: ;
15537 		{
15538 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T137_;
15539 			NimStringDesc* res_8;
15540 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T138_;
15541 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T139_;
15542 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T144_;
15543 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T145_;
15544 			T137_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15545 			T137_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15546 			res_8 = rawNewString(((NI) 80));
15547 			T138_ = NIM_NIL;
15548 			T138_ = rdLoc__cgen_425(dest);
15549 			cgFormatValue__cgen_141((&res_8), T138_);
15550 			res_8 = resizeString(res_8, 3);
15551 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
15552 			T139_ = NIM_NIL;
15553 			T139_ = rdLoc__cgen_425(src);
15554 			cgFormatValue__cgen_141((&res_8), T139_);
15555 			res_8 = resizeString(res_8, 1);
15556 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
15557 			{
15558 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA142_;
15559 				res_8 = resizeString(res_8, 1);
15560 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15561 			}
15562 			LA142_: ;
15563 			T144_ = NIM_NIL;
15564 			T144_ = rope__ropes_109(res_8);
15565 			T145_ = NIM_NIL;
15566 			T145_ = indentLine__cgen_280(p, T144_);
15567 			add__ropes_159(T137_, T145_);
15568 		}
15569 		LA115_: ;
15570 	}
15571 	break;
15572 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
15573 	{
15574 		{
15575 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T149_;
15576 			NIM_BOOL T150_;
15577 			T149_ = NIM_NIL;
15578 			T149_ = t__cgen_79(dest);
15579 			T150_ = (NIM_BOOL)0;
15580 			T150_ = containsGarbageCollectedRef__types_612(T149_);
15581 			if (!T150_) goto LA151_;
15582 			{
15583 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T155_;
15584 				NI T156_;
15585 				T155_ = NIM_NIL;
15586 				T155_ = t__cgen_79(dest);
15587 				T156_ = (NI)0;
15588 				T156_ = len__ast_4002(T155_);
15589 				if (!(T156_ <= ((NI) 4))) goto LA157_;
15590 				genOptAsgnTuple__cgen_17905(p, dest, src, flags);
15591 			}
15592 			goto LA153_;
15593 			LA157_: ;
15594 			{
15595 				genGenericAsgn__cgen_17989(p, dest, src, flags);
15596 			}
15597 			LA153_: ;
15598 		}
15599 		goto LA147_;
15600 		LA151_: ;
15601 		{
15602 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T161_;
15603 			NimStringDesc* res_9;
15604 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T162_;
15605 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T163_;
15606 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T168_;
15607 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T169_;
15608 			T161_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15609 			T161_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15610 			res_9 = rawNewString(((NI) 80));
15611 			T162_ = NIM_NIL;
15612 			T162_ = rdLoc__cgen_425(dest);
15613 			cgFormatValue__cgen_141((&res_9), T162_);
15614 			res_9 = resizeString(res_9, 3);
15615 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
15616 			T163_ = NIM_NIL;
15617 			T163_ = rdLoc__cgen_425(src);
15618 			cgFormatValue__cgen_141((&res_9), T163_);
15619 			res_9 = resizeString(res_9, 1);
15620 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
15621 			{
15622 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA166_;
15623 				res_9 = resizeString(res_9, 1);
15624 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15625 			}
15626 			LA166_: ;
15627 			T168_ = NIM_NIL;
15628 			T168_ = rope__ropes_109(res_9);
15629 			T169_ = NIM_NIL;
15630 			T169_ = indentLine__cgen_280(p, T168_);
15631 			add__ropes_159(T161_, T169_);
15632 		}
15633 		LA147_: ;
15634 	}
15635 	break;
15636 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
15637 	{
15638 		{
15639 			NIM_BOOL T173_;
15640 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T176_;
15641 			NimStringDesc* res_10;
15642 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T177_;
15643 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T178_;
15644 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T183_;
15645 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T184_;
15646 			T173_ = (NIM_BOOL)0;
15647 			T173_ = isImportedCppType__cgen_1294(ty);
15648 			if (!T173_) goto LA174_;
15649 			T176_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15650 			T176_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15651 			res_10 = rawNewString(((NI) 80));
15652 			T177_ = NIM_NIL;
15653 			T177_ = rdLoc__cgen_425(dest);
15654 			cgFormatValue__cgen_141((&res_10), T177_);
15655 			res_10 = resizeString(res_10, 3);
15656 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
15657 			T178_ = NIM_NIL;
15658 			T178_ = rdLoc__cgen_425(src);
15659 			cgFormatValue__cgen_141((&res_10), T178_);
15660 			res_10 = resizeString(res_10, 1);
15661 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
15662 			{
15663 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA181_;
15664 				res_10 = resizeString(res_10, 1);
15665 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15666 			}
15667 			LA181_: ;
15668 			T183_ = NIM_NIL;
15669 			T183_ = rope__ropes_109(res_10);
15670 			T184_ = NIM_NIL;
15671 			T184_ = indentLine__cgen_280(p, T183_);
15672 			add__ropes_159(T176_, T184_);
15673 		}
15674 		goto LA171_;
15675 		LA174_: ;
15676 		{
15677 			NIM_BOOL T186_;
15678 			T186_ = (NIM_BOOL)0;
15679 			T186_ = isObjLackingTypeField__cgen_1319(ty);
15680 			if (!!(T186_)) goto LA187_;
15681 			genGenericAsgn__cgen_17989(p, dest, src, flags);
15682 		}
15683 		goto LA171_;
15684 		LA187_: ;
15685 		{
15686 			NIM_BOOL T190_;
15687 			T190_ = (NIM_BOOL)0;
15688 			T190_ = containsGarbageCollectedRef__types_612(ty);
15689 			if (!T190_) goto LA191_;
15690 			{
15691 				NIM_BOOL T195_;
15692 				NI T197_;
15693 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T200_;
15694 				T195_ = (NIM_BOOL)0;
15695 				T195_ = ((*ty).sons->data[((NI) 0)] == 0);
15696 				if (!(T195_)) goto LA196_;
15697 				T197_ = (NI)0;
15698 				T197_ = asgnComplexity__cgen_17881((*ty).n);
15699 				T195_ = (T197_ <= ((NI) 4));
15700 				LA196_: ;
15701 				if (!T195_) goto LA198_;
15702 				T200_ = NIM_NIL;
15703 				T200_ = getTypeDesc__cgen_6631((*p).module, ty, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
15704 				(void)(T200_);
15705 				{
15706 					NimStringDesc* argX60gensym3437_;
15707 					if (!!(!(((*ty).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))))) goto LA203_;
15708 					argX60gensym3437_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_356);
15709 					internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, argX60gensym3437_, TM__MQdRN7fpbG7rPm4JpVVAhA_356);
15710 				}
15711 				LA203_: ;
15712 				genOptAsgnObject__cgen_17955(p, dest, src, flags, (*ty).n, ty);
15713 			}
15714 			goto LA193_;
15715 			LA198_: ;
15716 			{
15717 				genGenericAsgn__cgen_17989(p, dest, src, flags);
15718 			}
15719 			LA193_: ;
15720 		}
15721 		goto LA171_;
15722 		LA191_: ;
15723 		{
15724 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T207_;
15725 			NimStringDesc* res_11;
15726 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T208_;
15727 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T209_;
15728 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T214_;
15729 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T215_;
15730 			T207_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15731 			T207_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15732 			res_11 = rawNewString(((NI) 80));
15733 			T208_ = NIM_NIL;
15734 			T208_ = rdLoc__cgen_425(dest);
15735 			cgFormatValue__cgen_141((&res_11), T208_);
15736 			res_11 = resizeString(res_11, 3);
15737 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
15738 			T209_ = NIM_NIL;
15739 			T209_ = rdLoc__cgen_425(src);
15740 			cgFormatValue__cgen_141((&res_11), T209_);
15741 			res_11 = resizeString(res_11, 1);
15742 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
15743 			{
15744 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA212_;
15745 				res_11 = resizeString(res_11, 1);
15746 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15747 			}
15748 			LA212_: ;
15749 			T214_ = NIM_NIL;
15750 			T214_ = rope__ropes_109(res_11);
15751 			T215_ = NIM_NIL;
15752 			T215_ = indentLine__cgen_280(p, T214_);
15753 			add__ropes_159(T207_, T215_);
15754 		}
15755 		LA171_: ;
15756 	}
15757 	break;
15758 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
15759 	{
15760 		{
15761 			NIM_BOOL T219_;
15762 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T220_;
15763 			T219_ = (NIM_BOOL)0;
15764 			T220_ = NIM_NIL;
15765 			T220_ = t__cgen_79(dest);
15766 			T219_ = containsGarbageCollectedRef__types_612(T220_);
15767 			if (!(T219_)) goto LA221_;
15768 			T219_ = !(((176 &((NU16)1<<((NU)((*(*(*(*p).module).g).config).selectedGC)&15U)))!=0));
15769 			LA221_: ;
15770 			if (!T219_) goto LA222_;
15771 			genGenericAsgn__cgen_17989(p, dest, src, flags);
15772 		}
15773 		goto LA217_;
15774 		LA222_: ;
15775 		{
15776 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T225_;
15777 			NimStringDesc* res_12;
15778 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T226_;
15779 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T227_;
15780 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T228_;
15781 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T229_;
15782 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T230_;
15783 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T235_;
15784 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T236_;
15785 			T225_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15786 			T225_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15787 			res_12 = rawNewString(((NI) 80));
15788 			T226_ = NIM_NIL;
15789 			T226_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_339));
15790 			cgFormatValue__cgen_141((&res_12), T226_);
15791 			res_12 = resizeString(res_12, 8);
15792 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
15793 			T227_ = NIM_NIL;
15794 			T227_ = rdLoc__cgen_425(dest);
15795 			cgFormatValue__cgen_141((&res_12), T227_);
15796 			res_12 = resizeString(res_12, 19);
15797 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_342));
15798 			T228_ = NIM_NIL;
15799 			T228_ = rdLoc__cgen_425(src);
15800 			cgFormatValue__cgen_141((&res_12), T228_);
15801 			res_12 = resizeString(res_12, 9);
15802 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
15803 			T229_ = NIM_NIL;
15804 			T229_ = t__cgen_79(dest);
15805 			T230_ = NIM_NIL;
15806 			T230_ = getTypeDesc__cgen_6631((*p).module, T229_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
15807 			cgFormatValue__cgen_141((&res_12), T230_);
15808 			res_12 = resizeString(res_12, 3);
15809 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
15810 			{
15811 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA233_;
15812 				res_12 = resizeString(res_12, 1);
15813 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15814 			}
15815 			LA233_: ;
15816 			T235_ = NIM_NIL;
15817 			T235_ = rope__ropes_109(res_12);
15818 			T236_ = NIM_NIL;
15819 			T236_ = indentLine__cgen_280(p, T235_);
15820 			add__ropes_159(T225_, T236_);
15821 		}
15822 		LA217_: ;
15823 	}
15824 	break;
15825 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
15826 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
15827 	{
15828 		{
15829 			NIM_BOOL T240_;
15830 			T240_ = (NIM_BOOL)0;
15831 			T240_ = reifiedOpenArray__cgen_11738(dest.lode);
15832 			if (!T240_) goto LA241_;
15833 			genOpenArrayConv__cgen_18067(p, dest, src);
15834 		}
15835 		goto LA238_;
15836 		LA241_: ;
15837 		{
15838 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T244_;
15839 			NIM_BOOL T245_;
15840 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T248_;
15841 			NimStringDesc* res_13;
15842 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T249_;
15843 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T250_;
15844 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T251_;
15845 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T252_;
15846 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T253_;
15847 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T254_;
15848 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T259_;
15849 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T260_;
15850 			T244_ = NIM_NIL;
15851 			T244_ = t__cgen_79(dest);
15852 			T245_ = (NIM_BOOL)0;
15853 			T245_ = containsGarbageCollectedRef__types_612(T244_);
15854 			if (!T245_) goto LA246_;
15855 			T248_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15856 			T248_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15857 			res_13 = rawNewString(((NI) 80));
15858 			T249_ = NIM_NIL;
15859 			T249_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_366));
15860 			cgFormatValue__cgen_141((&res_13), T249_);
15861 			res_13 = resizeString(res_13, 8);
15862 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
15863 			T250_ = NIM_NIL;
15864 			T250_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
15865 			cgFormatValue__cgen_141((&res_13), T250_);
15866 			res_13 = resizeString(res_13, 9);
15867 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_344));
15868 			T251_ = NIM_NIL;
15869 			T251_ = addrLoc__cgen_10303((*(*(*p).module).g).config, src);
15870 			cgFormatValue__cgen_141((&res_13), T251_);
15871 			res_13 = resizeString(res_13, 2);
15872 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
15873 			T252_ = NIM_NIL;
15874 			T252_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
15875 			cgFormatValue__cgen_141((&res_13), T252_);
15876 			res_13 = resizeString(res_13, 7);
15877 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_367));
15878 			T253_ = NIM_NIL;
15879 			T253_ = t__cgen_79(dest);
15880 			T254_ = NIM_NIL;
15881 			T254_ = genTypeInfoV1__cgen_6768((*p).module, T253_, (*dest.lode).info);
15882 			cgFormatValue__cgen_141((&res_13), T254_);
15883 			res_13 = resizeString(res_13, 2);
15884 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
15885 			{
15886 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA257_;
15887 				res_13 = resizeString(res_13, 1);
15888 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15889 			}
15890 			LA257_: ;
15891 			T259_ = NIM_NIL;
15892 			T259_ = rope__ropes_109(res_13);
15893 			T260_ = NIM_NIL;
15894 			T260_ = indentLine__cgen_280(p, T259_);
15895 			add__ropes_159(T248_, T260_);
15896 		}
15897 		goto LA238_;
15898 		LA246_: ;
15899 		{
15900 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T262_;
15901 			NimStringDesc* res_14;
15902 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T263_;
15903 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T264_;
15904 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T269_;
15905 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T270_;
15906 			T262_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15907 			T262_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15908 			res_14 = rawNewString(((NI) 80));
15909 			T263_ = NIM_NIL;
15910 			T263_ = rdLoc__cgen_425(dest);
15911 			cgFormatValue__cgen_141((&res_14), T263_);
15912 			res_14 = resizeString(res_14, 3);
15913 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
15914 			T264_ = NIM_NIL;
15915 			T264_ = rdLoc__cgen_425(src);
15916 			cgFormatValue__cgen_141((&res_14), T264_);
15917 			res_14 = resizeString(res_14, 1);
15918 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
15919 			{
15920 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA267_;
15921 				res_14 = resizeString(res_14, 1);
15922 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15923 			}
15924 			LA267_: ;
15925 			T269_ = NIM_NIL;
15926 			T269_ = rope__ropes_109(res_14);
15927 			T270_ = NIM_NIL;
15928 			T270_ = indentLine__cgen_280(p, T269_);
15929 			add__ropes_159(T262_, T270_);
15930 		}
15931 		LA238_: ;
15932 	}
15933 	break;
15934 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
15935 	{
15936 		{
15937 			tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T274_;
15938 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T277_;
15939 			NimStringDesc* res_15;
15940 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T278_;
15941 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T279_;
15942 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T280_;
15943 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T281_;
15944 			NI64 T282_;
15945 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T287_;
15946 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T288_;
15947 			T274_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
15948 			T274_ = mapSetType__cgen_1205((*(*(*p).module).g).config, ty);
15949 			if (!(T274_ == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17))) goto LA275_;
15950 			T277_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15951 			T277_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15952 			res_15 = rawNewString(((NI) 80));
15953 			T278_ = NIM_NIL;
15954 			T278_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_339));
15955 			cgFormatValue__cgen_141((&res_15), T278_);
15956 			res_15 = resizeString(res_15, 8);
15957 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
15958 			T279_ = NIM_NIL;
15959 			T279_ = rdLoc__cgen_425(dest);
15960 			cgFormatValue__cgen_141((&res_15), T279_);
15961 			res_15 = resizeString(res_15, 19);
15962 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_342));
15963 			T280_ = NIM_NIL;
15964 			T280_ = rdLoc__cgen_425(src);
15965 			cgFormatValue__cgen_141((&res_15), T280_);
15966 			res_15 = resizeString(res_15, 2);
15967 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
15968 			T281_ = NIM_NIL;
15969 			T281_ = t__cgen_79(dest);
15970 			T282_ = (NI64)0;
15971 			T282_ = getSize__types_3327((*(*(*p).module).g).config, T281_);
15972 			cgFormatValue__cgen_148((&res_15), T282_);
15973 			res_15 = resizeString(res_15, 2);
15974 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
15975 			{
15976 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA285_;
15977 				res_15 = resizeString(res_15, 1);
15978 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
15979 			}
15980 			LA285_: ;
15981 			T287_ = NIM_NIL;
15982 			T287_ = rope__ropes_109(res_15);
15983 			T288_ = NIM_NIL;
15984 			T288_ = indentLine__cgen_280(p, T287_);
15985 			add__ropes_159(T277_, T288_);
15986 		}
15987 		goto LA272_;
15988 		LA275_: ;
15989 		{
15990 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T290_;
15991 			NimStringDesc* res_16;
15992 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T291_;
15993 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T292_;
15994 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T297_;
15995 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T298_;
15996 			T290_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
15997 			T290_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
15998 			res_16 = rawNewString(((NI) 80));
15999 			T291_ = NIM_NIL;
16000 			T291_ = rdLoc__cgen_425(dest);
16001 			cgFormatValue__cgen_141((&res_16), T291_);
16002 			res_16 = resizeString(res_16, 3);
16003 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
16004 			T292_ = NIM_NIL;
16005 			T292_ = rdLoc__cgen_425(src);
16006 			cgFormatValue__cgen_141((&res_16), T292_);
16007 			res_16 = resizeString(res_16, 1);
16008 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
16009 			{
16010 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA295_;
16011 				res_16 = resizeString(res_16, 1);
16012 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16013 			}
16014 			LA295_: ;
16015 			T297_ = NIM_NIL;
16016 			T297_ = rope__ropes_109(res_16);
16017 			T298_ = NIM_NIL;
16018 			T298_ = indentLine__cgen_280(p, T297_);
16019 			add__ropes_159(T290_, T298_);
16020 		}
16021 		LA272_: ;
16022 	}
16023 	break;
16024 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
16025 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26):
16026 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
16027 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
16028 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
16029 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
16030 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
16031 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20):
16032 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23):
16033 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47):
16034 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 5):
16035 	{
16036 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T300_;
16037 		NimStringDesc* res_17;
16038 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T301_;
16039 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T302_;
16040 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T307_;
16041 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T308_;
16042 		T300_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
16043 		T300_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
16044 		res_17 = rawNewString(((NI) 80));
16045 		T301_ = NIM_NIL;
16046 		T301_ = rdLoc__cgen_425(dest);
16047 		cgFormatValue__cgen_141((&res_17), T301_);
16048 		res_17 = resizeString(res_17, 3);
16049 appendString(res_17, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
16050 		T302_ = NIM_NIL;
16051 		T302_ = rdLoc__cgen_425(src);
16052 		cgFormatValue__cgen_141((&res_17), T302_);
16053 		res_17 = resizeString(res_17, 1);
16054 appendString(res_17, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
16055 		{
16056 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA305_;
16057 			res_17 = resizeString(res_17, 1);
16058 appendString(res_17, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16059 		}
16060 		LA305_: ;
16061 		T307_ = NIM_NIL;
16062 		T307_ = rope__ropes_109(res_17);
16063 		T308_ = NIM_NIL;
16064 		T308_ = indentLine__cgen_280(p, T307_);
16065 		add__ropes_159(T300_, T308_);
16066 	}
16067 	break;
16068 	default:
16069 	{
16070 		NimStringDesc* T310_;
16071 		T310_ = NIM_NIL;
16072 		T310_ = rawNewString((reprEnum((NI)(*ty).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*ty).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 15);
16073 appendString(T310_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_368));
16074 appendString(T310_, reprEnum((NI)(*ty).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
16075 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, T310_, TM__MQdRN7fpbG7rPm4JpVVAhA_369);
16076 	}
16077 	break;
16078 	}
16079 	{
16080 		NIM_BOOL T313_;
16081 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T317_;
16082 		NimStringDesc* res_18;
16083 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T318_;
16084 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T319_;
16085 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T320_;
16086 		NI64 T321_;
16087 		NimStringDesc* T322_;
16088 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T323_;
16089 		NI T324_;
16090 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T329_;
16091 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T330_;
16092 		T313_ = (NIM_BOOL)0;
16093 		T313_ = (((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 24))&31U)))!=0);
16094 		if (!(T313_)) goto LA314_;
16095 		T313_ = ((9 &((NU8)1<<((NU)(dest.storage)&7U)))!=0);
16096 		LA314_: ;
16097 		if (!T313_) goto LA315_;
16098 		T317_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
16099 		T317_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
16100 		res_18 = rawNewString(((NI) 80));
16101 		T318_ = NIM_NIL;
16102 		T318_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_370));
16103 		cgFormatValue__cgen_141((&res_18), T318_);
16104 		res_18 = resizeString(res_18, 8);
16105 appendString(res_18, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
16106 		T319_ = NIM_NIL;
16107 		T319_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
16108 		cgFormatValue__cgen_141((&res_18), T319_);
16109 		res_18 = resizeString(res_18, 2);
16110 appendString(res_18, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
16111 		T320_ = NIM_NIL;
16112 		T320_ = t__cgen_79(dest);
16113 		T321_ = (NI64)0;
16114 		T321_ = getSize__types_3327((*(*(*p).module).g).config, T320_);
16115 		cgFormatValue__cgen_148((&res_18), T321_);
16116 		res_18 = resizeString(res_18, 2);
16117 appendString(res_18, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
16118 		T322_ = NIM_NIL;
16119 		T322_ = toFullPath__msgs_538((*(*(*p).module).g).config, (*p).currLineInfo.fileIndex);
16120 		T323_ = NIM_NIL;
16121 		T323_ = makeCString__msgs_50(T322_);
16122 		cgFormatValue__cgen_141((&res_18), T323_);
16123 		res_18 = resizeString(res_18, 2);
16124 appendString(res_18, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
16125 		T324_ = (NI)0;
16126 		T324_ = safeLineNm__cgen_331((*p).currLineInfo);
16127 		cgFormatValue__cgen_148((&res_18), ((NI64) (T324_)));
16128 		res_18 = resizeString(res_18, 2);
16129 appendString(res_18, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
16130 		{
16131 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA327_;
16132 			res_18 = resizeString(res_18, 1);
16133 appendString(res_18, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16134 		}
16135 		LA327_: ;
16136 		T329_ = NIM_NIL;
16137 		T329_ = rope__ropes_109(res_18);
16138 		T330_ = NIM_NIL;
16139 		T330_ = indentLine__cgen_280(p, T329_);
16140 		add__ropes_159(T317_, T330_);
16141 	}
16142 	LA315_: ;
16143 	}BeforeRet_: ;
16144 }
N_NIMCALL(void,genObjectInit__cgen_10380)16145 N_LIB_PRIVATE N_NIMCALL(void, genObjectInit__cgen_10380)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg section, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a, tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw mode) {
16146 	tyEnum_TTypeFieldResult__aBXTX9cIKT9b0yNlXSu9aPT9cw T1_;
16147 	T1_ = (tyEnum_TTypeFieldResult__aBXTX9cIKT9b0yNlXSu9aPT9cw)0;
16148 	T1_ = analyseObjectWithTypeField__types_585(t);
16149 	switch (T1_) {
16150 	case ((tyEnum_TTypeFieldResult__aBXTX9cIKT9b0yNlXSu9aPT9cw) 0):
16151 	{
16152 	}
16153 	break;
16154 	case ((tyEnum_TTypeFieldResult__aBXTX9cIKT9b0yNlXSu9aPT9cw) 1):
16155 	{
16156 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
16157 		tyObject_TType__facALICuu8zUj0hjvbTLFg* s;
16158 		r = rdLoc__cgen_425((*a));
16159 		{
16160 			tyArray__JiWwrsTRC6xqNlGcBthSVA T8_;
16161 			if (!(mode == ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 1))) goto LA6_;
16162 			nimZeroMem((void*)T8_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
16163 			T8_[0] = r;
16164 			r = percent___cgen_432(T8_, 1);
16165 		}
16166 		LA6_: ;
16167 		s = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
16168 		{
16169 			NIM_BOOL T11_;
16170 			T11_ = (NIM_BOOL)0;
16171 			T11_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
16172 			if (T11_) goto LA12_;
16173 			T11_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
16174 			LA12_: ;
16175 			if (!!(T11_)) goto LA13_;
16176 			{
16177 				while (1) {
16178 					NIM_BOOL T17_;
16179 					T17_ = (NIM_BOOL)0;
16180 					T17_ = ((*s).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
16181 					if (!(T17_)) goto LA18_;
16182 					T17_ = !(((*s).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
16183 					LA18_: ;
16184 					if (!T17_) goto LA16;
16185 					add__ropes_162(&r, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_111));
16186 					s = skipTypes__ast_3735((*s).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_112);
16187 				} LA16: ;
16188 			}
16189 		}
16190 		LA13_: ;
16191 		{
16192 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T23_;
16193 			NimStringDesc* res;
16194 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
16195 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
16196 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
16197 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA21_;
16198 			T23_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
16199 			T23_ = s__cgendata_225(p, section);
16200 			res = rawNewString(((NI) 80));
16201 			cgFormatValue__cgen_141((&res), r);
16202 			res = resizeString(res, 10);
16203 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_113));
16204 			T24_ = NIM_NIL;
16205 			T24_ = genTypeInfoV2__cgen_7924((*p).module, t, (*(*a).lode).info);
16206 			cgFormatValue__cgen_141((&res), T24_);
16207 			res = resizeString(res, 1);
16208 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
16209 			{
16210 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA27_;
16211 				res = resizeString(res, 1);
16212 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16213 			}
16214 			LA27_: ;
16215 			T29_ = NIM_NIL;
16216 			T29_ = rope__ropes_109(res);
16217 			T30_ = NIM_NIL;
16218 			T30_ = indentLine__cgen_280(p, T29_);
16219 			add__ropes_159(T23_, T30_);
16220 		}
16221 		goto LA19_;
16222 		LA21_: ;
16223 		{
16224 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T32_;
16225 			NimStringDesc* res_2;
16226 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
16227 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
16228 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
16229 			T32_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
16230 			T32_ = s__cgendata_225(p, section);
16231 			res_2 = rawNewString(((NI) 80));
16232 			cgFormatValue__cgen_141((&res_2), r);
16233 			res_2 = resizeString(res_2, 10);
16234 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_113));
16235 			T33_ = NIM_NIL;
16236 			T33_ = genTypeInfoV1__cgen_6768((*p).module, t, (*(*a).lode).info);
16237 			cgFormatValue__cgen_141((&res_2), T33_);
16238 			res_2 = resizeString(res_2, 1);
16239 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
16240 			{
16241 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA36_;
16242 				res_2 = resizeString(res_2, 1);
16243 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16244 			}
16245 			LA36_: ;
16246 			T38_ = NIM_NIL;
16247 			T38_ = rope__ropes_109(res_2);
16248 			T39_ = NIM_NIL;
16249 			T39_ = indentLine__cgen_280(p, T38_);
16250 			add__ropes_159(T32_, T39_);
16251 		}
16252 		LA19_: ;
16253 	}
16254 	break;
16255 	case ((tyEnum_TTypeFieldResult__aBXTX9cIKT9b0yNlXSu9aPT9cw) 2):
16256 	{
16257 		{
16258 			NIM_BOOL T43_;
16259 			NIM_BOOL T44_;
16260 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
16261 			T43_ = (NIM_BOOL)0;
16262 			T44_ = (NIM_BOOL)0;
16263 			T44_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
16264 			if (T44_) goto LA45_;
16265 			T44_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
16266 			LA45_: ;
16267 			T43_ = !(T44_);
16268 			if (!(T43_)) goto LA46_;
16269 			T43_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0);
16270 			LA46_: ;
16271 			if (!T43_) goto LA47_;
16272 			nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
16273 			{
16274 				tyObject_TType__facALICuu8zUj0hjvbTLFg* objType;
16275 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T53_;
16276 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T54_;
16277 				NimStringDesc* res_3;
16278 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T55_;
16279 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
16280 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
16281 				tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw T58_;
16282 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
16283 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
16284 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
16285 				if (!(mode == ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 1))) goto LA51_;
16286 				objType = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_290);
16287 				T53_ = NIM_NIL;
16288 				T53_ = newNodeIT__ast_3378(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4), (*(*a).lode).info, objType);
16289 				rawConstExpr__cgen_10365(p, T53_, (&tmp));
16290 				T54_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
16291 				T54_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
16292 				res_3 = rawNewString(((NI) 80));
16293 				T55_ = NIM_NIL;
16294 				T55_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_339));
16295 				cgFormatValue__cgen_141((&res_3), T55_);
16296 				res_3 = resizeString(res_3, 8);
16297 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
16298 				T56_ = NIM_NIL;
16299 				T56_ = rdLoc__cgen_425((*a));
16300 				cgFormatValue__cgen_141((&res_3), T56_);
16301 				res_3 = resizeString(res_3, 20);
16302 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_340));
16303 				T57_ = NIM_NIL;
16304 				T57_ = rdLoc__cgen_425(tmp);
16305 				cgFormatValue__cgen_141((&res_3), T57_);
16306 				res_3 = resizeString(res_3, 9);
16307 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
16308 				T58_ = (tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw)0;
16309 				{
16310 					if (!((*(*a).lode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA61_;
16311 					T58_ = (*(*(*a).lode)._kind_4.sym).kind;
16312 				}
16313 				goto LA59_;
16314 				LA61_: ;
16315 				{
16316 					T58_ = ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8);
16317 				}
16318 				LA59_: ;
16319 				T64_ = NIM_NIL;
16320 				T64_ = getTypeDesc__cgen_6631((*p).module, objType, T58_);
16321 				cgFormatValue__cgen_141((&res_3), T64_);
16322 				res_3 = resizeString(res_3, 3);
16323 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
16324 				{
16325 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA67_;
16326 					res_3 = resizeString(res_3, 1);
16327 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16328 				}
16329 				LA67_: ;
16330 				T69_ = NIM_NIL;
16331 				T69_ = rope__ropes_109(res_3);
16332 				T70_ = NIM_NIL;
16333 				T70_ = indentLine__cgen_280(p, T69_);
16334 				add__ropes_159(T54_, T70_);
16335 			}
16336 			goto LA49_;
16337 			LA51_: ;
16338 			{
16339 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T72_;
16340 				T72_ = NIM_NIL;
16341 				T72_ = newNodeIT__ast_3378(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 4), (*(*a).lode).info, t);
16342 				rawConstExpr__cgen_10365(p, T72_, (&tmp));
16343 				genAssignment__cgen_10369(p, (*a), tmp, 0);
16344 			}
16345 			LA49_: ;
16346 		}
16347 		goto LA41_;
16348 		LA47_: ;
16349 		{
16350 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r_2;
16351 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T79_;
16352 			NimStringDesc* res_4;
16353 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T80_;
16354 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
16355 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T86_;
16356 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T87_;
16357 			{
16358 				if (!(mode == ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 0))) goto LA76_;
16359 				r_2 = addrLoc__cgen_10303((*(*(*p).module).g).config, (*a));
16360 			}
16361 			goto LA74_;
16362 			LA76_: ;
16363 			{
16364 				r_2 = rdLoc__cgen_425((*a));
16365 			}
16366 			LA74_: ;
16367 			T79_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
16368 			T79_ = s__cgendata_225(p, section);
16369 			res_4 = rawNewString(((NI) 80));
16370 			T80_ = NIM_NIL;
16371 			T80_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_371));
16372 			cgFormatValue__cgen_141((&res_4), T80_);
16373 			res_4 = resizeString(res_4, 1);
16374 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
16375 			cgFormatValue__cgen_141((&res_4), r_2);
16376 			res_4 = resizeString(res_4, 2);
16377 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
16378 			T81_ = NIM_NIL;
16379 			T81_ = genTypeInfoV1__cgen_6768((*p).module, t, (*(*a).lode).info);
16380 			cgFormatValue__cgen_141((&res_4), T81_);
16381 			res_4 = resizeString(res_4, 2);
16382 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
16383 			{
16384 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA84_;
16385 				res_4 = resizeString(res_4, 1);
16386 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16387 			}
16388 			LA84_: ;
16389 			T86_ = NIM_NIL;
16390 			T86_ = rope__ropes_109(res_4);
16391 			T87_ = NIM_NIL;
16392 			T87_ = indentLine__cgen_280(p, T86_);
16393 			add__ropes_159(T79_, T87_);
16394 		}
16395 		LA41_: ;
16396 	}
16397 	break;
16398 	}
16399 	{
16400 		NIM_BOOL T90_;
16401 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r_3;
16402 		tyObject_TType__facALICuu8zUj0hjvbTLFg* s_2;
16403 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T110_;
16404 		NimStringDesc* res_5;
16405 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T111_;
16406 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T112_;
16407 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T117_;
16408 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T118_;
16409 		T90_ = (NIM_BOOL)0;
16410 		T90_ = isException__types_3991(t);
16411 		if (!T90_) goto LA91_;
16412 		r_3 = rdLoc__cgen_425((*a));
16413 		{
16414 			tyArray__JiWwrsTRC6xqNlGcBthSVA T97_;
16415 			if (!(mode == ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 1))) goto LA95_;
16416 			nimZeroMem((void*)T97_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
16417 			T97_[0] = r_3;
16418 			r_3 = percent___cgen_432(T97_, 1);
16419 		}
16420 		LA95_: ;
16421 		s_2 = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
16422 		{
16423 			NIM_BOOL T100_;
16424 			T100_ = (NIM_BOOL)0;
16425 			T100_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
16426 			if (T100_) goto LA101_;
16427 			T100_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
16428 			LA101_: ;
16429 			if (!!(T100_)) goto LA102_;
16430 			{
16431 				while (1) {
16432 					NIM_BOOL T106_;
16433 					NIM_BOOL T107_;
16434 					T106_ = (NIM_BOOL)0;
16435 					T107_ = (NIM_BOOL)0;
16436 					T107_ = ((*s_2).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
16437 					if (!(T107_)) goto LA108_;
16438 					T107_ = !(((*s_2).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
16439 					LA108_: ;
16440 					T106_ = T107_;
16441 					if (!(T106_)) goto LA109_;
16442 					T106_ = !(((*(*s_2).sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 268)));
16443 					LA109_: ;
16444 					if (!T106_) goto LA105;
16445 					add__ropes_162(&r_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_111));
16446 					s_2 = skipTypes__ast_3735((*s_2).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_112);
16447 				} LA105: ;
16448 			}
16449 		}
16450 		LA102_: ;
16451 		T110_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
16452 		T110_ = s__cgendata_225(p, section);
16453 		res_5 = rawNewString(((NI) 80));
16454 		cgFormatValue__cgen_141((&res_5), r_3);
16455 		res_5 = resizeString(res_5, 8);
16456 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_372));
16457 		T111_ = NIM_NIL;
16458 		T111_ = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
16459 		T112_ = NIM_NIL;
16460 		T112_ = makeCString__msgs_50((*(*(*T111_).sym).name).s);
16461 		cgFormatValue__cgen_141((&res_5), T112_);
16462 		res_5 = resizeString(res_5, 1);
16463 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
16464 		{
16465 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA115_;
16466 			res_5 = resizeString(res_5, 1);
16467 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16468 		}
16469 		LA115_: ;
16470 		T117_ = NIM_NIL;
16471 		T117_ = rope__ropes_109(res_5);
16472 		T118_ = NIM_NIL;
16473 		T118_ = indentLine__cgen_280(p, T117_);
16474 		add__ropes_159(T110_, T118_);
16475 	}
16476 	LA91_: ;
16477 }
N_NIMCALL(void,constructLoc__cgen_10922)16478 N_LIB_PRIVATE N_NIMCALL(void, constructLoc__cgen_10922)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* loc, NIM_BOOL isTemp) {
16479 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
16480 	typ = t__cgen_79((*loc));
16481 	{
16482 		NIM_BOOL T3_;
16483 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
16484 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T8_;
16485 		NimStringDesc* res;
16486 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
16487 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
16488 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
16489 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
16490 		T3_ = (NIM_BOOL)0;
16491 		T3_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0);
16492 		if (!(T3_)) goto LA4_;
16493 		T5_ = NIM_NIL;
16494 		T5_ = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_95);
16495 		T3_ = ((*T5_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28) || (*T5_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24));
16496 		LA4_: ;
16497 		if (!T3_) goto LA6_;
16498 		T8_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
16499 		T8_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
16500 		res = rawNewString(((NI) 80));
16501 		T9_ = NIM_NIL;
16502 		T9_ = rdLoc__cgen_425((*loc));
16503 		cgFormatValue__cgen_141((&res), T9_);
16504 		res = resizeString(res, 10);
16505 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_96));
16506 		T10_ = NIM_NIL;
16507 		T10_ = rdLoc__cgen_425((*loc));
16508 		cgFormatValue__cgen_141((&res), T10_);
16509 		res = resizeString(res, 13);
16510 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_97));
16511 		{
16512 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA13_;
16513 			res = resizeString(res, 1);
16514 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16515 		}
16516 		LA13_: ;
16517 		T15_ = NIM_NIL;
16518 		T15_ = rope__ropes_109(res);
16519 		T16_ = NIM_NIL;
16520 		T16_ = indentLine__cgen_280(p, T15_);
16521 		add__ropes_159(T8_, T16_);
16522 	}
16523 	goto LA1_;
16524 	LA6_: ;
16525 	{
16526 		NIM_BOOL T18_;
16527 		T18_ = (NIM_BOOL)0;
16528 		T18_ = isComplexValueType__cgen_10551(typ);
16529 		if (!!(T18_)) goto LA19_;
16530 		{
16531 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T23_;
16532 			NIM_BOOL T24_;
16533 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA nilLoc;
16534 			T23_ = NIM_NIL;
16535 			T23_ = t__cgen_79((*loc));
16536 			T24_ = (NIM_BOOL)0;
16537 			T24_ = containsGarbageCollectedRef__types_612(T23_);
16538 			if (!T24_) goto LA25_;
16539 			nimZeroMem((void*)(&nilLoc), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
16540 			initLoc__cgen_60((&nilLoc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1), (*loc).lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
16541 			nilLoc.r = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_99));
16542 			genRefAssign__cgen_10547(p, (*loc), nilLoc);
16543 		}
16544 		goto LA21_;
16545 		LA25_: ;
16546 		{
16547 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T28_;
16548 			NimStringDesc* res_2;
16549 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
16550 			tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw T30_;
16551 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
16552 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
16553 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
16554 			T28_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
16555 			T28_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
16556 			res_2 = rawNewString(((NI) 80));
16557 			T29_ = NIM_NIL;
16558 			T29_ = rdLoc__cgen_425((*loc));
16559 			cgFormatValue__cgen_141((&res_2), T29_);
16560 			res_2 = resizeString(res_2, 4);
16561 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_105));
16562 			T30_ = (tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw)0;
16563 			{
16564 				if (!((*(*loc).lode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA33_;
16565 				T30_ = (*(*(*loc).lode)._kind_4.sym).kind;
16566 			}
16567 			goto LA31_;
16568 			LA33_: ;
16569 			{
16570 				T30_ = ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8);
16571 			}
16572 			LA31_: ;
16573 			T36_ = NIM_NIL;
16574 			T36_ = getTypeDesc__cgen_6631((*p).module, typ, T30_);
16575 			cgFormatValue__cgen_141((&res_2), T36_);
16576 			res_2 = resizeString(res_2, 3);
16577 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_106));
16578 			{
16579 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA39_;
16580 				res_2 = resizeString(res_2, 1);
16581 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16582 			}
16583 			LA39_: ;
16584 			T41_ = NIM_NIL;
16585 			T41_ = rope__ropes_109(res_2);
16586 			T42_ = NIM_NIL;
16587 			T42_ = indentLine__cgen_280(p, T41_);
16588 			add__ropes_159(T28_, T42_);
16589 		}
16590 		LA21_: ;
16591 	}
16592 	goto LA1_;
16593 	LA19_: ;
16594 	{
16595 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T72_;
16596 		{
16597 			NIM_BOOL T46_;
16598 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T48_;
16599 			T46_ = (NIM_BOOL)0;
16600 			T46_ = !(isTemp);
16601 			if (T46_) goto LA47_;
16602 			T48_ = NIM_NIL;
16603 			T48_ = t__cgen_79((*loc));
16604 			T46_ = containsGarbageCollectedRef__types_612(T48_);
16605 			LA47_: ;
16606 			if (!T46_) goto LA49_;
16607 			{
16608 				NIM_BOOL T53_;
16609 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T56_;
16610 				NimStringDesc* res_3;
16611 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
16612 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
16613 				tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw T59_;
16614 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T65_;
16615 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
16616 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
16617 				T53_ = (NIM_BOOL)0;
16618 				T53_ = isImportedCppType__cgen_1294(typ);
16619 				if (!!(T53_)) goto LA54_;
16620 				T56_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
16621 				T56_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
16622 				res_3 = rawNewString(((NI) 80));
16623 				T57_ = NIM_NIL;
16624 				T57_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_107));
16625 				cgFormatValue__cgen_141((&res_3), T57_);
16626 				res_3 = resizeString(res_3, 8);
16627 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
16628 				T58_ = NIM_NIL;
16629 				T58_ = addrLoc__cgen_10303((*(*(*p).module).g).config, (*loc));
16630 				cgFormatValue__cgen_141((&res_3), T58_);
16631 				res_3 = resizeString(res_3, 9);
16632 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
16633 				T59_ = (tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw)0;
16634 				{
16635 					if (!((*(*loc).lode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA62_;
16636 					T59_ = (*(*(*loc).lode)._kind_4.sym).kind;
16637 				}
16638 				goto LA60_;
16639 				LA62_: ;
16640 				{
16641 					T59_ = ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8);
16642 				}
16643 				LA60_: ;
16644 				T65_ = NIM_NIL;
16645 				T65_ = getTypeDesc__cgen_6631((*p).module, typ, T59_);
16646 				cgFormatValue__cgen_141((&res_3), T65_);
16647 				res_3 = resizeString(res_3, 3);
16648 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
16649 				{
16650 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA68_;
16651 					res_3 = resizeString(res_3, 1);
16652 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
16653 				}
16654 				LA68_: ;
16655 				T70_ = NIM_NIL;
16656 				T70_ = rope__ropes_109(res_3);
16657 				T71_ = NIM_NIL;
16658 				T71_ = indentLine__cgen_280(p, T70_);
16659 				add__ropes_159(T56_, T71_);
16660 			}
16661 			LA54_: ;
16662 		}
16663 		LA49_: ;
16664 		T72_ = NIM_NIL;
16665 		T72_ = t__cgen_79((*loc));
16666 		genObjectInit__cgen_10380(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2), T72_, loc, ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 0));
16667 	}
16668 	LA1_: ;
16669 }
N_NIMCALL(void,initLocalVar__cgen_10987)16670 N_LIB_PRIVATE N_NIMCALL(void, initLocalVar__cgen_10987)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v, NIM_BOOL immediateAsgn) {
16671 	{
16672 		if (!!((((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0))) goto LA3_;
16673 		{
16674 			if (!!(immediateAsgn)) goto LA7_;
16675 			constructLoc__cgen_10922(p, (&(*v).loc), NIM_FALSE);
16676 		}
16677 		LA7_: ;
16678 	}
16679 	LA3_: ;
16680 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_1771)16681 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_1771)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
16682 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
16683 	result = NIM_NIL;
16684 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_374), args, argsLen_0);
16685 	return result;
16686 }
N_NIMCALL(void,fillResult__cgen_1768)16687 N_LIB_PRIVATE N_NIMCALL(void, fillResult__cgen_1768)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* param) {
16688 	tyArray__qTjAvTvKF9anytN1At69aJMQ T1_;
16689 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
16690 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
16691 	nimZeroMem((void*)T1_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
16692 	T2_ = NIM_NIL;
16693 	T2_ = percent___cgen_1771(T1_, 0);
16694 	fillLoc__cgen_65((&(*(*param)._kind_4.sym).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 4), param, T2_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
16695 	t = (*(*param)._kind_4.sym).typ;
16696 	{
16697 		NIM_BOOL T5_;
16698 		tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T6_;
16699 		T5_ = (NIM_BOOL)0;
16700 		T6_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
16701 		T6_ = mapReturnType__cgen_1279(conf, t);
16702 		T5_ = !((T6_ == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17)));
16703 		if (!(T5_)) goto LA7_;
16704 		T5_ = isInvalidReturnType__cgen_1335(conf, t);
16705 		LA7_: ;
16706 		if (!T5_) goto LA8_;
16707 		(*(*param)._kind_4.sym).loc.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15);
16708 		(*(*param)._kind_4.sym).loc.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0);
16709 	}
16710 	LA8_: ;
16711 }
N_NIMCALL(void,scopeMangledParam__cgen_1119)16712 N_LIB_PRIVATE N_NIMCALL(void, scopeMangledParam__cgen_1119)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param) {
16713 	NimStringDesc* key;
16714 	key = mangle__ccgutils_112((*(*param).name).s);
16715 	shallow__system_7433((&key));
16716 	inc__cgen_935((&(*p).sigConflicts), key, ((NI) 1));
16717 }
N_NIMCALL(void,assignParam__cgen_11417)16718 N_LIB_PRIVATE N_NIMCALL(void, assignParam__cgen_11417)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TType__facALICuu8zUj0hjvbTLFg* retType) {
16719 	scopeMangledParam__cgen_1119(p, s);
16720 }
N_NIMCALL(tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg,allPathsAsgnResult__cgen_25806)16721 N_LIB_PRIVATE N_NIMCALL(tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg, allPathsAsgnResult__cgen_25806)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
16722 	tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg result;
16723 {	result = (tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg)0;
16724 	result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0);
16725 	switch ((*n).kind) {
16726 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
16727 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
16728 	{
16729 		{
16730 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
16731 			it = NIM_NIL;
16732 			{
16733 				NI i;
16734 				NI colontmp_;
16735 				NI i_2;
16736 				i = (NI)0;
16737 				colontmp_ = (NI)0;
16738 				colontmp_ = safeLen__ast_3191(n);
16739 				i_2 = ((NI) 0);
16740 				{
16741 					while (1) {
16742 						if (!(i_2 < colontmp_)) goto LA5;
16743 						i = i_2;
16744 						it = (*n)._kind_6.sons->data[i];
16745 						result = allPathsAsgnResult__cgen_25806(it);
16746 						{
16747 							if (!!((result == ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0)))) goto LA8_;
16748 							goto BeforeRet_;
16749 						}
16750 						LA8_: ;
16751 						i_2 += ((NI) 1);
16752 					} LA5: ;
16753 				}
16754 			}
16755 		}
16756 	}
16757 	break;
16758 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73):
16759 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74):
16760 	{
16761 		{
16762 			NIM_BOOL T13_;
16763 			T13_ = (NIM_BOOL)0;
16764 			T13_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
16765 			if (!(T13_)) goto LA14_;
16766 			T13_ = ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11));
16767 			LA14_: ;
16768 			if (!T13_) goto LA15_;
16769 			{
16770 				NIM_BOOL T19_;
16771 				T19_ = (NIM_BOOL)0;
16772 				T19_ = containsResult__cgen_25722((*n)._kind_6.sons->data[((NI) 1)]);
16773 				if (!!(T19_)) goto LA20_;
16774 				result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1);
16775 			}
16776 			goto LA17_;
16777 			LA20_: ;
16778 			{
16779 				result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
16780 			}
16781 			LA17_: ;
16782 		}
16783 		goto LA11_;
16784 		LA15_: ;
16785 		{
16786 			NIM_BOOL T24_;
16787 			T24_ = (NIM_BOOL)0;
16788 			T24_ = containsResult__cgen_25722(n);
16789 			if (!T24_) goto LA25_;
16790 			result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
16791 		}
16792 		goto LA11_;
16793 		LA25_: ;
16794 		LA11_: ;
16795 	}
16796 	break;
16797 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109):
16798 	{
16799 		{
16800 			NI T30_;
16801 			T30_ = (NI)0;
16802 			T30_ = len__ast_3198(n);
16803 			if (!(((NI) 0) < T30_)) goto LA31_;
16804 			{
16805 				NIM_BOOL T35_;
16806 				T35_ = (NIM_BOOL)0;
16807 				T35_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1));
16808 				if (!(T35_)) goto LA36_;
16809 				T35_ = !((result == ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1)));
16810 				LA36_: ;
16811 				if (!T35_) goto LA37_;
16812 				result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
16813 			}
16814 			goto LA33_;
16815 			LA37_: ;
16816 			{
16817 				result = allPathsAsgnResult__cgen_25806((*n)._kind_6.sons->data[((NI) 0)]);
16818 			}
16819 			LA33_: ;
16820 		}
16821 		LA31_: ;
16822 	}
16823 	break;
16824 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92):
16825 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 48):
16826 	{
16827 		NIM_BOOL exhaustive;
16828 		exhaustive = NIM_FALSE;
16829 		result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1);
16830 		{
16831 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it_2;
16832 			it_2 = NIM_NIL;
16833 			{
16834 				NI i_3;
16835 				NI colontmp__2;
16836 				NI i_4;
16837 				i_3 = (NI)0;
16838 				colontmp__2 = (NI)0;
16839 				colontmp__2 = safeLen__ast_3191(n);
16840 				i_4 = ((NI) 0);
16841 				{
16842 					while (1) {
16843 						tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg aX60gensym5965_;
16844 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T57_;
16845 						if (!(i_4 < colontmp__2)) goto LA44;
16846 						i_3 = i_4;
16847 						it_2 = (*n)._kind_6.sons->data[i_3];
16848 						{
16849 							NIM_BOOL T47_;
16850 							NI T48_;
16851 							T47_ = (NIM_BOOL)0;
16852 							T48_ = (NI)0;
16853 							T48_ = len__ast_3198(it_2);
16854 							T47_ = (T48_ == ((NI) 2));
16855 							if (!(T47_)) goto LA49_;
16856 							T47_ = containsResult__cgen_25722((*it_2)._kind_6.sons->data[((NI) 0)]);
16857 							LA49_: ;
16858 							if (!T47_) goto LA50_;
16859 							result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
16860 							goto BeforeRet_;
16861 						}
16862 						LA50_: ;
16863 						{
16864 							NI T54_;
16865 							T54_ = (NI)0;
16866 							T54_ = len__ast_3198(it_2);
16867 							if (!(T54_ == ((NI) 1))) goto LA55_;
16868 							exhaustive = NIM_TRUE;
16869 						}
16870 						LA55_: ;
16871 						T57_ = NIM_NIL;
16872 						T57_ = lastSon__ast_4832(it_2);
16873 						aX60gensym5965_ = allPathsAsgnResult__cgen_25806(T57_);
16874 						switch (aX60gensym5965_) {
16875 						case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2):
16876 						{
16877 							result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
16878 							goto BeforeRet_;
16879 						}
16880 						break;
16881 						case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1):
16882 						{
16883 						}
16884 						break;
16885 						case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0):
16886 						{
16887 							result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0);
16888 						}
16889 						break;
16890 						}
16891 						i_4 += ((NI) 1);
16892 					} LA44: ;
16893 				}
16894 			}
16895 		}
16896 		{
16897 			if (!!(exhaustive)) goto LA63_;
16898 			result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0);
16899 		}
16900 		LA63_: ;
16901 	}
16902 	break;
16903 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 97):
16904 	{
16905 		NIM_BOOL exhaustive_2;
16906 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T71_;
16907 		{
16908 			NIM_BOOL T68_;
16909 			T68_ = (NIM_BOOL)0;
16910 			T68_ = containsResult__cgen_25722((*n)._kind_6.sons->data[((NI) 0)]);
16911 			if (!T68_) goto LA69_;
16912 			result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
16913 			goto BeforeRet_;
16914 		}
16915 		LA69_: ;
16916 		result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1);
16917 		T71_ = NIM_NIL;
16918 		T71_ = skipTypes__ast_3735((*(*n)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_375);
16919 		exhaustive_2 = !(((*T71_).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) && (*T71_).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39) || (*T71_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28)));
16920 		{
16921 			NI i_5;
16922 			NI colontmp__3;
16923 			NI i_6;
16924 			i_5 = (NI)0;
16925 			colontmp__3 = (NI)0;
16926 			colontmp__3 = len__ast_3198(n);
16927 			i_6 = ((NI) 1);
16928 			{
16929 				while (1) {
16930 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it_3;
16931 					tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg aX60gensym5970_;
16932 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T75_;
16933 					if (!(i_6 < colontmp__3)) goto LA74;
16934 					i_5 = i_6;
16935 					it_3 = (*n)._kind_6.sons->data[i_5];
16936 					T75_ = NIM_NIL;
16937 					T75_ = lastSon__ast_4832(it_3);
16938 					aX60gensym5970_ = allPathsAsgnResult__cgen_25806(T75_);
16939 					switch (aX60gensym5970_) {
16940 					case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2):
16941 					{
16942 						result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
16943 						goto BeforeRet_;
16944 					}
16945 					break;
16946 					case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1):
16947 					{
16948 					}
16949 					break;
16950 					case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0):
16951 					{
16952 						result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0);
16953 					}
16954 					break;
16955 					}
16956 					{
16957 						if (!((*it_3).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88))) goto LA81_;
16958 						exhaustive_2 = NIM_TRUE;
16959 					}
16960 					LA81_: ;
16961 					i_6 += ((NI) 1);
16962 				} LA74: ;
16963 			}
16964 		}
16965 		{
16966 			if (!!(exhaustive_2)) goto LA85_;
16967 			result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0);
16968 		}
16969 		LA85_: ;
16970 	}
16971 	break;
16972 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96):
16973 	{
16974 		result = allPathsAsgnResult__cgen_25806((*n)._kind_6.sons->data[((NI) 0)]);
16975 		{
16976 			if (!(result == ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0))) goto LA90_;
16977 			result = allPathsAsgnResult__cgen_25806((*n)._kind_6.sons->data[((NI) 1)]);
16978 			{
16979 				if (!(result == ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1))) goto LA94_;
16980 				result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0);
16981 			}
16982 			LA94_: ;
16983 		}
16984 		LA90_: ;
16985 	}
16986 	break;
16987 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1):
16988 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
16989 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
16990 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101):
16991 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
16992 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
16993 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
16994 	{
16995 		result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0);
16996 	}
16997 	break;
16998 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156):
16999 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 158):
17000 	{
17001 		result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
17002 	}
17003 	break;
17004 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
17005 	{
17006 		{
17007 			if (!((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11))) goto LA101_;
17008 			result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
17009 		}
17010 		LA101_: ;
17011 	}
17012 	break;
17013 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 106):
17014 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 154):
17015 	{
17016 		tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg aX60gensym5973_;
17017 		result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1);
17018 		aX60gensym5973_ = allPathsAsgnResult__cgen_25806((*n)._kind_6.sons->data[((NI) 0)]);
17019 		switch (aX60gensym5973_) {
17020 		case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2):
17021 		{
17022 			result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
17023 			goto BeforeRet_;
17024 		}
17025 		break;
17026 		case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1):
17027 		{
17028 		}
17029 		break;
17030 		case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0):
17031 		{
17032 			result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0);
17033 		}
17034 		break;
17035 		}
17036 		{
17037 			NI i_7;
17038 			NI colontmp__4;
17039 			NI i_8;
17040 			i_7 = (NI)0;
17041 			colontmp__4 = (NI)0;
17042 			colontmp__4 = len__ast_3198(n);
17043 			i_8 = ((NI) 1);
17044 			{
17045 				while (1) {
17046 					if (!(i_8 < colontmp__4)) goto LA109;
17047 					i_7 = i_8;
17048 					{
17049 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T114_;
17050 						if (!((*(*n)._kind_6.sons->data[i_7]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107))) goto LA112_;
17051 						T114_ = NIM_NIL;
17052 						T114_ = lastSon__ast_4832((*n)._kind_6.sons->data[i_7]);
17053 						result = allPathsAsgnResult__cgen_25806(T114_);
17054 					}
17055 					goto LA110_;
17056 					LA112_: ;
17057 					{
17058 						tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg aX60gensym5977_;
17059 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T116_;
17060 						T116_ = NIM_NIL;
17061 						T116_ = lastSon__ast_4832((*n)._kind_6.sons->data[i_7]);
17062 						aX60gensym5977_ = allPathsAsgnResult__cgen_25806(T116_);
17063 						switch (aX60gensym5977_) {
17064 						case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2):
17065 						{
17066 							result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
17067 							goto BeforeRet_;
17068 						}
17069 						break;
17070 						case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1):
17071 						{
17072 						}
17073 						break;
17074 						case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0):
17075 						{
17076 							result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0);
17077 						}
17078 						break;
17079 						}
17080 					}
17081 					LA110_: ;
17082 					i_8 += ((NI) 1);
17083 				} LA109: ;
17084 			}
17085 		}
17086 	}
17087 	break;
17088 	default:
17089 	{
17090 		{
17091 			NI i_9;
17092 			NI colontmp__5;
17093 			NI i_10;
17094 			i_9 = (NI)0;
17095 			colontmp__5 = (NI)0;
17096 			colontmp__5 = safeLen__ast_3191(n);
17097 			i_10 = ((NI) 0);
17098 			{
17099 				while (1) {
17100 					tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg aX60gensym5979_;
17101 					if (!(i_10 < colontmp__5)) goto LA123;
17102 					i_9 = i_10;
17103 					aX60gensym5979_ = allPathsAsgnResult__cgen_25806((*n)._kind_6.sons->data[i_9]);
17104 					switch (aX60gensym5979_) {
17105 					case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2):
17106 					{
17107 						result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 2);
17108 						goto BeforeRet_;
17109 					}
17110 					break;
17111 					case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1):
17112 					{
17113 					}
17114 					break;
17115 					case ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0):
17116 					{
17117 						result = ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 0);
17118 					}
17119 					break;
17120 					}
17121 					i_10 += ((NI) 1);
17122 				} LA123: ;
17123 			}
17124 		}
17125 	}
17126 	break;
17127 	}
17128 	}BeforeRet_: ;
17129 	return result;
17130 }
N_NIMCALL(void,specializeResetN__cgen_10575)17131 N_LIB_PRIVATE N_NIMCALL(void, specializeResetN__cgen_10575)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
17132 {	{
17133 		if (!(n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
17134 		goto BeforeRet_;
17135 	}
17136 	LA3_: ;
17137 	switch ((*n).kind) {
17138 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
17139 	{
17140 		{
17141 			NI i;
17142 			NI colontmp_;
17143 			NI i_2;
17144 			i = (NI)0;
17145 			colontmp_ = (NI)0;
17146 			colontmp_ = len__ast_3198(n);
17147 			i_2 = ((NI) 0);
17148 			{
17149 				while (1) {
17150 					if (!(i_2 < colontmp_)) goto LA8;
17151 					i = i_2;
17152 					specializeResetN__cgen_10575(p, accessor, (*n)._kind_6.sons->data[i], typ);
17153 					i_2 += ((NI) 1);
17154 				} LA8: ;
17155 			}
17156 		}
17157 	}
17158 	break;
17159 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
17160 	{
17161 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* disc;
17162 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T23_;
17163 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T24_;
17164 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
17165 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
17166 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T44_;
17167 		tyArray__qTjAvTvKF9anytN1At69aJMQ T45_;
17168 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
17169 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
17170 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T48_;
17171 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
17172 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T50_;
17173 		{
17174 			if (!!(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA12_;
17175 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_379), TM__MQdRN7fpbG7rPm4JpVVAhA_380);
17176 		}
17177 		LA12_: ;
17178 		disc = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
17179 		{
17180 			if (!((*disc).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA16_;
17181 			fillObjectFields__cgen_3777((*p).module, typ);
17182 		}
17183 		LA16_: ;
17184 		{
17185 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T20_;
17186 			T20_ = NIM_NIL;
17187 			T20_ = t__cgen_79((*disc).loc);
17188 			if (!(T20_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA21_;
17189 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_382), TM__MQdRN7fpbG7rPm4JpVVAhA_383);
17190 		}
17191 		LA21_: ;
17192 		T23_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17193 		T23_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17194 		nimZeroMem((void*)T24_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
17195 		T24_[0] = accessor;
17196 		T24_[1] = (*disc).loc.r;
17197 		T25_ = NIM_NIL;
17198 		T25_ = percent___cgen_7382(T24_, 2);
17199 		T26_ = NIM_NIL;
17200 		T26_ = indentLine__cgen_280(p, T25_);
17201 		add__ropes_159(T23_, T26_);
17202 		{
17203 			NI i_3;
17204 			NI colontmp__2;
17205 			NI i_4;
17206 			i_3 = (NI)0;
17207 			colontmp__2 = (NI)0;
17208 			colontmp__2 = len__ast_3198(n);
17209 			i_4 = ((NI) 1);
17210 			{
17211 				while (1) {
17212 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch;
17213 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T39_;
17214 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T40_;
17215 					tyArray__qTjAvTvKF9anytN1At69aJMQ T41_;
17216 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
17217 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
17218 					if (!(i_4 < colontmp__2)) goto LA29;
17219 					i_3 = i_4;
17220 					branch = (*n)._kind_6.sons->data[i_3];
17221 					{
17222 						if (!((*branch).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85))) goto LA32_;
17223 						genCaseRange__cgen_7340(p, branch);
17224 					}
17225 					goto LA30_;
17226 					LA32_: ;
17227 					{
17228 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T35_;
17229 						tyArray__qTjAvTvKF9anytN1At69aJMQ T36_;
17230 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
17231 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
17232 						T35_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17233 						T35_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17234 						nimZeroMem((void*)T36_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
17235 						T37_ = NIM_NIL;
17236 						T37_ = percent___cgen_7408(T36_, 0);
17237 						T38_ = NIM_NIL;
17238 						T38_ = indentLine__cgen_280(p, T37_);
17239 						add__ropes_159(T35_, T38_);
17240 					}
17241 					LA30_: ;
17242 					T39_ = NIM_NIL;
17243 					T39_ = lastSon__ast_4832(branch);
17244 					specializeResetN__cgen_10575(p, accessor, T39_, typ);
17245 					T40_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17246 					T40_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17247 					nimZeroMem((void*)T41_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
17248 					T42_ = NIM_NIL;
17249 					T42_ = percent___cgen_7416(T41_, 0);
17250 					T43_ = NIM_NIL;
17251 					T43_ = indentLine__cgen_280(p, T42_);
17252 					add__ropes_159(T40_, T43_);
17253 					i_4 += ((NI) 1);
17254 				} LA29: ;
17255 			}
17256 		}
17257 		T44_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17258 		T44_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17259 		nimZeroMem((void*)T45_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
17260 		T46_ = NIM_NIL;
17261 		T46_ = percent___cgen_7421(T45_, 0);
17262 		T47_ = NIM_NIL;
17263 		T47_ = indentLine__cgen_280(p, T46_);
17264 		add__ropes_159(T44_, T47_);
17265 		nimZeroMem((void*)T48_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
17266 		T48_[0] = accessor;
17267 		T48_[1] = (*disc).loc.r;
17268 		T49_ = NIM_NIL;
17269 		T49_ = percent___cgen_7439(T48_, 2);
17270 		T50_ = NIM_NIL;
17271 		T50_ = t__cgen_79((*disc).loc);
17272 		specializeResetT__cgen_10571(p, T49_, T50_);
17273 	}
17274 	break;
17275 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
17276 	{
17277 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
17278 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T65_;
17279 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
17280 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T67_;
17281 		field = (*n)._kind_4.sym;
17282 		{
17283 			if (!((*(*field).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63))) goto LA54_;
17284 			goto BeforeRet_;
17285 		}
17286 		LA54_: ;
17287 		{
17288 			if (!((*field).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA58_;
17289 			fillObjectFields__cgen_3777((*p).module, typ);
17290 		}
17291 		LA58_: ;
17292 		{
17293 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T62_;
17294 			T62_ = NIM_NIL;
17295 			T62_ = t__cgen_79((*field).loc);
17296 			if (!(T62_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA63_;
17297 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_382), TM__MQdRN7fpbG7rPm4JpVVAhA_384);
17298 		}
17299 		LA63_: ;
17300 		nimZeroMem((void*)T65_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
17301 		T65_[0] = accessor;
17302 		T65_[1] = (*field).loc.r;
17303 		T66_ = NIM_NIL;
17304 		T66_ = percent___cgen_7439(T65_, 2);
17305 		T67_ = NIM_NIL;
17306 		T67_ = t__cgen_79((*field).loc);
17307 		specializeResetT__cgen_10571(p, T66_, T67_);
17308 	}
17309 	break;
17310 	default:
17311 	{
17312 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_382), TM__MQdRN7fpbG7rPm4JpVVAhA_385);
17313 	}
17314 	break;
17315 	}
17316 	}BeforeRet_: ;
17317 }
N_NIMCALL(void,specializeResetT__cgen_10571)17318 N_LIB_PRIVATE N_NIMCALL(void, specializeResetT__cgen_10571)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* accessor, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
17319 {	{
17320 		if (!(typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA3_;
17321 		goto BeforeRet_;
17322 	}
17323 	LA3_: ;
17324 	switch ((*typ).kind) {
17325 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11):
17326 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 10):
17327 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8):
17328 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 4):
17329 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 13):
17330 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 55):
17331 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46):
17332 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 45):
17333 	{
17334 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
17335 		T6_ = NIM_NIL;
17336 		T6_ = lastSon__ast_3743(typ);
17337 		specializeResetT__cgen_10571(p, accessor, T6_);
17338 	}
17339 	break;
17340 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
17341 	{
17342 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA arraySize;
17343 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA i;
17344 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T8_;
17345 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T9_;
17346 		NimStringDesc* res;
17347 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
17348 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
17349 		NimStringDesc* res_2;
17350 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
17351 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T17_;
17352 		tyArray__qTjAvTvKF9anytN1At69aJMQ T18_;
17353 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
17354 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
17355 		arraySize = lengthOrd__types_1652((*(*(*p).module).g).config, (*typ).sons->data[((NI) 0)]);
17356 		nimZeroMem((void*)(&i), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
17357 		T8_ = NIM_NIL;
17358 		T8_ = getSysType__magicsys_60((*(*(*p).module).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
17359 		getTemp__cgen_7343(p, T8_, (&i), NIM_FALSE);
17360 		T9_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17361 		T9_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17362 		res = rawNewString(((NI) 80));
17363 		res = resizeString(res, 5);
17364 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_175));
17365 		cgFormatValue__cgen_141((&res), i.r);
17366 		res = resizeString(res, 6);
17367 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_176));
17368 		cgFormatValue__cgen_141((&res), i.r);
17369 		res = resizeString(res, 3);
17370 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_177));
17371 		cgFormatValue__cgen_151((&res), arraySize);
17372 		res = resizeString(res, 2);
17373 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
17374 		cgFormatValue__cgen_141((&res), i.r);
17375 		res = resizeString(res, 5);
17376 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_179));
17377 		{
17378 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA12_;
17379 			res = resizeString(res, 1);
17380 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17381 		}
17382 		LA12_: ;
17383 		T14_ = NIM_NIL;
17384 		T14_ = rope__ropes_109(res);
17385 		T15_ = NIM_NIL;
17386 		T15_ = indentLine__cgen_280(p, T14_);
17387 		add__ropes_159(T9_, T15_);
17388 		res_2 = rawNewString(((NI) 80));
17389 		cgFormatValue__cgen_141((&res_2), accessor);
17390 		res_2 = resizeString(res_2, 1);
17391 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
17392 		cgFormatValue__cgen_141((&res_2), i.r);
17393 		res_2 = resizeString(res_2, 1);
17394 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
17395 		T16_ = NIM_NIL;
17396 		T16_ = rope__ropes_109(res_2);
17397 		specializeResetT__cgen_10571(p, T16_, (*typ).sons->data[((NI) 1)]);
17398 		T17_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17399 		T17_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17400 		nimZeroMem((void*)T18_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
17401 		T19_ = NIM_NIL;
17402 		T19_ = percent___cgen_7505(T18_, 0);
17403 		T20_ = NIM_NIL;
17404 		T20_ = indentLine__cgen_280(p, T19_);
17405 		add__ropes_159(T17_, T20_);
17406 	}
17407 	break;
17408 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
17409 	{
17410 		{
17411 			NI i_2;
17412 			NI colontmp_;
17413 			NI i_3;
17414 			i_2 = (NI)0;
17415 			colontmp_ = (NI)0;
17416 			colontmp_ = len__ast_4002(typ);
17417 			i_3 = ((NI) 0);
17418 			{
17419 				while (1) {
17420 					tyObject_TType__facALICuu8zUj0hjvbTLFg* x;
17421 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
17422 					if (!(i_3 < colontmp_)) goto LA24;
17423 					i_2 = i_3;
17424 					x = (*typ).sons->data[i_2];
17425 					{
17426 						if (!!((x == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA27_;
17427 						x = skipTypes__ast_3735(x, TM__MQdRN7fpbG7rPm4JpVVAhA_112);
17428 					}
17429 					LA27_: ;
17430 					T29_ = NIM_NIL;
17431 					T29_ = parentObj__cgen_7444(accessor, (*p).module);
17432 					specializeResetT__cgen_10571(p, T29_, x);
17433 					i_3 += ((NI) 1);
17434 				} LA24: ;
17435 			}
17436 		}
17437 		{
17438 			if (!!(((*typ).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA32_;
17439 			specializeResetN__cgen_10575(p, accessor, (*typ).n, typ);
17440 		}
17441 		LA32_: ;
17442 	}
17443 	break;
17444 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
17445 	{
17446 		tyObject_TType__facALICuu8zUj0hjvbTLFg* typ_2;
17447 		typ_2 = typ;
17448 		{
17449 			NI i_4;
17450 			NI colontmp__2;
17451 			NI i_5;
17452 			i_4 = (NI)0;
17453 			colontmp__2 = (NI)0;
17454 			colontmp__2 = len__ast_4002(typ_2);
17455 			i_5 = ((NI) 0);
17456 			{
17457 				while (1) {
17458 					NimStringDesc* res_3;
17459 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
17460 					if (!(i_5 < colontmp__2)) goto LA37;
17461 					i_4 = i_5;
17462 					res_3 = rawNewString(((NI) 80));
17463 					cgFormatValue__cgen_141((&res_3), accessor);
17464 					res_3 = resizeString(res_3, 6);
17465 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_249));
17466 					cgFormatValue__cgen_148((&res_3), ((NI64) (i_4)));
17467 					T38_ = NIM_NIL;
17468 					T38_ = rope__ropes_109(res_3);
17469 					specializeResetT__cgen_10571(p, T38_, (*typ_2).sons->data[i_4]);
17470 					i_5 += ((NI) 1);
17471 				} LA37: ;
17472 			}
17473 		}
17474 	}
17475 	break;
17476 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
17477 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
17478 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
17479 	{
17480 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T40_;
17481 		NimStringDesc* res_4;
17482 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
17483 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
17484 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
17485 		T40_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17486 		T40_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17487 		res_4 = rawNewString(((NI) 80));
17488 		T41_ = NIM_NIL;
17489 		T41_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_104));
17490 		cgFormatValue__cgen_141((&res_4), T41_);
17491 		res_4 = resizeString(res_4, 10);
17492 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_386));
17493 		cgFormatValue__cgen_141((&res_4), accessor);
17494 		res_4 = resizeString(res_4, 11);
17495 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_387));
17496 		{
17497 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA44_;
17498 			res_4 = resizeString(res_4, 1);
17499 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17500 		}
17501 		LA44_: ;
17502 		T46_ = NIM_NIL;
17503 		T46_ = rope__ropes_109(res_4);
17504 		T47_ = NIM_NIL;
17505 		T47_ = indentLine__cgen_280(p, T46_);
17506 		add__ropes_159(T40_, T47_);
17507 	}
17508 	break;
17509 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25):
17510 	{
17511 		{
17512 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T53_;
17513 			NimStringDesc* res_5;
17514 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
17515 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
17516 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
17517 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T61_;
17518 			NimStringDesc* res_6;
17519 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
17520 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T67_;
17521 			if (!((*typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9))) goto LA51_;
17522 			T53_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17523 			T53_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17524 			res_5 = rawNewString(((NI) 80));
17525 			T54_ = NIM_NIL;
17526 			T54_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_104));
17527 			cgFormatValue__cgen_141((&res_5), T54_);
17528 			res_5 = resizeString(res_5, 10);
17529 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_386));
17530 			cgFormatValue__cgen_141((&res_5), accessor);
17531 			res_5 = resizeString(res_5, 17);
17532 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_388));
17533 			{
17534 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA57_;
17535 				res_5 = resizeString(res_5, 1);
17536 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17537 			}
17538 			LA57_: ;
17539 			T59_ = NIM_NIL;
17540 			T59_ = rope__ropes_109(res_5);
17541 			T60_ = NIM_NIL;
17542 			T60_ = indentLine__cgen_280(p, T59_);
17543 			add__ropes_159(T53_, T60_);
17544 			T61_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17545 			T61_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17546 			res_6 = rawNewString(((NI) 80));
17547 			cgFormatValue__cgen_141((&res_6), accessor);
17548 			res_6 = resizeString(res_6, 17);
17549 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_389));
17550 			{
17551 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA64_;
17552 				res_6 = resizeString(res_6, 1);
17553 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17554 			}
17555 			LA64_: ;
17556 			T66_ = NIM_NIL;
17557 			T66_ = rope__ropes_109(res_6);
17558 			T67_ = NIM_NIL;
17559 			T67_ = indentLine__cgen_280(p, T66_);
17560 			add__ropes_159(T61_, T67_);
17561 		}
17562 		goto LA49_;
17563 		LA51_: ;
17564 		{
17565 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T69_;
17566 			NimStringDesc* res_7;
17567 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T74_;
17568 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T75_;
17569 			T69_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17570 			T69_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17571 			res_7 = rawNewString(((NI) 80));
17572 			cgFormatValue__cgen_141((&res_7), accessor);
17573 			res_7 = resizeString(res_7, 11);
17574 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_390));
17575 			{
17576 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA72_;
17577 				res_7 = resizeString(res_7, 1);
17578 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17579 			}
17580 			LA72_: ;
17581 			T74_ = NIM_NIL;
17582 			T74_ = rope__ropes_109(res_7);
17583 			T75_ = NIM_NIL;
17584 			T75_ = indentLine__cgen_280(p, T74_);
17585 			add__ropes_159(T69_, T75_);
17586 		}
17587 		LA49_: ;
17588 	}
17589 	break;
17590 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
17591 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
17592 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
17593 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
17594 	{
17595 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T77_;
17596 		NimStringDesc* res_8;
17597 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T82_;
17598 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T83_;
17599 		T77_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17600 		T77_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17601 		res_8 = rawNewString(((NI) 80));
17602 		cgFormatValue__cgen_141((&res_8), accessor);
17603 		res_8 = resizeString(res_8, 5);
17604 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_378));
17605 		{
17606 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA80_;
17607 			res_8 = resizeString(res_8, 1);
17608 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17609 		}
17610 		LA80_: ;
17611 		T82_ = NIM_NIL;
17612 		T82_ = rope__ropes_109(res_8);
17613 		T83_ = NIM_NIL;
17614 		T83_ = indentLine__cgen_280(p, T82_);
17615 		add__ropes_159(T77_, T83_);
17616 	}
17617 	break;
17618 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
17619 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26):
17620 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
17621 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23):
17622 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47):
17623 	{
17624 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T85_;
17625 		NimStringDesc* res_9;
17626 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T90_;
17627 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T91_;
17628 		T85_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17629 		T85_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17630 		res_9 = rawNewString(((NI) 80));
17631 		cgFormatValue__cgen_141((&res_9), accessor);
17632 		res_9 = resizeString(res_9, 11);
17633 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_390));
17634 		{
17635 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA88_;
17636 			res_9 = resizeString(res_9, 1);
17637 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17638 		}
17639 		LA88_: ;
17640 		T90_ = NIM_NIL;
17641 		T90_ = rope__ropes_109(res_9);
17642 		T91_ = NIM_NIL;
17643 		T91_ = indentLine__cgen_280(p, T90_);
17644 		add__ropes_159(T85_, T91_);
17645 	}
17646 	break;
17647 	default:
17648 	{
17649 	}
17650 	break;
17651 	}
17652 	}BeforeRet_: ;
17653 }
N_NIMCALL(void,specializeReset__cgen_10829)17654 N_LIB_PRIVATE N_NIMCALL(void, specializeReset__cgen_10829)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a) {
17655 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
17656 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T2_;
17657 	T1_ = NIM_NIL;
17658 	T1_ = rdLoc__cgen_425(a);
17659 	T2_ = NIM_NIL;
17660 	T2_ = t__cgen_79(a);
17661 	specializeResetT__cgen_10571(p, T1_, T2_);
17662 }
N_NIMCALL(void,resetLoc__cgen_10832)17663 N_LIB_PRIVATE N_NIMCALL(void, resetLoc__cgen_10832)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* loc) {
17664 	NIM_BOOL containsGcRef;
17665 	NIM_BOOL T1_;
17666 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T3_;
17667 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
17668 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T4_;
17669 {	T1_ = (NIM_BOOL)0;
17670 	T1_ = !((((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0));
17671 	if (!(T1_)) goto LA2_;
17672 	T3_ = NIM_NIL;
17673 	T3_ = t__cgen_79((*loc));
17674 	T1_ = containsGarbageCollectedRef__types_612(T3_);
17675 	LA2_: ;
17676 	containsGcRef = T1_;
17677 	T4_ = NIM_NIL;
17678 	T4_ = t__cgen_79((*loc));
17679 	typ = skipTypes__ast_3735(T4_, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
17680 	{
17681 		NIM_BOOL T7_;
17682 		T7_ = (NIM_BOOL)0;
17683 		T7_ = isImportedCppType__cgen_1294(typ);
17684 		if (!T7_) goto LA8_;
17685 		goto BeforeRet_;
17686 	}
17687 	LA8_: ;
17688 	{
17689 		NIM_BOOL T12_;
17690 		tyObject_TType__facALICuu8zUj0hjvbTLFg* atyp;
17691 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T16_;
17692 		T12_ = (NIM_BOOL)0;
17693 		T12_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0);
17694 		if (!(T12_)) goto LA13_;
17695 		T12_ = ((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28) || (*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24));
17696 		LA13_: ;
17697 		if (!T12_) goto LA14_;
17698 		T16_ = NIM_NIL;
17699 		T16_ = t__cgen_79((*loc));
17700 		atyp = skipTypes__ast_3735(T16_, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
17701 		{
17702 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T21_;
17703 			NimStringDesc* res;
17704 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
17705 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
17706 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
17707 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
17708 			if (!((*atyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*atyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47))) goto LA19_;
17709 			T21_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17710 			T21_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17711 			res = rawNewString(((NI) 80));
17712 			T22_ = NIM_NIL;
17713 			T22_ = rdLoc__cgen_425((*loc));
17714 			cgFormatValue__cgen_141((&res), T22_);
17715 			res = resizeString(res, 11);
17716 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_376));
17717 			T23_ = NIM_NIL;
17718 			T23_ = rdLoc__cgen_425((*loc));
17719 			cgFormatValue__cgen_141((&res), T23_);
17720 			res = resizeString(res, 14);
17721 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_377));
17722 			{
17723 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA26_;
17724 				res = resizeString(res, 1);
17725 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17726 			}
17727 			LA26_: ;
17728 			T28_ = NIM_NIL;
17729 			T28_ = rope__ropes_109(res);
17730 			T29_ = NIM_NIL;
17731 			T29_ = indentLine__cgen_280(p, T28_);
17732 			add__ropes_159(T21_, T29_);
17733 		}
17734 		goto LA17_;
17735 		LA19_: ;
17736 		{
17737 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T31_;
17738 			NimStringDesc* res_2;
17739 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
17740 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
17741 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
17742 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
17743 			T31_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17744 			T31_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17745 			res_2 = rawNewString(((NI) 80));
17746 			T32_ = NIM_NIL;
17747 			T32_ = rdLoc__cgen_425((*loc));
17748 			cgFormatValue__cgen_141((&res_2), T32_);
17749 			res_2 = resizeString(res_2, 10);
17750 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_96));
17751 			T33_ = NIM_NIL;
17752 			T33_ = rdLoc__cgen_425((*loc));
17753 			cgFormatValue__cgen_141((&res_2), T33_);
17754 			res_2 = resizeString(res_2, 13);
17755 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_97));
17756 			{
17757 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA36_;
17758 				res_2 = resizeString(res_2, 1);
17759 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17760 			}
17761 			LA36_: ;
17762 			T38_ = NIM_NIL;
17763 			T38_ = rope__ropes_109(res_2);
17764 			T39_ = NIM_NIL;
17765 			T39_ = indentLine__cgen_280(p, T38_);
17766 			add__ropes_159(T31_, T39_);
17767 		}
17768 		LA17_: ;
17769 	}
17770 	goto LA10_;
17771 	LA14_: ;
17772 	{
17773 		NIM_BOOL T41_;
17774 		T41_ = (NIM_BOOL)0;
17775 		T41_ = isComplexValueType__cgen_10551(typ);
17776 		if (!!(T41_)) goto LA42_;
17777 		{
17778 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA nilLoc;
17779 			if (!containsGcRef) goto LA46_;
17780 			nimZeroMem((void*)(&nilLoc), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
17781 			initLoc__cgen_60((&nilLoc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1), (*loc).lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
17782 			nilLoc.r = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_99));
17783 			genRefAssign__cgen_10547(p, (*loc), nilLoc);
17784 		}
17785 		goto LA44_;
17786 		LA46_: ;
17787 		{
17788 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T49_;
17789 			NimStringDesc* res_3;
17790 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
17791 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T55_;
17792 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
17793 			T49_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17794 			T49_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17795 			res_3 = rawNewString(((NI) 80));
17796 			T50_ = NIM_NIL;
17797 			T50_ = rdLoc__cgen_425((*loc));
17798 			cgFormatValue__cgen_141((&res_3), T50_);
17799 			res_3 = resizeString(res_3, 5);
17800 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_378));
17801 			{
17802 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA53_;
17803 				res_3 = resizeString(res_3, 1);
17804 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17805 			}
17806 			LA53_: ;
17807 			T55_ = NIM_NIL;
17808 			T55_ = rope__ropes_109(res_3);
17809 			T56_ = NIM_NIL;
17810 			T56_ = indentLine__cgen_280(p, T55_);
17811 			add__ropes_159(T49_, T56_);
17812 		}
17813 		LA44_: ;
17814 	}
17815 	goto LA10_;
17816 	LA42_: ;
17817 	{
17818 		{
17819 			NIM_BOOL T60_;
17820 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T64_;
17821 			T60_ = (NIM_BOOL)0;
17822 			T60_ = !(((*loc).storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2)));
17823 			if (!(T60_)) goto LA61_;
17824 			T60_ = containsGcRef;
17825 			LA61_: ;
17826 			if (!T60_) goto LA62_;
17827 			specializeReset__cgen_10829(p, (*loc));
17828 			T64_ = NIM_NIL;
17829 			T64_ = t__cgen_79((*loc));
17830 			genObjectInit__cgen_10380(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2), T64_, loc, ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 0));
17831 		}
17832 		goto LA58_;
17833 		LA62_: ;
17834 		{
17835 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T66_;
17836 			NimStringDesc* res_4;
17837 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T67_;
17838 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
17839 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T69_;
17840 			tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw T70_;
17841 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T76_;
17842 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
17843 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T82_;
17844 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T83_;
17845 			T66_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17846 			T66_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17847 			res_4 = rawNewString(((NI) 80));
17848 			T67_ = NIM_NIL;
17849 			T67_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_107));
17850 			cgFormatValue__cgen_141((&res_4), T67_);
17851 			res_4 = resizeString(res_4, 8);
17852 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
17853 			T68_ = NIM_NIL;
17854 			T68_ = addrLoc__cgen_10303((*(*(*p).module).g).config, (*loc));
17855 			cgFormatValue__cgen_141((&res_4), T68_);
17856 			res_4 = resizeString(res_4, 9);
17857 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
17858 			T69_ = NIM_NIL;
17859 			T69_ = t__cgen_79((*loc));
17860 			T70_ = (tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw)0;
17861 			{
17862 				if (!((*(*loc).lode).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA73_;
17863 				T70_ = (*(*(*loc).lode)._kind_4.sym).kind;
17864 			}
17865 			goto LA71_;
17866 			LA73_: ;
17867 			{
17868 				T70_ = ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8);
17869 			}
17870 			LA71_: ;
17871 			T76_ = NIM_NIL;
17872 			T76_ = getTypeDesc__cgen_6631((*p).module, T69_, T70_);
17873 			cgFormatValue__cgen_141((&res_4), T76_);
17874 			res_4 = resizeString(res_4, 3);
17875 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
17876 			{
17877 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA79_;
17878 				res_4 = resizeString(res_4, 1);
17879 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17880 			}
17881 			LA79_: ;
17882 			T81_ = NIM_NIL;
17883 			T81_ = rope__ropes_109(res_4);
17884 			T82_ = NIM_NIL;
17885 			T82_ = indentLine__cgen_280(p, T81_);
17886 			add__ropes_159(T66_, T82_);
17887 			T83_ = NIM_NIL;
17888 			T83_ = t__cgen_79((*loc));
17889 			genObjectInit__cgen_10380(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2), T83_, loc, ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 0));
17890 		}
17891 		LA58_: ;
17892 	}
17893 	LA10_: ;
17894 	}BeforeRet_: ;
17895 }
N_NIMCALL(void,closureSetup__cgen_25675)17896 N_LIB_PRIVATE N_NIMCALL(void, closureSetup__cgen_25675)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc) {
17897 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ls;
17898 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* env;
17899 {	{
17900 		if (!!((((*(*prc).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 12))&63U)))!=0))) goto LA3_;
17901 		goto BeforeRet_;
17902 	}
17903 	LA3_: ;
17904 	ls = lastSon__ast_4832((*(*prc).ast)._kind_6.sons->data[((NI) 3)]);
17905 	{
17906 		if (!!(((*ls).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA7_;
17907 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*prc).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_391), TM__MQdRN7fpbG7rPm4JpVVAhA_392);
17908 	}
17909 	LA7_: ;
17910 	env = (*ls)._kind_4.sym;
17911 	assignLocalVar__cgen_11099(p, ls);
17912 	{
17913 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T13_;
17914 		NimStringDesc* res;
17915 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
17916 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
17917 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
17918 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
17919 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
17920 		if (!((*(*(*(*p).module).g).config).selectedGC == ((tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw) 10))) goto LA11_;
17921 		T13_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17922 		T13_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17923 		res = rawNewString(((NI) 80));
17924 		T14_ = NIM_NIL;
17925 		T14_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_104));
17926 		cgFormatValue__cgen_141((&res), T14_);
17927 		res = resizeString(res, 10);
17928 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_101));
17929 		T15_ = NIM_NIL;
17930 		T15_ = addrLoc__cgen_10303((*(*(*p).module).g).config, (*env).loc);
17931 		cgFormatValue__cgen_141((&res), T15_);
17932 		res = resizeString(res, 3);
17933 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_393));
17934 		T16_ = NIM_NIL;
17935 		T16_ = getTypeDesc__cgen_6631((*p).module, (*env).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
17936 		cgFormatValue__cgen_141((&res), T16_);
17937 		res = resizeString(res, 9);
17938 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_394));
17939 		{
17940 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA19_;
17941 			res = resizeString(res, 1);
17942 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17943 		}
17944 		LA19_: ;
17945 		T21_ = NIM_NIL;
17946 		T21_ = rope__ropes_109(res);
17947 		T22_ = NIM_NIL;
17948 		T22_ = indentLine__cgen_280(p, T21_);
17949 		add__ropes_159(T13_, T22_);
17950 	}
17951 	goto LA9_;
17952 	LA11_: ;
17953 	{
17954 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T24_;
17955 		NimStringDesc* res_2;
17956 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
17957 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
17958 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
17959 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
17960 		T24_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
17961 		T24_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
17962 		res_2 = rawNewString(((NI) 80));
17963 		T25_ = NIM_NIL;
17964 		T25_ = rdLoc__cgen_425((*env).loc);
17965 		cgFormatValue__cgen_141((&res_2), T25_);
17966 		res_2 = resizeString(res_2, 4);
17967 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_105));
17968 		T26_ = NIM_NIL;
17969 		T26_ = getTypeDesc__cgen_6631((*p).module, (*env).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
17970 		cgFormatValue__cgen_141((&res_2), T26_);
17971 		res_2 = resizeString(res_2, 8);
17972 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_395));
17973 		{
17974 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA29_;
17975 			res_2 = resizeString(res_2, 1);
17976 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
17977 		}
17978 		LA29_: ;
17979 		T31_ = NIM_NIL;
17980 		T31_ = rope__ropes_109(res_2);
17981 		T32_ = NIM_NIL;
17982 		T32_ = indentLine__cgen_280(p, T31_);
17983 		add__ropes_159(T24_, T32_);
17984 	}
17985 	LA9_: ;
17986 	}BeforeRet_: ;
17987 }
N_NIMCALL(void,genProcBody__cgen_25959)17988 N_LIB_PRIVATE N_NIMCALL(void, genProcBody__cgen_25959)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* procBody) {
17989 	genStmts__cgen_11457(p, procBody);
17990 	{
17991 		NimStringDesc* res;
17992 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
17993 		NimStringDesc* res_2;
17994 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
17995 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
17996 		if (!((48 & (*p).flags) == 16)) goto LA3_;
17997 		(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 5)) & 7);
17998 		res = rawNewString(((NI) 80));
17999 		res = resizeString(res, 18);
18000 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_396));
18001 		{
18002 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA7_;
18003 			res = resizeString(res, 1);
18004 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18005 		}
18006 		LA7_: ;
18007 		T9_ = NIM_NIL;
18008 		T9_ = rope__ropes_109(res);
18009 		add__ropes_159(&(*p).blocks->data[((NI) 0)].sections[(((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0))- 0], T9_);
18010 		res_2 = rawNewString(((NI) 80));
18011 		res_2 = resizeString(res_2, 10);
18012 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_397));
18013 		T10_ = NIM_NIL;
18014 		T10_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_398));
18015 		cgFormatValue__cgen_141((&res_2), T10_);
18016 		res_2 = resizeString(res_2, 3);
18017 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
18018 		{
18019 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA13_;
18020 			res_2 = resizeString(res_2, 1);
18021 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18022 		}
18023 		LA13_: ;
18024 		T15_ = NIM_NIL;
18025 		T15_ = rope__ropes_109(res_2);
18026 		add__ropes_159(&(*p).blocks->data[((NI) 0)].sections[(((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1))- 0], T15_);
18027 	}
18028 	LA3_: ;
18029 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_346)18030 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_346)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
18031 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18032 	result = NIM_NIL;
18033 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_400), args, argsLen_0);
18034 	return result;
18035 }
N_NIMCALL(void,genCLineDir__cgen_334)18036 N_LIB_PRIVATE N_NIMCALL(void, genCLineDir__cgen_334)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** r, NimStringDesc* filename, NI line, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
18037 	{
18038 		NIM_BOOL T3_;
18039 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T7_;
18040 		NimStringDesc* T8_;
18041 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
18042 		T3_ = (NIM_BOOL)0;
18043 		T3_ = (((*conf).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0);
18044 		if (!(T3_)) goto LA4_;
18045 		T3_ = (((NI) 0) < line);
18046 		LA4_: ;
18047 		if (!T3_) goto LA5_;
18048 		nimZeroMem((void*)T7_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
18049 		T8_ = NIM_NIL;
18050 		T8_ = makeSingleLineCString__ccgutils_108(filename);
18051 		T7_[0] = rope__ropes_109(T8_);
18052 		T7_[1] = rope__ropes_115(((NI64) (line)));
18053 		T9_ = NIM_NIL;
18054 		T9_ = percent___cgen_346(T7_, 2);
18055 		add__ropes_159(r, T9_);
18056 	}
18057 	LA5_: ;
18058 }
N_NIMCALL(void,genCLineDir__cgen_351)18059 N_LIB_PRIVATE N_NIMCALL(void, genCLineDir__cgen_351)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** r, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
18060 	NimStringDesc* T1_;
18061 	NI T2_;
18062 	T1_ = NIM_NIL;
18063 	T1_ = toFullPath__msgs_538(conf, info.fileIndex);
18064 	T2_ = (NI)0;
18065 	T2_ = safeLineNm__cgen_331(info);
18066 	genCLineDir__cgen_334(r, T1_, T2_, conf);
18067 }
N_INLINE(NIM_BOOL,isNoReturn__cgen_26011)18068 static N_INLINE(NIM_BOOL, isNoReturn__cgen_26011)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
18069 	NIM_BOOL result;
18070 	NIM_BOOL T1_;
18071 	result = (NIM_BOOL)0;
18072 	T1_ = (NIM_BOOL)0;
18073 	T1_ = (((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 16))&63U)))!=0);
18074 	if (!(T1_)) goto LA2_;
18075 	T1_ = !(((*(*(*m).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 3)));
18076 	LA2_: ;
18077 	result = T1_;
18078 	return result;
18079 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,initFrame__cgen_17483)18080 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, initFrame__cgen_17483)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* procname, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* filename) {
18081 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18082 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
18083 	NimStringDesc* res_2;
18084 	result = NIM_NIL;
18085 	{
18086 		NI T3_;
18087 		NimStringDesc* res;
18088 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
18089 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
18090 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
18091 		T3_ = (NI)0;
18092 		T3_ = len__ropes_10((*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 2))- 0]);
18093 		if (!(T3_ == ((NI) 0))) goto LA4_;
18094 		res = rawNewString(((NI) 80));
18095 		res = resizeString(res, 2);
18096 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_314));
18097 		cgFormatValue__cgen_145((&res), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_405));
18098 		res = resizeString(res, 125);
18099 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_406));
18100 		T6_ = NIM_NIL;
18101 		T6_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_407));
18102 		cgFormatValue__cgen_141((&res), T6_);
18103 		res = resizeString(res, 11);
18104 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_408));
18105 		cgFormatValue__cgen_145((&res), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_405));
18106 		res = resizeString(res, 232);
18107 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_409));
18108 		T7_ = NIM_NIL;
18109 		T7_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_407));
18110 		cgFormatValue__cgen_141((&res), T7_);
18111 		res = resizeString(res, 20);
18112 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_410));
18113 		cgFormatValue__cgen_145((&res), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_405));
18114 		res = resizeString(res, 70);
18115 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_411));
18116 		T8_ = NIM_NIL;
18117 		T8_ = rope__ropes_109(res);
18118 		add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 2))- 0], T8_);
18119 	}
18120 	LA4_: ;
18121 	T9_ = NIM_NIL;
18122 	T9_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_407));
18123 	(void)(T9_);
18124 	res_2 = rawNewString(((NI) 80));
18125 	res_2 = resizeString(res_2, 8);
18126 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_412));
18127 	cgFormatValue__cgen_141((&res_2), procname);
18128 	res_2 = resizeString(res_2, 2);
18129 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
18130 	cgFormatValue__cgen_141((&res_2), filename);
18131 	res_2 = resizeString(res_2, 2);
18132 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
18133 	{
18134 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA12_;
18135 		res_2 = resizeString(res_2, 1);
18136 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18137 	}
18138 	LA12_: ;
18139 	result = rope__ropes_109(res_2);
18140 	return result;
18141 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_26214)18142 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26214)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
18143 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18144 	result = NIM_NIL;
18145 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_414), args, argsLen_0);
18146 	return result;
18147 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,deinitFrame__cgen_17553)18148 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, deinitFrame__cgen_17553)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
18149 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18150 	NimStringDesc* res;
18151 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
18152 	result = NIM_NIL;
18153 	res = rawNewString(((NI) 80));
18154 	res = resizeString(res, 1);
18155 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
18156 	T1_ = NIM_NIL;
18157 	T1_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_415));
18158 	cgFormatValue__cgen_141((&res), T1_);
18159 	res = resizeString(res, 3);
18160 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
18161 	{
18162 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA4_;
18163 		res = resizeString(res, 1);
18164 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18165 	}
18166 	LA4_: ;
18167 	result = rope__ropes_109(res);
18168 	return result;
18169 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_26223)18170 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26223)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
18171 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18172 	result = NIM_NIL;
18173 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_416), args, argsLen_0);
18174 	return result;
18175 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_26228)18176 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26228)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
18177 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18178 	result = NIM_NIL;
18179 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_417), args, argsLen_0);
18180 	return result;
18181 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25954)18182 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25954)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
18183 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18184 	result = NIM_NIL;
18185 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_418), args, argsLen_0);
18186 	return result;
18187 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getProcTypeCast__cgen_25943)18188 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getProcTypeCast__cgen_25943)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc) {
18189 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18190 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
18191 	result = NIM_NIL;
18192 	T1_ = NIM_NIL;
18193 	T1_ = t__cgen_79((*prc).loc);
18194 	result = getTypeDesc__cgen_6631(m, T1_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
18195 	{
18196 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* rettype;
18197 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* params;
18198 		tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA check;
18199 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T6_;
18200 		if (!((*(*prc).typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9))) goto LA4_;
18201 		rettype = NIM_NIL;
18202 		params = NIM_NIL;
18203 		nimZeroMem((void*)(&check), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
18204 		initIntSet__pureZcollectionsZintsets_238((&check));
18205 		genProcParams__cgen_3480(m, (*prc).typ, &rettype, &params, (&check), NIM_TRUE, NIM_FALSE);
18206 		nimZeroMem((void*)T6_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
18207 		T6_[0] = rettype;
18208 		T6_[1] = params;
18209 		result = percent___cgen_25954(T6_, 2);
18210 	}
18211 	LA4_: ;
18212 	return result;
18213 }
N_NIMCALL(void,genProcAux__cgen_26023)18214 N_LIB_PRIVATE N_NIMCALL(void, genProcAux__cgen_26023)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc) {
18215 	tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p;
18216 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* header;
18217 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* returnStmt;
18218 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* procBody;
18219 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* generatedProc;
18220 	p = newProc__cgendata_278(prc, m);
18221 	header = genProcHeader__cgen_614(m, prc, NIM_FALSE);
18222 	returnStmt = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
18223 	procBody = transformBody__transf_16((*(*m).g).graph, (*m).Sup.idgen, prc, NIM_FALSE);
18224 	{
18225 		if (!(((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 42))&63U)))!=0)) goto LA3_;
18226 		procBody = injectDestructorCalls__injectdestructors_10100((*(*m).g).graph, (*m).Sup.idgen, prc, procBody);
18227 	}
18228 	LA3_: ;
18229 	{
18230 		NIM_BOOL T7_;
18231 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* resNode;
18232 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* res;
18233 		T7_ = (NIM_BOOL)0;
18234 		T7_ = !((((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 11))&63U)))!=0));
18235 		if (!(T7_)) goto LA8_;
18236 		T7_ = !(((*(*prc).typ).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
18237 		LA8_: ;
18238 		if (!T7_) goto LA9_;
18239 		{
18240 			NI T13_;
18241 			T13_ = (NI)0;
18242 			T13_ = len__ast_3198((*prc).ast);
18243 			if (!(T13_ <= ((NI) 7))) goto LA14_;
18244 			internalErrorImpl__msgs_1431((*(*m).g).config, (*prc).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_85), TM__MQdRN7fpbG7rPm4JpVVAhA_86);
18245 		}
18246 		LA14_: ;
18247 		resNode = (*(*prc).ast)._kind_6.sons->data[((NI) 7)];
18248 		res = (*resNode)._kind_4.sym;
18249 		{
18250 			NIM_BOOL T18_;
18251 			NimStringDesc* res_3;
18252 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
18253 			T18_ = (NIM_BOOL)0;
18254 			T18_ = isInvalidReturnType__cgen_1335((*(*m).g).config, (*(*prc).typ).sons->data[((NI) 0)]);
18255 			if (!!(T18_)) goto LA19_;
18256 			{
18257 				if (!(((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA23_;
18258 				(*res).flags |= ((NU64)1)<<((((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14)) & 63);
18259 			}
18260 			LA23_: ;
18261 			{
18262 				NIM_BOOL T27_;
18263 				NIM_BOOL T28_;
18264 				NIM_BOOL T30_;
18265 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val;
18266 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* decl;
18267 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
18268 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T35_;
18269 				NimStringDesc* res_2;
18270 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
18271 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
18272 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
18273 				T27_ = (NIM_BOOL)0;
18274 				T28_ = (NIM_BOOL)0;
18275 				T28_ = (((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0);
18276 				if (!(T28_)) goto LA29_;
18277 				T30_ = (NIM_BOOL)0;
18278 				T30_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
18279 				if (T30_) goto LA31_;
18280 				T30_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
18281 				LA31_: ;
18282 				T28_ = T30_;
18283 				LA29_: ;
18284 				T27_ = T28_;
18285 				if (!(T27_)) goto LA32_;
18286 				val = easyResultAsgn__cgen_25751(procBody);
18287 				T27_ = !((val == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)));
18288 				LA32_: ;
18289 				if (!T27_) goto LA33_;
18290 				decl = localVarDecl__cgen_11059(p, resNode);
18291 				nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
18292 				initLocExprSingleUse__cgen_11487(p, val, (&a));
18293 				T35_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18294 				T35_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
18295 				res_2 = rawNewString(((NI) 80));
18296 				cgFormatValue__cgen_141((&res_2), decl);
18297 				res_2 = resizeString(res_2, 3);
18298 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
18299 				T36_ = NIM_NIL;
18300 				T36_ = rdLoc__cgen_425(a);
18301 				cgFormatValue__cgen_141((&res_2), T36_);
18302 				res_2 = resizeString(res_2, 1);
18303 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
18304 				{
18305 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA39_;
18306 					res_2 = resizeString(res_2, 1);
18307 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18308 				}
18309 				LA39_: ;
18310 				T41_ = NIM_NIL;
18311 				T41_ = rope__ropes_109(res_2);
18312 				T42_ = NIM_NIL;
18313 				T42_ = indentLine__cgen_280(p, T41_);
18314 				add__ropes_159(T35_, T42_);
18315 			}
18316 			goto LA25_;
18317 			LA33_: ;
18318 			{
18319 				assignLocalVar__cgen_11099(p, resNode);
18320 				initLocalVar__cgen_10987(p, res, NIM_FALSE);
18321 			}
18322 			LA25_: ;
18323 			res_3 = rawNewString(((NI) 80));
18324 			res_3 = resizeString(res_3, 8);
18325 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_373));
18326 			T44_ = NIM_NIL;
18327 			T44_ = rdLoc__cgen_425((*res).loc);
18328 			cgFormatValue__cgen_141((&res_3), T44_);
18329 			res_3 = resizeString(res_3, 1);
18330 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
18331 			{
18332 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA47_;
18333 				res_3 = resizeString(res_3, 1);
18334 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18335 			}
18336 			LA47_: ;
18337 			returnStmt = rope__ropes_109(res_3);
18338 		}
18339 		goto LA16_;
18340 		LA19_: ;
18341 		{
18342 			fillResult__cgen_1768((*(*(*p).module).g).config, resNode);
18343 			assignParam__cgen_11417(p, res, (*(*prc).typ).sons->data[((NI) 0)]);
18344 			{
18345 				if (!(((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA52_;
18346 			}
18347 			goto LA50_;
18348 			LA52_: ;
18349 			{
18350 				tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg T55_;
18351 				T55_ = (tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg)0;
18352 				T55_ = allPathsAsgnResult__cgen_25806(procBody);
18353 				if (!(T55_ == ((tyEnum_InitResultEnum__9c9csRan2YP9boKbiUR9cP6PNg) 1))) goto LA56_;
18354 			}
18355 			goto LA50_;
18356 			LA56_: ;
18357 			{
18358 				resetLoc__cgen_10832(p, (&(*res).loc));
18359 			}
18360 			LA50_: ;
18361 			{
18362 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T61_;
18363 				T61_ = NIM_NIL;
18364 				T61_ = skipTypes__ast_3735((*res).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
18365 				if (!((*T61_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16))) goto LA62_;
18366 				(*res).loc.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0);
18367 			}
18368 			LA62_: ;
18369 		}
18370 		LA16_: ;
18371 	}
18372 	LA9_: ;
18373 	{
18374 		NI i;
18375 		NI colontmp_;
18376 		NI i_2;
18377 		i = (NI)0;
18378 		colontmp_ = (NI)0;
18379 		colontmp_ = len__ast_3198((*(*prc).typ).n);
18380 		i_2 = ((NI) 1);
18381 		{
18382 			while (1) {
18383 				if (!(i_2 < colontmp_)) goto LA66;
18384 				i = i_2;
18385 				{
18386 					tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param;
18387 					param = (*(*(*(*prc).typ).n)._kind_6.sons->data[i])._kind_4.sym;
18388 					{
18389 						NIM_BOOL T70_;
18390 						T70_ = (NIM_BOOL)0;
18391 						T70_ = isCompileTimeOnly__types_3519((*param).typ);
18392 						if (!T70_) goto LA71_;
18393 						goto LA67;
18394 					}
18395 					LA71_: ;
18396 					assignParam__cgen_11417(p, param, (*(*prc).typ).sons->data[((NI) 0)]);
18397 				} LA67: ;
18398 				i_2 += ((NI) 1);
18399 			} LA66: ;
18400 		}
18401 	}
18402 	closureSetup__cgen_25675(p, prc);
18403 	genProcBody__cgen_25959(p, procBody);
18404 	generatedProc = NIM_NIL;
18405 	genCLineDir__cgen_351(&generatedProc, (*prc).info, (*(*m).g).config);
18406 	{
18407 		NIM_BOOL T75_;
18408 		T75_ = (NIM_BOOL)0;
18409 		T75_ = isNoReturn__cgen_26011((*p).module, prc);
18410 		if (!T75_) goto LA76_;
18411 		{
18412 			if (!((CC__extccomp_508[((*(*(*(*p).module).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 6))&7U)))!=0)) goto LA80_;
18413 			header = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_401), header);
18414 		}
18415 		LA80_: ;
18416 	}
18417 	LA76_: ;
18418 	{
18419 		NimStringDesc* res_4;
18420 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T94_;
18421 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T95_;
18422 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T96_;
18423 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T97_;
18424 		if (!(((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 11))&63U)))!=0)) goto LA84_;
18425 		{
18426 			if (!((CC__extccomp_508[((*(*(*(*p).module).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 6))&7U)))!=0)) goto LA88_;
18427 			header = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_402), header);
18428 		}
18429 		LA88_: ;
18430 		res_4 = rawNewString(((NI) 80));
18431 		cgFormatValue__cgen_141((&res_4), header);
18432 		res_4 = resizeString(res_4, 2);
18433 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_403));
18434 		{
18435 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA92_;
18436 			res_4 = resizeString(res_4, 1);
18437 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18438 		}
18439 		LA92_: ;
18440 		T94_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18441 		T94_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
18442 		cgFormatValue__cgen_141((&res_4), (*T94_));
18443 		T95_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18444 		T95_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
18445 		cgFormatValue__cgen_141((&res_4), (*T95_));
18446 		T96_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18447 		T96_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
18448 		cgFormatValue__cgen_141((&res_4), (*T96_));
18449 		res_4 = resizeString(res_4, 3);
18450 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_404));
18451 		T97_ = NIM_NIL;
18452 		T97_ = rope__ropes_109(res_4);
18453 		add__ropes_159(&generatedProc, T97_);
18454 	}
18455 	goto LA82_;
18456 	LA84_: ;
18457 	{
18458 		NimStringDesc* res_5;
18459 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T111_;
18460 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T136_;
18461 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T137_;
18462 		tyArray__qTjAvTvKF9anytN1At69aJMQ T149_;
18463 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T150_;
18464 		{
18465 			NIM_BOOL T101_;
18466 			tyArray__JiWwrsTRC6xqNlGcBthSVA T105_;
18467 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T106_;
18468 			T101_ = (NIM_BOOL)0;
18469 			T101_ = hcrOn__cgen_42(m);
18470 			if (!(T101_)) goto LA102_;
18471 			T101_ = isReloadable__cgen_6706(m, prc);
18472 			LA102_: ;
18473 			if (!T101_) goto LA103_;
18474 			nimZeroMem((void*)T105_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
18475 			T105_[0] = header;
18476 			T106_ = NIM_NIL;
18477 			T106_ = percent___cgen_7722(T105_, 1);
18478 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 8))- 0], T106_);
18479 		}
18480 		LA103_: ;
18481 		res_5 = rawNewString(((NI) 80));
18482 		cgFormatValue__cgen_141((&res_5), header);
18483 		res_5 = resizeString(res_5, 2);
18484 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_403));
18485 		{
18486 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA109_;
18487 			res_5 = resizeString(res_5, 1);
18488 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18489 		}
18490 		LA109_: ;
18491 		T111_ = NIM_NIL;
18492 		T111_ = rope__ropes_109(res_5);
18493 		add__ropes_159(&generatedProc, T111_);
18494 		{
18495 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T116_;
18496 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* procname;
18497 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T117_;
18498 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T118_;
18499 			if (!(((*prc).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 17))&31U)))!=0)) goto LA114_;
18500 			T116_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18501 			T116_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
18502 			add__ropes_159(&generatedProc, (*T116_));
18503 			procname = makeCString__msgs_50((*(*prc).name).s);
18504 			T117_ = NIM_NIL;
18505 			T117_ = quotedFilename__msgs_1464((*(*(*p).module).g).config, (*prc).info);
18506 			T118_ = NIM_NIL;
18507 			T118_ = initFrame__cgen_17483(p, procname, T117_);
18508 			add__ropes_159(&generatedProc, T118_);
18509 		}
18510 		goto LA112_;
18511 		LA114_: ;
18512 		{
18513 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T120_;
18514 			T120_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18515 			T120_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
18516 			add__ropes_159(&generatedProc, (*T120_));
18517 		}
18518 		LA112_: ;
18519 		{
18520 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T125_;
18521 			NimStringDesc* res_6;
18522 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T126_;
18523 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T131_;
18524 			if (!(((*prc).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 21))&31U)))!=0)) goto LA123_;
18525 			T125_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18526 			T125_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
18527 			res_6 = rawNewString(((NI) 80));
18528 			res_6 = resizeString(res_6, 1);
18529 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
18530 			T126_ = NIM_NIL;
18531 			T126_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_413));
18532 			cgFormatValue__cgen_141((&res_6), T126_);
18533 			res_6 = resizeString(res_6, 3);
18534 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
18535 			{
18536 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA129_;
18537 				res_6 = resizeString(res_6, 1);
18538 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18539 			}
18540 			LA129_: ;
18541 			T131_ = NIM_NIL;
18542 			T131_ = rope__ropes_109(res_6);
18543 			add__ropes_159(T125_, T131_);
18544 		}
18545 		LA123_: ;
18546 		{
18547 			if (!(((*p).flags &((NU8)1<<((NU)(((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 0))&7U)))!=0)) goto LA134_;
18548 			add__ropes_162(&generatedProc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
18549 		}
18550 		LA134_: ;
18551 		T136_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18552 		T136_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
18553 		add__ropes_159(&generatedProc, (*T136_));
18554 		T137_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18555 		T137_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
18556 		add__ropes_159(&generatedProc, (*T137_));
18557 		{
18558 			tyArray__qTjAvTvKF9anytN1At69aJMQ T142_;
18559 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T143_;
18560 			if (!(((*p).flags &((NU8)1<<((NU)(((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 0))&7U)))!=0)) goto LA140_;
18561 			nimZeroMem((void*)T142_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
18562 			T143_ = NIM_NIL;
18563 			T143_ = percent___cgen_26214(T142_, 0);
18564 			add__ropes_159(&generatedProc, T143_);
18565 		}
18566 		LA140_: ;
18567 		{
18568 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T148_;
18569 			if (!(((*prc).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 17))&31U)))!=0)) goto LA146_;
18570 			T148_ = NIM_NIL;
18571 			T148_ = deinitFrame__cgen_17553(p);
18572 			add__ropes_159(&generatedProc, T148_);
18573 		}
18574 		LA146_: ;
18575 		add__ropes_159(&generatedProc, returnStmt);
18576 		nimZeroMem((void*)T149_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
18577 		T150_ = NIM_NIL;
18578 		T150_ = percent___cgen_26223(T149_, 0);
18579 		add__ropes_159(&generatedProc, T150_);
18580 	}
18581 	LA82_: ;
18582 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], generatedProc);
18583 	{
18584 		NIM_BOOL T153_;
18585 		tyArray__f7nG5LD47BH5K9c6mASit3g T156_;
18586 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T157_;
18587 		T153_ = (NIM_BOOL)0;
18588 		T153_ = isReloadable__cgen_6706(m, prc);
18589 		if (!T153_) goto LA154_;
18590 		nimZeroMem((void*)T156_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
18591 		T156_[0] = (*prc).loc.r;
18592 		T156_[1] = amp___ropes_140((*prc).loc.r, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_71));
18593 		T156_[2] = getProcTypeCast__cgen_25943(m, prc);
18594 		T156_[3] = getModuleDllPath__cgen_136(m, prc);
18595 		T157_ = NIM_NIL;
18596 		T157_ = percent___cgen_26228(T156_, 4);
18597 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T157_);
18598 	}
18599 	LA154_: ;
18600 }
N_NIMCALL(NIM_BOOL,isGetProcAddr__cgen_25375)18601 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isGetProcAddr__cgen_25375)(tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* lib) {
18602 	NIM_BOOL result;
18603 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
18604 	NIM_BOOL T1_;
18605 	NIM_BOOL T2_;
18606 	result = (NIM_BOOL)0;
18607 	n = (*lib).path;
18608 	T1_ = (NIM_BOOL)0;
18609 	T2_ = (NIM_BOOL)0;
18610 	T2_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32));
18611 	if (!(T2_)) goto LA3_;
18612 	T2_ = !(((*n).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
18613 	LA3_: ;
18614 	T1_ = T2_;
18615 	if (!(T1_)) goto LA4_;
18616 	T1_ = ((*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26) || (*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25));
18617 	LA4_: ;
18618 	result = T1_;
18619 	return result;
18620 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25409)18621 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25409)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
18622 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18623 	result = NIM_NIL;
18624 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_419), args, argsLen_0);
18625 	return result;
18626 }
N_NIMCALL(void,loadDynamicLib__cgen_25391)18627 N_LIB_PRIVATE N_NIMCALL(void, loadDynamicLib__cgen_25391)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* lib) {
18628 	{
18629 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
18630 		tyArray__JiWwrsTRC6xqNlGcBthSVA T5_;
18631 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
18632 		if (!!((*lib).generated)) goto LA3_;
18633 		(*lib).generated = NIM_TRUE;
18634 		tmp = getTempName__cgen_418(m);
18635 		asgnRef((void**) (&(*lib).name), tmp);
18636 		nimZeroMem((void*)T5_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
18637 		T5_[0] = tmp;
18638 		T6_ = NIM_NIL;
18639 		T6_ = percent___cgen_25409(T5_, 1);
18640 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T6_);
18641 		{
18642 			tySequence__sM4lkSb7zS6F7OVMvW9cffQ* s;
18643 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* loadlib;
18644 			NimStringDesc* res_3;
18645 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
18646 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
18647 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
18648 			if (!((*(*lib).path).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*(*lib).path).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA9_;
18649 			s = NIM_NIL;
18650 			libCandidates__pureZdynlib_37((*(*lib).path)._kind_3.strVal, (&s));
18651 			liMessage__msgs_1118((*(*m).g).config, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 91), (*(*lib).path)._kind_3.strVal, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__MQdRN7fpbG7rPm4JpVVAhA_420, NIM_FALSE);
18652 			loadlib = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
18653 			{
18654 				NI i;
18655 				NI colontmp_;
18656 				NI T12_;
18657 				NI res;
18658 				i = (NI)0;
18659 				colontmp_ = (NI)0;
18660 				T12_ = ((s ? s->Sup.len : 0)-1);
18661 				colontmp_ = T12_;
18662 				res = ((NI) 0);
18663 				{
18664 					while (1) {
18665 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
18666 						NimStringDesc* res_2;
18667 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
18668 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
18669 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
18670 						if (!(res <= colontmp_)) goto LA14;
18671 						i = res;
18672 						(*m).labels += ((NI) 1);
18673 						{
18674 							if (!(((NI) 0) < i)) goto LA17_;
18675 							add__ropes_162(&loadlib, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_421));
18676 						}
18677 						LA17_: ;
18678 						n = newStrNode__ast_3813(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20), s->data[i]);
18679 						(*n).info = (*(*lib).path).info;
18680 						res_2 = rawNewString(((NI) 80));
18681 						res_2 = resizeString(res_2, 1);
18682 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
18683 						cgFormatValue__cgen_141((&res_2), tmp);
18684 						res_2 = resizeString(res_2, 3);
18685 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
18686 						T19_ = NIM_NIL;
18687 						T19_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_422));
18688 						cgFormatValue__cgen_141((&res_2), T19_);
18689 						res_2 = resizeString(res_2, 1);
18690 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
18691 						T20_ = NIM_NIL;
18692 						T20_ = genStringLiteral__cgen_608(m, n);
18693 						cgFormatValue__cgen_141((&res_2), T20_);
18694 						res_2 = resizeString(res_2, 2);
18695 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_423));
18696 						{
18697 							if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA23_;
18698 							res_2 = resizeString(res_2, 1);
18699 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18700 						}
18701 						LA23_: ;
18702 						T25_ = NIM_NIL;
18703 						T25_ = rope__ropes_109(res_2);
18704 						add__ropes_159(&loadlib, T25_);
18705 						res += ((NI) 1);
18706 					} LA14: ;
18707 				}
18708 			}
18709 			res_3 = rawNewString(((NI) 80));
18710 			res_3 = resizeString(res_3, 6);
18711 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_424));
18712 			cgFormatValue__cgen_141((&res_3), loadlib);
18713 			res_3 = resizeString(res_3, 3);
18714 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_425));
18715 			T26_ = NIM_NIL;
18716 			T26_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_426));
18717 			cgFormatValue__cgen_141((&res_3), T26_);
18718 			res_3 = resizeString(res_3, 1);
18719 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
18720 			T27_ = NIM_NIL;
18721 			T27_ = genStringLiteral__cgen_608(m, (*lib).path);
18722 			cgFormatValue__cgen_141((&res_3), T27_);
18723 			res_3 = resizeString(res_3, 2);
18724 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
18725 			{
18726 				if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA30_;
18727 				res_3 = resizeString(res_3, 1);
18728 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18729 			}
18730 			LA30_: ;
18731 			T32_ = NIM_NIL;
18732 			T32_ = rope__ropes_109(res_3);
18733 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T32_);
18734 		}
18735 		goto LA7_;
18736 		LA9_: ;
18737 		{
18738 			tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p;
18739 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest;
18740 			NimStringDesc* res_4;
18741 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
18742 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
18743 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
18744 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T41_;
18745 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T42_;
18746 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T43_;
18747 			NimStringDesc* res_5;
18748 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
18749 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
18750 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
18751 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
18752 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
18753 			p = newProc__cgendata_278(((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL), m);
18754 			(*p).options &= ~(((NU32)1) << ((((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 17)) & 31));
18755 			(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 6)) & 7);
18756 			nimZeroMem((void*)(&dest), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
18757 			initLoc__cgen_60((&dest), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1), (*lib).path, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
18758 			dest.r = getTempName__cgen_418(m);
18759 			res_4 = rawNewString(((NI) 80));
18760 			T34_ = NIM_NIL;
18761 			T34_ = getTypeDesc__cgen_6631(m, (*(*lib).path).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
18762 			cgFormatValue__cgen_141((&res_4), T34_);
18763 			res_4 = resizeString(res_4, 1);
18764 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
18765 			T35_ = NIM_NIL;
18766 			T35_ = rdLoc__cgen_425(dest);
18767 			cgFormatValue__cgen_141((&res_4), T35_);
18768 			res_4 = resizeString(res_4, 1);
18769 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
18770 			{
18771 				if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA38_;
18772 				res_4 = resizeString(res_4, 1);
18773 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18774 			}
18775 			LA38_: ;
18776 			T40_ = NIM_NIL;
18777 			T40_ = rope__ropes_109(res_4);
18778 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T40_);
18779 			expr__cgen_11460(p, (*lib).path, (&dest));
18780 			T41_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18781 			T41_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
18782 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], (*T41_));
18783 			T42_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18784 			T42_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
18785 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], (*T42_));
18786 			T43_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18787 			T43_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
18788 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], (*T43_));
18789 			res_5 = rawNewString(((NI) 80));
18790 			res_5 = resizeString(res_5, 6);
18791 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_424));
18792 			cgFormatValue__cgen_141((&res_5), tmp);
18793 			res_5 = resizeString(res_5, 3);
18794 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
18795 			T44_ = NIM_NIL;
18796 			T44_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_422));
18797 			cgFormatValue__cgen_141((&res_5), T44_);
18798 			res_5 = resizeString(res_5, 1);
18799 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
18800 			T45_ = NIM_NIL;
18801 			T45_ = rdLoc__cgen_425(dest);
18802 			cgFormatValue__cgen_141((&res_5), T45_);
18803 			res_5 = resizeString(res_5, 4);
18804 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_427));
18805 			T46_ = NIM_NIL;
18806 			T46_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_426));
18807 			cgFormatValue__cgen_141((&res_5), T46_);
18808 			res_5 = resizeString(res_5, 1);
18809 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
18810 			T47_ = NIM_NIL;
18811 			T47_ = rdLoc__cgen_425(dest);
18812 			cgFormatValue__cgen_141((&res_5), T47_);
18813 			res_5 = resizeString(res_5, 2);
18814 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
18815 			{
18816 				if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA50_;
18817 				res_5 = resizeString(res_5, 1);
18818 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
18819 			}
18820 			LA50_: ;
18821 			T52_ = NIM_NIL;
18822 			T52_ = rope__ropes_109(res_5);
18823 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T52_);
18824 		}
18825 		LA7_: ;
18826 	}
18827 	LA3_: ;
18828 	{
18829 		if (!((*lib).name == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA55_;
18830 		internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_428), TM__MQdRN7fpbG7rPm4JpVVAhA_429);
18831 	}
18832 	LA55_: ;
18833 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,mangleDynLibProc__cgen_3781)18834 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, mangleDynLibProc__cgen_3781)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
18835 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18836 	result = NIM_NIL;
18837 	{
18838 		if (!(((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 18))&63U)))!=0)) goto LA3_;
18839 		result = rope__ropes_109((*(*sym).name).s);
18840 	}
18841 	goto LA1_;
18842 	LA3_: ;
18843 	{
18844 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym5880_;
18845 		NimStringDesc* T6_;
18846 		NimStringDesc* T7_;
18847 		xX60gensym5880_ = sym;
18848 		T6_ = NIM_NIL;
18849 		T6_ = dollar___systemZdollars_3((NI)((NI)((NU32)(((NI) ((*xX60gensym5880_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym5880_).Sup.itemId.item))));
18850 		T7_ = NIM_NIL;
18851 		T7_ = nsuFormatSingleElem(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_430), T6_);
18852 		result = rope__ropes_109(T7_);
18853 	}
18854 	LA1_: ;
18855 	return result;
18856 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25540)18857 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25540)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
18858 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18859 	result = NIM_NIL;
18860 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_431), args, argsLen_0);
18861 	return result;
18862 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25581)18863 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25581)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
18864 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
18865 	result = NIM_NIL;
18866 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_436), args, argsLen_0);
18867 	return result;
18868 }
N_NIMCALL(void,symInDynamicLib__cgen_25516)18869 N_LIB_PRIVATE N_NIMCALL(void, symInDynamicLib__cgen_25516)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
18870 	tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* lib;
18871 	NIM_BOOL isCall;
18872 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* extname;
18873 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
18874 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T47_;
18875 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T48_;
18876 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
18877 	lib = (*sym).annex;
18878 	isCall = isGetProcAddr__cgen_25375(lib);
18879 	extname = (*sym).loc.r;
18880 	{
18881 		if (!!(isCall)) goto LA3_;
18882 		loadDynamicLib__cgen_25391(m, lib);
18883 	}
18884 	LA3_: ;
18885 	tmp = mangleDynLibProc__cgen_3781(sym);
18886 	asgnRef((void**) (&(*sym).loc.r), tmp);
18887 	asgnRef((void**) (&(*(*sym).typ).sym), ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
18888 	(*m).labels += ((NI) 2);
18889 	{
18890 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
18891 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
18892 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* params;
18893 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
18894 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* load;
18895 		tyArray__f7nG5LD47BH5K9c6mASit3g T15_;
18896 		NimStringDesc* T16_;
18897 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* last;
18898 		NimStringDesc* idx;
18899 		if (!isCall) goto LA7_;
18900 		n = (*lib).path;
18901 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
18902 		initLocExpr__cgen_11483((*m).initProc, (*n)._kind_6.sons->data[((NI) 0)], (&a));
18903 		T9_ = NIM_NIL;
18904 		T9_ = rdLoc__cgen_425(a);
18905 		params = amp___ropes_140(T9_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
18906 		{
18907 			NI i;
18908 			NI colontmp_;
18909 			NI T11_;
18910 			NI i_2;
18911 			i = (NI)0;
18912 			colontmp_ = (NI)0;
18913 			T11_ = (NI)0;
18914 			T11_ = len__ast_3198(n);
18915 			colontmp_ = (NI)(T11_ - ((NI) 1));
18916 			i_2 = ((NI) 1);
18917 			{
18918 				while (1) {
18919 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
18920 					if (!(i_2 < colontmp_)) goto LA13;
18921 					i = i_2;
18922 					initLocExpr__cgen_11483((*m).initProc, (*n)._kind_6.sons->data[i], (&a));
18923 					T14_ = NIM_NIL;
18924 					T14_ = rdLoc__cgen_425(a);
18925 					add__ropes_159(&params, T14_);
18926 					add__ropes_162(&params, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
18927 					i_2 += ((NI) 1);
18928 				} LA13: ;
18929 			}
18930 		}
18931 		nimZeroMem((void*)T15_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
18932 		T15_[0] = tmp;
18933 		T15_[1] = getTypeDesc__cgen_6631(m, (*sym).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
18934 		T15_[2] = params;
18935 		T16_ = NIM_NIL;
18936 		T16_ = dollar___ropes_250(extname);
18937 		T15_[3] = makeCString__msgs_50(T16_);
18938 		load = percent___cgen_25540(T15_, 4);
18939 		last = lastSon__ast_4832(n);
18940 		{
18941 			if (!((*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58))) goto LA19_;
18942 			last = (*last)._kind_6.sons->data[((NI) 1)];
18943 		}
18944 		LA19_: ;
18945 		{
18946 			NimStringDesc* argX60gensym5885_;
18947 			if (!!(((*last).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20)))) goto LA23_;
18948 			argX60gensym5885_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_432);
18949 			internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, argX60gensym5885_, TM__MQdRN7fpbG7rPm4JpVVAhA_432);
18950 		}
18951 		LA23_: ;
18952 		idx = (*last)._kind_3.strVal;
18953 		{
18954 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T29_;
18955 			if (!((idx ? idx->Sup.len : 0) == ((NI) 0))) goto LA27_;
18956 			T29_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
18957 			T29_ = s__cgendata_225((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
18958 			add__ropes_159(T29_, load);
18959 		}
18960 		goto LA25_;
18961 		LA27_: ;
18962 		{
18963 			NIM_BOOL T31_;
18964 			T31_ = (NIM_BOOL)0;
18965 			T31_ = ((idx ? idx->Sup.len : 0) == ((NI) 1));
18966 			if (!(T31_)) goto LA32_;
18967 			T31_ = (((NU8)(idx->data[((NI) 0)])) >= ((NU8)(48)) && ((NU8)(idx->data[((NI) 0)])) <= ((NU8)(57)));
18968 			LA32_: ;
18969 			if (!T31_) goto LA33_;
18970 			add__ropes_159(&(*m).extensionLoaders[(((NU8)(idx->data[((NI) 0)])))- 48], load);
18971 		}
18972 		goto LA25_;
18973 		LA33_: ;
18974 		{
18975 			NimStringDesc* T36_;
18976 			T36_ = NIM_NIL;
18977 			T36_ = rawNewString((idx ? idx->Sup.len : 0) + 13);
18978 appendString(T36_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_433));
18979 appendString(T36_, idx);
18980 			internalErrorImpl__msgs_1431((*(*m).g).config, (*sym).info, T36_, TM__MQdRN7fpbG7rPm4JpVVAhA_434);
18981 		}
18982 		LA25_: ;
18983 	}
18984 	goto LA5_;
18985 	LA7_: ;
18986 	{
18987 		NimStringDesc* res;
18988 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
18989 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
18990 		NimStringDesc* T40_;
18991 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
18992 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
18993 		res = rawNewString(((NI) 80));
18994 		res = resizeString(res, 1);
18995 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
18996 		cgFormatValue__cgen_141((&res), tmp);
18997 		res = resizeString(res, 4);
18998 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_105));
18999 		T38_ = NIM_NIL;
19000 		T38_ = getTypeDesc__cgen_6631(m, (*sym).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
19001 		cgFormatValue__cgen_141((&res), T38_);
19002 		res = resizeString(res, 2);
19003 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
19004 		T39_ = NIM_NIL;
19005 		T39_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_435));
19006 		cgFormatValue__cgen_141((&res), T39_);
19007 		res = resizeString(res, 1);
19008 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
19009 		cgFormatValue__cgen_141((&res), (*lib).name);
19010 		res = resizeString(res, 2);
19011 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
19012 		T40_ = NIM_NIL;
19013 		T40_ = dollar___ropes_250(extname);
19014 		T41_ = NIM_NIL;
19015 		T41_ = makeCString__msgs_50(T40_);
19016 		cgFormatValue__cgen_141((&res), T41_);
19017 		res = resizeString(res, 2);
19018 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
19019 		{
19020 			if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA44_;
19021 			res = resizeString(res, 1);
19022 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
19023 		}
19024 		LA44_: ;
19025 		T46_ = NIM_NIL;
19026 		T46_ = rope__ropes_109(res);
19027 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T46_);
19028 	}
19029 	LA5_: ;
19030 	nimZeroMem((void*)T47_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
19031 	T47_[0] = (*sym).loc.r;
19032 	T48_ = NIM_NIL;
19033 	T48_ = t__cgen_79((*sym).loc);
19034 	T47_[1] = getTypeDesc__cgen_6631(m, T48_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
19035 	T49_ = NIM_NIL;
19036 	T49_ = percent___cgen_25581(T47_, 2);
19037 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T49_);
19038 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_26449)19039 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26449)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
19040 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
19041 	result = NIM_NIL;
19042 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_437), args, argsLen_0);
19043 	return result;
19044 }
N_NIMCALL(void,symInDynamicLibPartial__cgen_25627)19045 N_LIB_PRIVATE N_NIMCALL(void, symInDynamicLibPartial__cgen_25627)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
19046 	asgnRef((void**) (&(*sym).loc.r), mangleDynLibProc__cgen_3781(sym));
19047 	asgnRef((void**) (&(*(*sym).typ).sym), ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
19048 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_23730)19049 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23730)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
19050 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
19051 	result = NIM_NIL;
19052 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_438), args, argsLen_0);
19053 	return result;
19054 }
N_NIMCALL(void,genProcNoForward__cgen_26374)19055 N_LIB_PRIVATE N_NIMCALL(void, genProcNoForward__cgen_26374)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc) {
19056 {	{
19057 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
19058 		if (!(((*prc).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 7))&15U)))!=0)) goto LA3_;
19059 		fillProcLoc__cgen_11428(m, (*(*prc).ast)._kind_6.sons->data[((NI) 0)]);
19060 		useHeader__cgen_105(m, prc);
19061 		T5_ = NIM_NIL;
19062 		T5_ = cgsym__cgen_120(m, (*(*prc).name).s);
19063 		(void)(T5_);
19064 		goto BeforeRet_;
19065 	}
19066 	LA3_: ;
19067 	{
19068 		if (!(((*prc).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 3))&15U)))!=0)) goto LA8_;
19069 		fillProcLoc__cgen_11428(m, (*(*prc).ast)._kind_6.sons->data[((NI) 0)]);
19070 		genProcPrototype__cgen_11464(m, prc);
19071 	}
19072 	goto LA6_;
19073 	LA8_: ;
19074 	{
19075 		if (!((*(*prc).typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 5))) goto LA11_;
19076 		{
19077 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6114_;
19078 			NIM_BOOL T15_;
19079 			tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m2;
19080 			xX60gensym6114_ = prc;
19081 			T15_ = (NIM_BOOL)0;
19082 			T15_ = containsOrIncl__astalgo_402((&(*m).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym6114_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6114_).Sup.itemId.item))));
19083 			if (!!(T15_)) goto LA16_;
19084 			{
19085 				if (!!(((*(*(*m).g).config).symbolFiles == ((tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ) 0)))) goto LA20_;
19086 				m2 = m;
19087 			}
19088 			goto LA18_;
19089 			LA20_: ;
19090 			{
19091 				m2 = findPendingModule__cgen_55(m, prc);
19092 			}
19093 			LA18_: ;
19094 			fillProcLoc__cgen_11428(m2, (*(*prc).ast)._kind_6.sons->data[((NI) 0)]);
19095 			genProcPrototype__cgen_11464(m, prc);
19096 			genProcAux__cgen_26023(m, prc);
19097 		}
19098 		LA16_: ;
19099 	}
19100 	goto LA6_;
19101 	LA11_: ;
19102 	{
19103 		tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* q;
19104 		if (!(((*prc).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 4))&15U)))!=0)) goto LA24_;
19105 		q = findPendingModule__cgen_55(m, prc);
19106 		fillProcLoc__cgen_11428(q, (*(*prc).ast)._kind_6.sons->data[((NI) 0)]);
19107 		genProcPrototype__cgen_11464(m, prc);
19108 		{
19109 			NIM_BOOL T28_;
19110 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6121_;
19111 			NIM_BOOL T30_;
19112 			T28_ = (NIM_BOOL)0;
19113 			T28_ = !((q == ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) NIM_NIL)));
19114 			if (!(T28_)) goto LA29_;
19115 			xX60gensym6121_ = prc;
19116 			T30_ = (NIM_BOOL)0;
19117 			T30_ = containsOrIncl__astalgo_402((&(*q).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym6121_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6121_).Sup.itemId.item))));
19118 			T28_ = !(T30_);
19119 			LA29_: ;
19120 			if (!T28_) goto LA31_;
19121 			symInDynamicLib__cgen_25516(q, prc);
19122 			{
19123 				NIM_BOOL T35_;
19124 				tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T38_;
19125 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T39_;
19126 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
19127 				T35_ = (NIM_BOOL)0;
19128 				T35_ = isReloadable__cgen_6706(q, prc);
19129 				if (!T35_) goto LA36_;
19130 				nimZeroMem((void*)T38_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
19131 				T38_[0] = (*prc).loc.r;
19132 				T39_ = NIM_NIL;
19133 				T39_ = t__cgen_79((*prc).loc);
19134 				T38_[1] = getTypeDesc__cgen_6631(q, T39_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
19135 				T38_[2] = getModuleDllPath__cgen_136(m, (*q).module);
19136 				T40_ = NIM_NIL;
19137 				T40_ = percent___cgen_26449(T38_, 3);
19138 				add__ropes_159(&(*q).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T40_);
19139 			}
19140 			LA36_: ;
19141 		}
19142 		goto LA26_;
19143 		LA31_: ;
19144 		{
19145 			symInDynamicLibPartial__cgen_25627(m, prc);
19146 		}
19147 		LA26_: ;
19148 	}
19149 	goto LA6_;
19150 	LA24_: ;
19151 	{
19152 		tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* q_2;
19153 		if (!!((((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0))) goto LA43_;
19154 		q_2 = findPendingModule__cgen_55(m, prc);
19155 		fillProcLoc__cgen_11428(q_2, (*(*prc).ast)._kind_6.sons->data[((NI) 0)]);
19156 		{
19157 			NIM_BOOL T47_;
19158 			NIM_BOOL T48_;
19159 			NIM_BOOL T49_;
19160 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6126_;
19161 			NIM_BOOL T51_;
19162 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6129_;
19163 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6130_;
19164 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T56_;
19165 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
19166 			T47_ = (NIM_BOOL)0;
19167 			T48_ = (NIM_BOOL)0;
19168 			T49_ = (NIM_BOOL)0;
19169 			T49_ = isReloadable__cgen_6706(m, prc);
19170 			if (!(T49_)) goto LA50_;
19171 			xX60gensym6126_ = prc;
19172 			T51_ = (NIM_BOOL)0;
19173 			T51_ = contains__astalgo_3496((&(*m).declaredProtos), (NI)((NI)((NU32)(((NI) ((*xX60gensym6126_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6126_).Sup.itemId.item))));
19174 			T49_ = !(T51_);
19175 			LA50_: ;
19176 			T48_ = T49_;
19177 			if (!(T48_)) goto LA52_;
19178 			T48_ = !((q_2 == ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) NIM_NIL)));
19179 			LA52_: ;
19180 			T47_ = T48_;
19181 			if (!(T47_)) goto LA53_;
19182 			xX60gensym6129_ = (*q_2).module;
19183 			xX60gensym6130_ = (*m).module;
19184 			T47_ = !(((NI)((NI)((NU32)(((NI) ((*xX60gensym6129_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6129_).Sup.itemId.item))) == (NI)((NI)((NU32)(((NI) ((*xX60gensym6130_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6130_).Sup.itemId.item)))));
19185 			LA53_: ;
19186 			if (!T47_) goto LA54_;
19187 			nimZeroMem((void*)T56_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
19188 			T56_[0] = (*prc).loc.r;
19189 			T56_[1] = getProcTypeCast__cgen_25943(m, prc);
19190 			T56_[2] = getModuleDllPath__cgen_136(m, prc);
19191 			T57_ = NIM_NIL;
19192 			T57_ = percent___cgen_23730(T56_, 3);
19193 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T57_);
19194 		}
19195 		LA54_: ;
19196 		genProcPrototype__cgen_11464(m, prc);
19197 		{
19198 			NIM_BOOL T60_;
19199 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6133_;
19200 			NIM_BOOL T62_;
19201 			T60_ = (NIM_BOOL)0;
19202 			T60_ = !((q_2 == ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) NIM_NIL)));
19203 			if (!(T60_)) goto LA61_;
19204 			xX60gensym6133_ = prc;
19205 			T62_ = (NIM_BOOL)0;
19206 			T62_ = containsOrIncl__astalgo_402((&(*q_2).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym6133_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6133_).Sup.itemId.item))));
19207 			T60_ = !(T62_);
19208 			LA61_: ;
19209 			if (!T60_) goto LA63_;
19210 			{
19211 				NIM_BOOL T67_;
19212 				T67_ = (NIM_BOOL)0;
19213 				T67_ = isReloadable__cgen_6706(m, prc);
19214 				if (!T67_) goto LA68_;
19215 				genProcPrototype__cgen_11464(q_2, prc);
19216 			}
19217 			LA68_: ;
19218 			genProcAux__cgen_26023(q_2, prc);
19219 		}
19220 		LA63_: ;
19221 	}
19222 	goto LA6_;
19223 	LA43_: ;
19224 	{
19225 		fillProcLoc__cgen_11428(m, (*(*prc).ast)._kind_6.sons->data[((NI) 0)]);
19226 		useHeader__cgen_105(m, prc);
19227 		{
19228 			if (!!((((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0))) goto LA73_;
19229 			genProcPrototype__cgen_11464(m, prc);
19230 		}
19231 		LA73_: ;
19232 	}
19233 	LA6_: ;
19234 	}BeforeRet_: ;
19235 }
N_NIMCALL(void,genProc__cgen_411)19236 N_LIB_PRIVATE N_NIMCALL(void, genProc__cgen_411)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc) {
19237 {	{
19238 		NIM_BOOL T3_;
19239 		NIM_BOOL T5_;
19240 		T3_ = (NIM_BOOL)0;
19241 		T3_ = (((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 31))&63U)))!=0);
19242 		if (T3_) goto LA4_;
19243 		T5_ = (NIM_BOOL)0;
19244 		T5_ = isActivated__cgen_26637(prc);
19245 		T3_ = !(T5_);
19246 		LA4_: ;
19247 		if (!T3_) goto LA6_;
19248 		goto BeforeRet_;
19249 	}
19250 	LA6_: ;
19251 	{
19252 		if (!(((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 4))&63U)))!=0)) goto LA10_;
19253 		addForwardedProc__cgen_48(m, prc);
19254 		fillProcLoc__cgen_11428(m, (*(*prc).ast)._kind_6.sons->data[((NI) 0)]);
19255 	}
19256 	goto LA8_;
19257 	LA10_: ;
19258 	{
19259 		genProcNoForward__cgen_26374(m, prc);
19260 		{
19261 			NIM_BOOL T15_;
19262 			NIM_BOOL T16_;
19263 			T15_ = (NIM_BOOL)0;
19264 			T16_ = (NIM_BOOL)0;
19265 			T16_ = ((262272 & (*prc).flags) == 128);
19266 			if (!(T16_)) goto LA17_;
19267 			T16_ = !(((*(*m).g).generatedHeader == ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) NIM_NIL)));
19268 			LA17_: ;
19269 			T15_ = T16_;
19270 			if (!(T15_)) goto LA18_;
19271 			T15_ = !((((*prc).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 3))&15U)))!=0));
19272 			LA18_: ;
19273 			if (!T15_) goto LA19_;
19274 			genProcPrototype__cgen_11464((*(*m).g).generatedHeader, prc);
19275 			{
19276 				if (!((*(*prc).typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 5))) goto LA23_;
19277 				{
19278 					tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6148_;
19279 					NIM_BOOL T27_;
19280 					xX60gensym6148_ = prc;
19281 					T27_ = (NIM_BOOL)0;
19282 					T27_ = containsOrIncl__astalgo_402((&(*(*(*m).g).generatedHeader).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym6148_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6148_).Sup.itemId.item))));
19283 					if (!!(T27_)) goto LA28_;
19284 					genProcAux__cgen_26023((*(*m).g).generatedHeader, prc);
19285 				}
19286 				LA28_: ;
19287 			}
19288 			LA23_: ;
19289 		}
19290 		LA19_: ;
19291 	}
19292 	LA8_: ;
19293 	}BeforeRet_: ;
19294 }
N_NIMCALL(NIM_BOOL,treatGlobalDifferentlyForHCR__cgen_11251)19295 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, treatGlobalDifferentlyForHCR__cgen_11251)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
19296 	NIM_BOOL result;
19297 	NIM_BOOL T1_;
19298 	NIM_BOOL T2_;
19299 {	result = (NIM_BOOL)0;
19300 	T1_ = (NIM_BOOL)0;
19301 	T2_ = (NIM_BOOL)0;
19302 	T2_ = hcrOn__cgen_42(m);
19303 	if (!(T2_)) goto LA3_;
19304 	T2_ = ((67108872 & (*s).flags) == 8);
19305 	LA3_: ;
19306 	T1_ = T2_;
19307 	if (!(T1_)) goto LA4_;
19308 	T1_ = ((72 & (*s).loc.flags) == 0);
19309 	LA4_: ;
19310 	result = T1_;
19311 	goto BeforeRet_;
19312 	}BeforeRet_: ;
19313 	return result;
19314 }
N_INLINE(NIM_BOOL,emulatedThreadVars__cgen_409)19315 static N_INLINE(NIM_BOOL, emulatedThreadVars__cgen_409)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
19316 	NIM_BOOL result;
19317 	result = (NIM_BOOL)0;
19318 	result = ((75497472 & ~ (*conf).globalOptions)==0);
19319 	return result;
19320 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11200)19321 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11200)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
19322 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
19323 	result = NIM_NIL;
19324 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_443), args, argsLen_0);
19325 	return result;
19326 }
N_NIMCALL(void,declareThreadVar__cgen_11150)19327 N_LIB_PRIVATE N_NIMCALL(void, declareThreadVar__cgen_11150)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, NIM_BOOL isExtern) {
19328 	{
19329 		NIM_BOOL T3_;
19330 		T3_ = (NIM_BOOL)0;
19331 		T3_ = emulatedThreadVars__cgen_409((*(*m).g).config);
19332 		if (!T3_) goto LA4_;
19333 		{
19334 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym1113_;
19335 			NIM_BOOL T8_;
19336 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T11_;
19337 			NI T12_;
19338 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T13_;
19339 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T14_;
19340 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
19341 			xX60gensym1113_ = s;
19342 			T8_ = (NIM_BOOL)0;
19343 			T8_ = containsOrIncl__astalgo_402((&(*(*m).g).nimtvDeclared), (NI)((NI)((NU32)(((NI) ((*xX60gensym1113_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym1113_).Sup.itemId.item))));
19344 			if (!!(T8_)) goto LA9_;
19345 			T11_ = NIM_NIL;
19346 			T11_ = t__cgen_79((*s).loc);
19347 			asgnRef((void**) (&(*(*m).g).nimtvDeps), (tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A*) incrSeqV3((TGenericSeq*)((*(*m).g).nimtvDeps), (&NTIttypeseq__9aZVGG5Gtti9cC9bqRpXCtA3A_)));
19348 			T12_ = (*(*m).g).nimtvDeps->Sup.len++;
19349 			asgnRef((void**) (&(*(*m).g).nimtvDeps->data[T12_]), T11_);
19350 			nimZeroMem((void*)T13_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
19351 			T14_ = NIM_NIL;
19352 			T14_ = t__cgen_79((*s).loc);
19353 			T13_[0] = getTypeDesc__cgen_6631(m, T14_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
19354 			T13_[1] = (*s).loc.r;
19355 			T15_ = NIM_NIL;
19356 			T15_ = percent___cgen_3096(T13_, 2);
19357 			add__ropes_159(&(*(*m).g).nimtv, T15_);
19358 		}
19359 		LA9_: ;
19360 	}
19361 	goto LA1_;
19362 	LA4_: ;
19363 	{
19364 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T36_;
19365 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
19366 		tyArray__JiWwrsTRC6xqNlGcBthSVA T38_;
19367 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
19368 		{
19369 			if (!isExtern) goto LA19_;
19370 			add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_439));
19371 		}
19372 		goto LA17_;
19373 		LA19_: ;
19374 		{
19375 			if (!(((*s).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 5))&15U)))!=0)) goto LA22_;
19376 			add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_440));
19377 		}
19378 		goto LA17_;
19379 		LA22_: ;
19380 		{
19381 			add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_30));
19382 		}
19383 		LA17_: ;
19384 		{
19385 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
19386 			if (!(((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 23))&63U)))!=0)) goto LA27_;
19387 			sym = (*(*s).typ).sym;
19388 			{
19389 				NIM_BOOL T31_;
19390 				T31_ = (NIM_BOOL)0;
19391 				T31_ = !((sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
19392 				if (!(T31_)) goto LA32_;
19393 				T31_ = (((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 27))&63U)))!=0);
19394 				LA32_: ;
19395 				if (!T31_) goto LA33_;
19396 				add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_441));
19397 			}
19398 			goto LA29_;
19399 			LA33_: ;
19400 			{
19401 				add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_442));
19402 			}
19403 			LA29_: ;
19404 		}
19405 		LA27_: ;
19406 		T36_ = NIM_NIL;
19407 		T36_ = t__cgen_79((*s).loc);
19408 		T37_ = NIM_NIL;
19409 		T37_ = getTypeDesc__cgen_6631(m, T36_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
19410 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T37_);
19411 		nimZeroMem((void*)T38_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
19412 		T38_[0] = (*s).loc.r;
19413 		T39_ = NIM_NIL;
19414 		T39_ = percent___cgen_11200(T38_, 1);
19415 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T39_);
19416 	}
19417 	LA1_: ;
19418 }
N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA **,procSec__cgendata_274)19419 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**, procSec__cgendata_274)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg s) {
19420 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** result;
19421 	result = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
19422 	result = &(*p).blocks->data[((NI) 0)].sections[(s)- 0];
19423 	return result;
19424 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_24279)19425 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24279)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
19426 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
19427 	result = NIM_NIL;
19428 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_444), args, argsLen_0);
19429 	return result;
19430 }
N_NIMCALL(void,genVarPrototype__cgen_11451)19431 N_LIB_PRIVATE N_NIMCALL(void, genVarPrototype__cgen_11451)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
19432 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
19433 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
19434 {	sym = (*n)._kind_4.sym;
19435 	useHeader__cgen_105(m, sym);
19436 	T1_ = NIM_NIL;
19437 	T1_ = mangleName__cgen_628(m, sym);
19438 	fillLoc__cgen_65((&(*sym).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 3), n, T1_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
19439 	{
19440 		NIM_BOOL T4_;
19441 		T4_ = (NIM_BOOL)0;
19442 		T4_ = treatGlobalDifferentlyForHCR__cgen_11251(m, sym);
19443 		if (!T4_) goto LA5_;
19444 		(*sym).loc.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15);
19445 	}
19446 	LA5_: ;
19447 	{
19448 		NIM_BOOL T9_;
19449 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6150_;
19450 		T9_ = (NIM_BOOL)0;
19451 		T9_ = (((*sym).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 3))&15U)))!=0);
19452 		if (T9_) goto LA10_;
19453 		xX60gensym6150_ = sym;
19454 		T9_ = contains__astalgo_3496((&(*m).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym6150_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6150_).Sup.itemId.item))));
19455 		LA10_: ;
19456 		if (!T9_) goto LA11_;
19457 		goto BeforeRet_;
19458 	}
19459 	LA11_: ;
19460 	{
19461 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6152_;
19462 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6153_;
19463 		xX60gensym6152_ = (*sym).owner;
19464 		xX60gensym6153_ = (*m).module;
19465 		if (!!(((NI)((NI)((NU32)(((NI) ((*xX60gensym6152_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6152_).Sup.itemId.item))) == (NI)((NI)((NU32)(((NI) ((*xX60gensym6153_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6153_).Sup.itemId.item)))))) goto LA15_;
19466 		{
19467 			if (!(((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 26))&63U)))!=0)) goto LA19_;
19468 			declareThreadVar__cgen_11150(m, sym, NIM_TRUE);
19469 		}
19470 		goto LA17_;
19471 		LA19_: ;
19472 		{
19473 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6158_;
19474 			NimStringDesc* T30_;
19475 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T37_;
19476 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
19477 			tyArray__JiWwrsTRC6xqNlGcBthSVA T60_;
19478 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T61_;
19479 			xX60gensym6158_ = sym;
19480 			incl__pureZcollectionsZintsets_55((&(*m).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym6158_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6158_).Sup.itemId.item))));
19481 			{
19482 				NIM_BOOL T24_;
19483 				tyArray__JiWwrsTRC6xqNlGcBthSVA T28_;
19484 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
19485 				T24_ = (NIM_BOOL)0;
19486 				T24_ = ((2622208 &((NU32)1<<((NU)((*sym).kind)&31U)))!=0);
19487 				if (!(T24_)) goto LA25_;
19488 				T24_ = (((NI) 0) < (*sym)._kind_2.alignment);
19489 				LA25_: ;
19490 				if (!T24_) goto LA26_;
19491 				nimZeroMem((void*)T28_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
19492 				T28_[0] = rope__ropes_115(((NI64) ((*sym)._kind_2.alignment)));
19493 				T29_ = NIM_NIL;
19494 				T29_ = percent___cgen_3729(T28_, 1);
19495 				add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T29_);
19496 			}
19497 			LA26_: ;
19498 			T30_ = NIM_NIL;
19499 			{
19500 				NIM_BOOL T33_;
19501 				T33_ = (NIM_BOOL)0;
19502 				T33_ = hcrOn__cgen_42(m);
19503 				if (!T33_) goto LA34_;
19504 				T30_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_29));
19505 			}
19506 			goto LA31_;
19507 			LA34_: ;
19508 			{
19509 				T30_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_439));
19510 			}
19511 			LA31_: ;
19512 			add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T30_);
19513 			T37_ = NIM_NIL;
19514 			T37_ = t__cgen_79((*sym).loc);
19515 			T38_ = NIM_NIL;
19516 			T38_ = getTypeDesc__cgen_6631(m, T37_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
19517 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T38_);
19518 			{
19519 				NIM_BOOL T41_;
19520 				T41_ = (NIM_BOOL)0;
19521 				T41_ = hcrOn__cgen_42(m);
19522 				if (!T41_) goto LA42_;
19523 				add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59));
19524 			}
19525 			LA42_: ;
19526 			{
19527 				if (!(((*sym).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 4))&15U)))!=0)) goto LA46_;
19528 				add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59));
19529 			}
19530 			LA46_: ;
19531 			{
19532 				if (!(((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 10))&63U)))!=0)) goto LA50_;
19533 				add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_89));
19534 			}
19535 			LA50_: ;
19536 			{
19537 				if (!(((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 9))&63U)))!=0)) goto LA54_;
19538 				add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_90));
19539 			}
19540 			LA54_: ;
19541 			{
19542 				if (!(((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 46))&63U)))!=0)) goto LA58_;
19543 				add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_91));
19544 			}
19545 			LA58_: ;
19546 			nimZeroMem((void*)T60_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
19547 			T60_[0] = (*sym).loc.r;
19548 			T61_ = NIM_NIL;
19549 			T61_ = percent___cgen_11200(T60_, 1);
19550 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T61_);
19551 			{
19552 				NIM_BOOL T64_;
19553 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T67_;
19554 				tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T68_;
19555 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T69_;
19556 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
19557 				T64_ = (NIM_BOOL)0;
19558 				T64_ = hcrOn__cgen_42(m);
19559 				if (!T64_) goto LA65_;
19560 				T67_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
19561 				T67_ = procSec__cgendata_274((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
19562 				nimZeroMem((void*)T68_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
19563 				T68_[0] = (*sym).loc.r;
19564 				T69_ = NIM_NIL;
19565 				T69_ = t__cgen_79((*sym).loc);
19566 				T68_[1] = getTypeDesc__cgen_6631(m, T69_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
19567 				T68_[2] = getModuleDllPath__cgen_136(m, sym);
19568 				T70_ = NIM_NIL;
19569 				T70_ = percent___cgen_24279(T68_, 3);
19570 				add__ropes_159(T67_, T70_);
19571 			}
19572 			LA65_: ;
19573 		}
19574 		LA17_: ;
19575 	}
19576 	LA15_: ;
19577 	}BeforeRet_: ;
19578 }
N_NIMCALL(void,addActualSuffixForHCR__cgen_12293)19579 N_LIB_PRIVATE N_NIMCALL(void, addActualSuffixForHCR__cgen_12293)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** res, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
19580 	{
19581 		NIM_BOOL T3_;
19582 		NIM_BOOL T4_;
19583 		NIM_BOOL T7_;
19584 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym1333_;
19585 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym1334_;
19586 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
19587 		T3_ = (NIM_BOOL)0;
19588 		T4_ = (NIM_BOOL)0;
19589 		T4_ = (((*sym).flags & IL64(274877907008)) == 0);
19590 		if (!(T4_)) goto LA5_;
19591 		T4_ = ((*sym).loc.k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 7));
19592 		LA5_: ;
19593 		T3_ = T4_;
19594 		if (!(T3_)) goto LA6_;
19595 		T7_ = (NIM_BOOL)0;
19596 		T7_ = ((*(*sym).typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 5));
19597 		if (T7_) goto LA8_;
19598 		xX60gensym1333_ = (*sym).owner;
19599 		xX60gensym1334_ = module;
19600 		T7_ = ((NI)((NI)((NU32)(((NI) ((*xX60gensym1333_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym1333_).Sup.itemId.item))) == (NI)((NI)((NU32)(((NI) ((*xX60gensym1334_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym1334_).Sup.itemId.item))));
19601 		LA8_: ;
19602 		T3_ = T7_;
19603 		LA6_: ;
19604 		if (!T3_) goto LA9_;
19605 		T11_ = NIM_NIL;
19606 		T11_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_71));
19607 		unsureAsgnRef((void**) (&(*res)), amp___ropes_128((*res), T11_));
19608 	}
19609 	LA9_: ;
19610 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,cgsym__cgen_120)19611 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, cgsym__cgen_120)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* name) {
19612 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
19613 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
19614 	result = NIM_NIL;
19615 	sym = getCompilerProc__magicsys_145((*(*m).g).graph, name);
19616 	{
19617 		if (!!((sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3_;
19618 		switch ((*sym).kind) {
19619 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 12):
19620 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 13):
19621 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 14):
19622 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 16):
19623 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 15):
19624 		{
19625 			genProc__cgen_411(m, sym);
19626 		}
19627 		break;
19628 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8):
19629 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11):
19630 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 9):
19631 		{
19632 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T7_;
19633 			T7_ = NIM_NIL;
19634 			T7_ = newSymNode__ast_3716(sym);
19635 			genVarPrototype__cgen_11451(m, T7_);
19636 		}
19637 		break;
19638 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 7):
19639 		{
19640 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
19641 			T9_ = NIM_NIL;
19642 			T9_ = getTypeDesc__cgen_6631(m, (*sym).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
19643 			(void)(T9_);
19644 		}
19645 		break;
19646 		default:
19647 		{
19648 			NimStringDesc* T11_;
19649 			T11_ = NIM_NIL;
19650 			T11_ = rawNewString((name ? name->Sup.len : 0) + (reprEnum((NI)(*sym).kind, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_)) ? reprEnum((NI)(*sym).kind, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_))->Sup.len : 0) + 9);
19651 appendString(T11_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_445));
19652 appendString(T11_, name);
19653 appendString(T11_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_446));
19654 appendString(T11_, reprEnum((NI)(*sym).kind, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_)));
19655 			internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, T11_, TM__MQdRN7fpbG7rPm4JpVVAhA_447);
19656 		}
19657 		break;
19658 		}
19659 	}
19660 	goto LA1_;
19661 	LA3_: ;
19662 	{
19663 		NimStringDesc* T13_;
19664 		T13_ = NIM_NIL;
19665 		T13_ = rawNewString((name ? name->Sup.len : 0) + 21);
19666 appendString(T13_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_448));
19667 appendString(T13_, name);
19668 		liMessage__msgs_1118((*(*m).g).config, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T13_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__MQdRN7fpbG7rPm4JpVVAhA_449, NIM_FALSE);
19669 	}
19670 	LA1_: ;
19671 	result = (*sym).loc.r;
19672 	{
19673 		NIM_BOOL T16_;
19674 		NIM_BOOL T17_;
19675 		T16_ = (NIM_BOOL)0;
19676 		T17_ = (NIM_BOOL)0;
19677 		T17_ = hcrOn__cgen_42(m);
19678 		if (!(T17_)) goto LA18_;
19679 		T17_ = !((sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
19680 		LA18_: ;
19681 		T16_ = T17_;
19682 		if (!(T16_)) goto LA19_;
19683 		T16_ = ((61440 &((NU32)1<<((NU)((*sym).kind)&31U)))!=0);
19684 		LA19_: ;
19685 		if (!T16_) goto LA20_;
19686 		addActualSuffixForHCR__cgen_12293(&result, (*m).module, sym);
19687 	}
19688 	LA20_: ;
19689 	return result;
19690 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getSimpleTypeDesc__cgen_1802)19691 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getSimpleTypeDesc__cgen_1802)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
19692 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
19693 	result = NIM_NIL;
19694 	switch ((*typ).kind) {
19695 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26):
19696 	{
19697 		result = typeNameOrLiteral__cgen_1785(m, typ, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_25));
19698 	}
19699 	break;
19700 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
19701 	{
19702 		NI T3_;
19703 		T3_ = (NI)0;
19704 		T3_ = detectStrVersion__cgen_472(m);
19705 		switch (T3_) {
19706 		case ((NI) 2):
19707 		{
19708 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
19709 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
19710 			T5_ = NIM_NIL;
19711 			T5_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_226));
19712 			(void)(T5_);
19713 			T6_ = NIM_NIL;
19714 			T6_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_227));
19715 			(void)(T6_);
19716 			result = typeNameOrLiteral__cgen_1785(m, typ, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_227));
19717 		}
19718 		break;
19719 		default:
19720 		{
19721 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
19722 			T8_ = NIM_NIL;
19723 			T8_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_219));
19724 			(void)(T8_);
19725 			result = typeNameOrLiteral__cgen_1785(m, typ, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_450));
19726 		}
19727 		break;
19728 		}
19729 	}
19730 	break;
19731 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
19732 	{
19733 		result = typeNameOrLiteral__cgen_1785(m, typ, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_451));
19734 	}
19735 	break;
19736 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
19737 	{
19738 		result = typeNameOrLiteral__cgen_1785(m, typ, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_452));
19739 	}
19740 	break;
19741 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
19742 	{
19743 		result = typeNameOrLiteral__cgen_1785(m, typ, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_453));
19744 	}
19745 	break;
19746 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 5):
19747 	{
19748 		result = typeNameOrLiteral__cgen_1785(m, typ, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_25));
19749 	}
19750 	break;
19751 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
19752 	{
19753 		result = typeNameOrLiteral__cgen_1785(m, typ, NumericalTypeToStr__cgen_1806[((*typ).kind)- 31]);
19754 	}
19755 	break;
19756 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 13):
19757 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20):
19758 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 15):
19759 	{
19760 		result = getSimpleTypeDesc__cgen_1802(m, (*typ).sons->data[((NI) 0)]);
19761 	}
19762 	break;
19763 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60):
19764 	{
19765 		{
19766 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T20_;
19767 			if (!!(((*typ).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA18_;
19768 			T20_ = NIM_NIL;
19769 			T20_ = lastSon__ast_3743(typ);
19770 			result = getSimpleTypeDesc__cgen_1802(m, T20_);
19771 		}
19772 		goto LA16_;
19773 		LA18_: ;
19774 		{
19775 			internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_468), TM__MQdRN7fpbG7rPm4JpVVAhA_469);
19776 		}
19777 		LA16_: ;
19778 	}
19779 	break;
19780 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11):
19781 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 4):
19782 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46):
19783 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 45):
19784 	{
19785 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T23_;
19786 		T23_ = NIM_NIL;
19787 		T23_ = lastSon__ast_3743(typ);
19788 		result = getSimpleTypeDesc__cgen_1802(m, T23_);
19789 	}
19790 	break;
19791 	default:
19792 	{
19793 		result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
19794 	}
19795 	break;
19796 	}
19797 	{
19798 		NIM_BOOL T27_;
19799 		tyArray__qtqsWM5aXmcpMIVmvq3kAA sig;
19800 		T27_ = (NIM_BOOL)0;
19801 		T27_ = !((result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)));
19802 		if (!(T27_)) goto LA28_;
19803 		T27_ = isImportedType__cgen_1283(typ);
19804 		LA28_: ;
19805 		if (!T27_) goto LA29_;
19806 		nimZeroMem((void*)sig, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
19807 		hashType__sighashes_462(typ, 2, sig);
19808 		{
19809 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
19810 			T33_ = NIM_NIL;
19811 			T33_ = cacheGetType__cgen_1353((*m).typeCache, sig);
19812 			if (!(T33_ == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA34_;
19813 			X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
19814 		}
19815 		LA34_: ;
19816 	}
19817 	LA29_: ;
19818 	return result;
19819 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getTypePre__cgen_3061)19820 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypePre__cgen_3061)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyArray__qtqsWM5aXmcpMIVmvq3kAA sig) {
19821 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
19822 	result = NIM_NIL;
19823 	{
19824 		if (!(typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA3_;
19825 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_24));
19826 	}
19827 	goto LA1_;
19828 	LA3_: ;
19829 	{
19830 		result = getSimpleTypeDesc__cgen_1802(m, typ);
19831 		{
19832 			if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA8_;
19833 			result = cacheGetType__cgen_1353((*m).typeCache, sig);
19834 		}
19835 		LA8_: ;
19836 	}
19837 	LA1_: ;
19838 	return result;
19839 }
N_INLINE(void,popSafePoint)19840 static N_INLINE(void, popSafePoint)(void) {
19841 	excHandler__system_2565 = (*excHandler__system_2565).prev;
19842 }
N_INLINE(NI,slotsNeeded__pureZcollectionsZsets_49)19843 static N_INLINE(NI, slotsNeeded__pureZcollectionsZsets_49)(NI count) {
19844 	NI result;
19845 	result = (NI)0;
19846 	result = nextPowerOfTwo__pureZmath_177((NI)((NI)((NI)(((NI) (count)) * ((NI) 3)) / ((NI) 2)) + ((NI) 4)));
19847 	return result;
19848 }
N_INLINE(NI,rawGet__cgen_4228)19849 static N_INLINE(NI, rawGet__cgen_4228)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI* hc) {
19850 	NI result;
19851 	NI h;
19852 	NI T10_;
19853 {	result = (NI)0;
19854 	(*hc) = hash__modulegraphs_8963(key);
19855 	{
19856 		if (!((*hc) == ((NI) 0))) goto LA3_;
19857 		(*hc) = ((NI) 314159265);
19858 	}
19859 	LA3_: ;
19860 	{
19861 		NI T7_;
19862 		T7_ = (t.data ? t.data->Sup.len : 0);
19863 		if (!(T7_ == ((NI) 0))) goto LA8_;
19864 		result = ((NI) -1);
19865 		goto BeforeRet_;
19866 	}
19867 	LA8_: ;
19868 	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
19869 	h = (NI)((*hc) & T10_);
19870 	{
19871 		while (1) {
19872 			NIM_BOOL T13_;
19873 			NI T20_;
19874 			T13_ = (NIM_BOOL)0;
19875 			T13_ = isFilled__pureZcollectionsZsets_38(t.data->data[h].Field0);
19876 			if (!T13_) goto LA12;
19877 			{
19878 				NIM_BOOL T16_;
19879 				T16_ = (NIM_BOOL)0;
19880 				T16_ = (t.data->data[h].Field0 == (*hc));
19881 				if (!(T16_)) goto LA17_;
19882 				T16_ = eqeq___modulegraphs_8959(t.data->data[h].Field1, key);
19883 				LA17_: ;
19884 				if (!T16_) goto LA18_;
19885 				result = h;
19886 				goto BeforeRet_;
19887 			}
19888 			LA18_: ;
19889 			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
19890 			h = nextTry__pureZcollectionsZsets_41(h, T20_);
19891 		} LA12: ;
19892 	}
19893 	result = (NI)(((NI) -1) - h);
19894 	}BeforeRet_: ;
19895 	return result;
19896 }
N_INLINE(NIM_BOOL,mustRehash__cgen_4490)19897 static N_INLINE(NIM_BOOL, mustRehash__cgen_4490)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A t) {
19898 	NIM_BOOL result;
19899 	NIM_BOOL T1_;
19900 	NI T2_;
19901 	NI T4_;
19902 	result = (NIM_BOOL)0;
19903 	T1_ = (NIM_BOOL)0;
19904 	T2_ = (t.data ? t.data->Sup.len : 0);
19905 	T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
19906 	if (T1_) goto LA3_;
19907 	T4_ = (t.data ? t.data->Sup.len : 0);
19908 	T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
19909 	LA3_: ;
19910 	result = T1_;
19911 	return result;
19912 }
N_INLINE(NI,rawGetKnownHC__cgen_4933)19913 static N_INLINE(NI, rawGetKnownHC__cgen_4933)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A t, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI hc) {
19914 	NI result;
19915 	NI h;
19916 	NI T6_;
19917 {	result = (NI)0;
19918 	{
19919 		NI T3_;
19920 		T3_ = (t.data ? t.data->Sup.len : 0);
19921 		if (!(T3_ == ((NI) 0))) goto LA4_;
19922 		result = ((NI) -1);
19923 		goto BeforeRet_;
19924 	}
19925 	LA4_: ;
19926 	T6_ = ((t.data ? t.data->Sup.len : 0)-1);
19927 	h = (NI)(hc & T6_);
19928 	{
19929 		while (1) {
19930 			NIM_BOOL T9_;
19931 			NI T16_;
19932 			T9_ = (NIM_BOOL)0;
19933 			T9_ = isFilled__pureZcollectionsZsets_38(t.data->data[h].Field0);
19934 			if (!T9_) goto LA8;
19935 			{
19936 				NIM_BOOL T12_;
19937 				T12_ = (NIM_BOOL)0;
19938 				T12_ = (t.data->data[h].Field0 == hc);
19939 				if (!(T12_)) goto LA13_;
19940 				T12_ = eqeq___modulegraphs_8959(t.data->data[h].Field1, key);
19941 				LA13_: ;
19942 				if (!T12_) goto LA14_;
19943 				result = h;
19944 				goto BeforeRet_;
19945 			}
19946 			LA14_: ;
19947 			T16_ = ((t.data ? t.data->Sup.len : 0)-1);
19948 			h = nextTry__pureZcollectionsZsets_41(h, T16_);
19949 		} LA8: ;
19950 	}
19951 	result = (NI)(((NI) -1) - h);
19952 	}BeforeRet_: ;
19953 	return result;
19954 }
N_NIMCALL(void,rawInsert__cgen_5295)19955 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__cgen_5295)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A* s, tySequence__WPcy3bORPBFlmk2KIq2pbQ** data, tyArray__qtqsWM5aXmcpMIVmvq3kAA key, NI hc, NI h) {
19956 	{
19957 		NI T3_;
19958 		NI correctSizeX60gensym388_;
19959 		T3_ = ((*data) ? (*data)->Sup.len : 0);
19960 		if (!(T3_ == ((NI) 0))) goto LA4_;
19961 		correctSizeX60gensym388_ = slotsNeeded__pureZcollectionsZsets_49(((NI) 64));
19962 		(*s).counter = ((NI) 0);
19963 		unsureAsgnRef((void**) (&(*s).data), (tySequence__WPcy3bORPBFlmk2KIq2pbQ*) newSeq((&NTIkeyvaluepairseq__WPcy3bORPBFlmk2KIq2pbQ_), ((NI) (correctSizeX60gensym388_))));
19964 	}
19965 	LA4_: ;
19966 	nimCopyMem((void*)(*data)->data[h].Field1, (NIM_CONST void*)key, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
19967 	(*data)->data[h].Field0 = hc;
19968 }
N_NIMCALL(void,enlarge__cgen_4682)19969 N_LIB_PRIVATE N_NIMCALL(void, enlarge__cgen_4682)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A* s) {
19970 	tySequence__WPcy3bORPBFlmk2KIq2pbQ* n;
19971 	NI T1_;
19972 	tySequence__WPcy3bORPBFlmk2KIq2pbQ* T2_;
19973 	n = NIM_NIL;
19974 	T1_ = ((*s).data ? (*s).data->Sup.len : 0);
19975 	n = (tySequence__WPcy3bORPBFlmk2KIq2pbQ*) newSeq((&NTIkeyvaluepairseq__WPcy3bORPBFlmk2KIq2pbQ_), ((NI) ((NI)(T1_ * ((NI) 2)))));
19976 	T2_ = NIM_NIL;
19977 	T2_ = (*s).data;
19978 	unsureAsgnRef((void**) (&(*s).data), n);
19979 	n = T2_;
19980 	{
19981 		NI i;
19982 		NI colontmp_;
19983 		NI T4_;
19984 		NI res;
19985 		i = (NI)0;
19986 		colontmp_ = (NI)0;
19987 		T4_ = ((n ? n->Sup.len : 0)-1);
19988 		colontmp_ = T4_;
19989 		res = ((NI) 0);
19990 		{
19991 			while (1) {
19992 				if (!(res <= colontmp_)) goto LA6;
19993 				i = res;
19994 				{
19995 					NIM_BOOL T9_;
19996 					NI j;
19997 					NI T12_;
19998 					T9_ = (NIM_BOOL)0;
19999 					T9_ = isFilled__pureZcollectionsZsets_38(n->data[i].Field0);
20000 					if (!T9_) goto LA10_;
20001 					T12_ = (NI)0;
20002 					T12_ = rawGetKnownHC__cgen_4933((*s), n->data[i].Field1, n->data[i].Field0);
20003 					j = (NI)(((NI) -1) - T12_);
20004 					rawInsert__cgen_5295(s, (&(*s).data), n->data[i].Field1, n->data[i].Field0, j);
20005 				}
20006 				LA10_: ;
20007 				res += ((NI) 1);
20008 			} LA6: ;
20009 		}
20010 	}
20011 }
N_NIMCALL(NIM_BOOL,containsOrIncl__cgen_4140)20012 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl__cgen_4140)(tyObject_HashSet__LWqBPbJi8sAUtgObUDu34A* s, tyArray__qtqsWM5aXmcpMIVmvq3kAA key) {
20013 	NIM_BOOL result;
20014 	NI hc;
20015 	NI index;
20016 	result = (NIM_BOOL)0;
20017 	{
20018 		NI T3_;
20019 		NI correctSizeX60gensym379_;
20020 		T3_ = ((*s).data ? (*s).data->Sup.len : 0);
20021 		if (!(T3_ == ((NI) 0))) goto LA4_;
20022 		correctSizeX60gensym379_ = slotsNeeded__pureZcollectionsZsets_49(((NI) 64));
20023 		(*s).counter = ((NI) 0);
20024 		unsureAsgnRef((void**) (&(*s).data), (tySequence__WPcy3bORPBFlmk2KIq2pbQ*) newSeq((&NTIkeyvaluepairseq__WPcy3bORPBFlmk2KIq2pbQ_), ((NI) (correctSizeX60gensym379_))));
20025 	}
20026 	LA4_: ;
20027 	hc = (NI)0;
20028 	index = rawGet__cgen_4228((*s), key, (&hc));
20029 	{
20030 		if (!(((NI) 0) <= index)) goto LA8_;
20031 		result = NIM_TRUE;
20032 	}
20033 	goto LA6_;
20034 	LA8_: ;
20035 	{
20036 		{
20037 			NIM_BOOL T13_;
20038 			T13_ = (NIM_BOOL)0;
20039 			T13_ = mustRehash__cgen_4490((*s));
20040 			if (!T13_) goto LA14_;
20041 			enlarge__cgen_4682(s);
20042 			index = rawGetKnownHC__cgen_4933((*s), key, hc);
20043 		}
20044 		LA14_: ;
20045 		rawInsert__cgen_5295(s, (&(*s).data), key, hc, (NI)(((NI) -1) - index));
20046 		(*s).counter += ((NI) 1);
20047 	}
20048 	LA6_: ;
20049 	return result;
20050 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_1763)20051 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_1763)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20052 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20053 	result = NIM_NIL;
20054 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_472), args, argsLen_0);
20055 	return result;
20056 }
N_NIMCALL(void,addAbiCheck__cgen_1752)20057 N_LIB_PRIVATE N_NIMCALL(void, addAbiCheck__cgen_1752)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name) {
20058 	{
20059 		NIM_BOOL T3_;
20060 		NI64 size;
20061 		NimStringDesc* msg;
20062 		NimStringDesc* msg2;
20063 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T7_;
20064 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
20065 		T3_ = (NIM_BOOL)0;
20066 		T3_ = isDefined__options_2279((*(*m).g).config, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_470));
20067 		if (!(T3_)) goto LA4_;
20068 		size = getSize__types_3327((*(*m).g).config, t);
20069 		T3_ = !((size == IL64(-3)));
20070 		LA4_: ;
20071 		if (!T3_) goto LA5_;
20072 		msg = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_471));
20073 		addTypeHeader__types_216((&msg), (*(*m).g).config, t, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 7), NIM_TRUE);
20074 		msg2 = ((NimStringDesc*) NIM_NIL);
20075 		addQuoted__pureZos_440((&msg2), msg);
20076 		nimZeroMem((void*)T7_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
20077 		T7_[0] = name;
20078 		T7_[1] = rope__ropes_115(size);
20079 		T7_[2] = rope__ropes_109(msg2);
20080 		T8_ = NIM_NIL;
20081 		T8_ = percent___cgen_1763(T7_, 3);
20082 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 7))- 0], T8_);
20083 	}
20084 	LA5_: ;
20085 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_4079)20086 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_4079)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20087 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20088 	result = NIM_NIL;
20089 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_474), args, argsLen_0);
20090 	return result;
20091 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getOpenArrayDesc__cgen_4015)20092 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getOpenArrayDesc__cgen_4015)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind) {
20093 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20094 	tyArray__qtqsWM5aXmcpMIVmvq3kAA sig;
20095 	result = NIM_NIL;
20096 	nimZeroMem((void*)sig, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
20097 	hashType__sighashes_462(t, 2, sig);
20098 	{
20099 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
20100 		if (!(kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3))) goto LA3_;
20101 		T5_ = NIM_NIL;
20102 		T5_ = getTypeDescWeak__cgen_3317(m, (*t).sons->data[((NI) 0)], check, kind);
20103 		result = amp___ropes_140(T5_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59));
20104 	}
20105 	goto LA1_;
20106 	LA3_: ;
20107 	{
20108 		result = cacheGetType__cgen_1353((*m).typeCache, sig);
20109 		{
20110 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* elemType;
20111 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T11_;
20112 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
20113 			if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA9_;
20114 			result = getTypeName__cgen_1161(m, t, sig);
20115 			X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
20116 			elemType = getTypeDescWeak__cgen_3317(m, (*t).sons->data[((NI) 0)], check, kind);
20117 			nimZeroMem((void*)T11_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
20118 			T11_[0] = result;
20119 			T11_[1] = elemType;
20120 			T12_ = NIM_NIL;
20121 			T12_ = percent___cgen_4079(T11_, 2);
20122 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T12_);
20123 		}
20124 		LA9_: ;
20125 	}
20126 	LA1_: ;
20127 	return result;
20128 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_5842)20129 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5842)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20130 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20131 	result = NIM_NIL;
20132 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_475), args, argsLen_0);
20133 	return result;
20134 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_5847)20135 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5847)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20136 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20137 	result = NIM_NIL;
20138 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_476), args, argsLen_0);
20139 	return result;
20140 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_5852)20141 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5852)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20142 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20143 	result = NIM_NIL;
20144 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_477), args, argsLen_0);
20145 	return result;
20146 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_5861)20147 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_5861)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20148 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20149 	result = NIM_NIL;
20150 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_478), args, argsLen_0);
20151 	return result;
20152 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6146)20153 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6146)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20154 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20155 	result = NIM_NIL;
20156 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_483), args, argsLen_0);
20157 	return result;
20158 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6200)20159 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6200)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20160 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20161 	result = NIM_NIL;
20162 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_484), args, argsLen_0);
20163 	return result;
20164 }
N_NIMCALL(NIM_BOOL,scanCppGenericSlot__cgen_3955)20165 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, scanCppGenericSlot__cgen_3955)(NimStringDesc* pat, NI* cursor, NI* outIdx, NI* outStars) {
20166 	NIM_BOOL result;
20167 	NI begin;
20168 {	result = (NIM_BOOL)0;
20169 	(*cursor) += ((NI) 1);
20170 	begin = (*cursor);
20171 	{
20172 		while (1) {
20173 			if (!((NU8)(pat->data[(*cursor)]) == (NU8)(42))) goto LA2;
20174 			(*cursor) += ((NI) 1);
20175 		} LA2: ;
20176 	}
20177 	{
20178 		if (!(((NU8)(pat->data[(*cursor)])) >= ((NU8)(48)) && ((NU8)(pat->data[(*cursor)])) <= ((NU8)(57)))) goto LA5_;
20179 		(*outIdx) = (NI)(((NU8)(pat->data[(*cursor)])) - ((NI) 48));
20180 		(*outStars) = (NI)((*cursor) - begin);
20181 		(*cursor) += ((NI) 1);
20182 		result = NIM_TRUE;
20183 		goto BeforeRet_;
20184 	}
20185 	goto LA3_;
20186 	LA5_: ;
20187 	{
20188 		result = NIM_FALSE;
20189 		goto BeforeRet_;
20190 	}
20191 	LA3_: ;
20192 	}BeforeRet_: ;
20193 	return result;
20194 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,resolveStarsInCppType__cgen_3984)20195 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, resolveStarsInCppType__cgen_3984)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, NI idx, NI stars) {
20196 	tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
20197 	result = NIM_NIL;
20198 	{
20199 		NI T3_;
20200 		T3_ = (NI)0;
20201 		T3_ = len__ast_4002(typ);
20202 		if (!(T3_ <= idx)) goto LA4_;
20203 		{
20204 			if (!NIM_TRUE) goto LA8_;
20205 			failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_485));
20206 		}
20207 		LA8_: ;
20208 	}
20209 	LA4_: ;
20210 	result = (*typ).sons->data[idx];
20211 	{
20212 		NI i;
20213 		NI res;
20214 		i = (NI)0;
20215 		res = ((NI) 1);
20216 		{
20217 			while (1) {
20218 				if (!(res <= stars)) goto LA12;
20219 				i = res;
20220 				{
20221 					NIM_BOOL T15_;
20222 					NI T17_;
20223 					T15_ = (NIM_BOOL)0;
20224 					T15_ = !((result == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
20225 					if (!(T15_)) goto LA16_;
20226 					T17_ = (NI)0;
20227 					T17_ = len__ast_4002(result);
20228 					T15_ = (((NI) 0) < T17_);
20229 					LA16_: ;
20230 					if (!T15_) goto LA18_;
20231 					{
20232 						if (!((*result).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11))) goto LA22_;
20233 						result = (*result).sons->data[((NI) 1)];
20234 					}
20235 					goto LA20_;
20236 					LA22_: ;
20237 					{
20238 						result = elemType__types_263(result);
20239 					}
20240 					LA20_: ;
20241 				}
20242 				LA18_: ;
20243 				res += ((NI) 1);
20244 			} LA12: ;
20245 		}
20246 	}
20247 	return result;
20248 }
N_INLINE(NIM_BOOL,lacksMTypeField__types_4105)20249 static N_INLINE(NIM_BOOL, lacksMTypeField__types_4105)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
20250 	NIM_BOOL result;
20251 	NIM_BOOL T1_;
20252 	NIM_BOOL T2_;
20253 	result = (NIM_BOOL)0;
20254 	T1_ = (NIM_BOOL)0;
20255 	T2_ = (NIM_BOOL)0;
20256 	T2_ = !(((*typ).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
20257 	if (!(T2_)) goto LA3_;
20258 	T2_ = (((*(*typ).sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 11))&63U)))!=0);
20259 	LA3_: ;
20260 	T1_ = T2_;
20261 	if (T1_) goto LA4_;
20262 	T1_ = (((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 2))&63U)))!=0);
20263 	LA4_: ;
20264 	result = T1_;
20265 	return result;
20266 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3902)20267 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3902)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20268 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20269 	result = NIM_NIL;
20270 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_494), args, argsLen_0);
20271 	return result;
20272 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3912)20273 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3912)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20274 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20275 	result = NIM_NIL;
20276 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_495), args, argsLen_0);
20277 	return result;
20278 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getRecordDesc__cgen_3783)20279 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getRecordDesc__cgen_3783)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check) {
20280 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20281 	NIM_BOOL hasField;
20282 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* desc;
20283 	result = NIM_NIL;
20284 	hasField = NIM_FALSE;
20285 	{
20286 		if (!(((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 23))&63U)))!=0)) goto LA3_;
20287 		{
20288 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
20289 			if (!((CC__extccomp_508[((*(*(*m).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 7))&7U)))!=0)) goto LA7_;
20290 			T9_ = NIM_NIL;
20291 			T9_ = structOrUnion__cgen_3074(typ);
20292 			result = amp___ropes_140(T9_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_490));
20293 		}
20294 		goto LA5_;
20295 		LA7_: ;
20296 		{
20297 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
20298 			T11_ = NIM_NIL;
20299 			T11_ = structOrUnion__cgen_3074(typ);
20300 			result = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_491), T11_);
20301 		}
20302 		LA5_: ;
20303 	}
20304 	goto LA1_;
20305 	LA3_: ;
20306 	{
20307 		result = structOrUnion__cgen_3074(typ);
20308 	}
20309 	LA1_: ;
20310 	add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
20311 	add__ropes_159(&result, name);
20312 	{
20313 		if (!((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17))) goto LA15_;
20314 		{
20315 			if (!((*typ).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA19_;
20316 			{
20317 				NIM_BOOL T23_;
20318 				NimStringDesc* res;
20319 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
20320 				T23_ = (NIM_BOOL)0;
20321 				T23_ = lacksMTypeField__types_4105(typ);
20322 				if (!T23_) goto LA24_;
20323 				res = rawNewString(((NI) 80));
20324 				res = resizeString(res, 2);
20325 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_403));
20326 				{
20327 					if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA28_;
20328 					res = resizeString(res, 1);
20329 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
20330 				}
20331 				LA28_: ;
20332 				T30_ = NIM_NIL;
20333 				T30_ = rope__ropes_109(res);
20334 				add__ropes_159(&result, T30_);
20335 			}
20336 			goto LA21_;
20337 			LA24_: ;
20338 			{
20339 				{
20340 					NimStringDesc* res_2;
20341 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
20342 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
20343 					if (!(((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA34_;
20344 					res_2 = rawNewString(((NI) 80));
20345 					res_2 = resizeString(res_2, 2);
20346 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_403));
20347 					{
20348 						if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA38_;
20349 						res_2 = resizeString(res_2, 1);
20350 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
20351 					}
20352 					LA38_: ;
20353 					T40_ = NIM_NIL;
20354 					T40_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_115));
20355 					cgFormatValue__cgen_141((&res_2), T40_);
20356 					res_2 = resizeString(res_2, 9);
20357 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_492));
20358 					{
20359 						if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA43_;
20360 						res_2 = resizeString(res_2, 1);
20361 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
20362 					}
20363 					LA43_: ;
20364 					T45_ = NIM_NIL;
20365 					T45_ = rope__ropes_109(res_2);
20366 					add__ropes_159(&result, T45_);
20367 				}
20368 				goto LA32_;
20369 				LA34_: ;
20370 				{
20371 					NimStringDesc* res_3;
20372 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
20373 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
20374 					res_3 = rawNewString(((NI) 80));
20375 					res_3 = resizeString(res_3, 2);
20376 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_403));
20377 					{
20378 						if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA49_;
20379 						res_3 = resizeString(res_3, 1);
20380 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
20381 					}
20382 					LA49_: ;
20383 					T51_ = NIM_NIL;
20384 					T51_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134));
20385 					cgFormatValue__cgen_141((&res_3), T51_);
20386 					res_3 = resizeString(res_3, 9);
20387 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_492));
20388 					{
20389 						if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA54_;
20390 						res_3 = resizeString(res_3, 1);
20391 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
20392 					}
20393 					LA54_: ;
20394 					T56_ = NIM_NIL;
20395 					T56_ = rope__ropes_109(res_3);
20396 					add__ropes_159(&result, T56_);
20397 				}
20398 				LA32_: ;
20399 				hasField = NIM_TRUE;
20400 			}
20401 			LA21_: ;
20402 		}
20403 		goto LA17_;
20404 		LA19_: ;
20405 		{
20406 			NIM_BOOL T58_;
20407 			NimStringDesc* res_4;
20408 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T62_;
20409 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
20410 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
20411 			T58_ = (NIM_BOOL)0;
20412 			T58_ = ((*(*(*m).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
20413 			if (T58_) goto LA59_;
20414 			T58_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
20415 			LA59_: ;
20416 			if (!T58_) goto LA60_;
20417 			res_4 = rawNewString(((NI) 80));
20418 			res_4 = resizeString(res_4, 10);
20419 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_493));
20420 			T62_ = NIM_NIL;
20421 			T62_ = skipTypes__ast_3735((*typ).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_112);
20422 			T63_ = NIM_NIL;
20423 			T63_ = getTypeDescAux__cgen_1314(m, T62_, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19));
20424 			cgFormatValue__cgen_141((&res_4), T63_);
20425 			res_4 = resizeString(res_4, 2);
20426 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_403));
20427 			{
20428 				if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA66_;
20429 				res_4 = resizeString(res_4, 1);
20430 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
20431 			}
20432 			LA66_: ;
20433 			T68_ = NIM_NIL;
20434 			T68_ = rope__ropes_109(res_4);
20435 			add__ropes_159(&result, T68_);
20436 			{
20437 				NIM_BOOL T71_;
20438 				T71_ = (NIM_BOOL)0;
20439 				T71_ = isException__types_3991(typ);
20440 				if (!(T71_)) goto LA72_;
20441 				T71_ = ((*(*(*m).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 2));
20442 				LA72_: ;
20443 				if (!T71_) goto LA73_;
20444 			}
20445 			LA73_: ;
20446 			hasField = NIM_TRUE;
20447 		}
20448 		goto LA17_;
20449 		LA60_: ;
20450 		{
20451 			NimStringDesc* res_5;
20452 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T80_;
20453 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
20454 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T86_;
20455 			res_5 = rawNewString(((NI) 80));
20456 			res_5 = resizeString(res_5, 2);
20457 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_403));
20458 			{
20459 				if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA78_;
20460 				res_5 = resizeString(res_5, 1);
20461 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
20462 			}
20463 			LA78_: ;
20464 			res_5 = resizeString(res_5, 2);
20465 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_314));
20466 			T80_ = NIM_NIL;
20467 			T80_ = skipTypes__ast_3735((*typ).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_112);
20468 			T81_ = NIM_NIL;
20469 			T81_ = getTypeDescAux__cgen_1314(m, T80_, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19));
20470 			cgFormatValue__cgen_141((&res_5), T81_);
20471 			res_5 = resizeString(res_5, 5);
20472 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_315));
20473 			{
20474 				if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA84_;
20475 				res_5 = resizeString(res_5, 1);
20476 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
20477 			}
20478 			LA84_: ;
20479 			T86_ = NIM_NIL;
20480 			T86_ = rope__ropes_109(res_5);
20481 			add__ropes_159(&result, T86_);
20482 			hasField = NIM_TRUE;
20483 		}
20484 		LA17_: ;
20485 	}
20486 	goto LA13_;
20487 	LA15_: ;
20488 	{
20489 		tyArray__JiWwrsTRC6xqNlGcBthSVA T88_;
20490 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T89_;
20491 		nimZeroMem((void*)T88_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
20492 		T88_[0] = name;
20493 		T89_ = NIM_NIL;
20494 		T89_ = percent___cgen_3902(T88_, 1);
20495 		add__ropes_159(&result, T89_);
20496 	}
20497 	LA13_: ;
20498 	desc = getRecordFields__cgen_3772(m, typ, check);
20499 	{
20500 		NIM_BOOL T92_;
20501 		tyArray__qTjAvTvKF9anytN1At69aJMQ T96_;
20502 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T97_;
20503 		T92_ = (NIM_BOOL)0;
20504 		T92_ = (desc == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
20505 		if (!(T92_)) goto LA93_;
20506 		T92_ = !(hasField);
20507 		LA93_: ;
20508 		if (!T92_) goto LA94_;
20509 		nimZeroMem((void*)T96_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
20510 		T97_ = NIM_NIL;
20511 		T97_ = percent___cgen_3912(T96_, 0);
20512 		add__ropes_159(&result, T97_);
20513 	}
20514 	goto LA90_;
20515 	LA94_: ;
20516 	{
20517 		add__ropes_159(&result, desc);
20518 	}
20519 	LA90_: ;
20520 	add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_496));
20521 	{
20522 		NIM_BOOL T101_;
20523 		T101_ = (NIM_BOOL)0;
20524 		T101_ = (((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 23))&63U)))!=0);
20525 		if (!(T101_)) goto LA102_;
20526 		T101_ = !(((CC__extccomp_508[((*(*(*m).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 7))&7U)))!=0));
20527 		LA102_: ;
20528 		if (!T101_) goto LA103_;
20529 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_497));
20530 	}
20531 	LA103_: ;
20532 	return result;
20533 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6291)20534 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6291)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20535 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20536 	result = NIM_NIL;
20537 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_498), args, argsLen_0);
20538 	return result;
20539 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6297)20540 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6297)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20541 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20542 	result = NIM_NIL;
20543 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_499), args, argsLen_0);
20544 	return result;
20545 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3931)20546 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3931)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20547 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20548 	result = NIM_NIL;
20549 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_500), args, argsLen_0);
20550 	return result;
20551 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_3946)20552 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_3946)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20553 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20554 	result = NIM_NIL;
20555 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_501), args, argsLen_0);
20556 	return result;
20557 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getTupleDesc__cgen_3925)20558 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTupleDesc__cgen_3925)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check) {
20559 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20560 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T1_;
20561 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* desc;
20562 	result = NIM_NIL;
20563 	nimZeroMem((void*)T1_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
20564 	T1_[0] = structOrUnion__cgen_3074(typ);
20565 	T1_[1] = name;
20566 	result = percent___cgen_3931(T1_, 2);
20567 	desc = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
20568 	{
20569 		NI i;
20570 		NI colontmp_;
20571 		NI i_2;
20572 		i = (NI)0;
20573 		colontmp_ = (NI)0;
20574 		colontmp_ = len__ast_4002(typ);
20575 		i_2 = ((NI) 0);
20576 		{
20577 			while (1) {
20578 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T5_;
20579 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
20580 				if (!(i_2 < colontmp_)) goto LA4;
20581 				i = i_2;
20582 				nimZeroMem((void*)T5_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
20583 				T5_[0] = getTypeDescAux__cgen_1314(m, (*typ).sons->data[i], check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 19));
20584 				T5_[1] = rope__ropes_115(((NI64) (i)));
20585 				T6_ = NIM_NIL;
20586 				T6_ = percent___cgen_3946(T5_, 2);
20587 				add__ropes_159(&desc, T6_);
20588 				i_2 += ((NI) 1);
20589 			} LA4: ;
20590 		}
20591 	}
20592 	{
20593 		if (!(desc == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA9_;
20594 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_502));
20595 	}
20596 	goto LA7_;
20597 	LA9_: ;
20598 	{
20599 		add__ropes_159(&result, desc);
20600 	}
20601 	LA7_: ;
20602 	add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_496));
20603 	return result;
20604 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6590)20605 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6590)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20606 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20607 	result = NIM_NIL;
20608 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_503), args, argsLen_0);
20609 	return result;
20610 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_6595)20611 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_6595)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
20612 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20613 	result = NIM_NIL;
20614 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_504), args, argsLen_0);
20615 	return result;
20616 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getTypeDescAux__cgen_1314)20617 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypeDescAux__cgen_1314)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* origTyp, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind) {
20618 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
20619 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
20620 	tyArray__qtqsWM5aXmcpMIVmvq3kAA sig;
20621 	TSafePoint TM__MQdRN7fpbG7rPm4JpVVAhA_23;
20622 	tyObject_TType__facALICuu8zUj0hjvbTLFg* xX60gensym500_;
20623 {	result = NIM_NIL;
20624 	t = skipTypes__ast_3735(origTyp, TM__MQdRN7fpbG7rPm4JpVVAhA_18);
20625 	{
20626 		tyObject_TType__facALICuu8zUj0hjvbTLFg* xX60gensym372_;
20627 		NIM_BOOL T3_;
20628 		xX60gensym372_ = t;
20629 		T3_ = (NIM_BOOL)0;
20630 		T3_ = containsOrIncl__astalgo_402(check, (NI)((NI)((NU32)(((NI) ((*xX60gensym372_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym372_).Sup.itemId.item))));
20631 		if (!T3_) goto LA4_;
20632 		{
20633 			NIM_BOOL T8_;
20634 			NimStringDesc* T12_;
20635 			NimStringDesc* T13_;
20636 			T8_ = (NIM_BOOL)0;
20637 			T8_ = isImportedCppType__cgen_1294(origTyp);
20638 			if (T8_) goto LA9_;
20639 			T8_ = isImportedCppType__cgen_1294(t);
20640 			LA9_: ;
20641 			if (!!(T8_)) goto LA10_;
20642 			T12_ = NIM_NIL;
20643 			T13_ = NIM_NIL;
20644 			T13_ = typeToString__types_50(origTyp, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
20645 			T12_ = rawNewString((T13_ ? T13_->Sup.len : 0) + 28);
20646 appendString(T12_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_20));
20647 appendString(T12_, T13_);
20648 			internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, T12_, TM__MQdRN7fpbG7rPm4JpVVAhA_21);
20649 		}
20650 		LA10_: ;
20651 	}
20652 	LA4_: ;
20653 	{
20654 		if (!!(((*t).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA16_;
20655 		useHeader__cgen_105(m, (*t).sym);
20656 	}
20657 	LA16_: ;
20658 	{
20659 		NIM_BOOL T20_;
20660 		T20_ = (NIM_BOOL)0;
20661 		T20_ = !((t == origTyp));
20662 		if (!(T20_)) goto LA21_;
20663 		T20_ = !(((*origTyp).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
20664 		LA21_: ;
20665 		if (!T20_) goto LA22_;
20666 		useHeader__cgen_105(m, (*origTyp).sym);
20667 	}
20668 	LA22_: ;
20669 	nimZeroMem((void*)sig, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
20670 	hashType__sighashes_462(origTyp, 2, sig);
20671 	pushSafePoint(&TM__MQdRN7fpbG7rPm4JpVVAhA_23);
20672 	TM__MQdRN7fpbG7rPm4JpVVAhA_23.status = setjmp(TM__MQdRN7fpbG7rPm4JpVVAhA_23.context);
20673 	if (TM__MQdRN7fpbG7rPm4JpVVAhA_23.status == 0) {
20674 	result = getTypePre__cgen_3061(m, t, sig);
20675 	{
20676 		NIM_BOOL T26_;
20677 		tyObject_TType__facALICuu8zUj0hjvbTLFg* xX60gensym391_;
20678 		T26_ = (NIM_BOOL)0;
20679 		T26_ = !((result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)));
20680 		if (!(T26_)) goto LA27_;
20681 		T26_ = !(((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27)));
20682 		LA27_: ;
20683 		if (!T26_) goto LA28_;
20684 		xX60gensym391_ = t;
20685 		excl__reorder_264(check, (NI)((NI)((NU32)(((NI) ((*xX60gensym391_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym391_).Sup.itemId.item))));
20686 		popSafePoint();
20687 		{
20688 			NIM_BOOL T32_;
20689 			NIM_BOOL T34_;
20690 			T32_ = (NIM_BOOL)0;
20691 			T32_ = isImportedType__cgen_1283(t);
20692 			if (!(T32_)) goto LA33_;
20693 			T34_ = (NIM_BOOL)0;
20694 			T34_ = containsOrIncl__cgen_4140((&(*m).typeABICache), sig);
20695 			T32_ = !(T34_);
20696 			LA33_: ;
20697 			if (!T32_) goto LA35_;
20698 			addAbiCheck__cgen_1752(m, t, result);
20699 		}
20700 		LA35_: ;
20701 		goto BeforeRet_;
20702 	}
20703 	LA28_: ;
20704 	switch ((*t).kind) {
20705 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
20706 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
20707 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23):
20708 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47):
20709 	{
20710 		NimStringDesc* star;
20711 		tyObject_TType__facALICuu8zUj0hjvbTLFg* et;
20712 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T49_;
20713 		tyObject_TType__facALICuu8zUj0hjvbTLFg* etB;
20714 		{
20715 			NIM_BOOL T40_;
20716 			NIM_BOOL T41_;
20717 			NIM_BOOL T44_;
20718 			T40_ = (NIM_BOOL)0;
20719 			T41_ = (NIM_BOOL)0;
20720 			T41_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
20721 			if (!(T41_)) goto LA42_;
20722 			T41_ = !((((*origTyp).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 20))&63U)))!=0));
20723 			LA42_: ;
20724 			T40_ = T41_;
20725 			if (!(T40_)) goto LA43_;
20726 			T44_ = (NIM_BOOL)0;
20727 			T44_ = ((*(*(*m).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
20728 			if (T44_) goto LA45_;
20729 			T44_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
20730 			LA45_: ;
20731 			T40_ = T44_;
20732 			LA43_: ;
20733 			if (!T40_) goto LA46_;
20734 			star = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_473));
20735 		}
20736 		goto LA38_;
20737 		LA46_: ;
20738 		{
20739 			star = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59));
20740 		}
20741 		LA38_: ;
20742 		T49_ = NIM_NIL;
20743 		T49_ = skipTypes__ast_3735(origTyp, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
20744 		et = lastSon__ast_3743(T49_);
20745 		etB = skipTypes__ast_3735(et, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
20746 		{
20747 			NIM_BOOL T52_;
20748 			tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T53_;
20749 			NIM_BOOL T55_;
20750 			T52_ = (NIM_BOOL)0;
20751 			T53_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
20752 			T53_ = mapType__cgen_1209((*(*m).g).config, t, kind);
20753 			T52_ = (T53_ == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 18));
20754 			if (!(T52_)) goto LA54_;
20755 			T55_ = (NIM_BOOL)0;
20756 			T55_ = !(((*etB).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27)));
20757 			if (T55_) goto LA56_;
20758 			T55_ = (kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
20759 			LA56_: ;
20760 			T52_ = T55_;
20761 			LA54_: ;
20762 			if (!T52_) goto LA57_;
20763 			{
20764 				if (!((*etB).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19))) goto LA61_;
20765 				et = getSysType__magicsys_60((*(*m).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 41));
20766 			}
20767 			goto LA59_;
20768 			LA61_: ;
20769 			{
20770 				et = elemType__types_263(etB);
20771 			}
20772 			LA59_: ;
20773 			etB = skipTypes__ast_3735(et, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
20774 			star->data[((NI) 0)] = 42;
20775 		}
20776 		LA57_: ;
20777 		switch ((*etB).kind) {
20778 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
20779 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
20780 		{
20781 			{
20782 				NIM_BOOL T67_;
20783 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
20784 				T67_ = (NIM_BOOL)0;
20785 				T67_ = isImportedCppType__cgen_1294(etB);
20786 				if (!(T67_)) goto LA68_;
20787 				T67_ = ((*et).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11));
20788 				LA68_: ;
20789 				if (!T67_) goto LA69_;
20790 				T71_ = NIM_NIL;
20791 				T71_ = getTypeDescAux__cgen_1314(m, et, check, kind);
20792 				result = amp___ropes_140(T71_, star);
20793 			}
20794 			goto LA65_;
20795 			LA69_: ;
20796 			{
20797 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name;
20798 				tyArray__qtqsWM5aXmcpMIVmvq3kAA T73_;
20799 				nimZeroMem((void*)T73_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
20800 				hashType__sighashes_462(et, 2, T73_);
20801 				name = getTypeForward__cgen_3113(m, et, T73_);
20802 				result = amp___ropes_140(name, star);
20803 				X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
20804 			}
20805 			LA65_: ;
20806 		}
20807 		break;
20808 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
20809 		{
20810 			{
20811 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T79_;
20812 				if (!(((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA77_;
20813 				T79_ = NIM_NIL;
20814 				T79_ = getTypeDescWeak__cgen_3317(m, et, check, kind);
20815 				result = amp___ropes_140(T79_, star);
20816 				X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
20817 			}
20818 			goto LA75_;
20819 			LA77_: ;
20820 			{
20821 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* name_2;
20822 				tyArray__qtqsWM5aXmcpMIVmvq3kAA T81_;
20823 				NimStringDesc* T82_;
20824 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T83_;
20825 				nimZeroMem((void*)T81_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
20826 				hashType__sighashes_462(et, 2, T81_);
20827 				name_2 = getTypeForward__cgen_3113(m, et, T81_);
20828 				T82_ = NIM_NIL;
20829 				T82_ = seqStar__cgen_3106(m);
20830 				T83_ = NIM_NIL;
20831 				T83_ = amp___ropes_140(name_2, T82_);
20832 				result = amp___ropes_140(T83_, star);
20833 				X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
20834 				pushType__cgen_3042(m, et);
20835 			}
20836 			LA75_: ;
20837 		}
20838 		break;
20839 		default:
20840 		{
20841 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T85_;
20842 			T85_ = NIM_NIL;
20843 			T85_ = getTypeDescAux__cgen_1314(m, et, check, kind);
20844 			result = amp___ropes_140(T85_, star);
20845 			X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
20846 		}
20847 		break;
20848 		}
20849 	}
20850 	break;
20851 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
20852 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
20853 	{
20854 		result = getOpenArrayDesc__cgen_4015(m, t, check, kind);
20855 	}
20856 	break;
20857 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
20858 	{
20859 		result = cacheGetType__cgen_1353((*m).typeCache, sig);
20860 		{
20861 			if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA90_;
20862 			result = getTypeName__cgen_1161(m, origTyp, sig);
20863 			{
20864 				NIM_BOOL T94_;
20865 				NIM_BOOL T96_;
20866 				NI size;
20867 				T94_ = (NIM_BOOL)0;
20868 				T94_ = isImportedCppType__cgen_1294(t);
20869 				if (T94_) goto LA95_;
20870 				T96_ = (NIM_BOOL)0;
20871 				T96_ = (((*(*t).sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0);
20872 				if (!(T96_)) goto LA97_;
20873 				T96_ = ((*(*t).sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0));
20874 				LA97_: ;
20875 				T94_ = T96_;
20876 				LA95_: ;
20877 				if (!!(T94_)) goto LA98_;
20878 				X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
20879 				size = (NI)0;
20880 				{
20881 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T102_;
20882 					NIM_BOOL T103_;
20883 					tyArray__JiWwrsTRC6xqNlGcBthSVA T106_;
20884 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T107_;
20885 					T102_ = firstOrd__types_1353((*(*m).g).config, t);
20886 					T103_ = (NIM_BOOL)0;
20887 					T103_ = lt___int495056_721(T102_, IL64(0));
20888 					if (!T103_) goto LA104_;
20889 					nimZeroMem((void*)T106_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
20890 					T106_[0] = result;
20891 					T107_ = NIM_NIL;
20892 					T107_ = percent___cgen_5842(T106_, 1);
20893 					add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T107_);
20894 					size = ((NI) 4);
20895 				}
20896 				goto LA100_;
20897 				LA104_: ;
20898 				{
20899 					NI64 T109_;
20900 					T109_ = (NI64)0;
20901 					T109_ = getSize__types_3327((*(*m).g).config, t);
20902 					size = ((NI) (T109_));
20903 					switch (size) {
20904 					case ((NI) 1):
20905 					{
20906 						tyArray__JiWwrsTRC6xqNlGcBthSVA T111_;
20907 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T112_;
20908 						nimZeroMem((void*)T111_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
20909 						T111_[0] = result;
20910 						T112_ = NIM_NIL;
20911 						T112_ = percent___cgen_5847(T111_, 1);
20912 						add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T112_);
20913 					}
20914 					break;
20915 					case ((NI) 2):
20916 					{
20917 						tyArray__JiWwrsTRC6xqNlGcBthSVA T114_;
20918 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T115_;
20919 						nimZeroMem((void*)T114_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
20920 						T114_[0] = result;
20921 						T115_ = NIM_NIL;
20922 						T115_ = percent___cgen_5852(T114_, 1);
20923 						add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T115_);
20924 					}
20925 					break;
20926 					case ((NI) 4):
20927 					{
20928 						tyArray__JiWwrsTRC6xqNlGcBthSVA T117_;
20929 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T118_;
20930 						nimZeroMem((void*)T117_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
20931 						T117_[0] = result;
20932 						T118_ = NIM_NIL;
20933 						T118_ = percent___cgen_5842(T117_, 1);
20934 						add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T118_);
20935 					}
20936 					break;
20937 					case ((NI) 8):
20938 					{
20939 						tyArray__JiWwrsTRC6xqNlGcBthSVA T120_;
20940 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T121_;
20941 						nimZeroMem((void*)T120_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
20942 						T120_[0] = result;
20943 						T121_ = NIM_NIL;
20944 						T121_ = percent___cgen_5861(T120_, 1);
20945 						add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T121_);
20946 					}
20947 					break;
20948 					default:
20949 					{
20950 						internalErrorImpl__msgs_1431((*(*m).g).config, (*(*t).sym).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_479), TM__MQdRN7fpbG7rPm4JpVVAhA_480);
20951 					}
20952 					break;
20953 					}
20954 				}
20955 				LA100_: ;
20956 			}
20957 			LA98_: ;
20958 		}
20959 		LA90_: ;
20960 	}
20961 	break;
20962 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25):
20963 	{
20964 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* rettype;
20965 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* desc;
20966 		result = getTypeName__cgen_1161(m, origTyp, sig);
20967 		X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
20968 		rettype = NIM_NIL;
20969 		desc = NIM_NIL;
20970 		genProcParams__cgen_3480(m, t, &rettype, &desc, check, NIM_TRUE, NIM_TRUE);
20971 		{
20972 			NIM_BOOL T126_;
20973 			T126_ = (NIM_BOOL)0;
20974 			T126_ = isImportedType__cgen_1283(t);
20975 			if (!!(T126_)) goto LA127_;
20976 			{
20977 				tyArray__f7nG5LD47BH5K9c6mASit3g T133_;
20978 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T134_;
20979 				if (!!(((*t).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9)))) goto LA131_;
20980 				nimZeroMem((void*)T133_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
20981 				T133_[0] = rope__ropes_109(CallingConvToStr__cgen_1352[((*t).callConv)- 0]);
20982 				T133_[1] = rettype;
20983 				T133_[2] = result;
20984 				T133_[3] = desc;
20985 				T134_ = NIM_NIL;
20986 				T134_ = percent___cgen_5918(T133_, 4);
20987 				add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T134_);
20988 			}
20989 			goto LA129_;
20990 			LA131_: ;
20991 			{
20992 				tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T136_;
20993 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T137_;
20994 				nimZeroMem((void*)T136_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
20995 				T136_[0] = result;
20996 				T136_[1] = rettype;
20997 				T136_[2] = desc;
20998 				T137_ = NIM_NIL;
20999 				T137_ = percent___cgen_5923(T136_, 3);
21000 				add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T137_);
21001 			}
21002 			LA129_: ;
21003 		}
21004 		LA127_: ;
21005 	}
21006 	break;
21007 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
21008 	{
21009 		{
21010 			if (!(((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA141_;
21011 			result = getTypeDescWeak__cgen_3317(m, t, check, kind);
21012 		}
21013 		goto LA139_;
21014 		LA141_: ;
21015 		{
21016 			NimStringDesc* T154_;
21017 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T155_;
21018 			NimStringDesc* T208_;
21019 			result = cacheGetType__cgen_1353((*m).forwTypeCache, sig);
21020 			{
21021 				if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA146_;
21022 				result = getTypeName__cgen_1161(m, origTyp, sig);
21023 				{
21024 					NIM_BOOL T150_;
21025 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T153_;
21026 					T150_ = (NIM_BOOL)0;
21027 					T150_ = isImportedType__cgen_1283(t);
21028 					if (!!(T150_)) goto LA151_;
21029 					T153_ = NIM_NIL;
21030 					T153_ = structOrUnion__cgen_3074(t);
21031 					addForwardStructFormat__cgen_3084(m, T153_, result);
21032 				}
21033 				LA151_: ;
21034 				X5BX5Deq___cgen_1867((&(*m).forwTypeCache), sig, result);
21035 			}
21036 			LA146_: ;
21037 			T154_ = NIM_NIL;
21038 			T154_ = seqStar__cgen_3106(m);
21039 			T155_ = NIM_NIL;
21040 			T155_ = amp___ropes_140(result, T154_);
21041 			X5BX5Deq___cgen_1867((&(*m).typeCache), sig, T155_);
21042 			{
21043 				NIM_BOOL T158_;
21044 				T158_ = (NIM_BOOL)0;
21045 				T158_ = isImportedType__cgen_1283(t);
21046 				if (!!(T158_)) goto LA159_;
21047 				{
21048 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T163_;
21049 					T163_ = NIM_NIL;
21050 					T163_ = skipTypes__ast_3735((*t).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_32);
21051 					if (!!(((*T163_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 3)))) goto LA164_;
21052 					{
21053 						NIM_BOOL T168_;
21054 						NimStringDesc* res;
21055 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T172_;
21056 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T177_;
21057 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T186_;
21058 						T168_ = (NIM_BOOL)0;
21059 						T168_ = ((*(*(*m).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
21060 						if (T168_) goto LA169_;
21061 						T168_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
21062 						LA169_: ;
21063 						if (!T168_) goto LA170_;
21064 						res = rawNewString(((NI) 80));
21065 						res = resizeString(res, 7);
21066 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_56));
21067 						cgFormatValue__cgen_141((&res), result);
21068 						res = resizeString(res, 3);
21069 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_481));
21070 						T172_ = NIM_NIL;
21071 						T172_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_222));
21072 						cgFormatValue__cgen_141((&res), T172_);
21073 						res = resizeString(res, 2);
21074 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_403));
21075 						{
21076 							if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA175_;
21077 							res = resizeString(res, 1);
21078 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
21079 						}
21080 						LA175_: ;
21081 						res = resizeString(res, 2);
21082 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_314));
21083 						T177_ = NIM_NIL;
21084 						T177_ = getTypeDescAux__cgen_1314(m, (*t).sons->data[((NI) 0)], check, kind);
21085 						cgFormatValue__cgen_141((&res), T177_);
21086 						res = resizeString(res, 21);
21087 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_482));
21088 						{
21089 							if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA180_;
21090 							res = resizeString(res, 1);
21091 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
21092 						}
21093 						LA180_: ;
21094 						res = resizeString(res, 2);
21095 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_309));
21096 						{
21097 							if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA184_;
21098 							res = resizeString(res, 1);
21099 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
21100 						}
21101 						LA184_: ;
21102 						T186_ = NIM_NIL;
21103 						T186_ = rope__ropes_109(res);
21104 						add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 5))- 0], T186_);
21105 					}
21106 					goto LA166_;
21107 					LA170_: ;
21108 					{
21109 						NimStringDesc* res_2;
21110 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T192_;
21111 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T197_;
21112 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T206_;
21113 						res_2 = rawNewString(((NI) 80));
21114 						res_2 = resizeString(res_2, 7);
21115 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_56));
21116 						cgFormatValue__cgen_141((&res_2), result);
21117 						res_2 = resizeString(res_2, 2);
21118 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_403));
21119 						{
21120 							if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA190_;
21121 							res_2 = resizeString(res_2, 1);
21122 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
21123 						}
21124 						LA190_: ;
21125 						res_2 = resizeString(res_2, 2);
21126 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_314));
21127 						T192_ = NIM_NIL;
21128 						T192_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_222));
21129 						cgFormatValue__cgen_141((&res_2), T192_);
21130 						res_2 = resizeString(res_2, 5);
21131 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_315));
21132 						{
21133 							if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA195_;
21134 							res_2 = resizeString(res_2, 1);
21135 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
21136 						}
21137 						LA195_: ;
21138 						res_2 = resizeString(res_2, 2);
21139 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_314));
21140 						T197_ = NIM_NIL;
21141 						T197_ = getTypeDescAux__cgen_1314(m, (*t).sons->data[((NI) 0)], check, kind);
21142 						cgFormatValue__cgen_141((&res_2), T197_);
21143 						res_2 = resizeString(res_2, 21);
21144 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_482));
21145 						{
21146 							if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA200_;
21147 							res_2 = resizeString(res_2, 1);
21148 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
21149 						}
21150 						LA200_: ;
21151 						res_2 = resizeString(res_2, 2);
21152 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_309));
21153 						{
21154 							if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA204_;
21155 							res_2 = resizeString(res_2, 1);
21156 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
21157 						}
21158 						LA204_: ;
21159 						T206_ = NIM_NIL;
21160 						T206_ = rope__ropes_109(res_2);
21161 						add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 5))- 0], T206_);
21162 					}
21163 					LA166_: ;
21164 				}
21165 				goto LA161_;
21166 				LA164_: ;
21167 				{
21168 					result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_222));
21169 				}
21170 				LA161_: ;
21171 			}
21172 			LA159_: ;
21173 			T208_ = NIM_NIL;
21174 			T208_ = seqStar__cgen_3106(m);
21175 			add__ropes_162(&result, T208_);
21176 		}
21177 		LA139_: ;
21178 	}
21179 	break;
21180 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 49):
21181 	{
21182 		result = getTypeName__cgen_1161(m, origTyp, sig);
21183 		X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
21184 		{
21185 			NIM_BOOL T212_;
21186 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* foo;
21187 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T215_;
21188 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T216_;
21189 			T212_ = (NIM_BOOL)0;
21190 			T212_ = isImportedType__cgen_1283(t);
21191 			if (!!(T212_)) goto LA213_;
21192 			foo = getTypeDescAux__cgen_1314(m, (*t).sons->data[((NI) 0)], check, kind);
21193 			nimZeroMem((void*)T215_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
21194 			T215_[0] = foo;
21195 			T215_[1] = result;
21196 			T216_ = NIM_NIL;
21197 			T216_ = percent___cgen_6146(T215_, 2);
21198 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T216_);
21199 		}
21200 		LA213_: ;
21201 	}
21202 	break;
21203 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
21204 	{
21205 		NI64 n;
21206 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA T218_;
21207 		T218_ = lengthOrd__types_1652((*(*m).g).config, t);
21208 		n = toInt64__int495056_88(T218_);
21209 		{
21210 			if (!(n <= IL64(0))) goto LA221_;
21211 			n = IL64(1);
21212 		}
21213 		LA221_: ;
21214 		result = getTypeName__cgen_1161(m, origTyp, sig);
21215 		X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
21216 		{
21217 			NIM_BOOL T225_;
21218 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* foo_2;
21219 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T228_;
21220 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T229_;
21221 			T225_ = (NIM_BOOL)0;
21222 			T225_ = isImportedType__cgen_1283(t);
21223 			if (!!(T225_)) goto LA226_;
21224 			foo_2 = getTypeDescAux__cgen_1314(m, (*t).sons->data[((NI) 1)], check, kind);
21225 			nimZeroMem((void*)T228_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
21226 			T228_[0] = foo_2;
21227 			T228_[1] = result;
21228 			T228_[2] = rope__ropes_115(n);
21229 			T229_ = NIM_NIL;
21230 			T229_ = percent___cgen_6200(T228_, 3);
21231 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T229_);
21232 		}
21233 		LA226_: ;
21234 	}
21235 	break;
21236 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
21237 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
21238 	{
21239 		{
21240 			NIM_BOOL T233_;
21241 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* cppName;
21242 			NI i;
21243 			NI chunkStart;
21244 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T300_;
21245 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* typedefName;
21246 			tyArray__qTjAvTvKF9anytN1At69aJMQ T301_;
21247 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T302_;
21248 			NimStringDesc* T303_;
21249 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T304_;
21250 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T305_;
21251 			T233_ = (NIM_BOOL)0;
21252 			T233_ = isImportedCppType__cgen_1294(t);
21253 			if (!(T233_)) goto LA234_;
21254 			T233_ = ((*origTyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11));
21255 			LA234_: ;
21256 			if (!T233_) goto LA235_;
21257 			cppName = getTypeName__cgen_1161(m, t, sig);
21258 			i = ((NI) 0);
21259 			chunkStart = ((NI) 0);
21260 			{
21261 				while (1) {
21262 					if (!(i < ((*cppName).data ? (*cppName).data->Sup.len : 0))) goto LA238;
21263 					{
21264 						NI chunkEnd;
21265 						NI idx;
21266 						NI stars;
21267 						if (!((NU8)((*cppName).data->data[i]) == (NU8)(39))) goto LA241_;
21268 						chunkEnd = (NI)(i - ((NI) 1));
21269 						idx = (NI)0;
21270 						stars = (NI)0;
21271 						{
21272 							NIM_BOOL T245_;
21273 							NimStringDesc* T248_;
21274 							tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInSlot;
21275 							T245_ = (NIM_BOOL)0;
21276 							T245_ = scanCppGenericSlot__cgen_3955((*cppName).data, (&i), (&idx), (&stars));
21277 							if (!T245_) goto LA246_;
21278 							T248_ = NIM_NIL;
21279 							T248_ = substr__system_7743((*cppName).data, chunkStart, chunkEnd);
21280 							add__ropes_162(&result, T248_);
21281 							chunkStart = i;
21282 							typeInSlot = resolveStarsInCppType__cgen_3984(origTyp, (NI)(idx + ((NI) 1)), stars);
21283 							{
21284 								NIM_BOOL T251_;
21285 								tyArray__qTjAvTvKF9anytN1At69aJMQ T255_;
21286 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T256_;
21287 								T251_ = (NIM_BOOL)0;
21288 								T251_ = (typeInSlot == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
21289 								if (T251_) goto LA252_;
21290 								T251_ = ((*typeInSlot).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63));
21291 								LA252_: ;
21292 								if (!T251_) goto LA253_;
21293 								nimZeroMem((void*)T255_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
21294 								T256_ = NIM_NIL;
21295 								T256_ = percent___cgen_3494(T255_, 0);
21296 								add__ropes_159(&result, T256_);
21297 							}
21298 							goto LA249_;
21299 							LA253_: ;
21300 							{
21301 								NimStringDesc* T264_;
21302 								if (!((*typeInSlot).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60))) goto LA258_;
21303 								{
21304 									NimStringDesc* argX60gensym466_;
21305 									if (!!(!(((*typeInSlot).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))))) goto LA262_;
21306 									argX60gensym466_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_486);
21307 									internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, argX60gensym466_, TM__MQdRN7fpbG7rPm4JpVVAhA_486);
21308 								}
21309 								LA262_: ;
21310 								T264_ = NIM_NIL;
21311 								T264_ = renderTree__renderer_46((*typeInSlot).n, 0);
21312 								add__ropes_162(&result, T264_);
21313 							}
21314 							goto LA249_;
21315 							LA258_: ;
21316 							{
21317 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T266_;
21318 								T266_ = NIM_NIL;
21319 								T266_ = getTypeDescAux__cgen_1314(m, typeInSlot, check, kind);
21320 								add__ropes_159(&result, T266_);
21321 							}
21322 							LA249_: ;
21323 						}
21324 						LA246_: ;
21325 					}
21326 					goto LA239_;
21327 					LA241_: ;
21328 					{
21329 						i += ((NI) 1);
21330 					}
21331 					LA239_: ;
21332 				} LA238: ;
21333 			}
21334 			{
21335 				NimStringDesc* T272_;
21336 				if (!!((chunkStart == ((NI) 0)))) goto LA270_;
21337 				T272_ = NIM_NIL;
21338 				T272_ = substr__system_7755((*cppName).data, chunkStart);
21339 				add__ropes_162(&result, T272_);
21340 			}
21341 			goto LA268_;
21342 			LA270_: ;
21343 			{
21344 				result = amp___ropes_140(cppName, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_487));
21345 				{
21346 					NI i_2;
21347 					NI colontmp_;
21348 					NI T275_;
21349 					NI i_3;
21350 					i_2 = (NI)0;
21351 					colontmp_ = (NI)0;
21352 					T275_ = (NI)0;
21353 					T275_ = len__ast_4002(origTyp);
21354 					colontmp_ = (NI)(T275_ - ((NI) 1));
21355 					i_3 = ((NI) 1);
21356 					{
21357 						while (1) {
21358 							if (!(i_3 < colontmp_)) goto LA277;
21359 							i_2 = i_3;
21360 							{
21361 								if (!(((NI) 1) < i_2)) goto LA280_;
21362 								add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_488));
21363 							}
21364 							LA280_: ;
21365 							{
21366 								NIM_BOOL T284_;
21367 								tyArray__qTjAvTvKF9anytN1At69aJMQ T288_;
21368 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T289_;
21369 								T284_ = (NIM_BOOL)0;
21370 								T284_ = ((*origTyp).sons->data[i_2] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
21371 								if (T284_) goto LA285_;
21372 								T284_ = ((*(*origTyp).sons->data[i_2]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63));
21373 								LA285_: ;
21374 								if (!T284_) goto LA286_;
21375 								nimZeroMem((void*)T288_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
21376 								T289_ = NIM_NIL;
21377 								T289_ = percent___cgen_3494(T288_, 0);
21378 								add__ropes_159(&result, T289_);
21379 							}
21380 							goto LA282_;
21381 							LA286_: ;
21382 							{
21383 								NimStringDesc* T297_;
21384 								if (!((*(*origTyp).sons->data[i_2]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 60))) goto LA291_;
21385 								{
21386 									NimStringDesc* argX60gensym478_;
21387 									if (!!(!(((*(*origTyp).sons->data[i_2]).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))))) goto LA295_;
21388 									argX60gensym478_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_486);
21389 									internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, argX60gensym478_, TM__MQdRN7fpbG7rPm4JpVVAhA_486);
21390 								}
21391 								LA295_: ;
21392 								T297_ = NIM_NIL;
21393 								T297_ = renderTree__renderer_46((*(*origTyp).sons->data[i_2]).n, 0);
21394 								add__ropes_162(&result, T297_);
21395 							}
21396 							goto LA282_;
21397 							LA291_: ;
21398 							{
21399 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T299_;
21400 								T299_ = NIM_NIL;
21401 								T299_ = getTypeDescAux__cgen_1314(m, (*origTyp).sons->data[i_2], check, kind);
21402 								add__ropes_159(&result, T299_);
21403 							}
21404 							LA282_: ;
21405 							i_3 += ((NI) 1);
21406 						} LA277: ;
21407 					}
21408 				}
21409 				add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_489));
21410 			}
21411 			LA268_: ;
21412 			T300_ = NIM_NIL;
21413 			T300_ = getRecordDesc__cgen_3783(m, t, result, check);
21414 			(void)(T300_);
21415 			nimZeroMem((void*)T301_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
21416 			T302_ = NIM_NIL;
21417 			T302_ = percent___cgen_6291(T301_, 0);
21418 			T303_ = NIM_NIL;
21419 			T303_ = dollar___modulegraphs_8947(sig);
21420 			typedefName = amp___ropes_140(T302_, T303_);
21421 			nimZeroMem((void*)T304_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
21422 			T304_[0] = result;
21423 			T304_[1] = typedefName;
21424 			T305_ = NIM_NIL;
21425 			T305_ = percent___cgen_6297(T304_, 2);
21426 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T305_);
21427 			X5BX5Deq___cgen_1867((&(*m).typeCache), sig, typedefName);
21428 			result = typedefName;
21429 		}
21430 		goto LA231_;
21431 		LA235_: ;
21432 		{
21433 			result = cacheGetType__cgen_1353((*m).forwTypeCache, sig);
21434 			{
21435 				if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA309_;
21436 				result = getTypeName__cgen_1161(m, origTyp, sig);
21437 				X5BX5Deq___cgen_1867((&(*m).forwTypeCache), sig, result);
21438 				{
21439 					NIM_BOOL T313_;
21440 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T316_;
21441 					T313_ = (NIM_BOOL)0;
21442 					T313_ = isImportedType__cgen_1283(t);
21443 					if (!!(T313_)) goto LA314_;
21444 					T316_ = NIM_NIL;
21445 					T316_ = structOrUnion__cgen_3074(t);
21446 					addForwardStructFormat__cgen_3084(m, T316_, result);
21447 				}
21448 				LA314_: ;
21449 			}
21450 			LA309_: ;
21451 			X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
21452 			{
21453 				NIM_BOOL T319_;
21454 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* recdesc;
21455 				T319_ = (NIM_BOOL)0;
21456 				T319_ = !(((*t).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
21457 				if (!(T319_)) goto LA320_;
21458 				T319_ = ((1040 & (*(*t).sym).flags) == 16);
21459 				LA320_: ;
21460 				if (!!(T319_)) goto LA321_;
21461 				{
21462 					if (!!(((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18)))) goto LA325_;
21463 					recdesc = getRecordDesc__cgen_3783(m, t, result, check);
21464 				}
21465 				goto LA323_;
21466 				LA325_: ;
21467 				{
21468 					recdesc = getTupleDesc__cgen_3925(m, t, result, check);
21469 				}
21470 				LA323_: ;
21471 				{
21472 					NIM_BOOL T330_;
21473 					T330_ = (NIM_BOOL)0;
21474 					T330_ = isImportedType__cgen_1283(t);
21475 					if (!!(T330_)) goto LA331_;
21476 					add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], recdesc);
21477 				}
21478 				goto LA328_;
21479 				LA331_: ;
21480 				{
21481 					if (!!((((*t).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 40))&63U)))!=0))) goto LA334_;
21482 				}
21483 				goto LA328_;
21484 				LA334_: ;
21485 				LA328_: ;
21486 			}
21487 			LA321_: ;
21488 		}
21489 		LA231_: ;
21490 	}
21491 	break;
21492 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
21493 	{
21494 		NimStringDesc* T337_;
21495 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T338_;
21496 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T339_;
21497 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T340_;
21498 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T341_;
21499 		tyArray__qtqsWM5aXmcpMIVmvq3kAA T342_;
21500 		NimStringDesc* T343_;
21501 		T337_ = NIM_NIL;
21502 		T337_ = rawNewString((reprEnum((NI)(*t).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*t).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 1);
21503 appendString(T337_, reprEnum((NI)(*t).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
21504 appendChar(T337_, 95);
21505 		T338_ = NIM_NIL;
21506 		T338_ = lastSon__ast_3743(t);
21507 		T339_ = NIM_NIL;
21508 		T339_ = typeName__cgen_1143(T338_);
21509 		T340_ = NIM_NIL;
21510 		T340_ = amp___ropes_144(T337_, T339_);
21511 		T341_ = NIM_NIL;
21512 		T341_ = lastSon__ast_3743(t);
21513 		nimZeroMem((void*)T342_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
21514 		hashType__sighashes_462(T341_, 2, T342_);
21515 		T343_ = NIM_NIL;
21516 		T343_ = dollar___modulegraphs_8947(T342_);
21517 		result = amp___ropes_140(T340_, T343_);
21518 		X5BX5Deq___cgen_1867((&(*m).typeCache), sig, result);
21519 		{
21520 			NIM_BOOL T346_;
21521 			NI s;
21522 			NI64 T349_;
21523 			T346_ = (NIM_BOOL)0;
21524 			T346_ = isImportedType__cgen_1283(t);
21525 			if (!!(T346_)) goto LA347_;
21526 			T349_ = (NI64)0;
21527 			T349_ = getSize__types_3327((*(*m).g).config, t);
21528 			s = ((NI) (T349_));
21529 			switch (s) {
21530 			case ((NI) 1):
21531 			case ((NI) 2):
21532 			case ((NI) 4):
21533 			case ((NI) 8):
21534 			{
21535 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T351_;
21536 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T352_;
21537 				nimZeroMem((void*)T351_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
21538 				T351_[0] = result;
21539 				T351_[1] = rope__ropes_115(((NI64) ((NI)(s * ((NI) 8)))));
21540 				T352_ = NIM_NIL;
21541 				T352_ = percent___cgen_6590(T351_, 2);
21542 				add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T352_);
21543 			}
21544 			break;
21545 			default:
21546 			{
21547 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T354_;
21548 				NI64 T355_;
21549 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T356_;
21550 				nimZeroMem((void*)T354_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
21551 				T354_[0] = result;
21552 				T355_ = (NI64)0;
21553 				T355_ = getSize__types_3327((*(*m).g).config, t);
21554 				T354_[1] = rope__ropes_115(T355_);
21555 				T356_ = NIM_NIL;
21556 				T356_ = percent___cgen_6595(T354_, 2);
21557 				add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T356_);
21558 			}
21559 			break;
21560 			}
21561 		}
21562 		LA347_: ;
21563 	}
21564 	break;
21565 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 11):
21566 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 13):
21567 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 15):
21568 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 8):
21569 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 4):
21570 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 46):
21571 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 45):
21572 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 52):
21573 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 53):
21574 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 55):
21575 	{
21576 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T358_;
21577 		T358_ = NIM_NIL;
21578 		T358_ = lastSon__ast_3743(t);
21579 		result = getTypeDescAux__cgen_1314(m, T358_, check, kind);
21580 	}
21581 	break;
21582 	default:
21583 	{
21584 		NimStringDesc* T360_;
21585 		T360_ = NIM_NIL;
21586 		T360_ = rawNewString((reprEnum((NI)(*t).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*t).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 16);
21587 appendString(T360_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_505));
21588 appendString(T360_, reprEnum((NI)(*t).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
21589 appendChar(T360_, 41);
21590 		internalErrorImpl__msgs_1431((*(*m).g).config, unknownLineInfo__lineinfos_280, T360_, TM__MQdRN7fpbG7rPm4JpVVAhA_506);
21591 		result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
21592 	}
21593 	break;
21594 	}
21595 	xX60gensym500_ = t;
21596 	excl__reorder_264(check, (NI)((NI)((NU32)(((NI) ((*xX60gensym500_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym500_).Sup.itemId.item))));
21597 	popSafePoint();
21598 	}
21599 	else {
21600 		popSafePoint();
21601 	}
21602 	{
21603 		{
21604 			NIM_BOOL T365_;
21605 			NIM_BOOL T367_;
21606 			T365_ = (NIM_BOOL)0;
21607 			T365_ = isImportedType__cgen_1283(t);
21608 			if (!(T365_)) goto LA366_;
21609 			T367_ = (NIM_BOOL)0;
21610 			T367_ = containsOrIncl__cgen_4140((&(*m).typeABICache), sig);
21611 			T365_ = !(T367_);
21612 			LA366_: ;
21613 			if (!T365_) goto LA368_;
21614 			addAbiCheck__cgen_1752(m, t, result);
21615 		}
21616 		LA368_: ;
21617 		if (TM__MQdRN7fpbG7rPm4JpVVAhA_23.status != 0) nimLeaveFinally();
21618 	}
21619 	if (TM__MQdRN7fpbG7rPm4JpVVAhA_23.status != 0) reraiseException();
21620 	}BeforeRet_: ;
21621 	return result;
21622 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getTypeDesc__cgen_6631)21623 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTypeDesc__cgen_6631)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind) {
21624 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
21625 	tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA check;
21626 	result = NIM_NIL;
21627 	nimZeroMem((void*)(&check), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
21628 	initIntSet__pureZcollectionsZintsets_238((&check));
21629 	result = getTypeDescAux__cgen_1314(m, typ, (&check), kind);
21630 	return result;
21631 }
N_INLINE(NIM_BOOL,requiresExternC__cgen_26233)21632 static N_INLINE(NIM_BOOL, requiresExternC__cgen_26233)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
21633 	NIM_BOOL result;
21634 	NIM_BOOL T1_;
21635 	NIM_BOOL T2_;
21636 	NIM_BOOL T3_;
21637 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T5_;
21638 	NIM_BOOL T8_;
21639 	NIM_BOOL T9_;
21640 	NIM_BOOL T10_;
21641 	result = (NIM_BOOL)0;
21642 	T1_ = (NIM_BOOL)0;
21643 	T2_ = (NIM_BOOL)0;
21644 	T3_ = (NIM_BOOL)0;
21645 	T3_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
21646 	if (!(T3_)) goto LA4_;
21647 	T5_ = NIM_NIL;
21648 	T5_ = getModule__astalgo_216(sym);
21649 	T3_ = !((((*T5_).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0));
21650 	LA4_: ;
21651 	T2_ = T3_;
21652 	if (!(T2_)) goto LA6_;
21653 	T2_ = !(((*(*(*m).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2)));
21654 	LA6_: ;
21655 	T1_ = T2_;
21656 	if (T1_) goto LA7_;
21657 	T8_ = (NIM_BOOL)0;
21658 	T9_ = (NIM_BOOL)0;
21659 	T10_ = (NIM_BOOL)0;
21660 	T10_ = (((*sym).flags & IL64(4295229696)) == 0);
21661 	if (!(T10_)) goto LA11_;
21662 	T10_ = !((((*sym).flags & 192) == 0));
21663 	LA11_: ;
21664 	T9_ = T10_;
21665 	if (!(T9_)) goto LA12_;
21666 	T9_ = ((*sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0));
21667 	LA12_: ;
21668 	T8_ = T9_;
21669 	if (!(T8_)) goto LA13_;
21670 	T8_ = ((*(*(*m).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
21671 	LA13_: ;
21672 	T1_ = T8_;
21673 	LA7_: ;
21674 	result = T1_;
21675 	return result;
21676 }
N_NIMCALL(void,genProcPrototype__cgen_11464)21677 N_LIB_PRIVATE N_NIMCALL(void, genProcPrototype__cgen_11464)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
21678 {	useHeader__cgen_105(m, sym);
21679 	{
21680 		if (!(((*sym).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 3))&15U)))!=0)) goto LA3_;
21681 		goto BeforeRet_;
21682 	}
21683 	LA3_: ;
21684 	{
21685 		if (!(((*sym).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 4))&15U)))!=0)) goto LA7_;
21686 		{
21687 			NIM_BOOL T11_;
21688 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6088_;
21689 			NIM_BOOL T13_;
21690 			NimStringDesc* res;
21691 			NimStringDesc* T16_;
21692 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T23_;
21693 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
21694 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
21695 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
21696 			T11_ = (NIM_BOOL)0;
21697 			T11_ = !((((NI) ((*sym).Sup.itemId.module)) == (*(*m).module).position));
21698 			if (!(T11_)) goto LA12_;
21699 			xX60gensym6088_ = sym;
21700 			T13_ = (NIM_BOOL)0;
21701 			T13_ = containsOrIncl__astalgo_402((&(*m).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym6088_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6088_).Sup.itemId.item))));
21702 			T11_ = !(T13_);
21703 			LA12_: ;
21704 			if (!T11_) goto LA14_;
21705 			res = rawNewString(((NI) 80));
21706 			T16_ = NIM_NIL;
21707 			{
21708 				NIM_BOOL T19_;
21709 				T19_ = (NIM_BOOL)0;
21710 				T19_ = isReloadable__cgen_6706(m, sym);
21711 				if (!T19_) goto LA20_;
21712 				T16_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_15));
21713 			}
21714 			goto LA17_;
21715 			LA20_: ;
21716 			{
21717 				T16_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_16));
21718 			}
21719 			LA17_: ;
21720 			cgFormatValue__cgen_145((&res), T16_);
21721 			res = resizeString(res, 1);
21722 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
21723 			T23_ = NIM_NIL;
21724 			T23_ = t__cgen_79((*sym).loc);
21725 			T24_ = NIM_NIL;
21726 			T24_ = getTypeDesc__cgen_6631(m, T23_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
21727 			cgFormatValue__cgen_141((&res), T24_);
21728 			res = resizeString(res, 1);
21729 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
21730 			T25_ = NIM_NIL;
21731 			T25_ = mangleDynLibProc__cgen_3781(sym);
21732 			cgFormatValue__cgen_141((&res), T25_);
21733 			res = resizeString(res, 1);
21734 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
21735 			{
21736 				if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA28_;
21737 				res = resizeString(res, 1);
21738 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
21739 			}
21740 			LA28_: ;
21741 			T30_ = NIM_NIL;
21742 			T30_ = rope__ropes_109(res);
21743 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T30_);
21744 			{
21745 				NIM_BOOL T33_;
21746 				tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T36_;
21747 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T37_;
21748 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
21749 				T33_ = (NIM_BOOL)0;
21750 				T33_ = isReloadable__cgen_6706(m, sym);
21751 				if (!T33_) goto LA34_;
21752 				nimZeroMem((void*)T36_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
21753 				T36_[0] = mangleDynLibProc__cgen_3781(sym);
21754 				T37_ = NIM_NIL;
21755 				T37_ = t__cgen_79((*sym).loc);
21756 				T36_[1] = getTypeDesc__cgen_6631(m, T37_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
21757 				T36_[2] = getModuleDllPath__cgen_136(m, sym);
21758 				T38_ = NIM_NIL;
21759 				T38_ = percent___cgen_23730(T36_, 3);
21760 				add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T38_);
21761 			}
21762 			LA34_: ;
21763 		}
21764 		LA14_: ;
21765 	}
21766 	goto LA5_;
21767 	LA7_: ;
21768 	{
21769 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6097_;
21770 		NIM_BOOL T40_;
21771 		NIM_BOOL asPtr;
21772 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* header;
21773 		NimStringDesc* res_2;
21774 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
21775 		xX60gensym6097_ = sym;
21776 		T40_ = (NIM_BOOL)0;
21777 		T40_ = containsOrIncl__astalgo_402((&(*m).declaredProtos), (NI)((NI)((NU32)(((NI) ((*xX60gensym6097_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6097_).Sup.itemId.item))));
21778 		if (!!(T40_)) goto LA41_;
21779 		asPtr = isReloadable__cgen_6706(m, sym);
21780 		header = genProcHeader__cgen_614(m, sym, asPtr);
21781 		{
21782 			if (!!(asPtr)) goto LA45_;
21783 			{
21784 				NIM_BOOL T49_;
21785 				T49_ = (NIM_BOOL)0;
21786 				T49_ = isNoReturn__cgen_26011(m, sym);
21787 				if (!(T49_)) goto LA50_;
21788 				T49_ = ((CC__extccomp_508[((*(*(*m).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 6))&7U)))!=0);
21789 				LA50_: ;
21790 				if (!T49_) goto LA51_;
21791 				header = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_401), header);
21792 			}
21793 			LA51_: ;
21794 			{
21795 				NIM_BOOL T55_;
21796 				T55_ = (NIM_BOOL)0;
21797 				T55_ = !(((*(*sym).typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 5)));
21798 				if (!(T55_)) goto LA56_;
21799 				T55_ = requiresExternC__cgen_26233(m, sym);
21800 				LA56_: ;
21801 				if (!T55_) goto LA57_;
21802 				header = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_507), header);
21803 			}
21804 			LA57_: ;
21805 			{
21806 				NIM_BOOL T61_;
21807 				T61_ = (NIM_BOOL)0;
21808 				T61_ = (((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 11))&63U)))!=0);
21809 				if (!(T61_)) goto LA62_;
21810 				T61_ = ((CC__extccomp_508[((*(*(*m).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 7))&7U)))!=0);
21811 				LA62_: ;
21812 				if (!T61_) goto LA63_;
21813 				add__ropes_162(&header, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_508));
21814 			}
21815 			LA63_: ;
21816 			{
21817 				NIM_BOOL T67_;
21818 				T67_ = (NIM_BOOL)0;
21819 				T67_ = isNoReturn__cgen_26011(m, sym);
21820 				if (!(T67_)) goto LA68_;
21821 				T67_ = ((CC__extccomp_508[((*(*(*m).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 7))&7U)))!=0);
21822 				LA68_: ;
21823 				if (!T67_) goto LA69_;
21824 				add__ropes_162(&header, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_509));
21825 			}
21826 			LA69_: ;
21827 		}
21828 		LA45_: ;
21829 		res_2 = rawNewString(((NI) 80));
21830 		cgFormatValue__cgen_141((&res_2), header);
21831 		res_2 = resizeString(res_2, 2);
21832 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_510));
21833 		T71_ = NIM_NIL;
21834 		T71_ = rope__ropes_109(res_2);
21835 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 8))- 0], T71_);
21836 	}
21837 	goto LA5_;
21838 	LA41_: ;
21839 	LA5_: ;
21840 	}BeforeRet_: ;
21841 }
N_NIMCALL(void,putLocIntoDest__cgen_11467)21842 N_LIB_PRIVATE N_NIMCALL(void, putLocIntoDest__cgen_11467)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA s) {
21843 	{
21844 		if (!!(((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0)))) goto LA3_;
21845 		{
21846 			if (!(((*d).flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 2))&15U)))!=0)) goto LA7_;
21847 			genAssignment__cgen_10369(p, (*d), s, 0);
21848 		}
21849 		goto LA5_;
21850 		LA7_: ;
21851 		{
21852 			genAssignment__cgen_10369(p, (*d), s, 1);
21853 		}
21854 		LA5_: ;
21855 	}
21856 	goto LA1_;
21857 	LA3_: ;
21858 	{
21859 		genericAssign((void*)(&(*d)), (void*)(&s), (&NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_));
21860 	}
21861 	LA1_: ;
21862 }
N_NIMCALL(NIM_BOOL,isSimpleConst__cgen_89)21863 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isSimpleConst__cgen_89)(tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
21864 	NIM_BOOL result;
21865 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
21866 	NIM_BOOL T1_;
21867 	NIM_BOOL T3_;
21868 	result = (NIM_BOOL)0;
21869 	t = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_357);
21870 	T1_ = (NIM_BOOL)0;
21871 	T1_ = !(((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24)));
21872 	if (!(T1_)) goto LA2_;
21873 	T3_ = (NIM_BOOL)0;
21874 	T3_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25));
21875 	if (!(T3_)) goto LA4_;
21876 	T3_ = ((*t).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9));
21877 	LA4_: ;
21878 	T1_ = !(T3_);
21879 	LA2_: ;
21880 	result = T1_;
21881 	return result;
21882 }
N_NIMCALL(void,putIntoDest__cgen_18656)21883 N_LIB_PRIVATE N_NIMCALL(void, putIntoDest__cgen_18656)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r, tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw s) {
21884 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
21885 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
21886 	{
21887 		if (!!(((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0)))) goto LA3_;
21888 		initLoc__cgen_60((&a), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), n, s);
21889 		a.r = r;
21890 		{
21891 			if (!(((*d).flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 2))&15U)))!=0)) goto LA7_;
21892 			genAssignment__cgen_10369(p, (*d), a, 0);
21893 		}
21894 		goto LA5_;
21895 		LA7_: ;
21896 		{
21897 			genAssignment__cgen_10369(p, (*d), a, 1);
21898 		}
21899 		LA5_: ;
21900 	}
21901 	goto LA1_;
21902 	LA3_: ;
21903 	{
21904 		(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6);
21905 		unsureAsgnRef((void**) (&(*d).lode), n);
21906 		unsureAsgnRef((void**) (&(*d).r), r);
21907 	}
21908 	LA1_: ;
21909 }
N_NIMCALL(NIM_BOOL,genConstSetup__cgen_24238)21910 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, genConstSetup__cgen_24238)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
21911 	NIM_BOOL result;
21912 	tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m;
21913 	result = (NIM_BOOL)0;
21914 	m = (*p).module;
21915 	useHeader__cgen_105(m, sym);
21916 	{
21917 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
21918 		if (!((*sym).loc.k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA3_;
21919 		T5_ = NIM_NIL;
21920 		T5_ = mangleName__cgen_628((*p).module, sym);
21921 		fillLoc__cgen_65((&(*sym).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 8), (*sym).ast, T5_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1));
21922 	}
21923 	LA3_: ;
21924 	{
21925 		NIM_BOOL T8_;
21926 		T8_ = (NIM_BOOL)0;
21927 		T8_ = hcrOn__cgen_42(m);
21928 		if (!T8_) goto LA9_;
21929 		(*sym).loc.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15);
21930 	}
21931 	LA9_: ;
21932 	result = !((((*sym).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 3))&15U)))!=0));
21933 	return result;
21934 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_24274)21935 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24274)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
21936 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
21937 	result = NIM_NIL;
21938 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_515), args, argsLen_0);
21939 	return result;
21940 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_24284)21941 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24284)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
21942 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
21943 	result = NIM_NIL;
21944 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_516), args, argsLen_0);
21945 	return result;
21946 }
N_NIMCALL(void,genConstHeader__cgen_24255)21947 N_LIB_PRIVATE N_NIMCALL(void, genConstHeader__cgen_24255)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* q, tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
21948 {	{
21949 		if (!((*sym).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA3_;
21950 		{
21951 			NIM_BOOL T7_;
21952 			T7_ = (NIM_BOOL)0;
21953 			T7_ = genConstSetup__cgen_24238(p, sym);
21954 			if (!!(T7_)) goto LA8_;
21955 			goto BeforeRet_;
21956 		}
21957 		LA8_: ;
21958 	}
21959 	LA3_: ;
21960 	{
21961 		NIM_BOOL T12_;
21962 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T15_;
21963 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T16_;
21964 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
21965 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T18_;
21966 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T19_;
21967 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T20_;
21968 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
21969 		T12_ = (NIM_BOOL)0;
21970 		T12_ = hcrOn__cgen_42(m);
21971 		if (!T12_) goto LA13_;
21972 		nimZeroMem((void*)T15_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
21973 		T16_ = NIM_NIL;
21974 		T16_ = t__cgen_79((*sym).loc);
21975 		T15_[0] = getTypeDesc__cgen_6631(m, T16_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
21976 		T15_[1] = (*sym).loc.r;
21977 		T17_ = NIM_NIL;
21978 		T17_ = percent___cgen_24274(T15_, 2);
21979 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T17_);
21980 		T18_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
21981 		T18_ = procSec__cgendata_274((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
21982 		nimZeroMem((void*)T19_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
21983 		T19_[0] = (*sym).loc.r;
21984 		T20_ = NIM_NIL;
21985 		T20_ = t__cgen_79((*sym).loc);
21986 		T19_[1] = getTypeDesc__cgen_6631(m, T20_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
21987 		T19_[2] = getModuleDllPath__cgen_136(q, sym);
21988 		T21_ = NIM_NIL;
21989 		T21_ = percent___cgen_24279(T19_, 3);
21990 		add__ropes_159(T18_, T21_);
21991 	}
21992 	goto LA10_;
21993 	LA13_: ;
21994 	{
21995 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* headerDecl;
21996 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T23_;
21997 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T24_;
21998 		nimZeroMem((void*)T23_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
21999 		T24_ = NIM_NIL;
22000 		T24_ = t__cgen_79((*sym).loc);
22001 		T23_[0] = getTypeDesc__cgen_6631(m, T24_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
22002 		T23_[1] = (*sym).loc.r;
22003 		headerDecl = percent___cgen_24284(T23_, 2);
22004 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], headerDecl);
22005 		{
22006 			NIM_BOOL T27_;
22007 			T27_ = (NIM_BOOL)0;
22008 			T27_ = (((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 7))&63U)))!=0);
22009 			if (!(T27_)) goto LA28_;
22010 			T27_ = !(((*(*(*p).module).g).generatedHeader == ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) NIM_NIL)));
22011 			LA28_: ;
22012 			if (!T27_) goto LA29_;
22013 			add__ropes_159(&(*(*(*(*p).module).g).generatedHeader).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], headerDecl);
22014 		}
22015 		LA29_: ;
22016 	}
22017 	LA10_: ;
22018 	}BeforeRet_: ;
22019 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_24303)22020 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24303)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
22021 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22022 	result = NIM_NIL;
22023 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_518), args, argsLen_0);
22024 	return result;
22025 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_24312)22026 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24312)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
22027 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22028 	result = NIM_NIL;
22029 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_519), args, argsLen_0);
22030 	return result;
22031 }
N_NIMCALL(void,genConstDefinition__cgen_24298)22032 N_LIB_PRIVATE N_NIMCALL(void, genConstDefinition__cgen_24298)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* q, tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
22033 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* actualConstName;
22034 	tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T7_;
22035 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
22036 	{
22037 		NIM_BOOL T3_;
22038 		T3_ = (NIM_BOOL)0;
22039 		T3_ = hcrOn__cgen_42(q);
22040 		if (!T3_) goto LA4_;
22041 		actualConstName = amp___ropes_140((*sym).loc.r, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_517));
22042 	}
22043 	goto LA1_;
22044 	LA4_: ;
22045 	{
22046 		actualConstName = (*sym).loc.r;
22047 	}
22048 	LA1_: ;
22049 	nimZeroMem((void*)T7_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
22050 	T7_[0] = getTypeDesc__cgen_6631(q, (*sym).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
22051 	T7_[1] = actualConstName;
22052 	T7_[2] = genBracedInit__cgen_13772((*q).initProc, (*sym).ast, NIM_TRUE, (*sym).typ);
22053 	T8_ = NIM_NIL;
22054 	T8_ = percent___cgen_24303(T7_, 3);
22055 	add__ropes_159(&(*q).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T8_);
22056 	{
22057 		NIM_BOOL T11_;
22058 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T14_;
22059 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T15_;
22060 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
22061 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T17_;
22062 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T18_;
22063 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
22064 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T20_;
22065 		NimStringDesc* res;
22066 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
22067 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
22068 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
22069 		T11_ = (NIM_BOOL)0;
22070 		T11_ = hcrOn__cgen_42(q);
22071 		if (!T11_) goto LA12_;
22072 		nimZeroMem((void*)T14_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
22073 		T15_ = NIM_NIL;
22074 		T15_ = t__cgen_79((*sym).loc);
22075 		T14_[0] = getTypeDesc__cgen_6631(q, T15_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
22076 		T14_[1] = (*sym).loc.r;
22077 		T16_ = NIM_NIL;
22078 		T16_ = percent___cgen_24274(T14_, 2);
22079 		add__ropes_159(&(*q).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T16_);
22080 		T17_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22081 		T17_ = procSec__cgendata_274((*q).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
22082 		nimZeroMem((void*)T18_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
22083 		T18_[0] = getModuleDllPath__cgen_136(q, sym);
22084 		T18_[1] = (*sym).loc.r;
22085 		T18_[2] = rdLoc__cgen_425((*sym).loc);
22086 		T19_ = NIM_NIL;
22087 		T19_ = percent___cgen_24312(T18_, 3);
22088 		add__ropes_159(T17_, T19_);
22089 		T20_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22090 		T20_ = procSec__cgendata_274((*q).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
22091 		res = rawNewString(((NI) 80));
22092 		res = resizeString(res, 1);
22093 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
22094 		T21_ = NIM_NIL;
22095 		T21_ = cgsym__cgen_120(q, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_339));
22096 		cgFormatValue__cgen_141((&res), T21_);
22097 		res = resizeString(res, 8);
22098 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
22099 		cgFormatValue__cgen_141((&res), (*sym).loc.r);
22100 		res = resizeString(res, 20);
22101 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_340));
22102 		cgFormatValue__cgen_141((&res), actualConstName);
22103 		res = resizeString(res, 9);
22104 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
22105 		T22_ = NIM_NIL;
22106 		T22_ = rdLoc__cgen_425((*sym).loc);
22107 		cgFormatValue__cgen_141((&res), T22_);
22108 		res = resizeString(res, 3);
22109 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
22110 		{
22111 			if (!!((((*(*(*q).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA25_;
22112 			res = resizeString(res, 1);
22113 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22114 		}
22115 		LA25_: ;
22116 		T27_ = NIM_NIL;
22117 		T27_ = rope__ropes_109(res);
22118 		add__ropes_159(T20_, T27_);
22119 	}
22120 	LA12_: ;
22121 }
N_NIMCALL(void,requestConstImpl__cgen_11454)22122 N_LIB_PRIVATE N_NIMCALL(void, requestConstImpl__cgen_11454)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
22123 	{
22124 		NIM_BOOL T3_;
22125 		tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m;
22126 		tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* q;
22127 		T3_ = (NIM_BOOL)0;
22128 		T3_ = genConstSetup__cgen_24238(p, sym);
22129 		if (!T3_) goto LA4_;
22130 		m = (*p).module;
22131 		q = findPendingModule__cgen_55(m, sym);
22132 		{
22133 			NIM_BOOL T8_;
22134 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6137_;
22135 			NIM_BOOL T10_;
22136 			T8_ = (NIM_BOOL)0;
22137 			T8_ = !((q == ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) NIM_NIL)));
22138 			if (!(T8_)) goto LA9_;
22139 			xX60gensym6137_ = sym;
22140 			T10_ = (NIM_BOOL)0;
22141 			T10_ = containsOrIncl__astalgo_402((&(*q).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym6137_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6137_).Sup.itemId.item))));
22142 			T8_ = !(T10_);
22143 			LA9_: ;
22144 			if (!T8_) goto LA11_;
22145 			genConstDefinition__cgen_24298(q, p, sym);
22146 		}
22147 		LA11_: ;
22148 		{
22149 			NIM_BOOL T15_;
22150 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6141_;
22151 			NIM_BOOL T17_;
22152 			T15_ = (NIM_BOOL)0;
22153 			T15_ = !((q == m));
22154 			if (!(T15_)) goto LA16_;
22155 			xX60gensym6141_ = sym;
22156 			T17_ = (NIM_BOOL)0;
22157 			T17_ = containsOrIncl__astalgo_402((&(*m).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym6141_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6141_).Sup.itemId.item))));
22158 			T15_ = !(T17_);
22159 			LA16_: ;
22160 			if (!T15_) goto LA18_;
22161 			genConstHeader__cgen_24255(m, q, p, sym);
22162 		}
22163 		LA18_: ;
22164 	}
22165 	LA4_: ;
22166 }
N_NIMCALL(void,genComplexConst__cgen_23978)22167 N_LIB_PRIVATE N_NIMCALL(void, genComplexConst__cgen_23978)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
22168 	requestConstImpl__cgen_11454(p, sym);
22169 	putLocIntoDest__cgen_11467(p, d, (*sym).loc);
22170 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13767)22171 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13767)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
22172 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22173 	result = NIM_NIL;
22174 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_523), args, argsLen_0);
22175 	return result;
22176 }
N_NIMCALL(void,genGotoVar__cgen_13760)22177 N_LIB_PRIVATE N_NIMCALL(void, genGotoVar__cgen_13760)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value) {
22178 	{
22179 		if (!!(((*value).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*value).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15)))) goto LA3_;
22180 		liMessage__msgs_1118((*(*(*p).module).g).config, (*value).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_520), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_521, NIM_FALSE);
22181 	}
22182 	goto LA1_;
22183 	LA3_: ;
22184 	{
22185 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T6_;
22186 		tyArray__JiWwrsTRC6xqNlGcBthSVA T7_;
22187 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
22188 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
22189 		T6_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22190 		T6_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
22191 		nimZeroMem((void*)T7_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
22192 		T7_[0] = rope__ropes_115((*value)._kind_1.intVal);
22193 		T8_ = NIM_NIL;
22194 		T8_ = percent___cgen_13767(T7_, 1);
22195 		T9_ = NIM_NIL;
22196 		T9_ = indentLine__cgen_280(p, T8_);
22197 		add__ropes_159(T6_, T9_);
22198 	}
22199 	LA1_: ;
22200 }
N_NIMCALL(NIM_BOOL,hcrOn__cgen_45)22201 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hcrOn__cgen_45)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
22202 	NIM_BOOL result;
22203 	result = (NIM_BOOL)0;
22204 	result = hcrOn__options_569((*(*(*p).module).g).config);
22205 	return result;
22206 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,potentialValueInit__cgen_13777)22207 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, potentialValueInit__cgen_13777)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value) {
22208 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22209 	result = NIM_NIL;
22210 	{
22211 		NIM_BOOL T3_;
22212 		NIM_BOOL T4_;
22213 		T3_ = (NIM_BOOL)0;
22214 		T4_ = (NIM_BOOL)0;
22215 		T4_ = (((*v).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 4))&15U)))!=0);
22216 		if (T4_) goto LA5_;
22217 		T4_ = (((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 26))&63U)))!=0);
22218 		LA5_: ;
22219 		T3_ = T4_;
22220 		if (T3_) goto LA6_;
22221 		T3_ = hcrOn__cgen_45(p);
22222 		LA6_: ;
22223 		if (!T3_) goto LA7_;
22224 		result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
22225 	}
22226 	goto LA1_;
22227 	LA7_: ;
22228 	{
22229 		NIM_BOOL T10_;
22230 		NIM_BOOL T11_;
22231 		NIM_BOOL T12_;
22232 		NIM_BOOL T13_;
22233 		NIM_BOOL T16_;
22234 		NIM_BOOL T20_;
22235 		T10_ = (NIM_BOOL)0;
22236 		T11_ = (NIM_BOOL)0;
22237 		T12_ = (NIM_BOOL)0;
22238 		T13_ = (NIM_BOOL)0;
22239 		T13_ = (((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 3))&63U)))!=0);
22240 		if (!(T13_)) goto LA14_;
22241 		T13_ = !((value == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)));
22242 		LA14_: ;
22243 		T12_ = T13_;
22244 		if (!(T12_)) goto LA15_;
22245 		T16_ = (NIM_BOOL)0;
22246 		T16_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
22247 		if (T16_) goto LA17_;
22248 		T16_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
22249 		LA17_: ;
22250 		T12_ = isDeepConstExpr__trees_171(value, T16_);
22251 		LA15_: ;
22252 		T11_ = T12_;
22253 		if (!(T11_)) goto LA18_;
22254 		T11_ = ((*p).withinLoop == ((NI) 0));
22255 		LA18_: ;
22256 		T10_ = T11_;
22257 		if (!(T10_)) goto LA19_;
22258 		T20_ = (NIM_BOOL)0;
22259 		T20_ = containsGarbageCollectedRef__types_612((*v).typ);
22260 		T10_ = !(T20_);
22261 		LA19_: ;
22262 		if (!T10_) goto LA21_;
22263 		result = genBracedInit__cgen_13772(p, value, NIM_FALSE, (*v).typ);
22264 	}
22265 	goto LA1_;
22266 	LA21_: ;
22267 	{
22268 		result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
22269 	}
22270 	LA1_: ;
22271 	return result;
22272 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25622)22273 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25622)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
22274 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22275 	result = NIM_NIL;
22276 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_525), args, argsLen_0);
22277 	return result;
22278 }
N_NIMCALL(void,varInDynamicLib__cgen_11248)22279 N_LIB_PRIVATE N_NIMCALL(void, varInDynamicLib__cgen_11248)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym) {
22280 	tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* lib;
22281 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* extname;
22282 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
22283 	NimStringDesc* res;
22284 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
22285 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
22286 	NimStringDesc* T3_;
22287 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
22288 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
22289 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T10_;
22290 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T11_;
22291 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
22292 	lib = (*sym).annex;
22293 	extname = (*sym).loc.r;
22294 	loadDynamicLib__cgen_25391(m, lib);
22295 	(*sym).loc.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15);
22296 	tmp = mangleDynLibProc__cgen_3781(sym);
22297 	asgnRef((void**) (&(*sym).loc.r), tmp);
22298 	(*m).labels += ((NI) 2);
22299 	res = rawNewString(((NI) 80));
22300 	cgFormatValue__cgen_141((&res), tmp);
22301 	res = resizeString(res, 4);
22302 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_105));
22303 	T1_ = NIM_NIL;
22304 	T1_ = getTypeDesc__cgen_6631(m, (*sym).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
22305 	cgFormatValue__cgen_141((&res), T1_);
22306 	res = resizeString(res, 3);
22307 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_524));
22308 	T2_ = NIM_NIL;
22309 	T2_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_435));
22310 	cgFormatValue__cgen_141((&res), T2_);
22311 	res = resizeString(res, 1);
22312 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
22313 	cgFormatValue__cgen_141((&res), (*lib).name);
22314 	res = resizeString(res, 2);
22315 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
22316 	T3_ = NIM_NIL;
22317 	T3_ = dollar___ropes_250(extname);
22318 	T4_ = NIM_NIL;
22319 	T4_ = makeCString__msgs_50(T3_);
22320 	cgFormatValue__cgen_141((&res), T4_);
22321 	res = resizeString(res, 2);
22322 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
22323 	{
22324 		if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA7_;
22325 		res = resizeString(res, 1);
22326 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22327 	}
22328 	LA7_: ;
22329 	T9_ = NIM_NIL;
22330 	T9_ = rope__ropes_109(res);
22331 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T9_);
22332 	nimZeroMem((void*)T10_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
22333 	T10_[0] = (*sym).loc.r;
22334 	T11_ = NIM_NIL;
22335 	T11_ = t__cgen_79((*sym).loc);
22336 	T10_[1] = getTypeDesc__cgen_6631(m, T11_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
22337 	T12_ = NIM_NIL;
22338 	T12_ = percent___cgen_25622(T10_, 2);
22339 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T12_);
22340 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11400)22341 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11400)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
22342 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22343 	result = NIM_NIL;
22344 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_531), args, argsLen_0);
22345 	return result;
22346 }
N_NIMCALL(void,assignGlobalVar__cgen_11271)22347 N_LIB_PRIVATE N_NIMCALL(void, assignGlobalVar__cgen_11271)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* value) {
22348 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s;
22349 {	s = (*n)._kind_4.sym;
22350 	{
22351 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
22352 		if (!((*s).loc.k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA3_;
22353 		T5_ = NIM_NIL;
22354 		T5_ = mangleName__cgen_628((*p).module, s);
22355 		fillLoc__cgen_65((&(*s).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 3), n, T5_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
22356 		{
22357 			NIM_BOOL T8_;
22358 			T8_ = (NIM_BOOL)0;
22359 			T8_ = treatGlobalDifferentlyForHCR__cgen_11251((*p).module, s);
22360 			if (!T8_) goto LA9_;
22361 			(*s).loc.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15);
22362 		}
22363 		LA9_: ;
22364 	}
22365 	LA3_: ;
22366 	{
22367 		tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* q;
22368 		if (!(((*s).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 4))&15U)))!=0)) goto LA13_;
22369 		q = findPendingModule__cgen_55((*p).module, s);
22370 		{
22371 			NIM_BOOL T17_;
22372 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym1131_;
22373 			NIM_BOOL T19_;
22374 			T17_ = (NIM_BOOL)0;
22375 			T17_ = !((q == ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) NIM_NIL)));
22376 			if (!(T17_)) goto LA18_;
22377 			xX60gensym1131_ = s;
22378 			T19_ = (NIM_BOOL)0;
22379 			T19_ = containsOrIncl__astalgo_402((&(*q).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym1131_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym1131_).Sup.itemId.item))));
22380 			T17_ = !(T19_);
22381 			LA18_: ;
22382 			if (!T17_) goto LA20_;
22383 			varInDynamicLib__cgen_11248(q, s);
22384 		}
22385 		goto LA15_;
22386 		LA20_: ;
22387 		{
22388 			asgnRef((void**) (&(*s).loc.r), mangleDynLibProc__cgen_3781(s));
22389 		}
22390 		LA15_: ;
22391 		{
22392 			if (!!((value == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA25_;
22393 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_526), TM__MQdRN7fpbG7rPm4JpVVAhA_527);
22394 		}
22395 		LA25_: ;
22396 		goto BeforeRet_;
22397 	}
22398 	LA13_: ;
22399 	useHeader__cgen_105((*p).module, s);
22400 	{
22401 		if (!(((*s).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 3))&15U)))!=0)) goto LA29_;
22402 		goto BeforeRet_;
22403 	}
22404 	LA29_: ;
22405 	{
22406 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym1137_;
22407 		NIM_BOOL T33_;
22408 		xX60gensym1137_ = s;
22409 		T33_ = (NIM_BOOL)0;
22410 		T33_ = containsOrIncl__astalgo_402((&(*(*p).module).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym1137_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym1137_).Sup.itemId.item))));
22411 		if (!!(T33_)) goto LA34_;
22412 		{
22413 			if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 26))&63U)))!=0)) goto LA38_;
22414 			declareThreadVar__cgen_11150((*p).module, s, (((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0));
22415 			{
22416 				if (!!((value == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA42_;
22417 				internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_528), TM__MQdRN7fpbG7rPm4JpVVAhA_529);
22418 			}
22419 			LA42_: ;
22420 		}
22421 		goto LA36_;
22422 		LA38_: ;
22423 		{
22424 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* decl;
22425 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* td;
22426 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T45_;
22427 			decl = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
22428 			T45_ = NIM_NIL;
22429 			T45_ = t__cgen_79((*s).loc);
22430 			td = getTypeDesc__cgen_6631((*p).module, T45_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
22431 			{
22432 				if (!((*s).constraint == 0)) goto LA48_;
22433 				{
22434 					NIM_BOOL T52_;
22435 					tyArray__JiWwrsTRC6xqNlGcBthSVA T56_;
22436 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
22437 					T52_ = (NIM_BOOL)0;
22438 					T52_ = ((2622208 &((NU32)1<<((NU)((*s).kind)&31U)))!=0);
22439 					if (!(T52_)) goto LA53_;
22440 					T52_ = (((NI) 0) < (*s)._kind_2.alignment);
22441 					LA53_: ;
22442 					if (!T52_) goto LA54_;
22443 					nimZeroMem((void*)T56_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
22444 					T56_[0] = rope__ropes_115(((NI64) ((*s)._kind_2.alignment)));
22445 					T57_ = NIM_NIL;
22446 					T57_ = percent___cgen_3729(T56_, 1);
22447 					add__ropes_159(&decl, T57_);
22448 				}
22449 				LA54_: ;
22450 				{
22451 					NIM_BOOL T60_;
22452 					T60_ = (NIM_BOOL)0;
22453 					T60_ = hcrOn__cgen_45(p);
22454 					if (!T60_) goto LA61_;
22455 					add__ropes_162(&decl, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_29));
22456 				}
22457 				goto LA58_;
22458 				LA61_: ;
22459 				{
22460 					if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 6))&63U)))!=0)) goto LA64_;
22461 					add__ropes_162(&decl, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_439));
22462 				}
22463 				goto LA58_;
22464 				LA64_: ;
22465 				{
22466 					if (!(((*s).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 5))&15U)))!=0)) goto LA67_;
22467 					add__ropes_162(&decl, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_440));
22468 				}
22469 				goto LA58_;
22470 				LA67_: ;
22471 				{
22472 					add__ropes_162(&decl, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_30));
22473 				}
22474 				LA58_: ;
22475 				{
22476 					NIM_BOOL T72_;
22477 					T72_ = (NIM_BOOL)0;
22478 					T72_ = ((*s).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 9));
22479 					if (!(T72_)) goto LA73_;
22480 					T72_ = !((value == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)));
22481 					LA73_: ;
22482 					if (!T72_) goto LA74_;
22483 					add__ropes_162(&decl, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_530));
22484 				}
22485 				LA74_: ;
22486 				add__ropes_159(&decl, td);
22487 				{
22488 					NIM_BOOL T78_;
22489 					T78_ = (NIM_BOOL)0;
22490 					T78_ = hcrOn__cgen_45(p);
22491 					if (!T78_) goto LA79_;
22492 					add__ropes_162(&decl, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59));
22493 				}
22494 				LA79_: ;
22495 				{
22496 					if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 10))&63U)))!=0)) goto LA83_;
22497 					add__ropes_162(&decl, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_89));
22498 				}
22499 				LA83_: ;
22500 				{
22501 					if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 9))&63U)))!=0)) goto LA87_;
22502 					add__ropes_162(&decl, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_90));
22503 				}
22504 				LA87_: ;
22505 				{
22506 					if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 46))&63U)))!=0)) goto LA91_;
22507 					add__ropes_162(&decl, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_91));
22508 				}
22509 				LA91_: ;
22510 				{
22511 					tyArray__mrugoXXRZUEeG9bEXo9auBKw T97_;
22512 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T98_;
22513 					if (!!((value == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA95_;
22514 					nimZeroMem((void*)T97_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
22515 					T97_[0] = (*s).loc.r;
22516 					T97_[1] = value;
22517 					T98_ = NIM_NIL;
22518 					T98_ = percent___cgen_11400(T97_, 2);
22519 					add__ropes_159(&decl, T98_);
22520 				}
22521 				goto LA93_;
22522 				LA95_: ;
22523 				{
22524 					tyArray__JiWwrsTRC6xqNlGcBthSVA T100_;
22525 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T101_;
22526 					nimZeroMem((void*)T100_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
22527 					T100_[0] = (*s).loc.r;
22528 					T101_ = NIM_NIL;
22529 					T101_ = percent___cgen_11200(T100_, 1);
22530 					add__ropes_159(&decl, T101_);
22531 				}
22532 				LA93_: ;
22533 			}
22534 			goto LA46_;
22535 			LA48_: ;
22536 			{
22537 				{
22538 					NimStringDesc* T107_;
22539 					tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T108_;
22540 					if (!!((value == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA105_;
22541 					T107_ = NIM_NIL;
22542 					T107_ = rawNewString(((*(*s).constraint)._kind_3.strVal ? (*(*s).constraint)._kind_3.strVal->Sup.len : 0) + 8);
22543 appendString(T107_, (*(*s).constraint)._kind_3.strVal);
22544 appendString(T107_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_532));
22545 					nimZeroMem((void*)T108_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
22546 					T108_[0] = td;
22547 					T108_[1] = (*s).loc.r;
22548 					T108_[2] = value;
22549 					decl = runtimeFormat__ropes_271(T107_, T108_, 3);
22550 				}
22551 				goto LA103_;
22552 				LA105_: ;
22553 				{
22554 					NimStringDesc* T110_;
22555 					tyArray__mrugoXXRZUEeG9bEXo9auBKw T111_;
22556 					T110_ = NIM_NIL;
22557 					T110_ = rawNewString(((*(*s).constraint)._kind_3.strVal ? (*(*s).constraint)._kind_3.strVal->Sup.len : 0) + 3);
22558 appendString(T110_, (*(*s).constraint)._kind_3.strVal);
22559 appendString(T110_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_533));
22560 					nimZeroMem((void*)T111_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
22561 					T111_[0] = td;
22562 					T111_[1] = (*s).loc.r;
22563 					decl = runtimeFormat__ropes_271(T110_, T111_, 2);
22564 				}
22565 				LA103_: ;
22566 			}
22567 			LA46_: ;
22568 			add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], decl);
22569 		}
22570 		LA36_: ;
22571 	}
22572 	LA34_: ;
22573 	{
22574 		NIM_BOOL T114_;
22575 		T114_ = (NIM_BOOL)0;
22576 		T114_ = (((NI) 0) < (*p).withinLoop);
22577 		if (!(T114_)) goto LA115_;
22578 		T114_ = (value == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
22579 		LA115_: ;
22580 		if (!T114_) goto LA116_;
22581 		resetLoc__cgen_10832(p, (&(*s).loc));
22582 	}
22583 	LA116_: ;
22584 	}BeforeRet_: ;
22585 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11132)22586 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11132)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
22587 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22588 	result = NIM_NIL;
22589 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_534), args, argsLen_0);
22590 	return result;
22591 }
N_NIMCALL(void,accessThreadLocalVar__cgen_406)22592 N_LIB_PRIVATE N_NIMCALL(void, accessThreadLocalVar__cgen_406)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
22593 	{
22594 		NIM_BOOL T3_;
22595 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T7_;
22596 		tyArray__qTjAvTvKF9anytN1At69aJMQ T8_;
22597 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
22598 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
22599 		NimStringDesc* res;
22600 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
22601 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
22602 		T3_ = (NIM_BOOL)0;
22603 		T3_ = emulatedThreadVars__cgen_409((*(*(*p).module).g).config);
22604 		if (!(T3_)) goto LA4_;
22605 		T3_ = !((((*p).flags &((NU8)1<<((NU)(((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 1))&7U)))!=0));
22606 		LA4_: ;
22607 		if (!T3_) goto LA5_;
22608 		(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 1)) & 7);
22609 		(*(*p).module).flags |= ((NU8)1)<<((((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 1)) & 7);
22610 		T7_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22611 		T7_ = procSec__cgendata_274(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
22612 		nimZeroMem((void*)T8_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
22613 		T9_ = NIM_NIL;
22614 		T9_ = percent___cgen_11132(T8_, 0);
22615 		add__ropes_159(T7_, T9_);
22616 		T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22617 		T10_ = procSec__cgendata_274(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
22618 		res = rawNewString(((NI) 80));
22619 		res = resizeString(res, 27);
22620 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_535));
22621 		T11_ = NIM_NIL;
22622 		T11_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_536));
22623 		cgFormatValue__cgen_141((&res), T11_);
22624 		res = resizeString(res, 3);
22625 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
22626 		{
22627 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA14_;
22628 			res = resizeString(res, 1);
22629 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22630 		}
22631 		LA14_: ;
22632 		T16_ = NIM_NIL;
22633 		T16_ = rope__ropes_109(res);
22634 		add__ropes_159(T10_, T16_);
22635 	}
22636 	LA5_: ;
22637 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7758)22638 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7758)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
22639 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22640 	result = NIM_NIL;
22641 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_538), args, argsLen_0);
22642 	return result;
22643 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7764)22644 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7764)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
22645 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22646 	result = NIM_NIL;
22647 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_539), args, argsLen_0);
22648 	return result;
22649 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_7770)22650 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_7770)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
22651 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22652 	result = NIM_NIL;
22653 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_540), args, argsLen_0);
22654 	return result;
22655 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genTraverseProcForGlobal__cgen_7746)22656 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTraverseProcForGlobal__cgen_7746)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
22657 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22658 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
22659 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
22660 	tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg c;
22661 	tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p;
22662 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* sLoc;
22663 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* header;
22664 	tyArray__JiWwrsTRC6xqNlGcBthSVA T9_;
22665 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T10_;
22666 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* generatedProc;
22667 	tyArray__f7nG5LD47BH5K9c6mASit3g T11_;
22668 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T12_;
22669 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T13_;
22670 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T14_;
22671 	tyArray__JiWwrsTRC6xqNlGcBthSVA T15_;
22672 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
22673 	result = NIM_NIL;
22674 	T1_ = NIM_NIL;
22675 	T1_ = t__cgen_79((*s).loc);
22676 	T2_ = NIM_NIL;
22677 	T2_ = genTypeInfoV1__cgen_6768(m, T1_, info);
22678 	(void)(T2_);
22679 	nimZeroMem((void*)(&c), sizeof(tyObject_TTraversalClosure__xQv4a9atAYFpL11GCS9cY9bCg));
22680 	p = newProc__cgendata_278(((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL), m);
22681 	sLoc = rdLoc__cgen_425((*s).loc);
22682 	result = getTempName__cgen_418(m);
22683 	{
22684 		NIM_BOOL T5_;
22685 		T5_ = (NIM_BOOL)0;
22686 		T5_ = (((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 26))&63U)))!=0);
22687 		if (!(T5_)) goto LA6_;
22688 		T5_ = emulatedThreadVars__cgen_409((*(*m).g).config);
22689 		LA6_: ;
22690 		if (!T5_) goto LA7_;
22691 		accessThreadLocalVar__cgen_406(p, s);
22692 		sLoc = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_537), sLoc);
22693 	}
22694 	LA7_: ;
22695 	c.visitorFrmt = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_153));
22696 	c.p = p;
22697 	nimZeroMem((void*)T9_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
22698 	T9_[0] = result;
22699 	header = percent___cgen_7758(T9_, 1);
22700 	T10_ = NIM_NIL;
22701 	T10_ = t__cgen_79((*s).loc);
22702 	genTraverseProc__cgen_7336(c, sLoc, T10_);
22703 	nimZeroMem((void*)T11_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
22704 	T11_[0] = header;
22705 	T12_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22706 	T12_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
22707 	T11_[1] = (*T12_);
22708 	T13_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22709 	T13_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
22710 	T11_[2] = (*T13_);
22711 	T14_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22712 	T14_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
22713 	T11_[3] = (*T14_);
22714 	generatedProc = percent___cgen_7764(T11_, 4);
22715 	nimZeroMem((void*)T15_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
22716 	T15_[0] = header;
22717 	T16_ = NIM_NIL;
22718 	T16_ = percent___cgen_7770(T15_, 1);
22719 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 8))- 0], T16_);
22720 	add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], generatedProc);
22721 	return result;
22722 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getTraverseProc__cgen_13084)22723 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getTraverseProc__cgen_13084)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v) {
22724 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22725 	result = NIM_NIL;
22726 	{
22727 		NIM_BOOL T3_;
22728 		NIM_BOOL T4_;
22729 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T7_;
22730 		T3_ = (NIM_BOOL)0;
22731 		T4_ = (NIM_BOOL)0;
22732 		T4_ = ((960 &((NU16)1<<((NU)((*(*(*(*p).module).g).config).selectedGC)&15U)))!=0);
22733 		if (!(T4_)) goto LA5_;
22734 		T4_ = !((((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 42))&63U)))!=0));
22735 		LA5_: ;
22736 		T3_ = T4_;
22737 		if (!(T3_)) goto LA6_;
22738 		T7_ = NIM_NIL;
22739 		T7_ = t__cgen_79((*v).loc);
22740 		T3_ = containsGarbageCollectedRef__types_612(T7_);
22741 		LA6_: ;
22742 		if (!T3_) goto LA8_;
22743 		result = genTraverseProcForGlobal__cgen_7746((*p).module, v, (*v).info);
22744 	}
22745 	LA8_: ;
22746 	return result;
22747 }
N_NIMCALL(void,registerTraverseProc__cgen_13096)22748 N_LIB_PRIVATE N_NIMCALL(void, registerTraverseProc__cgen_13096)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* traverseProc) {
22749 	{
22750 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T5_;
22751 		NimStringDesc* res;
22752 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
22753 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
22754 		if (!(((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 26))&63U)))!=0)) goto LA3_;
22755 		T5_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22756 		T5_ = procSec__cgendata_274((*(*p).module).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
22757 		res = rawNewString(((NI) 80));
22758 		{
22759 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA8_;
22760 			res = resizeString(res, 1);
22761 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22762 		}
22763 		LA8_: ;
22764 		res = resizeString(res, 1);
22765 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
22766 		T10_ = NIM_NIL;
22767 		T10_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_541));
22768 		cgFormatValue__cgen_141((&res), T10_);
22769 		res = resizeString(res, 1);
22770 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
22771 		cgFormatValue__cgen_141((&res), traverseProc);
22772 		res = resizeString(res, 2);
22773 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
22774 		{
22775 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA13_;
22776 			res = resizeString(res, 1);
22777 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22778 		}
22779 		LA13_: ;
22780 		{
22781 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA17_;
22782 			res = resizeString(res, 1);
22783 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22784 		}
22785 		LA17_: ;
22786 		T19_ = NIM_NIL;
22787 		T19_ = rope__ropes_109(res);
22788 		add__ropes_159(T5_, T19_);
22789 	}
22790 	goto LA1_;
22791 	LA3_: ;
22792 	{
22793 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T21_;
22794 		NimStringDesc* res_2;
22795 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
22796 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
22797 		T21_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22798 		T21_ = procSec__cgendata_274((*(*p).module).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
22799 		res_2 = rawNewString(((NI) 80));
22800 		{
22801 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA24_;
22802 			res_2 = resizeString(res_2, 1);
22803 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22804 		}
22805 		LA24_: ;
22806 		res_2 = resizeString(res_2, 1);
22807 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
22808 		T26_ = NIM_NIL;
22809 		T26_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_542));
22810 		cgFormatValue__cgen_141((&res_2), T26_);
22811 		res_2 = resizeString(res_2, 1);
22812 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
22813 		cgFormatValue__cgen_141((&res_2), traverseProc);
22814 		res_2 = resizeString(res_2, 2);
22815 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
22816 		{
22817 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA29_;
22818 			res_2 = resizeString(res_2, 1);
22819 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22820 		}
22821 		LA29_: ;
22822 		{
22823 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA33_;
22824 			res_2 = resizeString(res_2, 1);
22825 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22826 		}
22827 		LA33_: ;
22828 		T35_ = NIM_NIL;
22829 		T35_ = rope__ropes_109(res_2);
22830 		add__ropes_159(T21_, T35_);
22831 	}
22832 	LA1_: ;
22833 }
N_INLINE(NIM_BOOL,isAssignedImmediately__cgen_13146)22834 static N_INLINE(NIM_BOOL, isAssignedImmediately__cgen_13146)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
22835 	NIM_BOOL result;
22836 {	result = (NIM_BOOL)0;
22837 	{
22838 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1))) goto LA3_;
22839 		result = NIM_FALSE;
22840 		goto BeforeRet_;
22841 	}
22842 	LA3_: ;
22843 	{
22844 		NIM_BOOL T7_;
22845 		T7_ = (NIM_BOOL)0;
22846 		T7_ = isInvalidReturnType__cgen_1335(conf, (*n).typ);
22847 		if (!T7_) goto LA8_;
22848 		result = NIM_FALSE;
22849 		goto BeforeRet_;
22850 	}
22851 	LA8_: ;
22852 	result = NIM_TRUE;
22853 	}BeforeRet_: ;
22854 	return result;
22855 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_367)22856 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_367)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
22857 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
22858 	result = NIM_NIL;
22859 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_543), args, argsLen_0);
22860 	return result;
22861 }
N_NIMCALL(NIM_BOOL,freshLineInfo__cgen_355)22862 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, freshLineInfo__cgen_355)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
22863 	NIM_BOOL result;
22864 	result = (NIM_BOOL)0;
22865 	{
22866 		NIM_BOOL T3_;
22867 		T3_ = (NIM_BOOL)0;
22868 		T3_ = !(((*p).lastLineInfo.line == info.line));
22869 		if (T3_) goto LA4_;
22870 		T3_ = !(((*p).lastLineInfo.fileIndex == info.fileIndex));
22871 		LA4_: ;
22872 		if (!T3_) goto LA5_;
22873 		(*p).lastLineInfo.line = info.line;
22874 		(*p).lastLineInfo.fileIndex = info.fileIndex;
22875 		result = NIM_TRUE;
22876 	}
22877 	LA5_: ;
22878 	return result;
22879 }
N_NIMCALL(void,genLineDir__cgen_359)22880 N_LIB_PRIVATE N_NIMCALL(void, genLineDir__cgen_359)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t) {
22881 	NI line;
22882 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T11_;
22883 	NimStringDesc* T12_;
22884 	line = safeLineNm__cgen_331((*t).info);
22885 	{
22886 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T5_;
22887 		tyArray__qTjAvTvKF9anytN1At69aJMQ T6_;
22888 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
22889 		NimStringDesc* T8_;
22890 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
22891 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
22892 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 28))&63U)))!=0)) goto LA3_;
22893 		T5_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22894 		T5_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
22895 		nimZeroMem((void*)T6_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
22896 		T7_ = NIM_NIL;
22897 		T7_ = percent___cgen_367(T6_, 0);
22898 		T8_ = NIM_NIL;
22899 		T8_ = sourceLine__msgs_1101((*(*(*p).module).g).config, (*t).info);
22900 		T9_ = NIM_NIL;
22901 		T9_ = amp___ropes_140(T7_, T8_);
22902 		T10_ = NIM_NIL;
22903 		T10_ = amp___ropes_140(T9_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22904 		add__ropes_159(T5_, T10_);
22905 	}
22906 	LA3_: ;
22907 	T11_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22908 	T11_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
22909 	T12_ = NIM_NIL;
22910 	T12_ = toFullPath__msgs_538((*(*(*p).module).g).config, (*t).info.fileIndex);
22911 	genCLineDir__cgen_334(T11_, T12_, line, (*(*(*p).module).g).config);
22912 	{
22913 		NIM_BOOL T15_;
22914 		NIM_BOOL T16_;
22915 		NIM_BOOL T18_;
22916 		T15_ = (NIM_BOOL)0;
22917 		T16_ = (NIM_BOOL)0;
22918 		T16_ = ((655360 & (*p).options) == 655360);
22919 		if (!(T16_)) goto LA17_;
22920 		T18_ = (NIM_BOOL)0;
22921 		T18_ = ((*p).prc == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
22922 		if (T18_) goto LA19_;
22923 		T18_ = !((((*(*p).prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 11))&63U)))!=0));
22924 		LA19_: ;
22925 		T16_ = T18_;
22926 		LA17_: ;
22927 		T15_ = T16_;
22928 		if (!(T15_)) goto LA20_;
22929 		T15_ = !(((*t).info.fileIndex == ((NI32) -1)));
22930 		LA20_: ;
22931 		if (!T15_) goto LA21_;
22932 		{
22933 			NIM_BOOL T25_;
22934 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T28_;
22935 			NimStringDesc* res;
22936 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
22937 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
22938 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
22939 			T25_ = (NIM_BOOL)0;
22940 			T25_ = freshLineInfo__cgen_355(p, (*t).info);
22941 			if (!T25_) goto LA26_;
22942 			T28_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
22943 			T28_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
22944 			res = rawNewString(((NI) 80));
22945 			res = resizeString(res, 7);
22946 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_544));
22947 			cgFormatValue__cgen_148((&res), ((NI64) (line)));
22948 			res = resizeString(res, 2);
22949 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
22950 			T29_ = NIM_NIL;
22951 			T29_ = quotedFilename__msgs_1464((*(*(*p).module).g).config, (*t).info);
22952 			cgFormatValue__cgen_141((&res), T29_);
22953 			res = resizeString(res, 2);
22954 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
22955 			{
22956 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA32_;
22957 				res = resizeString(res, 1);
22958 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
22959 			}
22960 			LA32_: ;
22961 			T34_ = NIM_NIL;
22962 			T34_ = rope__ropes_109(res);
22963 			T35_ = NIM_NIL;
22964 			T35_ = indentLine__cgen_280(p, T34_);
22965 			add__ropes_159(T28_, T35_);
22966 		}
22967 		LA26_: ;
22968 	}
22969 	LA21_: ;
22970 }
N_NIMCALL(void,withTmpIfNeeded__cgen_12015)22971 N_LIB_PRIVATE N_NIMCALL(void, withTmpIfNeeded__cgen_12015)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, NIM_BOOL needsTmp, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* Result) {
22972 	(*Result).k = 0;
22973 	(*Result).storage = 0;
22974 	unsureAsgnRef((void**)&(*Result).lode, NIM_NIL);
22975 	unsureAsgnRef((void**)&(*Result).r, NIM_NIL);
22976 	{
22977 		NIM_BOOL T3_;
22978 		NIM_BOOL T4_;
22979 		NIM_BOOL T5_;
22980 		NI64 T9_;
22981 		T3_ = (NIM_BOOL)0;
22982 		T4_ = (NIM_BOOL)0;
22983 		T5_ = (NIM_BOOL)0;
22984 		T5_ = needsTmp;
22985 		if (!(T5_)) goto LA6_;
22986 		T5_ = !(((*a.lode).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
22987 		LA6_: ;
22988 		T4_ = T5_;
22989 		if (!(T4_)) goto LA7_;
22990 		T4_ = ((48 &((NU16)1<<((NU)((*(*(*(*p).module).g).config).selectedGC)&15U)))!=0);
22991 		LA7_: ;
22992 		T3_ = T4_;
22993 		if (!(T3_)) goto LA8_;
22994 		T9_ = (NI64)0;
22995 		T9_ = getSize__types_3327((*(*(*p).module).g).config, (*a.lode).typ);
22996 		T3_ = (T9_ < IL64(1024));
22997 		LA8_: ;
22998 		if (!T3_) goto LA10_;
22999 		getTemp__cgen_7343(p, (*a.lode).typ, Result, NIM_FALSE);
23000 		genAssignment__cgen_10369(p, (*Result), a, 0);
23001 	}
23002 	goto LA1_;
23003 	LA10_: ;
23004 	{
23005 		genericAssign((void*)Result, (void*)(&a), (&NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_));
23006 	}
23007 	LA1_: ;
23008 }
N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genArgStringToCString__cgen_12032)23009 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genArgStringToCString__cgen_12032)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL needsTmp) {
23010 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23011 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
23012 	NimStringDesc* res;
23013 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
23014 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T2_;
23015 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
23016 	result = NIM_NIL;
23017 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
23018 	initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 0)], (&a));
23019 	res = rawNewString(((NI) 80));
23020 	T1_ = NIM_NIL;
23021 	T1_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_545));
23022 	cgFormatValue__cgen_141((&res), T1_);
23023 	res = resizeString(res, 1);
23024 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
23025 	nimZeroMem((void*)(&T2_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
23026 	withTmpIfNeeded__cgen_12015(p, a, needsTmp, (&T2_));
23027 	T3_ = NIM_NIL;
23028 	T3_ = rdLoc__cgen_425(T2_);
23029 	cgFormatValue__cgen_141((&res), T3_);
23030 	res = resizeString(res, 1);
23031 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
23032 	result = rope__ropes_109(res);
23033 	return result;
23034 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genArgNoParam__cgen_12115)23035 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genArgNoParam__cgen_12115)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL needsTmp) {
23036 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23037 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
23038 	result = NIM_NIL;
23039 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
23040 	{
23041 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 71))) goto LA3_;
23042 		result = genArgStringToCString__cgen_12032(p, n, needsTmp);
23043 	}
23044 	goto LA1_;
23045 	LA3_: ;
23046 	{
23047 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T6_;
23048 		initLocExprSingleUse__cgen_11487(p, n, (&a));
23049 		nimZeroMem((void*)(&T6_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
23050 		withTmpIfNeeded__cgen_12015(p, a, needsTmp, (&T6_));
23051 		result = rdLoc__cgen_425(T6_);
23052 	}
23053 	LA1_: ;
23054 	return result;
23055 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genOtherArg__cgen_11476)23056 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genOtherArg__cgen_11476)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, NI i, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
23057 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23058 	result = NIM_NIL;
23059 	{
23060 		NI T3_;
23061 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* paramType;
23062 		T3_ = (NI)0;
23063 		T3_ = len__ast_4002(typ);
23064 		if (!(i < T3_)) goto LA4_;
23065 		paramType = (*(*typ).n)._kind_6.sons->data[i];
23066 		{
23067 			NIM_BOOL T8_;
23068 			T8_ = (NIM_BOOL)0;
23069 			T8_ = isCompileTimeOnly__types_3519((*paramType).typ);
23070 			if (!T8_) goto LA9_;
23071 			result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
23072 		}
23073 		goto LA6_;
23074 		LA9_: ;
23075 		{
23076 			NIM_BOOL T12_;
23077 			T12_ = (NIM_BOOL)0;
23078 			T12_ = ((*(*typ).sons->data[i]).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
23079 			if (!(T12_)) goto LA13_;
23080 			T12_ = ((*(*ri)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64));
23081 			LA13_: ;
23082 			if (!T12_) goto LA14_;
23083 			result = genArgNoParam__cgen_12115(p, (*(*ri)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)], NIM_FALSE);
23084 		}
23085 		goto LA6_;
23086 		LA14_: ;
23087 		{
23088 			result = genArgNoParam__cgen_12115(p, (*ri)._kind_6.sons->data[i], NIM_FALSE);
23089 		}
23090 		LA6_: ;
23091 	}
23092 	goto LA1_;
23093 	LA4_: ;
23094 	{
23095 		{
23096 			if (!!((((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 0))&63U)))!=0))) goto LA20_;
23097 			liMessage__msgs_1118((*(*(*p).module).g).config, (*ri).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_546), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_547, NIM_FALSE);
23098 			result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
23099 		}
23100 		goto LA18_;
23101 		LA20_: ;
23102 		{
23103 			result = genArgNoParam__cgen_12115(p, (*ri)._kind_6.sons->data[i], NIM_FALSE);
23104 		}
23105 		LA18_: ;
23106 	}
23107 	LA1_: ;
23108 	return result;
23109 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13931)23110 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13931)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23111 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23112 	result = NIM_NIL;
23113 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_549), args, argsLen_0);
23114 	return result;
23115 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13936)23116 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13936)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23117 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23118 	result = NIM_NIL;
23119 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_550), args, argsLen_0);
23120 	return result;
23121 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13941)23122 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13941)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23123 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23124 	result = NIM_NIL;
23125 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_551), args, argsLen_0);
23126 	return result;
23127 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13329)23128 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13329)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23129 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23130 	result = NIM_NIL;
23131 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_552), args, argsLen_0);
23132 	return result;
23133 }
N_INLINE(NIM_BOOL,notYetAlive__cgen_13022)23134 static N_INLINE(NIM_BOOL, notYetAlive__cgen_13022)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
23135 	NIM_BOOL result;
23136 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* r;
23137 	NIM_BOOL T1_;
23138 	result = (NIM_BOOL)0;
23139 	r = getRoot__trees_390(n);
23140 	T1_ = (NIM_BOOL)0;
23141 	T1_ = !((r == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
23142 	if (!(T1_)) goto LA2_;
23143 	T1_ = ((*r).loc.lode == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
23144 	LA2_: ;
23145 	result = T1_;
23146 	return result;
23147 }
N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,skipAddr__ast_5218)23148 static N_INLINE(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipAddr__ast_5218)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
23149 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
23150 	result = NIM_NIL;
23151 	{
23152 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA3_;
23153 		result = (*n)._kind_6.sons->data[((NI) 0)];
23154 	}
23155 	goto LA1_;
23156 	LA3_: ;
23157 	{
23158 		result = n;
23159 	}
23160 	LA1_: ;
23161 	return result;
23162 }
N_NIMCALL(NIM_BOOL,isInactiveDestructorCall__cgen_13034)23163 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInactiveDestructorCall__cgen_13034)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e) {
23164 	NIM_BOOL result;
23165 	NIM_BOOL T1_;
23166 	NIM_BOOL T2_;
23167 	NIM_BOOL T3_;
23168 	NI T4_;
23169 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T8_;
23170 	result = (NIM_BOOL)0;
23171 	T1_ = (NIM_BOOL)0;
23172 	T2_ = (NIM_BOOL)0;
23173 	T3_ = (NIM_BOOL)0;
23174 	T4_ = (NI)0;
23175 	T4_ = len__ast_3198(e);
23176 	T3_ = (T4_ == ((NI) 2));
23177 	if (!(T3_)) goto LA5_;
23178 	T3_ = ((*(*e)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
23179 	LA5_: ;
23180 	T2_ = T3_;
23181 	if (!(T2_)) goto LA6_;
23182 	T2_ = eqStrings((*(*(*(*e)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).s, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_560));
23183 	LA6_: ;
23184 	T1_ = T2_;
23185 	if (!(T1_)) goto LA7_;
23186 	T8_ = NIM_NIL;
23187 	T8_ = skipAddr__ast_5218((*e)._kind_6.sons->data[((NI) 1)]);
23188 	T1_ = notYetAlive__cgen_13022(T8_);
23189 	LA7_: ;
23190 	result = T1_;
23191 	return result;
23192 }
N_NIMCALL(tySequence__shxop0zPIs5Ec3k71aCLuQ *,newSeq__cgen_12205)23193 N_LIB_PRIVATE N_NIMCALL(tySequence__shxop0zPIs5Ec3k71aCLuQ*, newSeq__cgen_12205)(NI len) {
23194 	tySequence__shxop0zPIs5Ec3k71aCLuQ* result;
23195 	result = NIM_NIL;
23196 	result = (tySequence__shxop0zPIs5Ec3k71aCLuQ*) newSeq((&NTIseqLboolT__shxop0zPIs5Ec3k71aCLuQ_), len);
23197 	return result;
23198 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,skipTrivialIndirections__cgen_12142)23199 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipTrivialIndirections__cgen_12142)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
23200 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
23201 	result = NIM_NIL;
23202 	result = n;
23203 	{
23204 		while (1) {
23205 			switch ((*result).kind) {
23206 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47):
23207 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65):
23208 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
23209 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
23210 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66):
23211 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 67):
23212 			{
23213 				result = (*result)._kind_6.sons->data[((NI) 0)];
23214 			}
23215 			break;
23216 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
23217 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
23218 			{
23219 				result = (*result)._kind_6.sons->data[((NI) 1)];
23220 			}
23221 			break;
23222 			default:
23223 			{
23224 				goto LA1;
23225 			}
23226 			break;
23227 			}
23228 		}
23229 	} LA1: ;
23230 	return result;
23231 }
N_NIMCALL(NIM_BOOL,potentialAlias__cgen_12126)23232 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, potentialAlias__cgen_12126)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* potentialWrites) {
23233 	NIM_BOOL result;
23234 {	result = (NIM_BOOL)0;
23235 	{
23236 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** p;
23237 		NI i;
23238 		NI L;
23239 		NI T2_;
23240 		p = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
23241 		i = ((NI) 0);
23242 		T2_ = (potentialWrites ? potentialWrites->Sup.len : 0);
23243 		L = T2_;
23244 		{
23245 			while (1) {
23246 				if (!(i < L)) goto LA4;
23247 				p = &potentialWrites->data[i];
23248 				{
23249 					NIM_BOOL T7_;
23250 					tyEnum_AliasKind__mOZtJx9b3QXuy9bfWq9cuUNCg T8_;
23251 					tyEnum_AliasKind__mOZtJx9b3QXuy9bfWq9cuUNCg T10_;
23252 					T7_ = (NIM_BOOL)0;
23253 					T8_ = (tyEnum_AliasKind__mOZtJx9b3QXuy9bfWq9cuUNCg)0;
23254 					T8_ = aliases__dfa_792((*p), n);
23255 					T7_ = !((T8_ == ((tyEnum_AliasKind__mOZtJx9b3QXuy9bfWq9cuUNCg) 1)));
23256 					if (T7_) goto LA9_;
23257 					T10_ = (tyEnum_AliasKind__mOZtJx9b3QXuy9bfWq9cuUNCg)0;
23258 					T10_ = aliases__dfa_792(n, (*p));
23259 					T7_ = !((T10_ == ((tyEnum_AliasKind__mOZtJx9b3QXuy9bfWq9cuUNCg) 1)));
23260 					LA9_: ;
23261 					if (!T7_) goto LA11_;
23262 					result = NIM_TRUE;
23263 					goto BeforeRet_;
23264 				}
23265 				LA11_: ;
23266 				i += ((NI) 1);
23267 			} LA4: ;
23268 		}
23269 	}
23270 	}BeforeRet_: ;
23271 	return result;
23272 }
N_NIMCALL(void,getPotentialReads__cgen_12188)23273 N_LIB_PRIVATE N_NIMCALL(void, getPotentialReads__cgen_12188)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** result) {
23274 	switch ((*n).kind) {
23275 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
23276 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
23277 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 76):
23278 	{
23279 	}
23280 	break;
23281 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
23282 	{
23283 		NI T3_;
23284 		unsureAsgnRef((void**) (&(*result)), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) incrSeqV3((TGenericSeq*)((*result)), (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_)));
23285 		T3_ = (*result)->Sup.len++;
23286 		asgnRef((void**) (&(*result)->data[T3_]), n);
23287 	}
23288 	break;
23289 	default:
23290 	{
23291 		{
23292 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s;
23293 			s = NIM_NIL;
23294 			{
23295 				NI i;
23296 				NI colontmp_;
23297 				NI i_2;
23298 				i = (NI)0;
23299 				colontmp_ = (NI)0;
23300 				colontmp_ = safeLen__ast_3191(n);
23301 				i_2 = ((NI) 0);
23302 				{
23303 					while (1) {
23304 						if (!(i_2 < colontmp_)) goto LA8;
23305 						i = i_2;
23306 						s = (*n)._kind_6.sons->data[i];
23307 						getPotentialReads__cgen_12188(s, result);
23308 						i_2 += ((NI) 1);
23309 					} LA8: ;
23310 				}
23311 			}
23312 		}
23313 	}
23314 	break;
23315 	}
23316 }
N_NIMCALL(void,getPotentialWrites__cgen_12147)23317 N_LIB_PRIVATE N_NIMCALL(void, getPotentialWrites__cgen_12147)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL mutate, tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ** result) {
23318 	switch ((*n).kind) {
23319 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
23320 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
23321 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 76):
23322 	{
23323 	}
23324 	break;
23325 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
23326 	{
23327 		{
23328 			NI T7_;
23329 			if (!mutate) goto LA5_;
23330 			unsureAsgnRef((void**) (&(*result)), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) incrSeqV3((TGenericSeq*)((*result)), (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_)));
23331 			T7_ = (*result)->Sup.len++;
23332 			asgnRef((void**) (&(*result)->data[T7_]), n);
23333 		}
23334 		LA5_: ;
23335 	}
23336 	break;
23337 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73):
23338 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74):
23339 	{
23340 		getPotentialWrites__cgen_12147((*n)._kind_6.sons->data[((NI) 0)], NIM_TRUE, result);
23341 		getPotentialWrites__cgen_12147((*n)._kind_6.sons->data[((NI) 1)], mutate, result);
23342 	}
23343 	break;
23344 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
23345 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
23346 	{
23347 		getPotentialWrites__cgen_12147((*n)._kind_6.sons->data[((NI) 0)], NIM_TRUE, result);
23348 	}
23349 	break;
23350 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42):
23351 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45):
23352 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46):
23353 	{
23354 		getPotentialWrites__cgen_12147((*n)._kind_6.sons->data[((NI) 0)], mutate, result);
23355 	}
23356 	break;
23357 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
23358 	{
23359 		tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg T12_;
23360 		T12_ = (tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg)0;
23361 		T12_ = getMagic__trees_137(n);
23362 		switch (T12_) {
23363 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 40):
23364 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 41):
23365 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 29):
23366 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 30):
23367 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 131):
23368 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 132):
23369 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 133):
23370 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 16):
23371 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 32):
23372 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 33):
23373 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 149):
23374 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 150):
23375 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 158):
23376 		{
23377 			getPotentialWrites__cgen_12147((*n)._kind_6.sons->data[((NI) 1)], NIM_TRUE, result);
23378 			{
23379 				NI i;
23380 				NI colontmp_;
23381 				NI i_2;
23382 				i = (NI)0;
23383 				colontmp_ = (NI)0;
23384 				colontmp_ = len__ast_3198(n);
23385 				i_2 = ((NI) 2);
23386 				{
23387 					while (1) {
23388 						if (!(i_2 < colontmp_)) goto LA16;
23389 						i = i_2;
23390 						getPotentialWrites__cgen_12147((*n)._kind_6.sons->data[i], mutate, result);
23391 						i_2 += ((NI) 1);
23392 					} LA16: ;
23393 				}
23394 			}
23395 		}
23396 		break;
23397 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 142):
23398 		{
23399 			{
23400 				NI i_3;
23401 				NI colontmp__2;
23402 				NI i_4;
23403 				i_3 = (NI)0;
23404 				colontmp__2 = (NI)0;
23405 				colontmp__2 = len__ast_3198(n);
23406 				i_4 = ((NI) 1);
23407 				{
23408 					while (1) {
23409 						if (!(i_4 < colontmp__2)) goto LA20;
23410 						i_3 = i_4;
23411 						getPotentialWrites__cgen_12147((*n)._kind_6.sons->data[i_3], NIM_TRUE, result);
23412 						i_4 += ((NI) 1);
23413 					} LA20: ;
23414 				}
23415 			}
23416 		}
23417 		break;
23418 		default:
23419 		{
23420 			{
23421 				NI i_5;
23422 				NI colontmp__3;
23423 				NI i_6;
23424 				i_5 = (NI)0;
23425 				colontmp__3 = (NI)0;
23426 				colontmp__3 = len__ast_3198(n);
23427 				i_6 = ((NI) 1);
23428 				{
23429 					while (1) {
23430 						if (!(i_6 < colontmp__3)) goto LA24;
23431 						i_5 = i_6;
23432 						getPotentialWrites__cgen_12147((*n)._kind_6.sons->data[i_5], mutate, result);
23433 						i_6 += ((NI) 1);
23434 					} LA24: ;
23435 				}
23436 			}
23437 		}
23438 		break;
23439 		}
23440 	}
23441 	break;
23442 	default:
23443 	{
23444 		{
23445 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s;
23446 			s = NIM_NIL;
23447 			{
23448 				NI i_7;
23449 				NI colontmp__4;
23450 				NI i_8;
23451 				i_7 = (NI)0;
23452 				colontmp__4 = (NI)0;
23453 				colontmp__4 = safeLen__ast_3191(n);
23454 				i_8 = ((NI) 0);
23455 				{
23456 					while (1) {
23457 						if (!(i_8 < colontmp__4)) goto LA29;
23458 						i_7 = i_8;
23459 						s = (*n)._kind_6.sons->data[i_7];
23460 						getPotentialWrites__cgen_12147(s, mutate, result);
23461 						i_8 += ((NI) 1);
23462 					} LA29: ;
23463 				}
23464 			}
23465 		}
23466 	}
23467 	break;
23468 	}
23469 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,raiseInstr__cgen_414)23470 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, raiseInstr__cgen_414)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
23471 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23472 	result = NIM_NIL;
23473 	{
23474 		NI L;
23475 		NI T5_;
23476 		if (!((*(*(*(*p).module).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 3))) goto LA3_;
23477 		T5_ = ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0);
23478 		L = T5_;
23479 		{
23480 			NimStringDesc* res;
23481 			if (!(L == ((NI) 0))) goto LA8_;
23482 			(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 0)) & 7);
23483 			res = rawNewString(((NI) 80));
23484 			res = resizeString(res, 16);
23485 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_569));
23486 			{
23487 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA12_;
23488 				res = resizeString(res, 1);
23489 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
23490 			}
23491 			LA12_: ;
23492 			result = rope__ropes_109(res);
23493 		}
23494 		goto LA6_;
23495 		LA8_: ;
23496 		{
23497 			NimStringDesc* res_2;
23498 			res_2 = rawNewString(((NI) 80));
23499 			res_2 = resizeString(res_2, 7);
23500 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_570));
23501 			cgFormatValue__cgen_148((&res_2), ((NI64) ((*p).nestedTryStmts->data[(NI)(L - ((NI) 1))].Field2)));
23502 			res_2 = resizeString(res_2, 2);
23503 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_571));
23504 			{
23505 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA17_;
23506 				res_2 = resizeString(res_2, 1);
23507 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
23508 			}
23509 			LA17_: ;
23510 			result = rope__ropes_109(res_2);
23511 		}
23512 		LA6_: ;
23513 	}
23514 	goto LA1_;
23515 	LA3_: ;
23516 	{
23517 		result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
23518 	}
23519 	LA1_: ;
23520 	return result;
23521 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,intLiteral__cgen_17635)23522 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, intLiteral__cgen_17635)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA i) {
23523 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23524 	NI64 T1_;
23525 	result = NIM_NIL;
23526 	T1_ = (NI64)0;
23527 	T1_ = toInt64__int495056_88(i);
23528 	result = intLiteral__cgen_11471(T1_);
23529 	return result;
23530 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_10350)23531 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_10350)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23532 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23533 	result = NIM_NIL;
23534 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_575), args, argsLen_0);
23535 	return result;
23536 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,rdCharLoc__cgen_10343)23537 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rdCharLoc__cgen_10343)(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a) {
23538 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23539 	result = NIM_NIL;
23540 	result = rdLoc__cgen_425(a);
23541 	{
23542 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T3_;
23543 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T4_;
23544 		tyArray__JiWwrsTRC6xqNlGcBthSVA T7_;
23545 		T3_ = NIM_NIL;
23546 		T3_ = t__cgen_79(a);
23547 		T4_ = NIM_NIL;
23548 		T4_ = skipTypes__ast_3735(T3_, TM__MQdRN7fpbG7rPm4JpVVAhA_574);
23549 		if (!((*T4_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2))) goto LA5_;
23550 		nimZeroMem((void*)T7_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
23551 		T7_[0] = result;
23552 		result = percent___cgen_10350(T7_, 1);
23553 	}
23554 	LA5_: ;
23555 	return result;
23556 }
N_NIMCALL(void,genBoundsCheck__cgen_11733)23557 N_LIB_PRIVATE N_NIMCALL(void, genBoundsCheck__cgen_11733)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA arr, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b) {
23558 	tyObject_TType__facALICuu8zUj0hjvbTLFg* ty;
23559 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
23560 	T1_ = NIM_NIL;
23561 	T1_ = t__cgen_79(arr);
23562 	ty = skipTypes__ast_3735(T1_, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
23563 	switch ((*ty).kind) {
23564 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
23565 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
23566 	{
23567 		{
23568 			NIM_BOOL T5_;
23569 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T8_;
23570 			NimStringDesc* res;
23571 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
23572 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
23573 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
23574 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
23575 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
23576 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
23577 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
23578 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
23579 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
23580 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
23581 			T5_ = (NIM_BOOL)0;
23582 			T5_ = reifiedOpenArray__cgen_11738(arr.lode);
23583 			if (!T5_) goto LA6_;
23584 			T8_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
23585 			T8_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
23586 			res = rawNewString(((NI) 80));
23587 			res = resizeString(res, 4);
23588 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
23589 			T9_ = NIM_NIL;
23590 			T9_ = rdLoc__cgen_425(b);
23591 			cgFormatValue__cgen_141((&res), T9_);
23592 			res = resizeString(res, 1);
23593 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_562));
23594 			T10_ = NIM_NIL;
23595 			T10_ = rdLoc__cgen_425(a);
23596 			cgFormatValue__cgen_141((&res), T10_);
23597 			res = resizeString(res, 16);
23598 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_563));
23599 			T11_ = NIM_NIL;
23600 			T11_ = rdLoc__cgen_425(a);
23601 			cgFormatValue__cgen_141((&res), T11_);
23602 			res = resizeString(res, 10);
23603 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_564));
23604 			T12_ = NIM_NIL;
23605 			T12_ = rdLoc__cgen_425(arr);
23606 			cgFormatValue__cgen_141((&res), T12_);
23607 			res = resizeString(res, 17);
23608 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_565));
23609 			T13_ = NIM_NIL;
23610 			T13_ = rdLoc__cgen_425(b);
23611 			cgFormatValue__cgen_141((&res), T13_);
23612 			res = resizeString(res, 10);
23613 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_564));
23614 			T14_ = NIM_NIL;
23615 			T14_ = rdLoc__cgen_425(arr);
23616 			cgFormatValue__cgen_141((&res), T14_);
23617 			res = resizeString(res, 12);
23618 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_566));
23619 			T15_ = NIM_NIL;
23620 			T15_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_567));
23621 			cgFormatValue__cgen_141((&res), T15_);
23622 			res = resizeString(res, 4);
23623 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
23624 			T16_ = NIM_NIL;
23625 			T16_ = raiseInstr__cgen_414(p);
23626 			cgFormatValue__cgen_141((&res), T16_);
23627 			res = resizeString(res, 1);
23628 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
23629 			{
23630 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA19_;
23631 				res = resizeString(res, 1);
23632 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
23633 			}
23634 			LA19_: ;
23635 			T21_ = NIM_NIL;
23636 			T21_ = rope__ropes_109(res);
23637 			T22_ = NIM_NIL;
23638 			T22_ = indentLine__cgen_280(p, T21_);
23639 			add__ropes_159(T8_, T22_);
23640 		}
23641 		goto LA3_;
23642 		LA6_: ;
23643 		{
23644 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T24_;
23645 			NimStringDesc* res_2;
23646 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
23647 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
23648 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
23649 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
23650 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
23651 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
23652 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
23653 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
23654 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
23655 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
23656 			T24_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
23657 			T24_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
23658 			res_2 = rawNewString(((NI) 80));
23659 			res_2 = resizeString(res_2, 4);
23660 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
23661 			T25_ = NIM_NIL;
23662 			T25_ = rdLoc__cgen_425(b);
23663 			cgFormatValue__cgen_141((&res_2), T25_);
23664 			res_2 = resizeString(res_2, 1);
23665 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_562));
23666 			T26_ = NIM_NIL;
23667 			T26_ = rdLoc__cgen_425(a);
23668 			cgFormatValue__cgen_141((&res_2), T26_);
23669 			res_2 = resizeString(res_2, 16);
23670 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_563));
23671 			T27_ = NIM_NIL;
23672 			T27_ = rdLoc__cgen_425(a);
23673 			cgFormatValue__cgen_141((&res_2), T27_);
23674 			res_2 = resizeString(res_2, 10);
23675 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_564));
23676 			T28_ = NIM_NIL;
23677 			T28_ = rdLoc__cgen_425(arr);
23678 			cgFormatValue__cgen_141((&res_2), T28_);
23679 			res_2 = resizeString(res_2, 15);
23680 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_572));
23681 			T29_ = NIM_NIL;
23682 			T29_ = rdLoc__cgen_425(b);
23683 			cgFormatValue__cgen_141((&res_2), T29_);
23684 			res_2 = resizeString(res_2, 10);
23685 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_564));
23686 			T30_ = NIM_NIL;
23687 			T30_ = rdLoc__cgen_425(arr);
23688 			cgFormatValue__cgen_141((&res_2), T30_);
23689 			res_2 = resizeString(res_2, 10);
23690 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_573));
23691 			T31_ = NIM_NIL;
23692 			T31_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_567));
23693 			cgFormatValue__cgen_141((&res_2), T31_);
23694 			res_2 = resizeString(res_2, 4);
23695 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
23696 			T32_ = NIM_NIL;
23697 			T32_ = raiseInstr__cgen_414(p);
23698 			cgFormatValue__cgen_141((&res_2), T32_);
23699 			res_2 = resizeString(res_2, 1);
23700 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
23701 			{
23702 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA35_;
23703 				res_2 = resizeString(res_2, 1);
23704 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
23705 			}
23706 			LA35_: ;
23707 			T37_ = NIM_NIL;
23708 			T37_ = rope__ropes_109(res_2);
23709 			T38_ = NIM_NIL;
23710 			T38_ = indentLine__cgen_280(p, T37_);
23711 			add__ropes_159(T24_, T38_);
23712 		}
23713 		LA3_: ;
23714 	}
23715 	break;
23716 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
23717 	{
23718 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* first;
23719 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA T40_;
23720 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T41_;
23721 		NimStringDesc* res_3;
23722 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
23723 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
23724 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
23725 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
23726 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
23727 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
23728 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA T48_;
23729 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
23730 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
23731 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
23732 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA T52_;
23733 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
23734 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
23735 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T55_;
23736 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
23737 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T61_;
23738 		T40_ = firstOrd__types_1353((*(*(*p).module).g).config, ty);
23739 		first = intLiteral__cgen_17635(T40_);
23740 		T41_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
23741 		T41_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
23742 		res_3 = rawNewString(((NI) 80));
23743 		res_3 = resizeString(res_3, 4);
23744 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
23745 		T42_ = NIM_NIL;
23746 		T42_ = rdCharLoc__cgen_10343(b);
23747 		cgFormatValue__cgen_141((&res_3), T42_);
23748 		res_3 = resizeString(res_3, 1);
23749 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_562));
23750 		T43_ = NIM_NIL;
23751 		T43_ = rdCharLoc__cgen_10343(a);
23752 		cgFormatValue__cgen_141((&res_3), T43_);
23753 		res_3 = resizeString(res_3, 11);
23754 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_576));
23755 		T44_ = NIM_NIL;
23756 		T44_ = rdCharLoc__cgen_10343(b);
23757 		cgFormatValue__cgen_141((&res_3), T44_);
23758 		res_3 = resizeString(res_3, 1);
23759 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_562));
23760 		T45_ = NIM_NIL;
23761 		T45_ = rdCharLoc__cgen_10343(a);
23762 		cgFormatValue__cgen_141((&res_3), T45_);
23763 		res_3 = resizeString(res_3, 9);
23764 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_577));
23765 		T46_ = NIM_NIL;
23766 		T46_ = rdCharLoc__cgen_10343(a);
23767 		cgFormatValue__cgen_141((&res_3), T46_);
23768 		res_3 = resizeString(res_3, 3);
23769 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_177));
23770 		cgFormatValue__cgen_141((&res_3), first);
23771 		res_3 = resizeString(res_3, 4);
23772 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_578));
23773 		T47_ = NIM_NIL;
23774 		T47_ = rdCharLoc__cgen_10343(a);
23775 		cgFormatValue__cgen_141((&res_3), T47_);
23776 		res_3 = resizeString(res_3, 3);
23777 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_579));
23778 		T48_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
23779 		T49_ = NIM_NIL;
23780 		T49_ = intLiteral__cgen_17635(T48_);
23781 		cgFormatValue__cgen_141((&res_3), T49_);
23782 		res_3 = resizeString(res_3, 4);
23783 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_578));
23784 		T50_ = NIM_NIL;
23785 		T50_ = rdCharLoc__cgen_10343(b);
23786 		cgFormatValue__cgen_141((&res_3), T50_);
23787 		res_3 = resizeString(res_3, 3);
23788 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_177));
23789 		cgFormatValue__cgen_141((&res_3), first);
23790 		res_3 = resizeString(res_3, 4);
23791 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_578));
23792 		T51_ = NIM_NIL;
23793 		T51_ = rdCharLoc__cgen_10343(b);
23794 		cgFormatValue__cgen_141((&res_3), T51_);
23795 		res_3 = resizeString(res_3, 3);
23796 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_579));
23797 		T52_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
23798 		T53_ = NIM_NIL;
23799 		T53_ = intLiteral__cgen_17635(T52_);
23800 		cgFormatValue__cgen_141((&res_3), T53_);
23801 		res_3 = resizeString(res_3, 4);
23802 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_580));
23803 		T54_ = NIM_NIL;
23804 		T54_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_567));
23805 		cgFormatValue__cgen_141((&res_3), T54_);
23806 		res_3 = resizeString(res_3, 4);
23807 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
23808 		T55_ = NIM_NIL;
23809 		T55_ = raiseInstr__cgen_414(p);
23810 		cgFormatValue__cgen_141((&res_3), T55_);
23811 		res_3 = resizeString(res_3, 1);
23812 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
23813 		{
23814 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA58_;
23815 			res_3 = resizeString(res_3, 1);
23816 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
23817 		}
23818 		LA58_: ;
23819 		T60_ = NIM_NIL;
23820 		T60_ = rope__ropes_109(res_3);
23821 		T61_ = NIM_NIL;
23822 		T61_ = indentLine__cgen_280(p, T60_);
23823 		add__ropes_159(T41_, T61_);
23824 	}
23825 	break;
23826 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
23827 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
23828 	{
23829 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T63_;
23830 		NimStringDesc* res_4;
23831 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
23832 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T65_;
23833 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
23834 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T67_;
23835 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
23836 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
23837 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
23838 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
23839 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T76_;
23840 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T77_;
23841 		T63_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
23842 		T63_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
23843 		res_4 = rawNewString(((NI) 80));
23844 		res_4 = resizeString(res_4, 4);
23845 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
23846 		T64_ = NIM_NIL;
23847 		T64_ = rdLoc__cgen_425(b);
23848 		cgFormatValue__cgen_141((&res_4), T64_);
23849 		res_4 = resizeString(res_4, 1);
23850 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_562));
23851 		T65_ = NIM_NIL;
23852 		T65_ = rdLoc__cgen_425(a);
23853 		cgFormatValue__cgen_141((&res_4), T65_);
23854 		res_4 = resizeString(res_4, 16);
23855 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_563));
23856 		T66_ = NIM_NIL;
23857 		T66_ = rdLoc__cgen_425(a);
23858 		cgFormatValue__cgen_141((&res_4), T66_);
23859 		res_4 = resizeString(res_4, 9);
23860 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_581));
23861 		T67_ = NIM_NIL;
23862 		T67_ = lenExpr__cgen_448(p, arr);
23863 		cgFormatValue__cgen_141((&res_4), T67_);
23864 		res_4 = resizeString(res_4, 9);
23865 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_582));
23866 		T68_ = NIM_NIL;
23867 		T68_ = rdLoc__cgen_425(b);
23868 		cgFormatValue__cgen_141((&res_4), T68_);
23869 		res_4 = resizeString(res_4, 9);
23870 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_581));
23871 		T69_ = NIM_NIL;
23872 		T69_ = lenExpr__cgen_448(p, arr);
23873 		cgFormatValue__cgen_141((&res_4), T69_);
23874 		res_4 = resizeString(res_4, 4);
23875 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_580));
23876 		T70_ = NIM_NIL;
23877 		T70_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_567));
23878 		cgFormatValue__cgen_141((&res_4), T70_);
23879 		res_4 = resizeString(res_4, 4);
23880 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
23881 		T71_ = NIM_NIL;
23882 		T71_ = raiseInstr__cgen_414(p);
23883 		cgFormatValue__cgen_141((&res_4), T71_);
23884 		res_4 = resizeString(res_4, 1);
23885 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
23886 		{
23887 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA74_;
23888 			res_4 = resizeString(res_4, 1);
23889 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
23890 		}
23891 		LA74_: ;
23892 		T76_ = NIM_NIL;
23893 		T76_ = rope__ropes_109(res_4);
23894 		T77_ = NIM_NIL;
23895 		T77_ = indentLine__cgen_280(p, T76_);
23896 		add__ropes_159(T63_, T77_);
23897 	}
23898 	break;
23899 	default:
23900 	{
23901 	}
23902 	break;
23903 	}
23904 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11777)23905 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11777)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23906 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23907 	result = NIM_NIL;
23908 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_584), args, argsLen_0);
23909 	return result;
23910 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11784)23911 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11784)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23912 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23913 	result = NIM_NIL;
23914 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_585), args, argsLen_0);
23915 	return result;
23916 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11789)23917 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11789)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23918 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23919 	result = NIM_NIL;
23920 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_586), args, argsLen_0);
23921 	return result;
23922 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11795)23923 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11795)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23924 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23925 	result = NIM_NIL;
23926 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_587), args, argsLen_0);
23927 	return result;
23928 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11800)23929 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11800)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23930 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23931 	result = NIM_NIL;
23932 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_588), args, argsLen_0);
23933 	return result;
23934 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11847)23935 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11847)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23936 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23937 	result = NIM_NIL;
23938 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_589), args, argsLen_0);
23939 	return result;
23940 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11852)23941 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11852)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
23942 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
23943 	result = NIM_NIL;
23944 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_590), args, argsLen_0);
23945 	return result;
23946 }
N_NIMCALL(void,genOpenArraySlice__cgen_11755)23947 N_LIB_PRIVATE N_NIMCALL(void, genOpenArraySlice__cgen_11755)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* q, tyObject_TType__facALICuu8zUj0hjvbTLFg* formalType, tyObject_TType__facALICuu8zUj0hjvbTLFg* destType, tyTuple__nsNHL3sm0TZE9bootw2pEXw* Result) {
23948 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
23949 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
23950 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA c;
23951 	tyObject_TType__facALICuu8zUj0hjvbTLFg* ty;
23952 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
23953 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* dest;
23954 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lengthExpr;
23955 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T6_;
23956 	unsureAsgnRef((void**)&(*Result).Field0, NIM_NIL);
23957 	unsureAsgnRef((void**)&(*Result).Field1, NIM_NIL);
23958 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
23959 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
23960 	nimZeroMem((void*)(&c), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
23961 	initLocExpr__cgen_11483(p, (*q)._kind_6.sons->data[((NI) 1)], (&a));
23962 	initLocExpr__cgen_11483(p, (*q)._kind_6.sons->data[((NI) 2)], (&b));
23963 	initLocExpr__cgen_11483(p, (*q)._kind_6.sons->data[((NI) 3)], (&c));
23964 	{
23965 		if (!(((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 4))&31U)))!=0)) goto LA3_;
23966 		genBoundsCheck__cgen_11733(p, a, b, c);
23967 	}
23968 	LA3_: ;
23969 	T5_ = NIM_NIL;
23970 	T5_ = t__cgen_79(a);
23971 	ty = skipTypes__ast_3735(T5_, TM__MQdRN7fpbG7rPm4JpVVAhA_583);
23972 	dest = getTypeDesc__cgen_6631((*p).module, destType, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
23973 	nimZeroMem((void*)T6_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
23974 	T6_[0] = rdLoc__cgen_425(c);
23975 	T6_[1] = rdLoc__cgen_425(b);
23976 	lengthExpr = percent___cgen_11777(T6_, 2);
23977 	switch ((*ty).kind) {
23978 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
23979 	{
23980 		NI64 first;
23981 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA T8_;
23982 		T8_ = firstOrd__types_1353((*(*(*p).module).g).config, ty);
23983 		first = toInt64__int495056_88(T8_);
23984 		{
23985 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp_;
23986 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T13_;
23987 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__2;
23988 			if (!(first == IL64(0))) goto LA11_;
23989 			nimZeroMem((void*)T13_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
23990 			T13_[0] = rdLoc__cgen_425(a);
23991 			T13_[1] = rdLoc__cgen_425(b);
23992 			T13_[2] = dest;
23993 			colontmp_ = percent___cgen_11784(T13_, 3);
23994 			colontmp__2 = lengthExpr;
23995 			unsureAsgnRef((void**) (&(*Result).Field0), colontmp_);
23996 			unsureAsgnRef((void**) (&(*Result).Field1), colontmp__2);
23997 		}
23998 		goto LA9_;
23999 		LA11_: ;
24000 		{
24001 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__3;
24002 			tyArray__f7nG5LD47BH5K9c6mASit3g T15_;
24003 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__4;
24004 			nimZeroMem((void*)T15_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
24005 			T15_[0] = rdLoc__cgen_425(a);
24006 			T15_[1] = rdLoc__cgen_425(b);
24007 			T15_[2] = intLiteral__cgen_11471(first);
24008 			T15_[3] = dest;
24009 			colontmp__3 = percent___cgen_11789(T15_, 4);
24010 			colontmp__4 = lengthExpr;
24011 			unsureAsgnRef((void**) (&(*Result).Field0), colontmp__3);
24012 			unsureAsgnRef((void**) (&(*Result).Field1), colontmp__4);
24013 		}
24014 		LA9_: ;
24015 	}
24016 	break;
24017 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
24018 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
24019 	{
24020 		{
24021 			NIM_BOOL T19_;
24022 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__5;
24023 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T22_;
24024 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__6;
24025 			T19_ = (NIM_BOOL)0;
24026 			T19_ = reifiedOpenArray__cgen_11738((*q)._kind_6.sons->data[((NI) 1)]);
24027 			if (!T19_) goto LA20_;
24028 			nimZeroMem((void*)T22_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
24029 			T22_[0] = rdLoc__cgen_425(a);
24030 			T22_[1] = rdLoc__cgen_425(b);
24031 			T22_[2] = dest;
24032 			colontmp__5 = percent___cgen_11795(T22_, 3);
24033 			colontmp__6 = lengthExpr;
24034 			unsureAsgnRef((void**) (&(*Result).Field0), colontmp__5);
24035 			unsureAsgnRef((void**) (&(*Result).Field1), colontmp__6);
24036 		}
24037 		goto LA17_;
24038 		LA20_: ;
24039 		{
24040 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__7;
24041 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T24_;
24042 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__8;
24043 			nimZeroMem((void*)T24_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
24044 			T24_[0] = rdLoc__cgen_425(a);
24045 			T24_[1] = rdLoc__cgen_425(b);
24046 			T24_[2] = dest;
24047 			colontmp__7 = percent___cgen_11800(T24_, 3);
24048 			colontmp__8 = lengthExpr;
24049 			unsureAsgnRef((void**) (&(*Result).Field0), colontmp__7);
24050 			unsureAsgnRef((void**) (&(*Result).Field1), colontmp__8);
24051 		}
24052 		LA17_: ;
24053 	}
24054 	break;
24055 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 49):
24056 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
24057 	{
24058 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__9;
24059 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T26_;
24060 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__10;
24061 		nimZeroMem((void*)T26_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
24062 		T26_[0] = rdLoc__cgen_425(a);
24063 		T26_[1] = rdLoc__cgen_425(b);
24064 		T26_[2] = dest;
24065 		colontmp__9 = percent___cgen_11800(T26_, 3);
24066 		colontmp__10 = lengthExpr;
24067 		unsureAsgnRef((void**) (&(*Result).Field0), colontmp__9);
24068 		unsureAsgnRef((void**) (&(*Result).Field1), colontmp__10);
24069 	}
24070 	break;
24071 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
24072 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
24073 	{
24074 		tyObject_TType__facALICuu8zUj0hjvbTLFg* atyp;
24075 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T28_;
24076 		T28_ = NIM_NIL;
24077 		T28_ = t__cgen_79(a);
24078 		atyp = skipTypes__ast_3735(T28_, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
24079 		{
24080 			NIM_BOOL T31_;
24081 			NIM_BOOL T32_;
24082 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T33_;
24083 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T38_;
24084 			NimStringDesc* res;
24085 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
24086 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
24087 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
24088 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
24089 			T31_ = (NIM_BOOL)0;
24090 			T32_ = (NIM_BOOL)0;
24091 			T33_ = NIM_NIL;
24092 			T33_ = skipTypes__ast_3735(formalType, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
24093 			T32_ = ((*T33_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
24094 			if (!(T32_)) goto LA34_;
24095 			T32_ = ((*atyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28));
24096 			LA34_: ;
24097 			T31_ = T32_;
24098 			if (!(T31_)) goto LA35_;
24099 			T31_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0);
24100 			LA35_: ;
24101 			if (!T31_) goto LA36_;
24102 			T38_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
24103 			T38_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
24104 			res = rawNewString(((NI) 80));
24105 			T39_ = NIM_NIL;
24106 			T39_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_363));
24107 			cgFormatValue__cgen_141((&res), T39_);
24108 			res = resizeString(res, 1);
24109 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
24110 			T40_ = NIM_NIL;
24111 			T40_ = byRefLoc__cgen_10319(p, a);
24112 			cgFormatValue__cgen_141((&res), T40_);
24113 			res = resizeString(res, 2);
24114 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
24115 			{
24116 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA43_;
24117 				res = resizeString(res, 1);
24118 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
24119 			}
24120 			LA43_: ;
24121 			T45_ = NIM_NIL;
24122 			T45_ = rope__ropes_109(res);
24123 			T46_ = NIM_NIL;
24124 			T46_ = indentLine__cgen_280(p, T45_);
24125 			add__ropes_159(T38_, T46_);
24126 		}
24127 		LA36_: ;
24128 		{
24129 			NIM_BOOL T49_;
24130 			NIM_BOOL T51_;
24131 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__11;
24132 			tyArray__f7nG5LD47BH5K9c6mASit3g T55_;
24133 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__12;
24134 			T49_ = (NIM_BOOL)0;
24135 			T49_ = ((*atyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
24136 			if (!(T49_)) goto LA50_;
24137 			T51_ = (NIM_BOOL)0;
24138 			T51_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
24139 			if (T51_) goto LA52_;
24140 			T51_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
24141 			LA52_: ;
24142 			T49_ = !(T51_);
24143 			LA50_: ;
24144 			if (!T49_) goto LA53_;
24145 			nimZeroMem((void*)T55_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
24146 			T55_[0] = rdLoc__cgen_425(a);
24147 			T55_[1] = rdLoc__cgen_425(b);
24148 			T55_[2] = dataField__cgen_461(p);
24149 			T55_[3] = dest;
24150 			colontmp__11 = percent___cgen_11847(T55_, 4);
24151 			colontmp__12 = lengthExpr;
24152 			unsureAsgnRef((void**) (&(*Result).Field0), colontmp__11);
24153 			unsureAsgnRef((void**) (&(*Result).Field1), colontmp__12);
24154 		}
24155 		goto LA47_;
24156 		LA53_: ;
24157 		{
24158 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__13;
24159 			tyArray__f7nG5LD47BH5K9c6mASit3g T57_;
24160 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* colontmp__14;
24161 			nimZeroMem((void*)T57_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
24162 			T57_[0] = rdLoc__cgen_425(a);
24163 			T57_[1] = rdLoc__cgen_425(b);
24164 			T57_[2] = dataField__cgen_461(p);
24165 			T57_[3] = dest;
24166 			colontmp__13 = percent___cgen_11852(T57_, 4);
24167 			colontmp__14 = lengthExpr;
24168 			unsureAsgnRef((void**) (&(*Result).Field0), colontmp__13);
24169 			unsureAsgnRef((void**) (&(*Result).Field1), colontmp__14);
24170 		}
24171 		LA47_: ;
24172 	}
24173 	break;
24174 	default:
24175 	{
24176 		NimStringDesc* T59_;
24177 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T60_;
24178 		NimStringDesc* T61_;
24179 		T59_ = NIM_NIL;
24180 		T60_ = NIM_NIL;
24181 		T60_ = t__cgen_79(a);
24182 		T61_ = NIM_NIL;
24183 		T61_ = typeToString__types_50(T60_, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
24184 		T59_ = rawNewString((T61_ ? T61_->Sup.len : 0) + 14);
24185 appendString(T59_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_591));
24186 appendString(T59_, T61_);
24187 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, T59_, TM__MQdRN7fpbG7rPm4JpVVAhA_592);
24188 	}
24189 	break;
24190 	}
24191 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11923)24192 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11923)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
24193 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
24194 	result = NIM_NIL;
24195 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_594), args, argsLen_0);
24196 	return result;
24197 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11928)24198 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11928)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
24199 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
24200 	result = NIM_NIL;
24201 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_595), args, argsLen_0);
24202 	return result;
24203 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11933)24204 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11933)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
24205 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
24206 	result = NIM_NIL;
24207 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_596), args, argsLen_0);
24208 	return result;
24209 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11981)24210 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11981)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
24211 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
24212 	result = NIM_NIL;
24213 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_597), args, argsLen_0);
24214 	return result;
24215 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11986)24216 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11986)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
24217 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
24218 	result = NIM_NIL;
24219 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_598), args, argsLen_0);
24220 	return result;
24221 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11991)24222 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11991)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
24223 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
24224 	result = NIM_NIL;
24225 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_599), args, argsLen_0);
24226 	return result;
24227 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,openArrayLoc__cgen_11866)24228 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, openArrayLoc__cgen_11866)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* formalType, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
24229 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
24230 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* q;
24231 	NIM_BOOL skipped;
24232 	result = NIM_NIL;
24233 	q = skipConv__types_3588(n);
24234 	skipped = NIM_FALSE;
24235 	{
24236 		while (1) {
24237 			NIM_BOOL T3_;
24238 			NI T5_;
24239 			T3_ = (NIM_BOOL)0;
24240 			T3_ = ((*q).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126));
24241 			if (!(T3_)) goto LA4_;
24242 			T5_ = (NI)0;
24243 			T5_ = len__ast_3198(q);
24244 			T3_ = (((NI) 0) < T5_);
24245 			LA4_: ;
24246 			if (!T3_) goto LA2;
24247 			skipped = NIM_TRUE;
24248 			q = lastSon__ast_4832(q);
24249 		} LA2: ;
24250 	}
24251 	{
24252 		tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg T8_;
24253 		tyTuple__nsNHL3sm0TZE9bootw2pEXw T24_;
24254 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* x;
24255 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* y;
24256 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
24257 		T8_ = (tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg)0;
24258 		T8_ = getMagic__trees_137(q);
24259 		if (!(T8_ == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 126))) goto LA9_;
24260 		{
24261 			if (!skipped) goto LA13_;
24262 			q = skipConv__types_3588(n);
24263 			{
24264 				while (1) {
24265 					NIM_BOOL T17_;
24266 					NI T19_;
24267 					T17_ = (NIM_BOOL)0;
24268 					T17_ = ((*q).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126));
24269 					if (!(T17_)) goto LA18_;
24270 					T19_ = (NI)0;
24271 					T19_ = len__ast_3198(q);
24272 					T17_ = (((NI) 0) < T19_);
24273 					LA18_: ;
24274 					if (!T17_) goto LA16;
24275 					{
24276 						NI i;
24277 						NI colontmp_;
24278 						NI T21_;
24279 						NI i_2;
24280 						i = (NI)0;
24281 						colontmp_ = (NI)0;
24282 						T21_ = (NI)0;
24283 						T21_ = len__ast_3198(q);
24284 						colontmp_ = (NI)(T21_ - ((NI) 1));
24285 						i_2 = ((NI) 0);
24286 						{
24287 							while (1) {
24288 								if (!(i_2 < colontmp_)) goto LA23;
24289 								i = i_2;
24290 								genStmts__cgen_11457(p, (*q)._kind_6.sons->data[i]);
24291 								i_2 += ((NI) 1);
24292 							} LA23: ;
24293 						}
24294 					}
24295 					q = lastSon__ast_4832(q);
24296 				} LA16: ;
24297 			}
24298 		}
24299 		LA13_: ;
24300 		nimZeroMem((void*)(&T24_), sizeof(tyTuple__nsNHL3sm0TZE9bootw2pEXw));
24301 		genOpenArraySlice__cgen_11755(p, q, formalType, (*(*n).typ).sons->data[((NI) 0)], (&T24_));
24302 		x = NIM_NIL;
24303 		x = T24_.Field0;
24304 		y = NIM_NIL;
24305 		y = T24_.Field1;
24306 		T25_ = NIM_NIL;
24307 		T25_ = amp___ropes_140(x, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
24308 		result = amp___ropes_128(T25_, y);
24309 	}
24310 	goto LA6_;
24311 	LA9_: ;
24312 	{
24313 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
24314 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T27_;
24315 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T33_;
24316 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T34_;
24317 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
24318 		T27_ = NIM_NIL;
24319 		{
24320 			if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58))) goto LA30_;
24321 			T27_ = (*n)._kind_6.sons->data[((NI) 1)];
24322 		}
24323 		goto LA28_;
24324 		LA30_: ;
24325 		{
24326 			T27_ = n;
24327 		}
24328 		LA28_: ;
24329 		initLocExpr__cgen_11483(p, T27_, (&a));
24330 		T33_ = NIM_NIL;
24331 		T33_ = t__cgen_79(a);
24332 		T34_ = NIM_NIL;
24333 		T34_ = skipTypes__ast_3735(T33_, TM__MQdRN7fpbG7rPm4JpVVAhA_593);
24334 		switch ((*T34_).kind) {
24335 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
24336 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
24337 		{
24338 			{
24339 				NIM_BOOL T38_;
24340 				T38_ = (NIM_BOOL)0;
24341 				T38_ = reifiedOpenArray__cgen_11738(n);
24342 				if (!T38_) goto LA39_;
24343 				{
24344 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T43_;
24345 					tyArray__JiWwrsTRC6xqNlGcBthSVA T46_;
24346 					T43_ = NIM_NIL;
24347 					T43_ = t__cgen_79(a);
24348 					if (!((*T43_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*T43_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47))) goto LA44_;
24349 					nimZeroMem((void*)T46_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
24350 					T46_[0] = rdLoc__cgen_425(a);
24351 					result = percent___cgen_11923(T46_, 1);
24352 				}
24353 				goto LA41_;
24354 				LA44_: ;
24355 				{
24356 					tyArray__JiWwrsTRC6xqNlGcBthSVA T48_;
24357 					nimZeroMem((void*)T48_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
24358 					T48_[0] = rdLoc__cgen_425(a);
24359 					result = percent___cgen_11928(T48_, 1);
24360 				}
24361 				LA41_: ;
24362 			}
24363 			goto LA36_;
24364 			LA39_: ;
24365 			{
24366 				tyArray__JiWwrsTRC6xqNlGcBthSVA T50_;
24367 				nimZeroMem((void*)T50_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
24368 				T50_[0] = rdLoc__cgen_425(a);
24369 				result = percent___cgen_11933(T50_, 1);
24370 			}
24371 			LA36_: ;
24372 		}
24373 		break;
24374 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
24375 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
24376 		{
24377 			tyObject_TType__facALICuu8zUj0hjvbTLFg* ntyp;
24378 			ntyp = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
24379 			{
24380 				NIM_BOOL T54_;
24381 				NIM_BOOL T55_;
24382 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T56_;
24383 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T61_;
24384 				NimStringDesc* res;
24385 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T62_;
24386 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
24387 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
24388 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
24389 				T54_ = (NIM_BOOL)0;
24390 				T55_ = (NIM_BOOL)0;
24391 				T56_ = NIM_NIL;
24392 				T56_ = skipTypes__ast_3735(formalType, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
24393 				T55_ = ((*T56_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
24394 				if (!(T55_)) goto LA57_;
24395 				T55_ = ((*ntyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28));
24396 				LA57_: ;
24397 				T54_ = T55_;
24398 				if (!(T54_)) goto LA58_;
24399 				T54_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0);
24400 				LA58_: ;
24401 				if (!T54_) goto LA59_;
24402 				T61_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
24403 				T61_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
24404 				res = rawNewString(((NI) 80));
24405 				T62_ = NIM_NIL;
24406 				T62_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_363));
24407 				cgFormatValue__cgen_141((&res), T62_);
24408 				res = resizeString(res, 1);
24409 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
24410 				T63_ = NIM_NIL;
24411 				T63_ = byRefLoc__cgen_10319(p, a);
24412 				cgFormatValue__cgen_141((&res), T63_);
24413 				res = resizeString(res, 2);
24414 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
24415 				{
24416 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA66_;
24417 					res = resizeString(res, 1);
24418 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
24419 				}
24420 				LA66_: ;
24421 				T68_ = NIM_NIL;
24422 				T68_ = rope__ropes_109(res);
24423 				T69_ = NIM_NIL;
24424 				T69_ = indentLine__cgen_280(p, T68_);
24425 				add__ropes_159(T61_, T69_);
24426 			}
24427 			LA59_: ;
24428 			{
24429 				NIM_BOOL T72_;
24430 				NIM_BOOL T74_;
24431 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA t;
24432 				tyArray__JiWwrsTRC6xqNlGcBthSVA T78_;
24433 				tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T79_;
24434 				T72_ = (NIM_BOOL)0;
24435 				T72_ = ((*ntyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
24436 				if (!(T72_)) goto LA73_;
24437 				T74_ = (NIM_BOOL)0;
24438 				T74_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
24439 				if (T74_) goto LA75_;
24440 				T74_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
24441 				LA75_: ;
24442 				T72_ = !(T74_);
24443 				LA73_: ;
24444 				if (!T72_) goto LA76_;
24445 				nimZeroMem((void*)(&t), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
24446 				nimZeroMem((void*)T78_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
24447 				T78_[0] = rdLoc__cgen_425(a);
24448 				t.r = percent___cgen_432(T78_, 1);
24449 				nimZeroMem((void*)T79_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
24450 				T79_[0] = rdLoc__cgen_425(a);
24451 				T79_[1] = lenExpr__cgen_448(p, t);
24452 				T79_[2] = dataField__cgen_461(p);
24453 				result = percent___cgen_11981(T79_, 3);
24454 			}
24455 			goto LA70_;
24456 			LA76_: ;
24457 			{
24458 				tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T81_;
24459 				nimZeroMem((void*)T81_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
24460 				T81_[0] = rdLoc__cgen_425(a);
24461 				T81_[1] = lenExpr__cgen_448(p, a);
24462 				T81_[2] = dataField__cgen_461(p);
24463 				result = percent___cgen_11986(T81_, 3);
24464 			}
24465 			LA70_: ;
24466 		}
24467 		break;
24468 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
24469 		{
24470 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T83_;
24471 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T84_;
24472 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T85_;
24473 			nimZeroMem((void*)T83_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
24474 			T83_[0] = rdLoc__cgen_425(a);
24475 			T84_ = NIM_NIL;
24476 			T84_ = t__cgen_79(a);
24477 			T85_ = lengthOrd__types_1652((*(*(*p).module).g).config, T84_);
24478 			T83_[1] = rope__cgen_6918(T85_);
24479 			result = percent___cgen_11991(T83_, 2);
24480 		}
24481 		break;
24482 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
24483 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
24484 		{
24485 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T87_;
24486 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T88_;
24487 			T87_ = NIM_NIL;
24488 			T87_ = t__cgen_79(a);
24489 			T88_ = NIM_NIL;
24490 			T88_ = lastSon__ast_3743(T87_);
24491 			switch ((*T88_).kind) {
24492 			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
24493 			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
24494 			{
24495 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA t_2;
24496 				tyArray__JiWwrsTRC6xqNlGcBthSVA T90_;
24497 				tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T91_;
24498 				nimZeroMem((void*)(&t_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
24499 				nimZeroMem((void*)T90_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
24500 				T90_[0] = rdLoc__cgen_425(a);
24501 				t_2.r = percent___cgen_432(T90_, 1);
24502 				nimZeroMem((void*)T91_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
24503 				T91_[0] = rdLoc__cgen_425(a);
24504 				T91_[1] = lenExpr__cgen_448(p, t_2);
24505 				T91_[2] = dataField__cgen_461(p);
24506 				result = percent___cgen_11981(T91_, 3);
24507 			}
24508 			break;
24509 			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
24510 			{
24511 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T93_;
24512 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T94_;
24513 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T95_;
24514 				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T96_;
24515 				nimZeroMem((void*)T93_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
24516 				T93_[0] = rdLoc__cgen_425(a);
24517 				T94_ = NIM_NIL;
24518 				T94_ = t__cgen_79(a);
24519 				T95_ = NIM_NIL;
24520 				T95_ = lastSon__ast_3743(T94_);
24521 				T96_ = lengthOrd__types_1652((*(*(*p).module).g).config, T95_);
24522 				T93_[1] = rope__cgen_6918(T96_);
24523 				result = percent___cgen_11991(T93_, 2);
24524 			}
24525 			break;
24526 			default:
24527 			{
24528 				NimStringDesc* T98_;
24529 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T99_;
24530 				NimStringDesc* T100_;
24531 				T98_ = NIM_NIL;
24532 				T99_ = NIM_NIL;
24533 				T99_ = t__cgen_79(a);
24534 				T100_ = NIM_NIL;
24535 				T100_ = typeToString__types_50(T99_, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
24536 				T98_ = rawNewString((T100_ ? T100_->Sup.len : 0) + 14);
24537 appendString(T98_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_591));
24538 appendString(T98_, T100_);
24539 				internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, T98_, TM__MQdRN7fpbG7rPm4JpVVAhA_600);
24540 			}
24541 			break;
24542 			}
24543 		}
24544 		break;
24545 		default:
24546 		{
24547 			NimStringDesc* T102_;
24548 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T103_;
24549 			NimStringDesc* T104_;
24550 			T102_ = NIM_NIL;
24551 			T103_ = NIM_NIL;
24552 			T103_ = t__cgen_79(a);
24553 			T104_ = NIM_NIL;
24554 			T104_ = typeToString__types_50(T103_, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
24555 			T102_ = rawNewString((T104_ ? T104_->Sup.len : 0) + 14);
24556 appendString(T102_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_591));
24557 appendString(T102_, T104_);
24558 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, T102_, TM__MQdRN7fpbG7rPm4JpVVAhA_601);
24559 		}
24560 		break;
24561 		}
24562 	}
24563 	LA6_: ;
24564 	return result;
24565 }
N_NIMCALL(void,literalsNeedsTmp__cgen_12028)24566 N_LIB_PRIVATE N_NIMCALL(void, literalsNeedsTmp__cgen_12028)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* Result) {
24567 	(*Result).k = 0;
24568 	(*Result).storage = 0;
24569 	unsureAsgnRef((void**)&(*Result).lode, NIM_NIL);
24570 	unsureAsgnRef((void**)&(*Result).r, NIM_NIL);
24571 	getTemp__cgen_7343(p, (*a.lode).typ, Result, NIM_FALSE);
24572 	genAssignment__cgen_10369(p, (*Result), a, 0);
24573 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genArg__cgen_12048)24574 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genArg__cgen_12048)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* call, NIM_BOOL needsTmp) {
24575 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
24576 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
24577 	result = NIM_NIL;
24578 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
24579 	{
24580 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 71))) goto LA3_;
24581 		result = genArgStringToCString__cgen_12032(p, n, needsTmp);
24582 	}
24583 	goto LA1_;
24584 	LA3_: ;
24585 	{
24586 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
24587 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2;
24588 		T6_ = NIM_NIL;
24589 		T6_ = skipTypes__ast_3735((*param).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_357);
24590 		if (!((*T6_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27) || (*T6_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48))) goto LA7_;
24591 		{
24592 			if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64)))) goto LA11_;
24593 			n_2 = n;
24594 		}
24595 		goto LA9_;
24596 		LA11_: ;
24597 		{
24598 			n_2 = (*n)._kind_6.sons->data[((NI) 0)];
24599 		}
24600 		LA9_: ;
24601 		result = openArrayLoc__cgen_11866(p, (*param).typ, n_2);
24602 	}
24603 	goto LA1_;
24604 	LA7_: ;
24605 	{
24606 		NIM_BOOL T15_;
24607 		T15_ = (NIM_BOOL)0;
24608 		T15_ = ccgIntroducedPtr__ccgutils_153((*(*(*p).module).g).config, param, (*(*(*call)._kind_6.sons->data[((NI) 0)]).typ).sons->data[((NI) 0)]);
24609 		if (!T15_) goto LA16_;
24610 		initLocExpr__cgen_11483(p, n, (&a));
24611 		{
24612 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T22_;
24613 			if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA20_;
24614 			nimZeroMem((void*)(&T22_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
24615 			literalsNeedsTmp__cgen_12028(p, a, (&T22_));
24616 			result = addrLoc__cgen_10303((*(*(*p).module).g).config, T22_);
24617 		}
24618 		goto LA18_;
24619 		LA20_: ;
24620 		{
24621 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T24_;
24622 			nimZeroMem((void*)(&T24_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
24623 			withTmpIfNeeded__cgen_12015(p, a, needsTmp, (&T24_));
24624 			result = addrLoc__cgen_10303((*(*(*p).module).g).config, T24_);
24625 		}
24626 		LA18_: ;
24627 	}
24628 	goto LA1_;
24629 	LA16_: ;
24630 	{
24631 		NIM_BOOL T26_;
24632 		NIM_BOOL T27_;
24633 		NIM_BOOL T28_;
24634 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* callee;
24635 		T26_ = (NIM_BOOL)0;
24636 		T27_ = (NIM_BOOL)0;
24637 		T28_ = (NIM_BOOL)0;
24638 		T28_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
24639 		if (T28_) goto LA29_;
24640 		T28_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
24641 		LA29_: ;
24642 		T27_ = T28_;
24643 		if (!(T27_)) goto LA30_;
24644 		T27_ = ((*(*param).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
24645 		LA30_: ;
24646 		T26_ = T27_;
24647 		if (!(T26_)) goto LA31_;
24648 		T26_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64));
24649 		LA31_: ;
24650 		if (!T26_) goto LA32_;
24651 		initLocExprSingleUse__cgen_11487(p, (*n)._kind_6.sons->data[((NI) 0)], (&a));
24652 		callee = (*call)._kind_6.sons->data[((NI) 0)];
24653 		{
24654 			NIM_BOOL T36_;
24655 			NIM_BOOL T37_;
24656 			T36_ = (NIM_BOOL)0;
24657 			T37_ = (NIM_BOOL)0;
24658 			T37_ = ((*callee).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
24659 			if (!(T37_)) goto LA38_;
24660 			T37_ = ((IL64(4295229504) & (*(*callee)._kind_4.sym).flags) == 64);
24661 			LA38_: ;
24662 			T36_ = T37_;
24663 			if (!(T36_)) goto LA39_;
24664 			T36_ = !(((72 & (*(*callee)._kind_4.sym).loc.flags) == 0));
24665 			LA39_: ;
24666 			if (!T36_) goto LA40_;
24667 			result = addrLoc__cgen_10303((*(*(*p).module).g).config, a);
24668 		}
24669 		goto LA34_;
24670 		LA40_: ;
24671 		{
24672 			result = rdLoc__cgen_425(a);
24673 		}
24674 		LA34_: ;
24675 	}
24676 	goto LA1_;
24677 	LA32_: ;
24678 	{
24679 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA T44_;
24680 		initLocExprSingleUse__cgen_11487(p, n, (&a));
24681 		nimZeroMem((void*)(&T44_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
24682 		withTmpIfNeeded__cgen_12015(p, a, needsTmp, (&T44_));
24683 		result = rdLoc__cgen_425(T44_);
24684 	}
24685 	LA1_: ;
24686 	return result;
24687 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genParams__cgen_12196)24688 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genParams__cgen_12196)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
24689 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
24690 	tySequence__shxop0zPIs5Ec3k71aCLuQ* needTmp;
24691 	NI T1_;
24692 	tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* potentialWrites;
24693 	result = NIM_NIL;
24694 	T1_ = (NI)0;
24695 	T1_ = len__ast_3198(ri);
24696 	needTmp = newSeq__cgen_12205(((NI) ((NI)(T1_ - ((NI) 1)))));
24697 	potentialWrites = NIM_NIL;
24698 	{
24699 		NI i;
24700 		NI colontmp_;
24701 		NI T3_;
24702 		NI res;
24703 		i = (NI)0;
24704 		colontmp_ = (NI)0;
24705 		T3_ = (NI)0;
24706 		T3_ = len__ast_3198(ri);
24707 		colontmp_ = (NI)(T3_ - ((NI) 1));
24708 		res = colontmp_;
24709 		{
24710 			while (1) {
24711 				if (!(((NI) 1) <= res)) goto LA5;
24712 				i = res;
24713 				{
24714 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T8_;
24715 					T8_ = NIM_NIL;
24716 					T8_ = skipTrivialIndirections__cgen_12142((*ri)._kind_6.sons->data[i]);
24717 					if (!((*T8_).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA9_;
24718 					needTmp->data[(NI)(i - ((NI) 1))] = potentialAlias__cgen_12126((*ri)._kind_6.sons->data[i], potentialWrites);
24719 				}
24720 				goto LA6_;
24721 				LA9_: ;
24722 				{
24723 					tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* potentialReads;
24724 					potentialReads = NIM_NIL;
24725 					getPotentialReads__cgen_12188((*ri)._kind_6.sons->data[i], (&potentialReads));
24726 					{
24727 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** n;
24728 						NI i_2;
24729 						NI L;
24730 						NI T13_;
24731 						n = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
24732 						i_2 = ((NI) 0);
24733 						T13_ = (potentialReads ? potentialReads->Sup.len : 0);
24734 						L = T13_;
24735 						{
24736 							while (1) {
24737 								if (!(i_2 < L)) goto LA15;
24738 								n = &potentialReads->data[i_2];
24739 								{
24740 									if (!!(needTmp->data[(NI)(i - ((NI) 1))])) goto LA18_;
24741 									needTmp->data[(NI)(i - ((NI) 1))] = potentialAlias__cgen_12126((*n), potentialWrites);
24742 								}
24743 								LA18_: ;
24744 								i_2 += ((NI) 1);
24745 							} LA15: ;
24746 						}
24747 					}
24748 					getPotentialWrites__cgen_12147((*ri)._kind_6.sons->data[i], NIM_FALSE, (&potentialWrites));
24749 				}
24750 				LA6_: ;
24751 				{
24752 					if (!((*(*ri)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA22_;
24753 					needTmp->data[(NI)(i - ((NI) 1))] = NIM_FALSE;
24754 				}
24755 				LA22_: ;
24756 				res -= ((NI) 1);
24757 			} LA5: ;
24758 		}
24759 	}
24760 	{
24761 		NI i_3;
24762 		NI colontmp__2;
24763 		NI i_4;
24764 		i_3 = (NI)0;
24765 		colontmp__2 = (NI)0;
24766 		colontmp__2 = len__ast_3198(ri);
24767 		i_4 = ((NI) 1);
24768 		{
24769 			while (1) {
24770 				if (!(i_4 < colontmp__2)) goto LA26;
24771 				i_3 = i_4;
24772 				{
24773 					NI T29_;
24774 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* paramType;
24775 					T29_ = (NI)0;
24776 					T29_ = len__ast_4002(typ);
24777 					if (!(i_3 < T29_)) goto LA30_;
24778 					paramType = (*(*typ).n)._kind_6.sons->data[i_3];
24779 					{
24780 						NIM_BOOL T34_;
24781 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
24782 						T34_ = (NIM_BOOL)0;
24783 						T34_ = isCompileTimeOnly__types_3519((*paramType).typ);
24784 						if (!!(T34_)) goto LA35_;
24785 						{
24786 							tyArray__qTjAvTvKF9anytN1At69aJMQ T41_;
24787 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
24788 							if (!!((result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA39_;
24789 							nimZeroMem((void*)T41_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
24790 							T42_ = NIM_NIL;
24791 							T42_ = percent___cgen_3519(T41_, 0);
24792 							add__ropes_159(&result, T42_);
24793 						}
24794 						LA39_: ;
24795 						T43_ = NIM_NIL;
24796 						T43_ = genArg__cgen_12048(p, (*ri)._kind_6.sons->data[i_3], (*paramType)._kind_4.sym, ri, needTmp->data[(NI)(i_3 - ((NI) 1))]);
24797 						add__ropes_159(&result, T43_);
24798 					}
24799 					LA35_: ;
24800 				}
24801 				goto LA27_;
24802 				LA30_: ;
24803 				{
24804 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
24805 					{
24806 						tyArray__qTjAvTvKF9anytN1At69aJMQ T49_;
24807 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
24808 						if (!!((result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA47_;
24809 						nimZeroMem((void*)T49_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
24810 						T50_ = NIM_NIL;
24811 						T50_ = percent___cgen_3519(T49_, 0);
24812 						add__ropes_159(&result, T50_);
24813 					}
24814 					LA47_: ;
24815 					T51_ = NIM_NIL;
24816 					T51_ = genArgNoParam__cgen_12115(p, (*ri)._kind_6.sons->data[i_3], needTmp->data[(NI)(i_3 - ((NI) 1))]);
24817 					add__ropes_159(&result, T51_);
24818 				}
24819 				LA27_: ;
24820 				i_4 += ((NI) 1);
24821 			} LA26: ;
24822 		}
24823 	}
24824 	return result;
24825 }
N_NIMCALL(NIM_BOOL,canRaiseDisp__cgen_11523)24826 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, canRaiseDisp__cgen_11523)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
24827 	NIM_BOOL result;
24828 	result = (NIM_BOOL)0;
24829 	{
24830 		NIM_BOOL T3_;
24831 		T3_ = (NIM_BOOL)0;
24832 		T3_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
24833 		if (!(T3_)) goto LA4_;
24834 		T3_ = !(((IL64(8796093284416) & (*(*n)._kind_4.sym).flags) == 0));
24835 		LA4_: ;
24836 		if (!T3_) goto LA5_;
24837 		result = NIM_FALSE;
24838 	}
24839 	goto LA1_;
24840 	LA5_: ;
24841 	{
24842 		NIM_BOOL T8_;
24843 		NIM_BOOL T10_;
24844 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T12_;
24845 		T8_ = (NIM_BOOL)0;
24846 		T8_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 46))&63U)))!=0);
24847 		if (T8_) goto LA9_;
24848 		T10_ = (NIM_BOOL)0;
24849 		T10_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
24850 		if (!(T10_)) goto LA11_;
24851 		T12_ = NIM_NIL;
24852 		T12_ = getModule__astalgo_216((*n)._kind_4.sym);
24853 		T10_ = (((*T12_).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0);
24854 		LA11_: ;
24855 		T8_ = T10_;
24856 		LA9_: ;
24857 		if (!T8_) goto LA13_;
24858 		result = canRaise__ast_5088(n);
24859 	}
24860 	goto LA1_;
24861 	LA13_: ;
24862 	{
24863 		result = canRaiseConservative__ast_5076(n);
24864 	}
24865 	LA1_: ;
24866 	return result;
24867 }
N_NIMCALL(NIM_BOOL,locationEscapes__cgen_11556)24868 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, locationEscapes__cgen_11556)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, NIM_BOOL inTryStmt) {
24869 	NIM_BOOL result;
24870 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
24871 {	result = (NIM_BOOL)0;
24872 	n = le;
24873 	{
24874 		while (1) {
24875 			switch ((*n).kind) {
24876 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
24877 			{
24878 				{
24879 					if (!!(((*(*n)._kind_4.sym).owner == (*p).prc))) goto LA6_;
24880 					result = NIM_TRUE;
24881 					goto BeforeRet_;
24882 				}
24883 				goto LA4_;
24884 				LA6_: ;
24885 				{
24886 					NIM_BOOL T9_;
24887 					T9_ = (NIM_BOOL)0;
24888 					T9_ = inTryStmt;
24889 					if (!(T9_)) goto LA10_;
24890 					T9_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 44))&63U)))!=0);
24891 					LA10_: ;
24892 					if (!T9_) goto LA11_;
24893 					result = NIM_TRUE;
24894 					goto BeforeRet_;
24895 				}
24896 				goto LA4_;
24897 				LA11_: ;
24898 				LA4_: ;
24899 				result = NIM_FALSE;
24900 				goto BeforeRet_;
24901 			}
24902 			break;
24903 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45):
24904 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42):
24905 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 67):
24906 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66):
24907 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46):
24908 			{
24909 				n = (*n)._kind_6.sons->data[((NI) 0)];
24910 			}
24911 			break;
24912 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
24913 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
24914 			case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 60):
24915 			{
24916 				n = (*n)._kind_6.sons->data[((NI) 1)];
24917 			}
24918 			break;
24919 			default:
24920 			{
24921 				result = NIM_TRUE;
24922 				goto BeforeRet_;
24923 			}
24924 			break;
24925 			}
24926 		}
24927 	}
24928 	}BeforeRet_: ;
24929 	return result;
24930 }
N_NIMCALL(NIM_BOOL,preventNrvo__cgen_11551)24931 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, preventNrvo__cgen_11551)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri) {
24932 	NIM_BOOL result;
24933 {	result = (NIM_BOOL)0;
24934 	{
24935 		if (!!((le == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA3_;
24936 		{
24937 			NI i;
24938 			NI colontmp_;
24939 			NI i_2;
24940 			i = (NI)0;
24941 			colontmp_ = (NI)0;
24942 			colontmp_ = len__ast_3198(ri);
24943 			i_2 = ((NI) 1);
24944 			{
24945 				while (1) {
24946 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* r;
24947 					if (!(i_2 < colontmp_)) goto LA7;
24948 					i = i_2;
24949 					r = (*ri)._kind_6.sons->data[i];
24950 					{
24951 						tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w T10_;
24952 						T10_ = (tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w)0;
24953 						T10_ = isPartOf__aliases_129(le, r);
24954 						if (!!((T10_ == ((tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w) 0)))) goto LA11_;
24955 						result = NIM_TRUE;
24956 						goto BeforeRet_;
24957 					}
24958 					LA11_: ;
24959 					i_2 += ((NI) 1);
24960 				} LA7: ;
24961 			}
24962 		}
24963 		{
24964 			NIM_BOOL T15_;
24965 			NI T17_;
24966 			NimStringDesc* T20_;
24967 			T15_ = (NIM_BOOL)0;
24968 			T15_ = canRaise__ast_5088((*ri)._kind_6.sons->data[((NI) 0)]);
24969 			if (!(T15_)) goto LA16_;
24970 			T17_ = ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0);
24971 			T15_ = locationEscapes__cgen_11556(p, le, (((NI) 0) < T17_));
24972 			LA16_: ;
24973 			if (!T15_) goto LA18_;
24974 			T20_ = NIM_NIL;
24975 			T20_ = dollar___renderer_2106(le);
24976 			liMessage__msgs_1118((*(*(*p).module).g).config, (*le).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 57), T20_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_602, NIM_FALSE);
24977 		}
24978 		LA18_: ;
24979 	}
24980 	LA3_: ;
24981 	}BeforeRet_: ;
24982 	return result;
24983 }
N_INLINE(NIM_BOOL,hasNoInit__cgen_11595)24984 static N_INLINE(NIM_BOOL, hasNoInit__cgen_11595)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* call) {
24985 	NIM_BOOL result;
24986 	NIM_BOOL T1_;
24987 	result = (NIM_BOOL)0;
24988 	T1_ = (NIM_BOOL)0;
24989 	T1_ = ((*(*call)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
24990 	if (!(T1_)) goto LA2_;
24991 	T1_ = (((*(*(*call)._kind_6.sons->data[((NI) 0)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0);
24992 	LA2_: ;
24993 	result = T1_;
24994 	return result;
24995 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_12435)24996 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12435)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
24997 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
24998 	result = NIM_NIL;
24999 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_603), args, argsLen_0);
25000 	return result;
25001 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,addComma__cgen_12363)25002 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, addComma__cgen_12363)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r) {
25003 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
25004 	result = NIM_NIL;
25005 	{
25006 		if (!(r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA3_;
25007 		result = r;
25008 	}
25009 	goto LA1_;
25010 	LA3_: ;
25011 	{
25012 		tyArray__qTjAvTvKF9anytN1At69aJMQ T6_;
25013 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
25014 		nimZeroMem((void*)T6_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
25015 		T7_ = NIM_NIL;
25016 		T7_ = percent___cgen_3519(T6_, 0);
25017 		result = amp___ropes_128(r, T7_);
25018 	}
25019 	LA1_: ;
25020 	return result;
25021 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_12440)25022 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12440)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
25023 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
25024 	result = NIM_NIL;
25025 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_604), args, argsLen_0);
25026 	return result;
25027 }
N_INLINE(tyTuple__FxkU4d1VDodDMc9ah6Mbagw *,X5BX5D___cgen_14745)25028 static N_INLINE(tyTuple__FxkU4d1VDodDMc9ah6Mbagw*, X5BX5D___cgen_14745)(tyTuple__FxkU4d1VDodDMc9ah6Mbagw* s, NI sLen_0, NI i) {
25029 	tyTuple__FxkU4d1VDodDMc9ah6Mbagw* result;
25030 	result = (tyTuple__FxkU4d1VDodDMc9ah6Mbagw*)0;
25031 	result = (&s[(NI)(sLen_0 - i)]);
25032 	return result;
25033 }
N_NIMCALL(void,raiseExit__cgen_11481)25034 N_LIB_PRIVATE N_NIMCALL(void, raiseExit__cgen_11481)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
25035 	{
25036 		if (!!((((*p).flags &((NU8)1<<((NU)(((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 6))&7U)))!=0))) goto LA3_;
25037 		(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 4)) & 7);
25038 		{
25039 			NI T7_;
25040 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
25041 			NimStringDesc* res;
25042 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
25043 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
25044 			T7_ = ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0);
25045 			if (!(T7_ == ((NI) 0))) goto LA8_;
25046 			(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 0)) & 7);
25047 			T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
25048 			T10_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
25049 			res = rawNewString(((NI) 80));
25050 			res = resizeString(res, 44);
25051 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_605));
25052 			{
25053 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA13_;
25054 				res = resizeString(res, 1);
25055 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
25056 			}
25057 			LA13_: ;
25058 			T15_ = NIM_NIL;
25059 			T15_ = rope__ropes_109(res);
25060 			T16_ = NIM_NIL;
25061 			T16_ = indentLine__cgen_280(p, T15_);
25062 			add__ropes_159(T10_, T16_);
25063 		}
25064 		goto LA5_;
25065 		LA8_: ;
25066 		{
25067 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T18_;
25068 			NimStringDesc* res_2;
25069 			tyTuple__FxkU4d1VDodDMc9ah6Mbagw* T19_;
25070 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
25071 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
25072 			T18_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
25073 			T18_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
25074 			res_2 = rawNewString(((NI) 80));
25075 			res_2 = resizeString(res_2, 35);
25076 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_606));
25077 			T19_ = (tyTuple__FxkU4d1VDodDMc9ah6Mbagw*)0;
25078 			T19_ = X5BX5D___cgen_14745((*p).nestedTryStmts->data, ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0), ((NI) 1));
25079 			cgFormatValue__cgen_148((&res_2), ((NI64) ((*T19_).Field2)));
25080 			res_2 = resizeString(res_2, 2);
25081 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_571));
25082 			{
25083 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA22_;
25084 				res_2 = resizeString(res_2, 1);
25085 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
25086 			}
25087 			LA22_: ;
25088 			T24_ = NIM_NIL;
25089 			T24_ = rope__ropes_109(res_2);
25090 			T25_ = NIM_NIL;
25091 			T25_ = indentLine__cgen_280(p, T24_);
25092 			add__ropes_159(T18_, T25_);
25093 		}
25094 		LA5_: ;
25095 	}
25096 	LA3_: ;
25097 }
N_NIMCALL(NIM_BOOL,isHarmlessStore__cgen_11608)25098 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isHarmlessStore__cgen_11608)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, NIM_BOOL canRaise, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA d) {
25099 	NIM_BOOL result;
25100 	result = (NIM_BOOL)0;
25101 	{
25102 		NIM_BOOL T3_;
25103 		T3_ = (NIM_BOOL)0;
25104 		T3_ = ((3 &((NU16)1<<((NU)(d.k)&15U)))!=0);
25105 		if (T3_) goto LA4_;
25106 		T3_ = !(canRaise);
25107 		LA4_: ;
25108 		if (!T3_) goto LA5_;
25109 		result = NIM_TRUE;
25110 	}
25111 	goto LA1_;
25112 	LA5_: ;
25113 	{
25114 		NIM_BOOL T8_;
25115 		T8_ = (NIM_BOOL)0;
25116 		T8_ = (d.k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 2));
25117 		if (!(T8_)) goto LA9_;
25118 		T8_ = ((*p).withinTryWithExcept == ((NI) 0));
25119 		LA9_: ;
25120 		if (!T8_) goto LA10_;
25121 		result = NIM_TRUE;
25122 	}
25123 	goto LA1_;
25124 	LA10_: ;
25125 	{
25126 		result = NIM_FALSE;
25127 	}
25128 	LA1_: ;
25129 	return result;
25130 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_12476)25131 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12476)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
25132 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
25133 	result = NIM_NIL;
25134 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_607), args, argsLen_0);
25135 	return result;
25136 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_12481)25137 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12481)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
25138 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
25139 	result = NIM_NIL;
25140 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_608), args, argsLen_0);
25141 	return result;
25142 }
N_NIMCALL(void,genClosureCall__cgen_12358)25143 N_LIB_PRIVATE N_NIMCALL(void, genClosureCall__cgen_12358)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
25144 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA op;
25145 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
25146 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* pl;
25147 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* rawProc;
25148 	NIM_BOOL canRaise;
25149 	NIM_BOOL T1_;
25150 	nimZeroMem((void*)(&op), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
25151 	initLocExpr__cgen_11483(p, (*ri)._kind_6.sons->data[((NI) 0)], (&op));
25152 	typ = skipTypes__ast_3735((*(*ri)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
25153 	pl = genParams__cgen_12196(p, ri, typ);
25154 	rawProc = getClosureType__cgen_6644((*p).module, typ, ((tyEnum_TClosureTypeKind__cLHRMz1vnpSK0uePy2qbWw) 0));
25155 	T1_ = (NIM_BOOL)0;
25156 	T1_ = ((*(*(*(*p).module).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 3));
25157 	if (!(T1_)) goto LA2_;
25158 	T1_ = canRaiseDisp__cgen_11523(p, (*ri)._kind_6.sons->data[((NI) 0)]);
25159 	LA2_: ;
25160 	canRaise = T1_;
25161 	{
25162 		if (!!(((*typ).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA5_;
25163 		{
25164 			NIM_BOOL T9_;
25165 			T9_ = (NIM_BOOL)0;
25166 			T9_ = isInvalidReturnType__cgen_1335((*(*(*p).module).g).config, (*typ).sons->data[((NI) 0)]);
25167 			if (!T9_) goto LA10_;
25168 			{
25169 				NI T14_;
25170 				tyArray__qTjAvTvKF9anytN1At69aJMQ T17_;
25171 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
25172 				T14_ = (NI)0;
25173 				T14_ = len__ast_3198(ri);
25174 				if (!(((NI) 1) < T14_)) goto LA15_;
25175 				nimZeroMem((void*)T17_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
25176 				T18_ = NIM_NIL;
25177 				T18_ = percent___cgen_3519(T17_, 0);
25178 				add__ropes_159(&pl, T18_);
25179 			}
25180 			LA15_: ;
25181 			{
25182 				NIM_BOOL T21_;
25183 				NIM_BOOL T23_;
25184 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
25185 				T21_ = (NIM_BOOL)0;
25186 				T21_ = ((3 &((NU16)1<<((NU)((*d).k)&15U)))!=0);
25187 				if (T21_) goto LA22_;
25188 				T23_ = (NIM_BOOL)0;
25189 				T23_ = preventNrvo__cgen_11551(p, le, ri);
25190 				T21_ = !(T23_);
25191 				LA22_: ;
25192 				if (!T21_) goto LA24_;
25193 				{
25194 					if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA28_;
25195 					getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], d, NIM_TRUE);
25196 				}
25197 				goto LA26_;
25198 				LA28_: ;
25199 				{
25200 					NIM_BOOL T31_;
25201 					NIM_BOOL T33_;
25202 					T31_ = (NIM_BOOL)0;
25203 					T31_ = !(((2 &((NU16)1<<((NU)((*d).k)&15U)))!=0));
25204 					if (!(T31_)) goto LA32_;
25205 					T33_ = (NIM_BOOL)0;
25206 					T33_ = hasNoInit__cgen_11595(ri);
25207 					T31_ = !(T33_);
25208 					LA32_: ;
25209 					if (!T31_) goto LA34_;
25210 				}
25211 				goto LA26_;
25212 				LA34_: ;
25213 				LA26_: ;
25214 				T36_ = NIM_NIL;
25215 				T36_ = addrLoc__cgen_10303((*(*(*p).module).g).config, (*d));
25216 				add__ropes_159(&pl, T36_);
25217 				{
25218 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T41_;
25219 					tyArray__f7nG5LD47BH5K9c6mASit3g T42_;
25220 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
25221 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
25222 					if (!(((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 15))&63U)))!=0)) goto LA39_;
25223 					T41_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
25224 					T41_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
25225 					nimZeroMem((void*)T42_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
25226 					T42_[0] = rdLoc__cgen_425(op);
25227 					T42_[1] = pl;
25228 					T42_[2] = addComma__cgen_12363(pl);
25229 					T42_[3] = rawProc;
25230 					T43_ = NIM_NIL;
25231 					T43_ = percent___cgen_12435(T42_, 4);
25232 					T44_ = NIM_NIL;
25233 					T44_ = indentLine__cgen_280(p, T43_);
25234 					add__ropes_159(T41_, T44_);
25235 				}
25236 				goto LA37_;
25237 				LA39_: ;
25238 				{
25239 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T46_;
25240 					tyArray__f7nG5LD47BH5K9c6mASit3g T47_;
25241 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
25242 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
25243 					T46_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
25244 					T46_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
25245 					nimZeroMem((void*)T47_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
25246 					T47_[0] = rdLoc__cgen_425(op);
25247 					T47_[1] = pl;
25248 					T47_[2] = addComma__cgen_12363(pl);
25249 					T47_[3] = rawProc;
25250 					T48_ = NIM_NIL;
25251 					T48_ = percent___cgen_12440(T47_, 4);
25252 					T49_ = NIM_NIL;
25253 					T49_ = indentLine__cgen_280(p, T48_);
25254 					add__ropes_159(T46_, T49_);
25255 				}
25256 				LA37_: ;
25257 			}
25258 			goto LA19_;
25259 			LA24_: ;
25260 			{
25261 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
25262 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
25263 				nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
25264 				getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], (&tmp), NIM_TRUE);
25265 				T51_ = NIM_NIL;
25266 				T51_ = addrLoc__cgen_10303((*(*(*p).module).g).config, tmp);
25267 				add__ropes_159(&pl, T51_);
25268 				{
25269 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T56_;
25270 					tyArray__f7nG5LD47BH5K9c6mASit3g T57_;
25271 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
25272 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
25273 					if (!(((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 15))&63U)))!=0)) goto LA54_;
25274 					T56_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
25275 					T56_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
25276 					nimZeroMem((void*)T57_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
25277 					T57_[0] = rdLoc__cgen_425(op);
25278 					T57_[1] = pl;
25279 					T57_[2] = addComma__cgen_12363(pl);
25280 					T57_[3] = rawProc;
25281 					T58_ = NIM_NIL;
25282 					T58_ = percent___cgen_12435(T57_, 4);
25283 					T59_ = NIM_NIL;
25284 					T59_ = indentLine__cgen_280(p, T58_);
25285 					add__ropes_159(T56_, T59_);
25286 				}
25287 				goto LA52_;
25288 				LA54_: ;
25289 				{
25290 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T61_;
25291 					tyArray__f7nG5LD47BH5K9c6mASit3g T62_;
25292 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
25293 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
25294 					T61_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
25295 					T61_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
25296 					nimZeroMem((void*)T62_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
25297 					T62_[0] = rdLoc__cgen_425(op);
25298 					T62_[1] = pl;
25299 					T62_[2] = addComma__cgen_12363(pl);
25300 					T62_[3] = rawProc;
25301 					T63_ = NIM_NIL;
25302 					T63_ = percent___cgen_12440(T62_, 4);
25303 					T64_ = NIM_NIL;
25304 					T64_ = indentLine__cgen_280(p, T63_);
25305 					add__ropes_159(T61_, T64_);
25306 				}
25307 				LA52_: ;
25308 				{
25309 					if (!canRaise) goto LA67_;
25310 					raiseExit__cgen_11481(p);
25311 				}
25312 				LA67_: ;
25313 				genAssignment__cgen_10369(p, (*d), tmp, 0);
25314 			}
25315 			LA19_: ;
25316 		}
25317 		goto LA7_;
25318 		LA10_: ;
25319 		{
25320 			NIM_BOOL T70_;
25321 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA list;
25322 			T70_ = (NIM_BOOL)0;
25323 			T70_ = isHarmlessStore__cgen_11608(p, canRaise, (*d));
25324 			if (!T70_) goto LA71_;
25325 			{
25326 				if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA75_;
25327 				getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], d, NIM_FALSE);
25328 			}
25329 			LA75_: ;
25330 			nimZeroMem((void*)(&list), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
25331 			initLoc__cgen_60((&list), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), (*d).lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
25332 			{
25333 				tyArray__f7nG5LD47BH5K9c6mASit3g T81_;
25334 				if (!(((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 15))&63U)))!=0)) goto LA79_;
25335 				nimZeroMem((void*)T81_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
25336 				T81_[0] = rdLoc__cgen_425(op);
25337 				T81_[1] = pl;
25338 				T81_[2] = addComma__cgen_12363(pl);
25339 				T81_[3] = rawProc;
25340 				list.r = percent___cgen_12476(T81_, 4);
25341 			}
25342 			goto LA77_;
25343 			LA79_: ;
25344 			{
25345 				tyArray__f7nG5LD47BH5K9c6mASit3g T83_;
25346 				nimZeroMem((void*)T83_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
25347 				T83_[0] = rdLoc__cgen_425(op);
25348 				T83_[1] = pl;
25349 				T83_[2] = addComma__cgen_12363(pl);
25350 				T83_[3] = rawProc;
25351 				list.r = percent___cgen_12481(T83_, 4);
25352 			}
25353 			LA77_: ;
25354 			genAssignment__cgen_10369(p, (*d), list, 0);
25355 			{
25356 				if (!canRaise) goto LA86_;
25357 				raiseExit__cgen_11481(p);
25358 			}
25359 			LA86_: ;
25360 		}
25361 		goto LA7_;
25362 		LA71_: ;
25363 		{
25364 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp_2;
25365 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA list_2;
25366 			nimZeroMem((void*)(&tmp_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
25367 			getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], (&tmp_2), NIM_FALSE);
25368 			nimZeroMem((void*)(&list_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
25369 			initLoc__cgen_60((&list_2), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), (*d).lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
25370 			{
25371 				tyArray__f7nG5LD47BH5K9c6mASit3g T93_;
25372 				if (!(((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 15))&63U)))!=0)) goto LA91_;
25373 				nimZeroMem((void*)T93_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
25374 				T93_[0] = rdLoc__cgen_425(op);
25375 				T93_[1] = pl;
25376 				T93_[2] = addComma__cgen_12363(pl);
25377 				T93_[3] = rawProc;
25378 				list_2.r = percent___cgen_12476(T93_, 4);
25379 			}
25380 			goto LA89_;
25381 			LA91_: ;
25382 			{
25383 				tyArray__f7nG5LD47BH5K9c6mASit3g T95_;
25384 				nimZeroMem((void*)T95_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
25385 				T95_[0] = rdLoc__cgen_425(op);
25386 				T95_[1] = pl;
25387 				T95_[2] = addComma__cgen_12363(pl);
25388 				T95_[3] = rawProc;
25389 				list_2.r = percent___cgen_12481(T95_, 4);
25390 			}
25391 			LA89_: ;
25392 			genAssignment__cgen_10369(p, tmp_2, list_2, 0);
25393 			{
25394 				if (!canRaise) goto LA98_;
25395 				raiseExit__cgen_11481(p);
25396 			}
25397 			LA98_: ;
25398 			genAssignment__cgen_10369(p, (*d), tmp_2, 0);
25399 		}
25400 		LA7_: ;
25401 	}
25402 	goto LA3_;
25403 	LA5_: ;
25404 	{
25405 		{
25406 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T105_;
25407 			tyArray__f7nG5LD47BH5K9c6mASit3g T106_;
25408 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T107_;
25409 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T108_;
25410 			if (!(((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 15))&63U)))!=0)) goto LA103_;
25411 			T105_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
25412 			T105_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
25413 			nimZeroMem((void*)T106_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
25414 			T106_[0] = rdLoc__cgen_425(op);
25415 			T106_[1] = pl;
25416 			T106_[2] = addComma__cgen_12363(pl);
25417 			T106_[3] = rawProc;
25418 			T107_ = NIM_NIL;
25419 			T107_ = percent___cgen_12435(T106_, 4);
25420 			T108_ = NIM_NIL;
25421 			T108_ = indentLine__cgen_280(p, T107_);
25422 			add__ropes_159(T105_, T108_);
25423 		}
25424 		goto LA101_;
25425 		LA103_: ;
25426 		{
25427 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T110_;
25428 			tyArray__f7nG5LD47BH5K9c6mASit3g T111_;
25429 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T112_;
25430 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T113_;
25431 			T110_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
25432 			T110_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
25433 			nimZeroMem((void*)T111_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
25434 			T111_[0] = rdLoc__cgen_425(op);
25435 			T111_[1] = pl;
25436 			T111_[2] = addComma__cgen_12363(pl);
25437 			T111_[3] = rawProc;
25438 			T112_ = NIM_NIL;
25439 			T112_ = percent___cgen_12440(T111_, 4);
25440 			T113_ = NIM_NIL;
25441 			T113_ = indentLine__cgen_280(p, T112_);
25442 			add__ropes_159(T110_, T113_);
25443 		}
25444 		LA101_: ;
25445 		{
25446 			if (!canRaise) goto LA116_;
25447 			raiseExit__cgen_11481(p);
25448 		}
25449 		LA116_: ;
25450 	}
25451 	LA3_: ;
25452 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11635)25453 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11635)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
25454 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
25455 	result = NIM_NIL;
25456 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69), args, argsLen_0);
25457 	return result;
25458 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11681)25459 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11681)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
25460 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
25461 	result = NIM_NIL;
25462 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68), args, argsLen_0);
25463 	return result;
25464 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,skipAddrDeref__cgen_12556)25465 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipAddrDeref__cgen_12556)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* node) {
25466 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
25467 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
25468 	NIM_BOOL isAddr;
25469 {	result = NIM_NIL;
25470 	n = node;
25471 	isAddr = NIM_FALSE;
25472 	switch ((*n).kind) {
25473 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
25474 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
25475 	{
25476 		n = (*n)._kind_6.sons->data[((NI) 0)];
25477 		isAddr = NIM_TRUE;
25478 	}
25479 	break;
25480 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47):
25481 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65):
25482 	{
25483 		n = (*n)._kind_6.sons->data[((NI) 0)];
25484 	}
25485 	break;
25486 	default:
25487 	{
25488 		result = n;
25489 		goto BeforeRet_;
25490 	}
25491 	break;
25492 	}
25493 	{
25494 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66))) goto LA6_;
25495 		n = (*n)._kind_6.sons->data[((NI) 0)];
25496 	}
25497 	LA6_: ;
25498 	{
25499 		NIM_BOOL T10_;
25500 		T10_ = (NIM_BOOL)0;
25501 		T10_ = isAddr;
25502 		if (!(T10_)) goto LA11_;
25503 		T10_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65));
25504 		LA11_: ;
25505 		if (!T10_) goto LA12_;
25506 		result = (*n)._kind_6.sons->data[((NI) 0)];
25507 	}
25508 	goto LA8_;
25509 	LA12_: ;
25510 	{
25511 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA15_;
25512 		result = (*n)._kind_6.sons->data[((NI) 0)];
25513 	}
25514 	goto LA8_;
25515 	LA15_: ;
25516 	{
25517 		result = node;
25518 	}
25519 	LA8_: ;
25520 	}BeforeRet_: ;
25521 	return result;
25522 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genThisArg__cgen_12578)25523 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genThisArg__cgen_12578)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, NI i, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
25524 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
25525 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri_2;
25526 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
25527 	result = NIM_NIL;
25528 	{
25529 		NI T3_;
25530 		NimStringDesc* argX60gensym1408_;
25531 		T3_ = (NI)0;
25532 		T3_ = len__ast_4002(typ);
25533 		if (!!((i < T3_))) goto LA4_;
25534 		argX60gensym1408_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_613);
25535 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, argX60gensym1408_, TM__MQdRN7fpbG7rPm4JpVVAhA_613);
25536 	}
25537 	LA4_: ;
25538 	ri_2 = (*ri)._kind_6.sons->data[i];
25539 	{
25540 		while (1) {
25541 			if (!((*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66))) goto LA7;
25542 			ri_2 = (*ri_2)._kind_6.sons->data[((NI) 0)];
25543 		} LA7: ;
25544 	}
25545 	t = skipTypes__ast_3735((*typ).sons->data[i], TM__MQdRN7fpbG7rPm4JpVVAhA_614);
25546 	{
25547 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
25548 		if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23))) goto LA10_;
25549 		{
25550 			if (!((*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA14_;
25551 			x = (*ri_2)._kind_6.sons->data[((NI) 0)];
25552 		}
25553 		goto LA12_;
25554 		LA14_: ;
25555 		{
25556 			x = ri_2;
25557 		}
25558 		LA12_: ;
25559 		{
25560 			if (!((*(*x).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21))) goto LA19_;
25561 			result = genArgNoParam__cgen_12115(p, x, NIM_FALSE);
25562 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_615));
25563 		}
25564 		goto LA17_;
25565 		LA19_: ;
25566 		{
25567 			NIM_BOOL T22_;
25568 			T22_ = (NIM_BOOL)0;
25569 			T22_ = ((*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65) || (*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47));
25570 			if (!(T22_)) goto LA23_;
25571 			T22_ = ((*(*(*x)._kind_6.sons->data[((NI) 0)]).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21));
25572 			LA23_: ;
25573 			if (!T22_) goto LA24_;
25574 			result = genArgNoParam__cgen_12115(p, (*x)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
25575 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_615));
25576 		}
25577 		goto LA17_;
25578 		LA24_: ;
25579 		{
25580 			result = genArgNoParam__cgen_12115(p, x, NIM_FALSE);
25581 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128));
25582 		}
25583 		LA17_: ;
25584 	}
25585 	goto LA8_;
25586 	LA10_: ;
25587 	{
25588 		if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21))) goto LA28_;
25589 		{
25590 			if (!((*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63) || (*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA32_;
25591 			result = genArgNoParam__cgen_12115(p, (*ri_2)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
25592 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128));
25593 		}
25594 		goto LA30_;
25595 		LA32_: ;
25596 		{
25597 			result = genArgNoParam__cgen_12115(p, ri_2, NIM_FALSE);
25598 			add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_615));
25599 		}
25600 		LA30_: ;
25601 	}
25602 	goto LA8_;
25603 	LA28_: ;
25604 	{
25605 		ri_2 = skipAddrDeref__cgen_12556(ri_2);
25606 		{
25607 			if (!((*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63) || (*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA38_;
25608 			ri_2 = (*ri_2)._kind_6.sons->data[((NI) 0)];
25609 		}
25610 		LA38_: ;
25611 		result = genArgNoParam__cgen_12115(p, ri_2, NIM_FALSE);
25612 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128));
25613 	}
25614 	LA8_: ;
25615 	return result;
25616 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genPatternCall__cgen_12646)25617 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genPatternCall__cgen_12646)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, NimStringDesc* pat, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
25618 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
25619 	NI i;
25620 	NI j;
25621 	result = NIM_NIL;
25622 	i = ((NI) 0);
25623 	j = ((NI) 1);
25624 	{
25625 		while (1) {
25626 			if (!(i < (pat ? pat->Sup.len : 0))) goto LA2;
25627 			switch (((NU8)(pat->data[i]))) {
25628 			case 64:
25629 			{
25630 				NIM_BOOL first;
25631 				first = NIM_TRUE;
25632 				{
25633 					NI k;
25634 					NI colontmp_;
25635 					NI i_2;
25636 					k = (NI)0;
25637 					colontmp_ = (NI)0;
25638 					colontmp_ = len__ast_3198(ri);
25639 					i_2 = j;
25640 					{
25641 						while (1) {
25642 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* arg;
25643 							if (!(i_2 < colontmp_)) goto LA6;
25644 							k = i_2;
25645 							arg = genOtherArg__cgen_11476(p, ri, k, typ);
25646 							{
25647 								NI T9_;
25648 								T9_ = (NI)0;
25649 								T9_ = len__ropes_10(arg);
25650 								if (!(((NI) 0) < T9_)) goto LA10_;
25651 								{
25652 									tyArray__qTjAvTvKF9anytN1At69aJMQ T16_;
25653 									tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
25654 									if (!!(first)) goto LA14_;
25655 									nimZeroMem((void*)T16_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
25656 									T17_ = NIM_NIL;
25657 									T17_ = percent___cgen_3519(T16_, 0);
25658 									add__ropes_159(&result, T17_);
25659 								}
25660 								LA14_: ;
25661 								first = NIM_FALSE;
25662 								add__ropes_159(&result, arg);
25663 							}
25664 							LA10_: ;
25665 							i_2 += ((NI) 1);
25666 						} LA6: ;
25667 					}
25668 				}
25669 				i += ((NI) 1);
25670 			}
25671 			break;
25672 			case 35:
25673 			{
25674 				{
25675 					NIM_BOOL T21_;
25676 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri_2;
25677 					T21_ = (NIM_BOOL)0;
25678 					T21_ = ((NI)(i + ((NI) 1)) < (pat ? pat->Sup.len : 0));
25679 					if (!(T21_)) goto LA22_;
25680 					T21_ = (((NU8)(pat->data[(NI)(i + ((NI) 1))])) == ((NU8)(43)) || ((NU8)(pat->data[(NI)(i + ((NI) 1))])) == ((NU8)(64)));
25681 					LA22_: ;
25682 					if (!T21_) goto LA23_;
25683 					ri_2 = (*ri)._kind_6.sons->data[j];
25684 					{
25685 						tyObject_TType__facALICuu8zUj0hjvbTLFg* typ_2;
25686 						tyArray__qTjAvTvKF9anytN1At69aJMQ T34_;
25687 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
25688 						tyArray__qTjAvTvKF9anytN1At69aJMQ T48_;
25689 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
25690 						if (!((*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*ri_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32))) goto LA27_;
25691 						typ_2 = skipTypes__ast_3735((*(*ri_2)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
25692 						{
25693 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
25694 							if (!((NU8)(pat->data[(NI)(i + ((NI) 1))]) == (NU8)(43))) goto LA31_;
25695 							T33_ = NIM_NIL;
25696 							T33_ = genArgNoParam__cgen_12115(p, (*ri_2)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
25697 							add__ropes_159(&result, T33_);
25698 						}
25699 						LA31_: ;
25700 						nimZeroMem((void*)T34_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
25701 						T35_ = NIM_NIL;
25702 						T35_ = percent___cgen_11635(T34_, 0);
25703 						add__ropes_159(&result, T35_);
25704 						{
25705 							NI T38_;
25706 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
25707 							T38_ = (NI)0;
25708 							T38_ = len__ast_3198(ri_2);
25709 							if (!(((NI) 1) < T38_)) goto LA39_;
25710 							T41_ = NIM_NIL;
25711 							T41_ = genOtherArg__cgen_11476(p, ri_2, ((NI) 1), typ_2);
25712 							add__ropes_159(&result, T41_);
25713 						}
25714 						LA39_: ;
25715 						{
25716 							NI k_2;
25717 							NI colontmp__2;
25718 							NI colontmp__3;
25719 							NI i_3;
25720 							k_2 = (NI)0;
25721 							colontmp__2 = (NI)0;
25722 							colontmp__3 = (NI)0;
25723 							colontmp__2 = (NI)(j + ((NI) 1));
25724 							colontmp__3 = len__ast_3198(ri_2);
25725 							i_3 = colontmp__2;
25726 							{
25727 								while (1) {
25728 									tyArray__qTjAvTvKF9anytN1At69aJMQ T45_;
25729 									tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
25730 									tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
25731 									if (!(i_3 < colontmp__3)) goto LA44;
25732 									k_2 = i_3;
25733 									nimZeroMem((void*)T45_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
25734 									T46_ = NIM_NIL;
25735 									T46_ = percent___cgen_3519(T45_, 0);
25736 									add__ropes_159(&result, T46_);
25737 									T47_ = NIM_NIL;
25738 									T47_ = genOtherArg__cgen_11476(p, ri_2, k_2, typ_2);
25739 									add__ropes_159(&result, T47_);
25740 									i_3 += ((NI) 1);
25741 								} LA44: ;
25742 							}
25743 						}
25744 						nimZeroMem((void*)T48_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
25745 						T49_ = NIM_NIL;
25746 						T49_ = percent___cgen_11681(T48_, 0);
25747 						add__ropes_159(&result, T49_);
25748 					}
25749 					goto LA25_;
25750 					LA27_: ;
25751 					{
25752 						liMessage__msgs_1118((*(*(*p).module).g).config, (*ri_2).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_611), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_612, NIM_FALSE);
25753 					}
25754 					LA25_: ;
25755 					i += ((NI) 1);
25756 				}
25757 				goto LA19_;
25758 				LA23_: ;
25759 				{
25760 					NIM_BOOL T52_;
25761 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
25762 					T52_ = (NIM_BOOL)0;
25763 					T52_ = ((NI)(i + ((NI) 1)) < (pat ? pat->Sup.len : 0));
25764 					if (!(T52_)) goto LA53_;
25765 					T52_ = ((NU8)(pat->data[(NI)(i + ((NI) 1))]) == (NU8)(46));
25766 					LA53_: ;
25767 					if (!T52_) goto LA54_;
25768 					T56_ = NIM_NIL;
25769 					T56_ = genThisArg__cgen_12578(p, ri, j, typ);
25770 					add__ropes_159(&result, T56_);
25771 					i += ((NI) 1);
25772 				}
25773 				goto LA19_;
25774 				LA54_: ;
25775 				{
25776 					NIM_BOOL T58_;
25777 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg_2;
25778 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
25779 					T58_ = (NIM_BOOL)0;
25780 					T58_ = ((NI)(i + ((NI) 1)) < (pat ? pat->Sup.len : 0));
25781 					if (!(T58_)) goto LA59_;
25782 					T58_ = ((NU8)(pat->data[(NI)(i + ((NI) 1))]) == (NU8)(91));
25783 					LA59_: ;
25784 					if (!T58_) goto LA60_;
25785 					arg_2 = skipAddrDeref__cgen_12556((*ri)._kind_6.sons->data[j]);
25786 					{
25787 						while (1) {
25788 							if (!((*arg_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63) || (*arg_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64) || (*arg_2).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66))) goto LA63;
25789 							arg_2 = (*arg_2)._kind_6.sons->data[((NI) 0)];
25790 						} LA63: ;
25791 					}
25792 					T64_ = NIM_NIL;
25793 					T64_ = genArgNoParam__cgen_12115(p, arg_2, NIM_FALSE);
25794 					add__ropes_159(&result, T64_);
25795 				}
25796 				goto LA19_;
25797 				LA60_: ;
25798 				{
25799 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
25800 					T66_ = NIM_NIL;
25801 					T66_ = genOtherArg__cgen_11476(p, ri, j, typ);
25802 					add__ropes_159(&result, T66_);
25803 				}
25804 				LA19_: ;
25805 				j += ((NI) 1);
25806 				i += ((NI) 1);
25807 			}
25808 			break;
25809 			case 39:
25810 			{
25811 				NI idx;
25812 				NI stars;
25813 				idx = (NI)0;
25814 				stars = (NI)0;
25815 				{
25816 					NIM_BOOL T70_;
25817 					tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
25818 					T70_ = (NIM_BOOL)0;
25819 					T70_ = scanCppGenericSlot__cgen_3955(pat, (&i), (&idx), (&stars));
25820 					if (!T70_) goto LA71_;
25821 					t = resolveStarsInCppType__cgen_3984(typ, idx, stars);
25822 					{
25823 						tyArray__qTjAvTvKF9anytN1At69aJMQ T77_;
25824 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T78_;
25825 						if (!(t == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA75_;
25826 						nimZeroMem((void*)T77_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
25827 						T78_ = NIM_NIL;
25828 						T78_ = percent___cgen_3494(T77_, 0);
25829 						add__ropes_159(&result, T78_);
25830 					}
25831 					goto LA73_;
25832 					LA75_: ;
25833 					{
25834 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T80_;
25835 						T80_ = NIM_NIL;
25836 						T80_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
25837 						add__ropes_159(&result, T80_);
25838 					}
25839 					LA73_: ;
25840 				}
25841 				LA71_: ;
25842 			}
25843 			break;
25844 			default:
25845 			{
25846 				NI start;
25847 				start = i;
25848 				{
25849 					while (1) {
25850 						if (!(i < (pat ? pat->Sup.len : 0))) goto LA83;
25851 						{
25852 							if (!!((((NU8)(pat->data[i])) == ((NU8)(64)) || ((NU8)(pat->data[i])) == ((NU8)(35)) || ((NU8)(pat->data[i])) == ((NU8)(39))))) goto LA86_;
25853 							i += ((NI) 1);
25854 						}
25855 						goto LA84_;
25856 						LA86_: ;
25857 						{
25858 							goto LA82;
25859 						}
25860 						LA84_: ;
25861 					} LA83: ;
25862 				} LA82: ;
25863 				{
25864 					NimStringDesc* T93_;
25865 					if (!(start <= (NI)(i - ((NI) 1)))) goto LA91_;
25866 					T93_ = NIM_NIL;
25867 					T93_ = substr__system_7743(pat, start, (NI)(i - ((NI) 1)));
25868 					add__ropes_162(&result, T93_);
25869 				}
25870 				LA91_: ;
25871 			}
25872 			break;
25873 			}
25874 		} LA2: ;
25875 	}
25876 	return result;
25877 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_12819)25878 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12819)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
25879 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
25880 	result = NIM_NIL;
25881 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_533), args, argsLen_0);
25882 	return result;
25883 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11670)25884 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11670)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
25885 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
25886 	result = NIM_NIL;
25887 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_616), args, argsLen_0);
25888 	return result;
25889 }
N_NIMCALL(void,getTempCpp__cgen_11017)25890 N_LIB_PRIVATE N_NIMCALL(void, getTempCpp__cgen_11017)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* value) {
25891 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
25892 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
25893 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T3_;
25894 	NimStringDesc* res;
25895 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
25896 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
25897 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
25898 	(*p).labels += ((NI) 1);
25899 	T1_ = NIM_NIL;
25900 	T1_ = rope__ropes_115(((NI64) ((*p).labels)));
25901 	T2_ = NIM_NIL;
25902 	T2_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_169), T1_);
25903 	unsureAsgnRef((void**) (&(*result).r), amp___ropes_140(T2_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3)));
25904 	T3_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
25905 	T3_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
25906 	res = rawNewString(((NI) 80));
25907 	T4_ = NIM_NIL;
25908 	T4_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
25909 	cgFormatValue__cgen_141((&res), T4_);
25910 	res = resizeString(res, 1);
25911 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
25912 	cgFormatValue__cgen_141((&res), (*result).r);
25913 	res = resizeString(res, 3);
25914 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
25915 	cgFormatValue__cgen_141((&res), value);
25916 	res = resizeString(res, 1);
25917 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
25918 	{
25919 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA7_;
25920 		res = resizeString(res, 1);
25921 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
25922 	}
25923 	LA7_: ;
25924 	T9_ = NIM_NIL;
25925 	T9_ = rope__ropes_109(res);
25926 	T10_ = NIM_NIL;
25927 	T10_ = indentLine__cgen_280(p, T9_);
25928 	add__ropes_159(T3_, T10_);
25929 	(*result).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1);
25930 	unsureAsgnRef((void**) (&(*result).lode), lodeTyp__cgen_86(t));
25931 	(*result).storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2);
25932 	(*result).flags = 0;
25933 }
N_NIMCALL(void,fixupCall__cgen_11622)25934 N_LIB_PRIVATE N_NIMCALL(void, fixupCall__cgen_11622)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* callee, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* params) {
25935 	NIM_BOOL canRaise;
25936 	NIM_BOOL T1_;
25937 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* pl;
25938 	tyArray__qTjAvTvKF9anytN1At69aJMQ T3_;
25939 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
25940 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
25941 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
25942 	T1_ = (NIM_BOOL)0;
25943 	T1_ = ((*(*(*(*p).module).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 3));
25944 	if (!(T1_)) goto LA2_;
25945 	T1_ = canRaiseDisp__cgen_11523(p, (*ri)._kind_6.sons->data[((NI) 0)]);
25946 	LA2_: ;
25947 	canRaise = T1_;
25948 	genLineDir__cgen_359(p, ri);
25949 	nimZeroMem((void*)T3_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
25950 	T4_ = NIM_NIL;
25951 	T4_ = percent___cgen_11635(T3_, 0);
25952 	T5_ = NIM_NIL;
25953 	T5_ = amp___ropes_128(callee, T4_);
25954 	pl = amp___ropes_128(T5_, params);
25955 	typ = skipTypes__ast_3735((*(*ri)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
25956 	{
25957 		if (!!(((*typ).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA8_;
25958 		{
25959 			NIM_BOOL T12_;
25960 			T12_ = (NIM_BOOL)0;
25961 			T12_ = isInvalidReturnType__cgen_1335((*(*(*p).module).g).config, (*typ).sons->data[((NI) 0)]);
25962 			if (!T12_) goto LA13_;
25963 			{
25964 				tyArray__qTjAvTvKF9anytN1At69aJMQ T19_;
25965 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
25966 				if (!!((params == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA17_;
25967 				nimZeroMem((void*)T19_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
25968 				T20_ = NIM_NIL;
25969 				T20_ = percent___cgen_3519(T19_, 0);
25970 				add__ropes_159(&pl, T20_);
25971 			}
25972 			LA17_: ;
25973 			{
25974 				NIM_BOOL T23_;
25975 				NIM_BOOL T25_;
25976 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
25977 				tyArray__qTjAvTvKF9anytN1At69aJMQ T39_;
25978 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
25979 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T41_;
25980 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
25981 				T23_ = (NIM_BOOL)0;
25982 				T23_ = ((3 &((NU16)1<<((NU)((*d).k)&15U)))!=0);
25983 				if (T23_) goto LA24_;
25984 				T25_ = (NIM_BOOL)0;
25985 				T25_ = preventNrvo__cgen_11551(p, le, ri);
25986 				T23_ = !(T25_);
25987 				LA24_: ;
25988 				if (!T23_) goto LA26_;
25989 				{
25990 					if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA30_;
25991 					getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], d, NIM_TRUE);
25992 				}
25993 				goto LA28_;
25994 				LA30_: ;
25995 				{
25996 					NIM_BOOL T33_;
25997 					NIM_BOOL T35_;
25998 					T33_ = (NIM_BOOL)0;
25999 					T33_ = !(((2 &((NU16)1<<((NU)((*d).k)&15U)))!=0));
26000 					if (!(T33_)) goto LA34_;
26001 					T35_ = (NIM_BOOL)0;
26002 					T35_ = hasNoInit__cgen_11595(ri);
26003 					T33_ = !(T35_);
26004 					LA34_: ;
26005 					if (!T33_) goto LA36_;
26006 				}
26007 				goto LA28_;
26008 				LA36_: ;
26009 				LA28_: ;
26010 				T38_ = NIM_NIL;
26011 				T38_ = addrLoc__cgen_10303((*(*(*p).module).g).config, (*d));
26012 				add__ropes_159(&pl, T38_);
26013 				nimZeroMem((void*)T39_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26014 				T40_ = NIM_NIL;
26015 				T40_ = percent___cgen_11670(T39_, 0);
26016 				add__ropes_159(&pl, T40_);
26017 				T41_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
26018 				T41_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
26019 				T42_ = NIM_NIL;
26020 				T42_ = indentLine__cgen_280(p, pl);
26021 				add__ropes_159(T41_, T42_);
26022 			}
26023 			goto LA21_;
26024 			LA26_: ;
26025 			{
26026 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
26027 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
26028 				tyArray__qTjAvTvKF9anytN1At69aJMQ T45_;
26029 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
26030 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T47_;
26031 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
26032 				nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26033 				getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], (&tmp), NIM_TRUE);
26034 				T44_ = NIM_NIL;
26035 				T44_ = addrLoc__cgen_10303((*(*(*p).module).g).config, tmp);
26036 				add__ropes_159(&pl, T44_);
26037 				nimZeroMem((void*)T45_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26038 				T46_ = NIM_NIL;
26039 				T46_ = percent___cgen_11670(T45_, 0);
26040 				add__ropes_159(&pl, T46_);
26041 				T47_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
26042 				T47_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
26043 				T48_ = NIM_NIL;
26044 				T48_ = indentLine__cgen_280(p, pl);
26045 				add__ropes_159(T47_, T48_);
26046 				genAssignment__cgen_10369(p, (*d), tmp, 0);
26047 			}
26048 			LA21_: ;
26049 			{
26050 				if (!canRaise) goto LA51_;
26051 				raiseExit__cgen_11481(p);
26052 			}
26053 			LA51_: ;
26054 		}
26055 		goto LA10_;
26056 		LA13_: ;
26057 		{
26058 			tyArray__qTjAvTvKF9anytN1At69aJMQ T54_;
26059 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T55_;
26060 			nimZeroMem((void*)T54_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26061 			T55_ = NIM_NIL;
26062 			T55_ = percent___cgen_11681(T54_, 0);
26063 			add__ropes_159(&pl, T55_);
26064 			{
26065 				NIM_BOOL T58_;
26066 				T58_ = (NIM_BOOL)0;
26067 				T58_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
26068 				if (T58_) goto LA59_;
26069 				T58_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
26070 				LA59_: ;
26071 				if (!T58_) goto LA60_;
26072 				{
26073 					if (!(((*d).flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 8))&15U)))!=0)) goto LA64_;
26074 					(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9);
26075 					unsureAsgnRef((void**) (&(*d).r), pl);
26076 					(*d).flags &= ~(((NU16)1) << ((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 8)) & 15));
26077 				}
26078 				goto LA62_;
26079 				LA64_: ;
26080 				{
26081 					{
26082 						NIM_BOOL T69_;
26083 						T69_ = (NIM_BOOL)0;
26084 						T69_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0));
26085 						if (!(T69_)) goto LA70_;
26086 						T69_ = ((*p).splitDecls == ((NI) 0));
26087 						LA70_: ;
26088 						if (!T69_) goto LA71_;
26089 						getTempCpp__cgen_11017(p, (*typ).sons->data[((NI) 0)], d, pl);
26090 					}
26091 					goto LA67_;
26092 					LA71_: ;
26093 					{
26094 						tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA list;
26095 						{
26096 							if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA76_;
26097 							getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], d, NIM_FALSE);
26098 						}
26099 						LA76_: ;
26100 						nimZeroMem((void*)(&list), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26101 						initLoc__cgen_60((&list), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), (*d).lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
26102 						list.r = pl;
26103 						genAssignment__cgen_10369(p, (*d), list, 0);
26104 						{
26105 							if (!canRaise) goto LA80_;
26106 							raiseExit__cgen_11481(p);
26107 						}
26108 						LA80_: ;
26109 					}
26110 					LA67_: ;
26111 				}
26112 				LA62_: ;
26113 			}
26114 			goto LA56_;
26115 			LA60_: ;
26116 			{
26117 				NIM_BOOL T83_;
26118 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA list_2;
26119 				T83_ = (NIM_BOOL)0;
26120 				T83_ = isHarmlessStore__cgen_11608(p, canRaise, (*d));
26121 				if (!T83_) goto LA84_;
26122 				{
26123 					if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA88_;
26124 					getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], d, NIM_FALSE);
26125 				}
26126 				LA88_: ;
26127 				nimZeroMem((void*)(&list_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26128 				initLoc__cgen_60((&list_2), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), (*d).lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
26129 				list_2.r = pl;
26130 				genAssignment__cgen_10369(p, (*d), list_2, 0);
26131 				{
26132 					if (!canRaise) goto LA92_;
26133 					raiseExit__cgen_11481(p);
26134 				}
26135 				LA92_: ;
26136 			}
26137 			goto LA56_;
26138 			LA84_: ;
26139 			{
26140 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp_2;
26141 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA list_3;
26142 				nimZeroMem((void*)(&tmp_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26143 				getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], (&tmp_2), NIM_TRUE);
26144 				nimZeroMem((void*)(&list_3), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26145 				initLoc__cgen_60((&list_3), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), (*d).lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
26146 				list_3.r = pl;
26147 				genAssignment__cgen_10369(p, tmp_2, list_3, 0);
26148 				{
26149 					if (!canRaise) goto LA97_;
26150 					raiseExit__cgen_11481(p);
26151 				}
26152 				LA97_: ;
26153 				genAssignment__cgen_10369(p, (*d), tmp_2, 0);
26154 			}
26155 			LA56_: ;
26156 		}
26157 		LA10_: ;
26158 	}
26159 	goto LA6_;
26160 	LA8_: ;
26161 	{
26162 		tyArray__qTjAvTvKF9anytN1At69aJMQ T100_;
26163 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T101_;
26164 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T102_;
26165 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T103_;
26166 		nimZeroMem((void*)T100_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26167 		T101_ = NIM_NIL;
26168 		T101_ = percent___cgen_11670(T100_, 0);
26169 		add__ropes_159(&pl, T101_);
26170 		T102_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
26171 		T102_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
26172 		T103_ = NIM_NIL;
26173 		T103_ = indentLine__cgen_280(p, pl);
26174 		add__ropes_159(T102_, T103_);
26175 		{
26176 			if (!canRaise) goto LA106_;
26177 			raiseExit__cgen_11481(p);
26178 		}
26179 		LA106_: ;
26180 	}
26181 	LA6_: ;
26182 }
N_NIMCALL(void,genInfixCall__cgen_12751)26183 N_LIB_PRIVATE N_NIMCALL(void, genInfixCall__cgen_12751)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
26184 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA op;
26185 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
26186 	NimStringDesc* pat;
26187 	nimZeroMem((void*)(&op), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26188 	initLocExpr__cgen_11483(p, (*ri)._kind_6.sons->data[((NI) 0)], (&op));
26189 	typ = skipTypes__ast_3735((*(*ri)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
26190 	pat = (*(*(*(*ri)._kind_6.sons->data[((NI) 0)])._kind_4.sym).loc.r).data;
26191 	{
26192 		NimStringDesc* argX60gensym1453_;
26193 		if (!!((((NI) 0) < (pat ? pat->Sup.len : 0)))) goto LA3_;
26194 		argX60gensym1453_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_609);
26195 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, argX60gensym1453_, TM__MQdRN7fpbG7rPm4JpVVAhA_609);
26196 	}
26197 	LA3_: ;
26198 	{
26199 		NIM_BOOL T7_;
26200 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* pl;
26201 		tyObject_TType__facALICuu8zUj0hjvbTLFg* typ_2;
26202 		T7_ = (NIM_BOOL)0;
26203 		T7_ = contains__pureZstrutils_1635(pat, TM__MQdRN7fpbG7rPm4JpVVAhA_610);
26204 		if (!T7_) goto LA8_;
26205 		pl = genPatternCall__cgen_12646(p, ri, pat, typ);
26206 		typ_2 = skipTypes__ast_3735((*(*ri)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
26207 		{
26208 			if (!!(((*typ_2).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA12_;
26209 			{
26210 				NIM_BOOL T16_;
26211 				NIM_BOOL T17_;
26212 				T16_ = (NIM_BOOL)0;
26213 				T17_ = (NIM_BOOL)0;
26214 				T17_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
26215 				if (T17_) goto LA18_;
26216 				T17_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
26217 				LA18_: ;
26218 				T16_ = T17_;
26219 				if (!(T16_)) goto LA19_;
26220 				T16_ = (((*d).flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 8))&15U)))!=0);
26221 				LA19_: ;
26222 				if (!T16_) goto LA20_;
26223 				(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9);
26224 				unsureAsgnRef((void**) (&(*d).r), pl);
26225 				(*d).flags &= ~(((NU16)1) << ((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 8)) & 15));
26226 			}
26227 			goto LA14_;
26228 			LA20_: ;
26229 			{
26230 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA list;
26231 				{
26232 					if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA25_;
26233 					getTemp__cgen_7343(p, (*typ_2).sons->data[((NI) 0)], d, NIM_FALSE);
26234 				}
26235 				LA25_: ;
26236 				nimZeroMem((void*)(&list), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26237 				initLoc__cgen_60((&list), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), (*d).lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
26238 				list.r = pl;
26239 				genAssignment__cgen_10369(p, (*d), list, 0);
26240 			}
26241 			LA14_: ;
26242 		}
26243 		goto LA10_;
26244 		LA12_: ;
26245 		{
26246 			tyArray__qTjAvTvKF9anytN1At69aJMQ T28_;
26247 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
26248 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T30_;
26249 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
26250 			nimZeroMem((void*)T28_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26251 			T29_ = NIM_NIL;
26252 			T29_ = percent___cgen_12819(T28_, 0);
26253 			add__ropes_159(&pl, T29_);
26254 			T30_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
26255 			T30_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
26256 			T31_ = NIM_NIL;
26257 			T31_ = indentLine__cgen_280(p, pl);
26258 			add__ropes_159(T30_, T31_);
26259 		}
26260 		LA10_: ;
26261 	}
26262 	goto LA5_;
26263 	LA8_: ;
26264 	{
26265 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* pl_2;
26266 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* params;
26267 		pl_2 = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
26268 		{
26269 			NI T35_;
26270 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
26271 			T35_ = (NI)0;
26272 			T35_ = len__ast_3198(ri);
26273 			if (!(((NI) 1) < T35_)) goto LA36_;
26274 			T38_ = NIM_NIL;
26275 			T38_ = genThisArg__cgen_12578(p, ri, ((NI) 1), typ);
26276 			add__ropes_159(&pl_2, T38_);
26277 		}
26278 		LA36_: ;
26279 		add__ropes_159(&pl_2, op.r);
26280 		params = NIM_NIL;
26281 		{
26282 			NI i;
26283 			NI colontmp_;
26284 			NI i_2;
26285 			i = (NI)0;
26286 			colontmp_ = (NI)0;
26287 			colontmp_ = len__ast_3198(ri);
26288 			i_2 = ((NI) 2);
26289 			{
26290 				while (1) {
26291 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
26292 					if (!(i_2 < colontmp_)) goto LA41;
26293 					i = i_2;
26294 					{
26295 						tyArray__qTjAvTvKF9anytN1At69aJMQ T46_;
26296 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
26297 						if (!!((params == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA44_;
26298 						nimZeroMem((void*)T46_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26299 						T47_ = NIM_NIL;
26300 						T47_ = percent___cgen_3519(T46_, 0);
26301 						add__ropes_159(&params, T47_);
26302 					}
26303 					LA44_: ;
26304 					T48_ = NIM_NIL;
26305 					T48_ = genOtherArg__cgen_11476(p, ri, i, typ);
26306 					add__ropes_159(&params, T48_);
26307 					i_2 += ((NI) 1);
26308 				} LA41: ;
26309 			}
26310 		}
26311 		fixupCall__cgen_11622(p, le, ri, d, pl_2, params);
26312 	}
26313 	LA5_: ;
26314 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_12860)26315 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12860)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
26316 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
26317 	result = NIM_NIL;
26318 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180), args, argsLen_0);
26319 	return result;
26320 }
N_INLINE(NI,find__pureZos_656)26321 static N_INLINE(NI, find__pureZos_656)(NIM_CHAR* a, NI aLen_0, NIM_CHAR item) {
26322 	NI result;
26323 {	result = (NI)0;
26324 	result = ((NI) 0);
26325 	{
26326 		NIM_CHAR i;
26327 		NI i_2;
26328 		i = (NIM_CHAR)0;
26329 		i_2 = ((NI) 0);
26330 		{
26331 			while (1) {
26332 				if (!(i_2 < aLen_0)) goto LA3;
26333 				i = a[i_2];
26334 				{
26335 					if (!((NU8)(i) == (NU8)(item))) goto LA6_;
26336 					goto BeforeRet_;
26337 				}
26338 				LA6_: ;
26339 				result += ((NI) 1);
26340 				i_2 += ((NI) 1);
26341 			} LA3: ;
26342 		}
26343 	}
26344 	result = ((NI) -1);
26345 	}BeforeRet_: ;
26346 	return result;
26347 }
N_INLINE(NIM_BOOL,contains__pureZos_651)26348 static N_INLINE(NIM_BOOL, contains__pureZos_651)(NIM_CHAR* a, NI aLen_0, NIM_CHAR item) {
26349 	NIM_BOOL result;
26350 	NI T1_;
26351 {	result = (NIM_BOOL)0;
26352 	T1_ = (NI)0;
26353 	T1_ = find__pureZos_656(a, aLen_0, item);
26354 	result = (((NI) 0) <= T1_);
26355 	goto BeforeRet_;
26356 	}BeforeRet_: ;
26357 	return result;
26358 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_12898)26359 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12898)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
26360 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
26361 	result = NIM_NIL;
26362 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_446), args, argsLen_0);
26363 	return result;
26364 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_12984)26365 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12984)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
26366 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
26367 	result = NIM_NIL;
26368 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_620), args, argsLen_0);
26369 	return result;
26370 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_12989)26371 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_12989)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
26372 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
26373 	result = NIM_NIL;
26374 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_621), args, argsLen_0);
26375 	return result;
26376 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13000)26377 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13000)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
26378 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
26379 	result = NIM_NIL;
26380 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181), args, argsLen_0);
26381 	return result;
26382 }
N_NIMCALL(void,genNamedParamCall__cgen_12854)26383 N_LIB_PRIVATE N_NIMCALL(void, genNamedParamCall__cgen_12854)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
26384 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA op;
26385 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* pl;
26386 	tyArray__qTjAvTvKF9anytN1At69aJMQ T1_;
26387 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
26388 	NimStringDesc* pat;
26389 	NI start;
26390 	nimZeroMem((void*)(&op), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26391 	initLocExpr__cgen_11483(p, (*ri)._kind_6.sons->data[((NI) 0)], (&op));
26392 	nimZeroMem((void*)T1_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26393 	pl = percent___cgen_12860(T1_, 0);
26394 	typ = skipTypes__ast_3735((*(*ri)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
26395 	pat = (*(*(*(*ri)._kind_6.sons->data[((NI) 0)])._kind_4.sym).loc.r).data;
26396 	{
26397 		NimStringDesc* argX60gensym1482_;
26398 		if (!!((((NI) 0) < (pat ? pat->Sup.len : 0)))) goto LA4_;
26399 		argX60gensym1482_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_617);
26400 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, argX60gensym1482_, TM__MQdRN7fpbG7rPm4JpVVAhA_617);
26401 	}
26402 	LA4_: ;
26403 	start = ((NI) 3);
26404 	{
26405 		NIM_BOOL T8_;
26406 		T8_ = (NIM_BOOL)0;
26407 		T8_ = contains__pureZos_651(pat->data, (pat ? pat->Sup.len : 0), 32);
26408 		if (!T8_) goto LA9_;
26409 		start = ((NI) 1);
26410 		add__ropes_159(&pl, op.r);
26411 		{
26412 			NI T13_;
26413 			tyArray__qTjAvTvKF9anytN1At69aJMQ T16_;
26414 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
26415 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
26416 			T13_ = (NI)0;
26417 			T13_ = len__ast_3198(ri);
26418 			if (!(((NI) 1) < T13_)) goto LA14_;
26419 			nimZeroMem((void*)T16_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26420 			T17_ = NIM_NIL;
26421 			T17_ = percent___cgen_12898(T16_, 0);
26422 			add__ropes_159(&pl, T17_);
26423 			T18_ = NIM_NIL;
26424 			T18_ = genArg__cgen_12048(p, (*ri)._kind_6.sons->data[((NI) 1)], (*(*(*typ).n)._kind_6.sons->data[((NI) 1)])._kind_4.sym, ri, NIM_FALSE);
26425 			add__ropes_159(&pl, T18_);
26426 			start = ((NI) 2);
26427 		}
26428 		LA14_: ;
26429 	}
26430 	goto LA6_;
26431 	LA9_: ;
26432 	{
26433 		{
26434 			NI T22_;
26435 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
26436 			tyArray__qTjAvTvKF9anytN1At69aJMQ T26_;
26437 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
26438 			T22_ = (NI)0;
26439 			T22_ = len__ast_3198(ri);
26440 			if (!(((NI) 1) < T22_)) goto LA23_;
26441 			T25_ = NIM_NIL;
26442 			T25_ = genArg__cgen_12048(p, (*ri)._kind_6.sons->data[((NI) 1)], (*(*(*typ).n)._kind_6.sons->data[((NI) 1)])._kind_4.sym, ri, NIM_FALSE);
26443 			add__ropes_159(&pl, T25_);
26444 			nimZeroMem((void*)T26_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26445 			T27_ = NIM_NIL;
26446 			T27_ = percent___cgen_3535(T26_, 0);
26447 			add__ropes_159(&pl, T27_);
26448 		}
26449 		LA23_: ;
26450 		add__ropes_159(&pl, op.r);
26451 		{
26452 			NI T30_;
26453 			tyArray__qTjAvTvKF9anytN1At69aJMQ T33_;
26454 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
26455 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
26456 			T30_ = (NI)0;
26457 			T30_ = len__ast_3198(ri);
26458 			if (!(((NI) 2) < T30_)) goto LA31_;
26459 			nimZeroMem((void*)T33_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26460 			T34_ = NIM_NIL;
26461 			T34_ = percent___cgen_12898(T33_, 0);
26462 			add__ropes_159(&pl, T34_);
26463 			T35_ = NIM_NIL;
26464 			T35_ = genArg__cgen_12048(p, (*ri)._kind_6.sons->data[((NI) 2)], (*(*(*typ).n)._kind_6.sons->data[((NI) 2)])._kind_4.sym, ri, NIM_FALSE);
26465 			add__ropes_159(&pl, T35_);
26466 		}
26467 		LA31_: ;
26468 	}
26469 	LA6_: ;
26470 	{
26471 		NI i;
26472 		NI colontmp_;
26473 		NI i_2;
26474 		i = (NI)0;
26475 		colontmp_ = (NI)0;
26476 		colontmp_ = len__ast_3198(ri);
26477 		i_2 = start;
26478 		{
26479 			while (1) {
26480 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* param;
26481 				tyArray__qTjAvTvKF9anytN1At69aJMQ T44_;
26482 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
26483 				tyArray__qTjAvTvKF9anytN1At69aJMQ T46_;
26484 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
26485 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
26486 				if (!(i_2 < colontmp_)) goto LA38;
26487 				i = i_2;
26488 				{
26489 					NI T41_;
26490 					T41_ = (NI)0;
26491 					T41_ = len__ast_4002(typ);
26492 					if (!(T41_ <= i)) goto LA42_;
26493 					internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*ri).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_618), TM__MQdRN7fpbG7rPm4JpVVAhA_619);
26494 				}
26495 				LA42_: ;
26496 				param = (*(*(*typ).n)._kind_6.sons->data[i])._kind_4.sym;
26497 				nimZeroMem((void*)T44_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26498 				T45_ = NIM_NIL;
26499 				T45_ = percent___cgen_3535(T44_, 0);
26500 				add__ropes_159(&pl, T45_);
26501 				add__ropes_162(&pl, (*(*param).name).s);
26502 				nimZeroMem((void*)T46_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26503 				T47_ = NIM_NIL;
26504 				T47_ = percent___cgen_12898(T46_, 0);
26505 				add__ropes_159(&pl, T47_);
26506 				T48_ = NIM_NIL;
26507 				T48_ = genArg__cgen_12048(p, (*ri)._kind_6.sons->data[i], param, ri, NIM_FALSE);
26508 				add__ropes_159(&pl, T48_);
26509 				i_2 += ((NI) 1);
26510 			} LA38: ;
26511 		}
26512 	}
26513 	{
26514 		if (!!(((*typ).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA51_;
26515 		{
26516 			NIM_BOOL T55_;
26517 			T55_ = (NIM_BOOL)0;
26518 			T55_ = isInvalidReturnType__cgen_1335((*(*(*p).module).g).config, (*typ).sons->data[((NI) 0)]);
26519 			if (!T55_) goto LA56_;
26520 			{
26521 				NI T60_;
26522 				tyArray__qTjAvTvKF9anytN1At69aJMQ T63_;
26523 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
26524 				T60_ = (NI)0;
26525 				T60_ = len__ast_3198(ri);
26526 				if (!(((NI) 1) < T60_)) goto LA61_;
26527 				nimZeroMem((void*)T63_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26528 				T64_ = NIM_NIL;
26529 				T64_ = percent___cgen_3535(T63_, 0);
26530 				add__ropes_159(&pl, T64_);
26531 			}
26532 			LA61_: ;
26533 			{
26534 				tyArray__qTjAvTvKF9anytN1At69aJMQ T73_;
26535 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T74_;
26536 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T75_;
26537 				tyArray__qTjAvTvKF9anytN1At69aJMQ T76_;
26538 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T77_;
26539 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T78_;
26540 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T79_;
26541 				if (!((3 &((NU16)1<<((NU)((*d).k)&15U)))!=0)) goto LA67_;
26542 				{
26543 					if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA71_;
26544 					getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], d, NIM_TRUE);
26545 				}
26546 				LA71_: ;
26547 				nimZeroMem((void*)T73_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26548 				T74_ = NIM_NIL;
26549 				T74_ = percent___cgen_12984(T73_, 0);
26550 				add__ropes_159(&pl, T74_);
26551 				T75_ = NIM_NIL;
26552 				T75_ = addrLoc__cgen_10303((*(*(*p).module).g).config, (*d));
26553 				add__ropes_159(&pl, T75_);
26554 				nimZeroMem((void*)T76_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26555 				T77_ = NIM_NIL;
26556 				T77_ = percent___cgen_12989(T76_, 0);
26557 				add__ropes_159(&pl, T77_);
26558 				T78_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
26559 				T78_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
26560 				T79_ = NIM_NIL;
26561 				T79_ = indentLine__cgen_280(p, pl);
26562 				add__ropes_159(T78_, T79_);
26563 			}
26564 			goto LA65_;
26565 			LA67_: ;
26566 			{
26567 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
26568 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
26569 				tyArray__qTjAvTvKF9anytN1At69aJMQ T82_;
26570 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T83_;
26571 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T84_;
26572 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T85_;
26573 				nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26574 				getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], (&tmp), NIM_TRUE);
26575 				T81_ = NIM_NIL;
26576 				T81_ = addrLoc__cgen_10303((*(*(*p).module).g).config, tmp);
26577 				add__ropes_159(&pl, T81_);
26578 				nimZeroMem((void*)T82_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26579 				T83_ = NIM_NIL;
26580 				T83_ = percent___cgen_12989(T82_, 0);
26581 				add__ropes_159(&pl, T83_);
26582 				T84_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
26583 				T84_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
26584 				T85_ = NIM_NIL;
26585 				T85_ = indentLine__cgen_280(p, pl);
26586 				add__ropes_159(T84_, T85_);
26587 				genAssignment__cgen_10369(p, (*d), tmp, 0);
26588 			}
26589 			LA65_: ;
26590 		}
26591 		goto LA53_;
26592 		LA56_: ;
26593 		{
26594 			tyArray__qTjAvTvKF9anytN1At69aJMQ T87_;
26595 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T88_;
26596 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA list;
26597 			nimZeroMem((void*)T87_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26598 			T88_ = NIM_NIL;
26599 			T88_ = percent___cgen_13000(T87_, 0);
26600 			add__ropes_159(&pl, T88_);
26601 			{
26602 				if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA91_;
26603 				getTemp__cgen_7343(p, (*typ).sons->data[((NI) 0)], d, NIM_FALSE);
26604 			}
26605 			LA91_: ;
26606 			nimZeroMem((void*)(&list), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26607 			initLoc__cgen_60((&list), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), ri, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
26608 			list.r = pl;
26609 			genAssignment__cgen_10369(p, (*d), list, 0);
26610 		}
26611 		LA53_: ;
26612 	}
26613 	goto LA49_;
26614 	LA51_: ;
26615 	{
26616 		tyArray__qTjAvTvKF9anytN1At69aJMQ T94_;
26617 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T95_;
26618 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T96_;
26619 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T97_;
26620 		nimZeroMem((void*)T94_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26621 		T95_ = NIM_NIL;
26622 		T95_ = percent___cgen_12989(T94_, 0);
26623 		add__ropes_159(&pl, T95_);
26624 		T96_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
26625 		T96_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
26626 		T97_ = NIM_NIL;
26627 		T97_ = indentLine__cgen_280(p, pl);
26628 		add__ropes_159(T96_, T97_);
26629 	}
26630 	LA49_: ;
26631 }
N_NIMCALL(void,genPrefixCall__cgen_12325)26632 N_LIB_PRIVATE N_NIMCALL(void, genPrefixCall__cgen_12325)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
26633 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA op;
26634 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
26635 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* params;
26636 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* callee;
26637 	nimZeroMem((void*)(&op), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26638 	initLocExpr__cgen_11483(p, (*ri)._kind_6.sons->data[((NI) 0)], (&op));
26639 	typ = skipTypes__ast_3735((*(*ri)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
26640 	params = genParams__cgen_12196(p, ri, typ);
26641 	callee = rdLoc__cgen_425(op);
26642 	{
26643 		NIM_BOOL T3_;
26644 		T3_ = (NIM_BOOL)0;
26645 		T3_ = hcrOn__cgen_45(p);
26646 		if (!(T3_)) goto LA4_;
26647 		T3_ = ((*(*ri)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
26648 		LA4_: ;
26649 		if (!T3_) goto LA5_;
26650 		addActualSuffixForHCR__cgen_12293(&callee, (*(*p).module).module, (*(*ri)._kind_6.sons->data[((NI) 0)])._kind_4.sym);
26651 	}
26652 	LA5_: ;
26653 	fixupCall__cgen_11622(p, le, ri, d, callee, params);
26654 }
N_NIMCALL(void,genAsgnCall__cgen_13048)26655 N_LIB_PRIVATE N_NIMCALL(void, genAsgnCall__cgen_13048)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
26656 {	{
26657 		NIM_BOOL T3_;
26658 		T3_ = (NIM_BOOL)0;
26659 		T3_ = (((NI) 0) < (*p).withinBlockLeaveActions);
26660 		if (!(T3_)) goto LA4_;
26661 		T3_ = isInactiveDestructorCall__cgen_13034(p, ri);
26662 		LA4_: ;
26663 		if (!T3_) goto LA5_;
26664 		goto BeforeRet_;
26665 	}
26666 	LA5_: ;
26667 	{
26668 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T9_;
26669 		T9_ = NIM_NIL;
26670 		T9_ = skipTypes__ast_3735((*(*ri)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_561);
26671 		if (!((*T9_).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9))) goto LA10_;
26672 		genClosureCall__cgen_12358(p, le, ri, d);
26673 	}
26674 	goto LA7_;
26675 	LA10_: ;
26676 	{
26677 		NIM_BOOL T13_;
26678 		T13_ = (NIM_BOOL)0;
26679 		T13_ = ((*(*ri)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
26680 		if (!(T13_)) goto LA14_;
26681 		T13_ = (((*(*(*ri)._kind_6.sons->data[((NI) 0)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
26682 		LA14_: ;
26683 		if (!T13_) goto LA15_;
26684 		genInfixCall__cgen_12751(p, le, ri, d);
26685 	}
26686 	goto LA7_;
26687 	LA15_: ;
26688 	{
26689 		NIM_BOOL T18_;
26690 		T18_ = (NIM_BOOL)0;
26691 		T18_ = ((*(*ri)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
26692 		if (!(T18_)) goto LA19_;
26693 		T18_ = (((*(*(*ri)._kind_6.sons->data[((NI) 0)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 33))&63U)))!=0);
26694 		LA19_: ;
26695 		if (!T18_) goto LA20_;
26696 		genNamedParamCall__cgen_12854(p, ri, d);
26697 	}
26698 	goto LA7_;
26699 	LA20_: ;
26700 	{
26701 		genPrefixCall__cgen_12325(p, le, ri, d);
26702 	}
26703 	LA7_: ;
26704 	}BeforeRet_: ;
26705 }
N_INLINE(void,loadInto__cgen_13409)26706 static N_INLINE(void, loadInto__cgen_13409)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a) {
26707 	{
26708 		NIM_BOOL T3_;
26709 		NIM_BOOL T5_;
26710 		T3_ = (NIM_BOOL)0;
26711 		T3_ = ((*ri).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*ri).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*ri).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*ri).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*ri).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*ri).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*ri).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32));
26712 		if (!(T3_)) goto LA4_;
26713 		T5_ = (NIM_BOOL)0;
26714 		T5_ = !(((*(*ri)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)));
26715 		if (T5_) goto LA6_;
26716 		T5_ = ((*(*(*ri)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0));
26717 		LA6_: ;
26718 		T3_ = T5_;
26719 		LA4_: ;
26720 		if (!T3_) goto LA7_;
26721 		genAsgnCall__cgen_13048(p, le, ri, a);
26722 	}
26723 	goto LA1_;
26724 	LA7_: ;
26725 	{
26726 		(*a).flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 9)) & 15);
26727 		expr__cgen_11460(p, ri, a);
26728 	}
26729 	LA1_: ;
26730 }
N_NIMCALL(void,genSingleVar__cgen_13806)26731 N_LIB_PRIVATE N_NIMCALL(void, genSingleVar__cgen_13806)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* vn, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value) {
26732 	tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* targetProc;
26733 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* traverseProc;
26734 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* valueAsRope;
26735 	NIM_BOOL forHcr;
26736 {	{
26737 		if (!(((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 35))&63U)))!=0)) goto LA3_;
26738 		genGotoVar__cgen_13760(p, value);
26739 		goto BeforeRet_;
26740 	}
26741 	LA3_: ;
26742 	targetProc = p;
26743 	traverseProc = NIM_NIL;
26744 	valueAsRope = potentialValueInit__cgen_13777(p, v, value);
26745 	{
26746 		if (!(((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 3))&63U)))!=0)) goto LA7_;
26747 		{
26748 			NIM_BOOL T11_;
26749 			NIM_BOOL T12_;
26750 			T11_ = (NIM_BOOL)0;
26751 			T12_ = (NIM_BOOL)0;
26752 			T12_ = (((*v).flags & 192) == 64);
26753 			if (!(T12_)) goto LA13_;
26754 			T12_ = ((*value).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1));
26755 			LA13_: ;
26756 			T11_ = T12_;
26757 			if (!(T11_)) goto LA14_;
26758 			T11_ = !((((*v).loc.flags & 72) == 0));
26759 			LA14_: ;
26760 			if (!T11_) goto LA15_;
26761 			goto BeforeRet_;
26762 		}
26763 		LA15_: ;
26764 		{
26765 			if (!(((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 11))&63U)))!=0)) goto LA19_;
26766 			targetProc = (*(*p).module).preInitProc;
26767 		}
26768 		LA19_: ;
26769 		assignGlobalVar__cgen_11271(targetProc, vn, valueAsRope);
26770 		{
26771 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
26772 			if (!(valueAsRope == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA23_;
26773 			nimZeroMem((void*)(&loc), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26774 			genericAssign((void*)(&loc), (void*)(&(*v).loc), (&NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_));
26775 			{
26776 				NIM_BOOL T27_;
26777 				NIM_BOOL T28_;
26778 				T27_ = (NIM_BOOL)0;
26779 				T28_ = (NIM_BOOL)0;
26780 				T28_ = (((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 26))&63U)))!=0);
26781 				if (!(T28_)) goto LA29_;
26782 				T28_ = emulatedThreadVars__cgen_409((*(*(*p).module).g).config);
26783 				LA29_: ;
26784 				T27_ = T28_;
26785 				if (!(T27_)) goto LA30_;
26786 				T27_ = isComplexValueType__cgen_10551((*v).typ);
26787 				LA30_: ;
26788 				if (!T27_) goto LA31_;
26789 				initLocExprSingleUse__cgen_11487((*(*p).module).preInitProc, vn, (&loc));
26790 			}
26791 			LA31_: ;
26792 			genObjectInit__cgen_10380((*(*p).module).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1), (*v).typ, (&loc), ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 0));
26793 		}
26794 		LA23_: ;
26795 		{
26796 			NIM_BOOL T35_;
26797 			T35_ = (NIM_BOOL)0;
26798 			T35_ = (((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 7))&63U)))!=0);
26799 			if (!(T35_)) goto LA36_;
26800 			T35_ = !(((*(*(*p).module).g).generatedHeader == ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) NIM_NIL)));
26801 			LA36_: ;
26802 			if (!T35_) goto LA37_;
26803 			genVarPrototype__cgen_11451((*(*(*p).module).g).generatedHeader, vn);
26804 		}
26805 		LA37_: ;
26806 		traverseProc = getTraverseProc__cgen_13084(p, v);
26807 		{
26808 			NIM_BOOL T41_;
26809 			NIM_BOOL T43_;
26810 			T41_ = (NIM_BOOL)0;
26811 			T41_ = !((traverseProc == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)));
26812 			if (!(T41_)) goto LA42_;
26813 			T43_ = (NIM_BOOL)0;
26814 			T43_ = hcrOn__cgen_45(p);
26815 			T41_ = !(T43_);
26816 			LA42_: ;
26817 			if (!T41_) goto LA44_;
26818 			registerTraverseProc__cgen_13096(p, v, traverseProc);
26819 		}
26820 		LA44_: ;
26821 	}
26822 	goto LA5_;
26823 	LA7_: ;
26824 	{
26825 		NIM_BOOL imm;
26826 		imm = isAssignedImmediately__cgen_13146((*(*(*p).module).g).config, value);
26827 		{
26828 			NIM_BOOL T49_;
26829 			NIM_BOOL T50_;
26830 			NIM_BOOL T51_;
26831 			NIM_BOOL T53_;
26832 			NIM_BOOL T57_;
26833 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* decl;
26834 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
26835 			T49_ = (NIM_BOOL)0;
26836 			T50_ = (NIM_BOOL)0;
26837 			T51_ = (NIM_BOOL)0;
26838 			T51_ = imm;
26839 			if (!(T51_)) goto LA52_;
26840 			T53_ = (NIM_BOOL)0;
26841 			T53_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
26842 			if (T53_) goto LA54_;
26843 			T53_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
26844 			LA54_: ;
26845 			T51_ = T53_;
26846 			LA52_: ;
26847 			T50_ = T51_;
26848 			if (!(T50_)) goto LA55_;
26849 			T50_ = ((*p).splitDecls == ((NI) 0));
26850 			LA55_: ;
26851 			T49_ = T50_;
26852 			if (!(T49_)) goto LA56_;
26853 			T57_ = (NIM_BOOL)0;
26854 			T57_ = containsHiddenPointer__types_658((*v).typ);
26855 			T49_ = !(T57_);
26856 			LA56_: ;
26857 			if (!T49_) goto LA58_;
26858 			genLineDir__cgen_359(p, vn);
26859 			decl = localVarDecl__cgen_11059(p, vn);
26860 			nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
26861 			{
26862 				NIM_BOOL T62_;
26863 				NIM_BOOL T63_;
26864 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* params;
26865 				tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
26866 				T62_ = (NIM_BOOL)0;
26867 				T63_ = (NIM_BOOL)0;
26868 				T63_ = ((*value).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*value).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*value).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*value).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*value).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*value).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*value).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32));
26869 				if (!(T63_)) goto LA64_;
26870 				T63_ = ((*(*value)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
26871 				LA64_: ;
26872 				T62_ = T63_;
26873 				if (!(T62_)) goto LA65_;
26874 				T62_ = (((*(*(*value)._kind_6.sons->data[((NI) 0)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 29))&63U)))!=0);
26875 				LA65_: ;
26876 				if (!T62_) goto LA66_;
26877 				params = NIM_NIL;
26878 				typ = skipTypes__ast_3735((*(*value)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
26879 				{
26880 					NI i;
26881 					NI colontmp_;
26882 					NI i_2;
26883 					i = (NI)0;
26884 					colontmp_ = (NI)0;
26885 					colontmp_ = len__ast_3198(value);
26886 					i_2 = ((NI) 1);
26887 					{
26888 						while (1) {
26889 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T77_;
26890 							if (!(i_2 < colontmp_)) goto LA70;
26891 							i = i_2;
26892 							{
26893 								tyArray__qTjAvTvKF9anytN1At69aJMQ T75_;
26894 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T76_;
26895 								if (!!((params == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA73_;
26896 								nimZeroMem((void*)T75_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26897 								T76_ = NIM_NIL;
26898 								T76_ = percent___cgen_3519(T75_, 0);
26899 								add__ropes_159(&params, T76_);
26900 							}
26901 							LA73_: ;
26902 							T77_ = NIM_NIL;
26903 							T77_ = genOtherArg__cgen_11476(p, value, i, typ);
26904 							add__ropes_159(&params, T77_);
26905 							i_2 += ((NI) 1);
26906 						} LA70: ;
26907 					}
26908 				}
26909 				{
26910 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T82_;
26911 					tyArray__JiWwrsTRC6xqNlGcBthSVA T83_;
26912 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T84_;
26913 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T85_;
26914 					if (!(params == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA80_;
26915 					T82_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
26916 					T82_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
26917 					nimZeroMem((void*)T83_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
26918 					T83_[0] = decl;
26919 					T84_ = NIM_NIL;
26920 					T84_ = percent___cgen_13931(T83_, 1);
26921 					T85_ = NIM_NIL;
26922 					T85_ = indentLine__cgen_280(p, T84_);
26923 					add__ropes_159(T82_, T85_);
26924 				}
26925 				goto LA78_;
26926 				LA80_: ;
26927 				{
26928 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T87_;
26929 					tyArray__mrugoXXRZUEeG9bEXo9auBKw T88_;
26930 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T89_;
26931 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T90_;
26932 					T87_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
26933 					T87_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
26934 					nimZeroMem((void*)T88_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
26935 					T88_[0] = decl;
26936 					T88_[1] = params;
26937 					T89_ = NIM_NIL;
26938 					T89_ = percent___cgen_13936(T88_, 2);
26939 					T90_ = NIM_NIL;
26940 					T90_ = indentLine__cgen_280(p, T89_);
26941 					add__ropes_159(T87_, T90_);
26942 				}
26943 				LA78_: ;
26944 			}
26945 			goto LA60_;
26946 			LA66_: ;
26947 			{
26948 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T92_;
26949 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T93_;
26950 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T94_;
26951 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T95_;
26952 				initLocExprSingleUse__cgen_11487(p, value, (&tmp));
26953 				T92_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
26954 				T92_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
26955 				nimZeroMem((void*)T93_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
26956 				T93_[0] = decl;
26957 				T93_[1] = rdLoc__cgen_425(tmp);
26958 				T94_ = NIM_NIL;
26959 				T94_ = percent___cgen_13941(T93_, 2);
26960 				T95_ = NIM_NIL;
26961 				T95_ = indentLine__cgen_280(p, T94_);
26962 				add__ropes_159(T92_, T95_);
26963 			}
26964 			LA60_: ;
26965 			goto BeforeRet_;
26966 		}
26967 		LA58_: ;
26968 		assignLocalVar__cgen_11099(p, vn);
26969 		initLocalVar__cgen_10987(p, v, imm);
26970 	}
26971 	LA5_: ;
26972 	{
26973 		tyArray__qTjAvTvKF9anytN1At69aJMQ T100_;
26974 		if (!(traverseProc == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA98_;
26975 		nimZeroMem((void*)T100_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
26976 		traverseProc = percent___cgen_13329(T100_, 0);
26977 	}
26978 	LA98_: ;
26979 	forHcr = treatGlobalDifferentlyForHCR__cgen_11251((*p).module, v);
26980 	{
26981 		NIM_BOOL T103_;
26982 		NIM_BOOL T104_;
26983 		NI T106_;
26984 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T110_;
26985 		NimStringDesc* res;
26986 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T111_;
26987 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T112_;
26988 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T117_;
26989 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T118_;
26990 		T103_ = (NIM_BOOL)0;
26991 		T104_ = (NIM_BOOL)0;
26992 		T104_ = forHcr;
26993 		if (!(T104_)) goto LA105_;
26994 		T106_ = ((*targetProc).blocks ? (*targetProc).blocks->Sup.len : 0);
26995 		T104_ = (((NI) 3) < T106_);
26996 		LA105_: ;
26997 		T103_ = T104_;
26998 		if (!(T103_)) goto LA107_;
26999 		T103_ = ((*(*v).owner).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 6));
27000 		LA107_: ;
27001 		if (!T103_) goto LA108_;
27002 		T110_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
27003 		T110_ = s__cgendata_225(targetProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
27004 		res = rawNewString(((NI) 80));
27005 		res = resizeString(res, 18);
27006 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_553));
27007 		T111_ = NIM_NIL;
27008 		T111_ = getModuleDllPath__cgen_136((*p).module, v);
27009 		cgFormatValue__cgen_141((&res), T111_);
27010 		res = resizeString(res, 3);
27011 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_554));
27012 		cgFormatValue__cgen_141((&res), (*v).loc.r);
27013 		res = resizeString(res, 10);
27014 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_555));
27015 		T112_ = NIM_NIL;
27016 		T112_ = rdLoc__cgen_425((*v).loc);
27017 		cgFormatValue__cgen_141((&res), T112_);
27018 		res = resizeString(res, 3);
27019 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_556));
27020 		cgFormatValue__cgen_141((&res), traverseProc);
27021 		res = resizeString(res, 11);
27022 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_557));
27023 		cgFormatValue__cgen_141((&res), (*v).loc.r);
27024 		res = resizeString(res, 2);
27025 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
27026 		{
27027 			if (!!((((*(*(*(*targetProc).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA115_;
27028 			res = resizeString(res, 1);
27029 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
27030 		}
27031 		LA115_: ;
27032 		T117_ = NIM_NIL;
27033 		T117_ = rope__ropes_109(res);
27034 		T118_ = NIM_NIL;
27035 		T118_ = indentLine__cgen_280(targetProc, T117_);
27036 		add__ropes_159(T110_, T118_);
27037 		forHcr = NIM_FALSE;
27038 	}
27039 	LA108_: ;
27040 	{
27041 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T123_;
27042 		NimStringDesc* res_2;
27043 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T124_;
27044 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T125_;
27045 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T126_;
27046 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T127_;
27047 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T128_;
27048 		NimStringDesc* res_3;
27049 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T133_;
27050 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T134_;
27051 		NI T135_;
27052 		if (!forHcr) goto LA121_;
27053 		T123_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
27054 		T123_ = s__cgendata_225(targetProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
27055 		res_2 = rawNewString(((NI) 80));
27056 		res_2 = resizeString(res_2, 22);
27057 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_558));
27058 		T124_ = NIM_NIL;
27059 		T124_ = getModuleDllPath__cgen_136((*p).module, v);
27060 		cgFormatValue__cgen_141((&res_2), T124_);
27061 		res_2 = resizeString(res_2, 3);
27062 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_554));
27063 		cgFormatValue__cgen_141((&res_2), (*v).loc.r);
27064 		res_2 = resizeString(res_2, 10);
27065 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_555));
27066 		T125_ = NIM_NIL;
27067 		T125_ = rdLoc__cgen_425((*v).loc);
27068 		cgFormatValue__cgen_141((&res_2), T125_);
27069 		res_2 = resizeString(res_2, 3);
27070 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_556));
27071 		cgFormatValue__cgen_141((&res_2), traverseProc);
27072 		res_2 = resizeString(res_2, 11);
27073 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_557));
27074 		cgFormatValue__cgen_141((&res_2), (*v).loc.r);
27075 		res_2 = resizeString(res_2, 3);
27076 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_559));
27077 		T126_ = NIM_NIL;
27078 		T126_ = rope__ropes_109(res_2);
27079 		T127_ = NIM_NIL;
27080 		T127_ = indentLine__cgen_280(targetProc, T126_);
27081 		add__ropes_159(T123_, T127_);
27082 		T128_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
27083 		T128_ = s__cgendata_225(targetProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
27084 		res_3 = rawNewString(((NI) 80));
27085 		res_3 = resizeString(res_3, 1);
27086 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
27087 		{
27088 			if (!!((((*(*(*(*targetProc).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA131_;
27089 			res_3 = resizeString(res_3, 1);
27090 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
27091 		}
27092 		LA131_: ;
27093 		T133_ = NIM_NIL;
27094 		T133_ = rope__ropes_109(res_3);
27095 		T134_ = NIM_NIL;
27096 		T134_ = indentLine__cgen_280(targetProc, T133_);
27097 		add__ropes_159(T128_, T134_);
27098 		T135_ = (NI)0;
27099 		T135_ = startBlockInternal__cgen_13189(targetProc);
27100 	}
27101 	LA121_: ;
27102 	{
27103 		NIM_BOOL T138_;
27104 		T138_ = (NIM_BOOL)0;
27105 		T138_ = !(((*value).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)));
27106 		if (!(T138_)) goto LA139_;
27107 		T138_ = (valueAsRope == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
27108 		LA139_: ;
27109 		if (!T138_) goto LA140_;
27110 		genLineDir__cgen_359(targetProc, vn);
27111 		loadInto__cgen_13409(targetProc, vn, value, (&(*v).loc));
27112 	}
27113 	LA140_: ;
27114 	{
27115 		if (!forHcr) goto LA144_;
27116 		endBlock__cgen_13210(targetProc);
27117 	}
27118 	LA144_: ;
27119 	}BeforeRet_: ;
27120 }
N_NIMCALL(void,putDataIntoDest__cgen_18642)27121 N_LIB_PRIVATE N_NIMCALL(void, putDataIntoDest__cgen_18642)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r) {
27122 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
27123 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
27124 	{
27125 		if (!!(((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0)))) goto LA3_;
27126 		initLoc__cgen_60((&a), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 8), n, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1));
27127 		a.r = r;
27128 		{
27129 			if (!(((*d).flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 2))&15U)))!=0)) goto LA7_;
27130 			genAssignment__cgen_10369(p, (*d), a, 0);
27131 		}
27132 		goto LA5_;
27133 		LA7_: ;
27134 		{
27135 			genAssignment__cgen_10369(p, (*d), a, 1);
27136 		}
27137 		LA5_: ;
27138 	}
27139 	goto LA1_;
27140 	LA3_: ;
27141 	{
27142 		(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 8);
27143 		unsureAsgnRef((void**) (&(*d).lode), n);
27144 		unsureAsgnRef((void**) (&(*d).r), r);
27145 	}
27146 	LA1_: ;
27147 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getLabel__cgen_11436)27148 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getLabel__cgen_11436)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
27149 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27150 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
27151 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
27152 	result = NIM_NIL;
27153 	(*p).labels += ((NI) 1);
27154 	T1_ = NIM_NIL;
27155 	T1_ = rope__ropes_115(((NI64) ((*p).labels)));
27156 	T2_ = NIM_NIL;
27157 	T2_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_631), T1_);
27158 	result = amp___ropes_140(T2_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
27159 	return result;
27160 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_20245)27161 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_20245)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27162 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27163 	result = NIM_NIL;
27164 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_632), args, argsLen_0);
27165 	return result;
27166 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_20250)27167 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_20250)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27168 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27169 	result = NIM_NIL;
27170 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_633), args, argsLen_0);
27171 	return result;
27172 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11446)27173 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11446)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27174 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27175 	result = NIM_NIL;
27176 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_634), args, argsLen_0);
27177 	return result;
27178 }
N_NIMCALL(void,fixLabel__cgen_11443)27179 N_LIB_PRIVATE N_NIMCALL(void, fixLabel__cgen_11443)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* labl) {
27180 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T1_;
27181 	tyArray__JiWwrsTRC6xqNlGcBthSVA T2_;
27182 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
27183 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
27184 	T1_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
27185 	T1_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
27186 	nimZeroMem((void*)T2_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
27187 	T2_[0] = labl;
27188 	T3_ = NIM_NIL;
27189 	T3_ = percent___cgen_11446(T2_, 1);
27190 	T4_ = NIM_NIL;
27191 	T4_ = indentLine__cgen_280(p, T3_);
27192 	add__ropes_159(T1_, T4_);
27193 }
N_NIMCALL(void,genAndOr__cgen_20229)27194 N_LIB_PRIVATE N_NIMCALL(void, genAndOr__cgen_20229)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m) {
27195 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* L;
27196 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
27197 	L = NIM_NIL;
27198 	nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
27199 	getTemp__cgen_7343(p, (*e).typ, (&tmp), NIM_FALSE);
27200 	(*p).splitDecls += ((NI) 1);
27201 	expr__cgen_11460(p, (*e)._kind_6.sons->data[((NI) 1)], (&tmp));
27202 	L = getLabel__cgen_11436(p);
27203 	{
27204 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T5_;
27205 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T6_;
27206 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
27207 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
27208 		if (!(m == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 110))) goto LA3_;
27209 		T5_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
27210 		T5_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
27211 		nimZeroMem((void*)T6_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
27212 		T6_[0] = rdLoc__cgen_425(tmp);
27213 		T6_[1] = L;
27214 		T7_ = NIM_NIL;
27215 		T7_ = percent___cgen_20245(T6_, 2);
27216 		T8_ = NIM_NIL;
27217 		T8_ = indentLine__cgen_280(p, T7_);
27218 		add__ropes_159(T5_, T8_);
27219 	}
27220 	goto LA1_;
27221 	LA3_: ;
27222 	{
27223 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
27224 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T11_;
27225 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
27226 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
27227 		T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
27228 		T10_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
27229 		nimZeroMem((void*)T11_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
27230 		T11_[0] = rdLoc__cgen_425(tmp);
27231 		T11_[1] = L;
27232 		T12_ = NIM_NIL;
27233 		T12_ = percent___cgen_20250(T11_, 2);
27234 		T13_ = NIM_NIL;
27235 		T13_ = indentLine__cgen_280(p, T12_);
27236 		add__ropes_159(T10_, T13_);
27237 	}
27238 	LA1_: ;
27239 	expr__cgen_11460(p, (*e)._kind_6.sons->data[((NI) 2)], (&tmp));
27240 	fixLabel__cgen_11443(p, L);
27241 	{
27242 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA16_;
27243 		genericAssign((void*)(&(*d)), (void*)(&tmp), (&NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_));
27244 	}
27245 	goto LA14_;
27246 	LA16_: ;
27247 	{
27248 		genAssignment__cgen_10369(p, (*d), tmp, 0);
27249 	}
27250 	LA14_: ;
27251 	(*p).splitDecls -= ((NI) 1);
27252 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19257)27253 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19257)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27254 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27255 	result = NIM_NIL;
27256 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_635), args, argsLen_0);
27257 	return result;
27258 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19262)27259 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19262)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27260 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27261 	result = NIM_NIL;
27262 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_636), args, argsLen_0);
27263 	return result;
27264 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19267)27265 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19267)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27266 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27267 	result = NIM_NIL;
27268 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_637), args, argsLen_0);
27269 	return result;
27270 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_18935)27271 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18935)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27272 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27273 	result = NIM_NIL;
27274 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_638), args, argsLen_0);
27275 	return result;
27276 }
N_NIMCALL(void,unaryArith__cgen_19239)27277 N_LIB_PRIVATE N_NIMCALL(void, unaryArith__cgen_19239)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg op) {
27278 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
27279 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
27280 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
27281 	t = NIM_NIL;
27282 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
27283 	t = skipTypes__ast_3735((*e).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_574);
27284 	switch (op) {
27285 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 96):
27286 	{
27287 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T2_;
27288 		NI64 T3_;
27289 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
27290 		nimZeroMem((void*)T2_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
27291 		T2_[0] = rdLoc__cgen_425(a);
27292 		T3_ = (NI64)0;
27293 		T3_ = getSize__types_3327((*(*(*p).module).g).config, t);
27294 		T2_[1] = rope__ropes_115((NI64)(T3_ * IL64(8)));
27295 		T2_[2] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27296 		T4_ = NIM_NIL;
27297 		T4_ = percent___cgen_19257(T2_, 3);
27298 		putIntoDest__cgen_18656(p, d, e, T4_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27299 	}
27300 	break;
27301 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 97):
27302 	{
27303 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T6_;
27304 		NI64 T7_;
27305 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
27306 		nimZeroMem((void*)T6_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
27307 		T6_[0] = rdLoc__cgen_425(a);
27308 		T7_ = (NI64)0;
27309 		T7_ = getSize__types_3327((*(*(*p).module).g).config, t);
27310 		T6_[1] = rope__ropes_115((NI64)(T7_ * IL64(8)));
27311 		T6_[2] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27312 		T8_ = NIM_NIL;
27313 		T8_ = percent___cgen_19262(T6_, 3);
27314 		putIntoDest__cgen_18656(p, d, e, T8_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27315 	}
27316 	break;
27317 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 98):
27318 	{
27319 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T10_;
27320 		NI64 T11_;
27321 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
27322 		nimZeroMem((void*)T10_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
27323 		T10_[0] = rdLoc__cgen_425(a);
27324 		T11_ = (NI64)0;
27325 		T11_ = getSize__types_3327((*(*(*p).module).g).config, t);
27326 		T10_[1] = rope__ropes_115((NI64)(T11_ * IL64(8)));
27327 		T10_[2] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27328 		T12_ = NIM_NIL;
27329 		T12_ = percent___cgen_19267(T10_, 3);
27330 		putIntoDest__cgen_18656(p, d, e, T12_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27331 	}
27332 	break;
27333 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 99):
27334 	{
27335 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T14_;
27336 		NI64 T15_;
27337 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
27338 		nimZeroMem((void*)T14_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
27339 		T14_[0] = rdLoc__cgen_425(a);
27340 		T15_ = (NI64)0;
27341 		T15_ = getSize__types_3327((*(*(*p).module).g).config, t);
27342 		T14_[1] = rope__ropes_115((NI64)(T15_ * IL64(8)));
27343 		T14_[2] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27344 		T16_ = NIM_NIL;
27345 		T16_ = percent___cgen_19262(T14_, 3);
27346 		putIntoDest__cgen_18656(p, d, e, T16_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27347 	}
27348 	break;
27349 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 100):
27350 	{
27351 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T18_;
27352 		NI64 T19_;
27353 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
27354 		nimZeroMem((void*)T18_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
27355 		T18_[0] = rdLoc__cgen_425(a);
27356 		T19_ = (NI64)0;
27357 		T19_ = getSize__types_3327((*(*(*p).module).g).config, t);
27358 		T18_[1] = rope__ropes_115((NI64)(T19_ * IL64(8)));
27359 		T18_[2] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27360 		T20_ = NIM_NIL;
27361 		T20_ = percent___cgen_18935(T18_, 3);
27362 		putIntoDest__cgen_18656(p, d, e, T20_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27363 	}
27364 	break;
27365 	default:
27366 	{
27367 	}
27368 	break;
27369 	}
27370 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_18930)27371 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18930)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27372 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27373 	result = NIM_NIL;
27374 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_642), args, argsLen_0);
27375 	return result;
27376 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_18940)27377 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18940)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27378 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27379 	result = NIM_NIL;
27380 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_643), args, argsLen_0);
27381 	return result;
27382 }
N_NIMCALL(void,unaryArithOverflow__cgen_18897)27383 N_LIB_PRIVATE N_NIMCALL(void, unaryArithOverflow__cgen_18897)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m) {
27384 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
27385 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
27386 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
27387 	t = NIM_NIL;
27388 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
27389 	t = skipTypes__ast_3735((*e).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_574);
27390 	{
27391 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T5_;
27392 		NimStringDesc* res;
27393 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
27394 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA T7_;
27395 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
27396 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
27397 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
27398 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
27399 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
27400 		if (!(((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 5))&31U)))!=0)) goto LA3_;
27401 		T5_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
27402 		T5_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
27403 		res = rawNewString(((NI) 80));
27404 		res = resizeString(res, 4);
27405 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
27406 		T6_ = NIM_NIL;
27407 		T6_ = rdLoc__cgen_425(a);
27408 		cgFormatValue__cgen_141((&res), T6_);
27409 		res = resizeString(res, 4);
27410 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_639));
27411 		T7_ = firstOrd__types_1353((*(*(*p).module).g).config, t);
27412 		T8_ = NIM_NIL;
27413 		T8_ = intLiteral__cgen_17635(T7_);
27414 		cgFormatValue__cgen_141((&res), T8_);
27415 		res = resizeString(res, 3);
27416 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_640));
27417 		T9_ = NIM_NIL;
27418 		T9_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_641));
27419 		cgFormatValue__cgen_141((&res), T9_);
27420 		res = resizeString(res, 4);
27421 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
27422 		T10_ = NIM_NIL;
27423 		T10_ = raiseInstr__cgen_414(p);
27424 		cgFormatValue__cgen_141((&res), T10_);
27425 		res = resizeString(res, 1);
27426 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
27427 		{
27428 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA13_;
27429 			res = resizeString(res, 1);
27430 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
27431 		}
27432 		LA13_: ;
27433 		T15_ = NIM_NIL;
27434 		T15_ = rope__ropes_109(res);
27435 		T16_ = NIM_NIL;
27436 		T16_ = indentLine__cgen_280(p, T15_);
27437 		add__ropes_159(T5_, T16_);
27438 	}
27439 	LA3_: ;
27440 	switch (m) {
27441 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 93):
27442 	{
27443 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T18_;
27444 		NI64 T19_;
27445 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
27446 		nimZeroMem((void*)T18_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
27447 		T18_[0] = rdLoc__cgen_425(a);
27448 		T19_ = (NI64)0;
27449 		T19_ = getSize__types_3327((*(*(*p).module).g).config, t);
27450 		T18_[1] = rope__ropes_115((NI64)(T19_ * IL64(8)));
27451 		T20_ = NIM_NIL;
27452 		T20_ = percent___cgen_18930(T18_, 2);
27453 		putIntoDest__cgen_18656(p, d, e, T20_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27454 	}
27455 	break;
27456 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 94):
27457 	{
27458 		tyArray__JiWwrsTRC6xqNlGcBthSVA T22_;
27459 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
27460 		nimZeroMem((void*)T22_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
27461 		T22_[0] = rdLoc__cgen_425(a);
27462 		T23_ = NIM_NIL;
27463 		T23_ = percent___cgen_18935(T22_, 1);
27464 		putIntoDest__cgen_18656(p, d, e, T23_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27465 	}
27466 	break;
27467 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 95):
27468 	{
27469 		tyArray__JiWwrsTRC6xqNlGcBthSVA T25_;
27470 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
27471 		nimZeroMem((void*)T25_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
27472 		T25_[0] = rdLoc__cgen_425(a);
27473 		T26_ = NIM_NIL;
27474 		T26_ = percent___cgen_18940(T25_, 1);
27475 		putIntoDest__cgen_18656(p, d, e, T26_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27476 	}
27477 	break;
27478 	default:
27479 	{
27480 	}
27481 	break;
27482 	}
27483 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_18980)27484 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18980)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27485 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27486 	result = NIM_NIL;
27487 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_654), args, argsLen_0);
27488 	return result;
27489 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_18985)27490 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18985)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27491 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27492 	result = NIM_NIL;
27493 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_655), args, argsLen_0);
27494 	return result;
27495 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_18990)27496 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18990)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27497 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27498 	result = NIM_NIL;
27499 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_656), args, argsLen_0);
27500 	return result;
27501 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_18995)27502 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18995)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27503 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27504 	result = NIM_NIL;
27505 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_657), args, argsLen_0);
27506 	return result;
27507 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19000)27508 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19000)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27509 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27510 	result = NIM_NIL;
27511 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_658), args, argsLen_0);
27512 	return result;
27513 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19005)27514 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19005)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27515 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27516 	result = NIM_NIL;
27517 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_659), args, argsLen_0);
27518 	return result;
27519 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19010)27520 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19010)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27521 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27522 	result = NIM_NIL;
27523 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_660), args, argsLen_0);
27524 	return result;
27525 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19015)27526 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19015)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27527 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27528 	result = NIM_NIL;
27529 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_661), args, argsLen_0);
27530 	return result;
27531 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19020)27532 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19020)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27533 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27534 	result = NIM_NIL;
27535 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_662), args, argsLen_0);
27536 	return result;
27537 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19025)27538 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19025)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27539 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27540 	result = NIM_NIL;
27541 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_663), args, argsLen_0);
27542 	return result;
27543 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19030)27544 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19030)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27545 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27546 	result = NIM_NIL;
27547 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_664), args, argsLen_0);
27548 	return result;
27549 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19035)27550 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19035)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27551 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27552 	result = NIM_NIL;
27553 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_665), args, argsLen_0);
27554 	return result;
27555 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19040)27556 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19040)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27557 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27558 	result = NIM_NIL;
27559 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_666), args, argsLen_0);
27560 	return result;
27561 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19045)27562 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19045)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27563 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27564 	result = NIM_NIL;
27565 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_667), args, argsLen_0);
27566 	return result;
27567 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19050)27568 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19050)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27569 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27570 	result = NIM_NIL;
27571 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_668), args, argsLen_0);
27572 	return result;
27573 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19055)27574 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19055)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27575 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27576 	result = NIM_NIL;
27577 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_669), args, argsLen_0);
27578 	return result;
27579 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19060)27580 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19060)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27581 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27582 	result = NIM_NIL;
27583 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_670), args, argsLen_0);
27584 	return result;
27585 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19065)27586 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19065)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27587 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27588 	result = NIM_NIL;
27589 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_671), args, argsLen_0);
27590 	return result;
27591 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19070)27592 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19070)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27593 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27594 	result = NIM_NIL;
27595 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_672), args, argsLen_0);
27596 	return result;
27597 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19075)27598 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19075)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27599 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27600 	result = NIM_NIL;
27601 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_673), args, argsLen_0);
27602 	return result;
27603 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19092)27604 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19092)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27605 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27606 	result = NIM_NIL;
27607 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_674), args, argsLen_0);
27608 	return result;
27609 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19097)27610 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19097)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27611 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27612 	result = NIM_NIL;
27613 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_675), args, argsLen_0);
27614 	return result;
27615 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19114)27616 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19114)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27617 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27618 	result = NIM_NIL;
27619 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_676), args, argsLen_0);
27620 	return result;
27621 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19119)27622 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19119)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27623 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27624 	result = NIM_NIL;
27625 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_677), args, argsLen_0);
27626 	return result;
27627 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19124)27628 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19124)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27629 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27630 	result = NIM_NIL;
27631 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_678), args, argsLen_0);
27632 	return result;
27633 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19153)27634 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19153)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
27635 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
27636 	result = NIM_NIL;
27637 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_679), args, argsLen_0);
27638 	return result;
27639 }
N_NIMCALL(void,binaryArith__cgen_18951)27640 N_LIB_PRIVATE N_NIMCALL(void, binaryArith__cgen_18951)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg op) {
27641 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
27642 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
27643 	NI64 s;
27644 	NI64 k;
27645 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
27646 	NI64 T2_;
27647 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T3_;
27648 	NI64 T4_;
27649 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
27650 	NI64 T6_;
27651 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
27652 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
27653 	s = (NI64)0;
27654 	k = (NI64)0;
27655 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
27656 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
27657 	T1_ = NIM_NIL;
27658 	T1_ = t__cgen_79(a);
27659 	T2_ = (NI64)0;
27660 	T2_ = getSize__types_3327((*(*(*p).module).g).config, T1_);
27661 	T3_ = NIM_NIL;
27662 	T3_ = t__cgen_79(b);
27663 	T4_ = (NI64)0;
27664 	T4_ = getSize__types_3327((*(*(*p).module).g).config, T3_);
27665 	s = (NI64)(((T2_ >= T4_) ? T2_ : T4_) * IL64(8));
27666 	T5_ = NIM_NIL;
27667 	T5_ = t__cgen_79(a);
27668 	T6_ = (NI64)0;
27669 	T6_ = getSize__types_3327((*(*(*p).module).g).config, T5_);
27670 	k = (NI64)(T6_ * IL64(8));
27671 	switch (op) {
27672 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 53):
27673 	{
27674 		tyArray__duFhZXIIlrbrM62cWjNekg T8_;
27675 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
27676 		nimZeroMem((void*)T8_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27677 		T8_[0] = rdLoc__cgen_425(a);
27678 		T8_[1] = rdLoc__cgen_425(b);
27679 		T8_[2] = rope__ropes_115(s);
27680 		T8_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27681 		T8_[4] = rope__ropes_115(k);
27682 		T9_ = NIM_NIL;
27683 		T9_ = percent___cgen_18980(T8_, 5);
27684 		putIntoDest__cgen_18656(p, d, e, T9_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27685 	}
27686 	break;
27687 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 54):
27688 	{
27689 		tyArray__duFhZXIIlrbrM62cWjNekg T11_;
27690 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
27691 		nimZeroMem((void*)T11_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27692 		T11_[0] = rdLoc__cgen_425(a);
27693 		T11_[1] = rdLoc__cgen_425(b);
27694 		T11_[2] = rope__ropes_115(s);
27695 		T11_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27696 		T11_[4] = rope__ropes_115(k);
27697 		T12_ = NIM_NIL;
27698 		T12_ = percent___cgen_18985(T11_, 5);
27699 		putIntoDest__cgen_18656(p, d, e, T12_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27700 	}
27701 	break;
27702 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 55):
27703 	{
27704 		tyArray__duFhZXIIlrbrM62cWjNekg T14_;
27705 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
27706 		nimZeroMem((void*)T14_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27707 		T14_[0] = rdLoc__cgen_425(a);
27708 		T14_[1] = rdLoc__cgen_425(b);
27709 		T14_[2] = rope__ropes_115(s);
27710 		T14_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27711 		T14_[4] = rope__ropes_115(k);
27712 		T15_ = NIM_NIL;
27713 		T15_ = percent___cgen_18990(T14_, 5);
27714 		putIntoDest__cgen_18656(p, d, e, T15_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27715 	}
27716 	break;
27717 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 56):
27718 	{
27719 		tyArray__duFhZXIIlrbrM62cWjNekg T17_;
27720 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
27721 		nimZeroMem((void*)T17_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27722 		T17_[0] = rdLoc__cgen_425(a);
27723 		T17_[1] = rdLoc__cgen_425(b);
27724 		T17_[2] = rope__ropes_115(s);
27725 		T17_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27726 		T17_[4] = rope__ropes_115(k);
27727 		T18_ = NIM_NIL;
27728 		T18_ = percent___cgen_18995(T17_, 5);
27729 		putIntoDest__cgen_18656(p, d, e, T18_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27730 	}
27731 	break;
27732 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 57):
27733 	{
27734 		tyArray__duFhZXIIlrbrM62cWjNekg T20_;
27735 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
27736 		nimZeroMem((void*)T20_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27737 		T20_[0] = rdLoc__cgen_425(a);
27738 		T20_[1] = rdLoc__cgen_425(b);
27739 		T20_[2] = rope__ropes_115(s);
27740 		T20_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27741 		T20_[4] = rope__ropes_115(k);
27742 		T21_ = NIM_NIL;
27743 		T21_ = percent___cgen_19000(T20_, 5);
27744 		putIntoDest__cgen_18656(p, d, e, T21_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27745 	}
27746 	break;
27747 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 58):
27748 	{
27749 		tyArray__duFhZXIIlrbrM62cWjNekg T23_;
27750 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
27751 		nimZeroMem((void*)T23_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27752 		T23_[0] = rdLoc__cgen_425(a);
27753 		T23_[1] = rdLoc__cgen_425(b);
27754 		T23_[2] = rope__ropes_115(s);
27755 		T23_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27756 		T23_[4] = rope__ropes_115(k);
27757 		T24_ = NIM_NIL;
27758 		T24_ = percent___cgen_19005(T23_, 5);
27759 		putIntoDest__cgen_18656(p, d, e, T24_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27760 	}
27761 	break;
27762 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 59):
27763 	{
27764 		tyArray__duFhZXIIlrbrM62cWjNekg T26_;
27765 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
27766 		nimZeroMem((void*)T26_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27767 		T26_[0] = rdLoc__cgen_425(a);
27768 		T26_[1] = rdLoc__cgen_425(b);
27769 		T26_[2] = rope__ropes_115(s);
27770 		T26_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27771 		T26_[4] = rope__ropes_115(k);
27772 		T27_ = NIM_NIL;
27773 		T27_ = percent___cgen_19010(T26_, 5);
27774 		putIntoDest__cgen_18656(p, d, e, T27_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27775 	}
27776 	break;
27777 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 60):
27778 	{
27779 		tyArray__duFhZXIIlrbrM62cWjNekg T29_;
27780 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
27781 		nimZeroMem((void*)T29_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27782 		T29_[0] = rdLoc__cgen_425(a);
27783 		T29_[1] = rdLoc__cgen_425(b);
27784 		T29_[2] = rope__ropes_115(s);
27785 		T29_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27786 		T29_[4] = rope__ropes_115(k);
27787 		T30_ = NIM_NIL;
27788 		T30_ = percent___cgen_19015(T29_, 5);
27789 		putIntoDest__cgen_18656(p, d, e, T30_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27790 	}
27791 	break;
27792 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 61):
27793 	{
27794 		tyArray__duFhZXIIlrbrM62cWjNekg T32_;
27795 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
27796 		nimZeroMem((void*)T32_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27797 		T32_[0] = rdLoc__cgen_425(a);
27798 		T32_[1] = rdLoc__cgen_425(b);
27799 		T32_[2] = rope__ropes_115(s);
27800 		T32_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27801 		T32_[4] = rope__ropes_115(k);
27802 		T33_ = NIM_NIL;
27803 		T33_ = percent___cgen_19020(T32_, 5);
27804 		putIntoDest__cgen_18656(p, d, e, T33_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27805 	}
27806 	break;
27807 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 62):
27808 	{
27809 		tyArray__duFhZXIIlrbrM62cWjNekg T35_;
27810 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
27811 		nimZeroMem((void*)T35_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27812 		T35_[0] = rdLoc__cgen_425(a);
27813 		T35_[1] = rdLoc__cgen_425(b);
27814 		T35_[2] = rope__ropes_115(s);
27815 		T35_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27816 		T35_[4] = rope__ropes_115(k);
27817 		T36_ = NIM_NIL;
27818 		T36_ = percent___cgen_19025(T35_, 5);
27819 		putIntoDest__cgen_18656(p, d, e, T36_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27820 	}
27821 	break;
27822 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 63):
27823 	{
27824 		tyArray__duFhZXIIlrbrM62cWjNekg T38_;
27825 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
27826 		nimZeroMem((void*)T38_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27827 		T38_[0] = rdLoc__cgen_425(a);
27828 		T38_[1] = rdLoc__cgen_425(b);
27829 		T38_[2] = rope__ropes_115(s);
27830 		T38_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27831 		T38_[4] = rope__ropes_115(k);
27832 		T39_ = NIM_NIL;
27833 		T39_ = percent___cgen_19030(T38_, 5);
27834 		putIntoDest__cgen_18656(p, d, e, T39_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27835 	}
27836 	break;
27837 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 64):
27838 	{
27839 		tyArray__duFhZXIIlrbrM62cWjNekg T41_;
27840 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
27841 		nimZeroMem((void*)T41_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27842 		T41_[0] = rdLoc__cgen_425(a);
27843 		T41_[1] = rdLoc__cgen_425(b);
27844 		T41_[2] = rope__ropes_115(s);
27845 		T41_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27846 		T41_[4] = rope__ropes_115(k);
27847 		T42_ = NIM_NIL;
27848 		T42_ = percent___cgen_19035(T41_, 5);
27849 		putIntoDest__cgen_18656(p, d, e, T42_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27850 	}
27851 	break;
27852 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 65):
27853 	{
27854 		tyArray__duFhZXIIlrbrM62cWjNekg T44_;
27855 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
27856 		nimZeroMem((void*)T44_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27857 		T44_[0] = rdLoc__cgen_425(a);
27858 		T44_[1] = rdLoc__cgen_425(b);
27859 		T44_[2] = rope__ropes_115(s);
27860 		T44_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27861 		T44_[4] = rope__ropes_115(k);
27862 		T45_ = NIM_NIL;
27863 		T45_ = percent___cgen_19040(T44_, 5);
27864 		putIntoDest__cgen_18656(p, d, e, T45_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27865 	}
27866 	break;
27867 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 66):
27868 	{
27869 		tyArray__duFhZXIIlrbrM62cWjNekg T47_;
27870 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
27871 		nimZeroMem((void*)T47_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27872 		T47_[0] = rdLoc__cgen_425(a);
27873 		T47_[1] = rdLoc__cgen_425(b);
27874 		T47_[2] = rope__ropes_115(s);
27875 		T47_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27876 		T47_[4] = rope__ropes_115(k);
27877 		T48_ = NIM_NIL;
27878 		T48_ = percent___cgen_19045(T47_, 5);
27879 		putIntoDest__cgen_18656(p, d, e, T48_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27880 	}
27881 	break;
27882 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 67):
27883 	{
27884 		tyArray__duFhZXIIlrbrM62cWjNekg T50_;
27885 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
27886 		nimZeroMem((void*)T50_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27887 		T50_[0] = rdLoc__cgen_425(a);
27888 		T50_[1] = rdLoc__cgen_425(b);
27889 		T50_[2] = rope__ropes_115(s);
27890 		T50_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27891 		T50_[4] = rope__ropes_115(k);
27892 		T51_ = NIM_NIL;
27893 		T51_ = percent___cgen_19050(T50_, 5);
27894 		putIntoDest__cgen_18656(p, d, e, T51_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27895 	}
27896 	break;
27897 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 68):
27898 	{
27899 		tyArray__duFhZXIIlrbrM62cWjNekg T53_;
27900 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
27901 		nimZeroMem((void*)T53_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27902 		T53_[0] = rdLoc__cgen_425(a);
27903 		T53_[1] = rdLoc__cgen_425(b);
27904 		T53_[2] = rope__ropes_115(s);
27905 		T53_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27906 		T53_[4] = rope__ropes_115(k);
27907 		T54_ = NIM_NIL;
27908 		T54_ = percent___cgen_19055(T53_, 5);
27909 		putIntoDest__cgen_18656(p, d, e, T54_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27910 	}
27911 	break;
27912 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 69):
27913 	{
27914 		tyArray__duFhZXIIlrbrM62cWjNekg T56_;
27915 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
27916 		nimZeroMem((void*)T56_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27917 		T56_[0] = rdLoc__cgen_425(a);
27918 		T56_[1] = rdLoc__cgen_425(b);
27919 		T56_[2] = rope__ropes_115(s);
27920 		T56_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27921 		T56_[4] = rope__ropes_115(k);
27922 		T57_ = NIM_NIL;
27923 		T57_ = percent___cgen_19060(T56_, 5);
27924 		putIntoDest__cgen_18656(p, d, e, T57_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27925 	}
27926 	break;
27927 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 70):
27928 	{
27929 		tyArray__duFhZXIIlrbrM62cWjNekg T59_;
27930 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
27931 		nimZeroMem((void*)T59_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27932 		T59_[0] = rdLoc__cgen_425(a);
27933 		T59_[1] = rdLoc__cgen_425(b);
27934 		T59_[2] = rope__ropes_115(s);
27935 		T59_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27936 		T59_[4] = rope__ropes_115(k);
27937 		T60_ = NIM_NIL;
27938 		T60_ = percent___cgen_19065(T59_, 5);
27939 		putIntoDest__cgen_18656(p, d, e, T60_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27940 	}
27941 	break;
27942 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 71):
27943 	{
27944 		tyArray__duFhZXIIlrbrM62cWjNekg T62_;
27945 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
27946 		nimZeroMem((void*)T62_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27947 		T62_[0] = rdLoc__cgen_425(a);
27948 		T62_[1] = rdLoc__cgen_425(b);
27949 		T62_[2] = rope__ropes_115(s);
27950 		T62_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27951 		T62_[4] = rope__ropes_115(k);
27952 		T63_ = NIM_NIL;
27953 		T63_ = percent___cgen_19070(T62_, 5);
27954 		putIntoDest__cgen_18656(p, d, e, T63_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27955 	}
27956 	break;
27957 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 72):
27958 	{
27959 		tyArray__duFhZXIIlrbrM62cWjNekg T65_;
27960 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
27961 		nimZeroMem((void*)T65_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27962 		T65_[0] = rdLoc__cgen_425(a);
27963 		T65_[1] = rdLoc__cgen_425(b);
27964 		T65_[2] = rope__ropes_115(s);
27965 		T65_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27966 		T65_[4] = rope__ropes_115(k);
27967 		T66_ = NIM_NIL;
27968 		T66_ = percent___cgen_19075(T65_, 5);
27969 		putIntoDest__cgen_18656(p, d, e, T66_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27970 	}
27971 	break;
27972 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 73):
27973 	{
27974 		tyArray__duFhZXIIlrbrM62cWjNekg T68_;
27975 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
27976 		nimZeroMem((void*)T68_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27977 		T68_[0] = rdLoc__cgen_425(a);
27978 		T68_[1] = rdLoc__cgen_425(b);
27979 		T68_[2] = rope__ropes_115(s);
27980 		T68_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27981 		T68_[4] = rope__ropes_115(k);
27982 		T69_ = NIM_NIL;
27983 		T69_ = percent___cgen_19065(T68_, 5);
27984 		putIntoDest__cgen_18656(p, d, e, T69_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
27985 	}
27986 	break;
27987 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 74):
27988 	{
27989 		tyArray__duFhZXIIlrbrM62cWjNekg T71_;
27990 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T72_;
27991 		nimZeroMem((void*)T71_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
27992 		T71_[0] = rdLoc__cgen_425(a);
27993 		T71_[1] = rdLoc__cgen_425(b);
27994 		T71_[2] = rope__ropes_115(s);
27995 		T71_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
27996 		T71_[4] = rope__ropes_115(k);
27997 		T72_ = NIM_NIL;
27998 		T72_ = percent___cgen_19070(T71_, 5);
27999 		putIntoDest__cgen_18656(p, d, e, T72_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28000 	}
28001 	break;
28002 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 75):
28003 	{
28004 		tyArray__duFhZXIIlrbrM62cWjNekg T74_;
28005 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T75_;
28006 		nimZeroMem((void*)T74_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28007 		T74_[0] = rdLoc__cgen_425(a);
28008 		T74_[1] = rdLoc__cgen_425(b);
28009 		T74_[2] = rope__ropes_115(s);
28010 		T74_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28011 		T74_[4] = rope__ropes_115(k);
28012 		T75_ = NIM_NIL;
28013 		T75_ = percent___cgen_19075(T74_, 5);
28014 		putIntoDest__cgen_18656(p, d, e, T75_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28015 	}
28016 	break;
28017 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 76):
28018 	{
28019 		tyArray__duFhZXIIlrbrM62cWjNekg T77_;
28020 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T78_;
28021 		nimZeroMem((void*)T77_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28022 		T77_[0] = rdLoc__cgen_425(a);
28023 		T77_[1] = rdLoc__cgen_425(b);
28024 		T77_[2] = rope__ropes_115(s);
28025 		T77_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28026 		T77_[4] = rope__ropes_115(k);
28027 		T78_ = NIM_NIL;
28028 		T78_ = percent___cgen_19092(T77_, 5);
28029 		putIntoDest__cgen_18656(p, d, e, T78_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28030 	}
28031 	break;
28032 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 77):
28033 	{
28034 		tyArray__duFhZXIIlrbrM62cWjNekg T80_;
28035 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
28036 		nimZeroMem((void*)T80_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28037 		T80_[0] = rdLoc__cgen_425(a);
28038 		T80_[1] = rdLoc__cgen_425(b);
28039 		T80_[2] = rope__ropes_115(s);
28040 		T80_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28041 		T80_[4] = rope__ropes_115(k);
28042 		T81_ = NIM_NIL;
28043 		T81_ = percent___cgen_19097(T80_, 5);
28044 		putIntoDest__cgen_18656(p, d, e, T81_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28045 	}
28046 	break;
28047 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 78):
28048 	{
28049 		tyArray__duFhZXIIlrbrM62cWjNekg T83_;
28050 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T84_;
28051 		nimZeroMem((void*)T83_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28052 		T83_[0] = rdLoc__cgen_425(a);
28053 		T83_[1] = rdLoc__cgen_425(b);
28054 		T83_[2] = rope__ropes_115(s);
28055 		T83_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28056 		T83_[4] = rope__ropes_115(k);
28057 		T84_ = NIM_NIL;
28058 		T84_ = percent___cgen_19065(T83_, 5);
28059 		putIntoDest__cgen_18656(p, d, e, T84_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28060 	}
28061 	break;
28062 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 79):
28063 	{
28064 		tyArray__duFhZXIIlrbrM62cWjNekg T86_;
28065 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T87_;
28066 		nimZeroMem((void*)T86_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28067 		T86_[0] = rdLoc__cgen_425(a);
28068 		T86_[1] = rdLoc__cgen_425(b);
28069 		T86_[2] = rope__ropes_115(s);
28070 		T86_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28071 		T86_[4] = rope__ropes_115(k);
28072 		T87_ = NIM_NIL;
28073 		T87_ = percent___cgen_19070(T86_, 5);
28074 		putIntoDest__cgen_18656(p, d, e, T87_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28075 	}
28076 	break;
28077 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 80):
28078 	{
28079 		tyArray__duFhZXIIlrbrM62cWjNekg T89_;
28080 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T90_;
28081 		nimZeroMem((void*)T89_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28082 		T89_[0] = rdLoc__cgen_425(a);
28083 		T89_[1] = rdLoc__cgen_425(b);
28084 		T89_[2] = rope__ropes_115(s);
28085 		T89_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28086 		T89_[4] = rope__ropes_115(k);
28087 		T90_ = NIM_NIL;
28088 		T90_ = percent___cgen_19075(T89_, 5);
28089 		putIntoDest__cgen_18656(p, d, e, T90_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28090 	}
28091 	break;
28092 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 81):
28093 	{
28094 		tyArray__duFhZXIIlrbrM62cWjNekg T92_;
28095 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T93_;
28096 		nimZeroMem((void*)T92_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28097 		T92_[0] = rdLoc__cgen_425(a);
28098 		T92_[1] = rdLoc__cgen_425(b);
28099 		T92_[2] = rope__ropes_115(s);
28100 		T92_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28101 		T92_[4] = rope__ropes_115(k);
28102 		T93_ = NIM_NIL;
28103 		T93_ = percent___cgen_19114(T92_, 5);
28104 		putIntoDest__cgen_18656(p, d, e, T93_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28105 	}
28106 	break;
28107 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 82):
28108 	{
28109 		tyArray__duFhZXIIlrbrM62cWjNekg T95_;
28110 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T96_;
28111 		nimZeroMem((void*)T95_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28112 		T95_[0] = rdLoc__cgen_425(a);
28113 		T95_[1] = rdLoc__cgen_425(b);
28114 		T95_[2] = rope__ropes_115(s);
28115 		T95_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28116 		T95_[4] = rope__ropes_115(k);
28117 		T96_ = NIM_NIL;
28118 		T96_ = percent___cgen_19119(T95_, 5);
28119 		putIntoDest__cgen_18656(p, d, e, T96_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28120 	}
28121 	break;
28122 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 83):
28123 	{
28124 		tyArray__duFhZXIIlrbrM62cWjNekg T98_;
28125 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T99_;
28126 		nimZeroMem((void*)T98_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28127 		T98_[0] = rdLoc__cgen_425(a);
28128 		T98_[1] = rdLoc__cgen_425(b);
28129 		T98_[2] = rope__ropes_115(s);
28130 		T98_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28131 		T98_[4] = rope__ropes_115(k);
28132 		T99_ = NIM_NIL;
28133 		T99_ = percent___cgen_19124(T98_, 5);
28134 		putIntoDest__cgen_18656(p, d, e, T99_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28135 	}
28136 	break;
28137 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 84):
28138 	{
28139 		tyArray__duFhZXIIlrbrM62cWjNekg T101_;
28140 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T102_;
28141 		nimZeroMem((void*)T101_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28142 		T101_[0] = rdLoc__cgen_425(a);
28143 		T101_[1] = rdLoc__cgen_425(b);
28144 		T101_[2] = rope__ropes_115(s);
28145 		T101_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28146 		T101_[4] = rope__ropes_115(k);
28147 		T102_ = NIM_NIL;
28148 		T102_ = percent___cgen_19065(T101_, 5);
28149 		putIntoDest__cgen_18656(p, d, e, T102_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28150 	}
28151 	break;
28152 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 85):
28153 	{
28154 		tyArray__duFhZXIIlrbrM62cWjNekg T104_;
28155 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T105_;
28156 		nimZeroMem((void*)T104_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28157 		T104_[0] = rdLoc__cgen_425(a);
28158 		T104_[1] = rdLoc__cgen_425(b);
28159 		T104_[2] = rope__ropes_115(s);
28160 		T104_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28161 		T104_[4] = rope__ropes_115(k);
28162 		T105_ = NIM_NIL;
28163 		T105_ = percent___cgen_19070(T104_, 5);
28164 		putIntoDest__cgen_18656(p, d, e, T105_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28165 	}
28166 	break;
28167 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 86):
28168 	{
28169 		tyArray__duFhZXIIlrbrM62cWjNekg T107_;
28170 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T108_;
28171 		nimZeroMem((void*)T107_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28172 		T107_[0] = rdLoc__cgen_425(a);
28173 		T107_[1] = rdLoc__cgen_425(b);
28174 		T107_[2] = rope__ropes_115(s);
28175 		T107_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28176 		T107_[4] = rope__ropes_115(k);
28177 		T108_ = NIM_NIL;
28178 		T108_ = percent___cgen_19075(T107_, 5);
28179 		putIntoDest__cgen_18656(p, d, e, T108_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28180 	}
28181 	break;
28182 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 87):
28183 	{
28184 		tyArray__duFhZXIIlrbrM62cWjNekg T110_;
28185 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T111_;
28186 		nimZeroMem((void*)T110_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28187 		T110_[0] = rdLoc__cgen_425(a);
28188 		T110_[1] = rdLoc__cgen_425(b);
28189 		T110_[2] = rope__ropes_115(s);
28190 		T110_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28191 		T110_[4] = rope__ropes_115(k);
28192 		T111_ = NIM_NIL;
28193 		T111_ = percent___cgen_19065(T110_, 5);
28194 		putIntoDest__cgen_18656(p, d, e, T111_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28195 	}
28196 	break;
28197 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 88):
28198 	{
28199 		tyArray__duFhZXIIlrbrM62cWjNekg T113_;
28200 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T114_;
28201 		nimZeroMem((void*)T113_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28202 		T113_[0] = rdLoc__cgen_425(a);
28203 		T113_[1] = rdLoc__cgen_425(b);
28204 		T113_[2] = rope__ropes_115(s);
28205 		T113_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28206 		T113_[4] = rope__ropes_115(k);
28207 		T114_ = NIM_NIL;
28208 		T114_ = percent___cgen_19070(T113_, 5);
28209 		putIntoDest__cgen_18656(p, d, e, T114_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28210 	}
28211 	break;
28212 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 89):
28213 	{
28214 		tyArray__duFhZXIIlrbrM62cWjNekg T116_;
28215 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T117_;
28216 		nimZeroMem((void*)T116_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28217 		T116_[0] = rdLoc__cgen_425(a);
28218 		T116_[1] = rdLoc__cgen_425(b);
28219 		T116_[2] = rope__ropes_115(s);
28220 		T116_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28221 		T116_[4] = rope__ropes_115(k);
28222 		T117_ = NIM_NIL;
28223 		T117_ = percent___cgen_19075(T116_, 5);
28224 		putIntoDest__cgen_18656(p, d, e, T117_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28225 	}
28226 	break;
28227 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 90):
28228 	{
28229 		tyArray__duFhZXIIlrbrM62cWjNekg T119_;
28230 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T120_;
28231 		nimZeroMem((void*)T119_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
28232 		T119_[0] = rdLoc__cgen_425(a);
28233 		T119_[1] = rdLoc__cgen_425(b);
28234 		T119_[2] = rope__ropes_115(s);
28235 		T119_[3] = getSimpleTypeDesc__cgen_1802((*p).module, (*e).typ);
28236 		T119_[4] = rope__ropes_115(k);
28237 		T120_ = NIM_NIL;
28238 		T120_ = percent___cgen_19153(T119_, 5);
28239 		putIntoDest__cgen_18656(p, d, e, T120_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28240 	}
28241 	break;
28242 	default:
28243 	{
28244 	}
28245 	break;
28246 	}
28247 }
N_NIMCALL(void,binaryFloatArith__cgen_22977)28248 N_LIB_PRIVATE N_NIMCALL(void, binaryFloatArith__cgen_22977)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m) {
28249 	{
28250 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
28251 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
28252 		NimStringDesc* res;
28253 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
28254 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
28255 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
28256 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
28257 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
28258 		if (!!(((384 & (*p).options) == 0))) goto LA3_;
28259 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
28260 		nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
28261 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
28262 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
28263 		res = rawNewString(((NI) 80));
28264 		res = resizeString(res, 2);
28265 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_218));
28266 		T5_ = NIM_NIL;
28267 		T5_ = getSimpleTypeDesc__cgen_1802((*p).module, (*(*e)._kind_6.sons->data[((NI) 1)]).typ);
28268 		cgFormatValue__cgen_141((&res), T5_);
28269 		res = resizeString(res, 2);
28270 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_644));
28271 		T6_ = NIM_NIL;
28272 		T6_ = rdLoc__cgen_425(a);
28273 		cgFormatValue__cgen_141((&res), T6_);
28274 		res = resizeString(res, 2);
28275 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
28276 		cgFormatValue__cgen_145((&res), opr__cgen_22990[(m)- 53]);
28277 		res = resizeString(res, 2);
28278 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_646));
28279 		T7_ = NIM_NIL;
28280 		T7_ = getSimpleTypeDesc__cgen_1802((*p).module, (*(*e)._kind_6.sons->data[((NI) 1)]).typ);
28281 		cgFormatValue__cgen_141((&res), T7_);
28282 		res = resizeString(res, 2);
28283 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_644));
28284 		T8_ = NIM_NIL;
28285 		T8_ = rdLoc__cgen_425(b);
28286 		cgFormatValue__cgen_141((&res), T8_);
28287 		res = resizeString(res, 2);
28288 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_423));
28289 		T9_ = NIM_NIL;
28290 		T9_ = rope__ropes_109(res);
28291 		putIntoDest__cgen_18656(p, d, e, T9_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28292 		{
28293 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T14_;
28294 			NimStringDesc* res_2;
28295 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
28296 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
28297 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
28298 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
28299 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
28300 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
28301 			if (!(((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 7))&31U)))!=0)) goto LA12_;
28302 			T14_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
28303 			T14_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
28304 			res_2 = rawNewString(((NI) 80));
28305 			res_2 = resizeString(res_2, 4);
28306 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
28307 			T15_ = NIM_NIL;
28308 			T15_ = rdLoc__cgen_425((*d));
28309 			cgFormatValue__cgen_141((&res_2), T15_);
28310 			res_2 = resizeString(res_2, 4);
28311 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_647));
28312 			T16_ = NIM_NIL;
28313 			T16_ = rdLoc__cgen_425((*d));
28314 			cgFormatValue__cgen_141((&res_2), T16_);
28315 			res_2 = resizeString(res_2, 3);
28316 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_640));
28317 			T17_ = NIM_NIL;
28318 			T17_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_648));
28319 			cgFormatValue__cgen_141((&res_2), T17_);
28320 			res_2 = resizeString(res_2, 4);
28321 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
28322 			T18_ = NIM_NIL;
28323 			T18_ = raiseInstr__cgen_414(p);
28324 			cgFormatValue__cgen_141((&res_2), T18_);
28325 			res_2 = resizeString(res_2, 1);
28326 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
28327 			{
28328 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA21_;
28329 				res_2 = resizeString(res_2, 1);
28330 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
28331 			}
28332 			LA21_: ;
28333 			T23_ = NIM_NIL;
28334 			T23_ = rope__ropes_109(res_2);
28335 			T24_ = NIM_NIL;
28336 			T24_ = indentLine__cgen_280(p, T23_);
28337 			add__ropes_159(T14_, T24_);
28338 		}
28339 		LA12_: ;
28340 		{
28341 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T29_;
28342 			NimStringDesc* res_3;
28343 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
28344 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
28345 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
28346 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
28347 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
28348 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
28349 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
28350 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
28351 			if (!(((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 8))&31U)))!=0)) goto LA27_;
28352 			T29_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
28353 			T29_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
28354 			res_3 = rawNewString(((NI) 80));
28355 			res_3 = resizeString(res_3, 4);
28356 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
28357 			T30_ = NIM_NIL;
28358 			T30_ = rdLoc__cgen_425((*d));
28359 			cgFormatValue__cgen_141((&res_3), T30_);
28360 			res_3 = resizeString(res_3, 11);
28361 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_649));
28362 			T31_ = NIM_NIL;
28363 			T31_ = rdLoc__cgen_425((*d));
28364 			cgFormatValue__cgen_141((&res_3), T31_);
28365 			res_3 = resizeString(res_3, 8);
28366 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_650));
28367 			T32_ = NIM_NIL;
28368 			T32_ = rdLoc__cgen_425((*d));
28369 			cgFormatValue__cgen_141((&res_3), T32_);
28370 			res_3 = resizeString(res_3, 4);
28371 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_651));
28372 			T33_ = NIM_NIL;
28373 			T33_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_652));
28374 			cgFormatValue__cgen_141((&res_3), T33_);
28375 			res_3 = resizeString(res_3, 1);
28376 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
28377 			T34_ = NIM_NIL;
28378 			T34_ = rdLoc__cgen_425((*d));
28379 			cgFormatValue__cgen_141((&res_3), T34_);
28380 			res_3 = resizeString(res_3, 3);
28381 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
28382 			T35_ = NIM_NIL;
28383 			T35_ = raiseInstr__cgen_414(p);
28384 			cgFormatValue__cgen_141((&res_3), T35_);
28385 			res_3 = resizeString(res_3, 1);
28386 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
28387 			{
28388 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA38_;
28389 				res_3 = resizeString(res_3, 1);
28390 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
28391 			}
28392 			LA38_: ;
28393 			T40_ = NIM_NIL;
28394 			T40_ = rope__ropes_109(res_3);
28395 			T41_ = NIM_NIL;
28396 			T41_ = indentLine__cgen_280(p, T40_);
28397 			add__ropes_159(T29_, T41_);
28398 		}
28399 		LA27_: ;
28400 	}
28401 	goto LA1_;
28402 	LA3_: ;
28403 	{
28404 		binaryArith__cgen_18951(p, e, d, m);
28405 	}
28406 	LA1_: ;
28407 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19192)28408 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19192)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
28409 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
28410 	result = NIM_NIL;
28411 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_680), args, argsLen_0);
28412 	return result;
28413 }
N_NIMCALL(void,genEqProc__cgen_19164)28414 N_LIB_PRIVATE N_NIMCALL(void, genEqProc__cgen_19164)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
28415 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
28416 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
28417 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
28418 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
28419 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
28420 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
28421 	{
28422 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T3_;
28423 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T4_;
28424 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T7_;
28425 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
28426 		T3_ = NIM_NIL;
28427 		T3_ = t__cgen_79(a);
28428 		T4_ = NIM_NIL;
28429 		T4_ = skipTypes__ast_3735(T3_, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
28430 		if (!((*T4_).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9))) goto LA5_;
28431 		nimZeroMem((void*)T7_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
28432 		T7_[0] = rdLoc__cgen_425(a);
28433 		T7_[1] = rdLoc__cgen_425(b);
28434 		T8_ = NIM_NIL;
28435 		T8_ = percent___cgen_19192(T7_, 2);
28436 		putIntoDest__cgen_18656(p, d, e, T8_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28437 	}
28438 	goto LA1_;
28439 	LA5_: ;
28440 	{
28441 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T10_;
28442 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
28443 		nimZeroMem((void*)T10_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
28444 		T10_[0] = rdLoc__cgen_425(a);
28445 		T10_[1] = rdLoc__cgen_425(b);
28446 		T11_ = NIM_NIL;
28447 		T11_ = percent___cgen_19065(T10_, 2);
28448 		putIntoDest__cgen_18656(p, d, e, T11_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28449 	}
28450 	LA1_: ;
28451 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_18797)28452 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18797)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
28453 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
28454 	result = NIM_NIL;
28455 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_681), args, argsLen_0);
28456 	return result;
28457 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_18874)28458 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_18874)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
28459 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
28460 	result = NIM_NIL;
28461 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_697), args, argsLen_0);
28462 	return result;
28463 }
N_NIMCALL(void,binaryArithOverflow__cgen_18764)28464 N_LIB_PRIVATE N_NIMCALL(void, binaryArithOverflow__cgen_18764)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg m) {
28465 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
28466 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
28467 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
28468 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
28469 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
28470 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
28471 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
28472 	t = skipTypes__ast_3735((*e).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_574);
28473 	{
28474 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* res;
28475 		tyArray__f7nG5LD47BH5K9c6mASit3g T5_;
28476 		if (!!((((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 5))&31U)))!=0))) goto LA3_;
28477 		nimZeroMem((void*)T5_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
28478 		T5_[0] = getTypeDesc__cgen_6631((*p).module, (*e).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
28479 		T5_[1] = rdLoc__cgen_425(a);
28480 		T5_[2] = rope__ropes_109(opr__cgen_18771[(m)- 46]);
28481 		T5_[3] = rdLoc__cgen_425(b);
28482 		res = percent___cgen_18797(T5_, 4);
28483 		putIntoDest__cgen_18656(p, d, e, res, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28484 	}
28485 	goto LA1_;
28486 	LA3_: ;
28487 	{
28488 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* res_3;
28489 		NI64 sizeX60gensym3650_;
28490 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* storageX60gensym3650_;
28491 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* resultX60gensym3650_;
28492 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T26_;
28493 		NimStringDesc* res_4;
28494 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
28495 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
28496 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T33_;
28497 		NimStringDesc* res_5;
28498 		NimStringDesc* T34_;
28499 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
28500 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
28501 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
28502 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
28503 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
28504 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
28505 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
28506 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T70_;
28507 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
28508 		{
28509 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T11_;
28510 			NimStringDesc* res_2;
28511 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
28512 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
28513 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
28514 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
28515 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
28516 			if (!(m == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 49) || m == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 50))) goto LA9_;
28517 			T11_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
28518 			T11_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
28519 			res_2 = rawNewString(((NI) 80));
28520 			res_2 = resizeString(res_2, 4);
28521 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
28522 			T12_ = NIM_NIL;
28523 			T12_ = rdLoc__cgen_425(b);
28524 			cgFormatValue__cgen_141((&res_2), T12_);
28525 			res_2 = resizeString(res_2, 8);
28526 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_683));
28527 			T13_ = NIM_NIL;
28528 			T13_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_684));
28529 			cgFormatValue__cgen_141((&res_2), T13_);
28530 			res_2 = resizeString(res_2, 4);
28531 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
28532 			T14_ = NIM_NIL;
28533 			T14_ = raiseInstr__cgen_414(p);
28534 			cgFormatValue__cgen_141((&res_2), T14_);
28535 			res_2 = resizeString(res_2, 1);
28536 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
28537 			{
28538 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA17_;
28539 				res_2 = resizeString(res_2, 1);
28540 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
28541 			}
28542 			LA17_: ;
28543 			T19_ = NIM_NIL;
28544 			T19_ = rope__ropes_109(res_2);
28545 			T20_ = NIM_NIL;
28546 			T20_ = indentLine__cgen_280(p, T19_);
28547 			add__ropes_159(T11_, T20_);
28548 		}
28549 		LA9_: ;
28550 		sizeX60gensym3650_ = getSize__types_3327((*(*(*p).module).g).config, t);
28551 		{
28552 			if (!(sizeX60gensym3650_ < ((NI64) ((*(*(*(*p).module).g).config).target.intSize)))) goto LA23_;
28553 			storageX60gensym3650_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_454));
28554 		}
28555 		goto LA21_;
28556 		LA23_: ;
28557 		{
28558 			storageX60gensym3650_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
28559 		}
28560 		LA21_: ;
28561 		resultX60gensym3650_ = getTempName__cgen_418((*p).module);
28562 		T26_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
28563 		T26_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
28564 		res_4 = rawNewString(((NI) 80));
28565 		cgFormatValue__cgen_141((&res_4), storageX60gensym3650_);
28566 		res_4 = resizeString(res_4, 1);
28567 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
28568 		cgFormatValue__cgen_141((&res_4), resultX60gensym3650_);
28569 		res_4 = resizeString(res_4, 1);
28570 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
28571 		{
28572 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA29_;
28573 			res_4 = resizeString(res_4, 1);
28574 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
28575 		}
28576 		LA29_: ;
28577 		T31_ = NIM_NIL;
28578 		T31_ = rope__ropes_109(res_4);
28579 		T32_ = NIM_NIL;
28580 		T32_ = indentLine__cgen_280(p, T31_);
28581 		add__ropes_159(T26_, T32_);
28582 		T33_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
28583 		T33_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
28584 		res_5 = rawNewString(((NI) 80));
28585 		res_5 = resizeString(res_5, 4);
28586 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
28587 		T34_ = NIM_NIL;
28588 		{
28589 			if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35))) goto LA37_;
28590 			T34_ = copyString(prc64__cgen_18770[(m)- 46]);
28591 		}
28592 		goto LA35_;
28593 		LA37_: ;
28594 		{
28595 			T34_ = copyString(prc__cgen_18769[(m)- 46]);
28596 		}
28597 		LA35_: ;
28598 		T40_ = NIM_NIL;
28599 		T40_ = cgsym__cgen_120((*p).module, T34_);
28600 		cgFormatValue__cgen_141((&res_5), T40_);
28601 		res_5 = resizeString(res_5, 1);
28602 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
28603 		T41_ = NIM_NIL;
28604 		T41_ = rdCharLoc__cgen_10343(a);
28605 		cgFormatValue__cgen_141((&res_5), T41_);
28606 		res_5 = resizeString(res_5, 2);
28607 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
28608 		T42_ = NIM_NIL;
28609 		T42_ = rdCharLoc__cgen_10343(b);
28610 		cgFormatValue__cgen_141((&res_5), T42_);
28611 		res_5 = resizeString(res_5, 3);
28612 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_695));
28613 		cgFormatValue__cgen_141((&res_5), resultX60gensym3650_);
28614 		res_5 = resizeString(res_5, 5);
28615 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_696));
28616 		T43_ = NIM_NIL;
28617 		T43_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_641));
28618 		cgFormatValue__cgen_141((&res_5), T43_);
28619 		res_5 = resizeString(res_5, 4);
28620 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
28621 		T44_ = NIM_NIL;
28622 		T44_ = raiseInstr__cgen_414(p);
28623 		cgFormatValue__cgen_141((&res_5), T44_);
28624 		res_5 = resizeString(res_5, 2);
28625 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_309));
28626 		{
28627 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA47_;
28628 			res_5 = resizeString(res_5, 1);
28629 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
28630 		}
28631 		LA47_: ;
28632 		T49_ = NIM_NIL;
28633 		T49_ = rope__ropes_109(res_5);
28634 		T50_ = NIM_NIL;
28635 		T50_ = indentLine__cgen_280(p, T49_);
28636 		add__ropes_159(T33_, T50_);
28637 		{
28638 			NIM_BOOL T53_;
28639 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T57_;
28640 			NimStringDesc* res_6;
28641 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T58_;
28642 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
28643 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T60_;
28644 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T61_;
28645 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T62_;
28646 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
28647 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
28648 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
28649 			T53_ = (NIM_BOOL)0;
28650 			T53_ = (sizeX60gensym3650_ < ((NI64) ((*(*(*(*p).module).g).config).target.intSize)));
28651 			if (T53_) goto LA54_;
28652 			T53_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14));
28653 			LA54_: ;
28654 			if (!T53_) goto LA55_;
28655 			T57_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
28656 			T57_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
28657 			res_6 = rawNewString(((NI) 80));
28658 			res_6 = resizeString(res_6, 4);
28659 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
28660 			cgFormatValue__cgen_141((&res_6), resultX60gensym3650_);
28661 			res_6 = resizeString(res_6, 3);
28662 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_177));
28663 			T58_ = firstOrd__types_1353((*(*(*p).module).g).config, t);
28664 			T59_ = NIM_NIL;
28665 			T59_ = intLiteral__cgen_17635(T58_);
28666 			cgFormatValue__cgen_141((&res_6), T59_);
28667 			res_6 = resizeString(res_6, 4);
28668 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_578));
28669 			cgFormatValue__cgen_141((&res_6), resultX60gensym3650_);
28670 			res_6 = resizeString(res_6, 3);
28671 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_579));
28672 			T60_ = lastOrd__types_1465((*(*(*p).module).g).config, t);
28673 			T61_ = NIM_NIL;
28674 			T61_ = intLiteral__cgen_17635(T60_);
28675 			cgFormatValue__cgen_141((&res_6), T61_);
28676 			res_6 = resizeString(res_6, 3);
28677 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_640));
28678 			T62_ = NIM_NIL;
28679 			T62_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_641));
28680 			cgFormatValue__cgen_141((&res_6), T62_);
28681 			res_6 = resizeString(res_6, 4);
28682 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
28683 			T63_ = NIM_NIL;
28684 			T63_ = raiseInstr__cgen_414(p);
28685 			cgFormatValue__cgen_141((&res_6), T63_);
28686 			res_6 = resizeString(res_6, 1);
28687 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
28688 			{
28689 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA66_;
28690 				res_6 = resizeString(res_6, 1);
28691 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
28692 			}
28693 			LA66_: ;
28694 			T68_ = NIM_NIL;
28695 			T68_ = rope__ropes_109(res_6);
28696 			T69_ = NIM_NIL;
28697 			T69_ = indentLine__cgen_280(p, T68_);
28698 			add__ropes_159(T57_, T69_);
28699 		}
28700 		LA55_: ;
28701 		res_3 = resultX60gensym3650_;
28702 		nimZeroMem((void*)T70_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
28703 		T70_[0] = getTypeDesc__cgen_6631((*p).module, (*e).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
28704 		T70_[1] = res_3;
28705 		T71_ = NIM_NIL;
28706 		T71_ = percent___cgen_18874(T70_, 2);
28707 		putIntoDest__cgen_18656(p, d, e, T71_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
28708 	}
28709 	LA1_: ;
28710 }
N_NIMCALL(void,gcUsage__cgen_20362)28711 N_LIB_PRIVATE N_NIMCALL(void, gcUsage__cgen_20362)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
28712 	{
28713 		NimStringDesc* T5_;
28714 		if (!((*conf).selectedGC == ((tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw) 1))) goto LA3_;
28715 		T5_ = NIM_NIL;
28716 		T5_ = renderTree__renderer_46(n, 0);
28717 		liMessage__msgs_1118(conf, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 50), T5_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_715, NIM_FALSE);
28718 	}
28719 	LA3_: ;
28720 }
N_NIMCALL(void,genRepr__cgen_21464)28721 N_LIB_PRIVATE N_NIMCALL(void, genRepr__cgen_21464)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
28722 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
28723 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
28724 	{
28725 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA3_;
28726 		liMessage__msgs_1118((*(*(*p).module).g).config, (*e).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_698), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_699, NIM_FALSE);
28727 	}
28728 	LA3_: ;
28729 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
28730 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
28731 	t = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
28732 	switch ((*t).kind) {
28733 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35):
28734 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
28735 	{
28736 		NimStringDesc* res;
28737 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
28738 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
28739 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
28740 		res = rawNewString(((NI) 80));
28741 		T6_ = NIM_NIL;
28742 		T6_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_700));
28743 		cgFormatValue__cgen_141((&res), T6_);
28744 		res = resizeString(res, 7);
28745 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_701));
28746 		T7_ = NIM_NIL;
28747 		T7_ = rdLoc__cgen_425(a);
28748 		cgFormatValue__cgen_141((&res), T7_);
28749 		res = resizeString(res, 1);
28750 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
28751 		T8_ = NIM_NIL;
28752 		T8_ = rope__ropes_109(res);
28753 		putIntoDest__cgen_18656(p, d, e, T8_, a.storage);
28754 	}
28755 	break;
28756 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39):
28757 	{
28758 		NimStringDesc* res_2;
28759 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
28760 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
28761 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
28762 		res_2 = rawNewString(((NI) 80));
28763 		T10_ = NIM_NIL;
28764 		T10_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_702));
28765 		cgFormatValue__cgen_141((&res_2), T10_);
28766 		res_2 = resizeString(res_2, 1);
28767 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
28768 		T11_ = NIM_NIL;
28769 		T11_ = rdLoc__cgen_425(a);
28770 		cgFormatValue__cgen_141((&res_2), T11_);
28771 		res_2 = resizeString(res_2, 1);
28772 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
28773 		T12_ = NIM_NIL;
28774 		T12_ = rope__ropes_109(res_2);
28775 		putIntoDest__cgen_18656(p, d, e, T12_, a.storage);
28776 	}
28777 	break;
28778 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
28779 	{
28780 		NimStringDesc* res_3;
28781 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
28782 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
28783 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
28784 		res_3 = rawNewString(((NI) 80));
28785 		T14_ = NIM_NIL;
28786 		T14_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_703));
28787 		cgFormatValue__cgen_141((&res_3), T14_);
28788 		res_3 = resizeString(res_3, 1);
28789 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
28790 		T15_ = NIM_NIL;
28791 		T15_ = rdLoc__cgen_425(a);
28792 		cgFormatValue__cgen_141((&res_3), T15_);
28793 		res_3 = resizeString(res_3, 1);
28794 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
28795 		T16_ = NIM_NIL;
28796 		T16_ = rope__ropes_109(res_3);
28797 		putIntoDest__cgen_18656(p, d, e, T16_, a.storage);
28798 	}
28799 	break;
28800 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
28801 	{
28802 		NimStringDesc* res_4;
28803 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
28804 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
28805 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
28806 		res_4 = rawNewString(((NI) 80));
28807 		T18_ = NIM_NIL;
28808 		T18_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_704));
28809 		cgFormatValue__cgen_141((&res_4), T18_);
28810 		res_4 = resizeString(res_4, 1);
28811 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
28812 		T19_ = NIM_NIL;
28813 		T19_ = rdLoc__cgen_425(a);
28814 		cgFormatValue__cgen_141((&res_4), T19_);
28815 		res_4 = resizeString(res_4, 1);
28816 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
28817 		T20_ = NIM_NIL;
28818 		T20_ = rope__ropes_109(res_4);
28819 		putIntoDest__cgen_18656(p, d, e, T20_, a.storage);
28820 	}
28821 	break;
28822 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
28823 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 15):
28824 	{
28825 		NimStringDesc* res_5;
28826 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
28827 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
28828 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
28829 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
28830 		res_5 = rawNewString(((NI) 80));
28831 		T22_ = NIM_NIL;
28832 		T22_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_705));
28833 		cgFormatValue__cgen_141((&res_5), T22_);
28834 		res_5 = resizeString(res_5, 5);
28835 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_706));
28836 		T23_ = NIM_NIL;
28837 		T23_ = rdLoc__cgen_425(a);
28838 		cgFormatValue__cgen_141((&res_5), T23_);
28839 		res_5 = resizeString(res_5, 2);
28840 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
28841 		T24_ = NIM_NIL;
28842 		T24_ = genTypeInfoV1__cgen_6768((*p).module, t, (*e).info);
28843 		cgFormatValue__cgen_141((&res_5), T24_);
28844 		res_5 = resizeString(res_5, 1);
28845 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
28846 		T25_ = NIM_NIL;
28847 		T25_ = rope__ropes_109(res_5);
28848 		putIntoDest__cgen_18656(p, d, e, T25_, a.storage);
28849 	}
28850 	break;
28851 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
28852 	{
28853 		NimStringDesc* res_6;
28854 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
28855 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
28856 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
28857 		res_6 = rawNewString(((NI) 80));
28858 		T27_ = NIM_NIL;
28859 		T27_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_707));
28860 		cgFormatValue__cgen_141((&res_6), T27_);
28861 		res_6 = resizeString(res_6, 1);
28862 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
28863 		T28_ = NIM_NIL;
28864 		T28_ = rdLoc__cgen_425(a);
28865 		cgFormatValue__cgen_141((&res_6), T28_);
28866 		res_6 = resizeString(res_6, 1);
28867 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
28868 		T29_ = NIM_NIL;
28869 		T29_ = rope__ropes_109(res_6);
28870 		putIntoDest__cgen_18656(p, d, e, T29_, a.storage);
28871 	}
28872 	break;
28873 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
28874 	{
28875 		NimStringDesc* res_7;
28876 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
28877 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
28878 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
28879 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
28880 		res_7 = rawNewString(((NI) 80));
28881 		T31_ = NIM_NIL;
28882 		T31_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_708));
28883 		cgFormatValue__cgen_141((&res_7), T31_);
28884 		res_7 = resizeString(res_7, 1);
28885 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
28886 		T32_ = NIM_NIL;
28887 		T32_ = addrLoc__cgen_10303((*(*(*p).module).g).config, a);
28888 		cgFormatValue__cgen_141((&res_7), T32_);
28889 		res_7 = resizeString(res_7, 2);
28890 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
28891 		T33_ = NIM_NIL;
28892 		T33_ = genTypeInfoV1__cgen_6768((*p).module, t, (*e).info);
28893 		cgFormatValue__cgen_141((&res_7), T33_);
28894 		res_7 = resizeString(res_7, 1);
28895 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
28896 		T34_ = NIM_NIL;
28897 		T34_ = rope__ropes_109(res_7);
28898 		putIntoDest__cgen_18656(p, d, e, T34_, a.storage);
28899 	}
28900 	break;
28901 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
28902 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
28903 	{
28904 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
28905 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T36_;
28906 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T37_;
28907 		NimStringDesc* res_8;
28908 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
28909 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
28910 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T52_;
28911 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
28912 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
28913 		nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
28914 		T36_ = NIM_NIL;
28915 		T36_ = t__cgen_79(a);
28916 		T37_ = NIM_NIL;
28917 		T37_ = skipTypes__ast_3735(T36_, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
28918 		switch ((*T37_).kind) {
28919 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
28920 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
28921 		{
28922 			tyArray__JiWwrsTRC6xqNlGcBthSVA T39_;
28923 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
28924 			nimZeroMem((void*)T39_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
28925 			T39_[0] = rdLoc__cgen_425(a);
28926 			T40_ = NIM_NIL;
28927 			T40_ = percent___cgen_11933(T39_, 1);
28928 			putIntoDest__cgen_18656(p, (&b), e, T40_, a.storage);
28929 		}
28930 		break;
28931 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
28932 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
28933 		{
28934 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T42_;
28935 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
28936 			nimZeroMem((void*)T42_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
28937 			T42_[0] = rdLoc__cgen_425(a);
28938 			T42_[1] = lenExpr__cgen_448(p, a);
28939 			T42_[2] = dataField__cgen_461(p);
28940 			T43_ = NIM_NIL;
28941 			T43_ = percent___cgen_11986(T42_, 3);
28942 			putIntoDest__cgen_18656(p, (&b), e, T43_, a.storage);
28943 		}
28944 		break;
28945 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
28946 		{
28947 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T45_;
28948 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T46_;
28949 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T47_;
28950 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
28951 			nimZeroMem((void*)T45_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
28952 			T45_[0] = rdLoc__cgen_425(a);
28953 			T46_ = NIM_NIL;
28954 			T46_ = t__cgen_79(a);
28955 			T47_ = lengthOrd__types_1652((*(*(*p).module).g).config, T46_);
28956 			T45_[1] = rope__cgen_6918(T47_);
28957 			T48_ = NIM_NIL;
28958 			T48_ = percent___cgen_11991(T45_, 2);
28959 			putIntoDest__cgen_18656(p, (&b), e, T48_, a.storage);
28960 		}
28961 		break;
28962 		default:
28963 		{
28964 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*(*e)._kind_6.sons->data[((NI) 0)]).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_709), TM__MQdRN7fpbG7rPm4JpVVAhA_710);
28965 		}
28966 		break;
28967 		}
28968 		res_8 = rawNewString(((NI) 80));
28969 		T50_ = NIM_NIL;
28970 		T50_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_711));
28971 		cgFormatValue__cgen_141((&res_8), T50_);
28972 		res_8 = resizeString(res_8, 1);
28973 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
28974 		T51_ = NIM_NIL;
28975 		T51_ = rdLoc__cgen_425(b);
28976 		cgFormatValue__cgen_141((&res_8), T51_);
28977 		res_8 = resizeString(res_8, 2);
28978 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
28979 		T52_ = NIM_NIL;
28980 		T52_ = elemType__types_263(t);
28981 		T53_ = NIM_NIL;
28982 		T53_ = genTypeInfoV1__cgen_6768((*p).module, T52_, (*e).info);
28983 		cgFormatValue__cgen_141((&res_8), T53_);
28984 		res_8 = resizeString(res_8, 1);
28985 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
28986 		T54_ = NIM_NIL;
28987 		T54_ = rope__ropes_109(res_8);
28988 		putIntoDest__cgen_18656(p, d, e, T54_, a.storage);
28989 	}
28990 	break;
28991 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
28992 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
28993 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
28994 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
28995 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26):
28996 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 5):
28997 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
28998 	{
28999 		NimStringDesc* res_9;
29000 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
29001 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
29002 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
29003 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
29004 		res_9 = rawNewString(((NI) 80));
29005 		T56_ = NIM_NIL;
29006 		T56_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_712));
29007 		cgFormatValue__cgen_141((&res_9), T56_);
29008 		res_9 = resizeString(res_9, 1);
29009 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29010 		T57_ = NIM_NIL;
29011 		T57_ = rdLoc__cgen_425(a);
29012 		cgFormatValue__cgen_141((&res_9), T57_);
29013 		res_9 = resizeString(res_9, 2);
29014 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
29015 		T58_ = NIM_NIL;
29016 		T58_ = genTypeInfoV1__cgen_6768((*p).module, t, (*e).info);
29017 		cgFormatValue__cgen_141((&res_9), T58_);
29018 		res_9 = resizeString(res_9, 1);
29019 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
29020 		T59_ = NIM_NIL;
29021 		T59_ = rope__ropes_109(res_9);
29022 		putIntoDest__cgen_18656(p, d, e, T59_, a.storage);
29023 	}
29024 	break;
29025 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 3):
29026 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 63):
29027 	{
29028 		liMessage__msgs_1118((*(*(*p).module).g).config, (*e).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_713), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_714, NIM_FALSE);
29029 	}
29030 	break;
29031 	default:
29032 	{
29033 		NimStringDesc* res_10;
29034 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T62_;
29035 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
29036 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
29037 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T65_;
29038 		res_10 = rawNewString(((NI) 80));
29039 		T62_ = NIM_NIL;
29040 		T62_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_712));
29041 		cgFormatValue__cgen_141((&res_10), T62_);
29042 		res_10 = resizeString(res_10, 1);
29043 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29044 		T63_ = NIM_NIL;
29045 		T63_ = addrLoc__cgen_10303((*(*(*p).module).g).config, a);
29046 		cgFormatValue__cgen_141((&res_10), T63_);
29047 		res_10 = resizeString(res_10, 2);
29048 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
29049 		T64_ = NIM_NIL;
29050 		T64_ = genTypeInfoV1__cgen_6768((*p).module, t, (*e).info);
29051 		cgFormatValue__cgen_141((&res_10), T64_);
29052 		res_10 = resizeString(res_10, 1);
29053 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
29054 		T65_ = NIM_NIL;
29055 		T65_ = rope__ropes_109(res_10);
29056 		putIntoDest__cgen_18656(p, d, e, T65_, a.storage);
29057 	}
29058 	break;
29059 	}
29060 	gcUsage__cgen_20362((*(*(*p).module).g).config, e);
29061 }
N_NIMCALL(void,genGetTypeInfo__cgen_21636)29062 N_LIB_PRIVATE N_NIMCALL(void, genGetTypeInfo__cgen_21636)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
29063 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
29064 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
29065 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
29066 	T1_ = NIM_NIL;
29067 	T1_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134));
29068 	(void)(T1_);
29069 	t = (*(*e)._kind_6.sons->data[((NI) 1)]).typ;
29070 	T2_ = NIM_NIL;
29071 	T2_ = genTypeInfoV1__cgen_6768((*p).module, t, (*e).info);
29072 	putIntoDest__cgen_18656(p, d, e, T2_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
29073 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,rdMType__cgen_21580)29074 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rdMType__cgen_21580)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** nilCheck, NIM_BOOL enforceV1) {
29075 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
29076 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
29077 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
29078 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
29079 	result = NIM_NIL;
29080 	result = rdLoc__cgen_425(a);
29081 	T1_ = NIM_NIL;
29082 	T1_ = t__cgen_79(a);
29083 	t = skipTypes__ast_3735(T1_, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
29084 	{
29085 		while (1) {
29086 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T17_;
29087 			if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22))) goto LA3;
29088 			{
29089 				if (!!(((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47)))) goto LA6_;
29090 				unsureAsgnRef((void**) (&(*nilCheck)), result);
29091 			}
29092 			LA6_: ;
29093 			{
29094 				NIM_BOOL T10_;
29095 				NIM_BOOL T12_;
29096 				tyArray__JiWwrsTRC6xqNlGcBthSVA T16_;
29097 				T10_ = (NIM_BOOL)0;
29098 				T10_ = !(((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47)));
29099 				if (T10_) goto LA11_;
29100 				T12_ = (NIM_BOOL)0;
29101 				T12_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
29102 				if (T12_) goto LA13_;
29103 				T12_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
29104 				LA13_: ;
29105 				T10_ = !(T12_);
29106 				LA11_: ;
29107 				if (!T10_) goto LA14_;
29108 				nimZeroMem((void*)T16_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
29109 				T16_[0] = result;
29110 				result = percent___cgen_432(T16_, 1);
29111 			}
29112 			LA14_: ;
29113 			T17_ = NIM_NIL;
29114 			T17_ = lastSon__ast_3743(t);
29115 			t = skipTypes__ast_3735(T17_, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
29116 		} LA3: ;
29117 	}
29118 	T18_ = NIM_NIL;
29119 	T18_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
29120 	(void)(T18_);
29121 	{
29122 		NIM_BOOL T21_;
29123 		T21_ = (NIM_BOOL)0;
29124 		T21_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
29125 		if (T21_) goto LA22_;
29126 		T21_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
29127 		LA22_: ;
29128 		if (!!(T21_)) goto LA23_;
29129 		{
29130 			while (1) {
29131 				NIM_BOOL T27_;
29132 				T27_ = (NIM_BOOL)0;
29133 				T27_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
29134 				if (!(T27_)) goto LA28_;
29135 				T27_ = !(((*t).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
29136 				LA28_: ;
29137 				if (!T27_) goto LA26;
29138 				add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_111));
29139 				t = skipTypes__ast_3735((*t).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_112);
29140 			} LA26: ;
29141 		}
29142 	}
29143 	LA23_: ;
29144 	add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_717));
29145 	{
29146 		NIM_BOOL T31_;
29147 		T31_ = (NIM_BOOL)0;
29148 		T31_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0);
29149 		if (!(T31_)) goto LA32_;
29150 		T31_ = enforceV1;
29151 		LA32_: ;
29152 		if (!T31_) goto LA33_;
29153 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_718));
29154 	}
29155 	LA33_: ;
29156 	return result;
29157 }
N_NIMCALL(void,genGetTypeInfoV2__cgen_21642)29158 N_LIB_PRIVATE N_NIMCALL(void, genGetTypeInfoV2__cgen_21642)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
29159 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
29160 	t = (*(*e)._kind_6.sons->data[((NI) 1)]).typ;
29161 	{
29162 		NIM_BOOL T3_;
29163 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
29164 		T3_ = (NIM_BOOL)0;
29165 		T3_ = isFinal__types_750(t);
29166 		if (T3_) goto LA4_;
29167 		T3_ = !(eqStrings((*(*(*(*e)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).s, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_716)));
29168 		LA4_: ;
29169 		if (!T3_) goto LA5_;
29170 		T7_ = NIM_NIL;
29171 		T7_ = genTypeInfoV2__cgen_7924((*p).module, t, (*e).info);
29172 		putIntoDest__cgen_18656(p, d, e, T7_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
29173 	}
29174 	goto LA1_;
29175 	LA5_: ;
29176 	{
29177 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
29178 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* nilCheck;
29179 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
29180 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29181 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
29182 		nilCheck = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
29183 		T9_ = NIM_NIL;
29184 		T9_ = rdMType__cgen_21580(p, a, &nilCheck, NIM_FALSE);
29185 		putIntoDest__cgen_18656(p, d, e, T9_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
29186 	}
29187 	LA1_: ;
29188 }
N_NIMCALL(void,cowBracket__cgen_19425)29189 N_LIB_PRIVATE N_NIMCALL(void, cowBracket__cgen_19425)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
29190 	{
29191 		NIM_BOOL T3_;
29192 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* strCandidate;
29193 		T3_ = (NIM_BOOL)0;
29194 		T3_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42));
29195 		if (!(T3_)) goto LA4_;
29196 		T3_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0);
29197 		LA4_: ;
29198 		if (!T3_) goto LA5_;
29199 		strCandidate = (*n)._kind_6.sons->data[((NI) 0)];
29200 		{
29201 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T9_;
29202 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
29203 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T12_;
29204 			NimStringDesc* res;
29205 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
29206 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
29207 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
29208 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
29209 			T9_ = NIM_NIL;
29210 			T9_ = skipTypes__ast_3735((*strCandidate).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
29211 			if (!((*T9_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28))) goto LA10_;
29212 			nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29213 			initLocExpr__cgen_11483(p, strCandidate, (&a));
29214 			T12_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
29215 			T12_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
29216 			res = rawNewString(((NI) 80));
29217 			T13_ = NIM_NIL;
29218 			T13_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_363));
29219 			cgFormatValue__cgen_141((&res), T13_);
29220 			res = resizeString(res, 1);
29221 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29222 			T14_ = NIM_NIL;
29223 			T14_ = byRefLoc__cgen_10319(p, a);
29224 			cgFormatValue__cgen_141((&res), T14_);
29225 			res = resizeString(res, 2);
29226 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
29227 			{
29228 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA17_;
29229 				res = resizeString(res, 1);
29230 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29231 			}
29232 			LA17_: ;
29233 			T19_ = NIM_NIL;
29234 			T19_ = rope__ropes_109(res);
29235 			T20_ = NIM_NIL;
29236 			T20_ = indentLine__cgen_280(p, T19_);
29237 			add__ropes_159(T12_, T20_);
29238 		}
29239 		LA10_: ;
29240 	}
29241 	LA5_: ;
29242 }
N_NIMCALL(void,genSwap__cgen_21943)29243 N_LIB_PRIVATE N_NIMCALL(void, genSwap__cgen_21943)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
29244 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
29245 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
29246 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
29247 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
29248 	cowBracket__cgen_19425(p, (*e)._kind_6.sons->data[((NI) 1)]);
29249 	cowBracket__cgen_19425(p, (*e)._kind_6.sons->data[((NI) 2)]);
29250 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29251 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29252 	nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29253 	T1_ = NIM_NIL;
29254 	T1_ = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_357);
29255 	getTemp__cgen_7343(p, T1_, (&tmp), NIM_FALSE);
29256 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
29257 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
29258 	genAssignment__cgen_10369(p, tmp, a, 0);
29259 	genAssignment__cgen_10369(p, a, b, 0);
29260 	genAssignment__cgen_10369(p, b, tmp, 0);
29261 }
N_NIMCALL(void,binaryStmt__cgen_18671)29262 N_LIB_PRIVATE N_NIMCALL(void, binaryStmt__cgen_18671)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, NimStringDesc* op) {
29263 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
29264 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
29265 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T5_;
29266 	NimStringDesc* res;
29267 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
29268 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
29269 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
29270 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
29271 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29272 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29273 	{
29274 		if (!!(((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0)))) goto LA3_;
29275 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_720), TM__MQdRN7fpbG7rPm4JpVVAhA_721);
29276 	}
29277 	LA3_: ;
29278 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
29279 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
29280 	T5_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
29281 	T5_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
29282 	res = rawNewString(((NI) 80));
29283 	T6_ = NIM_NIL;
29284 	T6_ = rdLoc__cgen_425(a);
29285 	cgFormatValue__cgen_141((&res), T6_);
29286 	res = resizeString(res, 1);
29287 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
29288 	cgFormatValue__cgen_145((&res), op);
29289 	res = resizeString(res, 1);
29290 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
29291 	T7_ = NIM_NIL;
29292 	T7_ = rdLoc__cgen_425(b);
29293 	cgFormatValue__cgen_141((&res), T7_);
29294 	res = resizeString(res, 1);
29295 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
29296 	{
29297 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA10_;
29298 		res = resizeString(res, 1);
29299 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29300 	}
29301 	LA10_: ;
29302 	T12_ = NIM_NIL;
29303 	T12_ = rope__ropes_109(res);
29304 	T13_ = NIM_NIL;
29305 	T13_ = indentLine__cgen_280(p, T12_);
29306 	add__ropes_159(T5_, T13_);
29307 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,strLoc__cgen_20369)29308 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, strLoc__cgen_20369)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA d) {
29309 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
29310 	result = NIM_NIL;
29311 	{
29312 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA3_;
29313 		result = byRefLoc__cgen_10319(p, d);
29314 	}
29315 	goto LA1_;
29316 	LA3_: ;
29317 	{
29318 		result = rdLoc__cgen_425(d);
29319 	}
29320 	LA1_: ;
29321 	return result;
29322 }
N_NIMCALL(void,genStrConcat__cgen_20377)29323 N_LIB_PRIVATE N_NIMCALL(void, genStrConcat__cgen_20377)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
29324 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
29325 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
29326 	NI L;
29327 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* appends;
29328 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lens;
29329 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T33_;
29330 	NimStringDesc* res_3;
29331 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
29332 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
29333 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
29334 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T41_;
29335 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29336 	nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29337 	getTemp__cgen_7343(p, (*e).typ, (&tmp), NIM_FALSE);
29338 	L = ((NI) 0);
29339 	appends = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
29340 	lens = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
29341 	{
29342 		NI i;
29343 		NI colontmp_;
29344 		NI T2_;
29345 		NI i_2;
29346 		i = (NI)0;
29347 		colontmp_ = (NI)0;
29348 		T2_ = (NI)0;
29349 		T2_ = len__ast_3198(e);
29350 		colontmp_ = (NI)(T2_ - ((NI) 1));
29351 		i_2 = ((NI) 0);
29352 		{
29353 			while (1) {
29354 				if (!(i_2 < colontmp_)) goto LA4;
29355 				i = i_2;
29356 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[(NI)(i + ((NI) 1))], (&a));
29357 				{
29358 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T7_;
29359 					NimStringDesc* res;
29360 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
29361 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
29362 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
29363 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
29364 					T7_ = NIM_NIL;
29365 					T7_ = skipTypes__ast_3735((*(*e)._kind_6.sons->data[(NI)(i + ((NI) 1))]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
29366 					if (!((*T7_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2))) goto LA8_;
29367 					L += ((NI) 1);
29368 					res = rawNewString(((NI) 80));
29369 					T10_ = NIM_NIL;
29370 					T10_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_725));
29371 					cgFormatValue__cgen_141((&res), T10_);
29372 					res = resizeString(res, 1);
29373 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29374 					T11_ = NIM_NIL;
29375 					T11_ = strLoc__cgen_20369(p, tmp);
29376 					cgFormatValue__cgen_141((&res), T11_);
29377 					res = resizeString(res, 2);
29378 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
29379 					T12_ = NIM_NIL;
29380 					T12_ = rdLoc__cgen_425(a);
29381 					cgFormatValue__cgen_141((&res), T12_);
29382 					res = resizeString(res, 2);
29383 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
29384 					{
29385 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA15_;
29386 						res = resizeString(res, 1);
29387 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29388 					}
29389 					LA15_: ;
29390 					T17_ = NIM_NIL;
29391 					T17_ = rope__ropes_109(res);
29392 					add__ropes_159(&appends, T17_);
29393 				}
29394 				goto LA5_;
29395 				LA8_: ;
29396 				{
29397 					NimStringDesc* res_2;
29398 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
29399 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
29400 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
29401 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
29402 					{
29403 						if (!((*(*e)._kind_6.sons->data[(NI)(i + ((NI) 1))]).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*(*e)._kind_6.sons->data[(NI)(i + ((NI) 1))]).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA21_;
29404 						L += ((*(*e)._kind_6.sons->data[(NI)(i + ((NI) 1))])._kind_3.strVal ? (*(*e)._kind_6.sons->data[(NI)(i + ((NI) 1))])._kind_3.strVal->Sup.len : 0);
29405 					}
29406 					goto LA19_;
29407 					LA21_: ;
29408 					{
29409 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
29410 						T24_ = NIM_NIL;
29411 						T24_ = lenExpr__cgen_448(p, a);
29412 						add__ropes_159(&lens, T24_);
29413 						add__ropes_162(&lens, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_726));
29414 					}
29415 					LA19_: ;
29416 					res_2 = rawNewString(((NI) 80));
29417 					T25_ = NIM_NIL;
29418 					T25_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_727));
29419 					cgFormatValue__cgen_141((&res_2), T25_);
29420 					res_2 = resizeString(res_2, 1);
29421 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29422 					T26_ = NIM_NIL;
29423 					T26_ = strLoc__cgen_20369(p, tmp);
29424 					cgFormatValue__cgen_141((&res_2), T26_);
29425 					res_2 = resizeString(res_2, 2);
29426 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
29427 					T27_ = NIM_NIL;
29428 					T27_ = rdLoc__cgen_425(a);
29429 					cgFormatValue__cgen_141((&res_2), T27_);
29430 					res_2 = resizeString(res_2, 2);
29431 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
29432 					{
29433 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA30_;
29434 						res_2 = resizeString(res_2, 1);
29435 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29436 					}
29437 					LA30_: ;
29438 					T32_ = NIM_NIL;
29439 					T32_ = rope__ropes_109(res_2);
29440 					add__ropes_159(&appends, T32_);
29441 				}
29442 				LA5_: ;
29443 				i_2 += ((NI) 1);
29444 			} LA4: ;
29445 		}
29446 	}
29447 	T33_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
29448 	T33_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
29449 	res_3 = rawNewString(((NI) 80));
29450 	cgFormatValue__cgen_141((&res_3), tmp.r);
29451 	res_3 = resizeString(res_3, 3);
29452 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
29453 	T34_ = NIM_NIL;
29454 	T34_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_728));
29455 	cgFormatValue__cgen_141((&res_3), T34_);
29456 	res_3 = resizeString(res_3, 1);
29457 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29458 	cgFormatValue__cgen_141((&res_3), lens);
29459 	cgFormatValue__cgen_148((&res_3), ((NI64) (L)));
29460 	res_3 = resizeString(res_3, 2);
29461 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
29462 	{
29463 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA37_;
29464 		res_3 = resizeString(res_3, 1);
29465 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29466 	}
29467 	LA37_: ;
29468 	T39_ = NIM_NIL;
29469 	T39_ = rope__ropes_109(res_3);
29470 	T40_ = NIM_NIL;
29471 	T40_ = indentLine__cgen_280(p, T39_);
29472 	add__ropes_159(T33_, T40_);
29473 	T41_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
29474 	T41_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
29475 	add__ropes_159(T41_, appends);
29476 	{
29477 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA44_;
29478 		genericAssign((void*)(&(*d)), (void*)(&tmp), (&NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_));
29479 	}
29480 	goto LA42_;
29481 	LA44_: ;
29482 	{
29483 		genAssignment__cgen_10369(p, (*d), tmp, 0);
29484 	}
29485 	LA42_: ;
29486 	gcUsage__cgen_20362((*(*(*p).module).g).config, e);
29487 }
N_NIMCALL(void,binaryStmtAddr__cgen_18697)29488 N_LIB_PRIVATE N_NIMCALL(void, binaryStmtAddr__cgen_18697)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, NimStringDesc* cpname) {
29489 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
29490 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
29491 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T5_;
29492 	NimStringDesc* res;
29493 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
29494 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
29495 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
29496 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
29497 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
29498 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29499 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29500 	{
29501 		if (!!(((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0)))) goto LA3_;
29502 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_729), TM__MQdRN7fpbG7rPm4JpVVAhA_730);
29503 	}
29504 	LA3_: ;
29505 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
29506 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
29507 	T5_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
29508 	T5_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
29509 	res = rawNewString(((NI) 80));
29510 	T6_ = NIM_NIL;
29511 	T6_ = cgsym__cgen_120((*p).module, cpname);
29512 	cgFormatValue__cgen_141((&res), T6_);
29513 	res = resizeString(res, 1);
29514 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29515 	T7_ = NIM_NIL;
29516 	T7_ = byRefLoc__cgen_10319(p, a);
29517 	cgFormatValue__cgen_141((&res), T7_);
29518 	res = resizeString(res, 2);
29519 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
29520 	T8_ = NIM_NIL;
29521 	T8_ = rdLoc__cgen_425(b);
29522 	cgFormatValue__cgen_141((&res), T8_);
29523 	res = resizeString(res, 2);
29524 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
29525 	{
29526 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA11_;
29527 		res = resizeString(res, 1);
29528 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29529 	}
29530 	LA11_: ;
29531 	T13_ = NIM_NIL;
29532 	T13_ = rope__ropes_109(res);
29533 	T14_ = NIM_NIL;
29534 	T14_ = indentLine__cgen_280(p, T13_);
29535 	add__ropes_159(T5_, T14_);
29536 }
N_NIMCALL(void,genStrAppend__cgen_20457)29537 N_LIB_PRIVATE N_NIMCALL(void, genStrAppend__cgen_20457)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
29538 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
29539 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest;
29540 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA call;
29541 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* appends;
29542 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lens;
29543 	NI L;
29544 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T49_;
29545 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29546 	nimZeroMem((void*)(&dest), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29547 	nimZeroMem((void*)(&call), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29548 	appends = NIM_NIL;
29549 	lens = NIM_NIL;
29550 	L = ((NI) 0);
29551 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&dest));
29552 	{
29553 		NI i;
29554 		NI colontmp_;
29555 		NI T2_;
29556 		NI i_2;
29557 		i = (NI)0;
29558 		colontmp_ = (NI)0;
29559 		T2_ = (NI)0;
29560 		T2_ = len__ast_3198(e);
29561 		colontmp_ = (NI)(T2_ - ((NI) 2));
29562 		i_2 = ((NI) 0);
29563 		{
29564 			while (1) {
29565 				if (!(i_2 < colontmp_)) goto LA4;
29566 				i = i_2;
29567 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[(NI)(i + ((NI) 2))], (&a));
29568 				{
29569 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T7_;
29570 					NimStringDesc* res;
29571 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
29572 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
29573 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
29574 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
29575 					T7_ = NIM_NIL;
29576 					T7_ = skipTypes__ast_3735((*(*e)._kind_6.sons->data[(NI)(i + ((NI) 2))]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
29577 					if (!((*T7_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2))) goto LA8_;
29578 					L += ((NI) 1);
29579 					res = rawNewString(((NI) 80));
29580 					T10_ = NIM_NIL;
29581 					T10_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_725));
29582 					cgFormatValue__cgen_141((&res), T10_);
29583 					res = resizeString(res, 1);
29584 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29585 					T11_ = NIM_NIL;
29586 					T11_ = strLoc__cgen_20369(p, dest);
29587 					cgFormatValue__cgen_141((&res), T11_);
29588 					res = resizeString(res, 2);
29589 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
29590 					T12_ = NIM_NIL;
29591 					T12_ = rdLoc__cgen_425(a);
29592 					cgFormatValue__cgen_141((&res), T12_);
29593 					res = resizeString(res, 2);
29594 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
29595 					{
29596 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA15_;
29597 						res = resizeString(res, 1);
29598 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29599 					}
29600 					LA15_: ;
29601 					T17_ = NIM_NIL;
29602 					T17_ = rope__ropes_109(res);
29603 					add__ropes_159(&appends, T17_);
29604 				}
29605 				goto LA5_;
29606 				LA8_: ;
29607 				{
29608 					NimStringDesc* res_2;
29609 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
29610 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
29611 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
29612 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
29613 					{
29614 						if (!((*(*e)._kind_6.sons->data[(NI)(i + ((NI) 2))]).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*(*e)._kind_6.sons->data[(NI)(i + ((NI) 2))]).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA21_;
29615 						L += ((*(*e)._kind_6.sons->data[(NI)(i + ((NI) 2))])._kind_3.strVal ? (*(*e)._kind_6.sons->data[(NI)(i + ((NI) 2))])._kind_3.strVal->Sup.len : 0);
29616 					}
29617 					goto LA19_;
29618 					LA21_: ;
29619 					{
29620 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
29621 						T24_ = NIM_NIL;
29622 						T24_ = lenExpr__cgen_448(p, a);
29623 						add__ropes_159(&lens, T24_);
29624 						add__ropes_162(&lens, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_726));
29625 					}
29626 					LA19_: ;
29627 					res_2 = rawNewString(((NI) 80));
29628 					T25_ = NIM_NIL;
29629 					T25_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_727));
29630 					cgFormatValue__cgen_141((&res_2), T25_);
29631 					res_2 = resizeString(res_2, 1);
29632 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29633 					T26_ = NIM_NIL;
29634 					T26_ = strLoc__cgen_20369(p, dest);
29635 					cgFormatValue__cgen_141((&res_2), T26_);
29636 					res_2 = resizeString(res_2, 2);
29637 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
29638 					T27_ = NIM_NIL;
29639 					T27_ = rdLoc__cgen_425(a);
29640 					cgFormatValue__cgen_141((&res_2), T27_);
29641 					res_2 = resizeString(res_2, 2);
29642 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
29643 					{
29644 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA30_;
29645 						res_2 = resizeString(res_2, 1);
29646 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29647 					}
29648 					LA30_: ;
29649 					T32_ = NIM_NIL;
29650 					T32_ = rope__ropes_109(res_2);
29651 					add__ropes_159(&appends, T32_);
29652 				}
29653 				LA5_: ;
29654 				i_2 += ((NI) 1);
29655 			} LA4: ;
29656 		}
29657 	}
29658 	{
29659 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T37_;
29660 		NimStringDesc* res_3;
29661 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
29662 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
29663 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
29664 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
29665 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA35_;
29666 		T37_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
29667 		T37_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
29668 		res_3 = rawNewString(((NI) 80));
29669 		T38_ = NIM_NIL;
29670 		T38_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_733));
29671 		cgFormatValue__cgen_141((&res_3), T38_);
29672 		res_3 = resizeString(res_3, 1);
29673 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29674 		T39_ = NIM_NIL;
29675 		T39_ = byRefLoc__cgen_10319(p, dest);
29676 		cgFormatValue__cgen_141((&res_3), T39_);
29677 		res_3 = resizeString(res_3, 2);
29678 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
29679 		cgFormatValue__cgen_141((&res_3), lens);
29680 		cgFormatValue__cgen_148((&res_3), ((NI64) (L)));
29681 		res_3 = resizeString(res_3, 2);
29682 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
29683 		{
29684 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA42_;
29685 			res_3 = resizeString(res_3, 1);
29686 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29687 		}
29688 		LA42_: ;
29689 		T44_ = NIM_NIL;
29690 		T44_ = rope__ropes_109(res_3);
29691 		T45_ = NIM_NIL;
29692 		T45_ = indentLine__cgen_280(p, T44_);
29693 		add__ropes_159(T37_, T45_);
29694 	}
29695 	goto LA33_;
29696 	LA35_: ;
29697 	{
29698 		NimStringDesc* res_4;
29699 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
29700 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
29701 		initLoc__cgen_60((&call), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), e, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
29702 		res_4 = rawNewString(((NI) 80));
29703 		T47_ = NIM_NIL;
29704 		T47_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_734));
29705 		cgFormatValue__cgen_141((&res_4), T47_);
29706 		res_4 = resizeString(res_4, 1);
29707 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29708 		T48_ = NIM_NIL;
29709 		T48_ = rdLoc__cgen_425(dest);
29710 		cgFormatValue__cgen_141((&res_4), T48_);
29711 		res_4 = resizeString(res_4, 2);
29712 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
29713 		cgFormatValue__cgen_141((&res_4), lens);
29714 		cgFormatValue__cgen_148((&res_4), ((NI64) (L)));
29715 		res_4 = resizeString(res_4, 1);
29716 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
29717 		call.r = rope__ropes_109(res_4);
29718 		genAssignment__cgen_10369(p, dest, call, 0);
29719 		gcUsage__cgen_20362((*(*(*p).module).g).config, e);
29720 	}
29721 	LA33_: ;
29722 	T49_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
29723 	T49_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
29724 	add__ropes_159(T49_, appends);
29725 }
N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg *,makePtrType__cgen_21847)29726 N_LIB_PRIVATE N_NIMCALL(tyObject_TType__facALICuu8zUj0hjvbTLFg*, makePtrType__cgen_21847)(tyObject_TType__facALICuu8zUj0hjvbTLFg* baseType, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen) {
29727 	tyObject_TType__facALICuu8zUj0hjvbTLFg* result;
29728 	tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g T1_;
29729 	result = NIM_NIL;
29730 	T1_ = nextTypeId__ast_3151(idgen);
29731 	result = newType__ast_3896(((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21), T1_, (*baseType).owner);
29732 	addSonSkipIntLit__magicsys_136(result, baseType, idgen);
29733 	return result;
29734 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,makeAddr__cgen_21851)29735 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, makeAddr__cgen_21851)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_IdGeneratorcolonObjectType___9a3T65u6nPPLrld0SrEa57Q* idgen) {
29736 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
29737 	result = NIM_NIL;
29738 	{
29739 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA3_;
29740 		result = n;
29741 	}
29742 	goto LA1_;
29743 	LA3_: ;
29744 	{
29745 		tyArray__jlWPjgtbdjE069arIWHC9c9bg T6_;
29746 		nimZeroMem((void*)T6_, sizeof(tyArray__jlWPjgtbdjE069arIWHC9c9bg));
29747 		T6_[0] = n;
29748 		result = newTree__ast_3392(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64), T6_, 1);
29749 		asgnRef((void**) (&(*result).typ), makePtrType__cgen_21847((*n).typ, idgen));
29750 	}
29751 	LA1_: ;
29752 	return result;
29753 }
N_NIMCALL(void,genCall__cgen_13078)29754 N_LIB_PRIVATE N_NIMCALL(void, genCall__cgen_13078)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
29755 	genAsgnCall__cgen_13048(p, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), e, d);
29756 }
N_NIMCALL(void,getIntTemp__cgen_11039)29757 N_LIB_PRIVATE N_NIMCALL(void, getIntTemp__cgen_11039)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* result) {
29758 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
29759 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
29760 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T3_;
29761 	NimStringDesc* res;
29762 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
29763 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
29764 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T10_;
29765 	(*p).labels += ((NI) 1);
29766 	T1_ = NIM_NIL;
29767 	T1_ = rope__ropes_115(((NI64) ((*p).labels)));
29768 	T2_ = NIM_NIL;
29769 	T2_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_169), T1_);
29770 	unsureAsgnRef((void**) (&(*result).r), amp___ropes_140(T2_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3)));
29771 	T3_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
29772 	T3_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
29773 	res = rawNewString(((NI) 80));
29774 	res = resizeString(res, 3);
29775 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_738));
29776 	cgFormatValue__cgen_141((&res), (*result).r);
29777 	res = resizeString(res, 1);
29778 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
29779 	{
29780 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA6_;
29781 		res = resizeString(res, 1);
29782 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29783 	}
29784 	LA6_: ;
29785 	T8_ = NIM_NIL;
29786 	T8_ = rope__ropes_109(res);
29787 	T9_ = NIM_NIL;
29788 	T9_ = indentLine__cgen_280(p, T8_);
29789 	add__ropes_159(T3_, T9_);
29790 	(*result).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1);
29791 	(*result).storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2);
29792 	T10_ = NIM_NIL;
29793 	T10_ = getSysType__magicsys_60((*(*(*p).module).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
29794 	unsureAsgnRef((void**) (&(*result).lode), lodeTyp__cgen_86(T10_));
29795 	(*result).flags = 0;
29796 }
N_NIMCALL(void,genSeqElemAppend__cgen_20555)29797 N_LIB_PRIVATE N_NIMCALL(void, genSeqElemAppend__cgen_20555)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
29798 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
29799 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
29800 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest;
29801 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmpL;
29802 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA call;
29803 	tyObject_TType__facALICuu8zUj0hjvbTLFg* seqType;
29804 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T16_;
29805 	NimStringDesc* res_3;
29806 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
29807 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
29808 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
29809 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
29810 	NimStringDesc* res_4;
29811 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
29812 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
29813 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29814 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29815 	nimZeroMem((void*)(&dest), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29816 	nimZeroMem((void*)(&tmpL), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29817 	nimZeroMem((void*)(&call), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29818 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
29819 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
29820 	seqType = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_735);
29821 	initLoc__cgen_60((&call), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), e, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
29822 	{
29823 		NIM_BOOL T3_;
29824 		NimStringDesc* res;
29825 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
29826 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
29827 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
29828 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
29829 		T3_ = (NIM_BOOL)0;
29830 		T3_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
29831 		if (T3_) goto LA4_;
29832 		T3_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
29833 		LA4_: ;
29834 		if (!!(T3_)) goto LA5_;
29835 		res = rawNewString(((NI) 80));
29836 		res = resizeString(res, 1);
29837 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29838 		T7_ = NIM_NIL;
29839 		T7_ = getTypeDesc__cgen_6631((*p).module, (*(*e)._kind_6.sons->data[((NI) 1)]).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
29840 		cgFormatValue__cgen_141((&res), T7_);
29841 		res = resizeString(res, 2);
29842 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
29843 		T8_ = NIM_NIL;
29844 		T8_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_736));
29845 		cgFormatValue__cgen_141((&res), T8_);
29846 		res = resizeString(res, 16);
29847 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_737));
29848 		T9_ = NIM_NIL;
29849 		T9_ = rdLoc__cgen_425(a);
29850 		cgFormatValue__cgen_141((&res), T9_);
29851 		res = resizeString(res, 3);
29852 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_556));
29853 		T10_ = NIM_NIL;
29854 		T10_ = genTypeInfoV1__cgen_6768((*p).module, seqType, (*e).info);
29855 		cgFormatValue__cgen_141((&res), T10_);
29856 		res = resizeString(res, 1);
29857 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
29858 		call.r = rope__ropes_109(res);
29859 	}
29860 	goto LA1_;
29861 	LA5_: ;
29862 	{
29863 		NimStringDesc* res_2;
29864 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
29865 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
29866 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
29867 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
29868 		res_2 = rawNewString(((NI) 80));
29869 		res_2 = resizeString(res_2, 1);
29870 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29871 		T12_ = NIM_NIL;
29872 		T12_ = getTypeDesc__cgen_6631((*p).module, (*(*e)._kind_6.sons->data[((NI) 1)]).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
29873 		cgFormatValue__cgen_141((&res_2), T12_);
29874 		res_2 = resizeString(res_2, 2);
29875 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
29876 		T13_ = NIM_NIL;
29877 		T13_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_736));
29878 		cgFormatValue__cgen_141((&res_2), T13_);
29879 		res_2 = resizeString(res_2, 1);
29880 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29881 		T14_ = NIM_NIL;
29882 		T14_ = rdLoc__cgen_425(a);
29883 		cgFormatValue__cgen_141((&res_2), T14_);
29884 		res_2 = resizeString(res_2, 2);
29885 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
29886 		T15_ = NIM_NIL;
29887 		T15_ = genTypeInfoV1__cgen_6768((*p).module, seqType, (*e).info);
29888 		cgFormatValue__cgen_141((&res_2), T15_);
29889 		res_2 = resizeString(res_2, 1);
29890 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
29891 		call.r = rope__ropes_109(res_2);
29892 	}
29893 	LA1_: ;
29894 	genRefAssign__cgen_10547(p, a, call);
29895 	initLoc__cgen_60((&dest), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), (*e)._kind_6.sons->data[((NI) 2)], ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
29896 	getIntTemp__cgen_11039(p, (&tmpL));
29897 	T16_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
29898 	T16_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
29899 	res_3 = rawNewString(((NI) 80));
29900 	cgFormatValue__cgen_141((&res_3), tmpL.r);
29901 	res_3 = resizeString(res_3, 3);
29902 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
29903 	T17_ = NIM_NIL;
29904 	T17_ = rdLoc__cgen_425(a);
29905 	cgFormatValue__cgen_141((&res_3), T17_);
29906 	res_3 = resizeString(res_3, 2);
29907 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_615));
29908 	T18_ = NIM_NIL;
29909 	T18_ = lenField__cgen_437(p);
29910 	cgFormatValue__cgen_141((&res_3), T18_);
29911 	res_3 = resizeString(res_3, 3);
29912 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_739));
29913 	{
29914 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA21_;
29915 		res_3 = resizeString(res_3, 1);
29916 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
29917 	}
29918 	LA21_: ;
29919 	T23_ = NIM_NIL;
29920 	T23_ = rope__ropes_109(res_3);
29921 	T24_ = NIM_NIL;
29922 	T24_ = indentLine__cgen_280(p, T23_);
29923 	add__ropes_159(T16_, T24_);
29924 	res_4 = rawNewString(((NI) 80));
29925 	T25_ = NIM_NIL;
29926 	T25_ = rdLoc__cgen_425(a);
29927 	cgFormatValue__cgen_141((&res_4), T25_);
29928 	T26_ = NIM_NIL;
29929 	T26_ = dataField__cgen_461(p);
29930 	cgFormatValue__cgen_141((&res_4), T26_);
29931 	res_4 = resizeString(res_4, 1);
29932 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
29933 	cgFormatValue__cgen_141((&res_4), tmpL.r);
29934 	res_4 = resizeString(res_4, 1);
29935 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
29936 	dest.r = rope__ropes_109(res_4);
29937 	genAssignment__cgen_10369(p, dest, b, 1);
29938 	gcUsage__cgen_20362((*(*(*p).module).g).config, e);
29939 }
N_NIMCALL(void,genStrEquals__cgen_22909)29940 N_LIB_PRIVATE N_NIMCALL(void, genStrEquals__cgen_22909)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
29941 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA x;
29942 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
29943 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b;
29944 	nimZeroMem((void*)(&x), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
29945 	a = (*e)._kind_6.sons->data[((NI) 1)];
29946 	b = (*e)._kind_6.sons->data[((NI) 2)];
29947 	{
29948 		NIM_BOOL T3_;
29949 		NimStringDesc* res;
29950 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
29951 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
29952 		T3_ = (NIM_BOOL)0;
29953 		T3_ = ((*a).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*a).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22));
29954 		if (!(T3_)) goto LA4_;
29955 		T3_ = (((*a)._kind_3.strVal ? (*a)._kind_3.strVal->Sup.len : 0) == 0);
29956 		LA4_: ;
29957 		if (!T3_) goto LA5_;
29958 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&x));
29959 		res = rawNewString(((NI) 80));
29960 		res = resizeString(res, 1);
29961 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29962 		T7_ = NIM_NIL;
29963 		T7_ = lenExpr__cgen_448(p, x);
29964 		cgFormatValue__cgen_141((&res), T7_);
29965 		res = resizeString(res, 6);
29966 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_740));
29967 		T8_ = NIM_NIL;
29968 		T8_ = rope__ropes_109(res);
29969 		putIntoDest__cgen_18656(p, d, e, T8_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
29970 	}
29971 	goto LA1_;
29972 	LA5_: ;
29973 	{
29974 		NIM_BOOL T10_;
29975 		NimStringDesc* res_2;
29976 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
29977 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
29978 		T10_ = (NIM_BOOL)0;
29979 		T10_ = ((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22));
29980 		if (!(T10_)) goto LA11_;
29981 		T10_ = (((*b)._kind_3.strVal ? (*b)._kind_3.strVal->Sup.len : 0) == 0);
29982 		LA11_: ;
29983 		if (!T10_) goto LA12_;
29984 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&x));
29985 		res_2 = rawNewString(((NI) 80));
29986 		res_2 = resizeString(res_2, 1);
29987 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
29988 		T14_ = NIM_NIL;
29989 		T14_ = lenExpr__cgen_448(p, x);
29990 		cgFormatValue__cgen_141((&res_2), T14_);
29991 		res_2 = resizeString(res_2, 6);
29992 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_740));
29993 		T15_ = NIM_NIL;
29994 		T15_ = rope__ropes_109(res_2);
29995 		putIntoDest__cgen_18656(p, d, e, T15_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
29996 	}
29997 	goto LA1_;
29998 	LA12_: ;
29999 	{
30000 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5127_;
30001 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym5127_;
30002 		NimStringDesc* res_3;
30003 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
30004 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
30005 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
30006 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
30007 		nimZeroMem((void*)(&aX60gensym5127_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30008 		nimZeroMem((void*)(&bX60gensym5127_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30009 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5127_));
30010 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym5127_));
30011 		res_3 = rawNewString(((NI) 80));
30012 		T17_ = NIM_NIL;
30013 		T17_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_741));
30014 		cgFormatValue__cgen_141((&res_3), T17_);
30015 		res_3 = resizeString(res_3, 1);
30016 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30017 		T18_ = NIM_NIL;
30018 		T18_ = rdLoc__cgen_425(aX60gensym5127_);
30019 		cgFormatValue__cgen_141((&res_3), T18_);
30020 		res_3 = resizeString(res_3, 2);
30021 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
30022 		T19_ = NIM_NIL;
30023 		T19_ = rdLoc__cgen_425(bX60gensym5127_);
30024 		cgFormatValue__cgen_141((&res_3), T19_);
30025 		res_3 = resizeString(res_3, 1);
30026 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
30027 		T20_ = NIM_NIL;
30028 		T20_ = rope__ropes_109(res_3);
30029 		putIntoDest__cgen_18656(p, d, e, T20_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
30030 	}
30031 	LA1_: ;
30032 }
N_NIMCALL(void,genIsNil__cgen_19201)30033 N_LIB_PRIVATE N_NIMCALL(void, genIsNil__cgen_19201)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
30034 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
30035 	t = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_574);
30036 	{
30037 		NIM_BOOL T3_;
30038 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym3763_;
30039 		NimStringDesc* res;
30040 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
30041 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
30042 		T3_ = (NIM_BOOL)0;
30043 		T3_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25));
30044 		if (!(T3_)) goto LA4_;
30045 		T3_ = ((*t).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9));
30046 		LA4_: ;
30047 		if (!T3_) goto LA5_;
30048 		nimZeroMem((void*)(&aX60gensym3763_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30049 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym3763_));
30050 		res = rawNewString(((NI) 80));
30051 		res = resizeString(res, 1);
30052 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30053 		T7_ = NIM_NIL;
30054 		T7_ = rdLoc__cgen_425(aX60gensym3763_);
30055 		cgFormatValue__cgen_141((&res), T7_);
30056 		res = resizeString(res, 12);
30057 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_745));
30058 		T8_ = NIM_NIL;
30059 		T8_ = rope__ropes_109(res);
30060 		putIntoDest__cgen_18656(p, d, e, T8_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
30061 	}
30062 	goto LA1_;
30063 	LA5_: ;
30064 	{
30065 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym3769_;
30066 		NimStringDesc* res_2;
30067 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
30068 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
30069 		nimZeroMem((void*)(&aX60gensym3769_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30070 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym3769_));
30071 		res_2 = rawNewString(((NI) 80));
30072 		res_2 = resizeString(res_2, 1);
30073 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30074 		T10_ = NIM_NIL;
30075 		T10_ = rdLoc__cgen_425(aX60gensym3769_);
30076 		cgFormatValue__cgen_141((&res_2), T10_);
30077 		res_2 = resizeString(res_2, 6);
30078 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_740));
30079 		T11_ = NIM_NIL;
30080 		T11_ = rope__ropes_109(res_2);
30081 		putIntoDest__cgen_18656(p, d, e, T11_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
30082 	}
30083 	LA1_: ;
30084 }
N_NIMCALL(void,genEnumToStr__cgen_23251)30085 N_LIB_PRIVATE N_NIMCALL(void, genEnumToStr__cgen_23251)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
30086 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
30087 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* toStrProc;
30088 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
30089 	t = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_753);
30090 	toStrProc = getToStringProc__modulegraphs_5648((*(*(*p).module).g).graph, t);
30091 	n = copyTree__ast_4431(e);
30092 	asgnRef((void**) (&(*n)._kind_6.sons->data[((NI) 0)]), newSymNode__ast_3716(toStrProc));
30093 	expr__cgen_11460(p, n, d);
30094 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_21430)30095 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_21430)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
30096 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
30097 	result = NIM_NIL;
30098 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_111), args, argsLen_0);
30099 	return result;
30100 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_21343)30101 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_21343)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
30102 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
30103 	result = NIM_NIL;
30104 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_759), args, argsLen_0);
30105 	return result;
30106 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_21353)30107 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_21353)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
30108 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
30109 	result = NIM_NIL;
30110 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_761), args, argsLen_0);
30111 	return result;
30112 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genOfHelper__cgen_21311)30113 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genOfHelper__cgen_21311)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* dest, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* a, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
30114 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
30115 	result = NIM_NIL;
30116 	{
30117 		NimStringDesc* res;
30118 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
30119 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
30120 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA3_;
30121 		res = rawNewString(((NI) 80));
30122 		T5_ = NIM_NIL;
30123 		T5_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_757));
30124 		cgFormatValue__cgen_141((&res), T5_);
30125 		res = resizeString(res, 1);
30126 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30127 		cgFormatValue__cgen_141((&res), a);
30128 		res = resizeString(res, 9);
30129 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_758));
30130 		T6_ = NIM_NIL;
30131 		T6_ = genTypeInfo2Name__cgen_7805((*p).module, dest);
30132 		cgFormatValue__cgen_141((&res), T6_);
30133 		res = resizeString(res, 1);
30134 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
30135 		result = rope__ropes_109(res);
30136 	}
30137 	goto LA1_;
30138 	LA3_: ;
30139 	{
30140 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* ti;
30141 		ti = genTypeInfoV1__cgen_6768((*p).module, dest, info);
30142 		{
30143 			NIM_BOOL T10_;
30144 			NIM_BOOL T12_;
30145 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T16_;
30146 			T10_ = (NIM_BOOL)0;
30147 			T10_ = (((*dest).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 2))&63U)))!=0);
30148 			if (T10_) goto LA11_;
30149 			T12_ = (NIM_BOOL)0;
30150 			T12_ = (((*(*p).module).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 5))&7U)))!=0);
30151 			if (!(T12_)) goto LA13_;
30152 			T12_ = !((((*dest).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 5))&63U)))!=0));
30153 			LA13_: ;
30154 			T10_ = T12_;
30155 			LA11_: ;
30156 			if (!T10_) goto LA14_;
30157 			nimZeroMem((void*)T16_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
30158 			T16_[0] = a;
30159 			T16_[1] = ti;
30160 			result = percent___cgen_21343(T16_, 2);
30161 		}
30162 		goto LA8_;
30163 		LA14_: ;
30164 		{
30165 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
30166 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* cache;
30167 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
30168 			tyArray__JiWwrsTRC6xqNlGcBthSVA T20_;
30169 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
30170 			NimStringDesc* res_2;
30171 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
30172 			T18_ = NIM_NIL;
30173 			T18_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134));
30174 			(void)(T18_);
30175 			(*(*p).module).labels += ((NI) 1);
30176 			T19_ = NIM_NIL;
30177 			T19_ = rope__ropes_115(((NI64) ((*(*p).module).labels)));
30178 			cache = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_760), T19_);
30179 			nimZeroMem((void*)T20_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
30180 			T20_[0] = cache;
30181 			T21_ = NIM_NIL;
30182 			T21_ = percent___cgen_21353(T20_, 1);
30183 			add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T21_);
30184 			res_2 = rawNewString(((NI) 80));
30185 			T22_ = NIM_NIL;
30186 			T22_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_762));
30187 			cgFormatValue__cgen_141((&res_2), T22_);
30188 			res_2 = resizeString(res_2, 1);
30189 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30190 			cgFormatValue__cgen_141((&res_2), a);
30191 			res_2 = resizeString(res_2, 9);
30192 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_758));
30193 			cgFormatValue__cgen_141((&res_2), ti);
30194 			res_2 = resizeString(res_2, 2);
30195 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
30196 			cgFormatValue__cgen_141((&res_2), cache);
30197 			res_2 = resizeString(res_2, 1);
30198 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
30199 			result = rope__ropes_109(res_2);
30200 		}
30201 		LA8_: ;
30202 	}
30203 	LA1_: ;
30204 	return result;
30205 }
N_NIMCALL(void,genOf__cgen_21367)30206 N_LIB_PRIVATE N_NIMCALL(void, genOf__cgen_21367)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
30207 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
30208 	tyObject_TType__facALICuu8zUj0hjvbTLFg* dest;
30209 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
30210 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* nilCheck;
30211 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
30212 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
30213 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
30214 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30215 	initLocExpr__cgen_11483(p, x, (&a));
30216 	dest = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_124);
30217 	r = rdLoc__cgen_425(a);
30218 	nilCheck = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
30219 	T1_ = NIM_NIL;
30220 	T1_ = t__cgen_79(a);
30221 	t = skipTypes__ast_3735(T1_, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
30222 	{
30223 		while (1) {
30224 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T16_;
30225 			if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22))) goto LA3;
30226 			{
30227 				if (!!(((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47)))) goto LA6_;
30228 				nilCheck = r;
30229 			}
30230 			LA6_: ;
30231 			{
30232 				NIM_BOOL T10_;
30233 				NIM_BOOL T12_;
30234 				NimStringDesc* res;
30235 				T10_ = (NIM_BOOL)0;
30236 				T10_ = !(((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47)));
30237 				if (T10_) goto LA11_;
30238 				T12_ = (NIM_BOOL)0;
30239 				T12_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
30240 				if (T12_) goto LA13_;
30241 				T12_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
30242 				LA13_: ;
30243 				T10_ = !(T12_);
30244 				LA11_: ;
30245 				if (!T10_) goto LA14_;
30246 				res = rawNewString(((NI) 80));
30247 				res = resizeString(res, 2);
30248 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_84));
30249 				cgFormatValue__cgen_141((&res), r);
30250 				res = resizeString(res, 1);
30251 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
30252 				r = rope__ropes_109(res);
30253 			}
30254 			LA14_: ;
30255 			T16_ = NIM_NIL;
30256 			T16_ = lastSon__ast_3743(t);
30257 			t = skipTypes__ast_3735(T16_, TM__MQdRN7fpbG7rPm4JpVVAhA_32);
30258 		} LA3: ;
30259 	}
30260 	T17_ = NIM_NIL;
30261 	T17_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30262 	(void)(T17_);
30263 	{
30264 		NIM_BOOL T20_;
30265 		T20_ = (NIM_BOOL)0;
30266 		T20_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
30267 		if (T20_) goto LA21_;
30268 		T20_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
30269 		LA21_: ;
30270 		if (!!(T20_)) goto LA22_;
30271 		{
30272 			while (1) {
30273 				NIM_BOOL T26_;
30274 				tyArray__qTjAvTvKF9anytN1At69aJMQ T28_;
30275 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
30276 				T26_ = (NIM_BOOL)0;
30277 				T26_ = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17));
30278 				if (!(T26_)) goto LA27_;
30279 				T26_ = !(((*t).sons->data[((NI) 0)] == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
30280 				LA27_: ;
30281 				if (!T26_) goto LA25;
30282 				nimZeroMem((void*)T28_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
30283 				T29_ = NIM_NIL;
30284 				T29_ = percent___cgen_21430(T28_, 0);
30285 				add__ropes_159(&r, T29_);
30286 				t = skipTypes__ast_3735((*t).sons->data[((NI) 0)], TM__MQdRN7fpbG7rPm4JpVVAhA_112);
30287 			} LA25: ;
30288 		}
30289 	}
30290 	LA22_: ;
30291 	{
30292 		NIM_BOOL T32_;
30293 		T32_ = (NIM_BOOL)0;
30294 		T32_ = isObjLackingTypeField__cgen_1319(t);
30295 		if (!T32_) goto LA33_;
30296 		liMessage__msgs_1118((*(*(*p).module).g).config, (*x).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_754), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 2), TM__MQdRN7fpbG7rPm4JpVVAhA_755, NIM_FALSE);
30297 	}
30298 	LA33_: ;
30299 	{
30300 		NimStringDesc* res_2;
30301 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
30302 		if (!!((nilCheck == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA37_;
30303 		res_2 = rawNewString(((NI) 80));
30304 		res_2 = resizeString(res_2, 2);
30305 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_218));
30306 		cgFormatValue__cgen_141((&res_2), nilCheck);
30307 		res_2 = resizeString(res_2, 6);
30308 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_756));
30309 		T39_ = NIM_NIL;
30310 		T39_ = genOfHelper__cgen_21311(p, dest, r, (*x).info);
30311 		cgFormatValue__cgen_141((&res_2), T39_);
30312 		res_2 = resizeString(res_2, 2);
30313 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_423));
30314 		r = rope__ropes_109(res_2);
30315 	}
30316 	goto LA35_;
30317 	LA37_: ;
30318 	{
30319 		NimStringDesc* res_3;
30320 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
30321 		res_3 = rawNewString(((NI) 80));
30322 		res_3 = resizeString(res_3, 1);
30323 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30324 		T41_ = NIM_NIL;
30325 		T41_ = genOfHelper__cgen_21311(p, dest, r, (*x).info);
30326 		cgFormatValue__cgen_141((&res_3), T41_);
30327 		res_3 = resizeString(res_3, 1);
30328 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
30329 		r = rope__ropes_109(res_3);
30330 	}
30331 	LA35_: ;
30332 	putIntoDest__cgen_18656(p, d, x, r, a.storage);
30333 }
N_NIMCALL(void,genOf__cgen_21458)30334 N_LIB_PRIVATE N_NIMCALL(void, genOf__cgen_21458)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
30335 	genOf__cgen_21367(p, (*n)._kind_6.sons->data[((NI) 1)], (*(*n)._kind_6.sons->data[((NI) 2)]).typ, d);
30336 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_20657)30337 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_20657)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
30338 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
30339 	result = NIM_NIL;
30340 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_763), args, argsLen_0);
30341 	return result;
30342 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_20699)30343 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_20699)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
30344 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
30345 	result = NIM_NIL;
30346 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_769), args, argsLen_0);
30347 	return result;
30348 }
N_NIMCALL(void,rawGenNew__cgen_20634)30349 N_LIB_PRIVATE N_NIMCALL(void, rawGenNew__cgen_20634)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* sizeExpr, NIM_BOOL needsInit) {
30350 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* sizeExpr_2;
30351 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
30352 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
30353 	tyObject_TType__facALICuu8zUj0hjvbTLFg* refType;
30354 	tyObject_TType__facALICuu8zUj0hjvbTLFg* bt;
30355 	sizeExpr_2 = sizeExpr;
30356 	typ = t__cgen_79((*a));
30357 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30358 	initLoc__cgen_60((&b), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), (*a).lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
30359 	refType = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
30360 	bt = lastSon__ast_3743(refType);
30361 	{
30362 		tyArray__JiWwrsTRC6xqNlGcBthSVA T5_;
30363 		if (!(sizeExpr_2 == 0)) goto LA3_;
30364 		nimZeroMem((void*)T5_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
30365 		T5_[0] = getTypeDesc__cgen_6631((*p).module, bt, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30366 		sizeExpr_2 = percent___cgen_20657(T5_, 1);
30367 	}
30368 	LA3_: ;
30369 	{
30370 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA8_;
30371 		{
30372 			NimStringDesc* res;
30373 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
30374 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
30375 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
30376 			if (!needsInit) goto LA12_;
30377 			res = rawNewString(((NI) 80));
30378 			res = resizeString(res, 1);
30379 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30380 			T14_ = NIM_NIL;
30381 			T14_ = getTypeDesc__cgen_6631((*p).module, typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30382 			cgFormatValue__cgen_141((&res), T14_);
30383 			res = resizeString(res, 2);
30384 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
30385 			T15_ = NIM_NIL;
30386 			T15_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_764));
30387 			cgFormatValue__cgen_141((&res), T15_);
30388 			res = resizeString(res, 1);
30389 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30390 			cgFormatValue__cgen_141((&res), sizeExpr_2);
30391 			res = resizeString(res, 14);
30392 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_765));
30393 			T16_ = NIM_NIL;
30394 			T16_ = getTypeDesc__cgen_6631((*p).module, bt, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30395 			cgFormatValue__cgen_141((&res), T16_);
30396 			res = resizeString(res, 2);
30397 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_423));
30398 			b.r = rope__ropes_109(res);
30399 		}
30400 		goto LA10_;
30401 		LA12_: ;
30402 		{
30403 			NimStringDesc* res_2;
30404 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
30405 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
30406 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
30407 			res_2 = rawNewString(((NI) 80));
30408 			res_2 = resizeString(res_2, 1);
30409 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30410 			T18_ = NIM_NIL;
30411 			T18_ = getTypeDesc__cgen_6631((*p).module, typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30412 			cgFormatValue__cgen_141((&res_2), T18_);
30413 			res_2 = resizeString(res_2, 2);
30414 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
30415 			T19_ = NIM_NIL;
30416 			T19_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_766));
30417 			cgFormatValue__cgen_141((&res_2), T19_);
30418 			res_2 = resizeString(res_2, 1);
30419 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30420 			cgFormatValue__cgen_141((&res_2), sizeExpr_2);
30421 			res_2 = resizeString(res_2, 14);
30422 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_765));
30423 			T20_ = NIM_NIL;
30424 			T20_ = getTypeDesc__cgen_6631((*p).module, bt, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30425 			cgFormatValue__cgen_141((&res_2), T20_);
30426 			res_2 = resizeString(res_2, 2);
30427 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_423));
30428 			b.r = rope__ropes_109(res_2);
30429 		}
30430 		LA10_: ;
30431 		genAssignment__cgen_10369(p, (*a), b, 0);
30432 	}
30433 	goto LA6_;
30434 	LA8_: ;
30435 	{
30436 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* ti;
30437 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* op;
30438 		ti = genTypeInfoV1__cgen_6768((*p).module, typ, (*(*a).lode).info);
30439 		op = getAttachedOp__modulegraphs_4011((*(*(*p).module).g).graph, bt, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 0));
30440 		{
30441 			NIM_BOOL T24_;
30442 			NIM_BOOL T26_;
30443 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA f;
30444 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T35_;
30445 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T36_;
30446 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
30447 			T24_ = (NIM_BOOL)0;
30448 			T24_ = !((op == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
30449 			if (!(T24_)) goto LA25_;
30450 			T26_ = (NIM_BOOL)0;
30451 			T26_ = isTrivialProc__cgen_7846((*(*(*p).module).g).graph, op);
30452 			T24_ = !(T26_);
30453 			LA25_: ;
30454 			if (!T24_) goto LA27_;
30455 			{
30456 				NIM_BOOL T31_;
30457 				T31_ = (NIM_BOOL)0;
30458 				T31_ = ((*op).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
30459 				if (T31_) goto LA32_;
30460 				T31_ = !(((*(*op).typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 0)));
30461 				LA32_: ;
30462 				if (!T31_) goto LA33_;
30463 				liMessage__msgs_1118((*(*(*p).module).g).config, (*(*a).lode).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_767), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_768, NIM_FALSE);
30464 			}
30465 			LA33_: ;
30466 			nimZeroMem((void*)(&f), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30467 			T35_ = NIM_NIL;
30468 			T35_ = newSymNode__ast_3716(op);
30469 			initLocExpr__cgen_11483(p, T35_, (&f));
30470 			nimZeroMem((void*)T36_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
30471 			T36_[0] = ti;
30472 			T36_[1] = rdLoc__cgen_425(f);
30473 			T37_ = NIM_NIL;
30474 			T37_ = percent___cgen_20699(T36_, 2);
30475 			add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T37_);
30476 		}
30477 		LA27_: ;
30478 		{
30479 			NIM_BOOL T40_;
30480 			T40_ = (NIM_BOOL)0;
30481 			T40_ = ((*a).storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
30482 			if (!(T40_)) goto LA41_;
30483 			T40_ = usesWriteBarrier__options_3998((*(*(*p).module).g).config);
30484 			LA41_: ;
30485 			if (!T40_) goto LA42_;
30486 			{
30487 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T46_;
30488 				NIM_BOOL T47_;
30489 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T50_;
30490 				NimStringDesc* res_3;
30491 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
30492 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
30493 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
30494 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
30495 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
30496 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
30497 				T46_ = NIM_NIL;
30498 				T46_ = t__cgen_79((*a));
30499 				T47_ = (NIM_BOOL)0;
30500 				T47_ = canFormAcycle__types_762(T46_);
30501 				if (!T47_) goto LA48_;
30502 				T50_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
30503 				T50_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
30504 				res_3 = rawNewString(((NI) 80));
30505 				res_3 = resizeString(res_3, 4);
30506 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
30507 				T51_ = NIM_NIL;
30508 				T51_ = rdLoc__cgen_425((*a));
30509 				cgFormatValue__cgen_141((&res_3), T51_);
30510 				res_3 = resizeString(res_3, 4);
30511 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_651));
30512 				T52_ = NIM_NIL;
30513 				T52_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_770));
30514 				cgFormatValue__cgen_141((&res_3), T52_);
30515 				res_3 = resizeString(res_3, 1);
30516 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30517 				T53_ = NIM_NIL;
30518 				T53_ = rdLoc__cgen_425((*a));
30519 				cgFormatValue__cgen_141((&res_3), T53_);
30520 				res_3 = resizeString(res_3, 3);
30521 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
30522 				T54_ = NIM_NIL;
30523 				T54_ = rdLoc__cgen_425((*a));
30524 				cgFormatValue__cgen_141((&res_3), T54_);
30525 				res_3 = resizeString(res_3, 13);
30526 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_771));
30527 				{
30528 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA57_;
30529 					res_3 = resizeString(res_3, 1);
30530 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
30531 				}
30532 				LA57_: ;
30533 				T59_ = NIM_NIL;
30534 				T59_ = rope__ropes_109(res_3);
30535 				T60_ = NIM_NIL;
30536 				T60_ = indentLine__cgen_280(p, T59_);
30537 				add__ropes_159(T50_, T60_);
30538 			}
30539 			goto LA44_;
30540 			LA48_: ;
30541 			{
30542 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T62_;
30543 				NimStringDesc* res_4;
30544 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
30545 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
30546 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T65_;
30547 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
30548 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
30549 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T72_;
30550 				T62_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
30551 				T62_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
30552 				res_4 = rawNewString(((NI) 80));
30553 				res_4 = resizeString(res_4, 4);
30554 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
30555 				T63_ = NIM_NIL;
30556 				T63_ = rdLoc__cgen_425((*a));
30557 				cgFormatValue__cgen_141((&res_4), T63_);
30558 				res_4 = resizeString(res_4, 4);
30559 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_651));
30560 				T64_ = NIM_NIL;
30561 				T64_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_351));
30562 				cgFormatValue__cgen_141((&res_4), T64_);
30563 				res_4 = resizeString(res_4, 1);
30564 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30565 				T65_ = NIM_NIL;
30566 				T65_ = rdLoc__cgen_425((*a));
30567 				cgFormatValue__cgen_141((&res_4), T65_);
30568 				res_4 = resizeString(res_4, 3);
30569 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
30570 				T66_ = NIM_NIL;
30571 				T66_ = rdLoc__cgen_425((*a));
30572 				cgFormatValue__cgen_141((&res_4), T66_);
30573 				res_4 = resizeString(res_4, 13);
30574 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_771));
30575 				{
30576 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA69_;
30577 					res_4 = resizeString(res_4, 1);
30578 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
30579 				}
30580 				LA69_: ;
30581 				T71_ = NIM_NIL;
30582 				T71_ = rope__ropes_109(res_4);
30583 				T72_ = NIM_NIL;
30584 				T72_ = indentLine__cgen_280(p, T71_);
30585 				add__ropes_159(T62_, T72_);
30586 			}
30587 			LA44_: ;
30588 			{
30589 				NimStringDesc* res_5;
30590 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T77_;
30591 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T78_;
30592 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T79_;
30593 				NimStringDesc* res_6;
30594 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T80_;
30595 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
30596 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T82_;
30597 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T87_;
30598 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T88_;
30599 				if (!((*(*(*(*p).module).g).config).selectedGC == ((tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw) 10))) goto LA75_;
30600 				res_5 = rawNewString(((NI) 80));
30601 				res_5 = resizeString(res_5, 1);
30602 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30603 				T77_ = NIM_NIL;
30604 				T77_ = getTypeDesc__cgen_6631((*p).module, typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30605 				cgFormatValue__cgen_141((&res_5), T77_);
30606 				res_5 = resizeString(res_5, 2);
30607 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
30608 				T78_ = NIM_NIL;
30609 				T78_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_772));
30610 				cgFormatValue__cgen_141((&res_5), T78_);
30611 				res_5 = resizeString(res_5, 1);
30612 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30613 				cgFormatValue__cgen_141((&res_5), ti);
30614 				res_5 = resizeString(res_5, 2);
30615 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
30616 				cgFormatValue__cgen_141((&res_5), sizeExpr_2);
30617 				res_5 = resizeString(res_5, 1);
30618 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
30619 				b.r = rope__ropes_109(res_5);
30620 				T79_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
30621 				T79_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
30622 				res_6 = rawNewString(((NI) 80));
30623 				T80_ = NIM_NIL;
30624 				T80_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_104));
30625 				cgFormatValue__cgen_141((&res_6), T80_);
30626 				res_6 = resizeString(res_6, 10);
30627 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_101));
30628 				T81_ = NIM_NIL;
30629 				T81_ = addrLoc__cgen_10303((*(*(*p).module).g).config, (*a));
30630 				cgFormatValue__cgen_141((&res_6), T81_);
30631 				res_6 = resizeString(res_6, 2);
30632 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
30633 				T82_ = NIM_NIL;
30634 				T82_ = rdLoc__cgen_425(b);
30635 				cgFormatValue__cgen_141((&res_6), T82_);
30636 				res_6 = resizeString(res_6, 2);
30637 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
30638 				{
30639 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA85_;
30640 					res_6 = resizeString(res_6, 1);
30641 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
30642 				}
30643 				LA85_: ;
30644 				T87_ = NIM_NIL;
30645 				T87_ = rope__ropes_109(res_6);
30646 				T88_ = NIM_NIL;
30647 				T88_ = indentLine__cgen_280(p, T87_);
30648 				add__ropes_159(T79_, T88_);
30649 			}
30650 			goto LA73_;
30651 			LA75_: ;
30652 			{
30653 				NimStringDesc* res_7;
30654 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T90_;
30655 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T91_;
30656 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T92_;
30657 				NimStringDesc* res_8;
30658 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T93_;
30659 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T94_;
30660 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T99_;
30661 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T100_;
30662 				res_7 = rawNewString(((NI) 80));
30663 				res_7 = resizeString(res_7, 1);
30664 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30665 				T90_ = NIM_NIL;
30666 				T90_ = getTypeDesc__cgen_6631((*p).module, typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30667 				cgFormatValue__cgen_141((&res_7), T90_);
30668 				res_7 = resizeString(res_7, 2);
30669 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
30670 				T91_ = NIM_NIL;
30671 				T91_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_773));
30672 				cgFormatValue__cgen_141((&res_7), T91_);
30673 				res_7 = resizeString(res_7, 1);
30674 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30675 				cgFormatValue__cgen_141((&res_7), ti);
30676 				res_7 = resizeString(res_7, 2);
30677 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
30678 				cgFormatValue__cgen_141((&res_7), sizeExpr_2);
30679 				res_7 = resizeString(res_7, 1);
30680 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
30681 				b.r = rope__ropes_109(res_7);
30682 				T92_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
30683 				T92_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
30684 				res_8 = rawNewString(((NI) 80));
30685 				T93_ = NIM_NIL;
30686 				T93_ = rdLoc__cgen_425((*a));
30687 				cgFormatValue__cgen_141((&res_8), T93_);
30688 				res_8 = resizeString(res_8, 3);
30689 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
30690 				T94_ = NIM_NIL;
30691 				T94_ = rdLoc__cgen_425(b);
30692 				cgFormatValue__cgen_141((&res_8), T94_);
30693 				res_8 = resizeString(res_8, 1);
30694 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
30695 				{
30696 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA97_;
30697 					res_8 = resizeString(res_8, 1);
30698 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
30699 				}
30700 				LA97_: ;
30701 				T99_ = NIM_NIL;
30702 				T99_ = rope__ropes_109(res_8);
30703 				T100_ = NIM_NIL;
30704 				T100_ = indentLine__cgen_280(p, T99_);
30705 				add__ropes_159(T92_, T100_);
30706 			}
30707 			LA73_: ;
30708 		}
30709 		goto LA38_;
30710 		LA42_: ;
30711 		{
30712 			NimStringDesc* res_9;
30713 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T102_;
30714 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T103_;
30715 			res_9 = rawNewString(((NI) 80));
30716 			res_9 = resizeString(res_9, 1);
30717 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30718 			T102_ = NIM_NIL;
30719 			T102_ = getTypeDesc__cgen_6631((*p).module, typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30720 			cgFormatValue__cgen_141((&res_9), T102_);
30721 			res_9 = resizeString(res_9, 2);
30722 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
30723 			T103_ = NIM_NIL;
30724 			T103_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_772));
30725 			cgFormatValue__cgen_141((&res_9), T103_);
30726 			res_9 = resizeString(res_9, 1);
30727 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30728 			cgFormatValue__cgen_141((&res_9), ti);
30729 			res_9 = resizeString(res_9, 2);
30730 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
30731 			cgFormatValue__cgen_141((&res_9), sizeExpr_2);
30732 			res_9 = resizeString(res_9, 1);
30733 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
30734 			b.r = rope__ropes_109(res_9);
30735 			genAssignment__cgen_10369(p, (*a), b, 0);
30736 		}
30737 		LA38_: ;
30738 	}
30739 	LA6_: ;
30740 	genObjectInit__cgen_10380(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2), bt, a, ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 1));
30741 }
N_NIMCALL(void,genNew__cgen_20791)30742 N_LIB_PRIVATE N_NIMCALL(void, genNew__cgen_20791)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e) {
30743 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
30744 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30745 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
30746 	{
30747 		NI T3_;
30748 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA se;
30749 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
30750 		T3_ = (NI)0;
30751 		T3_ = len__ast_3198(e);
30752 		if (!(T3_ == ((NI) 3))) goto LA4_;
30753 		nimZeroMem((void*)(&se), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30754 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&se));
30755 		T6_ = NIM_NIL;
30756 		T6_ = rdLoc__cgen_425(se);
30757 		rawGenNew__cgen_20634(p, (&a), T6_, NIM_TRUE);
30758 	}
30759 	goto LA1_;
30760 	LA4_: ;
30761 	{
30762 		rawGenNew__cgen_20634(p, (&a), ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL), NIM_TRUE);
30763 	}
30764 	LA1_: ;
30765 	gcUsage__cgen_20362((*(*(*p).module).g).config, e);
30766 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genTypeInfo__cgen_10280)30767 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genTypeInfo__cgen_10280)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
30768 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
30769 	result = NIM_NIL;
30770 	{
30771 		if (!(((*config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA3_;
30772 		result = genTypeInfoV2__cgen_7924(m, t, info);
30773 	}
30774 	goto LA1_;
30775 	LA3_: ;
30776 	{
30777 		result = genTypeInfoV1__cgen_6768(m, t, info);
30778 	}
30779 	LA1_: ;
30780 	return result;
30781 }
N_NIMCALL(void,genNewFinalize__cgen_21280)30782 N_LIB_PRIVATE N_NIMCALL(void, genNewFinalize__cgen_21280)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e) {
30783 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
30784 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
30785 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA f;
30786 	tyObject_TType__facALICuu8zUj0hjvbTLFg* refType;
30787 	tyObject_TType__facALICuu8zUj0hjvbTLFg* bt;
30788 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* ti;
30789 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T1_;
30790 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
30791 	NimStringDesc* res;
30792 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
30793 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
30794 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
30795 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
30796 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
30797 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T8_;
30798 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30799 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30800 	nimZeroMem((void*)(&f), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30801 	refType = NIM_NIL;
30802 	bt = NIM_NIL;
30803 	ti = NIM_NIL;
30804 	refType = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
30805 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
30806 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&f));
30807 	initLoc__cgen_60((&b), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), a.lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
30808 	ti = genTypeInfo__cgen_10280((*(*(*p).module).g).config, (*p).module, refType, (*e).info);
30809 	nimZeroMem((void*)T1_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
30810 	T1_[0] = ti;
30811 	T1_[1] = rdLoc__cgen_425(f);
30812 	T2_ = NIM_NIL;
30813 	T2_ = percent___cgen_20699(T1_, 2);
30814 	add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 16))- 0], T2_);
30815 	res = rawNewString(((NI) 80));
30816 	res = resizeString(res, 1);
30817 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30818 	T3_ = NIM_NIL;
30819 	T3_ = getTypeDesc__cgen_6631((*p).module, refType, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30820 	cgFormatValue__cgen_141((&res), T3_);
30821 	res = resizeString(res, 2);
30822 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
30823 	T4_ = NIM_NIL;
30824 	T4_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_772));
30825 	cgFormatValue__cgen_141((&res), T4_);
30826 	res = resizeString(res, 1);
30827 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30828 	cgFormatValue__cgen_141((&res), ti);
30829 	res = resizeString(res, 9);
30830 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
30831 	T5_ = NIM_NIL;
30832 	T5_ = lastSon__ast_3743(refType);
30833 	T6_ = NIM_NIL;
30834 	T6_ = skipTypes__ast_3735(T5_, TM__MQdRN7fpbG7rPm4JpVVAhA_574);
30835 	T7_ = NIM_NIL;
30836 	T7_ = getTypeDesc__cgen_6631((*p).module, T6_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30837 	cgFormatValue__cgen_141((&res), T7_);
30838 	res = resizeString(res, 2);
30839 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_423));
30840 	b.r = rope__ropes_109(res);
30841 	genAssignment__cgen_10369(p, a, b, 0);
30842 	T8_ = NIM_NIL;
30843 	T8_ = lastSon__ast_3743(refType);
30844 	bt = skipTypes__ast_3735(T8_, TM__MQdRN7fpbG7rPm4JpVVAhA_574);
30845 	genObjectInit__cgen_10380(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2), bt, (&a), ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 1));
30846 	gcUsage__cgen_20362((*(*(*p).module).g).config, e);
30847 }
N_NIMCALL(void,genNewSeqAux__cgen_20801)30848 N_LIB_PRIVATE N_NIMCALL(void, genNewSeqAux__cgen_20801)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* length, NIM_BOOL lenIsZero) {
30849 	tyObject_TType__facALICuu8zUj0hjvbTLFg* seqtype;
30850 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
30851 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA call;
30852 	T1_ = NIM_NIL;
30853 	T1_ = t__cgen_79(dest);
30854 	seqtype = skipTypes__ast_3735(T1_, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
30855 	nimZeroMem((void*)(&call), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
30856 	initLoc__cgen_60((&call), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), dest.lode, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
30857 	{
30858 		NIM_BOOL T4_;
30859 		T4_ = (NIM_BOOL)0;
30860 		T4_ = (dest.storage == ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
30861 		if (!(T4_)) goto LA5_;
30862 		T4_ = usesWriteBarrier__options_3998((*(*(*p).module).g).config);
30863 		LA5_: ;
30864 		if (!T4_) goto LA6_;
30865 		{
30866 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T10_;
30867 			NIM_BOOL T11_;
30868 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T14_;
30869 			NimStringDesc* res;
30870 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
30871 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
30872 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
30873 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
30874 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
30875 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
30876 			T10_ = NIM_NIL;
30877 			T10_ = t__cgen_79(dest);
30878 			T11_ = (NIM_BOOL)0;
30879 			T11_ = canFormAcycle__types_762(T10_);
30880 			if (!T11_) goto LA12_;
30881 			T14_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
30882 			T14_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
30883 			res = rawNewString(((NI) 80));
30884 			res = resizeString(res, 4);
30885 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
30886 			T15_ = NIM_NIL;
30887 			T15_ = rdLoc__cgen_425(dest);
30888 			cgFormatValue__cgen_141((&res), T15_);
30889 			res = resizeString(res, 4);
30890 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_651));
30891 			T16_ = NIM_NIL;
30892 			T16_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_770));
30893 			cgFormatValue__cgen_141((&res), T16_);
30894 			res = resizeString(res, 1);
30895 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30896 			T17_ = NIM_NIL;
30897 			T17_ = rdLoc__cgen_425(dest);
30898 			cgFormatValue__cgen_141((&res), T17_);
30899 			res = resizeString(res, 3);
30900 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
30901 			T18_ = NIM_NIL;
30902 			T18_ = rdLoc__cgen_425(dest);
30903 			cgFormatValue__cgen_141((&res), T18_);
30904 			res = resizeString(res, 13);
30905 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_771));
30906 			{
30907 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA21_;
30908 				res = resizeString(res, 1);
30909 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
30910 			}
30911 			LA21_: ;
30912 			T23_ = NIM_NIL;
30913 			T23_ = rope__ropes_109(res);
30914 			T24_ = NIM_NIL;
30915 			T24_ = indentLine__cgen_280(p, T23_);
30916 			add__ropes_159(T14_, T24_);
30917 		}
30918 		goto LA8_;
30919 		LA12_: ;
30920 		{
30921 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T26_;
30922 			NimStringDesc* res_2;
30923 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
30924 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
30925 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
30926 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
30927 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
30928 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
30929 			T26_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
30930 			T26_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
30931 			res_2 = rawNewString(((NI) 80));
30932 			res_2 = resizeString(res_2, 4);
30933 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
30934 			T27_ = NIM_NIL;
30935 			T27_ = rdLoc__cgen_425(dest);
30936 			cgFormatValue__cgen_141((&res_2), T27_);
30937 			res_2 = resizeString(res_2, 4);
30938 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_651));
30939 			T28_ = NIM_NIL;
30940 			T28_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_351));
30941 			cgFormatValue__cgen_141((&res_2), T28_);
30942 			res_2 = resizeString(res_2, 1);
30943 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30944 			T29_ = NIM_NIL;
30945 			T29_ = rdLoc__cgen_425(dest);
30946 			cgFormatValue__cgen_141((&res_2), T29_);
30947 			res_2 = resizeString(res_2, 3);
30948 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
30949 			T30_ = NIM_NIL;
30950 			T30_ = rdLoc__cgen_425(dest);
30951 			cgFormatValue__cgen_141((&res_2), T30_);
30952 			res_2 = resizeString(res_2, 13);
30953 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_771));
30954 			{
30955 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA33_;
30956 				res_2 = resizeString(res_2, 1);
30957 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
30958 			}
30959 			LA33_: ;
30960 			T35_ = NIM_NIL;
30961 			T35_ = rope__ropes_109(res_2);
30962 			T36_ = NIM_NIL;
30963 			T36_ = indentLine__cgen_280(p, T35_);
30964 			add__ropes_159(T26_, T36_);
30965 		}
30966 		LA8_: ;
30967 		{
30968 			if (!!(lenIsZero)) goto LA39_;
30969 			{
30970 				NimStringDesc* res_3;
30971 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
30972 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
30973 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
30974 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T48_;
30975 				NimStringDesc* res_4;
30976 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
30977 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
30978 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
30979 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
30980 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
30981 				if (!((*(*(*(*p).module).g).config).selectedGC == ((tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw) 10))) goto LA43_;
30982 				res_3 = rawNewString(((NI) 80));
30983 				res_3 = resizeString(res_3, 1);
30984 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30985 				T45_ = NIM_NIL;
30986 				T45_ = getTypeDesc__cgen_6631((*p).module, seqtype, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
30987 				cgFormatValue__cgen_141((&res_3), T45_);
30988 				res_3 = resizeString(res_3, 2);
30989 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
30990 				T46_ = NIM_NIL;
30991 				T46_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_778));
30992 				cgFormatValue__cgen_141((&res_3), T46_);
30993 				res_3 = resizeString(res_3, 1);
30994 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
30995 				T47_ = NIM_NIL;
30996 				T47_ = genTypeInfoV1__cgen_6768((*p).module, seqtype, (*dest.lode).info);
30997 				cgFormatValue__cgen_141((&res_3), T47_);
30998 				res_3 = resizeString(res_3, 2);
30999 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
31000 				cgFormatValue__cgen_141((&res_3), length);
31001 				res_3 = resizeString(res_3, 1);
31002 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
31003 				call.r = rope__ropes_109(res_3);
31004 				T48_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
31005 				T48_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
31006 				res_4 = rawNewString(((NI) 80));
31007 				T49_ = NIM_NIL;
31008 				T49_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_104));
31009 				cgFormatValue__cgen_141((&res_4), T49_);
31010 				res_4 = resizeString(res_4, 10);
31011 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_101));
31012 				T50_ = NIM_NIL;
31013 				T50_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
31014 				cgFormatValue__cgen_141((&res_4), T50_);
31015 				res_4 = resizeString(res_4, 2);
31016 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
31017 				T51_ = NIM_NIL;
31018 				T51_ = rdLoc__cgen_425(call);
31019 				cgFormatValue__cgen_141((&res_4), T51_);
31020 				res_4 = resizeString(res_4, 2);
31021 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
31022 				{
31023 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA54_;
31024 					res_4 = resizeString(res_4, 1);
31025 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
31026 				}
31027 				LA54_: ;
31028 				T56_ = NIM_NIL;
31029 				T56_ = rope__ropes_109(res_4);
31030 				T57_ = NIM_NIL;
31031 				T57_ = indentLine__cgen_280(p, T56_);
31032 				add__ropes_159(T48_, T57_);
31033 			}
31034 			goto LA41_;
31035 			LA43_: ;
31036 			{
31037 				NimStringDesc* res_5;
31038 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
31039 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
31040 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T61_;
31041 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T62_;
31042 				NimStringDesc* res_6;
31043 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
31044 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
31045 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
31046 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
31047 				res_5 = rawNewString(((NI) 80));
31048 				res_5 = resizeString(res_5, 1);
31049 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31050 				T59_ = NIM_NIL;
31051 				T59_ = getTypeDesc__cgen_6631((*p).module, seqtype, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31052 				cgFormatValue__cgen_141((&res_5), T59_);
31053 				res_5 = resizeString(res_5, 2);
31054 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
31055 				T60_ = NIM_NIL;
31056 				T60_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_779));
31057 				cgFormatValue__cgen_141((&res_5), T60_);
31058 				res_5 = resizeString(res_5, 1);
31059 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31060 				T61_ = NIM_NIL;
31061 				T61_ = genTypeInfoV1__cgen_6768((*p).module, seqtype, (*dest.lode).info);
31062 				cgFormatValue__cgen_141((&res_5), T61_);
31063 				res_5 = resizeString(res_5, 2);
31064 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
31065 				cgFormatValue__cgen_141((&res_5), length);
31066 				res_5 = resizeString(res_5, 1);
31067 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
31068 				call.r = rope__ropes_109(res_5);
31069 				T62_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
31070 				T62_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
31071 				res_6 = rawNewString(((NI) 80));
31072 				T63_ = NIM_NIL;
31073 				T63_ = rdLoc__cgen_425(dest);
31074 				cgFormatValue__cgen_141((&res_6), T63_);
31075 				res_6 = resizeString(res_6, 3);
31076 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
31077 				T64_ = NIM_NIL;
31078 				T64_ = rdLoc__cgen_425(call);
31079 				cgFormatValue__cgen_141((&res_6), T64_);
31080 				res_6 = resizeString(res_6, 1);
31081 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
31082 				{
31083 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA67_;
31084 					res_6 = resizeString(res_6, 1);
31085 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
31086 				}
31087 				LA67_: ;
31088 				T69_ = NIM_NIL;
31089 				T69_ = rope__ropes_109(res_6);
31090 				T70_ = NIM_NIL;
31091 				T70_ = indentLine__cgen_280(p, T69_);
31092 				add__ropes_159(T62_, T70_);
31093 			}
31094 			LA41_: ;
31095 		}
31096 		LA39_: ;
31097 	}
31098 	goto LA2_;
31099 	LA6_: ;
31100 	{
31101 		{
31102 			if (!lenIsZero) goto LA74_;
31103 			call.r = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_329));
31104 		}
31105 		goto LA72_;
31106 		LA74_: ;
31107 		{
31108 			NimStringDesc* res_7;
31109 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T77_;
31110 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T78_;
31111 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T79_;
31112 			res_7 = rawNewString(((NI) 80));
31113 			res_7 = resizeString(res_7, 1);
31114 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31115 			T77_ = NIM_NIL;
31116 			T77_ = getTypeDesc__cgen_6631((*p).module, seqtype, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31117 			cgFormatValue__cgen_141((&res_7), T77_);
31118 			res_7 = resizeString(res_7, 2);
31119 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
31120 			T78_ = NIM_NIL;
31121 			T78_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_778));
31122 			cgFormatValue__cgen_141((&res_7), T78_);
31123 			res_7 = resizeString(res_7, 1);
31124 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31125 			T79_ = NIM_NIL;
31126 			T79_ = genTypeInfoV1__cgen_6768((*p).module, seqtype, (*dest.lode).info);
31127 			cgFormatValue__cgen_141((&res_7), T79_);
31128 			res_7 = resizeString(res_7, 2);
31129 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
31130 			cgFormatValue__cgen_141((&res_7), length);
31131 			res_7 = resizeString(res_7, 1);
31132 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
31133 			call.r = rope__ropes_109(res_7);
31134 		}
31135 		LA72_: ;
31136 		genAssignment__cgen_10369(p, dest, call, 0);
31137 	}
31138 	LA2_: ;
31139 }
N_NIMCALL(void,genNewSeq__cgen_20895)31140 N_LIB_PRIVATE N_NIMCALL(void, genNewSeq__cgen_20895)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e) {
31141 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
31142 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
31143 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31144 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31145 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
31146 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
31147 	{
31148 		tyObject_TType__facALICuu8zUj0hjvbTLFg* seqtype;
31149 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T5_;
31150 		NimStringDesc* res;
31151 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
31152 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
31153 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
31154 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
31155 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
31156 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
31157 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T12_;
31158 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
31159 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T14_;
31160 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
31161 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
31162 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
31163 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA3_;
31164 		seqtype = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
31165 		T5_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
31166 		T5_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
31167 		res = rawNewString(((NI) 80));
31168 		T6_ = NIM_NIL;
31169 		T6_ = rdLoc__cgen_425(a);
31170 		cgFormatValue__cgen_141((&res), T6_);
31171 		res = resizeString(res, 7);
31172 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_774));
31173 		T7_ = NIM_NIL;
31174 		T7_ = rdLoc__cgen_425(b);
31175 		cgFormatValue__cgen_141((&res), T7_);
31176 		res = resizeString(res, 2);
31177 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
31178 		T8_ = NIM_NIL;
31179 		T8_ = rdLoc__cgen_425(a);
31180 		cgFormatValue__cgen_141((&res), T8_);
31181 		res = resizeString(res, 6);
31182 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_775));
31183 		T9_ = NIM_NIL;
31184 		T9_ = getSeqPayloadType__cgen_3448((*p).module, seqtype);
31185 		cgFormatValue__cgen_141((&res), T9_);
31186 		res = resizeString(res, 3);
31187 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_524));
31188 		T10_ = NIM_NIL;
31189 		T10_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_776));
31190 		cgFormatValue__cgen_141((&res), T10_);
31191 		res = resizeString(res, 1);
31192 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31193 		T11_ = NIM_NIL;
31194 		T11_ = rdLoc__cgen_425(b);
31195 		cgFormatValue__cgen_141((&res), T11_);
31196 		res = resizeString(res, 9);
31197 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
31198 		T12_ = NIM_NIL;
31199 		T12_ = lastSon__ast_3743(seqtype);
31200 		T13_ = NIM_NIL;
31201 		T13_ = getTypeDesc__cgen_6631((*p).module, T12_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31202 		cgFormatValue__cgen_141((&res), T13_);
31203 		res = resizeString(res, 15);
31204 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_777));
31205 		T14_ = NIM_NIL;
31206 		T14_ = lastSon__ast_3743(seqtype);
31207 		T15_ = NIM_NIL;
31208 		T15_ = getTypeDesc__cgen_6631((*p).module, T14_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31209 		cgFormatValue__cgen_141((&res), T15_);
31210 		res = resizeString(res, 3);
31211 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
31212 		{
31213 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA18_;
31214 			res = resizeString(res, 1);
31215 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
31216 		}
31217 		LA18_: ;
31218 		T20_ = NIM_NIL;
31219 		T20_ = rope__ropes_109(res);
31220 		T21_ = NIM_NIL;
31221 		T21_ = indentLine__cgen_280(p, T20_);
31222 		add__ropes_159(T5_, T21_);
31223 	}
31224 	goto LA1_;
31225 	LA3_: ;
31226 	{
31227 		NIM_BOOL lenIsZero;
31228 		NIM_BOOL T23_;
31229 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
31230 		T23_ = (NIM_BOOL)0;
31231 		T23_ = ((*(*e)._kind_6.sons->data[((NI) 2)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6));
31232 		if (!(T23_)) goto LA24_;
31233 		T23_ = ((*(*e)._kind_6.sons->data[((NI) 2)])._kind_1.intVal == IL64(0));
31234 		LA24_: ;
31235 		lenIsZero = T23_;
31236 		T25_ = NIM_NIL;
31237 		T25_ = rdLoc__cgen_425(b);
31238 		genNewSeqAux__cgen_20801(p, a, T25_, lenIsZero);
31239 		gcUsage__cgen_20362((*(*(*p).module).g).config, e);
31240 	}
31241 	LA1_: ;
31242 }
N_NIMCALL(void,genNewSeqOfCap__cgen_20934)31243 N_LIB_PRIVATE N_NIMCALL(void, genNewSeqOfCap__cgen_20934)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
31244 	tyObject_TType__facALICuu8zUj0hjvbTLFg* seqtype;
31245 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
31246 	seqtype = skipTypes__ast_3735((*e).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
31247 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31248 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
31249 	{
31250 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T9_;
31251 		NimStringDesc* res;
31252 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
31253 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
31254 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
31255 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
31256 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
31257 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T15_;
31258 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
31259 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T17_;
31260 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
31261 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
31262 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
31263 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA3_;
31264 		{
31265 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA7_;
31266 			getTemp__cgen_7343(p, (*e).typ, d, NIM_FALSE);
31267 		}
31268 		LA7_: ;
31269 		T9_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
31270 		T9_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
31271 		res = rawNewString(((NI) 80));
31272 		T10_ = NIM_NIL;
31273 		T10_ = rdLoc__cgen_425((*d));
31274 		cgFormatValue__cgen_141((&res), T10_);
31275 		res = resizeString(res, 10);
31276 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_96));
31277 		T11_ = NIM_NIL;
31278 		T11_ = rdLoc__cgen_425((*d));
31279 		cgFormatValue__cgen_141((&res), T11_);
31280 		res = resizeString(res, 6);
31281 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_775));
31282 		T12_ = NIM_NIL;
31283 		T12_ = getSeqPayloadType__cgen_3448((*p).module, seqtype);
31284 		cgFormatValue__cgen_141((&res), T12_);
31285 		res = resizeString(res, 3);
31286 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_524));
31287 		T13_ = NIM_NIL;
31288 		T13_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_776));
31289 		cgFormatValue__cgen_141((&res), T13_);
31290 		res = resizeString(res, 1);
31291 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31292 		T14_ = NIM_NIL;
31293 		T14_ = rdLoc__cgen_425(a);
31294 		cgFormatValue__cgen_141((&res), T14_);
31295 		res = resizeString(res, 9);
31296 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
31297 		T15_ = NIM_NIL;
31298 		T15_ = lastSon__ast_3743(seqtype);
31299 		T16_ = NIM_NIL;
31300 		T16_ = getTypeDesc__cgen_6631((*p).module, T15_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31301 		cgFormatValue__cgen_141((&res), T16_);
31302 		res = resizeString(res, 15);
31303 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_777));
31304 		T17_ = NIM_NIL;
31305 		T17_ = lastSon__ast_3743(seqtype);
31306 		T18_ = NIM_NIL;
31307 		T18_ = getTypeDesc__cgen_6631((*p).module, T17_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31308 		cgFormatValue__cgen_141((&res), T18_);
31309 		res = resizeString(res, 3);
31310 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
31311 		{
31312 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA21_;
31313 			res = resizeString(res, 1);
31314 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
31315 		}
31316 		LA21_: ;
31317 		T23_ = NIM_NIL;
31318 		T23_ = rope__ropes_109(res);
31319 		T24_ = NIM_NIL;
31320 		T24_ = indentLine__cgen_280(p, T23_);
31321 		add__ropes_159(T9_, T24_);
31322 	}
31323 	goto LA1_;
31324 	LA3_: ;
31325 	{
31326 		NimStringDesc* res_2;
31327 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
31328 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
31329 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
31330 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
31331 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
31332 		res_2 = rawNewString(((NI) 80));
31333 		res_2 = resizeString(res_2, 1);
31334 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31335 		T26_ = NIM_NIL;
31336 		T26_ = getTypeDesc__cgen_6631((*p).module, seqtype, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31337 		cgFormatValue__cgen_141((&res_2), T26_);
31338 		res_2 = resizeString(res_2, 1);
31339 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
31340 		T27_ = NIM_NIL;
31341 		T27_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_780));
31342 		cgFormatValue__cgen_141((&res_2), T27_);
31343 		res_2 = resizeString(res_2, 1);
31344 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31345 		T28_ = NIM_NIL;
31346 		T28_ = genTypeInfoV1__cgen_6768((*p).module, seqtype, (*e).info);
31347 		cgFormatValue__cgen_141((&res_2), T28_);
31348 		res_2 = resizeString(res_2, 2);
31349 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
31350 		T29_ = NIM_NIL;
31351 		T29_ = rdLoc__cgen_425(a);
31352 		cgFormatValue__cgen_141((&res_2), T29_);
31353 		res_2 = resizeString(res_2, 1);
31354 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
31355 		T30_ = NIM_NIL;
31356 		T30_ = rope__ropes_109(res_2);
31357 		putIntoDest__cgen_18656(p, d, e, T30_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31358 		gcUsage__cgen_20362((*(*(*p).module).g).config, e);
31359 	}
31360 	LA1_: ;
31361 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_23613)31362 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23613)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
31363 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
31364 	result = NIM_NIL;
31365 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_782), args, argsLen_0);
31366 	return result;
31367 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_23620)31368 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23620)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
31369 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
31370 	result = NIM_NIL;
31371 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_783), args, argsLen_0);
31372 	return result;
31373 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_23649)31374 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23649)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
31375 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
31376 	result = NIM_NIL;
31377 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_787), args, argsLen_0);
31378 	return result;
31379 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22686)31380 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22686)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
31381 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
31382 	result = NIM_NIL;
31383 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_788), args, argsLen_0);
31384 	return result;
31385 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22703)31386 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22703)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
31387 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
31388 	result = NIM_NIL;
31389 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_789), args, argsLen_0);
31390 	return result;
31391 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22716)31392 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22716)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
31393 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
31394 	result = NIM_NIL;
31395 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_790), args, argsLen_0);
31396 	return result;
31397 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22729)31398 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22729)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
31399 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
31400 	result = NIM_NIL;
31401 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_791), args, argsLen_0);
31402 	return result;
31403 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22742)31404 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22742)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
31405 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
31406 	result = NIM_NIL;
31407 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_792), args, argsLen_0);
31408 	return result;
31409 }
N_NIMCALL(void,genSomeCast__cgen_22664)31410 N_LIB_PRIVATE N_NIMCALL(void, genSomeCast__cgen_22664)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
31411 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
31412 	tyObject_TType__facALICuu8zUj0hjvbTLFg* etyp;
31413 	tyObject_TType__facALICuu8zUj0hjvbTLFg* srcTyp;
31414 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31415 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
31416 	etyp = skipTypes__ast_3735((*e).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_753);
31417 	srcTyp = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_574);
31418 	{
31419 		NIM_BOOL T3_;
31420 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T7_;
31421 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
31422 		T3_ = (NIM_BOOL)0;
31423 		T3_ = ((*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18) || (*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17) || (*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16) || (*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27) || (*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48) || (*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 49));
31424 		if (!(T3_)) goto LA4_;
31425 		T3_ = !(((a.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0))&15U)))!=0));
31426 		LA4_: ;
31427 		if (!T3_) goto LA5_;
31428 		nimZeroMem((void*)T7_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
31429 		T7_[0] = getTypeDesc__cgen_6631((*p).module, (*e).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31430 		T7_[1] = addrLoc__cgen_10303((*(*(*p).module).g).config, a);
31431 		T8_ = NIM_NIL;
31432 		T8_ = percent___cgen_22686(T7_, 2);
31433 		putIntoDest__cgen_18656(p, d, e, T8_, a.storage);
31434 	}
31435 	goto LA1_;
31436 	LA5_: ;
31437 	{
31438 		NIM_BOOL T10_;
31439 		NIM_BOOL T11_;
31440 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T16_;
31441 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
31442 		T10_ = (NIM_BOOL)0;
31443 		T11_ = (NIM_BOOL)0;
31444 		T11_ = ((*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25));
31445 		if (!(T11_)) goto LA12_;
31446 		T11_ = ((*etyp).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9));
31447 		LA12_: ;
31448 		T10_ = T11_;
31449 		if (!(T10_)) goto LA13_;
31450 		T10_ = !(((*srcTyp).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 9)));
31451 		LA13_: ;
31452 		if (!T10_) goto LA14_;
31453 		nimZeroMem((void*)T16_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
31454 		T16_[0] = getClosureType__cgen_6644((*p).module, etyp, ((tyEnum_TClosureTypeKind__cLHRMz1vnpSK0uePy2qbWw) 1));
31455 		T16_[1] = rdCharLoc__cgen_10343(a);
31456 		T17_ = NIM_NIL;
31457 		T17_ = percent___cgen_22703(T16_, 2);
31458 		putIntoDest__cgen_18656(p, d, e, T17_, a.storage);
31459 	}
31460 	goto LA1_;
31461 	LA14_: ;
31462 	{
31463 		{
31464 			NIM_BOOL T21_;
31465 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T25_;
31466 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
31467 			T21_ = (NIM_BOOL)0;
31468 			T21_ = ((*srcTyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21) || (*srcTyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26));
31469 			if (!(T21_)) goto LA22_;
31470 			T21_ = ((*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1) || (*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2) || (*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14) || (*etyp).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) && (*etyp).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35) || (*etyp).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) && (*etyp).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39) || (*etyp).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) && (*etyp).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44));
31471 			LA22_: ;
31472 			if (!T21_) goto LA23_;
31473 			nimZeroMem((void*)T25_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
31474 			T25_[0] = getTypeDesc__cgen_6631((*p).module, (*e).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31475 			T25_[1] = rdCharLoc__cgen_10343(a);
31476 			T26_ = NIM_NIL;
31477 			T26_ = percent___cgen_22716(T25_, 2);
31478 			putIntoDest__cgen_18656(p, d, e, T26_, a.storage);
31479 		}
31480 		goto LA19_;
31481 		LA23_: ;
31482 		{
31483 			NIM_BOOL T28_;
31484 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T32_;
31485 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
31486 			T28_ = (NIM_BOOL)0;
31487 			T28_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0);
31488 			if (!(T28_)) goto LA29_;
31489 			T28_ = ((*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24) || (*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28));
31490 			LA29_: ;
31491 			if (!T28_) goto LA30_;
31492 			nimZeroMem((void*)T32_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
31493 			T32_[0] = getTypeDesc__cgen_6631((*p).module, (*e).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31494 			T32_[1] = rdCharLoc__cgen_10343(a);
31495 			T33_ = NIM_NIL;
31496 			T33_ = percent___cgen_22729(T32_, 2);
31497 			putIntoDest__cgen_18656(p, d, e, T33_, a.storage);
31498 		}
31499 		goto LA19_;
31500 		LA30_: ;
31501 		{
31502 			NIM_BOOL T35_;
31503 			tyArray__JiWwrsTRC6xqNlGcBthSVA T39_;
31504 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
31505 			T35_ = (NIM_BOOL)0;
31506 			T35_ = ((*etyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1));
31507 			if (!(T35_)) goto LA36_;
31508 			T35_ = ((*srcTyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1) || (*srcTyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2) || (*srcTyp).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14) || (*srcTyp).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) && (*srcTyp).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35) || (*srcTyp).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) && (*srcTyp).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39) || (*srcTyp).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) && (*srcTyp).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44));
31509 			LA36_: ;
31510 			if (!T35_) goto LA37_;
31511 			nimZeroMem((void*)T39_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
31512 			T39_[0] = rdCharLoc__cgen_10343(a);
31513 			T40_ = NIM_NIL;
31514 			T40_ = percent___cgen_22742(T39_, 1);
31515 			putIntoDest__cgen_18656(p, d, e, T40_, a.storage);
31516 		}
31517 		goto LA19_;
31518 		LA37_: ;
31519 		{
31520 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T42_;
31521 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
31522 			nimZeroMem((void*)T42_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
31523 			T42_[0] = getTypeDesc__cgen_6631((*p).module, (*e).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31524 			T42_[1] = rdCharLoc__cgen_10343(a);
31525 			T43_ = NIM_NIL;
31526 			T43_ = percent___cgen_22703(T42_, 2);
31527 			putIntoDest__cgen_18656(p, d, e, T43_, a.storage);
31528 		}
31529 		LA19_: ;
31530 	}
31531 	LA1_: ;
31532 }
N_NIMCALL(void,genOrd__cgen_22648)31533 N_LIB_PRIVATE N_NIMCALL(void, genOrd__cgen_22648)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
31534 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5038_;
31535 	NimStringDesc* res;
31536 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
31537 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
31538 	nimZeroMem((void*)(&aX60gensym5038_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31539 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5038_));
31540 	res = rawNewString(((NI) 80));
31541 	T1_ = NIM_NIL;
31542 	T1_ = rdCharLoc__cgen_10343(aX60gensym5038_);
31543 	cgFormatValue__cgen_141((&res), T1_);
31544 	T2_ = NIM_NIL;
31545 	T2_ = rope__ropes_109(res);
31546 	putIntoDest__cgen_18656(p, d, e, T2_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31547 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_21813)31548 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_21813)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
31549 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
31550 	result = NIM_NIL;
31551 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_805), args, argsLen_0);
31552 	return result;
31553 }
N_NIMCALL(void,genArrayLen__cgen_21665)31554 N_LIB_PRIVATE N_NIMCALL(void, genArrayLen__cgen_21665)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg op) {
31555 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a;
31556 	tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
31557 	a = (*e)._kind_6.sons->data[((NI) 1)];
31558 	{
31559 		if (!((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA3_;
31560 		a = (*a)._kind_6.sons->data[((NI) 0)];
31561 	}
31562 	LA3_: ;
31563 	typ = skipTypes__ast_3735((*a).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_793);
31564 	switch ((*typ).kind) {
31565 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
31566 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
31567 	{
31568 		{
31569 			NIM_BOOL T8_;
31570 			NIM_BOOL T9_;
31571 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
31572 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA c;
31573 			T8_ = (NIM_BOOL)0;
31574 			T9_ = (NIM_BOOL)0;
31575 			T9_ = ((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27) || (*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29) || (*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30) || (*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31) || (*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) || (*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28) || (*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32));
31576 			if (!(T9_)) goto LA10_;
31577 			T9_ = ((*(*a)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
31578 			LA10_: ;
31579 			T8_ = T9_;
31580 			if (!(T8_)) goto LA11_;
31581 			T8_ = ((*(*(*a)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 126));
31582 			LA11_: ;
31583 			if (!T8_) goto LA12_;
31584 			nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31585 			nimZeroMem((void*)(&c), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31586 			initLocExpr__cgen_11483(p, (*a)._kind_6.sons->data[((NI) 2)], (&b));
31587 			initLocExpr__cgen_11483(p, (*a)._kind_6.sons->data[((NI) 3)], (&c));
31588 			{
31589 				NimStringDesc* res;
31590 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
31591 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
31592 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
31593 				if (!(op == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 9))) goto LA16_;
31594 				res = rawNewString(((NI) 80));
31595 				res = resizeString(res, 1);
31596 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31597 				T18_ = NIM_NIL;
31598 				T18_ = rdLoc__cgen_425(c);
31599 				cgFormatValue__cgen_141((&res), T18_);
31600 				res = resizeString(res, 3);
31601 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_794));
31602 				T19_ = NIM_NIL;
31603 				T19_ = rdLoc__cgen_425(b);
31604 				cgFormatValue__cgen_141((&res), T19_);
31605 				res = resizeString(res, 1);
31606 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
31607 				T20_ = NIM_NIL;
31608 				T20_ = rope__ropes_109(res);
31609 				putIntoDest__cgen_18656(p, d, e, T20_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31610 			}
31611 			goto LA14_;
31612 			LA16_: ;
31613 			{
31614 				NimStringDesc* res_2;
31615 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
31616 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
31617 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
31618 				res_2 = rawNewString(((NI) 80));
31619 				res_2 = resizeString(res_2, 1);
31620 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31621 				T22_ = NIM_NIL;
31622 				T22_ = rdLoc__cgen_425(c);
31623 				cgFormatValue__cgen_141((&res_2), T22_);
31624 				res_2 = resizeString(res_2, 3);
31625 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_794));
31626 				T23_ = NIM_NIL;
31627 				T23_ = rdLoc__cgen_425(b);
31628 				cgFormatValue__cgen_141((&res_2), T23_);
31629 				res_2 = resizeString(res_2, 3);
31630 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_795));
31631 				T24_ = NIM_NIL;
31632 				T24_ = rope__ropes_109(res_2);
31633 				putIntoDest__cgen_18656(p, d, e, T24_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31634 			}
31635 			LA14_: ;
31636 		}
31637 		goto LA6_;
31638 		LA12_: ;
31639 		{
31640 			{
31641 				NIM_BOOL T28_;
31642 				T28_ = (NIM_BOOL)0;
31643 				T28_ = reifiedOpenArray__cgen_11738(a);
31644 				if (!!(T28_)) goto LA29_;
31645 				{
31646 					tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4661_;
31647 					NimStringDesc* res_3;
31648 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
31649 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
31650 					if (!(op == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 9))) goto LA33_;
31651 					nimZeroMem((void*)(&aX60gensym4661_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31652 					initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4661_));
31653 					res_3 = rawNewString(((NI) 80));
31654 					res_3 = resizeString(res_3, 1);
31655 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31656 					T35_ = NIM_NIL;
31657 					T35_ = rdLoc__cgen_425(aX60gensym4661_);
31658 					cgFormatValue__cgen_141((&res_3), T35_);
31659 					res_3 = resizeString(res_3, 8);
31660 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_796));
31661 					T36_ = NIM_NIL;
31662 					T36_ = rope__ropes_109(res_3);
31663 					putIntoDest__cgen_18656(p, d, e, T36_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31664 				}
31665 				goto LA31_;
31666 				LA33_: ;
31667 				{
31668 					tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4667_;
31669 					NimStringDesc* res_4;
31670 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
31671 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
31672 					nimZeroMem((void*)(&aX60gensym4667_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31673 					initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4667_));
31674 					res_4 = rawNewString(((NI) 80));
31675 					T38_ = NIM_NIL;
31676 					T38_ = rdLoc__cgen_425(aX60gensym4667_);
31677 					cgFormatValue__cgen_141((&res_4), T38_);
31678 					res_4 = resizeString(res_4, 5);
31679 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_797));
31680 					T39_ = NIM_NIL;
31681 					T39_ = rope__ropes_109(res_4);
31682 					putIntoDest__cgen_18656(p, d, e, T39_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31683 				}
31684 				LA31_: ;
31685 			}
31686 			goto LA26_;
31687 			LA29_: ;
31688 			{
31689 				{
31690 					tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4673_;
31691 					NimStringDesc* res_5;
31692 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
31693 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
31694 					if (!(op == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 9))) goto LA43_;
31695 					nimZeroMem((void*)(&aX60gensym4673_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31696 					initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4673_));
31697 					res_5 = rawNewString(((NI) 80));
31698 					res_5 = resizeString(res_5, 1);
31699 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31700 					T45_ = NIM_NIL;
31701 					T45_ = rdLoc__cgen_425(aX60gensym4673_);
31702 					cgFormatValue__cgen_141((&res_5), T45_);
31703 					res_5 = resizeString(res_5, 10);
31704 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_798));
31705 					T46_ = NIM_NIL;
31706 					T46_ = rope__ropes_109(res_5);
31707 					putIntoDest__cgen_18656(p, d, e, T46_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31708 				}
31709 				goto LA41_;
31710 				LA43_: ;
31711 				{
31712 					tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4679_;
31713 					NimStringDesc* res_6;
31714 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
31715 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
31716 					nimZeroMem((void*)(&aX60gensym4679_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31717 					initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4679_));
31718 					res_6 = rawNewString(((NI) 80));
31719 					T48_ = NIM_NIL;
31720 					T48_ = rdLoc__cgen_425(aX60gensym4679_);
31721 					cgFormatValue__cgen_141((&res_6), T48_);
31722 					res_6 = resizeString(res_6, 7);
31723 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_799));
31724 					T49_ = NIM_NIL;
31725 					T49_ = rope__ropes_109(res_6);
31726 					putIntoDest__cgen_18656(p, d, e, T49_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31727 				}
31728 				LA41_: ;
31729 			}
31730 			LA26_: ;
31731 		}
31732 		LA6_: ;
31733 	}
31734 	break;
31735 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
31736 	{
31737 		{
31738 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4685_;
31739 			NimStringDesc* res_7;
31740 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T55_;
31741 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
31742 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
31743 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
31744 			if (!(op == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 9))) goto LA53_;
31745 			nimZeroMem((void*)(&aX60gensym4685_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31746 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4685_));
31747 			res_7 = rawNewString(((NI) 80));
31748 			res_7 = resizeString(res_7, 1);
31749 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31750 			T55_ = NIM_NIL;
31751 			T55_ = rdLoc__cgen_425(aX60gensym4685_);
31752 			cgFormatValue__cgen_141((&res_7), T55_);
31753 			res_7 = resizeString(res_7, 4);
31754 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_800));
31755 			T56_ = NIM_NIL;
31756 			T56_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_801));
31757 			cgFormatValue__cgen_141((&res_7), T56_);
31758 			res_7 = resizeString(res_7, 1);
31759 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31760 			T57_ = NIM_NIL;
31761 			T57_ = rdLoc__cgen_425(aX60gensym4685_);
31762 			cgFormatValue__cgen_141((&res_7), T57_);
31763 			res_7 = resizeString(res_7, 10);
31764 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_802));
31765 			T58_ = NIM_NIL;
31766 			T58_ = rope__ropes_109(res_7);
31767 			putIntoDest__cgen_18656(p, d, e, T58_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31768 		}
31769 		goto LA51_;
31770 		LA53_: ;
31771 		{
31772 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4691_;
31773 			NimStringDesc* res_8;
31774 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
31775 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T61_;
31776 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T62_;
31777 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
31778 			nimZeroMem((void*)(&aX60gensym4691_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31779 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4691_));
31780 			res_8 = rawNewString(((NI) 80));
31781 			res_8 = resizeString(res_8, 1);
31782 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31783 			T60_ = NIM_NIL;
31784 			T60_ = rdLoc__cgen_425(aX60gensym4691_);
31785 			cgFormatValue__cgen_141((&res_8), T60_);
31786 			res_8 = resizeString(res_8, 3);
31787 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_803));
31788 			T61_ = NIM_NIL;
31789 			T61_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_801));
31790 			cgFormatValue__cgen_141((&res_8), T61_);
31791 			res_8 = resizeString(res_8, 1);
31792 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31793 			T62_ = NIM_NIL;
31794 			T62_ = rdLoc__cgen_425(aX60gensym4691_);
31795 			cgFormatValue__cgen_141((&res_8), T62_);
31796 			res_8 = resizeString(res_8, 6);
31797 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_804));
31798 			T63_ = NIM_NIL;
31799 			T63_ = rope__ropes_109(res_8);
31800 			putIntoDest__cgen_18656(p, d, e, T63_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31801 		}
31802 		LA51_: ;
31803 	}
31804 	break;
31805 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
31806 	{
31807 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_2;
31808 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* x;
31809 		nimZeroMem((void*)(&a_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31810 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a_2));
31811 		x = lenExpr__cgen_448(p, a_2);
31812 		{
31813 			tyArray__JiWwrsTRC6xqNlGcBthSVA T69_;
31814 			if (!(op == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 9))) goto LA67_;
31815 			nimZeroMem((void*)T69_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
31816 			T69_[0] = x;
31817 			x = percent___cgen_21813(T69_, 1);
31818 		}
31819 		LA67_: ;
31820 		putIntoDest__cgen_18656(p, d, e, x, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31821 	}
31822 	break;
31823 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
31824 	{
31825 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_3;
31826 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
31827 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* x_2;
31828 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T76_;
31829 		NimStringDesc* res_9;
31830 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
31831 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T82_;
31832 		nimZeroMem((void*)(&a_3), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31833 		nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31834 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a_3));
31835 		getIntTemp__cgen_11039(p, (&tmp));
31836 		x_2 = lenExpr__cgen_448(p, a_3);
31837 		{
31838 			tyArray__JiWwrsTRC6xqNlGcBthSVA T75_;
31839 			if (!(op == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 9))) goto LA73_;
31840 			nimZeroMem((void*)T75_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
31841 			T75_[0] = x_2;
31842 			x_2 = percent___cgen_21813(T75_, 1);
31843 		}
31844 		LA73_: ;
31845 		T76_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
31846 		T76_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
31847 		res_9 = rawNewString(((NI) 80));
31848 		cgFormatValue__cgen_141((&res_9), tmp.r);
31849 		res_9 = resizeString(res_9, 3);
31850 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
31851 		cgFormatValue__cgen_141((&res_9), x_2);
31852 		res_9 = resizeString(res_9, 1);
31853 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
31854 		{
31855 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA79_;
31856 			res_9 = resizeString(res_9, 1);
31857 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
31858 		}
31859 		LA79_: ;
31860 		T81_ = NIM_NIL;
31861 		T81_ = rope__ropes_109(res_9);
31862 		T82_ = NIM_NIL;
31863 		T82_ = indentLine__cgen_280(p, T81_);
31864 		add__ropes_159(T76_, T82_);
31865 		putIntoDest__cgen_18656(p, d, e, tmp.r, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31866 	}
31867 	break;
31868 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
31869 	{
31870 		{
31871 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T88_;
31872 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T89_;
31873 			if (!(op == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 9))) goto LA86_;
31874 			T88_ = lastOrd__types_1465((*(*(*p).module).g).config, typ);
31875 			T89_ = NIM_NIL;
31876 			T89_ = rope__cgen_6918(T88_);
31877 			putIntoDest__cgen_18656(p, d, e, T89_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31878 		}
31879 		goto LA84_;
31880 		LA86_: ;
31881 		{
31882 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA T91_;
31883 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T92_;
31884 			T91_ = lengthOrd__types_1652((*(*(*p).module).g).config, typ);
31885 			T92_ = NIM_NIL;
31886 			T92_ = rope__cgen_6918(T91_);
31887 			putIntoDest__cgen_18656(p, d, e, T92_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
31888 		}
31889 		LA84_: ;
31890 	}
31891 	break;
31892 	default:
31893 	{
31894 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_806), TM__MQdRN7fpbG7rPm4JpVVAhA_807);
31895 	}
31896 	break;
31897 	}
31898 }
N_NIMCALL(void,genSetLengthStr__cgen_21917)31899 N_LIB_PRIVATE N_NIMCALL(void, genSetLengthStr__cgen_21917)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
31900 	{
31901 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA3_;
31902 		binaryStmtAddr__cgen_18697(p, e, d, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_813));
31903 	}
31904 	goto LA1_;
31905 	LA3_: ;
31906 	{
31907 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
31908 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
31909 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA call;
31910 		NimStringDesc* res;
31911 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
31912 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
31913 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
31914 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31915 		nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31916 		nimZeroMem((void*)(&call), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31917 		{
31918 			if (!!(((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0)))) goto LA8_;
31919 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_814), TM__MQdRN7fpbG7rPm4JpVVAhA_815);
31920 		}
31921 		LA8_: ;
31922 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
31923 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
31924 		initLoc__cgen_60((&call), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), e, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
31925 		res = rawNewString(((NI) 80));
31926 		T10_ = NIM_NIL;
31927 		T10_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_816));
31928 		cgFormatValue__cgen_141((&res), T10_);
31929 		res = resizeString(res, 1);
31930 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31931 		T11_ = NIM_NIL;
31932 		T11_ = rdLoc__cgen_425(a);
31933 		cgFormatValue__cgen_141((&res), T11_);
31934 		res = resizeString(res, 2);
31935 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
31936 		T12_ = NIM_NIL;
31937 		T12_ = rdLoc__cgen_425(b);
31938 		cgFormatValue__cgen_141((&res), T12_);
31939 		res = resizeString(res, 1);
31940 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
31941 		call.r = rope__ropes_109(res);
31942 		genAssignment__cgen_10369(p, a, call, 0);
31943 		gcUsage__cgen_20362((*(*(*p).module).g).config, e);
31944 	}
31945 	LA1_: ;
31946 }
N_NIMCALL(void,genSetLengthSeq__cgen_21859)31947 N_LIB_PRIVATE N_NIMCALL(void, genSetLengthSeq__cgen_21859)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
31948 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
31949 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
31950 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA call;
31951 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
31952 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
31953 {	{
31954 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA3_;
31955 		asgnRef((void**) (&(*e)._kind_6.sons->data[((NI) 1)]), makeAddr__cgen_21851((*e)._kind_6.sons->data[((NI) 1)], (*(*p).module).Sup.idgen));
31956 		genCall__cgen_13078(p, e, d);
31957 		goto BeforeRet_;
31958 	}
31959 	LA3_: ;
31960 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31961 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31962 	nimZeroMem((void*)(&call), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
31963 	x = (*e)._kind_6.sons->data[((NI) 1)];
31964 	{
31965 		if (!((*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63) || (*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA7_;
31966 		x = (*x)._kind_6.sons->data[((NI) 0)];
31967 	}
31968 	LA7_: ;
31969 	initLocExpr__cgen_11483(p, x, (&a));
31970 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
31971 	t = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_735);
31972 	initLoc__cgen_60((&call), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), e, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
31973 	{
31974 		NIM_BOOL T11_;
31975 		NimStringDesc* res;
31976 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
31977 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
31978 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
31979 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T18_;
31980 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
31981 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
31982 		T11_ = (NIM_BOOL)0;
31983 		T11_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
31984 		if (T11_) goto LA12_;
31985 		T11_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
31986 		LA12_: ;
31987 		if (!!(T11_)) goto LA13_;
31988 		res = rawNewString(((NI) 80));
31989 		res = resizeString(res, 1);
31990 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
31991 		T15_ = NIM_NIL;
31992 		T15_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
31993 		cgFormatValue__cgen_141((&res), T15_);
31994 		res = resizeString(res, 2);
31995 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
31996 		T16_ = NIM_NIL;
31997 		T16_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_817));
31998 		cgFormatValue__cgen_141((&res), T16_);
31999 		res = resizeString(res, 3);
32000 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_818));
32001 		T17_ = NIM_NIL;
32002 		T17_ = rdLoc__cgen_425(a);
32003 		cgFormatValue__cgen_141((&res), T17_);
32004 		res = resizeString(res, 8);
32005 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_819));
32006 		T18_ = NIM_NIL;
32007 		T18_ = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
32008 		T19_ = NIM_NIL;
32009 		T19_ = genTypeInfoV1__cgen_6768((*p).module, T18_, (*e).info);
32010 		cgFormatValue__cgen_141((&res), T19_);
32011 		res = resizeString(res, 2);
32012 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
32013 		T20_ = NIM_NIL;
32014 		T20_ = rdLoc__cgen_425(b);
32015 		cgFormatValue__cgen_141((&res), T20_);
32016 		res = resizeString(res, 1);
32017 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
32018 		call.r = rope__ropes_109(res);
32019 	}
32020 	goto LA9_;
32021 	LA13_: ;
32022 	{
32023 		NimStringDesc* res_2;
32024 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
32025 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
32026 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
32027 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T25_;
32028 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
32029 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
32030 		res_2 = rawNewString(((NI) 80));
32031 		res_2 = resizeString(res_2, 1);
32032 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
32033 		T22_ = NIM_NIL;
32034 		T22_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
32035 		cgFormatValue__cgen_141((&res_2), T22_);
32036 		res_2 = resizeString(res_2, 2);
32037 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
32038 		T23_ = NIM_NIL;
32039 		T23_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_817));
32040 		cgFormatValue__cgen_141((&res_2), T23_);
32041 		res_2 = resizeString(res_2, 1);
32042 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
32043 		T24_ = NIM_NIL;
32044 		T24_ = rdLoc__cgen_425(a);
32045 		cgFormatValue__cgen_141((&res_2), T24_);
32046 		res_2 = resizeString(res_2, 2);
32047 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
32048 		T25_ = NIM_NIL;
32049 		T25_ = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
32050 		T26_ = NIM_NIL;
32051 		T26_ = genTypeInfoV1__cgen_6768((*p).module, T25_, (*e).info);
32052 		cgFormatValue__cgen_141((&res_2), T26_);
32053 		res_2 = resizeString(res_2, 2);
32054 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
32055 		T27_ = NIM_NIL;
32056 		T27_ = rdLoc__cgen_425(b);
32057 		cgFormatValue__cgen_141((&res_2), T27_);
32058 		res_2 = resizeString(res_2, 1);
32059 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
32060 		call.r = rope__ropes_109(res_2);
32061 	}
32062 	LA9_: ;
32063 	genAssignment__cgen_10369(p, a, call, 0);
32064 	gcUsage__cgen_20362((*(*(*p).module).g).config, e);
32065 	}BeforeRet_: ;
32066 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22140)32067 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22140)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32068 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32069 	result = NIM_NIL;
32070 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_820), args, argsLen_0);
32071 	return result;
32072 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_21968)32073 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_21968)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32074 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32075 	result = NIM_NIL;
32076 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_821), args, argsLen_0);
32077 	return result;
32078 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,rdSetElemLoc__cgen_17579)32079 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rdSetElemLoc__cgen_17579)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
32080 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32081 	tyObject_TType__facALICuu8zUj0hjvbTLFg* setType;
32082 	result = NIM_NIL;
32083 	result = rdCharLoc__cgen_10343(a);
32084 	setType = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_272);
32085 	{
32086 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA T3_;
32087 		NIM_BOOL T4_;
32088 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T7_;
32089 		tyObject_Int128__9a9axPfb75jdWY25AamJewkA T8_;
32090 		T3_ = firstOrd__types_1353(conf, setType);
32091 		T4_ = (NIM_BOOL)0;
32092 		T4_ = eqeq___int495056_759(T3_, IL64(0));
32093 		if (!!(T4_)) goto LA5_;
32094 		nimZeroMem((void*)T7_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32095 		T7_[0] = result;
32096 		T8_ = firstOrd__types_1353(conf, setType);
32097 		T7_[1] = rope__cgen_6918(T8_);
32098 		result = percent___cgen_21968(T7_, 2);
32099 	}
32100 	LA5_: ;
32101 	return result;
32102 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22158)32103 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22158)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32104 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32105 	result = NIM_NIL;
32106 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_822), args, argsLen_0);
32107 	return result;
32108 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22176)32109 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22176)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32110 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32111 	result = NIM_NIL;
32112 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_823), args, argsLen_0);
32113 	return result;
32114 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22194)32115 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22194)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32116 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32117 	result = NIM_NIL;
32118 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_824), args, argsLen_0);
32119 	return result;
32120 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22215)32121 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22215)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32122 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32123 	result = NIM_NIL;
32124 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_825), args, argsLen_0);
32125 	return result;
32126 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22233)32127 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22233)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32128 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32129 	result = NIM_NIL;
32130 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_826), args, argsLen_0);
32131 	return result;
32132 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22251)32133 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22251)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32134 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32135 	result = NIM_NIL;
32136 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_827), args, argsLen_0);
32137 	return result;
32138 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22269)32139 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22269)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32140 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32141 	result = NIM_NIL;
32142 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_828), args, argsLen_0);
32143 	return result;
32144 }
N_NIMCALL(NIM_BOOL,fewCmps__cgen_21973)32145 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, fewCmps__cgen_21973)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s) {
32146 	NIM_BOOL result;
32147 {	result = (NIM_BOOL)0;
32148 	{
32149 		if (!!(((*s).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39)))) goto LA3_;
32150 		result = NIM_FALSE;
32151 		goto BeforeRet_;
32152 	}
32153 	LA3_: ;
32154 	{
32155 		NIM_BOOL T7_;
32156 		NI64 T8_;
32157 		T7_ = (NIM_BOOL)0;
32158 		T8_ = (NI64)0;
32159 		T8_ = getSize__types_3327(conf, (*s).typ);
32160 		T7_ = (T8_ <= ((NI64) ((*conf).target.intSize)));
32161 		if (!(T7_)) goto LA9_;
32162 		T7_ = (((*s).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 4))&31U)))!=0);
32163 		LA9_: ;
32164 		if (!T7_) goto LA10_;
32165 		result = NIM_FALSE;
32166 	}
32167 	goto LA5_;
32168 	LA10_: ;
32169 	{
32170 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T13_;
32171 		T13_ = NIM_NIL;
32172 		T13_ = elemType__types_263((*s).typ);
32173 		if (!((*T13_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) || (*T13_).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 33) && (*T13_).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35))) goto LA14_;
32174 		result = NIM_TRUE;
32175 	}
32176 	goto LA5_;
32177 	LA14_: ;
32178 	{
32179 		NI T17_;
32180 		T17_ = (NI)0;
32181 		T17_ = len__ast_3198(s);
32182 		result = (T17_ <= ((NI) 8));
32183 	}
32184 	LA5_: ;
32185 	}BeforeRet_: ;
32186 	return result;
32187 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22083)32188 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22083)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32189 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32190 	result = NIM_NIL;
32191 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_837), args, argsLen_0);
32192 	return result;
32193 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22088)32194 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22088)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32195 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32196 	result = NIM_NIL;
32197 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_838), args, argsLen_0);
32198 	return result;
32199 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22006)32200 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22006)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32201 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32202 	result = NIM_NIL;
32203 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_839), args, argsLen_0);
32204 	return result;
32205 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22011)32206 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22011)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32207 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32208 	result = NIM_NIL;
32209 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_840), args, argsLen_0);
32210 	return result;
32211 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22016)32212 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22016)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32213 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32214 	result = NIM_NIL;
32215 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_841), args, argsLen_0);
32216 	return result;
32217 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22021)32218 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22021)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32219 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32220 	result = NIM_NIL;
32221 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_842), args, argsLen_0);
32222 	return result;
32223 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22026)32224 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22026)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32225 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32226 	result = NIM_NIL;
32227 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_843), args, argsLen_0);
32228 	return result;
32229 }
N_NIMCALL(void,genInExprAux__cgen_19633)32230 N_LIB_PRIVATE N_NIMCALL(void, genInExprAux__cgen_19633)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* b, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
32231 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
32232 	NI64 T2_;
32233 	T1_ = NIM_NIL;
32234 	T1_ = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_357);
32235 	T2_ = (NI64)0;
32236 	T2_ = getSize__types_3327((*(*(*p).module).g).config, T1_);
32237 	switch (((NI) (T2_))) {
32238 	case ((NI) 1):
32239 	{
32240 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T4_;
32241 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
32242 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
32243 		nimZeroMem((void*)T4_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32244 		T4_[0] = rdLoc__cgen_425((*a));
32245 		T5_ = NIM_NIL;
32246 		T5_ = t__cgen_79((*a));
32247 		T4_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, (*b), T5_);
32248 		T6_ = NIM_NIL;
32249 		T6_ = percent___cgen_22006(T4_, 2);
32250 		putIntoDest__cgen_18656(p, d, e, T6_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32251 	}
32252 	break;
32253 	case ((NI) 2):
32254 	{
32255 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T8_;
32256 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T9_;
32257 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
32258 		nimZeroMem((void*)T8_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32259 		T8_[0] = rdLoc__cgen_425((*a));
32260 		T9_ = NIM_NIL;
32261 		T9_ = t__cgen_79((*a));
32262 		T8_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, (*b), T9_);
32263 		T10_ = NIM_NIL;
32264 		T10_ = percent___cgen_22011(T8_, 2);
32265 		putIntoDest__cgen_18656(p, d, e, T10_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32266 	}
32267 	break;
32268 	case ((NI) 4):
32269 	{
32270 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T12_;
32271 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T13_;
32272 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
32273 		nimZeroMem((void*)T12_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32274 		T12_[0] = rdLoc__cgen_425((*a));
32275 		T13_ = NIM_NIL;
32276 		T13_ = t__cgen_79((*a));
32277 		T12_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, (*b), T13_);
32278 		T14_ = NIM_NIL;
32279 		T14_ = percent___cgen_22016(T12_, 2);
32280 		putIntoDest__cgen_18656(p, d, e, T14_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32281 	}
32282 	break;
32283 	case ((NI) 8):
32284 	{
32285 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T16_;
32286 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T17_;
32287 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
32288 		nimZeroMem((void*)T16_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32289 		T16_[0] = rdLoc__cgen_425((*a));
32290 		T17_ = NIM_NIL;
32291 		T17_ = t__cgen_79((*a));
32292 		T16_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, (*b), T17_);
32293 		T18_ = NIM_NIL;
32294 		T18_ = percent___cgen_22021(T16_, 2);
32295 		putIntoDest__cgen_18656(p, d, e, T18_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32296 	}
32297 	break;
32298 	default:
32299 	{
32300 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T20_;
32301 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T21_;
32302 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
32303 		nimZeroMem((void*)T20_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32304 		T20_[0] = rdLoc__cgen_425((*a));
32305 		T21_ = NIM_NIL;
32306 		T21_ = t__cgen_79((*a));
32307 		T20_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, (*b), T21_);
32308 		T22_ = NIM_NIL;
32309 		T22_ = percent___cgen_22026(T20_, 2);
32310 		putIntoDest__cgen_18656(p, d, e, T22_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32311 	}
32312 	break;
32313 	}
32314 }
N_NIMCALL(void,genInOp__cgen_22038)32315 N_LIB_PRIVATE N_NIMCALL(void, genInOp__cgen_22038)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
32316 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
32317 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
32318 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA x;
32319 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA y;
32320 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32321 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32322 	nimZeroMem((void*)(&x), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32323 	nimZeroMem((void*)(&y), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32324 	{
32325 		NIM_BOOL T3_;
32326 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ea;
32327 		T3_ = (NIM_BOOL)0;
32328 		T3_ = ((*(*e)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39));
32329 		if (!(T3_)) goto LA4_;
32330 		T3_ = fewCmps__cgen_21973((*(*(*p).module).g).config, (*e)._kind_6.sons->data[((NI) 1)]);
32331 		LA4_: ;
32332 		if (!T3_) goto LA5_;
32333 		{
32334 			if (!((*(*e)._kind_6.sons->data[((NI) 2)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 70) || (*(*e)._kind_6.sons->data[((NI) 2)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 69))) goto LA9_;
32335 			ea = (*(*e)._kind_6.sons->data[((NI) 2)])._kind_6.sons->data[((NI) 0)];
32336 		}
32337 		goto LA7_;
32338 		LA9_: ;
32339 		{
32340 			ea = (*e)._kind_6.sons->data[((NI) 2)];
32341 		}
32342 		LA7_: ;
32343 		initLocExpr__cgen_11483(p, ea, (&a));
32344 		initLoc__cgen_60((&b), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), e, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32345 		{
32346 			NI T14_;
32347 			T14_ = (NI)0;
32348 			T14_ = len__ast_3198((*e)._kind_6.sons->data[((NI) 1)]);
32349 			if (!(((NI) 0) < T14_)) goto LA15_;
32350 			b.r = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
32351 			{
32352 				NI i;
32353 				NI colontmp_;
32354 				NI i_2;
32355 				i = (NI)0;
32356 				colontmp_ = (NI)0;
32357 				colontmp_ = len__ast_3198((*e)._kind_6.sons->data[((NI) 1)]);
32358 				i_2 = ((NI) 0);
32359 				{
32360 					while (1) {
32361 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
32362 						if (!(i_2 < colontmp_)) goto LA19;
32363 						i = i_2;
32364 						it = (*(*e)._kind_6.sons->data[((NI) 1)])._kind_6.sons->data[i];
32365 						{
32366 							tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T24_;
32367 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
32368 							if (!((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA22_;
32369 							initLocExpr__cgen_11483(p, (*it)._kind_6.sons->data[((NI) 0)], (&x));
32370 							initLocExpr__cgen_11483(p, (*it)._kind_6.sons->data[((NI) 1)], (&y));
32371 							nimZeroMem((void*)T24_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
32372 							T24_[0] = rdCharLoc__cgen_10343(a);
32373 							T24_[1] = rdCharLoc__cgen_10343(x);
32374 							T24_[2] = rdCharLoc__cgen_10343(y);
32375 							T25_ = NIM_NIL;
32376 							T25_ = percent___cgen_22083(T24_, 3);
32377 							add__ropes_159(&b.r, T25_);
32378 						}
32379 						goto LA20_;
32380 						LA22_: ;
32381 						{
32382 							tyArray__mrugoXXRZUEeG9bEXo9auBKw T27_;
32383 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
32384 							initLocExpr__cgen_11483(p, it, (&x));
32385 							nimZeroMem((void*)T27_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32386 							T27_[0] = rdCharLoc__cgen_10343(a);
32387 							T27_[1] = rdCharLoc__cgen_10343(x);
32388 							T28_ = NIM_NIL;
32389 							T28_ = percent___cgen_22088(T27_, 2);
32390 							add__ropes_159(&b.r, T28_);
32391 						}
32392 						LA20_: ;
32393 						{
32394 							NI T31_;
32395 							T31_ = (NI)0;
32396 							T31_ = len__ast_3198((*e)._kind_6.sons->data[((NI) 1)]);
32397 							if (!(i < (NI)(T31_ - ((NI) 1)))) goto LA32_;
32398 							add__ropes_162(&b.r, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_578));
32399 						}
32400 						LA32_: ;
32401 						i_2 += ((NI) 1);
32402 					} LA19: ;
32403 				}
32404 			}
32405 			add__ropes_162(&b.r, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
32406 		}
32407 		goto LA12_;
32408 		LA15_: ;
32409 		{
32410 			b.r = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_153));
32411 		}
32412 		LA12_: ;
32413 		putIntoDest__cgen_18656(p, d, e, b.r, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32414 	}
32415 	goto LA1_;
32416 	LA5_: ;
32417 	{
32418 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
32419 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
32420 		genInExprAux__cgen_19633(p, e, (&a), (&b), d);
32421 	}
32422 	LA1_: ;
32423 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22500)32424 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22500)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32425 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32426 	result = NIM_NIL;
32427 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_846), args, argsLen_0);
32428 	return result;
32429 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22518)32430 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22518)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32431 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32432 	result = NIM_NIL;
32433 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_847), args, argsLen_0);
32434 	return result;
32435 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22625)32436 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22625)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
32437 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
32438 	result = NIM_NIL;
32439 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_857), args, argsLen_0);
32440 	return result;
32441 }
N_NIMCALL(void,genSetOp__cgen_22115)32442 N_LIB_PRIVATE N_NIMCALL(void, genSetOp__cgen_22115)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg op) {
32443 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
32444 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
32445 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA i;
32446 	tyObject_TType__facALICuu8zUj0hjvbTLFg* setType;
32447 	NI size;
32448 	NI64 T1_;
32449 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32450 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32451 	nimZeroMem((void*)(&i), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32452 	setType = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_357);
32453 	T1_ = (NI64)0;
32454 	T1_ = getSize__types_3327((*(*(*p).module).g).config, setType);
32455 	size = ((NI) (T1_));
32456 	switch (size) {
32457 	case ((NI) 1):
32458 	case ((NI) 2):
32459 	case ((NI) 4):
32460 	case ((NI) 8):
32461 	{
32462 		switch (op) {
32463 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 40):
32464 		{
32465 			switch (size) {
32466 			case ((NI) 1):
32467 			{
32468 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4801_;
32469 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4801_;
32470 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T5_;
32471 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T6_;
32472 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T7_;
32473 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
32474 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
32475 				nimZeroMem((void*)(&aX60gensym4801_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32476 				nimZeroMem((void*)(&bX60gensym4801_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32477 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4801_));
32478 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4801_));
32479 				T5_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
32480 				T5_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
32481 				nimZeroMem((void*)T6_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32482 				T6_[0] = rdLoc__cgen_425(aX60gensym4801_);
32483 				T7_ = NIM_NIL;
32484 				T7_ = t__cgen_79(aX60gensym4801_);
32485 				T6_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, bX60gensym4801_, T7_);
32486 				T8_ = NIM_NIL;
32487 				T8_ = percent___cgen_22140(T6_, 2);
32488 				T9_ = NIM_NIL;
32489 				T9_ = indentLine__cgen_280(p, T8_);
32490 				add__ropes_159(T5_, T9_);
32491 			}
32492 			break;
32493 			case ((NI) 2):
32494 			{
32495 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4808_;
32496 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4808_;
32497 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T11_;
32498 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T12_;
32499 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T13_;
32500 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
32501 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
32502 				nimZeroMem((void*)(&aX60gensym4808_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32503 				nimZeroMem((void*)(&bX60gensym4808_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32504 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4808_));
32505 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4808_));
32506 				T11_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
32507 				T11_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
32508 				nimZeroMem((void*)T12_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32509 				T12_[0] = rdLoc__cgen_425(aX60gensym4808_);
32510 				T13_ = NIM_NIL;
32511 				T13_ = t__cgen_79(aX60gensym4808_);
32512 				T12_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, bX60gensym4808_, T13_);
32513 				T14_ = NIM_NIL;
32514 				T14_ = percent___cgen_22158(T12_, 2);
32515 				T15_ = NIM_NIL;
32516 				T15_ = indentLine__cgen_280(p, T14_);
32517 				add__ropes_159(T11_, T15_);
32518 			}
32519 			break;
32520 			case ((NI) 4):
32521 			{
32522 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4815_;
32523 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4815_;
32524 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T17_;
32525 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T18_;
32526 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T19_;
32527 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
32528 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
32529 				nimZeroMem((void*)(&aX60gensym4815_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32530 				nimZeroMem((void*)(&bX60gensym4815_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32531 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4815_));
32532 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4815_));
32533 				T17_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
32534 				T17_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
32535 				nimZeroMem((void*)T18_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32536 				T18_[0] = rdLoc__cgen_425(aX60gensym4815_);
32537 				T19_ = NIM_NIL;
32538 				T19_ = t__cgen_79(aX60gensym4815_);
32539 				T18_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, bX60gensym4815_, T19_);
32540 				T20_ = NIM_NIL;
32541 				T20_ = percent___cgen_22176(T18_, 2);
32542 				T21_ = NIM_NIL;
32543 				T21_ = indentLine__cgen_280(p, T20_);
32544 				add__ropes_159(T17_, T21_);
32545 			}
32546 			break;
32547 			case ((NI) 8):
32548 			{
32549 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4822_;
32550 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4822_;
32551 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T23_;
32552 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T24_;
32553 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T25_;
32554 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
32555 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
32556 				nimZeroMem((void*)(&aX60gensym4822_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32557 				nimZeroMem((void*)(&bX60gensym4822_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32558 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4822_));
32559 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4822_));
32560 				T23_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
32561 				T23_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
32562 				nimZeroMem((void*)T24_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32563 				T24_[0] = rdLoc__cgen_425(aX60gensym4822_);
32564 				T25_ = NIM_NIL;
32565 				T25_ = t__cgen_79(aX60gensym4822_);
32566 				T24_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, bX60gensym4822_, T25_);
32567 				T26_ = NIM_NIL;
32568 				T26_ = percent___cgen_22194(T24_, 2);
32569 				T27_ = NIM_NIL;
32570 				T27_ = indentLine__cgen_280(p, T26_);
32571 				add__ropes_159(T23_, T27_);
32572 			}
32573 			break;
32574 			default:
32575 			{
32576 			}
32577 			break;
32578 			}
32579 		}
32580 		break;
32581 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 41):
32582 		{
32583 			switch (size) {
32584 			case ((NI) 1):
32585 			{
32586 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4831_;
32587 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4831_;
32588 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T31_;
32589 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T32_;
32590 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T33_;
32591 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
32592 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
32593 				nimZeroMem((void*)(&aX60gensym4831_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32594 				nimZeroMem((void*)(&bX60gensym4831_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32595 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4831_));
32596 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4831_));
32597 				T31_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
32598 				T31_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
32599 				nimZeroMem((void*)T32_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32600 				T32_[0] = rdLoc__cgen_425(aX60gensym4831_);
32601 				T33_ = NIM_NIL;
32602 				T33_ = t__cgen_79(aX60gensym4831_);
32603 				T32_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, bX60gensym4831_, T33_);
32604 				T34_ = NIM_NIL;
32605 				T34_ = percent___cgen_22215(T32_, 2);
32606 				T35_ = NIM_NIL;
32607 				T35_ = indentLine__cgen_280(p, T34_);
32608 				add__ropes_159(T31_, T35_);
32609 			}
32610 			break;
32611 			case ((NI) 2):
32612 			{
32613 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4838_;
32614 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4838_;
32615 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T37_;
32616 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T38_;
32617 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T39_;
32618 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
32619 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
32620 				nimZeroMem((void*)(&aX60gensym4838_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32621 				nimZeroMem((void*)(&bX60gensym4838_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32622 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4838_));
32623 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4838_));
32624 				T37_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
32625 				T37_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
32626 				nimZeroMem((void*)T38_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32627 				T38_[0] = rdLoc__cgen_425(aX60gensym4838_);
32628 				T39_ = NIM_NIL;
32629 				T39_ = t__cgen_79(aX60gensym4838_);
32630 				T38_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, bX60gensym4838_, T39_);
32631 				T40_ = NIM_NIL;
32632 				T40_ = percent___cgen_22233(T38_, 2);
32633 				T41_ = NIM_NIL;
32634 				T41_ = indentLine__cgen_280(p, T40_);
32635 				add__ropes_159(T37_, T41_);
32636 			}
32637 			break;
32638 			case ((NI) 4):
32639 			{
32640 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4845_;
32641 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4845_;
32642 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T43_;
32643 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T44_;
32644 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T45_;
32645 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
32646 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
32647 				nimZeroMem((void*)(&aX60gensym4845_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32648 				nimZeroMem((void*)(&bX60gensym4845_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32649 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4845_));
32650 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4845_));
32651 				T43_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
32652 				T43_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
32653 				nimZeroMem((void*)T44_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32654 				T44_[0] = rdLoc__cgen_425(aX60gensym4845_);
32655 				T45_ = NIM_NIL;
32656 				T45_ = t__cgen_79(aX60gensym4845_);
32657 				T44_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, bX60gensym4845_, T45_);
32658 				T46_ = NIM_NIL;
32659 				T46_ = percent___cgen_22251(T44_, 2);
32660 				T47_ = NIM_NIL;
32661 				T47_ = indentLine__cgen_280(p, T46_);
32662 				add__ropes_159(T43_, T47_);
32663 			}
32664 			break;
32665 			case ((NI) 8):
32666 			{
32667 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4852_;
32668 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4852_;
32669 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T49_;
32670 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T50_;
32671 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T51_;
32672 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
32673 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
32674 				nimZeroMem((void*)(&aX60gensym4852_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32675 				nimZeroMem((void*)(&bX60gensym4852_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32676 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4852_));
32677 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4852_));
32678 				T49_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
32679 				T49_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
32680 				nimZeroMem((void*)T50_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32681 				T50_[0] = rdLoc__cgen_425(aX60gensym4852_);
32682 				T51_ = NIM_NIL;
32683 				T51_ = t__cgen_79(aX60gensym4852_);
32684 				T50_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, bX60gensym4852_, T51_);
32685 				T52_ = NIM_NIL;
32686 				T52_ = percent___cgen_22269(T50_, 2);
32687 				T53_ = NIM_NIL;
32688 				T53_ = indentLine__cgen_280(p, T52_);
32689 				add__ropes_159(T49_, T53_);
32690 			}
32691 			break;
32692 			default:
32693 			{
32694 			}
32695 			break;
32696 			}
32697 		}
32698 		break;
32699 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 42):
32700 		{
32701 			{
32702 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4861_;
32703 				NimStringDesc* res;
32704 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
32705 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T61_;
32706 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T62_;
32707 				if (!(size <= ((NI) 4))) goto LA58_;
32708 				nimZeroMem((void*)(&aX60gensym4861_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32709 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4861_));
32710 				res = rawNewString(((NI) 80));
32711 				T60_ = NIM_NIL;
32712 				T60_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_829));
32713 				cgFormatValue__cgen_141((&res), T60_);
32714 				res = resizeString(res, 1);
32715 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
32716 				T61_ = NIM_NIL;
32717 				T61_ = rdCharLoc__cgen_10343(aX60gensym4861_);
32718 				cgFormatValue__cgen_141((&res), T61_);
32719 				res = resizeString(res, 1);
32720 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
32721 				T62_ = NIM_NIL;
32722 				T62_ = rope__ropes_109(res);
32723 				putIntoDest__cgen_18656(p, d, e, T62_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32724 			}
32725 			goto LA56_;
32726 			LA58_: ;
32727 			{
32728 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4867_;
32729 				NimStringDesc* res_2;
32730 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
32731 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T65_;
32732 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
32733 				nimZeroMem((void*)(&aX60gensym4867_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32734 				initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4867_));
32735 				res_2 = rawNewString(((NI) 80));
32736 				T64_ = NIM_NIL;
32737 				T64_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_830));
32738 				cgFormatValue__cgen_141((&res_2), T64_);
32739 				res_2 = resizeString(res_2, 1);
32740 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
32741 				T65_ = NIM_NIL;
32742 				T65_ = rdCharLoc__cgen_10343(aX60gensym4867_);
32743 				cgFormatValue__cgen_141((&res_2), T65_);
32744 				res_2 = resizeString(res_2, 1);
32745 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
32746 				T66_ = NIM_NIL;
32747 				T66_ = rope__ropes_109(res_2);
32748 				putIntoDest__cgen_18656(p, d, e, T66_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32749 			}
32750 			LA56_: ;
32751 		}
32752 		break;
32753 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 121):
32754 		{
32755 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4873_;
32756 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4873_;
32757 			NimStringDesc* res_3;
32758 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
32759 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
32760 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
32761 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
32762 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T72_;
32763 			nimZeroMem((void*)(&aX60gensym4873_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32764 			nimZeroMem((void*)(&bX60gensym4873_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32765 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4873_));
32766 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4873_));
32767 			res_3 = rawNewString(((NI) 80));
32768 			res_3 = resizeString(res_3, 3);
32769 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_831));
32770 			T68_ = NIM_NIL;
32771 			T68_ = rdCharLoc__cgen_10343(aX60gensym4873_);
32772 			cgFormatValue__cgen_141((&res_3), T68_);
32773 			res_3 = resizeString(res_3, 5);
32774 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_832));
32775 			T69_ = NIM_NIL;
32776 			T69_ = rdCharLoc__cgen_10343(bX60gensym4873_);
32777 			cgFormatValue__cgen_141((&res_3), T69_);
32778 			res_3 = resizeString(res_3, 8);
32779 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_833));
32780 			T70_ = NIM_NIL;
32781 			T70_ = rdCharLoc__cgen_10343(aX60gensym4873_);
32782 			cgFormatValue__cgen_141((&res_3), T70_);
32783 			res_3 = resizeString(res_3, 4);
32784 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_647));
32785 			T71_ = NIM_NIL;
32786 			T71_ = rdCharLoc__cgen_10343(bX60gensym4873_);
32787 			cgFormatValue__cgen_141((&res_3), T71_);
32788 			res_3 = resizeString(res_3, 2);
32789 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_423));
32790 			T72_ = NIM_NIL;
32791 			T72_ = rope__ropes_109(res_3);
32792 			putIntoDest__cgen_18656(p, d, e, T72_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32793 		}
32794 		break;
32795 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 120):
32796 		{
32797 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4888_;
32798 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4888_;
32799 			NimStringDesc* res_4;
32800 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T74_;
32801 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T75_;
32802 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T76_;
32803 			nimZeroMem((void*)(&aX60gensym4888_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32804 			nimZeroMem((void*)(&bX60gensym4888_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32805 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4888_));
32806 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4888_));
32807 			res_4 = rawNewString(((NI) 80));
32808 			res_4 = resizeString(res_4, 2);
32809 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_218));
32810 			T74_ = NIM_NIL;
32811 			T74_ = rdCharLoc__cgen_10343(aX60gensym4888_);
32812 			cgFormatValue__cgen_141((&res_4), T74_);
32813 			res_4 = resizeString(res_4, 5);
32814 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_832));
32815 			T75_ = NIM_NIL;
32816 			T75_ = rdCharLoc__cgen_10343(bX60gensym4888_);
32817 			cgFormatValue__cgen_141((&res_4), T75_);
32818 			res_4 = resizeString(res_4, 5);
32819 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_834));
32820 			T76_ = NIM_NIL;
32821 			T76_ = rope__ropes_109(res_4);
32822 			putIntoDest__cgen_18656(p, d, e, T76_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32823 		}
32824 		break;
32825 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 119):
32826 		{
32827 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4903_;
32828 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4903_;
32829 			NimStringDesc* res_5;
32830 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T78_;
32831 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T79_;
32832 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T80_;
32833 			nimZeroMem((void*)(&aX60gensym4903_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32834 			nimZeroMem((void*)(&bX60gensym4903_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32835 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4903_));
32836 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4903_));
32837 			res_5 = rawNewString(((NI) 80));
32838 			res_5 = resizeString(res_5, 1);
32839 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
32840 			T78_ = NIM_NIL;
32841 			T78_ = rdLoc__cgen_425(aX60gensym4903_);
32842 			cgFormatValue__cgen_141((&res_5), T78_);
32843 			res_5 = resizeString(res_5, 4);
32844 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_639));
32845 			T79_ = NIM_NIL;
32846 			T79_ = rdLoc__cgen_425(bX60gensym4903_);
32847 			cgFormatValue__cgen_141((&res_5), T79_);
32848 			res_5 = resizeString(res_5, 1);
32849 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
32850 			T80_ = NIM_NIL;
32851 			T80_ = rope__ropes_109(res_5);
32852 			putIntoDest__cgen_18656(p, d, e, T80_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32853 		}
32854 		break;
32855 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 122):
32856 		{
32857 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4918_;
32858 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4918_;
32859 			NimStringDesc* res_6;
32860 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T82_;
32861 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T83_;
32862 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T84_;
32863 			nimZeroMem((void*)(&aX60gensym4918_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32864 			nimZeroMem((void*)(&bX60gensym4918_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32865 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4918_));
32866 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4918_));
32867 			res_6 = rawNewString(((NI) 80));
32868 			res_6 = resizeString(res_6, 1);
32869 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
32870 			T82_ = NIM_NIL;
32871 			T82_ = rdLoc__cgen_425(aX60gensym4918_);
32872 			cgFormatValue__cgen_141((&res_6), T82_);
32873 			res_6 = resizeString(res_6, 3);
32874 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_835));
32875 			T83_ = NIM_NIL;
32876 			T83_ = rdLoc__cgen_425(bX60gensym4918_);
32877 			cgFormatValue__cgen_141((&res_6), T83_);
32878 			res_6 = resizeString(res_6, 1);
32879 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
32880 			T84_ = NIM_NIL;
32881 			T84_ = rope__ropes_109(res_6);
32882 			putIntoDest__cgen_18656(p, d, e, T84_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32883 		}
32884 		break;
32885 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 123):
32886 		{
32887 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4933_;
32888 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4933_;
32889 			NimStringDesc* res_7;
32890 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T86_;
32891 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T87_;
32892 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T88_;
32893 			nimZeroMem((void*)(&aX60gensym4933_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32894 			nimZeroMem((void*)(&bX60gensym4933_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32895 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4933_));
32896 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4933_));
32897 			res_7 = rawNewString(((NI) 80));
32898 			res_7 = resizeString(res_7, 1);
32899 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
32900 			T86_ = NIM_NIL;
32901 			T86_ = rdLoc__cgen_425(aX60gensym4933_);
32902 			cgFormatValue__cgen_141((&res_7), T86_);
32903 			res_7 = resizeString(res_7, 3);
32904 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_836));
32905 			T87_ = NIM_NIL;
32906 			T87_ = rdLoc__cgen_425(bX60gensym4933_);
32907 			cgFormatValue__cgen_141((&res_7), T87_);
32908 			res_7 = resizeString(res_7, 1);
32909 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
32910 			T88_ = NIM_NIL;
32911 			T88_ = rope__ropes_109(res_7);
32912 			putIntoDest__cgen_18656(p, d, e, T88_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32913 		}
32914 		break;
32915 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 124):
32916 		{
32917 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4948_;
32918 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4948_;
32919 			NimStringDesc* res_8;
32920 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T90_;
32921 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T91_;
32922 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T92_;
32923 			nimZeroMem((void*)(&aX60gensym4948_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32924 			nimZeroMem((void*)(&bX60gensym4948_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32925 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4948_));
32926 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4948_));
32927 			res_8 = rawNewString(((NI) 80));
32928 			res_8 = resizeString(res_8, 1);
32929 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
32930 			T90_ = NIM_NIL;
32931 			T90_ = rdLoc__cgen_425(aX60gensym4948_);
32932 			cgFormatValue__cgen_141((&res_8), T90_);
32933 			res_8 = resizeString(res_8, 5);
32934 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_832));
32935 			T91_ = NIM_NIL;
32936 			T91_ = rdLoc__cgen_425(bX60gensym4948_);
32937 			cgFormatValue__cgen_141((&res_8), T91_);
32938 			res_8 = resizeString(res_8, 1);
32939 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
32940 			T92_ = NIM_NIL;
32941 			T92_ = rope__ropes_109(res_8);
32942 			putIntoDest__cgen_18656(p, d, e, T92_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
32943 		}
32944 		break;
32945 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 134):
32946 		{
32947 			genInOp__cgen_22038(p, e, d);
32948 		}
32949 		break;
32950 		default:
32951 		{
32952 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_844), TM__MQdRN7fpbG7rPm4JpVVAhA_845);
32953 		}
32954 		break;
32955 		}
32956 	}
32957 	break;
32958 	default:
32959 	{
32960 		switch (op) {
32961 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 40):
32962 		{
32963 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4966_;
32964 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4966_;
32965 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T97_;
32966 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T98_;
32967 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T99_;
32968 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T100_;
32969 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T101_;
32970 			nimZeroMem((void*)(&aX60gensym4966_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32971 			nimZeroMem((void*)(&bX60gensym4966_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32972 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4966_));
32973 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4966_));
32974 			T97_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
32975 			T97_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
32976 			nimZeroMem((void*)T98_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
32977 			T98_[0] = rdLoc__cgen_425(aX60gensym4966_);
32978 			T99_ = NIM_NIL;
32979 			T99_ = t__cgen_79(aX60gensym4966_);
32980 			T98_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, bX60gensym4966_, T99_);
32981 			T100_ = NIM_NIL;
32982 			T100_ = percent___cgen_22500(T98_, 2);
32983 			T101_ = NIM_NIL;
32984 			T101_ = indentLine__cgen_280(p, T100_);
32985 			add__ropes_159(T97_, T101_);
32986 		}
32987 		break;
32988 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 41):
32989 		{
32990 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym4973_;
32991 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym4973_;
32992 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T103_;
32993 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T104_;
32994 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T105_;
32995 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T106_;
32996 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T107_;
32997 			nimZeroMem((void*)(&aX60gensym4973_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32998 			nimZeroMem((void*)(&bX60gensym4973_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
32999 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym4973_));
33000 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym4973_));
33001 			T103_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
33002 			T103_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
33003 			nimZeroMem((void*)T104_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
33004 			T104_[0] = rdLoc__cgen_425(aX60gensym4973_);
33005 			T105_ = NIM_NIL;
33006 			T105_ = t__cgen_79(aX60gensym4973_);
33007 			T104_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, bX60gensym4973_, T105_);
33008 			T106_ = NIM_NIL;
33009 			T106_ = percent___cgen_22518(T104_, 2);
33010 			T107_ = NIM_NIL;
33011 			T107_ = indentLine__cgen_280(p, T106_);
33012 			add__ropes_159(T103_, T107_);
33013 		}
33014 		break;
33015 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 42):
33016 		{
33017 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_2;
33018 			NimStringDesc* res_9;
33019 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T109_;
33020 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T110_;
33021 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T111_;
33022 			nimZeroMem((void*)(&a_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33023 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a_2));
33024 			res_9 = rawNewString(((NI) 80));
33025 			T109_ = NIM_NIL;
33026 			T109_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_848));
33027 			cgFormatValue__cgen_141((&res_9), T109_);
33028 			res_9 = resizeString(res_9, 1);
33029 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
33030 			T110_ = NIM_NIL;
33031 			T110_ = rdCharLoc__cgen_10343(a_2);
33032 			cgFormatValue__cgen_141((&res_9), T110_);
33033 			res_9 = resizeString(res_9, 2);
33034 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
33035 			cgFormatValue__cgen_148((&res_9), ((NI64) (size)));
33036 			res_9 = resizeString(res_9, 1);
33037 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
33038 			T111_ = NIM_NIL;
33039 			T111_ = rope__ropes_109(res_9);
33040 			putIntoDest__cgen_18656(p, d, e, T111_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
33041 		}
33042 		break;
33043 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 121):
33044 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 120):
33045 		{
33046 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T113_;
33047 			T113_ = NIM_NIL;
33048 			T113_ = getSysType__magicsys_60((*(*(*p).module).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
33049 			getTemp__cgen_7343(p, T113_, (&i), NIM_FALSE);
33050 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
33051 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
33052 			{
33053 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T118_;
33054 				if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA116_;
33055 				T118_ = NIM_NIL;
33056 				T118_ = getSysType__magicsys_60((*(*(*p).module).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1));
33057 				getTemp__cgen_7343(p, T118_, d, NIM_FALSE);
33058 			}
33059 			LA116_: ;
33060 			{
33061 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T123_;
33062 				NimStringDesc* res_10;
33063 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T124_;
33064 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T125_;
33065 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T126_;
33066 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T131_;
33067 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T132_;
33068 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T133_;
33069 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T134_;
33070 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T135_;
33071 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T140_;
33072 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T145_;
33073 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T146_;
33074 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T147_;
33075 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T148_;
33076 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T149_;
33077 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T154_;
33078 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T155_;
33079 				if (!(op == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 121))) goto LA121_;
33080 				T123_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
33081 				T123_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
33082 				res_10 = rawNewString(((NI) 80));
33083 				res_10 = resizeString(res_10, 5);
33084 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_175));
33085 				T124_ = NIM_NIL;
33086 				T124_ = rdLoc__cgen_425(i);
33087 				cgFormatValue__cgen_141((&res_10), T124_);
33088 				res_10 = resizeString(res_10, 6);
33089 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_176));
33090 				T125_ = NIM_NIL;
33091 				T125_ = rdLoc__cgen_425(i);
33092 				cgFormatValue__cgen_141((&res_10), T125_);
33093 				res_10 = resizeString(res_10, 3);
33094 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_177));
33095 				cgFormatValue__cgen_148((&res_10), ((NI64) (size)));
33096 				res_10 = resizeString(res_10, 2);
33097 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
33098 				T126_ = NIM_NIL;
33099 				T126_ = rdLoc__cgen_425(i);
33100 				cgFormatValue__cgen_141((&res_10), T126_);
33101 				res_10 = resizeString(res_10, 6);
33102 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_849));
33103 				{
33104 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA129_;
33105 					res_10 = resizeString(res_10, 1);
33106 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33107 				}
33108 				LA129_: ;
33109 				res_10 = resizeString(res_10, 2);
33110 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_314));
33111 				T131_ = NIM_NIL;
33112 				T131_ = rdLoc__cgen_425((*d));
33113 				cgFormatValue__cgen_141((&res_10), T131_);
33114 				res_10 = resizeString(res_10, 5);
33115 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_850));
33116 				T132_ = NIM_NIL;
33117 				T132_ = rdLoc__cgen_425(a);
33118 				cgFormatValue__cgen_141((&res_10), T132_);
33119 				res_10 = resizeString(res_10, 1);
33120 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
33121 				T133_ = NIM_NIL;
33122 				T133_ = rdLoc__cgen_425(i);
33123 				cgFormatValue__cgen_141((&res_10), T133_);
33124 				res_10 = resizeString(res_10, 6);
33125 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_851));
33126 				T134_ = NIM_NIL;
33127 				T134_ = rdLoc__cgen_425(b);
33128 				cgFormatValue__cgen_141((&res_10), T134_);
33129 				res_10 = resizeString(res_10, 1);
33130 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
33131 				T135_ = NIM_NIL;
33132 				T135_ = rdLoc__cgen_425(i);
33133 				cgFormatValue__cgen_141((&res_10), T135_);
33134 				res_10 = resizeString(res_10, 9);
33135 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_852));
33136 				{
33137 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA138_;
33138 					res_10 = resizeString(res_10, 1);
33139 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33140 				}
33141 				LA138_: ;
33142 				res_10 = resizeString(res_10, 7);
33143 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_853));
33144 				T140_ = NIM_NIL;
33145 				T140_ = rdLoc__cgen_425((*d));
33146 				cgFormatValue__cgen_141((&res_10), T140_);
33147 				res_10 = resizeString(res_10, 9);
33148 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_854));
33149 				{
33150 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA143_;
33151 					res_10 = resizeString(res_10, 1);
33152 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33153 				}
33154 				LA143_: ;
33155 				res_10 = resizeString(res_10, 4);
33156 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
33157 				T145_ = NIM_NIL;
33158 				T145_ = rdLoc__cgen_425((*d));
33159 				cgFormatValue__cgen_141((&res_10), T145_);
33160 				res_10 = resizeString(res_10, 2);
33161 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
33162 				T146_ = NIM_NIL;
33163 				T146_ = rdLoc__cgen_425((*d));
33164 				cgFormatValue__cgen_141((&res_10), T146_);
33165 				res_10 = resizeString(res_10, 4);
33166 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_105));
33167 				T147_ = NIM_NIL;
33168 				T147_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_855));
33169 				cgFormatValue__cgen_141((&res_10), T147_);
33170 				res_10 = resizeString(res_10, 1);
33171 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
33172 				T148_ = NIM_NIL;
33173 				T148_ = rdLoc__cgen_425(a);
33174 				cgFormatValue__cgen_141((&res_10), T148_);
33175 				res_10 = resizeString(res_10, 2);
33176 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
33177 				T149_ = NIM_NIL;
33178 				T149_ = rdLoc__cgen_425(b);
33179 				cgFormatValue__cgen_141((&res_10), T149_);
33180 				res_10 = resizeString(res_10, 2);
33181 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
33182 				cgFormatValue__cgen_148((&res_10), ((NI64) (size)));
33183 				res_10 = resizeString(res_10, 8);
33184 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_856));
33185 				{
33186 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA152_;
33187 					res_10 = resizeString(res_10, 1);
33188 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33189 				}
33190 				LA152_: ;
33191 				T154_ = NIM_NIL;
33192 				T154_ = rope__ropes_109(res_10);
33193 				T155_ = NIM_NIL;
33194 				T155_ = indentLine__cgen_280(p, T154_);
33195 				add__ropes_159(T123_, T155_);
33196 			}
33197 			goto LA119_;
33198 			LA121_: ;
33199 			{
33200 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T157_;
33201 				NimStringDesc* res_11;
33202 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T158_;
33203 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T159_;
33204 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T160_;
33205 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T165_;
33206 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T166_;
33207 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T167_;
33208 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T168_;
33209 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T169_;
33210 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T174_;
33211 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T179_;
33212 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T180_;
33213 				T157_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
33214 				T157_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
33215 				res_11 = rawNewString(((NI) 80));
33216 				res_11 = resizeString(res_11, 5);
33217 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_175));
33218 				T158_ = NIM_NIL;
33219 				T158_ = rdLoc__cgen_425(i);
33220 				cgFormatValue__cgen_141((&res_11), T158_);
33221 				res_11 = resizeString(res_11, 6);
33222 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_176));
33223 				T159_ = NIM_NIL;
33224 				T159_ = rdLoc__cgen_425(i);
33225 				cgFormatValue__cgen_141((&res_11), T159_);
33226 				res_11 = resizeString(res_11, 3);
33227 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_177));
33228 				cgFormatValue__cgen_148((&res_11), ((NI64) (size)));
33229 				res_11 = resizeString(res_11, 2);
33230 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
33231 				T160_ = NIM_NIL;
33232 				T160_ = rdLoc__cgen_425(i);
33233 				cgFormatValue__cgen_141((&res_11), T160_);
33234 				res_11 = resizeString(res_11, 6);
33235 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_849));
33236 				{
33237 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA163_;
33238 					res_11 = resizeString(res_11, 1);
33239 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33240 				}
33241 				LA163_: ;
33242 				res_11 = resizeString(res_11, 2);
33243 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_314));
33244 				T165_ = NIM_NIL;
33245 				T165_ = rdLoc__cgen_425((*d));
33246 				cgFormatValue__cgen_141((&res_11), T165_);
33247 				res_11 = resizeString(res_11, 5);
33248 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_850));
33249 				T166_ = NIM_NIL;
33250 				T166_ = rdLoc__cgen_425(a);
33251 				cgFormatValue__cgen_141((&res_11), T166_);
33252 				res_11 = resizeString(res_11, 1);
33253 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
33254 				T167_ = NIM_NIL;
33255 				T167_ = rdLoc__cgen_425(i);
33256 				cgFormatValue__cgen_141((&res_11), T167_);
33257 				res_11 = resizeString(res_11, 6);
33258 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_851));
33259 				T168_ = NIM_NIL;
33260 				T168_ = rdLoc__cgen_425(b);
33261 				cgFormatValue__cgen_141((&res_11), T168_);
33262 				res_11 = resizeString(res_11, 1);
33263 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
33264 				T169_ = NIM_NIL;
33265 				T169_ = rdLoc__cgen_425(i);
33266 				cgFormatValue__cgen_141((&res_11), T169_);
33267 				res_11 = resizeString(res_11, 9);
33268 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_852));
33269 				{
33270 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA172_;
33271 					res_11 = resizeString(res_11, 1);
33272 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33273 				}
33274 				LA172_: ;
33275 				res_11 = resizeString(res_11, 7);
33276 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_853));
33277 				T174_ = NIM_NIL;
33278 				T174_ = rdLoc__cgen_425((*d));
33279 				cgFormatValue__cgen_141((&res_11), T174_);
33280 				res_11 = resizeString(res_11, 9);
33281 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_854));
33282 				{
33283 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA177_;
33284 					res_11 = resizeString(res_11, 1);
33285 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33286 				}
33287 				LA177_: ;
33288 				T179_ = NIM_NIL;
33289 				T179_ = rope__ropes_109(res_11);
33290 				T180_ = NIM_NIL;
33291 				T180_ = indentLine__cgen_280(p, T179_);
33292 				add__ropes_159(T157_, T180_);
33293 			}
33294 			LA119_: ;
33295 		}
33296 		break;
33297 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 119):
33298 		{
33299 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_3;
33300 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b_2;
33301 			NimStringDesc* res_12;
33302 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T182_;
33303 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T183_;
33304 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T184_;
33305 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T185_;
33306 			nimZeroMem((void*)(&a_3), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33307 			nimZeroMem((void*)(&b_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33308 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a_3));
33309 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b_2));
33310 			res_12 = rawNewString(((NI) 80));
33311 			res_12 = resizeString(res_12, 1);
33312 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
33313 			T182_ = NIM_NIL;
33314 			T182_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_855));
33315 			cgFormatValue__cgen_141((&res_12), T182_);
33316 			res_12 = resizeString(res_12, 1);
33317 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
33318 			T183_ = NIM_NIL;
33319 			T183_ = rdCharLoc__cgen_10343(a_3);
33320 			cgFormatValue__cgen_141((&res_12), T183_);
33321 			res_12 = resizeString(res_12, 2);
33322 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
33323 			T184_ = NIM_NIL;
33324 			T184_ = rdCharLoc__cgen_10343(b_2);
33325 			cgFormatValue__cgen_141((&res_12), T184_);
33326 			res_12 = resizeString(res_12, 2);
33327 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
33328 			cgFormatValue__cgen_148((&res_12), ((NI64) (size)));
33329 			res_12 = resizeString(res_12, 5);
33330 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_834));
33331 			T185_ = NIM_NIL;
33332 			T185_ = rope__ropes_109(res_12);
33333 			putIntoDest__cgen_18656(p, d, e, T185_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
33334 		}
33335 		break;
33336 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 122):
33337 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 123):
33338 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 124):
33339 		{
33340 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T187_;
33341 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T192_;
33342 			tyArray__dNfZYyzVYdaWfURv4pxodA T193_;
33343 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T194_;
33344 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T195_;
33345 			T187_ = NIM_NIL;
33346 			T187_ = getSysType__magicsys_60((*(*(*p).module).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
33347 			getTemp__cgen_7343(p, T187_, (&i), NIM_FALSE);
33348 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
33349 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
33350 			{
33351 				if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA190_;
33352 				getTemp__cgen_7343(p, setType, d, NIM_FALSE);
33353 			}
33354 			LA190_: ;
33355 			T192_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
33356 			T192_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
33357 			nimZeroMem((void*)T193_, sizeof(tyArray__dNfZYyzVYdaWfURv4pxodA));
33358 			T193_[0] = rdLoc__cgen_425(i);
33359 			T193_[1] = rope__ropes_115(((NI64) (size)));
33360 			T193_[2] = rdLoc__cgen_425((*d));
33361 			T193_[3] = rdLoc__cgen_425(a);
33362 			T193_[4] = rdLoc__cgen_425(b);
33363 			T193_[5] = rope__ropes_109(lookupOpr__cgen_22120[(op)- 120]);
33364 			T194_ = NIM_NIL;
33365 			T194_ = percent___cgen_22625(T193_, 6);
33366 			T195_ = NIM_NIL;
33367 			T195_ = indentLine__cgen_280(p, T194_);
33368 			add__ropes_159(T192_, T195_);
33369 		}
33370 		break;
33371 		case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 134):
33372 		{
33373 			genInOp__cgen_22038(p, e, d);
33374 		}
33375 		break;
33376 		default:
33377 		{
33378 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_861), TM__MQdRN7fpbG7rPm4JpVVAhA_862);
33379 		}
33380 		break;
33381 		}
33382 	}
33383 	break;
33384 	}
33385 }
N_NIMCALL(void,genDefault__cgen_20626)33386 N_LIB_PRIVATE N_NIMCALL(void, genDefault__cgen_20626)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
33387 	{
33388 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA3_;
33389 		getTemp__cgen_7343(p, (*n).typ, d, NIM_TRUE);
33390 	}
33391 	goto LA1_;
33392 	LA3_: ;
33393 	{
33394 		resetLoc__cgen_10832(p, d);
33395 	}
33396 	LA1_: ;
33397 }
N_NIMCALL(void,genReset__cgen_20621)33398 N_LIB_PRIVATE N_NIMCALL(void, genReset__cgen_20621)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
33399 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
33400 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33401 	initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 1)], (&a));
33402 	specializeReset__cgen_10829(p, a);
33403 }
N_NIMCALL(void,genEcho__cgen_20264)33404 N_LIB_PRIVATE N_NIMCALL(void, genEcho__cgen_20264)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
33405 	{
33406 		NimStringDesc* argX60gensym4147_;
33407 		if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41)))) goto LA3_;
33408 		argX60gensym4147_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_863);
33409 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, argX60gensym4147_, TM__MQdRN7fpbG7rPm4JpVVAhA_863);
33410 	}
33411 	LA3_: ;
33412 	{
33413 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* args;
33414 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
33415 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T35_;
33416 		NimStringDesc* res_3;
33417 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
33418 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
33419 		if (!((*(*(*(*p).module).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 26))) goto LA7_;
33420 		args = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
33421 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33422 		{
33423 			NI i;
33424 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
33425 			tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp_;
33426 			NI i_2;
33427 			NI L;
33428 			NI T10_;
33429 			i = (NI)0;
33430 			it = NIM_NIL;
33431 			colontmp_ = NIM_NIL;
33432 			colontmp_ = (*n)._kind_6.sons;
33433 			i_2 = ((NI) 0);
33434 			T10_ = (colontmp_ ? colontmp_->Sup.len : 0);
33435 			L = T10_;
33436 			{
33437 				while (1) {
33438 					if (!(i_2 < L)) goto LA12;
33439 					i = i_2;
33440 					it = colontmp_->data[i_2];
33441 					{
33442 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T15_;
33443 						T15_ = NIM_NIL;
33444 						T15_ = skipConv__types_3588(it);
33445 						if (!((*T15_).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA16_;
33446 						add__ropes_162(&args, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_864));
33447 					}
33448 					goto LA13_;
33449 					LA16_: ;
33450 					{
33451 						NI T19_;
33452 						NI T26_;
33453 						T19_ = (NI)0;
33454 						T19_ = len__ast_3198(n);
33455 						if (!!((T19_ == ((NI) 0)))) goto LA20_;
33456 						initLocExpr__cgen_11483(p, it, (&a));
33457 						{
33458 							if (!(((NI) 0) < i)) goto LA24_;
33459 							add__ropes_162(&args, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
33460 						}
33461 						LA24_: ;
33462 						T26_ = (NI)0;
33463 						T26_ = detectStrVersion__cgen_472((*p).module);
33464 						switch (T26_) {
33465 						case ((NI) 2):
33466 						{
33467 							NimStringDesc* res;
33468 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
33469 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
33470 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
33471 							res = rawNewString(((NI) 80));
33472 							res = resizeString(res, 16);
33473 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_865));
33474 							T28_ = NIM_NIL;
33475 							T28_ = rdLoc__cgen_425(a);
33476 							cgFormatValue__cgen_141((&res), T28_);
33477 							res = resizeString(res, 10);
33478 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_866));
33479 							T29_ = NIM_NIL;
33480 							T29_ = rdLoc__cgen_425(a);
33481 							cgFormatValue__cgen_141((&res), T29_);
33482 							res = resizeString(res, 5);
33483 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_867));
33484 							T30_ = NIM_NIL;
33485 							T30_ = rope__ropes_109(res);
33486 							add__ropes_159(&args, T30_);
33487 						}
33488 						break;
33489 						default:
33490 						{
33491 							NimStringDesc* res_2;
33492 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
33493 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
33494 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
33495 							res_2 = rawNewString(((NI) 80));
33496 							res_2 = resizeString(res_2, 16);
33497 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_865));
33498 							T32_ = NIM_NIL;
33499 							T32_ = rdLoc__cgen_425(a);
33500 							cgFormatValue__cgen_141((&res_2), T32_);
33501 							res_2 = resizeString(res_2, 8);
33502 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_868));
33503 							T33_ = NIM_NIL;
33504 							T33_ = rdLoc__cgen_425(a);
33505 							cgFormatValue__cgen_141((&res_2), T33_);
33506 							res_2 = resizeString(res_2, 6);
33507 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_869));
33508 							T34_ = NIM_NIL;
33509 							T34_ = rope__ropes_109(res_2);
33510 							add__ropes_159(&args, T34_);
33511 						}
33512 						break;
33513 						}
33514 					}
33515 					goto LA13_;
33516 					LA20_: ;
33517 					LA13_: ;
33518 					i_2 += ((NI) 1);
33519 				} LA12: ;
33520 			}
33521 		}
33522 		includeHeader__cgendata_214((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_870));
33523 		includeHeader__cgendata_214((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_871));
33524 		T35_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
33525 		T35_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
33526 		res_3 = rawNewString(((NI) 80));
33527 		res_3 = resizeString(res_3, 12);
33528 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_872));
33529 		cgFormatValue__cgen_141((&res_3), args);
33530 		res_3 = resizeString(res_3, 2);
33531 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
33532 		{
33533 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA38_;
33534 			res_3 = resizeString(res_3, 1);
33535 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33536 		}
33537 		LA38_: ;
33538 		T40_ = NIM_NIL;
33539 		T40_ = rope__ropes_109(res_3);
33540 		T41_ = NIM_NIL;
33541 		T41_ = indentLine__cgen_280(p, T40_);
33542 		add__ropes_159(T35_, T41_);
33543 	}
33544 	goto LA5_;
33545 	LA7_: ;
33546 	{
33547 		{
33548 			NI T45_;
33549 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T48_;
33550 			NimStringDesc* res_4;
33551 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
33552 			NI T50_;
33553 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T55_;
33554 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
33555 			T45_ = (NI)0;
33556 			T45_ = len__ast_3198(n);
33557 			if (!(T45_ == ((NI) 0))) goto LA46_;
33558 			T48_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
33559 			T48_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
33560 			res_4 = rawNewString(((NI) 80));
33561 			T49_ = NIM_NIL;
33562 			T49_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_873));
33563 			cgFormatValue__cgen_141((&res_4), T49_);
33564 			res_4 = resizeString(res_4, 10);
33565 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_874));
33566 			T50_ = (NI)0;
33567 			T50_ = len__ast_3198(n);
33568 			cgFormatValue__cgen_148((&res_4), ((NI64) (T50_)));
33569 			res_4 = resizeString(res_4, 2);
33570 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
33571 			{
33572 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA53_;
33573 				res_4 = resizeString(res_4, 1);
33574 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33575 			}
33576 			LA53_: ;
33577 			T55_ = NIM_NIL;
33578 			T55_ = rope__ropes_109(res_4);
33579 			T56_ = NIM_NIL;
33580 			T56_ = indentLine__cgen_280(p, T55_);
33581 			add__ropes_159(T48_, T56_);
33582 		}
33583 		goto LA43_;
33584 		LA46_: ;
33585 		{
33586 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_2;
33587 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T58_;
33588 			NimStringDesc* res_5;
33589 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
33590 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
33591 			NI T61_;
33592 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
33593 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T67_;
33594 			nimZeroMem((void*)(&a_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33595 			initLocExpr__cgen_11483(p, n, (&a_2));
33596 			T58_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
33597 			T58_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
33598 			res_5 = rawNewString(((NI) 80));
33599 			T59_ = NIM_NIL;
33600 			T59_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_873));
33601 			cgFormatValue__cgen_141((&res_5), T59_);
33602 			res_5 = resizeString(res_5, 1);
33603 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
33604 			T60_ = NIM_NIL;
33605 			T60_ = rdLoc__cgen_425(a_2);
33606 			cgFormatValue__cgen_141((&res_5), T60_);
33607 			res_5 = resizeString(res_5, 2);
33608 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
33609 			T61_ = (NI)0;
33610 			T61_ = len__ast_3198(n);
33611 			cgFormatValue__cgen_148((&res_5), ((NI64) (T61_)));
33612 			res_5 = resizeString(res_5, 2);
33613 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
33614 			{
33615 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA64_;
33616 				res_5 = resizeString(res_5, 1);
33617 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33618 			}
33619 			LA64_: ;
33620 			T66_ = NIM_NIL;
33621 			T66_ = rope__ropes_109(res_5);
33622 			T67_ = NIM_NIL;
33623 			T67_ = indentLine__cgen_280(p, T66_);
33624 			add__ropes_159(T58_, T67_);
33625 		}
33626 		LA43_: ;
33627 	}
33628 	LA5_: ;
33629 }
N_NIMCALL(NIM_BOOL,lhsDoesAlias__cgen_21090)33630 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lhsDoesAlias__cgen_21090)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
33631 	NIM_BOOL result;
33632 {	result = (NIM_BOOL)0;
33633 	{
33634 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y;
33635 		y = NIM_NIL;
33636 		{
33637 			NI i;
33638 			NI colontmp_;
33639 			NI i_2;
33640 			i = (NI)0;
33641 			colontmp_ = (NI)0;
33642 			colontmp_ = safeLen__ast_3191(b);
33643 			i_2 = ((NI) 0);
33644 			{
33645 				while (1) {
33646 					if (!(i_2 < colontmp_)) goto LA4;
33647 					i = i_2;
33648 					y = (*b)._kind_6.sons->data[i];
33649 					{
33650 						tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w T7_;
33651 						T7_ = (tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w)0;
33652 						T7_ = isPartOf__aliases_129(a, y);
33653 						if (!!((T7_ == ((tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w) 0)))) goto LA8_;
33654 						result = NIM_TRUE;
33655 						goto BeforeRet_;
33656 					}
33657 					LA8_: ;
33658 					i_2 += ((NI) 1);
33659 				} LA4: ;
33660 			}
33661 		}
33662 	}
33663 	}BeforeRet_: ;
33664 	return result;
33665 }
N_NIMCALL(void,genSeqConstr__cgen_21099)33666 N_LIB_PRIVATE N_NIMCALL(void, genSeqConstr__cgen_21099)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
33667 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA arr;
33668 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
33669 	NIM_BOOL doesAlias;
33670 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* dest;
33671 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* l;
33672 	NI T13_;
33673 	nimZeroMem((void*)(&arr), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33674 	nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33675 	doesAlias = lhsDoesAlias__cgen_21090((*d).lode, n);
33676 	{
33677 		if (!doesAlias) goto LA3_;
33678 		dest = (&tmp);
33679 	}
33680 	goto LA1_;
33681 	LA3_: ;
33682 	{
33683 		dest = d;
33684 	}
33685 	LA1_: ;
33686 	{
33687 		if (!doesAlias) goto LA8_;
33688 		getTemp__cgen_7343(p, (*n).typ, (&tmp), NIM_FALSE);
33689 	}
33690 	goto LA6_;
33691 	LA8_: ;
33692 	{
33693 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA11_;
33694 		getTemp__cgen_7343(p, (*n).typ, d, NIM_FALSE);
33695 	}
33696 	goto LA6_;
33697 	LA11_: ;
33698 	LA6_: ;
33699 	T13_ = (NI)0;
33700 	T13_ = len__ast_3198(n);
33701 	l = intLiteral__cgen_11471(((NI64) (T13_)));
33702 	{
33703 		tyObject_TType__facALICuu8zUj0hjvbTLFg* seqtype;
33704 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T18_;
33705 		NimStringDesc* res;
33706 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
33707 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
33708 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
33709 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
33710 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T23_;
33711 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
33712 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T25_;
33713 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
33714 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
33715 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
33716 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA16_;
33717 		seqtype = (*n).typ;
33718 		T18_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
33719 		T18_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
33720 		res = rawNewString(((NI) 80));
33721 		T19_ = NIM_NIL;
33722 		T19_ = rdLoc__cgen_425((*dest));
33723 		cgFormatValue__cgen_141((&res), T19_);
33724 		res = resizeString(res, 7);
33725 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_774));
33726 		cgFormatValue__cgen_141((&res), l);
33727 		res = resizeString(res, 2);
33728 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
33729 		T20_ = NIM_NIL;
33730 		T20_ = rdLoc__cgen_425((*dest));
33731 		cgFormatValue__cgen_141((&res), T20_);
33732 		res = resizeString(res, 6);
33733 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_775));
33734 		T21_ = NIM_NIL;
33735 		T21_ = getSeqPayloadType__cgen_3448((*p).module, seqtype);
33736 		cgFormatValue__cgen_141((&res), T21_);
33737 		res = resizeString(res, 3);
33738 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_524));
33739 		T22_ = NIM_NIL;
33740 		T22_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_776));
33741 		cgFormatValue__cgen_141((&res), T22_);
33742 		res = resizeString(res, 1);
33743 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
33744 		cgFormatValue__cgen_141((&res), l);
33745 		res = resizeString(res, 9);
33746 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
33747 		T23_ = NIM_NIL;
33748 		T23_ = lastSon__ast_3743(seqtype);
33749 		T24_ = NIM_NIL;
33750 		T24_ = getTypeDesc__cgen_6631((*p).module, T23_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
33751 		cgFormatValue__cgen_141((&res), T24_);
33752 		res = resizeString(res, 15);
33753 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_777));
33754 		T25_ = NIM_NIL;
33755 		T25_ = lastSon__ast_3743(seqtype);
33756 		T26_ = NIM_NIL;
33757 		T26_ = getTypeDesc__cgen_6631((*p).module, T25_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
33758 		cgFormatValue__cgen_141((&res), T26_);
33759 		res = resizeString(res, 3);
33760 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
33761 		{
33762 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA29_;
33763 			res = resizeString(res, 1);
33764 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33765 		}
33766 		LA29_: ;
33767 		T31_ = NIM_NIL;
33768 		T31_ = rope__ropes_109(res);
33769 		T32_ = NIM_NIL;
33770 		T32_ = indentLine__cgen_280(p, T31_);
33771 		add__ropes_159(T18_, T32_);
33772 	}
33773 	goto LA14_;
33774 	LA16_: ;
33775 	{
33776 		NI T34_;
33777 		T34_ = (NI)0;
33778 		T34_ = len__ast_3198(n);
33779 		genNewSeqAux__cgen_20801(p, (*dest), l, (T34_ == ((NI) 0)));
33780 	}
33781 	LA14_: ;
33782 	{
33783 		NI i;
33784 		NI colontmp_;
33785 		NI i_2;
33786 		i = (NI)0;
33787 		colontmp_ = (NI)0;
33788 		colontmp_ = len__ast_3198(n);
33789 		i_2 = ((NI) 0);
33790 		{
33791 			while (1) {
33792 				NimStringDesc* res_2;
33793 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
33794 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
33795 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
33796 				if (!(i_2 < colontmp_)) goto LA37;
33797 				i = i_2;
33798 				initLoc__cgen_60((&arr), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), (*n)._kind_6.sons->data[i], ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
33799 				res_2 = rawNewString(((NI) 80));
33800 				T38_ = NIM_NIL;
33801 				T38_ = rdLoc__cgen_425((*dest));
33802 				cgFormatValue__cgen_141((&res_2), T38_);
33803 				T39_ = NIM_NIL;
33804 				T39_ = dataField__cgen_461(p);
33805 				cgFormatValue__cgen_141((&res_2), T39_);
33806 				res_2 = resizeString(res_2, 1);
33807 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
33808 				T40_ = NIM_NIL;
33809 				T40_ = intLiteral__cgen_11471(((NI64) (i)));
33810 				cgFormatValue__cgen_141((&res_2), T40_);
33811 				res_2 = resizeString(res_2, 1);
33812 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
33813 				arr.r = rope__ropes_109(res_2);
33814 				arr.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3);
33815 				expr__cgen_11460(p, (*n)._kind_6.sons->data[i], (&arr));
33816 				i_2 += ((NI) 1);
33817 			} LA37: ;
33818 		}
33819 	}
33820 	gcUsage__cgen_20362((*(*(*p).module).g).config, n);
33821 	{
33822 		if (!doesAlias) goto LA43_;
33823 		{
33824 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA47_;
33825 			genericAssign((void*)(&(*d)), (void*)(&tmp), (&NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_));
33826 		}
33827 		goto LA45_;
33828 		LA47_: ;
33829 		{
33830 			genAssignment__cgen_10369(p, (*d), tmp, 0);
33831 		}
33832 		LA45_: ;
33833 	}
33834 	LA43_: ;
33835 }
N_NIMCALL(void,genArrToSeq__cgen_21174)33836 N_LIB_PRIVATE N_NIMCALL(void, genArrToSeq__cgen_21174)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
33837 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA elem;
33838 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
33839 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA arr;
33840 	NI L;
33841 	tyObject_Int128__9a9axPfb75jdWY25AamJewkA T9_;
33842 {	nimZeroMem((void*)(&elem), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33843 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33844 	nimZeroMem((void*)(&arr), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
33845 	{
33846 		if (!((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41))) goto LA3_;
33847 		asgnRef((void**) (&(*(*n)._kind_6.sons->data[((NI) 1)]).typ), (*n).typ);
33848 		genSeqConstr__cgen_21099(p, (*n)._kind_6.sons->data[((NI) 1)], d);
33849 		goto BeforeRet_;
33850 	}
33851 	LA3_: ;
33852 	{
33853 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA7_;
33854 		getTemp__cgen_7343(p, (*n).typ, d, NIM_FALSE);
33855 	}
33856 	LA7_: ;
33857 	T9_ = lengthOrd__types_1652((*(*(*p).module).g).config, (*(*n)._kind_6.sons->data[((NI) 1)]).typ);
33858 	L = toInt__int495056_170(T9_);
33859 	{
33860 		tyObject_TType__facALICuu8zUj0hjvbTLFg* seqtype;
33861 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T14_;
33862 		NimStringDesc* res;
33863 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
33864 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
33865 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
33866 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
33867 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T19_;
33868 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
33869 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T21_;
33870 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
33871 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
33872 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
33873 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA12_;
33874 		seqtype = (*n).typ;
33875 		T14_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
33876 		T14_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
33877 		res = rawNewString(((NI) 80));
33878 		T15_ = NIM_NIL;
33879 		T15_ = rdLoc__cgen_425((*d));
33880 		cgFormatValue__cgen_141((&res), T15_);
33881 		res = resizeString(res, 7);
33882 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_774));
33883 		cgFormatValue__cgen_148((&res), ((NI64) (L)));
33884 		res = resizeString(res, 2);
33885 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
33886 		T16_ = NIM_NIL;
33887 		T16_ = rdLoc__cgen_425((*d));
33888 		cgFormatValue__cgen_141((&res), T16_);
33889 		res = resizeString(res, 6);
33890 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_775));
33891 		T17_ = NIM_NIL;
33892 		T17_ = getSeqPayloadType__cgen_3448((*p).module, seqtype);
33893 		cgFormatValue__cgen_141((&res), T17_);
33894 		res = resizeString(res, 3);
33895 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_524));
33896 		T18_ = NIM_NIL;
33897 		T18_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_776));
33898 		cgFormatValue__cgen_141((&res), T18_);
33899 		res = resizeString(res, 1);
33900 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
33901 		cgFormatValue__cgen_148((&res), ((NI64) (L)));
33902 		res = resizeString(res, 9);
33903 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
33904 		T19_ = NIM_NIL;
33905 		T19_ = lastSon__ast_3743(seqtype);
33906 		T20_ = NIM_NIL;
33907 		T20_ = getTypeDesc__cgen_6631((*p).module, T19_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
33908 		cgFormatValue__cgen_141((&res), T20_);
33909 		res = resizeString(res, 15);
33910 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_777));
33911 		T21_ = NIM_NIL;
33912 		T21_ = lastSon__ast_3743(seqtype);
33913 		T22_ = NIM_NIL;
33914 		T22_ = getTypeDesc__cgen_6631((*p).module, T21_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
33915 		cgFormatValue__cgen_141((&res), T22_);
33916 		res = resizeString(res, 3);
33917 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
33918 		{
33919 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA25_;
33920 			res = resizeString(res, 1);
33921 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
33922 		}
33923 		LA25_: ;
33924 		T27_ = NIM_NIL;
33925 		T27_ = rope__ropes_109(res);
33926 		T28_ = NIM_NIL;
33927 		T28_ = indentLine__cgen_280(p, T27_);
33928 		add__ropes_159(T14_, T28_);
33929 	}
33930 	goto LA10_;
33931 	LA12_: ;
33932 	{
33933 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
33934 		T30_ = NIM_NIL;
33935 		T30_ = intLiteral__cgen_11471(((NI64) (L)));
33936 		genNewSeqAux__cgen_20801(p, (*d), T30_, (L == ((NI) 0)));
33937 	}
33938 	LA10_: ;
33939 	initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 1)], (&a));
33940 	{
33941 		if (!(L < ((NI) 10))) goto LA33_;
33942 		{
33943 			NI i;
33944 			NI i_2;
33945 			i = (NI)0;
33946 			i_2 = ((NI) 0);
33947 			{
33948 				while (1) {
33949 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T38_;
33950 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T39_;
33951 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T40_;
33952 					NimStringDesc* res_2;
33953 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
33954 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
33955 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
33956 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T44_;
33957 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T45_;
33958 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T46_;
33959 					NimStringDesc* res_3;
33960 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
33961 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
33962 					if (!(i_2 < L)) goto LA37;
33963 					i = i_2;
33964 					T38_ = NIM_NIL;
33965 					T38_ = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
33966 					T39_ = NIM_NIL;
33967 					T39_ = elemType__types_263(T38_);
33968 					T40_ = NIM_NIL;
33969 					T40_ = lodeTyp__cgen_86(T39_);
33970 					initLoc__cgen_60((&elem), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), T40_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
33971 					res_2 = rawNewString(((NI) 80));
33972 					T41_ = NIM_NIL;
33973 					T41_ = rdLoc__cgen_425((*d));
33974 					cgFormatValue__cgen_141((&res_2), T41_);
33975 					T42_ = NIM_NIL;
33976 					T42_ = dataField__cgen_461(p);
33977 					cgFormatValue__cgen_141((&res_2), T42_);
33978 					res_2 = resizeString(res_2, 1);
33979 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
33980 					T43_ = NIM_NIL;
33981 					T43_ = intLiteral__cgen_11471(((NI64) (i)));
33982 					cgFormatValue__cgen_141((&res_2), T43_);
33983 					res_2 = resizeString(res_2, 1);
33984 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
33985 					elem.r = rope__ropes_109(res_2);
33986 					elem.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3);
33987 					T44_ = NIM_NIL;
33988 					T44_ = skipTypes__ast_3735((*(*n)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
33989 					T45_ = NIM_NIL;
33990 					T45_ = elemType__types_263(T44_);
33991 					T46_ = NIM_NIL;
33992 					T46_ = lodeTyp__cgen_86(T45_);
33993 					initLoc__cgen_60((&arr), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), T46_, a.storage);
33994 					res_3 = rawNewString(((NI) 80));
33995 					T47_ = NIM_NIL;
33996 					T47_ = rdLoc__cgen_425(a);
33997 					cgFormatValue__cgen_141((&res_3), T47_);
33998 					res_3 = resizeString(res_3, 1);
33999 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
34000 					T48_ = NIM_NIL;
34001 					T48_ = intLiteral__cgen_11471(((NI64) (i)));
34002 					cgFormatValue__cgen_141((&res_3), T48_);
34003 					res_3 = resizeString(res_3, 1);
34004 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
34005 					arr.r = rope__ropes_109(res_3);
34006 					genAssignment__cgen_10369(p, elem, arr, 1);
34007 					i_2 += ((NI) 1);
34008 				} LA37: ;
34009 			}
34010 		}
34011 	}
34012 	goto LA31_;
34013 	LA33_: ;
34014 	{
34015 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA i_3;
34016 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T50_;
34017 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T51_;
34018 		NimStringDesc* res_4;
34019 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
34020 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
34021 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T58_;
34022 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T59_;
34023 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T60_;
34024 		NimStringDesc* res_5;
34025 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T61_;
34026 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T62_;
34027 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
34028 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T64_;
34029 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T65_;
34030 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T66_;
34031 		NimStringDesc* res_6;
34032 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T67_;
34033 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
34034 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T69_;
34035 		tyArray__qTjAvTvKF9anytN1At69aJMQ T70_;
34036 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
34037 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T72_;
34038 		nimZeroMem((void*)(&i_3), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
34039 		T50_ = NIM_NIL;
34040 		T50_ = getSysType__magicsys_60((*(*(*p).module).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
34041 		getTemp__cgen_7343(p, T50_, (&i_3), NIM_FALSE);
34042 		T51_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34043 		T51_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34044 		res_4 = rawNewString(((NI) 80));
34045 		res_4 = resizeString(res_4, 5);
34046 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_175));
34047 		cgFormatValue__cgen_141((&res_4), i_3.r);
34048 		res_4 = resizeString(res_4, 6);
34049 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_176));
34050 		cgFormatValue__cgen_141((&res_4), i_3.r);
34051 		res_4 = resizeString(res_4, 3);
34052 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_177));
34053 		cgFormatValue__cgen_148((&res_4), ((NI64) (L)));
34054 		res_4 = resizeString(res_4, 2);
34055 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
34056 		cgFormatValue__cgen_141((&res_4), i_3.r);
34057 		res_4 = resizeString(res_4, 5);
34058 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_179));
34059 		{
34060 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA54_;
34061 			res_4 = resizeString(res_4, 1);
34062 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34063 		}
34064 		LA54_: ;
34065 		T56_ = NIM_NIL;
34066 		T56_ = rope__ropes_109(res_4);
34067 		T57_ = NIM_NIL;
34068 		T57_ = indentLine__cgen_280(p, T56_);
34069 		add__ropes_159(T51_, T57_);
34070 		T58_ = NIM_NIL;
34071 		T58_ = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
34072 		T59_ = NIM_NIL;
34073 		T59_ = elemType__types_263(T58_);
34074 		T60_ = NIM_NIL;
34075 		T60_ = lodeTyp__cgen_86(T59_);
34076 		initLoc__cgen_60((&elem), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), T60_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
34077 		res_5 = rawNewString(((NI) 80));
34078 		T61_ = NIM_NIL;
34079 		T61_ = rdLoc__cgen_425((*d));
34080 		cgFormatValue__cgen_141((&res_5), T61_);
34081 		T62_ = NIM_NIL;
34082 		T62_ = dataField__cgen_461(p);
34083 		cgFormatValue__cgen_141((&res_5), T62_);
34084 		res_5 = resizeString(res_5, 1);
34085 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
34086 		T63_ = NIM_NIL;
34087 		T63_ = rdLoc__cgen_425(i_3);
34088 		cgFormatValue__cgen_141((&res_5), T63_);
34089 		res_5 = resizeString(res_5, 1);
34090 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
34091 		elem.r = rope__ropes_109(res_5);
34092 		elem.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3);
34093 		T64_ = NIM_NIL;
34094 		T64_ = skipTypes__ast_3735((*(*n)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
34095 		T65_ = NIM_NIL;
34096 		T65_ = elemType__types_263(T64_);
34097 		T66_ = NIM_NIL;
34098 		T66_ = lodeTyp__cgen_86(T65_);
34099 		initLoc__cgen_60((&arr), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), T66_, a.storage);
34100 		res_6 = rawNewString(((NI) 80));
34101 		T67_ = NIM_NIL;
34102 		T67_ = rdLoc__cgen_425(a);
34103 		cgFormatValue__cgen_141((&res_6), T67_);
34104 		res_6 = resizeString(res_6, 1);
34105 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
34106 		T68_ = NIM_NIL;
34107 		T68_ = rdLoc__cgen_425(i_3);
34108 		cgFormatValue__cgen_141((&res_6), T68_);
34109 		res_6 = resizeString(res_6, 1);
34110 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
34111 		arr.r = rope__ropes_109(res_6);
34112 		genAssignment__cgen_10369(p, elem, arr, 1);
34113 		T69_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34114 		T69_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34115 		nimZeroMem((void*)T70_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
34116 		T71_ = NIM_NIL;
34117 		T71_ = percent___cgen_7505(T70_, 0);
34118 		T72_ = NIM_NIL;
34119 		T72_ = indentLine__cgen_280(p, T71_);
34120 		add__ropes_159(T69_, T72_);
34121 	}
34122 	LA31_: ;
34123 	}BeforeRet_: ;
34124 }
N_NIMCALL(void,genDeepCopy__cgen_18498)34125 N_LIB_PRIVATE N_NIMCALL(void, genDeepCopy__cgen_18498)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src) {
34126 	tyObject_TType__facALICuu8zUj0hjvbTLFg* ty;
34127 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
34128 	T1_ = NIM_NIL;
34129 	T1_ = t__cgen_79(dest);
34130 	ty = skipTypes__ast_3735(T1_, TM__MQdRN7fpbG7rPm4JpVVAhA_879);
34131 	switch ((*ty).kind) {
34132 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
34133 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
34134 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25):
34135 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
34136 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17):
34137 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
34138 	{
34139 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T3_;
34140 		NimStringDesc* res;
34141 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
34142 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
34143 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
34144 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T13_;
34145 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
34146 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
34147 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
34148 		T3_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34149 		T3_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34150 		res = rawNewString(((NI) 80));
34151 		T4_ = NIM_NIL;
34152 		T4_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_880));
34153 		cgFormatValue__cgen_141((&res), T4_);
34154 		res = resizeString(res, 8);
34155 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
34156 		T5_ = NIM_NIL;
34157 		T5_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
34158 		cgFormatValue__cgen_141((&res), T5_);
34159 		res = resizeString(res, 9);
34160 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_344));
34161 		T6_ = NIM_NIL;
34162 		{
34163 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmpX60gensym3526_;
34164 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T11_;
34165 			if (!(src.k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6))) goto LA9_;
34166 			nimZeroMem((void*)(&tmpX60gensym3526_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
34167 			T11_ = NIM_NIL;
34168 			T11_ = t__cgen_79(src);
34169 			getTemp__cgen_7343(p, T11_, (&tmpX60gensym3526_), NIM_FALSE);
34170 			genAssignment__cgen_10369(p, tmpX60gensym3526_, src, 0);
34171 			T6_ = addrLoc__cgen_10303((*(*(*p).module).g).config, tmpX60gensym3526_);
34172 		}
34173 		goto LA7_;
34174 		LA9_: ;
34175 		{
34176 			T6_ = addrLoc__cgen_10303((*(*(*p).module).g).config, src);
34177 		}
34178 		LA7_: ;
34179 		cgFormatValue__cgen_141((&res), T6_);
34180 		res = resizeString(res, 2);
34181 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
34182 		T13_ = NIM_NIL;
34183 		T13_ = t__cgen_79(dest);
34184 		T14_ = NIM_NIL;
34185 		T14_ = genTypeInfoV1__cgen_6768((*p).module, T13_, (*dest.lode).info);
34186 		cgFormatValue__cgen_141((&res), T14_);
34187 		res = resizeString(res, 2);
34188 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
34189 		{
34190 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA17_;
34191 			res = resizeString(res, 1);
34192 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34193 		}
34194 		LA17_: ;
34195 		T19_ = NIM_NIL;
34196 		T19_ = rope__ropes_109(res);
34197 		T20_ = NIM_NIL;
34198 		T20_ = indentLine__cgen_280(p, T19_);
34199 		add__ropes_159(T3_, T20_);
34200 	}
34201 	break;
34202 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
34203 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
34204 	{
34205 		{
34206 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T26_;
34207 			NimStringDesc* res_2;
34208 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
34209 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
34210 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
34211 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T36_;
34212 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
34213 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
34214 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
34215 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA24_;
34216 			T26_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34217 			T26_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34218 			res_2 = rawNewString(((NI) 80));
34219 			T27_ = NIM_NIL;
34220 			T27_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_880));
34221 			cgFormatValue__cgen_141((&res_2), T27_);
34222 			res_2 = resizeString(res_2, 8);
34223 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
34224 			T28_ = NIM_NIL;
34225 			T28_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
34226 			cgFormatValue__cgen_141((&res_2), T28_);
34227 			res_2 = resizeString(res_2, 9);
34228 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_344));
34229 			T29_ = NIM_NIL;
34230 			{
34231 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmpX60gensym3540_;
34232 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T34_;
34233 				if (!(src.k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6))) goto LA32_;
34234 				nimZeroMem((void*)(&tmpX60gensym3540_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
34235 				T34_ = NIM_NIL;
34236 				T34_ = t__cgen_79(src);
34237 				getTemp__cgen_7343(p, T34_, (&tmpX60gensym3540_), NIM_FALSE);
34238 				genAssignment__cgen_10369(p, tmpX60gensym3540_, src, 0);
34239 				T29_ = addrLoc__cgen_10303((*(*(*p).module).g).config, tmpX60gensym3540_);
34240 			}
34241 			goto LA30_;
34242 			LA32_: ;
34243 			{
34244 				T29_ = addrLoc__cgen_10303((*(*(*p).module).g).config, src);
34245 			}
34246 			LA30_: ;
34247 			cgFormatValue__cgen_141((&res_2), T29_);
34248 			res_2 = resizeString(res_2, 2);
34249 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
34250 			T36_ = NIM_NIL;
34251 			T36_ = t__cgen_79(dest);
34252 			T37_ = NIM_NIL;
34253 			T37_ = genTypeInfoV1__cgen_6768((*p).module, T36_, (*dest.lode).info);
34254 			cgFormatValue__cgen_141((&res_2), T37_);
34255 			res_2 = resizeString(res_2, 2);
34256 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
34257 			{
34258 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA40_;
34259 				res_2 = resizeString(res_2, 1);
34260 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34261 			}
34262 			LA40_: ;
34263 			T42_ = NIM_NIL;
34264 			T42_ = rope__ropes_109(res_2);
34265 			T43_ = NIM_NIL;
34266 			T43_ = indentLine__cgen_280(p, T42_);
34267 			add__ropes_159(T26_, T43_);
34268 		}
34269 		goto LA22_;
34270 		LA24_: ;
34271 		{
34272 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T45_;
34273 			NimStringDesc* res_3;
34274 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
34275 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
34276 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
34277 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T49_;
34278 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
34279 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T55_;
34280 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
34281 			T45_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34282 			T45_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34283 			res_3 = rawNewString(((NI) 80));
34284 			T46_ = NIM_NIL;
34285 			T46_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_881));
34286 			cgFormatValue__cgen_141((&res_3), T46_);
34287 			res_3 = resizeString(res_3, 1);
34288 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
34289 			T47_ = NIM_NIL;
34290 			T47_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
34291 			cgFormatValue__cgen_141((&res_3), T47_);
34292 			res_3 = resizeString(res_3, 2);
34293 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
34294 			T48_ = NIM_NIL;
34295 			T48_ = rdLoc__cgen_425(src);
34296 			cgFormatValue__cgen_141((&res_3), T48_);
34297 			res_3 = resizeString(res_3, 2);
34298 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
34299 			T49_ = NIM_NIL;
34300 			T49_ = t__cgen_79(dest);
34301 			T50_ = NIM_NIL;
34302 			T50_ = genTypeInfoV1__cgen_6768((*p).module, T49_, (*dest.lode).info);
34303 			cgFormatValue__cgen_141((&res_3), T50_);
34304 			res_3 = resizeString(res_3, 2);
34305 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
34306 			{
34307 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA53_;
34308 				res_3 = resizeString(res_3, 1);
34309 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34310 			}
34311 			LA53_: ;
34312 			T55_ = NIM_NIL;
34313 			T55_ = rope__ropes_109(res_3);
34314 			T56_ = NIM_NIL;
34315 			T56_ = indentLine__cgen_280(p, T55_);
34316 			add__ropes_159(T45_, T56_);
34317 		}
34318 		LA22_: ;
34319 	}
34320 	break;
34321 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
34322 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
34323 	{
34324 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T58_;
34325 		NimStringDesc* res_4;
34326 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
34327 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
34328 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T61_;
34329 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
34330 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T69_;
34331 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
34332 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T75_;
34333 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T76_;
34334 		T58_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34335 		T58_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34336 		res_4 = rawNewString(((NI) 80));
34337 		T59_ = NIM_NIL;
34338 		T59_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_882));
34339 		cgFormatValue__cgen_141((&res_4), T59_);
34340 		res_4 = resizeString(res_4, 8);
34341 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
34342 		T60_ = NIM_NIL;
34343 		T60_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
34344 		cgFormatValue__cgen_141((&res_4), T60_);
34345 		res_4 = resizeString(res_4, 9);
34346 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_344));
34347 		T61_ = NIM_NIL;
34348 		{
34349 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmpX60gensym3561_;
34350 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T66_;
34351 			if (!(src.k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6))) goto LA64_;
34352 			nimZeroMem((void*)(&tmpX60gensym3561_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
34353 			T66_ = NIM_NIL;
34354 			T66_ = t__cgen_79(src);
34355 			getTemp__cgen_7343(p, T66_, (&tmpX60gensym3561_), NIM_FALSE);
34356 			genAssignment__cgen_10369(p, tmpX60gensym3561_, src, 0);
34357 			T61_ = addrLoc__cgen_10303((*(*(*p).module).g).config, tmpX60gensym3561_);
34358 		}
34359 		goto LA62_;
34360 		LA64_: ;
34361 		{
34362 			T61_ = addrLoc__cgen_10303((*(*(*p).module).g).config, src);
34363 		}
34364 		LA62_: ;
34365 		cgFormatValue__cgen_141((&res_4), T61_);
34366 		res_4 = resizeString(res_4, 2);
34367 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
34368 		T68_ = NIM_NIL;
34369 		T68_ = addrLoc__cgen_10303((*(*(*p).module).g).config, dest);
34370 		cgFormatValue__cgen_141((&res_4), T68_);
34371 		res_4 = resizeString(res_4, 7);
34372 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_367));
34373 		T69_ = NIM_NIL;
34374 		T69_ = t__cgen_79(dest);
34375 		T70_ = NIM_NIL;
34376 		T70_ = genTypeInfoV1__cgen_6768((*p).module, T69_, (*dest.lode).info);
34377 		cgFormatValue__cgen_141((&res_4), T70_);
34378 		res_4 = resizeString(res_4, 2);
34379 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
34380 		{
34381 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA73_;
34382 			res_4 = resizeString(res_4, 1);
34383 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34384 		}
34385 		LA73_: ;
34386 		T75_ = NIM_NIL;
34387 		T75_ = rope__ropes_109(res_4);
34388 		T76_ = NIM_NIL;
34389 		T76_ = indentLine__cgen_280(p, T75_);
34390 		add__ropes_159(T58_, T76_);
34391 	}
34392 	break;
34393 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 19):
34394 	{
34395 		{
34396 			tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T80_;
34397 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T83_;
34398 			NimStringDesc* res_5;
34399 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T84_;
34400 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T85_;
34401 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T86_;
34402 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T87_;
34403 			NI64 T88_;
34404 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T93_;
34405 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T94_;
34406 			T80_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
34407 			T80_ = mapSetType__cgen_1205((*(*(*p).module).g).config, ty);
34408 			if (!(T80_ == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17))) goto LA81_;
34409 			T83_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34410 			T83_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34411 			res_5 = rawNewString(((NI) 80));
34412 			T84_ = NIM_NIL;
34413 			T84_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_339));
34414 			cgFormatValue__cgen_141((&res_5), T84_);
34415 			res_5 = resizeString(res_5, 8);
34416 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_108));
34417 			T85_ = NIM_NIL;
34418 			T85_ = rdLoc__cgen_425(dest);
34419 			cgFormatValue__cgen_141((&res_5), T85_);
34420 			res_5 = resizeString(res_5, 19);
34421 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_342));
34422 			T86_ = NIM_NIL;
34423 			T86_ = rdLoc__cgen_425(src);
34424 			cgFormatValue__cgen_141((&res_5), T86_);
34425 			res_5 = resizeString(res_5, 2);
34426 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
34427 			T87_ = NIM_NIL;
34428 			T87_ = t__cgen_79(dest);
34429 			T88_ = (NI64)0;
34430 			T88_ = getSize__types_3327((*(*(*p).module).g).config, T87_);
34431 			cgFormatValue__cgen_148((&res_5), T88_);
34432 			res_5 = resizeString(res_5, 2);
34433 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
34434 			{
34435 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA91_;
34436 				res_5 = resizeString(res_5, 1);
34437 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34438 			}
34439 			LA91_: ;
34440 			T93_ = NIM_NIL;
34441 			T93_ = rope__ropes_109(res_5);
34442 			T94_ = NIM_NIL;
34443 			T94_ = indentLine__cgen_280(p, T93_);
34444 			add__ropes_159(T83_, T94_);
34445 		}
34446 		goto LA78_;
34447 		LA81_: ;
34448 		{
34449 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T96_;
34450 			NimStringDesc* res_6;
34451 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T97_;
34452 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T98_;
34453 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T103_;
34454 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T104_;
34455 			T96_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34456 			T96_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34457 			res_6 = rawNewString(((NI) 80));
34458 			T97_ = NIM_NIL;
34459 			T97_ = rdLoc__cgen_425(dest);
34460 			cgFormatValue__cgen_141((&res_6), T97_);
34461 			res_6 = resizeString(res_6, 3);
34462 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
34463 			T98_ = NIM_NIL;
34464 			T98_ = rdLoc__cgen_425(src);
34465 			cgFormatValue__cgen_141((&res_6), T98_);
34466 			res_6 = resizeString(res_6, 1);
34467 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
34468 			{
34469 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA101_;
34470 				res_6 = resizeString(res_6, 1);
34471 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34472 			}
34473 			LA101_: ;
34474 			T103_ = NIM_NIL;
34475 			T103_ = rope__ropes_109(res_6);
34476 			T104_ = NIM_NIL;
34477 			T104_ = indentLine__cgen_280(p, T103_);
34478 			add__ropes_159(T96_, T104_);
34479 		}
34480 		LA78_: ;
34481 	}
34482 	break;
34483 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 26):
34484 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
34485 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1):
34486 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14):
34487 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
34488 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
34489 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20):
34490 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23):
34491 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47):
34492 	{
34493 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T106_;
34494 		NimStringDesc* res_7;
34495 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T107_;
34496 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T108_;
34497 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T113_;
34498 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T114_;
34499 		T106_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34500 		T106_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34501 		res_7 = rawNewString(((NI) 80));
34502 		T107_ = NIM_NIL;
34503 		T107_ = rdLoc__cgen_425(dest);
34504 		cgFormatValue__cgen_141((&res_7), T107_);
34505 		res_7 = resizeString(res_7, 3);
34506 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
34507 		T108_ = NIM_NIL;
34508 		T108_ = rdLoc__cgen_425(src);
34509 		cgFormatValue__cgen_141((&res_7), T108_);
34510 		res_7 = resizeString(res_7, 1);
34511 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
34512 		{
34513 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA111_;
34514 			res_7 = resizeString(res_7, 1);
34515 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34516 		}
34517 		LA111_: ;
34518 		T113_ = NIM_NIL;
34519 		T113_ = rope__ropes_109(res_7);
34520 		T114_ = NIM_NIL;
34521 		T114_ = indentLine__cgen_280(p, T113_);
34522 		add__ropes_159(T106_, T114_);
34523 	}
34524 	break;
34525 	default:
34526 	{
34527 		NimStringDesc* T116_;
34528 		T116_ = NIM_NIL;
34529 		T116_ = rawNewString((reprEnum((NI)(*ty).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*ty).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 13);
34530 appendString(T116_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_883));
34531 appendString(T116_, reprEnum((NI)(*ty).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
34532 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, T116_, TM__MQdRN7fpbG7rPm4JpVVAhA_884);
34533 	}
34534 	break;
34535 	}
34536 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,skipAddr__cgen_23074)34537 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipAddr__cgen_23074)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
34538 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
34539 	result = NIM_NIL;
34540 	{
34541 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA3_;
34542 		result = (*n)._kind_6.sons->data[((NI) 0)];
34543 	}
34544 	goto LA1_;
34545 	LA3_: ;
34546 	{
34547 		result = n;
34548 	}
34549 	LA1_: ;
34550 	return result;
34551 }
N_NIMCALL(void,genWasMoved__cgen_23082)34552 N_LIB_PRIVATE N_NIMCALL(void, genWasMoved__cgen_23082)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
34553 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
34554 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n1;
34555 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
34556 	n1 = skipAddr__cgen_23074((*n)._kind_6.sons->data[((NI) 1)]);
34557 	{
34558 		NIM_BOOL T3_;
34559 		T3_ = (NIM_BOOL)0;
34560 		T3_ = (((NI) 0) < (*p).withinBlockLeaveActions);
34561 		if (!(T3_)) goto LA4_;
34562 		T3_ = notYetAlive__cgen_13022(n1);
34563 		LA4_: ;
34564 		if (!T3_) goto LA5_;
34565 	}
34566 	goto LA1_;
34567 	LA5_: ;
34568 	{
34569 		initLocExpr__cgen_11483(p, n1, (&a));
34570 		resetLoc__cgen_10832(p, (&a));
34571 	}
34572 	LA1_: ;
34573 }
N_NIMCALL(void,genMove__cgen_23088)34574 N_LIB_PRIVATE N_NIMCALL(void, genMove__cgen_23088)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
34575 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
34576 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T1_;
34577 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
34578 	T1_ = NIM_NIL;
34579 	T1_ = skipAddr__cgen_23074((*n)._kind_6.sons->data[((NI) 1)]);
34580 	initLocExpr__cgen_11483(p, T1_, (&a));
34581 	{
34582 		NI T4_;
34583 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA src;
34584 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T7_;
34585 		NimStringDesc* res;
34586 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
34587 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
34588 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
34589 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
34590 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T12_;
34591 		NimStringDesc* res_2;
34592 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
34593 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
34594 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
34595 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
34596 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
34597 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
34598 		T4_ = (NI)0;
34599 		T4_ = len__ast_3198(n);
34600 		if (!(T4_ == ((NI) 4))) goto LA5_;
34601 		nimZeroMem((void*)(&src), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
34602 		initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 2)], (&src));
34603 		T7_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34604 		T7_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34605 		res = rawNewString(((NI) 80));
34606 		res = resizeString(res, 4);
34607 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
34608 		T8_ = NIM_NIL;
34609 		T8_ = rdLoc__cgen_425(a);
34610 		cgFormatValue__cgen_141((&res), T8_);
34611 		res = resizeString(res, 6);
34612 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_885));
34613 		T9_ = NIM_NIL;
34614 		T9_ = rdLoc__cgen_425(src);
34615 		cgFormatValue__cgen_141((&res), T9_);
34616 		res = resizeString(res, 5);
34617 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_886));
34618 		T10_ = NIM_NIL;
34619 		T10_ = rope__ropes_109(res);
34620 		T11_ = NIM_NIL;
34621 		T11_ = indentLine__cgen_280(p, T10_);
34622 		add__ropes_159(T7_, T11_);
34623 		genStmts__cgen_11457(p, (*n)._kind_6.sons->data[((NI) 3)]);
34624 		T12_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34625 		T12_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34626 		res_2 = rawNewString(((NI) 80));
34627 		res_2 = resizeString(res_2, 1);
34628 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
34629 		{
34630 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA15_;
34631 			res_2 = resizeString(res_2, 1);
34632 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34633 		}
34634 		LA15_: ;
34635 		T17_ = NIM_NIL;
34636 		T17_ = rdLoc__cgen_425(a);
34637 		cgFormatValue__cgen_141((&res_2), T17_);
34638 		res_2 = resizeString(res_2, 7);
34639 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_774));
34640 		T18_ = NIM_NIL;
34641 		T18_ = rdLoc__cgen_425(src);
34642 		cgFormatValue__cgen_141((&res_2), T18_);
34643 		res_2 = resizeString(res_2, 6);
34644 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_887));
34645 		T19_ = NIM_NIL;
34646 		T19_ = rdLoc__cgen_425(a);
34647 		cgFormatValue__cgen_141((&res_2), T19_);
34648 		res_2 = resizeString(res_2, 5);
34649 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_888));
34650 		T20_ = NIM_NIL;
34651 		T20_ = rdLoc__cgen_425(src);
34652 		cgFormatValue__cgen_141((&res_2), T20_);
34653 		res_2 = resizeString(res_2, 3);
34654 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_889));
34655 		{
34656 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA23_;
34657 			res_2 = resizeString(res_2, 1);
34658 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34659 		}
34660 		LA23_: ;
34661 		T25_ = NIM_NIL;
34662 		T25_ = rope__ropes_109(res_2);
34663 		T26_ = NIM_NIL;
34664 		T26_ = indentLine__cgen_280(p, T25_);
34665 		add__ropes_159(T12_, T26_);
34666 	}
34667 	goto LA2_;
34668 	LA5_: ;
34669 	{
34670 		{
34671 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA30_;
34672 			getTemp__cgen_7343(p, (*n).typ, d, NIM_FALSE);
34673 		}
34674 		LA30_: ;
34675 		genAssignment__cgen_10369(p, (*d), a, 0);
34676 		resetLoc__cgen_10832(p, (&a));
34677 	}
34678 	LA2_: ;
34679 }
N_NIMCALL(void,genDestroy__cgen_23130)34680 N_LIB_PRIVATE N_NIMCALL(void, genDestroy__cgen_23130)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
34681 	{
34682 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg;
34683 		tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
34684 		if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA3_;
34685 		arg = skipAddr__cgen_23074((*n)._kind_6.sons->data[((NI) 1)]);
34686 		t = skipTypes__ast_3735((*arg).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
34687 		switch ((*t).kind) {
34688 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
34689 		{
34690 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
34691 			nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
34692 			initLocExpr__cgen_11483(p, arg, (&a));
34693 			{
34694 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
34695 				NimStringDesc* res;
34696 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
34697 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
34698 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
34699 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
34700 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
34701 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
34702 				if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 23))&63U)))!=0)) goto LA8_;
34703 				T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34704 				T10_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34705 				res = rawNewString(((NI) 80));
34706 				res = resizeString(res, 4);
34707 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
34708 				T11_ = NIM_NIL;
34709 				T11_ = rdLoc__cgen_425(a);
34710 				cgFormatValue__cgen_141((&res), T11_);
34711 				res = resizeString(res, 8);
34712 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_890));
34713 				T12_ = NIM_NIL;
34714 				T12_ = rdLoc__cgen_425(a);
34715 				cgFormatValue__cgen_141((&res), T12_);
34716 				res = resizeString(res, 29);
34717 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_891));
34718 				{
34719 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA15_;
34720 					res = resizeString(res, 1);
34721 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34722 				}
34723 				LA15_: ;
34724 				res = resizeString(res, 1);
34725 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
34726 				T17_ = NIM_NIL;
34727 				T17_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_892));
34728 				cgFormatValue__cgen_141((&res), T17_);
34729 				res = resizeString(res, 1);
34730 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
34731 				T18_ = NIM_NIL;
34732 				T18_ = rdLoc__cgen_425(a);
34733 				cgFormatValue__cgen_141((&res), T18_);
34734 				res = resizeString(res, 4);
34735 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_893));
34736 				{
34737 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA21_;
34738 					res = resizeString(res, 1);
34739 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34740 				}
34741 				LA21_: ;
34742 				res = resizeString(res, 1);
34743 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
34744 				{
34745 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA25_;
34746 					res = resizeString(res, 1);
34747 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34748 				}
34749 				LA25_: ;
34750 				T27_ = NIM_NIL;
34751 				T27_ = rope__ropes_109(res);
34752 				T28_ = NIM_NIL;
34753 				T28_ = indentLine__cgen_280(p, T27_);
34754 				add__ropes_159(T10_, T28_);
34755 			}
34756 			goto LA6_;
34757 			LA8_: ;
34758 			{
34759 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T30_;
34760 				NimStringDesc* res_2;
34761 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
34762 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
34763 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
34764 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
34765 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
34766 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
34767 				T30_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34768 				T30_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34769 				res_2 = rawNewString(((NI) 80));
34770 				res_2 = resizeString(res_2, 4);
34771 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
34772 				T31_ = NIM_NIL;
34773 				T31_ = rdLoc__cgen_425(a);
34774 				cgFormatValue__cgen_141((&res_2), T31_);
34775 				res_2 = resizeString(res_2, 8);
34776 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_890));
34777 				T32_ = NIM_NIL;
34778 				T32_ = rdLoc__cgen_425(a);
34779 				cgFormatValue__cgen_141((&res_2), T32_);
34780 				res_2 = resizeString(res_2, 29);
34781 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_891));
34782 				{
34783 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA35_;
34784 					res_2 = resizeString(res_2, 1);
34785 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34786 				}
34787 				LA35_: ;
34788 				res_2 = resizeString(res_2, 1);
34789 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
34790 				T37_ = NIM_NIL;
34791 				T37_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_894));
34792 				cgFormatValue__cgen_141((&res_2), T37_);
34793 				res_2 = resizeString(res_2, 1);
34794 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
34795 				T38_ = NIM_NIL;
34796 				T38_ = rdLoc__cgen_425(a);
34797 				cgFormatValue__cgen_141((&res_2), T38_);
34798 				res_2 = resizeString(res_2, 4);
34799 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_893));
34800 				{
34801 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA41_;
34802 					res_2 = resizeString(res_2, 1);
34803 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34804 				}
34805 				LA41_: ;
34806 				res_2 = resizeString(res_2, 1);
34807 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
34808 				{
34809 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA45_;
34810 					res_2 = resizeString(res_2, 1);
34811 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34812 				}
34813 				LA45_: ;
34814 				T47_ = NIM_NIL;
34815 				T47_ = rope__ropes_109(res_2);
34816 				T48_ = NIM_NIL;
34817 				T48_ = indentLine__cgen_280(p, T47_);
34818 				add__ropes_159(T30_, T48_);
34819 			}
34820 			LA6_: ;
34821 		}
34822 		break;
34823 		case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
34824 		{
34825 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_2;
34826 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T50_;
34827 			NimStringDesc* res_3;
34828 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
34829 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
34830 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
34831 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
34832 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T59_;
34833 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
34834 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
34835 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
34836 			nimZeroMem((void*)(&a_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
34837 			initLocExpr__cgen_11483(p, arg, (&a_2));
34838 			T50_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34839 			T50_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34840 			res_3 = rawNewString(((NI) 80));
34841 			res_3 = resizeString(res_3, 4);
34842 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
34843 			T51_ = NIM_NIL;
34844 			T51_ = rdLoc__cgen_425(a_2);
34845 			cgFormatValue__cgen_141((&res_3), T51_);
34846 			res_3 = resizeString(res_3, 8);
34847 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_890));
34848 			T52_ = NIM_NIL;
34849 			T52_ = rdLoc__cgen_425(a_2);
34850 			cgFormatValue__cgen_141((&res_3), T52_);
34851 			res_3 = resizeString(res_3, 29);
34852 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_891));
34853 			{
34854 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA55_;
34855 				res_3 = resizeString(res_3, 1);
34856 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34857 			}
34858 			LA55_: ;
34859 			res_3 = resizeString(res_3, 1);
34860 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
34861 			T57_ = NIM_NIL;
34862 			T57_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_895));
34863 			cgFormatValue__cgen_141((&res_3), T57_);
34864 			res_3 = resizeString(res_3, 1);
34865 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
34866 			T58_ = NIM_NIL;
34867 			T58_ = rdLoc__cgen_425(a_2);
34868 			cgFormatValue__cgen_141((&res_3), T58_);
34869 			res_3 = resizeString(res_3, 16);
34870 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_896));
34871 			T59_ = NIM_NIL;
34872 			T59_ = lastSon__ast_3743(t);
34873 			T60_ = NIM_NIL;
34874 			T60_ = getTypeDesc__cgen_6631((*p).module, T59_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
34875 			cgFormatValue__cgen_141((&res_3), T60_);
34876 			res_3 = resizeString(res_3, 3);
34877 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
34878 			{
34879 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA63_;
34880 				res_3 = resizeString(res_3, 1);
34881 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34882 			}
34883 			LA63_: ;
34884 			res_3 = resizeString(res_3, 1);
34885 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
34886 			{
34887 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA67_;
34888 				res_3 = resizeString(res_3, 1);
34889 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34890 			}
34891 			LA67_: ;
34892 			T69_ = NIM_NIL;
34893 			T69_ = rope__ropes_109(res_3);
34894 			T70_ = NIM_NIL;
34895 			T70_ = indentLine__cgen_280(p, T69_);
34896 			add__ropes_159(T50_, T70_);
34897 		}
34898 		break;
34899 		default:
34900 		{
34901 		}
34902 		break;
34903 		}
34904 	}
34905 	goto LA1_;
34906 	LA3_: ;
34907 	{
34908 		tyObject_TType__facALICuu8zUj0hjvbTLFg* t_2;
34909 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* op;
34910 		t_2 = skipTypes__ast_3735((*(*n)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_357);
34911 		op = getAttachedOp__modulegraphs_4011((*(*(*p).module).g).graph, t_2, ((tyEnum_TTypeAttachedOp__Rp5P9bWYldQTLkZ7DytmxOg) 0));
34912 		{
34913 			NIM_BOOL T75_;
34914 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T77_;
34915 			NI T78_;
34916 			T75_ = (NIM_BOOL)0;
34917 			T75_ = !((op == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
34918 			if (!(T75_)) goto LA76_;
34919 			T77_ = NIM_NIL;
34920 			T77_ = getBody__modulegraphs_11241((*(*(*p).module).g).graph, op);
34921 			T78_ = (NI)0;
34922 			T78_ = len__ast_3198(T77_);
34923 			T75_ = !((T78_ == ((NI) 0)));
34924 			LA76_: ;
34925 			if (!T75_) goto LA79_;
34926 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_897), TM__MQdRN7fpbG7rPm4JpVVAhA_898);
34927 		}
34928 		LA79_: ;
34929 	}
34930 	LA1_: ;
34931 }
N_NIMCALL(void,genAccessTypeField__cgen_21652)34932 N_LIB_PRIVATE N_NIMCALL(void, genAccessTypeField__cgen_21652)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
34933 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
34934 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* nilCheck;
34935 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
34936 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
34937 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
34938 	nilCheck = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
34939 	T1_ = NIM_NIL;
34940 	T1_ = rdMType__cgen_21580(p, a, &nilCheck, NIM_FALSE);
34941 	putIntoDest__cgen_18656(p, d, e, T1_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
34942 }
N_NIMCALL(void,genSlice__cgen_23225)34943 N_LIB_PRIVATE N_NIMCALL(void, genSlice__cgen_23225)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
34944 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
34945 	tyTuple__nsNHL3sm0TZE9bootw2pEXw T2_;
34946 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* x;
34947 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* y;
34948 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T7_;
34949 	NimStringDesc* res;
34950 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
34951 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
34952 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
34953 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
34954 	T1_ = NIM_NIL;
34955 	T1_ = lastSon__ast_3743((*e).typ);
34956 	nimZeroMem((void*)(&T2_), sizeof(tyTuple__nsNHL3sm0TZE9bootw2pEXw));
34957 	genOpenArraySlice__cgen_11755(p, e, (*e).typ, T1_, (&T2_));
34958 	x = NIM_NIL;
34959 	x = T2_.Field0;
34960 	y = NIM_NIL;
34961 	y = T2_.Field1;
34962 	{
34963 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA5_;
34964 		getTemp__cgen_7343(p, (*e).typ, d, NIM_FALSE);
34965 	}
34966 	LA5_: ;
34967 	T7_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
34968 	T7_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
34969 	res = rawNewString(((NI) 80));
34970 	T8_ = NIM_NIL;
34971 	T8_ = rdLoc__cgen_425((*d));
34972 	cgFormatValue__cgen_141((&res), T8_);
34973 	res = resizeString(res, 10);
34974 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_358));
34975 	cgFormatValue__cgen_141((&res), x);
34976 	res = resizeString(res, 2);
34977 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
34978 	T9_ = NIM_NIL;
34979 	T9_ = rdLoc__cgen_425((*d));
34980 	cgFormatValue__cgen_141((&res), T9_);
34981 	res = resizeString(res, 10);
34982 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_360));
34983 	cgFormatValue__cgen_141((&res), y);
34984 	res = resizeString(res, 1);
34985 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
34986 	{
34987 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA12_;
34988 		res = resizeString(res, 1);
34989 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
34990 	}
34991 	LA12_: ;
34992 	T14_ = NIM_NIL;
34993 	T14_ = rope__ropes_109(res);
34994 	T15_ = NIM_NIL;
34995 	T15_ = indentLine__cgen_280(p, T14_);
34996 	add__ropes_159(T7_, T15_);
34997 }
N_NIMCALL(void,genMagicExpr__cgen_23264)34998 N_LIB_PRIVATE N_NIMCALL(void, genMagicExpr__cgen_23264)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg op) {
34999 	switch (op) {
35000 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 110):
35001 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 109):
35002 	{
35003 		genAndOr__cgen_20229(p, e, d, op);
35004 	}
35005 	break;
35006 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 96) ... ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 100):
35007 	{
35008 		unaryArith__cgen_19239(p, e, d, op);
35009 	}
35010 	break;
35011 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 93) ... ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 95):
35012 	{
35013 		unaryArithOverflow__cgen_18897(p, e, d, op);
35014 	}
35015 	break;
35016 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 53) ... ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 56):
35017 	{
35018 		binaryFloatArith__cgen_22977(p, e, d, op);
35019 	}
35020 	break;
35021 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 57) ... ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 90):
35022 	{
35023 		binaryArith__cgen_18951(p, e, d, op);
35024 	}
35025 	break;
35026 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 92):
35027 	{
35028 		genEqProc__cgen_19164(p, e, d);
35029 	}
35030 	break;
35031 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 46) ... ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 52):
35032 	{
35033 		binaryArithOverflow__cgen_18764(p, e, d, op);
35034 	}
35035 	break;
35036 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 135):
35037 	{
35038 		genRepr__cgen_21464(p, e, d);
35039 	}
35040 	break;
35041 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 261):
35042 	{
35043 		genGetTypeInfo__cgen_21636(p, e, d);
35044 	}
35045 	break;
35046 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 262):
35047 	{
35048 		genGetTypeInfoV2__cgen_21642(p, e, d);
35049 	}
35050 	break;
35051 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 142):
35052 	{
35053 		genSwap__cgen_21943(p, e, d);
35054 	}
35055 	break;
35056 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 29):
35057 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 30):
35058 	{
35059 		tyObject_TType__facALICuu8zUj0hjvbTLFg* underlying;
35060 		underlying = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_719);
35061 		{
35062 			NIM_BOOL T15_;
35063 			T15_ = (NIM_BOOL)0;
35064 			T15_ = !((((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 5))&31U)))!=0));
35065 			if (T15_) goto LA16_;
35066 			T15_ = ((*underlying).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) && (*underlying).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44));
35067 			LA16_: ;
35068 			if (!T15_) goto LA17_;
35069 			binaryStmt__cgen_18671(p, e, d, opr__cgen_23269[(op)- 29]);
35070 		}
35071 		goto LA13_;
35072 		LA17_: ;
35073 		{
35074 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
35075 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
35076 			tyObject_TType__facALICuu8zUj0hjvbTLFg* ranged;
35077 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* res;
35078 			NI64 sizeX60gensym5277_;
35079 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* storageX60gensym5277_;
35080 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* resultX60gensym5277_;
35081 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T25_;
35082 			NimStringDesc* res_2;
35083 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
35084 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
35085 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T32_;
35086 			NimStringDesc* res_3;
35087 			NimStringDesc* T33_;
35088 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
35089 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
35090 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
35091 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
35092 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
35093 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
35094 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
35095 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T69_;
35096 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
35097 			nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35098 			nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35099 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a));
35100 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b));
35101 			ranged = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_724);
35102 			sizeX60gensym5277_ = getSize__types_3327((*(*(*p).module).g).config, ranged);
35103 			{
35104 				if (!(sizeX60gensym5277_ < ((NI64) ((*(*(*(*p).module).g).config).target.intSize)))) goto LA22_;
35105 				storageX60gensym5277_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_454));
35106 			}
35107 			goto LA20_;
35108 			LA22_: ;
35109 			{
35110 				storageX60gensym5277_ = getTypeDesc__cgen_6631((*p).module, ranged, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
35111 			}
35112 			LA20_: ;
35113 			resultX60gensym5277_ = getTempName__cgen_418((*p).module);
35114 			T25_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
35115 			T25_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
35116 			res_2 = rawNewString(((NI) 80));
35117 			cgFormatValue__cgen_141((&res_2), storageX60gensym5277_);
35118 			res_2 = resizeString(res_2, 1);
35119 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
35120 			cgFormatValue__cgen_141((&res_2), resultX60gensym5277_);
35121 			res_2 = resizeString(res_2, 1);
35122 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
35123 			{
35124 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA28_;
35125 				res_2 = resizeString(res_2, 1);
35126 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
35127 			}
35128 			LA28_: ;
35129 			T30_ = NIM_NIL;
35130 			T30_ = rope__ropes_109(res_2);
35131 			T31_ = NIM_NIL;
35132 			T31_ = indentLine__cgen_280(p, T30_);
35133 			add__ropes_159(T25_, T31_);
35134 			T32_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
35135 			T32_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
35136 			res_3 = rawNewString(((NI) 80));
35137 			res_3 = resizeString(res_3, 4);
35138 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
35139 			T33_ = NIM_NIL;
35140 			{
35141 				if (!((*underlying).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35))) goto LA36_;
35142 				T33_ = copyString(fun64__cgen_23270[(op)- 29]);
35143 			}
35144 			goto LA34_;
35145 			LA36_: ;
35146 			{
35147 				T33_ = copyString(fun__cgen_23271[(op)- 29]);
35148 			}
35149 			LA34_: ;
35150 			T39_ = NIM_NIL;
35151 			T39_ = cgsym__cgen_120((*p).module, T33_);
35152 			cgFormatValue__cgen_141((&res_3), T39_);
35153 			res_3 = resizeString(res_3, 1);
35154 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35155 			T40_ = NIM_NIL;
35156 			T40_ = rdCharLoc__cgen_10343(a);
35157 			cgFormatValue__cgen_141((&res_3), T40_);
35158 			res_3 = resizeString(res_3, 2);
35159 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
35160 			T41_ = NIM_NIL;
35161 			T41_ = rdCharLoc__cgen_10343(b);
35162 			cgFormatValue__cgen_141((&res_3), T41_);
35163 			res_3 = resizeString(res_3, 3);
35164 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_695));
35165 			cgFormatValue__cgen_141((&res_3), resultX60gensym5277_);
35166 			res_3 = resizeString(res_3, 5);
35167 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_696));
35168 			T42_ = NIM_NIL;
35169 			T42_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_641));
35170 			cgFormatValue__cgen_141((&res_3), T42_);
35171 			res_3 = resizeString(res_3, 4);
35172 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
35173 			T43_ = NIM_NIL;
35174 			T43_ = raiseInstr__cgen_414(p);
35175 			cgFormatValue__cgen_141((&res_3), T43_);
35176 			res_3 = resizeString(res_3, 2);
35177 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_309));
35178 			{
35179 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA46_;
35180 				res_3 = resizeString(res_3, 1);
35181 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
35182 			}
35183 			LA46_: ;
35184 			T48_ = NIM_NIL;
35185 			T48_ = rope__ropes_109(res_3);
35186 			T49_ = NIM_NIL;
35187 			T49_ = indentLine__cgen_280(p, T48_);
35188 			add__ropes_159(T32_, T49_);
35189 			{
35190 				NIM_BOOL T52_;
35191 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T56_;
35192 				NimStringDesc* res_4;
35193 				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T57_;
35194 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
35195 				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T59_;
35196 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
35197 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T61_;
35198 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T62_;
35199 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T67_;
35200 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
35201 				T52_ = (NIM_BOOL)0;
35202 				T52_ = (sizeX60gensym5277_ < ((NI64) ((*(*(*(*p).module).g).config).target.intSize)));
35203 				if (T52_) goto LA53_;
35204 				T52_ = ((*ranged).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 20) || (*ranged).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14));
35205 				LA53_: ;
35206 				if (!T52_) goto LA54_;
35207 				T56_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
35208 				T56_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
35209 				res_4 = rawNewString(((NI) 80));
35210 				res_4 = resizeString(res_4, 4);
35211 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
35212 				cgFormatValue__cgen_141((&res_4), resultX60gensym5277_);
35213 				res_4 = resizeString(res_4, 3);
35214 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_177));
35215 				T57_ = firstOrd__types_1353((*(*(*p).module).g).config, ranged);
35216 				T58_ = NIM_NIL;
35217 				T58_ = intLiteral__cgen_17635(T57_);
35218 				cgFormatValue__cgen_141((&res_4), T58_);
35219 				res_4 = resizeString(res_4, 4);
35220 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_578));
35221 				cgFormatValue__cgen_141((&res_4), resultX60gensym5277_);
35222 				res_4 = resizeString(res_4, 3);
35223 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_579));
35224 				T59_ = lastOrd__types_1465((*(*(*p).module).g).config, ranged);
35225 				T60_ = NIM_NIL;
35226 				T60_ = intLiteral__cgen_17635(T59_);
35227 				cgFormatValue__cgen_141((&res_4), T60_);
35228 				res_4 = resizeString(res_4, 3);
35229 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_640));
35230 				T61_ = NIM_NIL;
35231 				T61_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_641));
35232 				cgFormatValue__cgen_141((&res_4), T61_);
35233 				res_4 = resizeString(res_4, 4);
35234 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
35235 				T62_ = NIM_NIL;
35236 				T62_ = raiseInstr__cgen_414(p);
35237 				cgFormatValue__cgen_141((&res_4), T62_);
35238 				res_4 = resizeString(res_4, 1);
35239 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
35240 				{
35241 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA65_;
35242 					res_4 = resizeString(res_4, 1);
35243 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
35244 				}
35245 				LA65_: ;
35246 				T67_ = NIM_NIL;
35247 				T67_ = rope__ropes_109(res_4);
35248 				T68_ = NIM_NIL;
35249 				T68_ = indentLine__cgen_280(p, T67_);
35250 				add__ropes_159(T56_, T68_);
35251 			}
35252 			LA54_: ;
35253 			res = resultX60gensym5277_;
35254 			nimZeroMem((void*)T69_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
35255 			T69_[0] = getTypeDesc__cgen_6631((*p).module, ranged, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
35256 			T69_[1] = res;
35257 			T70_ = NIM_NIL;
35258 			T70_ = percent___cgen_18874(T69_, 2);
35259 			putIntoDest__cgen_18656(p, (&a), (*e)._kind_6.sons->data[((NI) 1)], T70_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
35260 		}
35261 		LA13_: ;
35262 	}
35263 	break;
35264 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 125):
35265 	{
35266 		genStrConcat__cgen_20377(p, e, d);
35267 	}
35268 	break;
35269 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 131):
35270 	{
35271 		{
35272 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA75_;
35273 			binaryStmtAddr__cgen_18697(p, e, d, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_731));
35274 		}
35275 		goto LA73_;
35276 		LA75_: ;
35277 		{
35278 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA dest;
35279 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b_2;
35280 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA call;
35281 			NimStringDesc* res_5;
35282 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T78_;
35283 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T79_;
35284 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T80_;
35285 			nimZeroMem((void*)(&dest), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35286 			nimZeroMem((void*)(&b_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35287 			nimZeroMem((void*)(&call), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35288 			initLoc__cgen_60((&call), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 9), e, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3));
35289 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&dest));
35290 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b_2));
35291 			res_5 = rawNewString(((NI) 80));
35292 			T78_ = NIM_NIL;
35293 			T78_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_732));
35294 			cgFormatValue__cgen_141((&res_5), T78_);
35295 			res_5 = resizeString(res_5, 1);
35296 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35297 			T79_ = NIM_NIL;
35298 			T79_ = rdLoc__cgen_425(dest);
35299 			cgFormatValue__cgen_141((&res_5), T79_);
35300 			res_5 = resizeString(res_5, 2);
35301 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
35302 			T80_ = NIM_NIL;
35303 			T80_ = rdLoc__cgen_425(b_2);
35304 			cgFormatValue__cgen_141((&res_5), T80_);
35305 			res_5 = resizeString(res_5, 1);
35306 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
35307 			call.r = rope__ropes_109(res_5);
35308 			genAssignment__cgen_10369(p, dest, call, 0);
35309 		}
35310 		LA73_: ;
35311 	}
35312 	break;
35313 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 132):
35314 	{
35315 		genStrAppend__cgen_20457(p, e, d);
35316 	}
35317 	break;
35318 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 133):
35319 	{
35320 		{
35321 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA85_;
35322 			asgnRef((void**) (&(*e)._kind_6.sons->data[((NI) 1)]), makeAddr__cgen_21851((*e)._kind_6.sons->data[((NI) 1)], (*(*p).module).Sup.idgen));
35323 			genCall__cgen_13078(p, e, d);
35324 		}
35325 		goto LA83_;
35326 		LA85_: ;
35327 		{
35328 			genSeqElemAppend__cgen_20555(p, e, d);
35329 		}
35330 		LA83_: ;
35331 	}
35332 	break;
35333 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 116):
35334 	{
35335 		genStrEquals__cgen_22909(p, e, d);
35336 	}
35337 	break;
35338 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 117):
35339 	{
35340 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5321_;
35341 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym5321_;
35342 		NimStringDesc* res_6;
35343 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T90_;
35344 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T91_;
35345 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T92_;
35346 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T93_;
35347 		nimZeroMem((void*)(&aX60gensym5321_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35348 		nimZeroMem((void*)(&bX60gensym5321_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35349 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5321_));
35350 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym5321_));
35351 		res_6 = rawNewString(((NI) 80));
35352 		res_6 = resizeString(res_6, 1);
35353 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35354 		T90_ = NIM_NIL;
35355 		T90_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_742));
35356 		cgFormatValue__cgen_141((&res_6), T90_);
35357 		res_6 = resizeString(res_6, 1);
35358 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35359 		T91_ = NIM_NIL;
35360 		T91_ = rdLoc__cgen_425(aX60gensym5321_);
35361 		cgFormatValue__cgen_141((&res_6), T91_);
35362 		res_6 = resizeString(res_6, 2);
35363 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
35364 		T92_ = NIM_NIL;
35365 		T92_ = rdLoc__cgen_425(bX60gensym5321_);
35366 		cgFormatValue__cgen_141((&res_6), T92_);
35367 		res_6 = resizeString(res_6, 7);
35368 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_743));
35369 		T93_ = NIM_NIL;
35370 		T93_ = rope__ropes_109(res_6);
35371 		putIntoDest__cgen_18656(p, d, e, T93_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
35372 	}
35373 	break;
35374 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 118):
35375 	{
35376 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5336_;
35377 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA bX60gensym5336_;
35378 		NimStringDesc* res_7;
35379 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T95_;
35380 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T96_;
35381 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T97_;
35382 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T98_;
35383 		nimZeroMem((void*)(&aX60gensym5336_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35384 		nimZeroMem((void*)(&bX60gensym5336_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35385 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5336_));
35386 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&bX60gensym5336_));
35387 		res_7 = rawNewString(((NI) 80));
35388 		res_7 = resizeString(res_7, 1);
35389 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35390 		T95_ = NIM_NIL;
35391 		T95_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_742));
35392 		cgFormatValue__cgen_141((&res_7), T95_);
35393 		res_7 = resizeString(res_7, 1);
35394 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35395 		T96_ = NIM_NIL;
35396 		T96_ = rdLoc__cgen_425(aX60gensym5336_);
35397 		cgFormatValue__cgen_141((&res_7), T96_);
35398 		res_7 = resizeString(res_7, 2);
35399 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
35400 		T97_ = NIM_NIL;
35401 		T97_ = rdLoc__cgen_425(bX60gensym5336_);
35402 		cgFormatValue__cgen_141((&res_7), T97_);
35403 		res_7 = resizeString(res_7, 6);
35404 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_744));
35405 		T98_ = NIM_NIL;
35406 		T98_ = rope__ropes_109(res_7);
35407 		putIntoDest__cgen_18656(p, d, e, T98_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
35408 	}
35409 	break;
35410 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 143):
35411 	{
35412 		genIsNil__cgen_19201(p, e, d);
35413 	}
35414 	break;
35415 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 103):
35416 	{
35417 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5351_;
35418 		NimStringDesc* res_8;
35419 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T101_;
35420 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T102_;
35421 		nimZeroMem((void*)(&aX60gensym5351_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35422 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5351_));
35423 		res_8 = rawNewString(((NI) 80));
35424 		T101_ = NIM_NIL;
35425 		T101_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_746));
35426 		cgFormatValue__cgen_141((&res_8), T101_);
35427 		res_8 = resizeString(res_8, 1);
35428 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35429 		T102_ = NIM_NIL;
35430 		T102_ = rdLoc__cgen_425(aX60gensym5351_);
35431 		cgFormatValue__cgen_141((&res_8), T102_);
35432 		res_8 = resizeString(res_8, 1);
35433 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
35434 		aX60gensym5351_.r = rope__ropes_109(res_8);
35435 		aX60gensym5351_.flags &= ~(((NU16)1) << ((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15));
35436 		{
35437 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA105_;
35438 			getTemp__cgen_7343(p, (*e).typ, d, NIM_FALSE);
35439 		}
35440 		LA105_: ;
35441 		genAssignment__cgen_10369(p, (*d), aX60gensym5351_, 0);
35442 		gcUsage__cgen_20362((*(*(*p).module).g).config, e);
35443 	}
35444 	break;
35445 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 104):
35446 	{
35447 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5358_;
35448 		NimStringDesc* res_9;
35449 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T108_;
35450 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T109_;
35451 		nimZeroMem((void*)(&aX60gensym5358_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35452 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5358_));
35453 		res_9 = rawNewString(((NI) 80));
35454 		T108_ = NIM_NIL;
35455 		T108_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_747));
35456 		cgFormatValue__cgen_141((&res_9), T108_);
35457 		res_9 = resizeString(res_9, 1);
35458 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35459 		T109_ = NIM_NIL;
35460 		T109_ = rdLoc__cgen_425(aX60gensym5358_);
35461 		cgFormatValue__cgen_141((&res_9), T109_);
35462 		res_9 = resizeString(res_9, 1);
35463 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
35464 		aX60gensym5358_.r = rope__ropes_109(res_9);
35465 		aX60gensym5358_.flags &= ~(((NU16)1) << ((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15));
35466 		{
35467 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA112_;
35468 			getTemp__cgen_7343(p, (*e).typ, d, NIM_FALSE);
35469 		}
35470 		LA112_: ;
35471 		genAssignment__cgen_10369(p, (*d), aX60gensym5358_, 0);
35472 		gcUsage__cgen_20362((*(*(*p).module).g).config, e);
35473 	}
35474 	break;
35475 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 102):
35476 	{
35477 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5365_;
35478 		NimStringDesc* res_10;
35479 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T115_;
35480 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T116_;
35481 		nimZeroMem((void*)(&aX60gensym5365_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35482 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5365_));
35483 		res_10 = rawNewString(((NI) 80));
35484 		T115_ = NIM_NIL;
35485 		T115_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_748));
35486 		cgFormatValue__cgen_141((&res_10), T115_);
35487 		res_10 = resizeString(res_10, 1);
35488 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35489 		T116_ = NIM_NIL;
35490 		T116_ = rdLoc__cgen_425(aX60gensym5365_);
35491 		cgFormatValue__cgen_141((&res_10), T116_);
35492 		res_10 = resizeString(res_10, 1);
35493 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
35494 		aX60gensym5365_.r = rope__ropes_109(res_10);
35495 		aX60gensym5365_.flags &= ~(((NU16)1) << ((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15));
35496 		{
35497 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA119_;
35498 			getTemp__cgen_7343(p, (*e).typ, d, NIM_FALSE);
35499 		}
35500 		LA119_: ;
35501 		genAssignment__cgen_10369(p, (*d), aX60gensym5365_, 0);
35502 		gcUsage__cgen_20362((*(*(*p).module).g).config, e);
35503 	}
35504 	break;
35505 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 101):
35506 	{
35507 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5372_;
35508 		NimStringDesc* res_11;
35509 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T122_;
35510 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T123_;
35511 		nimZeroMem((void*)(&aX60gensym5372_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35512 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5372_));
35513 		res_11 = rawNewString(((NI) 80));
35514 		T122_ = NIM_NIL;
35515 		T122_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_749));
35516 		cgFormatValue__cgen_141((&res_11), T122_);
35517 		res_11 = resizeString(res_11, 1);
35518 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35519 		T123_ = NIM_NIL;
35520 		T123_ = rdLoc__cgen_425(aX60gensym5372_);
35521 		cgFormatValue__cgen_141((&res_11), T123_);
35522 		res_11 = resizeString(res_11, 1);
35523 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
35524 		aX60gensym5372_.r = rope__ropes_109(res_11);
35525 		aX60gensym5372_.flags &= ~(((NU16)1) << ((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15));
35526 		{
35527 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA126_;
35528 			getTemp__cgen_7343(p, (*e).typ, d, NIM_FALSE);
35529 		}
35530 		LA126_: ;
35531 		genAssignment__cgen_10369(p, (*d), aX60gensym5372_, 0);
35532 		gcUsage__cgen_20362((*(*(*p).module).g).config, e);
35533 	}
35534 	break;
35535 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 105):
35536 	{
35537 		{
35538 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T131_;
35539 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5380_;
35540 			NimStringDesc* res_12;
35541 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T134_;
35542 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T135_;
35543 			T131_ = NIM_NIL;
35544 			T131_ = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
35545 			if (!((*T131_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 37))) goto LA132_;
35546 			nimZeroMem((void*)(&aX60gensym5380_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35547 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5380_));
35548 			res_12 = rawNewString(((NI) 80));
35549 			T134_ = NIM_NIL;
35550 			T134_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_750));
35551 			cgFormatValue__cgen_141((&res_12), T134_);
35552 			res_12 = resizeString(res_12, 1);
35553 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35554 			T135_ = NIM_NIL;
35555 			T135_ = rdLoc__cgen_425(aX60gensym5380_);
35556 			cgFormatValue__cgen_141((&res_12), T135_);
35557 			res_12 = resizeString(res_12, 1);
35558 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
35559 			aX60gensym5380_.r = rope__ropes_109(res_12);
35560 			aX60gensym5380_.flags &= ~(((NU16)1) << ((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15));
35561 			{
35562 				if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA138_;
35563 				getTemp__cgen_7343(p, (*e).typ, d, NIM_FALSE);
35564 			}
35565 			LA138_: ;
35566 			genAssignment__cgen_10369(p, (*d), aX60gensym5380_, 0);
35567 			gcUsage__cgen_20362((*(*(*p).module).g).config, e);
35568 		}
35569 		goto LA129_;
35570 		LA132_: ;
35571 		{
35572 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5387_;
35573 			NimStringDesc* res_13;
35574 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T141_;
35575 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T142_;
35576 			nimZeroMem((void*)(&aX60gensym5387_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35577 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5387_));
35578 			res_13 = rawNewString(((NI) 80));
35579 			T141_ = NIM_NIL;
35580 			T141_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_751));
35581 			cgFormatValue__cgen_141((&res_13), T141_);
35582 			res_13 = resizeString(res_13, 1);
35583 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35584 			T142_ = NIM_NIL;
35585 			T142_ = rdLoc__cgen_425(aX60gensym5387_);
35586 			cgFormatValue__cgen_141((&res_13), T142_);
35587 			res_13 = resizeString(res_13, 1);
35588 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
35589 			aX60gensym5387_.r = rope__ropes_109(res_13);
35590 			aX60gensym5387_.flags &= ~(((NU16)1) << ((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15));
35591 			{
35592 				if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA145_;
35593 				getTemp__cgen_7343(p, (*e).typ, d, NIM_FALSE);
35594 			}
35595 			LA145_: ;
35596 			genAssignment__cgen_10369(p, (*d), aX60gensym5387_, 0);
35597 			gcUsage__cgen_20362((*(*(*p).module).g).config, e);
35598 		}
35599 		LA129_: ;
35600 	}
35601 	break;
35602 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 106):
35603 	{
35604 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5394_;
35605 		NimStringDesc* res_14;
35606 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T148_;
35607 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T149_;
35608 		nimZeroMem((void*)(&aX60gensym5394_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35609 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5394_));
35610 		res_14 = rawNewString(((NI) 80));
35611 		T148_ = NIM_NIL;
35612 		T148_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_752));
35613 		cgFormatValue__cgen_141((&res_14), T148_);
35614 		res_14 = resizeString(res_14, 1);
35615 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35616 		T149_ = NIM_NIL;
35617 		T149_ = rdLoc__cgen_425(aX60gensym5394_);
35618 		cgFormatValue__cgen_141((&res_14), T149_);
35619 		res_14 = resizeString(res_14, 1);
35620 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
35621 		aX60gensym5394_.r = rope__ropes_109(res_14);
35622 		aX60gensym5394_.flags &= ~(((NU16)1) << ((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 0)) & 15));
35623 		{
35624 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA152_;
35625 			getTemp__cgen_7343(p, (*e).typ, d, NIM_FALSE);
35626 		}
35627 		LA152_: ;
35628 		genAssignment__cgen_10369(p, (*d), aX60gensym5394_, 0);
35629 		gcUsage__cgen_20362((*(*(*p).module).g).config, e);
35630 	}
35631 	break;
35632 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 107):
35633 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 153):
35634 	{
35635 		expr__cgen_11460(p, (*e)._kind_6.sons->data[((NI) 1)], d);
35636 	}
35637 	break;
35638 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 155):
35639 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 154):
35640 	{
35641 		genCall__cgen_13078(p, e, d);
35642 	}
35643 	break;
35644 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 108):
35645 	{
35646 		{
35647 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA159_;
35648 			genEnumToStr__cgen_23251(p, e, d);
35649 		}
35650 		goto LA157_;
35651 		LA159_: ;
35652 		{
35653 			genRepr__cgen_21464(p, e, d);
35654 		}
35655 		LA157_: ;
35656 	}
35657 	break;
35658 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 15):
35659 	{
35660 		genOf__cgen_21458(p, e, d);
35661 	}
35662 	break;
35663 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 32):
35664 	{
35665 		genNew__cgen_20791(p, e);
35666 	}
35667 	break;
35668 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 33):
35669 	{
35670 		{
35671 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_2;
35672 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA167_;
35673 			nimZeroMem((void*)(&a_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35674 			initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&a_2));
35675 			rawGenNew__cgen_20634(p, (&a_2), ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL), NIM_TRUE);
35676 			gcUsage__cgen_20362((*(*(*p).module).g).config, e);
35677 		}
35678 		goto LA165_;
35679 		LA167_: ;
35680 		{
35681 			genNewFinalize__cgen_21280(p, e);
35682 		}
35683 		LA165_: ;
35684 	}
35685 	break;
35686 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 34):
35687 	{
35688 		{
35689 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0)) goto LA173_;
35690 			asgnRef((void**) (&(*e)._kind_6.sons->data[((NI) 1)]), makeAddr__cgen_21851((*e)._kind_6.sons->data[((NI) 1)], (*(*p).module).Sup.idgen));
35691 			genCall__cgen_13078(p, e, d);
35692 		}
35693 		goto LA171_;
35694 		LA173_: ;
35695 		{
35696 			genNewSeq__cgen_20895(p, e);
35697 		}
35698 		LA171_: ;
35699 	}
35700 	break;
35701 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 35):
35702 	{
35703 		genNewSeqOfCap__cgen_20934(p, e, d);
35704 	}
35705 	break;
35706 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 10):
35707 	{
35708 		tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
35709 		tyArray__JiWwrsTRC6xqNlGcBthSVA T178_;
35710 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T179_;
35711 		t = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_781);
35712 		nimZeroMem((void*)T178_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
35713 		T178_[0] = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
35714 		T179_ = NIM_NIL;
35715 		T179_ = percent___cgen_23613(T178_, 1);
35716 		putIntoDest__cgen_18656(p, d, e, T179_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
35717 	}
35718 	break;
35719 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 11):
35720 	{
35721 		tyObject_TType__facALICuu8zUj0hjvbTLFg* t_2;
35722 		tyArray__JiWwrsTRC6xqNlGcBthSVA T181_;
35723 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T182_;
35724 		t_2 = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_781);
35725 		nimZeroMem((void*)T181_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
35726 		T181_[0] = getTypeDesc__cgen_6631((*p).module, t_2, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
35727 		T182_ = NIM_NIL;
35728 		T182_ = percent___cgen_23620(T181_, 1);
35729 		putIntoDest__cgen_18656(p, d, e, T182_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
35730 	}
35731 	break;
35732 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 12):
35733 	{
35734 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dotExpr;
35735 		tyObject_TType__facALICuu8zUj0hjvbTLFg* t_3;
35736 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tname;
35737 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* member;
35738 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T198_;
35739 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T199_;
35740 		dotExpr = NIM_NIL;
35741 		{
35742 			if (!((*(*e)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45))) goto LA186_;
35743 			dotExpr = (*e)._kind_6.sons->data[((NI) 1)];
35744 		}
35745 		goto LA184_;
35746 		LA186_: ;
35747 		{
35748 			if (!((*(*e)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46))) goto LA189_;
35749 			dotExpr = (*(*e)._kind_6.sons->data[((NI) 1)])._kind_6.sons->data[((NI) 0)];
35750 		}
35751 		goto LA184_;
35752 		LA189_: ;
35753 		{
35754 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_784), TM__MQdRN7fpbG7rPm4JpVVAhA_785);
35755 		}
35756 		LA184_: ;
35757 		t_3 = skipTypes__ast_3735((*(*dotExpr)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_781);
35758 		tname = getTypeDesc__cgen_6631((*p).module, t_3, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
35759 		{
35760 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T196_;
35761 			if (!((*t_3).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18))) goto LA194_;
35762 			T196_ = NIM_NIL;
35763 			T196_ = rope__ropes_115(((NI64) ((*(*(*dotExpr)._kind_6.sons->data[((NI) 1)])._kind_4.sym).position)));
35764 			member = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_786), T196_);
35765 		}
35766 		goto LA192_;
35767 		LA194_: ;
35768 		{
35769 			member = (*(*(*dotExpr)._kind_6.sons->data[((NI) 1)])._kind_4.sym).loc.r;
35770 		}
35771 		LA192_: ;
35772 		nimZeroMem((void*)T198_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
35773 		T198_[0] = tname;
35774 		T198_[1] = member;
35775 		T199_ = NIM_NIL;
35776 		T199_ = percent___cgen_23649(T198_, 2);
35777 		putIntoDest__cgen_18656(p, d, e, T199_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
35778 	}
35779 	break;
35780 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 43):
35781 	{
35782 		genSomeCast__cgen_22664(p, e, d);
35783 	}
35784 	break;
35785 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 31):
35786 	{
35787 		genOrd__cgen_22648(p, e, d);
35788 	}
35789 	break;
35790 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 38):
35791 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 9):
35792 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 37):
35793 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 39):
35794 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 36):
35795 	{
35796 		genArrayLen__cgen_21665(p, e, d, op);
35797 	}
35798 	break;
35799 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 44):
35800 	{
35801 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5425_;
35802 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T208_;
35803 		NimStringDesc* res_15;
35804 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T209_;
35805 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T210_;
35806 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T211_;
35807 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T216_;
35808 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T217_;
35809 		nimZeroMem((void*)(&aX60gensym5425_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35810 		{
35811 			if (!!(((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0)))) goto LA206_;
35812 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_808), TM__MQdRN7fpbG7rPm4JpVVAhA_809);
35813 		}
35814 		LA206_: ;
35815 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5425_));
35816 		T208_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
35817 		T208_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
35818 		res_15 = rawNewString(((NI) 80));
35819 		res_15 = resizeString(res_15, 4);
35820 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
35821 		T209_ = NIM_NIL;
35822 		T209_ = rdLoc__cgen_425(aX60gensym5425_);
35823 		cgFormatValue__cgen_141((&res_15), T209_);
35824 		res_15 = resizeString(res_15, 4);
35825 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_651));
35826 		T210_ = NIM_NIL;
35827 		T210_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_810));
35828 		cgFormatValue__cgen_141((&res_15), T210_);
35829 		res_15 = resizeString(res_15, 1);
35830 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35831 		T211_ = NIM_NIL;
35832 		T211_ = rdLoc__cgen_425(aX60gensym5425_);
35833 		cgFormatValue__cgen_141((&res_15), T211_);
35834 		res_15 = resizeString(res_15, 4);
35835 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_811));
35836 		{
35837 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA214_;
35838 			res_15 = resizeString(res_15, 1);
35839 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
35840 		}
35841 		LA214_: ;
35842 		T216_ = NIM_NIL;
35843 		T216_ = rope__ropes_109(res_15);
35844 		T217_ = NIM_NIL;
35845 		T217_ = indentLine__cgen_280(p, T216_);
35846 		add__ropes_159(T208_, T217_);
35847 	}
35848 	break;
35849 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 45):
35850 	{
35851 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5439_;
35852 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T223_;
35853 		NimStringDesc* res_16;
35854 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T224_;
35855 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T225_;
35856 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T226_;
35857 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T231_;
35858 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T232_;
35859 		nimZeroMem((void*)(&aX60gensym5439_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
35860 		{
35861 			if (!!(((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0)))) goto LA221_;
35862 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_808), TM__MQdRN7fpbG7rPm4JpVVAhA_809);
35863 		}
35864 		LA221_: ;
35865 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5439_));
35866 		T223_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
35867 		T223_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
35868 		res_16 = rawNewString(((NI) 80));
35869 		res_16 = resizeString(res_16, 4);
35870 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
35871 		T224_ = NIM_NIL;
35872 		T224_ = rdLoc__cgen_425(aX60gensym5439_);
35873 		cgFormatValue__cgen_141((&res_16), T224_);
35874 		res_16 = resizeString(res_16, 4);
35875 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_651));
35876 		T225_ = NIM_NIL;
35877 		T225_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_812));
35878 		cgFormatValue__cgen_141((&res_16), T225_);
35879 		res_16 = resizeString(res_16, 1);
35880 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
35881 		T226_ = NIM_NIL;
35882 		T226_ = rdLoc__cgen_425(aX60gensym5439_);
35883 		cgFormatValue__cgen_141((&res_16), T226_);
35884 		res_16 = resizeString(res_16, 4);
35885 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_811));
35886 		{
35887 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA229_;
35888 			res_16 = resizeString(res_16, 1);
35889 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
35890 		}
35891 		LA229_: ;
35892 		T231_ = NIM_NIL;
35893 		T231_ = rope__ropes_109(res_16);
35894 		T232_ = NIM_NIL;
35895 		T232_ = indentLine__cgen_280(p, T231_);
35896 		add__ropes_159(T223_, T232_);
35897 	}
35898 	break;
35899 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 137):
35900 	{
35901 		genSetLengthStr__cgen_21917(p, e, d);
35902 	}
35903 	break;
35904 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 138):
35905 	{
35906 		genSetLengthSeq__cgen_21859(p, e, d);
35907 	}
35908 	break;
35909 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 40):
35910 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 41):
35911 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 42):
35912 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 121):
35913 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 120):
35914 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 119):
35915 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 122):
35916 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 123):
35917 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 124):
35918 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 134):
35919 	{
35920 		genSetOp__cgen_22115(p, e, d, op);
35921 	}
35922 	break;
35923 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 145):
35924 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 146):
35925 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 136):
35926 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 147):
35927 	{
35928 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* opr;
35929 		opr = (*(*e)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
35930 		{
35931 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc;
35932 			NimStringDesc* T241_;
35933 			NIM_BOOL wasDeclared;
35934 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym5458_;
35935 			NimStringDesc* T242_;
35936 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T243_;
35937 			if (!!((((*opr).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 3))&15U)))!=0))) goto LA239_;
35938 			T241_ = NIM_NIL;
35939 			T241_ = dollar___ropes_250((*opr).loc.r);
35940 			prc = getCompilerProc__magicsys_145((*(*(*p).module).g).graph, T241_);
35941 			xX60gensym5458_ = prc;
35942 			wasDeclared = containsOrIncl__astalgo_402((&(*(*p).module).declaredProtos), (NI)((NI)((NU32)(((NI) ((*xX60gensym5458_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym5458_).Sup.itemId.item))));
35943 			T242_ = NIM_NIL;
35944 			T242_ = dollar___ropes_250((*opr).loc.r);
35945 			T243_ = NIM_NIL;
35946 			T243_ = cgsym__cgen_120((*p).module, T242_);
35947 			(void)(T243_);
35948 			{
35949 				NIM_BOOL T246_;
35950 				tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T250_;
35951 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T251_;
35952 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T252_;
35953 				T246_ = (NIM_BOOL)0;
35954 				T246_ = !(wasDeclared);
35955 				if (!(T246_)) goto LA247_;
35956 				T246_ = hcrOn__cgen_45(p);
35957 				LA247_: ;
35958 				if (!T246_) goto LA248_;
35959 				nimZeroMem((void*)T250_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
35960 				T250_[0] = mangleDynLibProc__cgen_3781(prc);
35961 				T251_ = NIM_NIL;
35962 				T251_ = t__cgen_79((*prc).loc);
35963 				T250_[1] = getTypeDesc__cgen_6631((*p).module, T251_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
35964 				T250_[2] = getModuleDllPath__cgen_136((*p).module, prc);
35965 				T252_ = NIM_NIL;
35966 				T252_ = percent___cgen_23730(T250_, 3);
35967 				add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 18))- 0], T252_);
35968 			}
35969 			LA248_: ;
35970 		}
35971 		LA239_: ;
35972 		genCall__cgen_13078(p, e, d);
35973 	}
35974 	break;
35975 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 152):
35976 	{
35977 		genDefault__cgen_20626(p, e, d);
35978 	}
35979 	break;
35980 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 158):
35981 	{
35982 		genReset__cgen_20621(p, e);
35983 	}
35984 	break;
35985 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 20):
35986 	{
35987 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T256_;
35988 		T256_ = NIM_NIL;
35989 		T256_ = skipConv__types_3588((*e)._kind_6.sons->data[((NI) 1)]);
35990 		genEcho__cgen_20264(p, T256_);
35991 	}
35992 	break;
35993 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 144):
35994 	{
35995 		genArrToSeq__cgen_21174(p, e, d);
35996 	}
35997 	break;
35998 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 212) ... ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 259):
35999 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 22) ... ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 28):
36000 	{
36001 		NimStringDesc* T259_;
36002 		T259_ = NIM_NIL;
36003 		T259_ = nsuFormatSingleElem(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_875), (*(*(*(*e)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).s);
36004 		liMessage__msgs_1118((*(*(*p).module).g).config, (*e).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T259_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_876, NIM_FALSE);
36005 	}
36006 	break;
36007 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 198):
36008 	{
36009 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
36010 		n = wrapProcForSpawn__spawn_510((*(*(*p).module).g).graph, (*(*p).module).Sup.idgen, (*(*p).module).module, e, (*e).typ, ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL), ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
36011 		expr__cgen_11460(p, n, d);
36012 	}
36013 	break;
36014 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 141):
36015 	{
36016 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2;
36017 		n_2 = liftParallel__semparallel_831((*(*(*p).module).g).graph, (*(*p).module).Sup.idgen, (*(*p).module).module, e);
36018 		expr__cgen_11460(p, n_2, d);
36019 	}
36020 	break;
36021 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 199):
36022 	{
36023 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_3;
36024 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b_3;
36025 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
36026 		{
36027 			NIM_BOOL T265_;
36028 			T265_ = (NIM_BOOL)0;
36029 			T265_ = ((48 &((NU16)1<<((NU)((*(*(*(*p).module).g).config).selectedGC)&15U)))!=0);
36030 			if (!(T265_)) goto LA266_;
36031 			T265_ = !((((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 51))&63U)))!=0));
36032 			LA266_: ;
36033 			if (!T265_) goto LA267_;
36034 			liMessage__msgs_1118((*(*(*p).module).g).config, (*e).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_877), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_878, NIM_FALSE);
36035 		}
36036 		LA267_: ;
36037 		nimZeroMem((void*)(&a_3), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36038 		nimZeroMem((void*)(&b_3), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36039 		{
36040 			if (!((*(*e)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63) || (*(*e)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA271_;
36041 			x = (*(*e)._kind_6.sons->data[((NI) 1)])._kind_6.sons->data[((NI) 0)];
36042 		}
36043 		goto LA269_;
36044 		LA271_: ;
36045 		{
36046 			x = (*e)._kind_6.sons->data[((NI) 1)];
36047 		}
36048 		LA269_: ;
36049 		initLocExpr__cgen_11483(p, x, (&a_3));
36050 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 2)], (&b_3));
36051 		genDeepCopy__cgen_18498(p, a_3, b_3);
36052 	}
36053 	break;
36054 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 127):
36055 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 91):
36056 	{
36057 		genCall__cgen_13078(p, e, d);
36058 	}
36059 	break;
36060 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 149):
36061 	{
36062 		genWasMoved__cgen_23082(p, e);
36063 	}
36064 	break;
36065 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 148):
36066 	{
36067 		genMove__cgen_23088(p, e, d);
36068 	}
36069 	break;
36070 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 150):
36071 	{
36072 		genDestroy__cgen_23130(p, e);
36073 	}
36074 	break;
36075 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 156):
36076 	{
36077 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym5478_;
36078 		NimStringDesc* res_17;
36079 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T279_;
36080 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T280_;
36081 		nimZeroMem((void*)(&aX60gensym5478_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36082 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 1)], (&aX60gensym5478_));
36083 		res_17 = rawNewString(((NI) 80));
36084 		T279_ = NIM_NIL;
36085 		T279_ = rdLoc__cgen_425(aX60gensym5478_);
36086 		cgFormatValue__cgen_141((&res_17), T279_);
36087 		res_17 = resizeString(res_17, 6);
36088 appendString(res_17, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_252));
36089 		T280_ = NIM_NIL;
36090 		T280_ = rope__ropes_109(res_17);
36091 		putIntoDest__cgen_18656(p, d, e, T280_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
36092 	}
36093 	break;
36094 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 157):
36095 	{
36096 		genAccessTypeField__cgen_21652(p, e, d);
36097 	}
36098 	break;
36099 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 126):
36100 	{
36101 		genSlice__cgen_23225(p, e, d);
36102 	}
36103 	break;
36104 	case ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 151):
36105 	{
36106 	}
36107 	break;
36108 	default:
36109 	{
36110 		NimStringDesc* T285_;
36111 		T285_ = NIM_NIL;
36112 		T285_ = rawNewString((reprEnum((NI)op, (&NTItmagic__shZhZOdbVC5nnFvcXQAImg_)) ? reprEnum((NI)op, (&NTItmagic__shZhZOdbVC5nnFvcXQAImg_))->Sup.len : 0) + 14);
36113 appendString(T285_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_899));
36114 appendString(T285_, reprEnum((NI)op, (&NTItmagic__shZhZOdbVC5nnFvcXQAImg_)));
36115 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, T285_, TM__MQdRN7fpbG7rPm4JpVVAhA_900);
36116 	}
36117 	break;
36118 	}
36119 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genSetNode__cgen_17768)36120 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genSetNode__cgen_17768)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
36121 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
36122 	NI size;
36123 	NI64 T1_;
36124 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* cs;
36125 	result = NIM_NIL;
36126 	T1_ = (NI64)0;
36127 	T1_ = getSize__types_3327((*(*(*p).module).g).config, (*n).typ);
36128 	size = ((NI) (T1_));
36129 	cs = toBitSet__nimsets_103((*(*(*p).module).g).config, n);
36130 	{
36131 		NI id;
36132 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
36133 		if (!(((NI) 8) < size)) goto LA4_;
36134 		id = nodeTableTestOrSet__treetab_198((&(*(*p).module).dataCache), n, ((NI) ((*(*p).module).labels)));
36135 		T6_ = NIM_NIL;
36136 		T6_ = rope__ropes_115(((NI64) (id)));
36137 		result = amp___ropes_128((*(*p).module).tmpBase, T6_);
36138 		{
36139 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T11_;
36140 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
36141 			if (!(id == ((NI) ((*(*p).module).labels)))) goto LA9_;
36142 			(*(*p).module).labels += ((NI) 1);
36143 			nimZeroMem((void*)T11_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
36144 			T11_[0] = getTypeDesc__cgen_6631((*p).module, (*n).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
36145 			T11_[1] = result;
36146 			T11_[2] = genRawSetData__cgen_17758(cs, size);
36147 			T12_ = NIM_NIL;
36148 			T12_ = percent___cgen_17779(T11_, 3);
36149 			add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T12_);
36150 		}
36151 		LA9_: ;
36152 	}
36153 	goto LA2_;
36154 	LA4_: ;
36155 	{
36156 		result = genRawSetData__cgen_17758(cs, size);
36157 	}
36158 	LA2_: ;
36159 	return result;
36160 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_23830)36161 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23830)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
36162 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
36163 	result = NIM_NIL;
36164 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_901), args, argsLen_0);
36165 	return result;
36166 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_23835)36167 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23835)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
36168 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
36169 	result = NIM_NIL;
36170 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_902), args, argsLen_0);
36171 	return result;
36172 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_23841)36173 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23841)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
36174 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
36175 	result = NIM_NIL;
36176 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_903), args, argsLen_0);
36177 	return result;
36178 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_23856)36179 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23856)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
36180 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
36181 	result = NIM_NIL;
36182 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_904), args, argsLen_0);
36183 	return result;
36184 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_23861)36185 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_23861)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
36186 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
36187 	result = NIM_NIL;
36188 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_905), args, argsLen_0);
36189 	return result;
36190 }
N_NIMCALL(void,genSetConstr__cgen_23792)36191 N_LIB_PRIVATE N_NIMCALL(void, genSetConstr__cgen_23792)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
36192 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
36193 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
36194 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA idx;
36195 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36196 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36197 	nimZeroMem((void*)(&idx), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36198 	{
36199 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
36200 		if (!(((*e).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 4))&31U)))!=0)) goto LA3_;
36201 		T5_ = NIM_NIL;
36202 		T5_ = genSetNode__cgen_17768(p, e);
36203 		putIntoDest__cgen_18656(p, d, e, T5_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
36204 	}
36205 	goto LA1_;
36206 	LA3_: ;
36207 	{
36208 		{
36209 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA9_;
36210 			getTemp__cgen_7343(p, (*e).typ, d, NIM_FALSE);
36211 		}
36212 		LA9_: ;
36213 		{
36214 			NI64 T13_;
36215 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T16_;
36216 			NimStringDesc* res;
36217 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
36218 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
36219 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
36220 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
36221 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
36222 			T13_ = (NI64)0;
36223 			T13_ = getSize__types_3327((*(*(*p).module).g).config, (*e).typ);
36224 			if (!(IL64(8) < T13_)) goto LA14_;
36225 			T16_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
36226 			T16_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
36227 			res = rawNewString(((NI) 80));
36228 			T17_ = NIM_NIL;
36229 			T17_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_107));
36230 			cgFormatValue__cgen_141((&res), T17_);
36231 			res = resizeString(res, 1);
36232 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
36233 			T18_ = NIM_NIL;
36234 			T18_ = rdLoc__cgen_425((*d));
36235 			cgFormatValue__cgen_141((&res), T18_);
36236 			res = resizeString(res, 9);
36237 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_109));
36238 			T19_ = NIM_NIL;
36239 			T19_ = getTypeDesc__cgen_6631((*p).module, (*e).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
36240 			cgFormatValue__cgen_141((&res), T19_);
36241 			res = resizeString(res, 3);
36242 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_110));
36243 			{
36244 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA22_;
36245 				res = resizeString(res, 1);
36246 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
36247 			}
36248 			LA22_: ;
36249 			T24_ = NIM_NIL;
36250 			T24_ = rope__ropes_109(res);
36251 			T25_ = NIM_NIL;
36252 			T25_ = indentLine__cgen_280(p, T24_);
36253 			add__ropes_159(T16_, T25_);
36254 			{
36255 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** it;
36256 				tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp_;
36257 				NI i;
36258 				NI L;
36259 				NI T27_;
36260 				it = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
36261 				colontmp_ = NIM_NIL;
36262 				colontmp_ = (*e)._kind_6.sons;
36263 				i = ((NI) 0);
36264 				T27_ = (colontmp_ ? colontmp_->Sup.len : 0);
36265 				L = T27_;
36266 				{
36267 					while (1) {
36268 						if (!(i < L)) goto LA29;
36269 						it = &colontmp_->data[i];
36270 						{
36271 							tyObject_TType__facALICuu8zUj0hjvbTLFg* T34_;
36272 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T35_;
36273 							tyArray__f7nG5LD47BH5K9c6mASit3g T36_;
36274 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
36275 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
36276 							if (!((*(*it)).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA32_;
36277 							T34_ = NIM_NIL;
36278 							T34_ = getSysType__magicsys_60((*(*(*p).module).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
36279 							getTemp__cgen_7343(p, T34_, (&idx), NIM_FALSE);
36280 							initLocExpr__cgen_11483(p, (*(*it))._kind_6.sons->data[((NI) 0)], (&a));
36281 							initLocExpr__cgen_11483(p, (*(*it))._kind_6.sons->data[((NI) 1)], (&b));
36282 							T35_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
36283 							T35_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
36284 							nimZeroMem((void*)T36_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
36285 							T36_[0] = rdLoc__cgen_425(idx);
36286 							T36_[1] = rdLoc__cgen_425((*d));
36287 							T36_[2] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, a, (*e).typ);
36288 							T36_[3] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, b, (*e).typ);
36289 							T37_ = NIM_NIL;
36290 							T37_ = percent___cgen_23830(T36_, 4);
36291 							T38_ = NIM_NIL;
36292 							T38_ = indentLine__cgen_280(p, T37_);
36293 							add__ropes_159(T35_, T38_);
36294 						}
36295 						goto LA30_;
36296 						LA32_: ;
36297 						{
36298 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T40_;
36299 							tyArray__mrugoXXRZUEeG9bEXo9auBKw T41_;
36300 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
36301 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
36302 							initLocExpr__cgen_11483(p, (*it), (&a));
36303 							T40_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
36304 							T40_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
36305 							nimZeroMem((void*)T41_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
36306 							T41_[0] = rdLoc__cgen_425((*d));
36307 							T41_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, a, (*e).typ);
36308 							T42_ = NIM_NIL;
36309 							T42_ = percent___cgen_23835(T41_, 2);
36310 							T43_ = NIM_NIL;
36311 							T43_ = indentLine__cgen_280(p, T42_);
36312 							add__ropes_159(T40_, T43_);
36313 						}
36314 						LA30_: ;
36315 						i += ((NI) 1);
36316 					} LA29: ;
36317 				}
36318 			}
36319 		}
36320 		goto LA11_;
36321 		LA14_: ;
36322 		{
36323 			NimStringDesc* ts;
36324 			NimStringDesc* T45_;
36325 			NI64 T46_;
36326 			NimStringDesc* T47_;
36327 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T48_;
36328 			tyArray__JiWwrsTRC6xqNlGcBthSVA T49_;
36329 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
36330 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
36331 			T45_ = NIM_NIL;
36332 			T46_ = (NI64)0;
36333 			T46_ = getSize__types_3327((*(*(*p).module).g).config, (*e).typ);
36334 			T47_ = NIM_NIL;
36335 			T47_ = dollar___systemZdollars_6((NI64)(T46_ * IL64(8)));
36336 			T45_ = rawNewString((T47_ ? T47_->Sup.len : 0) + 2);
36337 appendString(T45_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_463));
36338 appendString(T45_, T47_);
36339 			ts = T45_;
36340 			T48_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
36341 			T48_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
36342 			nimZeroMem((void*)T49_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
36343 			T49_[0] = rdLoc__cgen_425((*d));
36344 			T50_ = NIM_NIL;
36345 			T50_ = percent___cgen_23841(T49_, 1);
36346 			T51_ = NIM_NIL;
36347 			T51_ = indentLine__cgen_280(p, T50_);
36348 			add__ropes_159(T48_, T51_);
36349 			{
36350 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** it_2;
36351 				tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp__2;
36352 				NI i_2;
36353 				NI L_2;
36354 				NI T53_;
36355 				it_2 = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
36356 				colontmp__2 = NIM_NIL;
36357 				colontmp__2 = (*e)._kind_6.sons;
36358 				i_2 = ((NI) 0);
36359 				T53_ = (colontmp__2 ? colontmp__2->Sup.len : 0);
36360 				L_2 = T53_;
36361 				{
36362 					while (1) {
36363 						if (!(i_2 < L_2)) goto LA55;
36364 						it_2 = &colontmp__2->data[i_2];
36365 						{
36366 							tyObject_TType__facALICuu8zUj0hjvbTLFg* T60_;
36367 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T61_;
36368 							tyArray__duFhZXIIlrbrM62cWjNekg T62_;
36369 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
36370 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
36371 							if (!((*(*it_2)).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA58_;
36372 							T60_ = NIM_NIL;
36373 							T60_ = getSysType__magicsys_60((*(*(*p).module).g).graph, unknownLineInfo__lineinfos_280, ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31));
36374 							getTemp__cgen_7343(p, T60_, (&idx), NIM_FALSE);
36375 							initLocExpr__cgen_11483(p, (*(*it_2))._kind_6.sons->data[((NI) 0)], (&a));
36376 							initLocExpr__cgen_11483(p, (*(*it_2))._kind_6.sons->data[((NI) 1)], (&b));
36377 							T61_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
36378 							T61_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
36379 							nimZeroMem((void*)T62_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
36380 							T62_[0] = rdLoc__cgen_425(idx);
36381 							T62_[1] = rdLoc__cgen_425((*d));
36382 							T62_[2] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, a, (*e).typ);
36383 							T62_[3] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, b, (*e).typ);
36384 							T62_[4] = rope__ropes_109(ts);
36385 							T63_ = NIM_NIL;
36386 							T63_ = percent___cgen_23856(T62_, 5);
36387 							T64_ = NIM_NIL;
36388 							T64_ = indentLine__cgen_280(p, T63_);
36389 							add__ropes_159(T61_, T64_);
36390 						}
36391 						goto LA56_;
36392 						LA58_: ;
36393 						{
36394 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T66_;
36395 							tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T67_;
36396 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
36397 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
36398 							initLocExpr__cgen_11483(p, (*it_2), (&a));
36399 							T66_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
36400 							T66_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
36401 							nimZeroMem((void*)T67_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
36402 							T67_[0] = rdLoc__cgen_425((*d));
36403 							T67_[1] = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, a, (*e).typ);
36404 							T67_[2] = rope__ropes_109(ts);
36405 							T68_ = NIM_NIL;
36406 							T68_ = percent___cgen_23861(T67_, 3);
36407 							T69_ = NIM_NIL;
36408 							T69_ = indentLine__cgen_280(p, T68_);
36409 							add__ropes_159(T66_, T69_);
36410 						}
36411 						LA56_: ;
36412 						i_2 += ((NI) 1);
36413 					} LA55: ;
36414 				}
36415 			}
36416 		}
36417 		LA11_: ;
36418 	}
36419 	LA1_: ;
36420 }
N_NIMCALL(void,exprComplexConst__cgen_24215)36421 N_LIB_PRIVATE N_NIMCALL(void, exprComplexConst__cgen_24215)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
36422 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
36423 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
36424 	NI id;
36425 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
36426 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
36427 	t = (*n).typ;
36428 	T1_ = NIM_NIL;
36429 	T1_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
36430 	(void)(T1_);
36431 	id = nodeTableTestOrSet__treetab_198((&(*(*p).module).dataCache), n, ((NI) ((*(*p).module).labels)));
36432 	T2_ = NIM_NIL;
36433 	T2_ = rope__ropes_115(((NI64) (id)));
36434 	tmp = amp___ropes_128((*(*p).module).tmpBase, T2_);
36435 	{
36436 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T7_;
36437 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
36438 		if (!(id == ((NI) ((*(*p).module).labels)))) goto LA5_;
36439 		(*(*p).module).labels += ((NI) 1);
36440 		nimZeroMem((void*)T7_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
36441 		T7_[0] = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 10));
36442 		T7_[1] = tmp;
36443 		T7_[2] = genBracedInit__cgen_13772(p, n, NIM_TRUE, t);
36444 		T8_ = NIM_NIL;
36445 		T8_ = percent___cgen_17779(T7_, 3);
36446 		add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T8_);
36447 	}
36448 	LA5_: ;
36449 	{
36450 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA11_;
36451 		fillLoc__cgen_65(d, ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 8), n, tmp, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1));
36452 	}
36453 	goto LA9_;
36454 	LA11_: ;
36455 	{
36456 		putDataIntoDest__cgen_18642(p, d, n, tmp);
36457 		{
36458 			if (!!(((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24) || (*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28)))) goto LA16_;
36459 			(*d).storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1);
36460 		}
36461 		LA16_: ;
36462 	}
36463 	LA9_: ;
36464 }
N_NIMCALL(NIM_BOOL,handleConstExpr__cgen_20991)36465 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, handleConstExpr__cgen_20991)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
36466 	NIM_BOOL result;
36467 	result = (NIM_BOOL)0;
36468 	{
36469 		NIM_BOOL T3_;
36470 		NIM_BOOL T4_;
36471 		NI T6_;
36472 		T3_ = (NIM_BOOL)0;
36473 		T4_ = (NIM_BOOL)0;
36474 		T4_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0));
36475 		if (!(T4_)) goto LA5_;
36476 		T6_ = (NI)0;
36477 		T6_ = len__ast_3198(n);
36478 		T4_ = (((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38)) < T6_);
36479 		LA5_: ;
36480 		T3_ = T4_;
36481 		if (!(T3_)) goto LA7_;
36482 		T3_ = isDeepConstExpr__trees_171(n, NIM_FALSE);
36483 		LA7_: ;
36484 		if (!T3_) goto LA8_;
36485 		rawConstExpr__cgen_10365(p, n, d);
36486 		result = NIM_TRUE;
36487 	}
36488 	goto LA1_;
36489 	LA8_: ;
36490 	{
36491 		result = NIM_FALSE;
36492 	}
36493 	LA1_: ;
36494 	return result;
36495 }
N_NIMCALL(void,genArrayConstr__cgen_23956)36496 N_LIB_PRIVATE N_NIMCALL(void, genArrayConstr__cgen_23956)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
36497 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA arr;
36498 	nimZeroMem((void*)(&arr), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36499 	{
36500 		NIM_BOOL T3_;
36501 		T3_ = (NIM_BOOL)0;
36502 		T3_ = handleConstExpr__cgen_20991(p, n, d);
36503 		if (!!(T3_)) goto LA4_;
36504 		{
36505 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA8_;
36506 			getTemp__cgen_7343(p, (*n).typ, d, NIM_FALSE);
36507 		}
36508 		LA8_: ;
36509 		{
36510 			NI i;
36511 			NI colontmp_;
36512 			NI i_2;
36513 			i = (NI)0;
36514 			colontmp_ = (NI)0;
36515 			colontmp_ = len__ast_3198(n);
36516 			i_2 = ((NI) 0);
36517 			{
36518 				while (1) {
36519 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T13_;
36520 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T14_;
36521 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T15_;
36522 					tyArray__mrugoXXRZUEeG9bEXo9auBKw T16_;
36523 					if (!(i_2 < colontmp_)) goto LA12;
36524 					i = i_2;
36525 					T13_ = NIM_NIL;
36526 					T13_ = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
36527 					T14_ = NIM_NIL;
36528 					T14_ = elemType__types_263(T13_);
36529 					T15_ = NIM_NIL;
36530 					T15_ = lodeTyp__cgen_86(T14_);
36531 					initLoc__cgen_60((&arr), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), T15_, (*d).storage);
36532 					nimZeroMem((void*)T16_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
36533 					T16_[0] = rdLoc__cgen_425((*d));
36534 					T16_[1] = intLiteral__cgen_11471(((NI64) (i)));
36535 					arr.r = percent___cgen_6775(T16_, 2);
36536 					expr__cgen_11460(p, (*n)._kind_6.sons->data[i], (&arr));
36537 					i_2 += ((NI) 1);
36538 				} LA12: ;
36539 			}
36540 		}
36541 	}
36542 	LA4_: ;
36543 }
N_INLINE(NIM_BOOL,isRoutine__ast_4676)36544 static N_INLINE(NIM_BOOL, isRoutine__ast_4676)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
36545 	NIM_BOOL result;
36546 	result = (NIM_BOOL)0;
36547 	result = ((520192 &((NU32)1<<((NU)((*s).kind)&31U)))!=0);
36548 	return result;
36549 }
N_INLINE(NIM_BOOL,isConstClosure__cgen_23899)36550 static N_INLINE(NIM_BOOL, isConstClosure__cgen_23899)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
36551 	NIM_BOOL result;
36552 	NIM_BOOL T1_;
36553 	NIM_BOOL T2_;
36554 	result = (NIM_BOOL)0;
36555 	T1_ = (NIM_BOOL)0;
36556 	T2_ = (NIM_BOOL)0;
36557 	T2_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
36558 	if (!(T2_)) goto LA3_;
36559 	T2_ = isRoutine__ast_4676((*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym);
36560 	LA3_: ;
36561 	T1_ = T2_;
36562 	if (!(T1_)) goto LA4_;
36563 	T1_ = ((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23));
36564 	LA4_: ;
36565 	result = T1_;
36566 	return result;
36567 }
N_NIMCALL(void,genClosure__cgen_23913)36568 N_LIB_PRIVATE N_NIMCALL(void, genClosure__cgen_23913)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
36569 	{
36570 		NIM_BOOL T3_;
36571 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
36572 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
36573 		tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T7_;
36574 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
36575 		T3_ = (NIM_BOOL)0;
36576 		T3_ = isConstClosure__cgen_23899(n);
36577 		if (!T3_) goto LA4_;
36578 		(*(*p).module).labels += ((NI) 1);
36579 		T6_ = NIM_NIL;
36580 		T6_ = rope__ropes_115(((NI64) ((*(*p).module).labels)));
36581 		tmp = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_906), T6_);
36582 		nimZeroMem((void*)T7_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
36583 		T7_[0] = getTypeDesc__cgen_6631((*p).module, (*n).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
36584 		T7_[1] = tmp;
36585 		T7_[2] = genBracedInit__cgen_13772(p, n, NIM_TRUE, (*n).typ);
36586 		T8_ = NIM_NIL;
36587 		T8_ = percent___cgen_17779(T7_, 3);
36588 		add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 9))- 0], T8_);
36589 		putIntoDest__cgen_18656(p, d, n, tmp, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1));
36590 	}
36591 	goto LA1_;
36592 	LA4_: ;
36593 	{
36594 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp_2;
36595 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
36596 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
36597 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T15_;
36598 		NimStringDesc* res;
36599 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
36600 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
36601 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
36602 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
36603 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
36604 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
36605 		nimZeroMem((void*)(&tmp_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36606 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36607 		nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36608 		initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 0)], (&a));
36609 		initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 1)], (&b));
36610 		{
36611 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T12_;
36612 			T12_ = NIM_NIL;
36613 			T12_ = skipConv__types_3588((*n)._kind_6.sons->data[((NI) 0)]);
36614 			if (!((*T12_).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 155))) goto LA13_;
36615 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_907), TM__MQdRN7fpbG7rPm4JpVVAhA_908);
36616 		}
36617 		LA13_: ;
36618 		getTemp__cgen_7343(p, (*n).typ, (&tmp_2), NIM_FALSE);
36619 		T15_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
36620 		T15_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
36621 		res = rawNewString(((NI) 80));
36622 		T16_ = NIM_NIL;
36623 		T16_ = rdLoc__cgen_425(tmp_2);
36624 		cgFormatValue__cgen_141((&res), T16_);
36625 		res = resizeString(res, 9);
36626 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_353));
36627 		T17_ = NIM_NIL;
36628 		T17_ = rdLoc__cgen_425(a);
36629 		cgFormatValue__cgen_141((&res), T17_);
36630 		res = resizeString(res, 2);
36631 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
36632 		T18_ = NIM_NIL;
36633 		T18_ = rdLoc__cgen_425(tmp_2);
36634 		cgFormatValue__cgen_141((&res), T18_);
36635 		res = resizeString(res, 9);
36636 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_909));
36637 		T19_ = NIM_NIL;
36638 		T19_ = rdLoc__cgen_425(b);
36639 		cgFormatValue__cgen_141((&res), T19_);
36640 		res = resizeString(res, 1);
36641 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
36642 		{
36643 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA22_;
36644 			res = resizeString(res, 1);
36645 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
36646 		}
36647 		LA22_: ;
36648 		T24_ = NIM_NIL;
36649 		T24_ = rope__ropes_109(res);
36650 		T25_ = NIM_NIL;
36651 		T25_ = indentLine__cgen_280(p, T24_);
36652 		add__ropes_159(T15_, T25_);
36653 		putLocIntoDest__cgen_11467(p, d, tmp_2);
36654 	}
36655 	LA1_: ;
36656 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13309)36657 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13309)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
36658 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
36659 	result = NIM_NIL;
36660 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_910), args, argsLen_0);
36661 	return result;
36662 }
N_NIMCALL(void,genTupleConstr__cgen_23866)36663 N_LIB_PRIVATE N_NIMCALL(void, genTupleConstr__cgen_23866)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
36664 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA rec;
36665 	nimZeroMem((void*)(&rec), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36666 	{
36667 		NIM_BOOL T3_;
36668 		tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
36669 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
36670 		T3_ = (NIM_BOOL)0;
36671 		T3_ = handleConstExpr__cgen_20991(p, n, d);
36672 		if (!!(T3_)) goto LA4_;
36673 		t = (*n).typ;
36674 		T6_ = NIM_NIL;
36675 		T6_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
36676 		(void)(T6_);
36677 		{
36678 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA9_;
36679 			getTemp__cgen_7343(p, t, d, NIM_FALSE);
36680 		}
36681 		LA9_: ;
36682 		{
36683 			NI i;
36684 			NI colontmp_;
36685 			NI i_2;
36686 			i = (NI)0;
36687 			colontmp_ = (NI)0;
36688 			colontmp_ = len__ast_3198(n);
36689 			i_2 = ((NI) 0);
36690 			{
36691 				while (1) {
36692 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
36693 					tyArray__mrugoXXRZUEeG9bEXo9auBKw T18_;
36694 					if (!(i_2 < colontmp_)) goto LA13;
36695 					i = i_2;
36696 					it = (*n)._kind_6.sons->data[i];
36697 					{
36698 						if (!((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 34))) goto LA16_;
36699 						it = (*it)._kind_6.sons->data[((NI) 1)];
36700 					}
36701 					LA16_: ;
36702 					initLoc__cgen_60((&rec), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), it, (*d).storage);
36703 					nimZeroMem((void*)T18_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
36704 					T18_[0] = rdLoc__cgen_425((*d));
36705 					T18_[1] = rope__ropes_115(((NI64) (i)));
36706 					rec.r = percent___cgen_13309(T18_, 2);
36707 					rec.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 9)) & 15);
36708 					expr__cgen_11460(p, it, (&rec));
36709 					i_2 += ((NI) 1);
36710 				} LA13: ;
36711 			}
36712 		}
36713 	}
36714 	LA4_: ;
36715 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,lookupFieldAgain__cgen_19537)36716 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupFieldAgain__cgen_19537)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* ty, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** r, tyObject_TType__facALICuu8zUj0hjvbTLFg** resTyp) {
36717 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
36718 	tyObject_TType__facALICuu8zUj0hjvbTLFg* ty_2;
36719 	result = NIM_NIL;
36720 	ty_2 = ty;
36721 	{
36722 		while (1) {
36723 			if (!!((ty_2 == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA2;
36724 			ty_2 = skipTypes__ast_3735(ty_2, TM__MQdRN7fpbG7rPm4JpVVAhA_112);
36725 			result = lookupInRecord__astalgo_84((*ty_2).n, (*field).name);
36726 			{
36727 				if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA5_;
36728 				{
36729 					if (!!((resTyp == ((tyObject_TType__facALICuu8zUj0hjvbTLFg**) NIM_NIL)))) goto LA9_;
36730 					unsureAsgnRef((void**) (&(*resTyp)), ty_2);
36731 				}
36732 				LA9_: ;
36733 				goto LA1;
36734 			}
36735 			LA5_: ;
36736 			{
36737 				NIM_BOOL T13_;
36738 				T13_ = (NIM_BOOL)0;
36739 				T13_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
36740 				if (T13_) goto LA14_;
36741 				T13_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
36742 				LA14_: ;
36743 				if (!!(T13_)) goto LA15_;
36744 				add__ropes_162(r, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_111));
36745 			}
36746 			LA15_: ;
36747 			ty_2 = (*ty_2).sons->data[((NI) 0)];
36748 		} LA2: ;
36749 	} LA1: ;
36750 	{
36751 		if (!(result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA19_;
36752 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*field).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_911), TM__MQdRN7fpbG7rPm4JpVVAhA_912);
36753 	}
36754 	LA19_: ;
36755 	return result;
36756 }
N_INLINE(NimStringDesc *,toFileLineCol__msgs_619)36757 static N_INLINE(NimStringDesc*, toFileLineCol__msgs_619)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
36758 	NimStringDesc* result;
36759 	NimStringDesc* T1_;
36760 	result = NIM_NIL;
36761 	T1_ = NIM_NIL;
36762 	T1_ = toMsgFilename__msgs_602(conf, info.fileIndex);
36763 	result = resizeString(result, (T1_ ? T1_->Sup.len : 0) + 0);
36764 appendString(result, T1_);
36765 	{
36766 		if (!(((NI) 0) < ((NI) (info.line)))) goto LA4_;
36767 		result = resizeString(result, 1);
36768 appendString(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
36769 		addInt__stdZprivateZdigitsutils_189((&result), ((NI) (info.line)));
36770 		{
36771 			if (!(((NI) 0) < (NI)(((NI) (info.col)) + ((NI) 1)))) goto LA8_;
36772 			result = resizeString(result, 2);
36773 appendString(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
36774 			addInt__stdZprivateZdigitsutils_189((&result), (NI)(((NI) (info.col)) + ((NI) 1)));
36775 		}
36776 		LA8_: ;
36777 		result = resizeString(result, 1);
36778 appendString(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
36779 	}
36780 	LA4_: ;
36781 	return result;
36782 }
N_NIMCALL(NIM_BOOL,lt___cgen_19724)36783 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lt___cgen_19724)(tyTuple__47w2DboNEPf69aPgubZdd7Q x, tyTuple__47w2DboNEPf69aPgubZdd7Q y) {
36784 	NIM_BOOL result;
36785 	NI c;
36786 	NI c_2;
36787 	NI c_3;
36788 {	result = (NIM_BOOL)0;
36789 	c = cmp__system_7452(x.Field0, y.Field0);
36790 	{
36791 		if (!(c < ((NI) 0))) goto LA3_;
36792 		result = NIM_TRUE;
36793 		goto BeforeRet_;
36794 	}
36795 	LA3_: ;
36796 	{
36797 		if (!(((NI) 0) < c)) goto LA7_;
36798 		result = NIM_FALSE;
36799 		goto BeforeRet_;
36800 	}
36801 	LA7_: ;
36802 	c_2 = cmp__system_7452(x.Field1, y.Field1);
36803 	{
36804 		if (!(c_2 < ((NI) 0))) goto LA11_;
36805 		result = NIM_TRUE;
36806 		goto BeforeRet_;
36807 	}
36808 	LA11_: ;
36809 	{
36810 		if (!(((NI) 0) < c_2)) goto LA15_;
36811 		result = NIM_FALSE;
36812 		goto BeforeRet_;
36813 	}
36814 	LA15_: ;
36815 	c_3 = cmp__system_7452(x.Field2, y.Field2);
36816 	{
36817 		if (!(c_3 < ((NI) 0))) goto LA19_;
36818 		result = NIM_TRUE;
36819 		goto BeforeRet_;
36820 	}
36821 	LA19_: ;
36822 	{
36823 		if (!(((NI) 0) < c_3)) goto LA23_;
36824 		result = NIM_FALSE;
36825 		goto BeforeRet_;
36826 	}
36827 	LA23_: ;
36828 	result = NIM_FALSE;
36829 	goto BeforeRet_;
36830 	}BeforeRet_: ;
36831 	return result;
36832 }
N_NIMCALL(void,genFieldCheck__cgen_19639)36833 N_LIB_PRIVATE N_NIMCALL(void, genFieldCheck__cgen_19639)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* obj, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field) {
36834 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA test;
36835 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA u;
36836 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA v;
36837 	nimZeroMem((void*)(&test), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36838 	nimZeroMem((void*)(&u), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36839 	nimZeroMem((void*)(&v), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
36840 	{
36841 		NI i;
36842 		NI colontmp_;
36843 		NI i_2;
36844 		i = (NI)0;
36845 		colontmp_ = (NI)0;
36846 		colontmp_ = len__ast_3198(e);
36847 		i_2 = ((NI) 1);
36848 		{
36849 			while (1) {
36850 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
36851 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* op;
36852 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* disc;
36853 				NimStringDesc* msg;
36854 				NimStringDesc* T14_;
36855 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* strLit;
36856 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T15_;
36857 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* discIndex;
36858 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T29_;
36859 				if (!(i_2 < colontmp_)) goto LA3;
36860 				i = i_2;
36861 				it = (*e)._kind_6.sons->data[i];
36862 				op = (*(*it)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
36863 				{
36864 					if (!((*op).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 96))) goto LA6_;
36865 					it = (*it)._kind_6.sons->data[((NI) 1)];
36866 				}
36867 				LA6_: ;
36868 				disc = skipConv__types_3588((*it)._kind_6.sons->data[((NI) 2)]);
36869 				initLoc__cgen_60((&test), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0), it, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
36870 				initLocExpr__cgen_11483(p, (*it)._kind_6.sons->data[((NI) 1)], (&u));
36871 				initLoc__cgen_60((&v), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), disc, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
36872 				v.r = obj;
36873 				add__ropes_162(&v.r, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128));
36874 				add__ropes_159(&v.r, (*(*disc)._kind_4.sym).loc.r);
36875 				genInExprAux__cgen_19633(p, it, (&u), (&v), (&test));
36876 				msg = ((NimStringDesc*) NIM_NIL);
36877 				{
36878 					NimStringDesc* T12_;
36879 					NimStringDesc* T13_;
36880 					if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 36))&63U)))!=0)) goto LA10_;
36881 					T12_ = NIM_NIL;
36882 					T13_ = NIM_NIL;
36883 					T13_ = toFileLineCol__msgs_619((*(*(*p).module).g).config, (*e).info);
36884 					T12_ = rawNewString((T13_ ? T13_->Sup.len : 0) + 1);
36885 appendString(T12_, T13_);
36886 appendString(T12_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
36887 					msg = resizeString(msg, (T12_ ? T12_->Sup.len : 0) + 0);
36888 appendString(msg, T12_);
36889 				}
36890 				LA10_: ;
36891 				T14_ = NIM_NIL;
36892 				T14_ = genFieldDefect__astmsgs_61((*(*(*p).module).g).config, (*(*field).name).s, (*disc)._kind_4.sym);
36893 				msg = resizeString(msg, (T14_ ? T14_->Sup.len : 0) + 0);
36894 appendString(msg, T14_);
36895 				T15_ = NIM_NIL;
36896 				T15_ = newStrNode__ast_3813(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20), msg);
36897 				strLit = genStringLiteral__cgen_608((*p).module, T15_);
36898 				{
36899 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T20_;
36900 					NimStringDesc* res;
36901 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
36902 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
36903 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
36904 					if (!((*op).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 96))) goto LA18_;
36905 					T20_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
36906 					T20_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
36907 					res = rawNewString(((NI) 80));
36908 					res = resizeString(res, 4);
36909 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
36910 					T21_ = NIM_NIL;
36911 					T21_ = rdLoc__cgen_425(test);
36912 					cgFormatValue__cgen_141((&res), T21_);
36913 					res = resizeString(res, 2);
36914 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_350));
36915 					T22_ = NIM_NIL;
36916 					T22_ = rope__ropes_109(res);
36917 					T23_ = NIM_NIL;
36918 					T23_ = indentLine__cgen_280(p, T22_);
36919 					add__ropes_159(T20_, T23_);
36920 				}
36921 				goto LA16_;
36922 				LA18_: ;
36923 				{
36924 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T25_;
36925 					NimStringDesc* res_2;
36926 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
36927 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
36928 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
36929 					T25_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
36930 					T25_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
36931 					res_2 = rawNewString(((NI) 80));
36932 					res_2 = resizeString(res_2, 6);
36933 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_424));
36934 					T26_ = NIM_NIL;
36935 					T26_ = rdLoc__cgen_425(test);
36936 					cgFormatValue__cgen_141((&res_2), T26_);
36937 					res_2 = resizeString(res_2, 3);
36938 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_425));
36939 					T27_ = NIM_NIL;
36940 					T27_ = rope__ropes_109(res_2);
36941 					T28_ = NIM_NIL;
36942 					T28_ = indentLine__cgen_280(p, T27_);
36943 					add__ropes_159(T25_, T28_);
36944 				}
36945 				LA16_: ;
36946 				T29_ = NIM_NIL;
36947 				T29_ = t__cgen_79(u);
36948 				discIndex = rdSetElemLoc__cgen_17579((*(*(*p).module).g).config, v, T29_);
36949 				{
36950 					if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA32_;
36951 					{
36952 						tyTuple__47w2DboNEPf69aPgubZdd7Q T36_;
36953 						NIM_BOOL T37_;
36954 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T40_;
36955 						NimStringDesc* res_3;
36956 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
36957 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
36958 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
36959 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
36960 						T36_ = getStdlibVersion__options_3889((*(*(*p).module).g).config);
36961 						T37_ = (NIM_BOOL)0;
36962 						T37_ = lt___cgen_19724(T36_, TM__MQdRN7fpbG7rPm4JpVVAhA_915);
36963 						if (!T37_) goto LA38_;
36964 						T40_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
36965 						T40_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
36966 						res_3 = rawNewString(((NI) 80));
36967 						res_3 = resizeString(res_3, 2);
36968 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_916));
36969 						T41_ = NIM_NIL;
36970 						T41_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_917));
36971 						cgFormatValue__cgen_141((&res_3), T41_);
36972 						res_3 = resizeString(res_3, 1);
36973 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
36974 						cgFormatValue__cgen_141((&res_3), strLit);
36975 						res_3 = resizeString(res_3, 3);
36976 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
36977 						T42_ = NIM_NIL;
36978 						T42_ = raiseInstr__cgen_414(p);
36979 						cgFormatValue__cgen_141((&res_3), T42_);
36980 						res_3 = resizeString(res_3, 2);
36981 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_306));
36982 						{
36983 							if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA45_;
36984 							res_3 = resizeString(res_3, 1);
36985 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
36986 						}
36987 						LA45_: ;
36988 						T47_ = NIM_NIL;
36989 						T47_ = rope__ropes_109(res_3);
36990 						T48_ = NIM_NIL;
36991 						T48_ = indentLine__cgen_280(p, T47_);
36992 						add__ropes_159(T40_, T48_);
36993 					}
36994 					goto LA34_;
36995 					LA38_: ;
36996 					{
36997 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T50_;
36998 						NimStringDesc* res_4;
36999 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
37000 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
37001 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
37002 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
37003 						T50_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
37004 						T50_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
37005 						res_4 = rawNewString(((NI) 80));
37006 						res_4 = resizeString(res_4, 2);
37007 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_916));
37008 						T51_ = NIM_NIL;
37009 						T51_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_918));
37010 						cgFormatValue__cgen_141((&res_4), T51_);
37011 						res_4 = resizeString(res_4, 1);
37012 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
37013 						cgFormatValue__cgen_141((&res_4), strLit);
37014 						res_4 = resizeString(res_4, 6);
37015 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_919));
37016 						cgFormatValue__cgen_141((&res_4), discIndex);
37017 						res_4 = resizeString(res_4, 3);
37018 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
37019 						T52_ = NIM_NIL;
37020 						T52_ = raiseInstr__cgen_414(p);
37021 						cgFormatValue__cgen_141((&res_4), T52_);
37022 						res_4 = resizeString(res_4, 2);
37023 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_306));
37024 						{
37025 							if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA55_;
37026 							res_4 = resizeString(res_4, 1);
37027 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
37028 						}
37029 						LA55_: ;
37030 						T57_ = NIM_NIL;
37031 						T57_ = rope__ropes_109(res_4);
37032 						T58_ = NIM_NIL;
37033 						T58_ = indentLine__cgen_280(p, T57_);
37034 						add__ropes_159(T50_, T58_);
37035 					}
37036 					LA34_: ;
37037 				}
37038 				goto LA30_;
37039 				LA32_: ;
37040 				{
37041 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA first;
37042 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* firstLit;
37043 					union { tyObject_Int128__9a9axPfb75jdWY25AamJewkA source; NI dest; } LOC60;
37044 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* discName;
37045 					first = firstOrd__types_1353((*(*(*p).module).g).config, (*(*disc)._kind_4.sym).typ);
37046 					LOC60.source = first;
37047 					firstLit = int64Literal__cgen_17583(((NI64) (LOC60.dest)));
37048 					discName = genTypeInfo__cgen_10280((*(*(*p).module).g).config, (*p).module, (*(*disc)._kind_4.sym).typ, (*e).info);
37049 					{
37050 						tyTuple__47w2DboNEPf69aPgubZdd7Q T63_;
37051 						NIM_BOOL T64_;
37052 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T67_;
37053 						NimStringDesc* res_5;
37054 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
37055 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T69_;
37056 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T74_;
37057 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T75_;
37058 						T63_ = getStdlibVersion__options_3889((*(*(*p).module).g).config);
37059 						T64_ = (NIM_BOOL)0;
37060 						T64_ = lt___cgen_19724(T63_, TM__MQdRN7fpbG7rPm4JpVVAhA_915);
37061 						if (!T64_) goto LA65_;
37062 						T67_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
37063 						T67_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
37064 						res_5 = rawNewString(((NI) 80));
37065 						res_5 = resizeString(res_5, 2);
37066 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_916));
37067 						T68_ = NIM_NIL;
37068 						T68_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_917));
37069 						cgFormatValue__cgen_141((&res_5), T68_);
37070 						res_5 = resizeString(res_5, 1);
37071 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
37072 						cgFormatValue__cgen_141((&res_5), strLit);
37073 						res_5 = resizeString(res_5, 3);
37074 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
37075 						T69_ = NIM_NIL;
37076 						T69_ = raiseInstr__cgen_414(p);
37077 						cgFormatValue__cgen_141((&res_5), T69_);
37078 						res_5 = resizeString(res_5, 2);
37079 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_306));
37080 						{
37081 							if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA72_;
37082 							res_5 = resizeString(res_5, 1);
37083 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
37084 						}
37085 						LA72_: ;
37086 						T74_ = NIM_NIL;
37087 						T74_ = rope__ropes_109(res_5);
37088 						T75_ = NIM_NIL;
37089 						T75_ = indentLine__cgen_280(p, T74_);
37090 						add__ropes_159(T67_, T75_);
37091 					}
37092 					goto LA61_;
37093 					LA65_: ;
37094 					{
37095 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T77_;
37096 						NimStringDesc* res_6;
37097 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T78_;
37098 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T79_;
37099 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T80_;
37100 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T85_;
37101 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T86_;
37102 						T77_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
37103 						T77_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
37104 						res_6 = rawNewString(((NI) 80));
37105 						res_6 = resizeString(res_6, 2);
37106 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_916));
37107 						T78_ = NIM_NIL;
37108 						T78_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_918));
37109 						cgFormatValue__cgen_141((&res_6), T78_);
37110 						res_6 = resizeString(res_6, 1);
37111 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
37112 						cgFormatValue__cgen_141((&res_6), strLit);
37113 						res_6 = resizeString(res_6, 2);
37114 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
37115 						T79_ = NIM_NIL;
37116 						T79_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_920));
37117 						cgFormatValue__cgen_141((&res_6), T79_);
37118 						res_6 = resizeString(res_6, 6);
37119 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_921));
37120 						cgFormatValue__cgen_141((&res_6), discIndex);
37121 						res_6 = resizeString(res_6, 8);
37122 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_922));
37123 						cgFormatValue__cgen_141((&res_6), firstLit);
37124 						res_6 = resizeString(res_6, 2);
37125 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
37126 						cgFormatValue__cgen_141((&res_6), discName);
37127 						res_6 = resizeString(res_6, 4);
37128 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_923));
37129 						T80_ = NIM_NIL;
37130 						T80_ = raiseInstr__cgen_414(p);
37131 						cgFormatValue__cgen_141((&res_6), T80_);
37132 						res_6 = resizeString(res_6, 2);
37133 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_306));
37134 						{
37135 							if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA83_;
37136 							res_6 = resizeString(res_6, 1);
37137 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
37138 						}
37139 						LA83_: ;
37140 						T85_ = NIM_NIL;
37141 						T85_ = rope__ropes_109(res_6);
37142 						T86_ = NIM_NIL;
37143 						T86_ = indentLine__cgen_280(p, T85_);
37144 						add__ropes_159(T77_, T86_);
37145 					}
37146 					LA61_: ;
37147 				}
37148 				LA30_: ;
37149 				i_2 += ((NI) 1);
37150 			} LA3: ;
37151 		}
37152 	}
37153 }
N_NIMCALL(void,genObjConstr__cgen_10361)37154 N_LIB_PRIVATE N_NIMCALL(void, genObjConstr__cgen_10361)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
37155 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
37156 	NIM_BOOL isRef;
37157 	NIM_BOOL useTemp;
37158 	NIM_BOOL T14_;
37159 	NIM_BOOL T15_;
37160 	tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w T18_;
37161 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
37162 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
37163 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
37164 	tyObject_TType__facALICuu8zUj0hjvbTLFg* ty;
37165 {	{
37166 		NIM_BOOL T3_;
37167 		NIM_BOOL T4_;
37168 		T3_ = (NIM_BOOL)0;
37169 		T4_ = (NIM_BOOL)0;
37170 		T4_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
37171 		if (T4_) goto LA5_;
37172 		T4_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
37173 		LA5_: ;
37174 		T3_ = !(T4_);
37175 		if (!(T3_)) goto LA6_;
37176 		T3_ = !((((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0));
37177 		LA6_: ;
37178 		if (!T3_) goto LA7_;
37179 		{
37180 			NIM_BOOL T11_;
37181 			T11_ = (NIM_BOOL)0;
37182 			T11_ = handleConstExpr__cgen_20991(p, e, d);
37183 			if (!T11_) goto LA12_;
37184 			goto BeforeRet_;
37185 		}
37186 		LA12_: ;
37187 	}
37188 	LA7_: ;
37189 	t = skipTypes__ast_3735((*e).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
37190 	isRef = ((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22));
37191 	T14_ = (NIM_BOOL)0;
37192 	T15_ = (NIM_BOOL)0;
37193 	T15_ = isRef;
37194 	if (T15_) goto LA16_;
37195 	T15_ = !(((62 &((NU16)1<<((NU)((*d).k)&15U)))!=0));
37196 	LA16_: ;
37197 	T14_ = T15_;
37198 	if (T14_) goto LA17_;
37199 	T18_ = (tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w)0;
37200 	T18_ = isPartOf__aliases_129((*d).lode, e);
37201 	T14_ = !((T18_ == ((tyEnum_TAnalysisResult__p9a9bcrXoRmLT4eUuwrDq9b4w) 0)));
37202 	LA17_: ;
37203 	useTemp = T14_;
37204 	nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37205 	r = NIM_NIL;
37206 	{
37207 		if (!useTemp) goto LA21_;
37208 		getTemp__cgen_7343(p, t, (&tmp), NIM_FALSE);
37209 		r = rdLoc__cgen_425(tmp);
37210 		{
37211 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T27_;
37212 			tyArray__JiWwrsTRC6xqNlGcBthSVA T28_;
37213 			if (!isRef) goto LA25_;
37214 			rawGenNew__cgen_20634(p, (&tmp), ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL), !((((*e).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 1))&31U)))!=0)));
37215 			T27_ = NIM_NIL;
37216 			T27_ = lastSon__ast_3743(t);
37217 			t = skipTypes__ast_3735(T27_, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
37218 			nimZeroMem((void*)T28_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
37219 			T28_[0] = r;
37220 			r = percent___cgen_432(T28_, 1);
37221 			gcUsage__cgen_20362((*(*(*p).module).g).config, e);
37222 		}
37223 		goto LA23_;
37224 		LA25_: ;
37225 		{
37226 			constructLoc__cgen_10922(p, (&tmp), NIM_FALSE);
37227 		}
37228 		LA23_: ;
37229 	}
37230 	goto LA19_;
37231 	LA21_: ;
37232 	{
37233 		resetLoc__cgen_10832(p, d);
37234 		r = rdLoc__cgen_425((*d));
37235 	}
37236 	LA19_: ;
37237 	T31_ = NIM_NIL;
37238 	T31_ = getTypeDesc__cgen_6631((*p).module, t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
37239 	(void)(T31_);
37240 	ty = t;
37241 	{
37242 		NI i;
37243 		NI colontmp_;
37244 		NI i_2;
37245 		i = (NI)0;
37246 		colontmp_ = (NI)0;
37247 		colontmp_ = len__ast_3198(e);
37248 		i_2 = ((NI) 1);
37249 		{
37250 			while (1) {
37251 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
37252 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp2;
37253 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
37254 				if (!(i_2 < colontmp_)) goto LA34;
37255 				i = i_2;
37256 				it = (*e)._kind_6.sons->data[i];
37257 				nimZeroMem((void*)(&tmp2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37258 				tmp2.r = r;
37259 				field = lookupFieldAgain__cgen_19537(p, ty, (*(*it)._kind_6.sons->data[((NI) 0)])._kind_4.sym, &tmp2.r, ((tyObject_TType__facALICuu8zUj0hjvbTLFg**) NIM_NIL));
37260 				{
37261 					if (!((*field).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA37_;
37262 					fillObjectFields__cgen_3777((*p).module, ty);
37263 				}
37264 				LA37_: ;
37265 				{
37266 					if (!((*field).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA41_;
37267 					internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_913), TM__MQdRN7fpbG7rPm4JpVVAhA_914);
37268 				}
37269 				LA41_: ;
37270 				{
37271 					NIM_BOOL T45_;
37272 					NI T46_;
37273 					T45_ = (NIM_BOOL)0;
37274 					T46_ = (NI)0;
37275 					T46_ = len__ast_3198(it);
37276 					T45_ = (T46_ == ((NI) 3));
37277 					if (!(T45_)) goto LA47_;
37278 					T45_ = (((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 2))&31U)))!=0);
37279 					LA47_: ;
37280 					if (!T45_) goto LA48_;
37281 					genFieldCheck__cgen_19639(p, (*it)._kind_6.sons->data[((NI) 2)], r, field);
37282 				}
37283 				LA48_: ;
37284 				add__ropes_162(&tmp2.r, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128));
37285 				add__ropes_159(&tmp2.r, (*field).loc.r);
37286 				{
37287 					if (!useTemp) goto LA52_;
37288 					tmp2.k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1);
37289 					{
37290 						if (!isRef) goto LA56_;
37291 						tmp2.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3);
37292 					}
37293 					goto LA54_;
37294 					LA56_: ;
37295 					{
37296 						tmp2.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2);
37297 					}
37298 					LA54_: ;
37299 				}
37300 				goto LA50_;
37301 				LA52_: ;
37302 				{
37303 					tmp2.k = (*d).k;
37304 					{
37305 						if (!isRef) goto LA62_;
37306 						tmp2.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3);
37307 					}
37308 					goto LA60_;
37309 					LA62_: ;
37310 					{
37311 						tmp2.storage = (*d).storage;
37312 					}
37313 					LA60_: ;
37314 				}
37315 				LA50_: ;
37316 				tmp2.lode = (*it)._kind_6.sons->data[((NI) 1)];
37317 				expr__cgen_11460(p, (*it)._kind_6.sons->data[((NI) 1)], (&tmp2));
37318 				i_2 += ((NI) 1);
37319 			} LA34: ;
37320 		}
37321 	}
37322 	{
37323 		if (!useTemp) goto LA67_;
37324 		{
37325 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA71_;
37326 			genericAssign((void*)(&(*d)), (void*)(&tmp), (&NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_));
37327 		}
37328 		goto LA69_;
37329 		LA71_: ;
37330 		{
37331 			genAssignment__cgen_10369(p, (*d), tmp, 0);
37332 		}
37333 		LA69_: ;
37334 	}
37335 	LA67_: ;
37336 	}BeforeRet_: ;
37337 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22773)37338 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22773)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
37339 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
37340 	result = NIM_NIL;
37341 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_924), args, argsLen_0);
37342 	return result;
37343 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_22793)37344 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_22793)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
37345 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
37346 	result = NIM_NIL;
37347 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_928), args, argsLen_0);
37348 	return result;
37349 }
N_NIMCALL(void,genCast__cgen_22751)37350 N_LIB_PRIVATE N_NIMCALL(void, genCast__cgen_22751)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
37351 	tyObject_TType__facALICuu8zUj0hjvbTLFg* destt;
37352 	tyObject_TType__facALICuu8zUj0hjvbTLFg* srct;
37353 	destt = skipTypes__ast_3735((*e).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_574);
37354 	srct = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 1)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_574);
37355 	{
37356 		NIM_BOOL T3_;
37357 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lbl;
37358 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
37359 		tyArray__JiWwrsTRC6xqNlGcBthSVA T7_;
37360 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T8_;
37361 		NimStringDesc* res;
37362 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
37363 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
37364 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
37365 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
37366 		tyArray__JiWwrsTRC6xqNlGcBthSVA T17_;
37367 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
37368 		T3_ = (NIM_BOOL)0;
37369 		T3_ = ((*destt).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) && (*destt).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39) || (*destt).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18) || (*destt).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17) || (*destt).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16));
37370 		if (T3_) goto LA4_;
37371 		T3_ = ((*srct).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) && (*srct).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39) || (*srct).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18) || (*srct).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17) || (*srct).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16));
37372 		LA4_: ;
37373 		if (!T3_) goto LA5_;
37374 		(*p).labels += ((NI) 1);
37375 		lbl = rope__ropes_115(((NI64) ((*p).labels)));
37376 		nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37377 		nimZeroMem((void*)T7_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
37378 		T7_[0] = lbl;
37379 		tmp.r = percent___cgen_22773(T7_, 1);
37380 		T8_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
37381 		T8_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
37382 		res = rawNewString(((NI) 80));
37383 		res = resizeString(res, 8);
37384 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_925));
37385 		T9_ = NIM_NIL;
37386 		T9_ = getTypeDesc__cgen_6631((*p).module, (*(*e)._kind_6.sons->data[((NI) 1)]).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
37387 		cgFormatValue__cgen_141((&res), T9_);
37388 		res = resizeString(res, 9);
37389 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_926));
37390 		T10_ = NIM_NIL;
37391 		T10_ = getTypeDesc__cgen_6631((*p).module, (*e).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
37392 		cgFormatValue__cgen_141((&res), T10_);
37393 		res = resizeString(res, 12);
37394 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_927));
37395 		cgFormatValue__cgen_141((&res), lbl);
37396 		res = resizeString(res, 1);
37397 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
37398 		{
37399 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA13_;
37400 			res = resizeString(res, 1);
37401 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
37402 		}
37403 		LA13_: ;
37404 		T15_ = NIM_NIL;
37405 		T15_ = rope__ropes_109(res);
37406 		T16_ = NIM_NIL;
37407 		T16_ = indentLine__cgen_280(p, T15_);
37408 		add__ropes_159(T8_, T16_);
37409 		tmp.k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6);
37410 		tmp.lode = lodeTyp__cgen_86(srct);
37411 		tmp.storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2);
37412 		tmp.flags = 0;
37413 		expr__cgen_11460(p, (*e)._kind_6.sons->data[((NI) 1)], (&tmp));
37414 		nimZeroMem((void*)T17_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
37415 		T17_[0] = lbl;
37416 		T18_ = NIM_NIL;
37417 		T18_ = percent___cgen_22793(T17_, 1);
37418 		putIntoDest__cgen_18656(p, d, e, T18_, tmp.storage);
37419 	}
37420 	goto LA1_;
37421 	LA5_: ;
37422 	{
37423 		genSomeCast__cgen_22664(p, e, d);
37424 	}
37425 	LA1_: ;
37426 }
N_NIMCALL(void,genConv__cgen_22872)37427 N_LIB_PRIVATE N_NIMCALL(void, genConv__cgen_22872)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
37428 	tyObject_TType__facALICuu8zUj0hjvbTLFg* destType;
37429 	destType = skipTypes__ast_3735((*e).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_929);
37430 	{
37431 		NIM_BOOL T3_;
37432 		T3_ = (NIM_BOOL)0;
37433 		T3_ = sameBackendType__types_2641(destType, (*(*e)._kind_6.sons->data[((NI) 1)]).typ);
37434 		if (!T3_) goto LA4_;
37435 		expr__cgen_11460(p, (*e)._kind_6.sons->data[((NI) 1)], d);
37436 	}
37437 	goto LA1_;
37438 	LA4_: ;
37439 	{
37440 		genSomeCast__cgen_22664(p, e, d);
37441 	}
37442 	LA1_: ;
37443 }
N_INLINE(NIM_BOOL,isCppRef__cgen_19286)37444 static N_INLINE(NIM_BOOL, isCppRef__cgen_19286)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ) {
37445 	NIM_BOOL result;
37446 	NIM_BOOL T1_;
37447 	NIM_BOOL T2_;
37448 	NIM_BOOL T3_;
37449 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
37450 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T8_;
37451 	result = (NIM_BOOL)0;
37452 	T1_ = (NIM_BOOL)0;
37453 	T2_ = (NIM_BOOL)0;
37454 	T3_ = (NIM_BOOL)0;
37455 	T3_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
37456 	if (T3_) goto LA4_;
37457 	T3_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
37458 	LA4_: ;
37459 	T2_ = T3_;
37460 	if (!(T2_)) goto LA5_;
37461 	T6_ = NIM_NIL;
37462 	T6_ = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
37463 	T2_ = ((*T6_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
37464 	LA5_: ;
37465 	T1_ = T2_;
37466 	if (!(T1_)) goto LA7_;
37467 	T8_ = NIM_NIL;
37468 	T8_ = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
37469 	T1_ = !((((*T8_).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 20))&63U)))!=0));
37470 	LA7_: ;
37471 	result = T1_;
37472 	return result;
37473 }
N_NIMCALL(void,genAddr__cgen_19464)37474 N_LIB_PRIVATE N_NIMCALL(void, genAddr__cgen_19464)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
37475 	{
37476 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T3_;
37477 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
37478 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
37479 		T3_ = NIM_NIL;
37480 		T3_ = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
37481 		if (!((*T3_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*T3_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21))) goto LA4_;
37482 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37483 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 0)], (&a));
37484 		T6_ = NIM_NIL;
37485 		T6_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_473), a.r);
37486 		putIntoDest__cgen_18656(p, d, e, T6_, a.storage);
37487 	}
37488 	goto LA1_;
37489 	LA4_: ;
37490 	{
37491 		NIM_BOOL T8_;
37492 		tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw T9_;
37493 		tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w T15_;
37494 		T8_ = (NIM_BOOL)0;
37495 		T9_ = (tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw)0;
37496 		{
37497 			if (!((*(*e)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA12_;
37498 			T9_ = (*(*(*e)._kind_6.sons->data[((NI) 0)])._kind_4.sym).kind;
37499 		}
37500 		goto LA10_;
37501 		LA12_: ;
37502 		{
37503 			T9_ = ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8);
37504 		}
37505 		LA10_: ;
37506 		T15_ = (tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w)0;
37507 		T15_ = mapType__cgen_1209((*(*(*p).module).g).config, (*(*e)._kind_6.sons->data[((NI) 0)]).typ, T9_);
37508 		T8_ = (T15_ == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 17));
37509 		if (T8_) goto LA16_;
37510 		T8_ = isCppRef__cgen_19286(p, (*e).typ);
37511 		LA16_: ;
37512 		if (!T8_) goto LA17_;
37513 		expr__cgen_11460(p, (*e)._kind_6.sons->data[((NI) 0)], d);
37514 	}
37515 	goto LA1_;
37516 	LA17_: ;
37517 	{
37518 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_2;
37519 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
37520 		nimZeroMem((void*)(&a_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37521 		initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 0)], (&a_2));
37522 		T20_ = NIM_NIL;
37523 		T20_ = addrLoc__cgen_10303((*(*(*p).module).g).config, a_2);
37524 		putIntoDest__cgen_18656(p, d, e, T20_, a_2.storage);
37525 	}
37526 	LA1_: ;
37527 }
N_NIMCALL(void,genUncheckedArrayElem__cgen_19859)37528 N_LIB_PRIVATE N_NIMCALL(void, genUncheckedArrayElem__cgen_19859)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
37529 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
37530 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
37531 	NimStringDesc* res;
37532 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
37533 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
37534 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
37535 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37536 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37537 	initLocExpr__cgen_11483(p, x, (&a));
37538 	initLocExpr__cgen_11483(p, y, (&b));
37539 	{
37540 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA3_;
37541 		(*d).storage = a.storage;
37542 	}
37543 	LA3_: ;
37544 	res = rawNewString(((NI) 80));
37545 	T5_ = NIM_NIL;
37546 	T5_ = rdLoc__cgen_425(a);
37547 	cgFormatValue__cgen_141((&res), T5_);
37548 	res = resizeString(res, 1);
37549 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
37550 	T6_ = NIM_NIL;
37551 	T6_ = rdCharLoc__cgen_10343(b);
37552 	cgFormatValue__cgen_141((&res), T6_);
37553 	res = resizeString(res, 1);
37554 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
37555 	T7_ = NIM_NIL;
37556 	T7_ = rope__ropes_109(res);
37557 	putIntoDest__cgen_18656(p, d, n, T7_, a.storage);
37558 }
N_NIMCALL(void,genArrayElem__cgen_19880)37559 N_LIB_PRIVATE N_NIMCALL(void, genArrayElem__cgen_19880)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
37560 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
37561 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
37562 	tyObject_TType__facALICuu8zUj0hjvbTLFg* ty;
37563 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
37564 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* first;
37565 	tyObject_Int128__9a9axPfb75jdWY25AamJewkA T2_;
37566 	NimStringDesc* res_3;
37567 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T94_;
37568 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T95_;
37569 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T96_;
37570 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37571 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37572 	initLocExpr__cgen_11483(p, x, (&a));
37573 	initLocExpr__cgen_11483(p, y, (&b));
37574 	T1_ = NIM_NIL;
37575 	T1_ = t__cgen_79(a);
37576 	ty = skipTypes__ast_3735(T1_, TM__MQdRN7fpbG7rPm4JpVVAhA_931);
37577 	T2_ = firstOrd__types_1353((*(*(*p).module).g).config, ty);
37578 	first = intLiteral__cgen_17635(T2_);
37579 	{
37580 		NIM_BOOL T5_;
37581 		T5_ = (NIM_BOOL)0;
37582 		T5_ = (((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 4))&31U)))!=0);
37583 		if (!(T5_)) goto LA6_;
37584 		T5_ = !(((*ty).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 49)));
37585 		LA6_: ;
37586 		if (!T5_) goto LA7_;
37587 		{
37588 			NIM_BOOL T11_;
37589 			T11_ = (NIM_BOOL)0;
37590 			T11_ = isConstExpr__trees_146(y);
37591 			if (!!(T11_)) goto LA12_;
37592 			{
37593 				NIM_BOOL T16_;
37594 				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T17_;
37595 				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T19_;
37596 				T16_ = (NIM_BOOL)0;
37597 				T17_ = firstOrd__types_1353((*(*(*p).module).g).config, ty);
37598 				T16_ = eqeq___int495056_759(T17_, IL64(0));
37599 				if (!(T16_)) goto LA18_;
37600 				T19_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
37601 				T16_ = lteq___int495056_752(IL64(0), T19_);
37602 				LA18_: ;
37603 				if (!T16_) goto LA20_;
37604 				{
37605 					NIM_BOOL T24_;
37606 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T25_;
37607 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T26_;
37608 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T27_;
37609 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T29_;
37610 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T30_;
37611 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T31_;
37612 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T34_;
37613 					NimStringDesc* res;
37614 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
37615 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T36_;
37616 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
37617 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
37618 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
37619 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T40_;
37620 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
37621 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
37622 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
37623 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
37624 					T24_ = (NIM_BOOL)0;
37625 					T25_ = NIM_NIL;
37626 					T25_ = t__cgen_79(b);
37627 					T26_ = firstOrd__types_1353((*(*(*p).module).g).config, T25_);
37628 					T27_ = firstOrd__types_1353((*(*(*p).module).g).config, ty);
37629 					T24_ = lt___int495056_305(T26_, T27_);
37630 					if (T24_) goto LA28_;
37631 					T29_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
37632 					T30_ = NIM_NIL;
37633 					T30_ = t__cgen_79(b);
37634 					T31_ = lastOrd__types_1465((*(*(*p).module).g).config, T30_);
37635 					T24_ = lt___int495056_305(T29_, T31_);
37636 					LA28_: ;
37637 					if (!T24_) goto LA32_;
37638 					T34_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
37639 					T34_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
37640 					res = rawNewString(((NI) 80));
37641 					res = resizeString(res, 9);
37642 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_932));
37643 					T35_ = NIM_NIL;
37644 					T35_ = rdCharLoc__cgen_10343(b);
37645 					cgFormatValue__cgen_141((&res), T35_);
37646 					res = resizeString(res, 9);
37647 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_933));
37648 					T36_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
37649 					T37_ = NIM_NIL;
37650 					T37_ = intLiteral__cgen_17635(T36_);
37651 					cgFormatValue__cgen_141((&res), T37_);
37652 					res = resizeString(res, 4);
37653 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_580));
37654 					T38_ = NIM_NIL;
37655 					T38_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_934));
37656 					cgFormatValue__cgen_141((&res), T38_);
37657 					res = resizeString(res, 1);
37658 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
37659 					T39_ = NIM_NIL;
37660 					T39_ = rdCharLoc__cgen_10343(b);
37661 					cgFormatValue__cgen_141((&res), T39_);
37662 					res = resizeString(res, 2);
37663 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
37664 					T40_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
37665 					T41_ = NIM_NIL;
37666 					T41_ = intLiteral__cgen_17635(T40_);
37667 					cgFormatValue__cgen_141((&res), T41_);
37668 					res = resizeString(res, 3);
37669 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
37670 					T42_ = NIM_NIL;
37671 					T42_ = raiseInstr__cgen_414(p);
37672 					cgFormatValue__cgen_141((&res), T42_);
37673 					res = resizeString(res, 1);
37674 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
37675 					{
37676 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA45_;
37677 						res = resizeString(res, 1);
37678 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
37679 					}
37680 					LA45_: ;
37681 					T47_ = NIM_NIL;
37682 					T47_ = rope__ropes_109(res);
37683 					T48_ = NIM_NIL;
37684 					T48_ = indentLine__cgen_280(p, T47_);
37685 					add__ropes_159(T34_, T48_);
37686 				}
37687 				LA32_: ;
37688 			}
37689 			goto LA14_;
37690 			LA20_: ;
37691 			{
37692 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T50_;
37693 				NimStringDesc* res_2;
37694 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
37695 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
37696 				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T53_;
37697 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
37698 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T55_;
37699 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
37700 				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T57_;
37701 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
37702 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
37703 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
37704 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T65_;
37705 				T50_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
37706 				T50_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
37707 				res_2 = rawNewString(((NI) 80));
37708 				res_2 = resizeString(res_2, 4);
37709 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
37710 				T51_ = NIM_NIL;
37711 				T51_ = rdCharLoc__cgen_10343(b);
37712 				cgFormatValue__cgen_141((&res_2), T51_);
37713 				res_2 = resizeString(res_2, 3);
37714 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_177));
37715 				cgFormatValue__cgen_141((&res_2), first);
37716 				res_2 = resizeString(res_2, 4);
37717 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_578));
37718 				T52_ = NIM_NIL;
37719 				T52_ = rdCharLoc__cgen_10343(b);
37720 				cgFormatValue__cgen_141((&res_2), T52_);
37721 				res_2 = resizeString(res_2, 3);
37722 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_579));
37723 				T53_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
37724 				T54_ = NIM_NIL;
37725 				T54_ = intLiteral__cgen_17635(T53_);
37726 				cgFormatValue__cgen_141((&res_2), T54_);
37727 				res_2 = resizeString(res_2, 3);
37728 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_640));
37729 				T55_ = NIM_NIL;
37730 				T55_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_935));
37731 				cgFormatValue__cgen_141((&res_2), T55_);
37732 				res_2 = resizeString(res_2, 1);
37733 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
37734 				T56_ = NIM_NIL;
37735 				T56_ = rdCharLoc__cgen_10343(b);
37736 				cgFormatValue__cgen_141((&res_2), T56_);
37737 				res_2 = resizeString(res_2, 2);
37738 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
37739 				cgFormatValue__cgen_141((&res_2), first);
37740 				res_2 = resizeString(res_2, 2);
37741 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
37742 				T57_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
37743 				T58_ = NIM_NIL;
37744 				T58_ = intLiteral__cgen_17635(T57_);
37745 				cgFormatValue__cgen_141((&res_2), T58_);
37746 				res_2 = resizeString(res_2, 3);
37747 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
37748 				T59_ = NIM_NIL;
37749 				T59_ = raiseInstr__cgen_414(p);
37750 				cgFormatValue__cgen_141((&res_2), T59_);
37751 				res_2 = resizeString(res_2, 1);
37752 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
37753 				{
37754 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA62_;
37755 					res_2 = resizeString(res_2, 1);
37756 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
37757 				}
37758 				LA62_: ;
37759 				T64_ = NIM_NIL;
37760 				T64_ = rope__ropes_109(res_2);
37761 				T65_ = NIM_NIL;
37762 				T65_ = indentLine__cgen_280(p, T64_);
37763 				add__ropes_159(T50_, T65_);
37764 			}
37765 			LA14_: ;
37766 		}
37767 		goto LA9_;
37768 		LA12_: ;
37769 		{
37770 			tyObject_Int128__9a9axPfb75jdWY25AamJewkA idx;
37771 			idx = getOrdValue__types_161(y, Max__int495056_27);
37772 			{
37773 				NIM_BOOL T69_;
37774 				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T70_;
37775 				tyObject_Int128__9a9axPfb75jdWY25AamJewkA T72_;
37776 				NimStringDesc* T75_;
37777 				T69_ = (NIM_BOOL)0;
37778 				T70_ = firstOrd__types_1353((*(*(*p).module).g).config, ty);
37779 				T69_ = lt___int495056_305(idx, T70_);
37780 				if (T69_) goto LA71_;
37781 				T72_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
37782 				T69_ = lt___int495056_305(T72_, idx);
37783 				LA71_: ;
37784 				if (!T69_) goto LA73_;
37785 				T75_ = NIM_NIL;
37786 				{
37787 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T78_;
37788 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T79_;
37789 					NIM_BOOL T80_;
37790 					T78_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
37791 					T79_ = firstOrd__types_1353((*(*(*p).module).g).config, ty);
37792 					T80_ = (NIM_BOOL)0;
37793 					T80_ = lt___int495056_305(T78_, T79_);
37794 					if (!T80_) goto LA81_;
37795 					T75_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_936));
37796 				}
37797 				goto LA76_;
37798 				LA81_: ;
37799 				{
37800 					NimStringDesc* T84_;
37801 					NimStringDesc* T85_;
37802 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T86_;
37803 					NimStringDesc* T87_;
37804 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T88_;
37805 					NimStringDesc* T89_;
37806 					T84_ = NIM_NIL;
37807 					T85_ = NIM_NIL;
37808 					T85_ = dollar___int495056_53(idx);
37809 					T86_ = firstOrd__types_1353((*(*(*p).module).g).config, ty);
37810 					T87_ = NIM_NIL;
37811 					T87_ = dollar___int495056_53(T86_);
37812 					T88_ = lastOrd__types_1465((*(*(*p).module).g).config, ty);
37813 					T89_ = NIM_NIL;
37814 					T89_ = dollar___int495056_53(T88_);
37815 					T84_ = rawNewString((T85_ ? T85_->Sup.len : 0) + (T87_ ? T87_->Sup.len : 0) + (T89_ ? T89_->Sup.len : 0) + 18);
37816 appendString(T84_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_937));
37817 appendString(T84_, T85_);
37818 appendString(T84_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_938));
37819 appendString(T84_, T87_);
37820 appendString(T84_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_939));
37821 appendString(T84_, T89_);
37822 					T75_ = T84_;
37823 				}
37824 				LA76_: ;
37825 				liMessage__msgs_1118((*(*(*p).module).g).config, (*x).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T75_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_940, NIM_FALSE);
37826 			}
37827 			LA73_: ;
37828 		}
37829 		LA9_: ;
37830 	}
37831 	LA7_: ;
37832 	{
37833 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA92_;
37834 		(*d).storage = a.storage;
37835 	}
37836 	LA92_: ;
37837 	res_3 = rawNewString(((NI) 80));
37838 	T94_ = NIM_NIL;
37839 	T94_ = rdLoc__cgen_425(a);
37840 	cgFormatValue__cgen_141((&res_3), T94_);
37841 	res_3 = resizeString(res_3, 2);
37842 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_941));
37843 	T95_ = NIM_NIL;
37844 	T95_ = rdCharLoc__cgen_10343(b);
37845 	cgFormatValue__cgen_141((&res_3), T95_);
37846 	res_3 = resizeString(res_3, 3);
37847 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_942));
37848 	cgFormatValue__cgen_141((&res_3), first);
37849 	res_3 = resizeString(res_3, 1);
37850 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
37851 	T96_ = NIM_NIL;
37852 	T96_ = rope__ropes_109(res_3);
37853 	putIntoDest__cgen_18656(p, d, n, T96_, a.storage);
37854 }
N_NIMCALL(void,genOpenArrayElem__cgen_20027)37855 N_LIB_PRIVATE N_NIMCALL(void, genOpenArrayElem__cgen_20027)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
37856 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
37857 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
37858 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37859 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
37860 	initLocExpr__cgen_11483(p, x, (&a));
37861 	initLocExpr__cgen_11483(p, y, (&b));
37862 	{
37863 		NIM_BOOL T3_;
37864 		NimStringDesc* res_2;
37865 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
37866 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
37867 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
37868 		T3_ = (NIM_BOOL)0;
37869 		T3_ = reifiedOpenArray__cgen_11738(x);
37870 		if (!!(T3_)) goto LA4_;
37871 		{
37872 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
37873 			NimStringDesc* res;
37874 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
37875 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
37876 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
37877 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
37878 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
37879 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
37880 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
37881 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
37882 			if (!(((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 4))&31U)))!=0)) goto LA8_;
37883 			T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
37884 			T10_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
37885 			res = rawNewString(((NI) 80));
37886 			res = resizeString(res, 9);
37887 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_932));
37888 			T11_ = NIM_NIL;
37889 			T11_ = rdCharLoc__cgen_10343(b);
37890 			cgFormatValue__cgen_141((&res), T11_);
37891 			res = resizeString(res, 10);
37892 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_564));
37893 			T12_ = NIM_NIL;
37894 			T12_ = rdLoc__cgen_425(a);
37895 			cgFormatValue__cgen_141((&res), T12_);
37896 			res = resizeString(res, 9);
37897 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_943));
37898 			T13_ = NIM_NIL;
37899 			T13_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_934));
37900 			cgFormatValue__cgen_141((&res), T13_);
37901 			res = resizeString(res, 1);
37902 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
37903 			T14_ = NIM_NIL;
37904 			T14_ = rdCharLoc__cgen_10343(b);
37905 			cgFormatValue__cgen_141((&res), T14_);
37906 			res = resizeString(res, 1);
37907 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_944));
37908 			T15_ = NIM_NIL;
37909 			T15_ = rdLoc__cgen_425(a);
37910 			cgFormatValue__cgen_141((&res), T15_);
37911 			res = resizeString(res, 10);
37912 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_945));
37913 			T16_ = NIM_NIL;
37914 			T16_ = raiseInstr__cgen_414(p);
37915 			cgFormatValue__cgen_141((&res), T16_);
37916 			res = resizeString(res, 1);
37917 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
37918 			{
37919 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA19_;
37920 				res = resizeString(res, 1);
37921 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
37922 			}
37923 			LA19_: ;
37924 			T21_ = NIM_NIL;
37925 			T21_ = rope__ropes_109(res);
37926 			T22_ = NIM_NIL;
37927 			T22_ = indentLine__cgen_280(p, T21_);
37928 			add__ropes_159(T10_, T22_);
37929 		}
37930 		LA8_: ;
37931 		{
37932 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA25_;
37933 			(*d).storage = a.storage;
37934 		}
37935 		LA25_: ;
37936 		res_2 = rawNewString(((NI) 80));
37937 		T27_ = NIM_NIL;
37938 		T27_ = rdLoc__cgen_425(a);
37939 		cgFormatValue__cgen_141((&res_2), T27_);
37940 		res_2 = resizeString(res_2, 1);
37941 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
37942 		T28_ = NIM_NIL;
37943 		T28_ = rdCharLoc__cgen_10343(b);
37944 		cgFormatValue__cgen_141((&res_2), T28_);
37945 		res_2 = resizeString(res_2, 1);
37946 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
37947 		T29_ = NIM_NIL;
37948 		T29_ = rope__ropes_109(res_2);
37949 		putIntoDest__cgen_18656(p, d, n, T29_, a.storage);
37950 	}
37951 	goto LA1_;
37952 	LA4_: ;
37953 	{
37954 		NimStringDesc* res_4;
37955 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
37956 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
37957 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
37958 		{
37959 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T35_;
37960 			NimStringDesc* res_3;
37961 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
37962 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
37963 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
37964 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
37965 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
37966 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
37967 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
37968 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
37969 			if (!(((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 4))&31U)))!=0)) goto LA33_;
37970 			T35_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
37971 			T35_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
37972 			res_3 = rawNewString(((NI) 80));
37973 			res_3 = resizeString(res_3, 9);
37974 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_932));
37975 			T36_ = NIM_NIL;
37976 			T36_ = rdCharLoc__cgen_10343(b);
37977 			cgFormatValue__cgen_141((&res_3), T36_);
37978 			res_3 = resizeString(res_3, 10);
37979 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_564));
37980 			T37_ = NIM_NIL;
37981 			T37_ = rdLoc__cgen_425(a);
37982 			cgFormatValue__cgen_141((&res_3), T37_);
37983 			res_3 = resizeString(res_3, 11);
37984 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_946));
37985 			T38_ = NIM_NIL;
37986 			T38_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_934));
37987 			cgFormatValue__cgen_141((&res_3), T38_);
37988 			res_3 = resizeString(res_3, 1);
37989 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
37990 			T39_ = NIM_NIL;
37991 			T39_ = rdCharLoc__cgen_10343(b);
37992 			cgFormatValue__cgen_141((&res_3), T39_);
37993 			res_3 = resizeString(res_3, 1);
37994 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_944));
37995 			T40_ = NIM_NIL;
37996 			T40_ = rdLoc__cgen_425(a);
37997 			cgFormatValue__cgen_141((&res_3), T40_);
37998 			res_3 = resizeString(res_3, 12);
37999 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_947));
38000 			T41_ = NIM_NIL;
38001 			T41_ = raiseInstr__cgen_414(p);
38002 			cgFormatValue__cgen_141((&res_3), T41_);
38003 			res_3 = resizeString(res_3, 1);
38004 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
38005 			{
38006 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA44_;
38007 				res_3 = resizeString(res_3, 1);
38008 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
38009 			}
38010 			LA44_: ;
38011 			T46_ = NIM_NIL;
38012 			T46_ = rope__ropes_109(res_3);
38013 			T47_ = NIM_NIL;
38014 			T47_ = indentLine__cgen_280(p, T46_);
38015 			add__ropes_159(T35_, T47_);
38016 		}
38017 		LA33_: ;
38018 		{
38019 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA50_;
38020 			(*d).storage = a.storage;
38021 		}
38022 		LA50_: ;
38023 		res_4 = rawNewString(((NI) 80));
38024 		T52_ = NIM_NIL;
38025 		T52_ = rdLoc__cgen_425(a);
38026 		cgFormatValue__cgen_141((&res_4), T52_);
38027 		res_4 = resizeString(res_4, 8);
38028 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_948));
38029 		T53_ = NIM_NIL;
38030 		T53_ = rdCharLoc__cgen_10343(b);
38031 		cgFormatValue__cgen_141((&res_4), T53_);
38032 		res_4 = resizeString(res_4, 1);
38033 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
38034 		T54_ = NIM_NIL;
38035 		T54_ = rope__ropes_109(res_4);
38036 		putIntoDest__cgen_18656(p, d, n, T54_, a.storage);
38037 	}
38038 	LA1_: ;
38039 }
N_NIMCALL(void,genSeqElem__cgen_20095)38040 N_LIB_PRIVATE N_NIMCALL(void, genSeqElem__cgen_20095)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
38041 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
38042 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
38043 	tyObject_TType__facALICuu8zUj0hjvbTLFg* ty;
38044 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
38045 	NimStringDesc* res_4;
38046 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
38047 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
38048 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
38049 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
38050 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
38051 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
38052 	initLocExpr__cgen_11483(p, x, (&a));
38053 	initLocExpr__cgen_11483(p, y, (&b));
38054 	T1_ = NIM_NIL;
38055 	T1_ = t__cgen_79(a);
38056 	ty = skipTypes__ast_3735(T1_, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
38057 	{
38058 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
38059 		if (!((*ty).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*ty).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21))) goto LA4_;
38060 		T6_ = NIM_NIL;
38061 		T6_ = lastSon__ast_3743(ty);
38062 		ty = skipTypes__ast_3735(T6_, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
38063 	}
38064 	LA4_: ;
38065 	{
38066 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T11_;
38067 		NimStringDesc* res;
38068 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
38069 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
38070 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
38071 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
38072 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
38073 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
38074 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
38075 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
38076 		if (!(((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 4))&31U)))!=0)) goto LA9_;
38077 		T11_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
38078 		T11_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
38079 		res = rawNewString(((NI) 80));
38080 		res = resizeString(res, 9);
38081 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_932));
38082 		T12_ = NIM_NIL;
38083 		T12_ = rdCharLoc__cgen_10343(b);
38084 		cgFormatValue__cgen_141((&res), T12_);
38085 		res = resizeString(res, 9);
38086 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_581));
38087 		T13_ = NIM_NIL;
38088 		T13_ = lenExpr__cgen_448(p, a);
38089 		cgFormatValue__cgen_141((&res), T13_);
38090 		res = resizeString(res, 3);
38091 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_640));
38092 		T14_ = NIM_NIL;
38093 		T14_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_934));
38094 		cgFormatValue__cgen_141((&res), T14_);
38095 		res = resizeString(res, 1);
38096 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
38097 		T15_ = NIM_NIL;
38098 		T15_ = rdCharLoc__cgen_10343(b);
38099 		cgFormatValue__cgen_141((&res), T15_);
38100 		res = resizeString(res, 1);
38101 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_944));
38102 		T16_ = NIM_NIL;
38103 		T16_ = lenExpr__cgen_448(p, a);
38104 		cgFormatValue__cgen_141((&res), T16_);
38105 		res = resizeString(res, 5);
38106 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_949));
38107 		T17_ = NIM_NIL;
38108 		T17_ = raiseInstr__cgen_414(p);
38109 		cgFormatValue__cgen_141((&res), T17_);
38110 		res = resizeString(res, 1);
38111 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
38112 		{
38113 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA20_;
38114 			res = resizeString(res, 1);
38115 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
38116 		}
38117 		LA20_: ;
38118 		T22_ = NIM_NIL;
38119 		T22_ = rope__ropes_109(res);
38120 		T23_ = NIM_NIL;
38121 		T23_ = indentLine__cgen_280(p, T22_);
38122 		add__ropes_159(T11_, T23_);
38123 	}
38124 	LA9_: ;
38125 	{
38126 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA26_;
38127 		(*d).storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3);
38128 	}
38129 	LA26_: ;
38130 	{
38131 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T30_;
38132 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T31_;
38133 		NimStringDesc* res_2;
38134 		T30_ = NIM_NIL;
38135 		T30_ = t__cgen_79(a);
38136 		T31_ = NIM_NIL;
38137 		T31_ = skipTypes__ast_3735(T30_, TM__MQdRN7fpbG7rPm4JpVVAhA_357);
38138 		if (!((*T31_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*T31_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21))) goto LA32_;
38139 		res_2 = rawNewString(((NI) 80));
38140 		res_2 = resizeString(res_2, 2);
38141 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_84));
38142 		cgFormatValue__cgen_141((&res_2), a.r);
38143 		res_2 = resizeString(res_2, 1);
38144 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
38145 		a.r = rope__ropes_109(res_2);
38146 	}
38147 	LA32_: ;
38148 	{
38149 		NIM_BOOL T36_;
38150 		NIM_BOOL T37_;
38151 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T42_;
38152 		NimStringDesc* res_3;
38153 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
38154 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
38155 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
38156 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
38157 		T36_ = (NIM_BOOL)0;
38158 		T37_ = (NIM_BOOL)0;
38159 		T37_ = (((*d).flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 10))&15U)))!=0);
38160 		if (!(T37_)) goto LA38_;
38161 		T37_ = ((*ty).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28));
38162 		LA38_: ;
38163 		T36_ = T37_;
38164 		if (!(T36_)) goto LA39_;
38165 		T36_ = (((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0);
38166 		LA39_: ;
38167 		if (!T36_) goto LA40_;
38168 		T42_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
38169 		T42_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
38170 		res_3 = rawNewString(((NI) 80));
38171 		T43_ = NIM_NIL;
38172 		T43_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_363));
38173 		cgFormatValue__cgen_141((&res_3), T43_);
38174 		res_3 = resizeString(res_3, 1);
38175 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
38176 		T44_ = NIM_NIL;
38177 		T44_ = byRefLoc__cgen_10319(p, a);
38178 		cgFormatValue__cgen_141((&res_3), T44_);
38179 		res_3 = resizeString(res_3, 2);
38180 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
38181 		{
38182 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA47_;
38183 			res_3 = resizeString(res_3, 1);
38184 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
38185 		}
38186 		LA47_: ;
38187 		T49_ = NIM_NIL;
38188 		T49_ = rope__ropes_109(res_3);
38189 		T50_ = NIM_NIL;
38190 		T50_ = indentLine__cgen_280(p, T49_);
38191 		add__ropes_159(T42_, T50_);
38192 	}
38193 	LA40_: ;
38194 	res_4 = rawNewString(((NI) 80));
38195 	T51_ = NIM_NIL;
38196 	T51_ = rdLoc__cgen_425(a);
38197 	cgFormatValue__cgen_141((&res_4), T51_);
38198 	T52_ = NIM_NIL;
38199 	T52_ = dataField__cgen_461(p);
38200 	cgFormatValue__cgen_141((&res_4), T52_);
38201 	res_4 = resizeString(res_4, 1);
38202 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
38203 	T53_ = NIM_NIL;
38204 	T53_ = rdCharLoc__cgen_10343(b);
38205 	cgFormatValue__cgen_141((&res_4), T53_);
38206 	res_4 = resizeString(res_4, 1);
38207 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
38208 	T54_ = NIM_NIL;
38209 	T54_ = rope__ropes_109(res_4);
38210 	putIntoDest__cgen_18656(p, d, n, T54_, a.storage);
38211 }
N_NIMCALL(void,genCStringElem__cgen_19947)38212 N_LIB_PRIVATE N_NIMCALL(void, genCStringElem__cgen_19947)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* y, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
38213 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
38214 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA b;
38215 	NimStringDesc* res;
38216 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
38217 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
38218 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
38219 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
38220 	nimZeroMem((void*)(&b), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
38221 	initLocExpr__cgen_11483(p, x, (&a));
38222 	initLocExpr__cgen_11483(p, y, (&b));
38223 	{
38224 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA3_;
38225 		(*d).storage = a.storage;
38226 	}
38227 	LA3_: ;
38228 	res = rawNewString(((NI) 80));
38229 	T5_ = NIM_NIL;
38230 	T5_ = rdLoc__cgen_425(a);
38231 	cgFormatValue__cgen_141((&res), T5_);
38232 	res = resizeString(res, 1);
38233 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
38234 	T6_ = NIM_NIL;
38235 	T6_ = rdCharLoc__cgen_10343(b);
38236 	cgFormatValue__cgen_141((&res), T6_);
38237 	res = resizeString(res, 1);
38238 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_181));
38239 	T7_ = NIM_NIL;
38240 	T7_ = rope__ropes_109(res);
38241 	putIntoDest__cgen_18656(p, d, n, T7_, a.storage);
38242 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19532)38243 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19532)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
38244 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
38245 	result = NIM_NIL;
38246 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_953), args, argsLen_0);
38247 	return result;
38248 }
N_NIMCALL(void,genTupleElem__cgen_19506)38249 N_LIB_PRIVATE N_NIMCALL(void, genTupleElem__cgen_19506)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
38250 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
38251 	NI i;
38252 	tyObject_TType__facALICuu8zUj0hjvbTLFg* tupType;
38253 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
38254 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T6_;
38255 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
38256 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
38257 	tyArray__JiWwrsTRC6xqNlGcBthSVA T10_;
38258 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
38259 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
38260 	i = (NI)0;
38261 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 0)], (&a));
38262 	T1_ = NIM_NIL;
38263 	T1_ = t__cgen_79(a);
38264 	tupType = skipTypes__ast_3735(T1_, TM__MQdRN7fpbG7rPm4JpVVAhA_950);
38265 	{
38266 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA4_;
38267 		(*d).storage = a.storage;
38268 	}
38269 	LA4_: ;
38270 	T6_ = NIM_NIL;
38271 	T6_ = t__cgen_79(a);
38272 	T7_ = NIM_NIL;
38273 	T7_ = getTypeDesc__cgen_6631((*p).module, T6_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
38274 	(void)(T7_);
38275 	r = rdLoc__cgen_425(a);
38276 	switch ((*(*e)._kind_6.sons->data[((NI) 1)]).kind) {
38277 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
38278 	{
38279 		i = ((NI) ((*(*e)._kind_6.sons->data[((NI) 1)])._kind_1.intVal));
38280 	}
38281 	break;
38282 	default:
38283 	{
38284 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_951), TM__MQdRN7fpbG7rPm4JpVVAhA_952);
38285 	}
38286 	break;
38287 	}
38288 	nimZeroMem((void*)T10_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
38289 	T10_[0] = rope__ropes_115(((NI64) (i)));
38290 	T11_ = NIM_NIL;
38291 	T11_ = percent___cgen_19532(T10_, 1);
38292 	add__ropes_159(&r, T11_);
38293 	putIntoDest__cgen_18656(p, d, e, r, a.storage);
38294 }
N_NIMCALL(void,genBracketExpr__cgen_20179)38295 N_LIB_PRIVATE N_NIMCALL(void, genBracketExpr__cgen_20179)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
38296 	tyObject_TType__facALICuu8zUj0hjvbTLFg* ty;
38297 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
38298 	ty = skipTypes__ast_3735((*(*n)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_930);
38299 	{
38300 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
38301 		if (!((*ty).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*ty).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21))) goto LA3_;
38302 		T5_ = NIM_NIL;
38303 		T5_ = lastSon__ast_3743(ty);
38304 		ty = skipTypes__ast_3735(T5_, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
38305 	}
38306 	LA3_: ;
38307 	switch ((*ty).kind) {
38308 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 49):
38309 	{
38310 		genUncheckedArrayElem__cgen_19859(p, n, (*n)._kind_6.sons->data[((NI) 0)], (*n)._kind_6.sons->data[((NI) 1)], d);
38311 	}
38312 	break;
38313 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 16):
38314 	{
38315 		genArrayElem__cgen_19880(p, n, (*n)._kind_6.sons->data[((NI) 0)], (*n)._kind_6.sons->data[((NI) 1)], d);
38316 	}
38317 	break;
38318 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 27):
38319 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 48):
38320 	{
38321 		genOpenArrayElem__cgen_20027(p, n, (*n)._kind_6.sons->data[((NI) 0)], (*n)._kind_6.sons->data[((NI) 1)], d);
38322 	}
38323 	break;
38324 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24):
38325 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
38326 	{
38327 		genSeqElem__cgen_20095(p, n, (*n)._kind_6.sons->data[((NI) 0)], (*n)._kind_6.sons->data[((NI) 1)], d);
38328 	}
38329 	break;
38330 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 29):
38331 	{
38332 		genCStringElem__cgen_19947(p, n, (*n)._kind_6.sons->data[((NI) 0)], (*n)._kind_6.sons->data[((NI) 1)], d);
38333 	}
38334 	break;
38335 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18):
38336 	{
38337 		genTupleElem__cgen_19506(p, n, d);
38338 	}
38339 	break;
38340 	default:
38341 	{
38342 		NimStringDesc* T13_;
38343 		T13_ = NIM_NIL;
38344 		T13_ = rawNewString((reprEnum((NI)(*ty).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*ty).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 21);
38345 appendString(T13_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_954));
38346 appendString(T13_, reprEnum((NI)(*ty).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
38347 appendChar(T13_, 41);
38348 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, T13_, TM__MQdRN7fpbG7rPm4JpVVAhA_955);
38349 	}
38350 	break;
38351 	}
38352 	T14_ = NIM_NIL;
38353 	T14_ = getTypeDesc__cgen_6631((*p).module, (*n).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
38354 	(void)(T14_);
38355 }
N_NIMCALL(void,genDeref__cgen_19306)38356 N_LIB_PRIVATE N_NIMCALL(void, genDeref__cgen_19306)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
38357 	tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w mt;
38358 	tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw T1_;
38359 {	T1_ = (tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw)0;
38360 	{
38361 		if (!((*(*e)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA4_;
38362 		T1_ = (*(*(*e)._kind_6.sons->data[((NI) 0)])._kind_4.sym).kind;
38363 	}
38364 	goto LA2_;
38365 	LA4_: ;
38366 	{
38367 		T1_ = ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8);
38368 	}
38369 	LA2_: ;
38370 	mt = mapType__cgen_1209((*(*(*p).module).g).config, (*(*e)._kind_6.sons->data[((NI) 0)]).typ, T1_);
38371 	{
38372 		NIM_BOOL T9_;
38373 		T9_ = (NIM_BOOL)0;
38374 		T9_ = ((393216 &((NU32)1<<((NU)(mt)&31U)))!=0);
38375 		if (!(T9_)) goto LA10_;
38376 		T9_ = !((((*d).flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 9))&15U)))!=0));
38377 		LA10_: ;
38378 		if (!T9_) goto LA11_;
38379 		expr__cgen_11460(p, (*e)._kind_6.sons->data[((NI) 0)], d);
38380 		{
38381 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T15_;
38382 			T15_ = NIM_NIL;
38383 			T15_ = skipTypes__ast_3735((*(*e)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
38384 			if (!((*T15_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22))) goto LA16_;
38385 			(*d).storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3);
38386 		}
38387 		LA16_: ;
38388 	}
38389 	goto LA7_;
38390 	LA11_: ;
38391 	{
38392 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
38393 		tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
38394 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
38395 		typ = (*(*e)._kind_6.sons->data[((NI) 0)]).typ;
38396 		{
38397 			NIM_BOOL T21_;
38398 			T21_ = (NIM_BOOL)0;
38399 			T21_ = ((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 52) || (*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 53));
38400 			if (!(T21_)) goto LA22_;
38401 			T21_ = (((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 10))&63U)))!=0);
38402 			LA22_: ;
38403 			if (!T21_) goto LA23_;
38404 			typ = lastSon__ast_3743(typ);
38405 		}
38406 		LA23_: ;
38407 		typ = skipTypes__ast_3735(typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
38408 		{
38409 			NIM_BOOL T27_;
38410 			NIM_BOOL T28_;
38411 			NIM_BOOL T29_;
38412 			NIM_BOOL T32_;
38413 			T27_ = (NIM_BOOL)0;
38414 			T28_ = (NIM_BOOL)0;
38415 			T29_ = (NIM_BOOL)0;
38416 			T29_ = ((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
38417 			if (!(T29_)) goto LA30_;
38418 			T29_ = !((((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 20))&63U)))!=0));
38419 			LA30_: ;
38420 			T28_ = T29_;
38421 			if (!(T28_)) goto LA31_;
38422 			T32_ = (NIM_BOOL)0;
38423 			T32_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
38424 			if (T32_) goto LA33_;
38425 			T32_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
38426 			LA33_: ;
38427 			T28_ = T32_;
38428 			LA31_: ;
38429 			T27_ = T28_;
38430 			if (!(T27_)) goto LA34_;
38431 			T27_ = ((*(*e)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64));
38432 			LA34_: ;
38433 			if (!T27_) goto LA35_;
38434 			initLocExprSingleUse__cgen_11487(p, (*(*e)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)], d);
38435 			goto BeforeRet_;
38436 		}
38437 		goto LA25_;
38438 		LA35_: ;
38439 		{
38440 			initLocExprSingleUse__cgen_11487(p, (*e)._kind_6.sons->data[((NI) 0)], (&a));
38441 		}
38442 		LA25_: ;
38443 		{
38444 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA40_;
38445 			switch ((*typ).kind) {
38446 			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22):
38447 			{
38448 				(*d).storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 3);
38449 			}
38450 			break;
38451 			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23):
38452 			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47):
38453 			{
38454 				(*d).storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0);
38455 				{
38456 					NIM_BOOL T46_;
38457 					NIM_BOOL T47_;
38458 					NIM_BOOL T49_;
38459 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
38460 					T46_ = (NIM_BOOL)0;
38461 					T47_ = (NIM_BOOL)0;
38462 					T47_ = !((((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 20))&63U)))!=0));
38463 					if (!(T47_)) goto LA48_;
38464 					T49_ = (NIM_BOOL)0;
38465 					T49_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
38466 					if (T49_) goto LA50_;
38467 					T49_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
38468 					LA50_: ;
38469 					T47_ = T49_;
38470 					LA48_: ;
38471 					T46_ = T47_;
38472 					if (!(T46_)) goto LA51_;
38473 					T46_ = ((*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65));
38474 					LA51_: ;
38475 					if (!T46_) goto LA52_;
38476 					T54_ = NIM_NIL;
38477 					T54_ = rdLoc__cgen_425(a);
38478 					putIntoDest__cgen_18656(p, d, e, T54_, a.storage);
38479 					goto BeforeRet_;
38480 				}
38481 				LA52_: ;
38482 			}
38483 			break;
38484 			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21):
38485 			{
38486 				(*d).storage = ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0);
38487 			}
38488 			break;
38489 			default:
38490 			{
38491 				NimStringDesc* T57_;
38492 				T57_ = NIM_NIL;
38493 				T57_ = rawNewString((reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 9);
38494 appendString(T57_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_956));
38495 appendString(T57_, reprEnum((NI)(*typ).kind, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
38496 				internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, T57_, TM__MQdRN7fpbG7rPm4JpVVAhA_957);
38497 			}
38498 			break;
38499 			}
38500 		}
38501 		goto LA38_;
38502 		LA40_: ;
38503 		{
38504 			NIM_BOOL T59_;
38505 			T59_ = (NIM_BOOL)0;
38506 			T59_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
38507 			if (T59_) goto LA60_;
38508 			T59_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
38509 			LA60_: ;
38510 			if (!T59_) goto LA61_;
38511 			{
38512 				NIM_BOOL T65_;
38513 				NIM_BOOL T66_;
38514 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
38515 				T65_ = (NIM_BOOL)0;
38516 				T66_ = (NIM_BOOL)0;
38517 				T66_ = ((*typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23));
38518 				if (!(T66_)) goto LA67_;
38519 				T66_ = !((((*typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) 20))&63U)))!=0));
38520 				LA67_: ;
38521 				T65_ = T66_;
38522 				if (!(T65_)) goto LA68_;
38523 				T65_ = ((*e).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65));
38524 				LA68_: ;
38525 				if (!T65_) goto LA69_;
38526 				T71_ = NIM_NIL;
38527 				T71_ = rdLoc__cgen_425(a);
38528 				putIntoDest__cgen_18656(p, d, e, T71_, a.storage);
38529 				goto BeforeRet_;
38530 			}
38531 			LA69_: ;
38532 		}
38533 		goto LA38_;
38534 		LA61_: ;
38535 		LA38_: ;
38536 		{
38537 			NIM_BOOL T74_;
38538 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T78_;
38539 			T74_ = (NIM_BOOL)0;
38540 			T74_ = (mt == ((tyEnum_TCTypeKind__ceqS9bAmd9bxxuxr8tfIIw5w) 18));
38541 			if (!(T74_)) goto LA75_;
38542 			T74_ = (((*d).flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 9))&15U)))!=0);
38543 			LA75_: ;
38544 			if (!T74_) goto LA76_;
38545 			T78_ = NIM_NIL;
38546 			T78_ = rdLoc__cgen_425(a);
38547 			putIntoDest__cgen_18656(p, d, e, T78_, a.storage);
38548 		}
38549 		goto LA72_;
38550 		LA76_: ;
38551 		{
38552 			tyArray__JiWwrsTRC6xqNlGcBthSVA T80_;
38553 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T81_;
38554 			nimZeroMem((void*)T80_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
38555 			T80_[0] = rdLoc__cgen_425(a);
38556 			T81_ = NIM_NIL;
38557 			T81_ = percent___cgen_432(T80_, 1);
38558 			putIntoDest__cgen_18656(p, d, e, T81_, a.storage);
38559 		}
38560 		LA72_: ;
38561 	}
38562 	LA7_: ;
38563 	}BeforeRet_: ;
38564 }
N_NIMCALL(void,genRecordFieldAux__cgen_19491)38565 N_LIB_PRIVATE N_NIMCALL(void, genRecordFieldAux__cgen_19491)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* a) {
38566 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T9_;
38567 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
38568 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 0)], a);
38569 	{
38570 		if (!!(((*(*e)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA3_;
38571 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_958), TM__MQdRN7fpbG7rPm4JpVVAhA_959);
38572 	}
38573 	LA3_: ;
38574 	{
38575 		if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA7_;
38576 		(*d).storage = (*a).storage;
38577 	}
38578 	LA7_: ;
38579 	T9_ = NIM_NIL;
38580 	T9_ = t__cgen_79((*a));
38581 	T10_ = NIM_NIL;
38582 	T10_ = getTypeDesc__cgen_6631((*p).module, T9_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
38583 	(void)(T10_);
38584 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_19619)38585 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_19619)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
38586 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
38587 	result = NIM_NIL;
38588 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_962), args, argsLen_0);
38589 	return result;
38590 }
N_NIMCALL(void,genRecordField__cgen_19584)38591 N_LIB_PRIVATE N_NIMCALL(void, genRecordField__cgen_19584)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
38592 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
38593 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
38594 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* f;
38595 	tyObject_TType__facALICuu8zUj0hjvbTLFg* ty;
38596 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T1_;
38597 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
38598 	genRecordFieldAux__cgen_19491(p, e, d, (&a));
38599 	r = rdLoc__cgen_425(a);
38600 	f = (*(*e)._kind_6.sons->data[((NI) 1)])._kind_4.sym;
38601 	T1_ = NIM_NIL;
38602 	T1_ = t__cgen_79(a);
38603 	ty = skipTypes__ast_3735(T1_, TM__MQdRN7fpbG7rPm4JpVVAhA_98);
38604 	{
38605 		tyArray__JiWwrsTRC6xqNlGcBthSVA T6_;
38606 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
38607 		if (!((*ty).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18))) goto LA4_;
38608 		nimZeroMem((void*)T6_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
38609 		T6_[0] = rope__ropes_115(((NI64) ((*f).position)));
38610 		T7_ = NIM_NIL;
38611 		T7_ = percent___cgen_19532(T6_, 1);
38612 		add__ropes_159(&r, T7_);
38613 		putIntoDest__cgen_18656(p, d, e, r, a.storage);
38614 	}
38615 	goto LA2_;
38616 	LA4_: ;
38617 	{
38618 		tyObject_TType__facALICuu8zUj0hjvbTLFg* rtyp;
38619 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
38620 		tyArray__JiWwrsTRC6xqNlGcBthSVA T21_;
38621 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
38622 		rtyp = NIM_NIL;
38623 		field = lookupFieldAgain__cgen_19537(p, ty, f, &r, &rtyp);
38624 		{
38625 			NIM_BOOL T11_;
38626 			T11_ = (NIM_BOOL)0;
38627 			T11_ = ((*field).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
38628 			if (!(T11_)) goto LA12_;
38629 			T11_ = !((rtyp == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
38630 			LA12_: ;
38631 			if (!T11_) goto LA13_;
38632 			fillObjectFields__cgen_3777((*p).module, rtyp);
38633 		}
38634 		LA13_: ;
38635 		{
38636 			NimStringDesc* T19_;
38637 			NimStringDesc* T20_;
38638 			if (!((*field).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA17_;
38639 			T19_ = NIM_NIL;
38640 			T20_ = NIM_NIL;
38641 			T20_ = typeToString__types_50(ty, ((tyEnum_TPreferedDesc__tnd4qt9c4xddV8oKV5zyusw) 0));
38642 			T19_ = rawNewString((T20_ ? T20_->Sup.len : 0) + 17);
38643 appendString(T19_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_960));
38644 appendString(T19_, T20_);
38645 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, T19_, TM__MQdRN7fpbG7rPm4JpVVAhA_961);
38646 		}
38647 		LA17_: ;
38648 		nimZeroMem((void*)T21_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
38649 		T21_[0] = (*field).loc.r;
38650 		T22_ = NIM_NIL;
38651 		T22_ = percent___cgen_19619(T21_, 1);
38652 		add__ropes_159(&r, T22_);
38653 		putIntoDest__cgen_18656(p, d, e, r, a.storage);
38654 	}
38655 	LA2_: ;
38656 }
N_NIMCALL(void,genCheckedRecordField__cgen_19812)38657 N_LIB_PRIVATE N_NIMCALL(void, genCheckedRecordField__cgen_19812)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
38658 	{
38659 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
38660 		tyObject_TType__facALICuu8zUj0hjvbTLFg* ty;
38661 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
38662 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
38663 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* f;
38664 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
38665 		NimStringDesc* res;
38666 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
38667 		if (!(((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 2))&31U)))!=0)) goto LA3_;
38668 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
38669 		genRecordFieldAux__cgen_19491(p, (*e)._kind_6.sons->data[((NI) 0)], d, (&a));
38670 		T5_ = NIM_NIL;
38671 		T5_ = t__cgen_79(a);
38672 		ty = skipTypes__ast_3735(T5_, TM__MQdRN7fpbG7rPm4JpVVAhA_98);
38673 		r = rdLoc__cgen_425(a);
38674 		f = (*(*(*e)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)])._kind_4.sym;
38675 		field = lookupFieldAgain__cgen_19537(p, ty, f, &r, ((tyObject_TType__facALICuu8zUj0hjvbTLFg**) NIM_NIL));
38676 		{
38677 			if (!((*field).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA8_;
38678 			fillObjectFields__cgen_3777((*p).module, ty);
38679 		}
38680 		LA8_: ;
38681 		{
38682 			if (!((*field).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA12_;
38683 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*e).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_911), TM__MQdRN7fpbG7rPm4JpVVAhA_963);
38684 		}
38685 		LA12_: ;
38686 		genFieldCheck__cgen_19639(p, e, r, field);
38687 		res = rawNewString(((NI) 80));
38688 		res = resizeString(res, 1);
38689 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_128));
38690 		cgFormatValue__cgen_141((&res), (*field).loc.r);
38691 		T14_ = NIM_NIL;
38692 		T14_ = rope__ropes_109(res);
38693 		add__ropes_159(&r, T14_);
38694 		putIntoDest__cgen_18656(p, d, (*e)._kind_6.sons->data[((NI) 0)], r, a.storage);
38695 	}
38696 	goto LA1_;
38697 	LA3_: ;
38698 	{
38699 		genRecordField__cgen_19584(p, (*e)._kind_6.sons->data[((NI) 0)], d);
38700 	}
38701 	LA1_: ;
38702 }
N_NIMCALL(void,genBlock__cgen_14540)38703 N_LIB_PRIVATE N_NIMCALL(void, genBlock__cgen_14540)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
38704 	NI oldBreakIdxX60gensym1961_;
38705 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
38706 	NimStringDesc* res;
38707 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
38708 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
38709 	{
38710 		NIM_BOOL T3_;
38711 		T3_ = (NIM_BOOL)0;
38712 		T3_ = isEmptyType__ast_4779((*n).typ);
38713 		if (!!(T3_)) goto LA4_;
38714 		{
38715 			if (!((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0))) goto LA8_;
38716 			getTemp__cgen_7343(p, (*n).typ, d, NIM_FALSE);
38717 		}
38718 		LA8_: ;
38719 		(*d).flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 9)) & 15);
38720 	}
38721 	LA4_: ;
38722 	oldBreakIdxX60gensym1961_ = (*p).breakIdx;
38723 	T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
38724 	T10_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
38725 	res = rawNewString(((NI) 80));
38726 	res = resizeString(res, 1);
38727 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
38728 	{
38729 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA13_;
38730 		res = resizeString(res, 1);
38731 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
38732 	}
38733 	LA13_: ;
38734 	T15_ = NIM_NIL;
38735 	T15_ = rope__ropes_109(res);
38736 	T16_ = NIM_NIL;
38737 	T16_ = indentLine__cgen_280(p, T15_);
38738 	add__ropes_159(T10_, T16_);
38739 	(*p).breakIdx = startBlockInternal__cgen_13189(p);
38740 	{
38741 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
38742 		if (!!(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA19_;
38743 		sym = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
38744 		(*sym).loc.k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 10);
38745 		(*sym).position = (NI)((*p).breakIdx + ((NI) 1));
38746 	}
38747 	LA19_: ;
38748 	expr__cgen_11460(p, (*n)._kind_6.sons->data[((NI) 1)], d);
38749 	endBlock__cgen_13210(p);
38750 	(*p).breakIdx = oldBreakIdxX60gensym1961_;
38751 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_17518)38752 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_17518)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
38753 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
38754 	result = NIM_NIL;
38755 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_965), args, argsLen_0);
38756 	return result;
38757 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,initFrameNoDebug__cgen_17511)38758 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, initFrameNoDebug__cgen_17511)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* frame, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* procname, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* filename, NI line) {
38759 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
38760 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
38761 	tyArray__JiWwrsTRC6xqNlGcBthSVA T2_;
38762 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
38763 	NimStringDesc* res;
38764 	result = NIM_NIL;
38765 	T1_ = NIM_NIL;
38766 	T1_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_407));
38767 	(void)(T1_);
38768 	nimZeroMem((void*)T2_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
38769 	T2_[0] = frame;
38770 	T3_ = NIM_NIL;
38771 	T3_ = percent___cgen_17518(T2_, 1);
38772 	add__ropes_159(&(*p).blocks->data[((NI) 0)].sections[(((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0))- 0], T3_);
38773 	res = rawNewString(((NI) 80));
38774 	res = resizeString(res, 1);
38775 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
38776 	cgFormatValue__cgen_141((&res), frame);
38777 	res = resizeString(res, 12);
38778 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_966));
38779 	cgFormatValue__cgen_141((&res), procname);
38780 	res = resizeString(res, 2);
38781 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
38782 	cgFormatValue__cgen_141((&res), frame);
38783 	res = resizeString(res, 12);
38784 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_967));
38785 	cgFormatValue__cgen_141((&res), filename);
38786 	res = resizeString(res, 3);
38787 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_968));
38788 	cgFormatValue__cgen_141((&res), frame);
38789 	res = resizeString(res, 8);
38790 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_969));
38791 	cgFormatValue__cgen_148((&res), ((NI64) (line)));
38792 	res = resizeString(res, 2);
38793 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_178));
38794 	cgFormatValue__cgen_141((&res), frame);
38795 	res = resizeString(res, 21);
38796 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_970));
38797 	cgFormatValue__cgen_141((&res), frame);
38798 	res = resizeString(res, 2);
38799 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
38800 	{
38801 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA6_;
38802 		res = resizeString(res, 1);
38803 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
38804 	}
38805 	LA6_: ;
38806 	result = rope__ropes_109(res);
38807 	return result;
38808 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,deinitFrameNoDebug__cgen_17536)38809 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, deinitFrameNoDebug__cgen_17536)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* frame) {
38810 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
38811 	NimStringDesc* res;
38812 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
38813 	result = NIM_NIL;
38814 	res = rawNewString(((NI) 80));
38815 	res = resizeString(res, 1);
38816 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
38817 	T1_ = NIM_NIL;
38818 	T1_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_971));
38819 	cgFormatValue__cgen_141((&res), T1_);
38820 	res = resizeString(res, 2);
38821 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_102));
38822 	cgFormatValue__cgen_141((&res), frame);
38823 	res = resizeString(res, 2);
38824 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
38825 	{
38826 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA4_;
38827 		res = resizeString(res, 1);
38828 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
38829 	}
38830 	LA4_: ;
38831 	result = rope__ropes_109(res);
38832 	return result;
38833 }
N_NIMCALL(void,genStmtListExpr__cgen_23995)38834 N_LIB_PRIVATE N_NIMCALL(void, genStmtListExpr__cgen_23995)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
38835 	NIM_BOOL hasNimFrame;
38836 	NIM_BOOL T1_;
38837 	NIM_BOOL T2_;
38838 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* frameName;
38839 	T1_ = (NIM_BOOL)0;
38840 	T2_ = (NIM_BOOL)0;
38841 	T2_ = !(((*p).prc == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
38842 	if (!(T2_)) goto LA3_;
38843 	T2_ = !((((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0));
38844 	LA3_: ;
38845 	T1_ = T2_;
38846 	if (!(T1_)) goto LA4_;
38847 	T1_ = (((*(*p).prc).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 17))&31U)))!=0);
38848 	LA4_: ;
38849 	hasNimFrame = T1_;
38850 	frameName = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
38851 	{
38852 		NI i;
38853 		NI colontmp_;
38854 		NI T6_;
38855 		NI i_2;
38856 		i = (NI)0;
38857 		colontmp_ = (NI)0;
38858 		T6_ = (NI)0;
38859 		T6_ = len__ast_3198(n);
38860 		colontmp_ = (NI)(T6_ - ((NI) 1));
38861 		i_2 = ((NI) 0);
38862 		{
38863 			while (1) {
38864 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
38865 				if (!(i_2 < colontmp_)) goto LA8;
38866 				i = i_2;
38867 				it = (*n)._kind_6.sons->data[i];
38868 				{
38869 					if (!((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 24))) goto LA11_;
38870 					{
38871 						NIM_BOOL T15_;
38872 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
38873 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
38874 						tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* theMacro;
38875 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T21_;
38876 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
38877 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
38878 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
38879 						T15_ = (NIM_BOOL)0;
38880 						T15_ = hasNimFrame;
38881 						if (!(T15_)) goto LA16_;
38882 						T15_ = (frameName == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
38883 						LA16_: ;
38884 						if (!T15_) goto LA17_;
38885 						(*p).labels += ((NI) 1);
38886 						T19_ = NIM_NIL;
38887 						T19_ = rope__ropes_115(((NI64) ((*p).labels)));
38888 						T20_ = NIM_NIL;
38889 						T20_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_964), T19_);
38890 						frameName = amp___ropes_140(T20_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
38891 						theMacro = (*(*it)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
38892 						T21_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
38893 						T21_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
38894 						T22_ = NIM_NIL;
38895 						T22_ = makeCString__msgs_50((*(*theMacro).name).s);
38896 						T23_ = NIM_NIL;
38897 						T23_ = quotedFilename__msgs_1464((*(*(*p).module).g).config, (*theMacro).info);
38898 						T24_ = NIM_NIL;
38899 						T24_ = initFrameNoDebug__cgen_17511(p, frameName, T22_, T23_, ((NI) ((*it).info.line)));
38900 						add__ropes_159(T21_, T24_);
38901 					}
38902 					LA17_: ;
38903 				}
38904 				goto LA9_;
38905 				LA11_: ;
38906 				{
38907 					genStmts__cgen_11457(p, it);
38908 				}
38909 				LA9_: ;
38910 				i_2 += ((NI) 1);
38911 			} LA8: ;
38912 		}
38913 	}
38914 	{
38915 		NI T28_;
38916 		NI T31_;
38917 		T28_ = (NI)0;
38918 		T28_ = len__ast_3198(n);
38919 		if (!(((NI) 0) < T28_)) goto LA29_;
38920 		T31_ = (NI)0;
38921 		T31_ = len__ast_3198(n);
38922 		expr__cgen_11460(p, (*n)._kind_6.sons->data[(NI)(T31_ - ((NI) 1))], d);
38923 	}
38924 	LA29_: ;
38925 	{
38926 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T36_;
38927 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
38928 		if (!!((frameName == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA34_;
38929 		T36_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
38930 		T36_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
38931 		T37_ = NIM_NIL;
38932 		T37_ = deinitFrameNoDebug__cgen_17536(p, frameName);
38933 		add__ropes_159(T36_, T37_);
38934 	}
38935 	LA34_: ;
38936 }
N_NIMCALL(void,genStmtList__cgen_24049)38937 N_LIB_PRIVATE N_NIMCALL(void, genStmtList__cgen_24049)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
38938 	NIM_BOOL hasNimFrame;
38939 	NIM_BOOL T1_;
38940 	NIM_BOOL T2_;
38941 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* frameName;
38942 	T1_ = (NIM_BOOL)0;
38943 	T2_ = (NIM_BOOL)0;
38944 	T2_ = !(((*p).prc == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
38945 	if (!(T2_)) goto LA3_;
38946 	T2_ = !((((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0));
38947 	LA3_: ;
38948 	T1_ = T2_;
38949 	if (!(T1_)) goto LA4_;
38950 	T1_ = (((*(*p).prc).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 17))&31U)))!=0);
38951 	LA4_: ;
38952 	hasNimFrame = T1_;
38953 	frameName = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
38954 	{
38955 		NI i;
38956 		NI colontmp_;
38957 		NI T6_;
38958 		NI i_2;
38959 		i = (NI)0;
38960 		colontmp_ = (NI)0;
38961 		T6_ = (NI)0;
38962 		T6_ = len__ast_3198(n);
38963 		colontmp_ = (NI)(T6_ - ((NI) 1));
38964 		i_2 = ((NI) 0);
38965 		{
38966 			while (1) {
38967 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
38968 				if (!(i_2 < colontmp_)) goto LA8;
38969 				i = i_2;
38970 				it = (*n)._kind_6.sons->data[i];
38971 				{
38972 					if (!((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 24))) goto LA11_;
38973 					{
38974 						NIM_BOOL T15_;
38975 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
38976 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
38977 						tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* theMacro;
38978 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T21_;
38979 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
38980 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
38981 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
38982 						T15_ = (NIM_BOOL)0;
38983 						T15_ = hasNimFrame;
38984 						if (!(T15_)) goto LA16_;
38985 						T15_ = (frameName == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
38986 						LA16_: ;
38987 						if (!T15_) goto LA17_;
38988 						(*p).labels += ((NI) 1);
38989 						T19_ = NIM_NIL;
38990 						T19_ = rope__ropes_115(((NI64) ((*p).labels)));
38991 						T20_ = NIM_NIL;
38992 						T20_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_964), T19_);
38993 						frameName = amp___ropes_140(T20_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
38994 						theMacro = (*(*it)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
38995 						T21_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
38996 						T21_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
38997 						T22_ = NIM_NIL;
38998 						T22_ = makeCString__msgs_50((*(*theMacro).name).s);
38999 						T23_ = NIM_NIL;
39000 						T23_ = quotedFilename__msgs_1464((*(*(*p).module).g).config, (*theMacro).info);
39001 						T24_ = NIM_NIL;
39002 						T24_ = initFrameNoDebug__cgen_17511(p, frameName, T22_, T23_, ((NI) ((*it).info.line)));
39003 						add__ropes_159(T21_, T24_);
39004 					}
39005 					LA17_: ;
39006 				}
39007 				goto LA9_;
39008 				LA11_: ;
39009 				{
39010 					genStmts__cgen_11457(p, it);
39011 				}
39012 				LA9_: ;
39013 				i_2 += ((NI) 1);
39014 			} LA8: ;
39015 		}
39016 	}
39017 	{
39018 		NI T28_;
39019 		NI T31_;
39020 		T28_ = (NI)0;
39021 		T28_ = len__ast_3198(n);
39022 		if (!(((NI) 0) < T28_)) goto LA29_;
39023 		T31_ = (NI)0;
39024 		T31_ = len__ast_3198(n);
39025 		genStmts__cgen_11457(p, (*n)._kind_6.sons->data[(NI)(T31_ - ((NI) 1))]);
39026 	}
39027 	LA29_: ;
39028 	{
39029 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T36_;
39030 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
39031 		if (!!((frameName == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA34_;
39032 		T36_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39033 		T36_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39034 		T37_ = NIM_NIL;
39035 		T37_ = deinitFrameNoDebug__cgen_17536(p, frameName);
39036 		add__ropes_159(T36_, T37_);
39037 	}
39038 	LA34_: ;
39039 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14101)39040 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14101)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
39041 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
39042 	result = NIM_NIL;
39043 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_972), args, argsLen_0);
39044 	return result;
39045 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14119)39046 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14119)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
39047 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
39048 	result = NIM_NIL;
39049 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_973), args, argsLen_0);
39050 	return result;
39051 }
N_NIMCALL(void,genIf__cgen_14061)39052 N_LIB_PRIVATE N_NIMCALL(void, genIf__cgen_14061)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
39053 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
39054 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lelse;
39055 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lend;
39056 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
39057 	lelse = NIM_NIL;
39058 	{
39059 		NIM_BOOL T3_;
39060 		NIM_BOOL T4_;
39061 		T3_ = (NIM_BOOL)0;
39062 		T4_ = (NIM_BOOL)0;
39063 		T4_ = isEmptyType__ast_4779((*n).typ);
39064 		T3_ = !(T4_);
39065 		if (!(T3_)) goto LA5_;
39066 		T3_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0));
39067 		LA5_: ;
39068 		if (!T3_) goto LA6_;
39069 		getTemp__cgen_7343(p, (*n).typ, d, NIM_FALSE);
39070 	}
39071 	LA6_: ;
39072 	genLineDir__cgen_359(p, n);
39073 	lend = getLabel__cgen_11436(p);
39074 	{
39075 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** it;
39076 		tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp_;
39077 		NI i;
39078 		NI L;
39079 		NI T9_;
39080 		it = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
39081 		colontmp_ = NIM_NIL;
39082 		colontmp_ = (*n)._kind_6.sons;
39083 		i = ((NI) 0);
39084 		T9_ = (colontmp_ ? colontmp_->Sup.len : 0);
39085 		L = T9_;
39086 		{
39087 			while (1) {
39088 				if (!(i < L)) goto LA11;
39089 				it = &colontmp_->data[i];
39090 				{
39091 					NIM_BOOL T14_;
39092 					T14_ = (NIM_BOOL)0;
39093 					T14_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1));
39094 					if (!(T14_)) goto LA15_;
39095 					T14_ = isEmptyType__ast_4779((*n).typ);
39096 					LA15_: ;
39097 					if (!T14_) goto LA16_;
39098 					(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0);
39099 				}
39100 				LA16_: ;
39101 				{
39102 					NI T20_;
39103 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T23_;
39104 					NimStringDesc* res;
39105 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
39106 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
39107 					NI T30_;
39108 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T31_;
39109 					tyArray__mrugoXXRZUEeG9bEXo9auBKw T32_;
39110 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
39111 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
39112 					T20_ = (NI)0;
39113 					T20_ = len__ast_3198((*it));
39114 					if (!(T20_ == ((NI) 2))) goto LA21_;
39115 					T23_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39116 					T23_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39117 					res = rawNewString(((NI) 80));
39118 					res = resizeString(res, 1);
39119 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
39120 					{
39121 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA26_;
39122 						res = resizeString(res, 1);
39123 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
39124 					}
39125 					LA26_: ;
39126 					T28_ = NIM_NIL;
39127 					T28_ = rope__ropes_109(res);
39128 					T29_ = NIM_NIL;
39129 					T29_ = indentLine__cgen_280(p, T28_);
39130 					add__ropes_159(T23_, T29_);
39131 					T30_ = (NI)0;
39132 					T30_ = startBlockInternal__cgen_13189(p);
39133 					initLocExprSingleUse__cgen_11487(p, (*(*it))._kind_6.sons->data[((NI) 0)], (&a));
39134 					lelse = getLabel__cgen_11436(p);
39135 					(*p).labels += ((NI) 1);
39136 					T31_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39137 					T31_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39138 					nimZeroMem((void*)T32_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
39139 					T32_[0] = rdLoc__cgen_425(a);
39140 					T32_[1] = lelse;
39141 					T33_ = NIM_NIL;
39142 					T33_ = percent___cgen_14101(T32_, 2);
39143 					T34_ = NIM_NIL;
39144 					T34_ = indentLine__cgen_280(p, T33_);
39145 					add__ropes_159(T31_, T34_);
39146 					{
39147 						NIM_BOOL T37_;
39148 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T41_;
39149 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T42_;
39150 						T37_ = (NIM_BOOL)0;
39151 						T37_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
39152 						if (T37_) goto LA38_;
39153 						T37_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
39154 						LA38_: ;
39155 						if (!T37_) goto LA39_;
39156 						T41_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39157 						T41_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39158 						add__ropes_162(T41_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
39159 						expr__cgen_11460(p, (*(*it))._kind_6.sons->data[((NI) 1)], d);
39160 						T42_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39161 						T42_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39162 						add__ropes_162(T42_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
39163 					}
39164 					goto LA35_;
39165 					LA39_: ;
39166 					{
39167 						expr__cgen_11460(p, (*(*it))._kind_6.sons->data[((NI) 1)], d);
39168 					}
39169 					LA35_: ;
39170 					endBlock__cgen_13210(p);
39171 					{
39172 						NI T46_;
39173 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T49_;
39174 						tyArray__JiWwrsTRC6xqNlGcBthSVA T50_;
39175 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
39176 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
39177 						T46_ = (NI)0;
39178 						T46_ = len__ast_3198(n);
39179 						if (!(((NI) 1) < T46_)) goto LA47_;
39180 						T49_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39181 						T49_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39182 						nimZeroMem((void*)T50_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
39183 						T50_[0] = lend;
39184 						T51_ = NIM_NIL;
39185 						T51_ = percent___cgen_14119(T50_, 1);
39186 						T52_ = NIM_NIL;
39187 						T52_ = indentLine__cgen_280(p, T51_);
39188 						add__ropes_159(T49_, T52_);
39189 					}
39190 					LA47_: ;
39191 					fixLabel__cgen_11443(p, lelse);
39192 				}
39193 				goto LA18_;
39194 				LA21_: ;
39195 				{
39196 					NI T54_;
39197 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T57_;
39198 					NimStringDesc* res_2;
39199 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T62_;
39200 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
39201 					NI T64_;
39202 					T54_ = (NI)0;
39203 					T54_ = len__ast_3198((*it));
39204 					if (!(T54_ == ((NI) 1))) goto LA55_;
39205 					T57_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39206 					T57_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39207 					res_2 = rawNewString(((NI) 80));
39208 					res_2 = resizeString(res_2, 1);
39209 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
39210 					{
39211 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA60_;
39212 						res_2 = resizeString(res_2, 1);
39213 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
39214 					}
39215 					LA60_: ;
39216 					T62_ = NIM_NIL;
39217 					T62_ = rope__ropes_109(res_2);
39218 					T63_ = NIM_NIL;
39219 					T63_ = indentLine__cgen_280(p, T62_);
39220 					add__ropes_159(T57_, T63_);
39221 					T64_ = (NI)0;
39222 					T64_ = startBlockInternal__cgen_13189(p);
39223 					expr__cgen_11460(p, (*(*it))._kind_6.sons->data[((NI) 0)], d);
39224 					endBlock__cgen_13210(p);
39225 				}
39226 				goto LA18_;
39227 				LA55_: ;
39228 				{
39229 					internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_974), TM__MQdRN7fpbG7rPm4JpVVAhA_975);
39230 				}
39231 				LA18_: ;
39232 				i += ((NI) 1);
39233 			} LA11: ;
39234 		}
39235 	}
39236 	{
39237 		NI T68_;
39238 		T68_ = (NI)0;
39239 		T68_ = len__ast_3198(n);
39240 		if (!(((NI) 1) < T68_)) goto LA69_;
39241 		fixLabel__cgen_11443(p, lend);
39242 	}
39243 	LA69_: ;
39244 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_24156)39245 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_24156)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
39246 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
39247 	result = NIM_NIL;
39248 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_976), args, argsLen_0);
39249 	return result;
39250 }
N_NIMCALL(void,downConv__cgen_24169)39251 N_LIB_PRIVATE N_NIMCALL(void, downConv__cgen_24169)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
39252 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* arg;
39253 	tyObject_TType__facALICuu8zUj0hjvbTLFg* dest;
39254 	tyObject_TType__facALICuu8zUj0hjvbTLFg* src;
39255 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
39256 	NIM_BOOL isRef;
39257 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T4_;
39258 	arg = (*n)._kind_6.sons->data[((NI) 0)];
39259 	{
39260 		while (1) {
39261 			if (!((*arg).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66))) goto LA2;
39262 			arg = (*arg)._kind_6.sons->data[((NI) 0)];
39263 		} LA2: ;
39264 	}
39265 	dest = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_272);
39266 	src = skipTypes__ast_3735((*arg).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_272);
39267 	T3_ = NIM_NIL;
39268 	T3_ = getTypeDesc__cgen_6631((*p).module, src, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
39269 	(void)(T3_);
39270 	T4_ = NIM_NIL;
39271 	T4_ = skipTypes__ast_3735((*arg).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
39272 	isRef = ((*T4_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*T4_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21) || (*T4_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 23) || (*T4_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 47));
39273 	{
39274 		NIM_BOOL T7_;
39275 		NIM_BOOL T8_;
39276 		NIM_BOOL T9_;
39277 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T12_;
39278 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
39279 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T16_;
39280 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
39281 		T7_ = (NIM_BOOL)0;
39282 		T8_ = (NIM_BOOL)0;
39283 		T9_ = (NIM_BOOL)0;
39284 		T9_ = isRef;
39285 		if (!(T9_)) goto LA10_;
39286 		T9_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0));
39287 		LA10_: ;
39288 		T8_ = T9_;
39289 		if (!(T8_)) goto LA11_;
39290 		T12_ = NIM_NIL;
39291 		T12_ = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_164);
39292 		T8_ = ((*T12_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*T12_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 21));
39293 		LA11_: ;
39294 		T7_ = T8_;
39295 		if (!(T7_)) goto LA13_;
39296 		T7_ = isLValue__parampatterns_497(n);
39297 		LA13_: ;
39298 		if (!T7_) goto LA14_;
39299 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
39300 		initLocExpr__cgen_11483(p, arg, (&a));
39301 		nimZeroMem((void*)T16_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
39302 		T16_[0] = getTypeDesc__cgen_6631((*p).module, (*n).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
39303 		T16_[1] = rdLoc__cgen_425(a);
39304 		T17_ = NIM_NIL;
39305 		T17_ = percent___cgen_24156(T16_, 2);
39306 		putIntoDest__cgen_18656(p, d, n, T17_, a.storage);
39307 	}
39308 	goto LA5_;
39309 	LA14_: ;
39310 	{
39311 		NIM_BOOL T19_;
39312 		T19_ = (NIM_BOOL)0;
39313 		T19_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
39314 		if (T19_) goto LA20_;
39315 		T19_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
39316 		LA20_: ;
39317 		if (!T19_) goto LA21_;
39318 		expr__cgen_11460(p, arg, d);
39319 	}
39320 	goto LA5_;
39321 	LA21_: ;
39322 	{
39323 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_2;
39324 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
39325 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
39326 		NimStringDesc* T25_;
39327 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
39328 		nimZeroMem((void*)(&a_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
39329 		initLocExpr__cgen_11483(p, arg, (&a_2));
39330 		T24_ = NIM_NIL;
39331 		T24_ = rdLoc__cgen_425(a_2);
39332 		T25_ = NIM_NIL;
39333 		{
39334 			if (!isRef) goto LA28_;
39335 			T25_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_977));
39336 		}
39337 		goto LA26_;
39338 		LA28_: ;
39339 		{
39340 			T25_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_111));
39341 		}
39342 		LA26_: ;
39343 		r = amp___ropes_140(T24_, T25_);
39344 		{
39345 			NI i;
39346 			NI colontmp_;
39347 			NI T32_;
39348 			NI res;
39349 			i = (NI)0;
39350 			colontmp_ = (NI)0;
39351 			T32_ = (NI)0;
39352 			T32_ = inheritanceDiff__types_2676(dest, src);
39353 			colontmp_ = (T32_ > 0? (T32_) : -(T32_));
39354 			res = ((NI) 2);
39355 			{
39356 				while (1) {
39357 					if (!(res <= colontmp_)) goto LA34;
39358 					i = res;
39359 					add__ropes_162(&r, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_111));
39360 					res += ((NI) 1);
39361 				} LA34: ;
39362 			}
39363 		}
39364 		T35_ = NIM_NIL;
39365 		{
39366 			if (!isRef) goto LA38_;
39367 			T35_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_473), r);
39368 		}
39369 		goto LA36_;
39370 		LA38_: ;
39371 		{
39372 			T35_ = r;
39373 		}
39374 		LA36_: ;
39375 		putIntoDest__cgen_18656(p, d, n, T35_, a_2.storage);
39376 	}
39377 	LA5_: ;
39378 }
N_NIMCALL(void,upConv__cgen_24103)39379 N_LIB_PRIVATE N_NIMCALL(void, upConv__cgen_24103)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
39380 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
39381 	tyObject_TType__facALICuu8zUj0hjvbTLFg* dest;
39382 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
39383 	initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 0)], (&a));
39384 	dest = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_272);
39385 	{
39386 		NIM_BOOL T3_;
39387 		NIM_BOOL T5_;
39388 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* nilCheck;
39389 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
39390 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* checkFor;
39391 		T3_ = (NIM_BOOL)0;
39392 		T3_ = (((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 1))&31U)))!=0);
39393 		if (!(T3_)) goto LA4_;
39394 		T5_ = (NIM_BOOL)0;
39395 		T5_ = isObjLackingTypeField__cgen_1319(dest);
39396 		T3_ = !(T5_);
39397 		LA4_: ;
39398 		if (!T3_) goto LA6_;
39399 		nilCheck = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
39400 		r = rdMType__cgen_21580(p, a, &nilCheck, NIM_FALSE);
39401 		{
39402 			if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA10_;
39403 			checkFor = genTypeInfo2Name__cgen_7805((*p).module, dest);
39404 		}
39405 		goto LA8_;
39406 		LA10_: ;
39407 		{
39408 			checkFor = genTypeInfoV1__cgen_6768((*p).module, dest, (*n).info);
39409 		}
39410 		LA8_: ;
39411 		{
39412 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T17_;
39413 			NimStringDesc* res;
39414 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
39415 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
39416 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
39417 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
39418 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
39419 			if (!!((nilCheck == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA15_;
39420 			T17_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39421 			T17_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39422 			res = rawNewString(((NI) 80));
39423 			res = resizeString(res, 4);
39424 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
39425 			cgFormatValue__cgen_141((&res), nilCheck);
39426 			res = resizeString(res, 5);
39427 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_978));
39428 			T18_ = NIM_NIL;
39429 			T18_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_757));
39430 			cgFormatValue__cgen_141((&res), T18_);
39431 			res = resizeString(res, 1);
39432 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
39433 			cgFormatValue__cgen_141((&res), r);
39434 			res = resizeString(res, 2);
39435 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
39436 			cgFormatValue__cgen_141((&res), checkFor);
39437 			res = resizeString(res, 4);
39438 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_580));
39439 			T19_ = NIM_NIL;
39440 			T19_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_979));
39441 			cgFormatValue__cgen_141((&res), T19_);
39442 			res = resizeString(res, 4);
39443 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
39444 			T20_ = NIM_NIL;
39445 			T20_ = raiseInstr__cgen_414(p);
39446 			cgFormatValue__cgen_141((&res), T20_);
39447 			res = resizeString(res, 1);
39448 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
39449 			{
39450 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA23_;
39451 				res = resizeString(res, 1);
39452 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
39453 			}
39454 			LA23_: ;
39455 			T25_ = NIM_NIL;
39456 			T25_ = rope__ropes_109(res);
39457 			T26_ = NIM_NIL;
39458 			T26_ = indentLine__cgen_280(p, T25_);
39459 			add__ropes_159(T17_, T26_);
39460 		}
39461 		goto LA13_;
39462 		LA15_: ;
39463 		{
39464 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T28_;
39465 			NimStringDesc* res_2;
39466 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
39467 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
39468 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
39469 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
39470 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
39471 			T28_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39472 			T28_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39473 			res_2 = rawNewString(((NI) 80));
39474 			res_2 = resizeString(res_2, 5);
39475 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_980));
39476 			T29_ = NIM_NIL;
39477 			T29_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_757));
39478 			cgFormatValue__cgen_141((&res_2), T29_);
39479 			res_2 = resizeString(res_2, 1);
39480 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
39481 			cgFormatValue__cgen_141((&res_2), r);
39482 			res_2 = resizeString(res_2, 2);
39483 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
39484 			cgFormatValue__cgen_141((&res_2), checkFor);
39485 			res_2 = resizeString(res_2, 4);
39486 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_580));
39487 			T30_ = NIM_NIL;
39488 			T30_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_979));
39489 			cgFormatValue__cgen_141((&res_2), T30_);
39490 			res_2 = resizeString(res_2, 4);
39491 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
39492 			T31_ = NIM_NIL;
39493 			T31_ = raiseInstr__cgen_414(p);
39494 			cgFormatValue__cgen_141((&res_2), T31_);
39495 			res_2 = resizeString(res_2, 1);
39496 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
39497 			{
39498 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA34_;
39499 				res_2 = resizeString(res_2, 1);
39500 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
39501 			}
39502 			LA34_: ;
39503 			T36_ = NIM_NIL;
39504 			T36_ = rope__ropes_109(res_2);
39505 			T37_ = NIM_NIL;
39506 			T37_ = indentLine__cgen_280(p, T36_);
39507 			add__ropes_159(T28_, T37_);
39508 		}
39509 		LA13_: ;
39510 	}
39511 	LA6_: ;
39512 	{
39513 		if (!!(((*(*(*n)._kind_6.sons->data[((NI) 0)]).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 17)))) goto LA40_;
39514 		{
39515 			NIM_BOOL T44_;
39516 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T47_;
39517 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
39518 			T44_ = (NIM_BOOL)0;
39519 			T44_ = isLValue__parampatterns_497(n);
39520 			if (!T44_) goto LA45_;
39521 			nimZeroMem((void*)T47_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
39522 			T47_[0] = getTypeDesc__cgen_6631((*p).module, (*n).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
39523 			T47_[1] = rdLoc__cgen_425(a);
39524 			T48_ = NIM_NIL;
39525 			T48_ = percent___cgen_24156(T47_, 2);
39526 			putIntoDest__cgen_18656(p, d, n, T48_, a.storage);
39527 		}
39528 		goto LA42_;
39529 		LA45_: ;
39530 		{
39531 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T50_;
39532 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
39533 			nimZeroMem((void*)T50_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
39534 			T50_[0] = getTypeDesc__cgen_6631((*p).module, (*n).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
39535 			T50_[1] = rdLoc__cgen_425(a);
39536 			T51_ = NIM_NIL;
39537 			T51_ = percent___cgen_22703(T50_, 2);
39538 			putIntoDest__cgen_18656(p, d, n, T51_, a.storage);
39539 		}
39540 		LA42_: ;
39541 	}
39542 	goto LA38_;
39543 	LA40_: ;
39544 	{
39545 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T53_;
39546 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
39547 		nimZeroMem((void*)T53_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
39548 		T53_[0] = getTypeDesc__cgen_6631((*p).module, dest, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
39549 		T53_[1] = addrLoc__cgen_10303((*(*(*p).module).g).config, a);
39550 		T54_ = NIM_NIL;
39551 		T54_ = percent___cgen_22686(T53_, 2);
39552 		putIntoDest__cgen_18656(p, d, n, T54_, a.storage);
39553 	}
39554 	LA38_: ;
39555 }
N_NIMCALL(void,genRangeChck__cgen_22798)39556 N_LIB_PRIVATE N_NIMCALL(void, genRangeChck__cgen_22798)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
39557 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
39558 	tyObject_TType__facALICuu8zUj0hjvbTLFg* dest;
39559 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T59_;
39560 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
39561 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
39562 	dest = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_357);
39563 	initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 0)], (&a));
39564 	{
39565 		NIM_BOOL T3_;
39566 		NIM_BOOL T5_;
39567 		T3_ = (NIM_BOOL)0;
39568 		T3_ = !((((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 3))&31U)))!=0));
39569 		if (T3_) goto LA4_;
39570 		T5_ = (NIM_BOOL)0;
39571 		T5_ = ((*dest).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) && (*dest).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44));
39572 		if (!(T5_)) goto LA6_;
39573 		T5_ = !((((*(*(*(*p).module).g).config).legacyFeatures &((NU8)1<<((NU)(((tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA) 1))&7U)))!=0));
39574 		LA6_: ;
39575 		T3_ = T5_;
39576 		LA4_: ;
39577 		if (!T3_) goto LA7_;
39578 	}
39579 	goto LA1_;
39580 	LA7_: ;
39581 	{
39582 		tyObject_TType__facALICuu8zUj0hjvbTLFg* n0t;
39583 		n0t = (*(*n)._kind_6.sons->data[((NI) 0)]).typ;
39584 		{
39585 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T14_;
39586 			NimStringDesc* res;
39587 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
39588 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
39589 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
39590 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
39591 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
39592 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
39593 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
39594 			if (!((*n0t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) || (*n0t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44))) goto LA12_;
39595 			T14_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39596 			T14_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39597 			res = rawNewString(((NI) 80));
39598 			res = resizeString(res, 4);
39599 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
39600 			T15_ = NIM_NIL;
39601 			T15_ = rdCharLoc__cgen_10343(a);
39602 			cgFormatValue__cgen_141((&res), T15_);
39603 			res = resizeString(res, 4);
39604 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_981));
39605 			T16_ = NIM_NIL;
39606 			T16_ = getTypeDesc__cgen_6631((*p).module, n0t, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
39607 			cgFormatValue__cgen_141((&res), T16_);
39608 			res = resizeString(res, 2);
39609 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_644));
39610 			T17_ = NIM_NIL;
39611 			T17_ = genLiteral__cgen_17638(p, (*n)._kind_6.sons->data[((NI) 2)], dest);
39612 			cgFormatValue__cgen_141((&res), T17_);
39613 			res = resizeString(res, 4);
39614 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_580));
39615 			T18_ = NIM_NIL;
39616 			T18_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_982));
39617 			cgFormatValue__cgen_141((&res), T18_);
39618 			res = resizeString(res, 4);
39619 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_568));
39620 			T19_ = NIM_NIL;
39621 			T19_ = raiseInstr__cgen_414(p);
39622 			cgFormatValue__cgen_141((&res), T19_);
39623 			res = resizeString(res, 1);
39624 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
39625 			{
39626 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA22_;
39627 				res = resizeString(res, 1);
39628 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
39629 			}
39630 			LA22_: ;
39631 			T24_ = NIM_NIL;
39632 			T24_ = rope__ropes_109(res);
39633 			T25_ = NIM_NIL;
39634 			T25_ = indentLine__cgen_280(p, T24_);
39635 			add__ropes_159(T14_, T25_);
39636 		}
39637 		goto LA10_;
39638 		LA12_: ;
39639 		{
39640 			NimStringDesc* raiser;
39641 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T27_;
39642 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
39643 			NimStringDesc* boundaryCast;
39644 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T44_;
39645 			NimStringDesc* res_2;
39646 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
39647 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
39648 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
39649 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
39650 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
39651 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
39652 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
39653 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
39654 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
39655 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
39656 			T27_ = NIM_NIL;
39657 			T27_ = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
39658 			switch ((*T27_).kind) {
39659 			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44):
39660 			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2):
39661 			{
39662 				raiser = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_983));
39663 			}
39664 			break;
39665 			case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39):
39666 			{
39667 				raiser = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_984));
39668 			}
39669 			break;
39670 			default:
39671 			{
39672 				raiser = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_985));
39673 			}
39674 			break;
39675 			}
39676 			T31_ = NIM_NIL;
39677 			T31_ = cgsym__cgen_120((*p).module, raiser);
39678 			(void)(T31_);
39679 			{
39680 				NIM_BOOL T34_;
39681 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T35_;
39682 				NIM_BOOL T37_;
39683 				NIM_BOOL T38_;
39684 				T34_ = (NIM_BOOL)0;
39685 				T35_ = NIM_NIL;
39686 				T35_ = skipTypes__ast_3735(n0t, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
39687 				T34_ = ((*T35_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) || (*T35_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 43) || (*T35_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44));
39688 				if (T34_) goto LA36_;
39689 				T37_ = (NIM_BOOL)0;
39690 				T38_ = (NIM_BOOL)0;
39691 				T38_ = !(((*n0t).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
39692 				if (!(T38_)) goto LA39_;
39693 				T38_ = (((*(*(*n0t).sym).owner).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0);
39694 				LA39_: ;
39695 				T37_ = T38_;
39696 				if (!(T37_)) goto LA40_;
39697 				T37_ = eqStrings((*(*(*n0t).sym).name).s, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_986));
39698 				LA40_: ;
39699 				T34_ = T37_;
39700 				LA36_: ;
39701 				if (!T34_) goto LA41_;
39702 				boundaryCast = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_987));
39703 			}
39704 			goto LA32_;
39705 			LA41_: ;
39706 			{
39707 				boundaryCast = ((NimStringDesc*) NIM_NIL);
39708 			}
39709 			LA32_: ;
39710 			T44_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39711 			T44_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
39712 			res_2 = rawNewString(((NI) 80));
39713 			res_2 = resizeString(res_2, 4);
39714 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
39715 			cgFormatValue__cgen_145((&res_2), boundaryCast);
39716 			res_2 = resizeString(res_2, 1);
39717 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
39718 			T45_ = NIM_NIL;
39719 			T45_ = rdCharLoc__cgen_10343(a);
39720 			cgFormatValue__cgen_141((&res_2), T45_);
39721 			res_2 = resizeString(res_2, 4);
39722 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_988));
39723 			T46_ = NIM_NIL;
39724 			T46_ = genLiteral__cgen_17638(p, (*n)._kind_6.sons->data[((NI) 1)], dest);
39725 			cgFormatValue__cgen_141((&res_2), T46_);
39726 			res_2 = resizeString(res_2, 4);
39727 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_578));
39728 			cgFormatValue__cgen_145((&res_2), boundaryCast);
39729 			res_2 = resizeString(res_2, 1);
39730 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
39731 			T47_ = NIM_NIL;
39732 			T47_ = rdCharLoc__cgen_10343(a);
39733 			cgFormatValue__cgen_141((&res_2), T47_);
39734 			res_2 = resizeString(res_2, 4);
39735 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_989));
39736 			T48_ = NIM_NIL;
39737 			T48_ = genLiteral__cgen_17638(p, (*n)._kind_6.sons->data[((NI) 2)], dest);
39738 			cgFormatValue__cgen_141((&res_2), T48_);
39739 			res_2 = resizeString(res_2, 3);
39740 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_640));
39741 			cgFormatValue__cgen_145((&res_2), raiser);
39742 			res_2 = resizeString(res_2, 1);
39743 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
39744 			T49_ = NIM_NIL;
39745 			T49_ = rdCharLoc__cgen_10343(a);
39746 			cgFormatValue__cgen_141((&res_2), T49_);
39747 			res_2 = resizeString(res_2, 2);
39748 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
39749 			T50_ = NIM_NIL;
39750 			T50_ = genLiteral__cgen_17638(p, (*n)._kind_6.sons->data[((NI) 1)], dest);
39751 			cgFormatValue__cgen_141((&res_2), T50_);
39752 			res_2 = resizeString(res_2, 2);
39753 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
39754 			T51_ = NIM_NIL;
39755 			T51_ = genLiteral__cgen_17638(p, (*n)._kind_6.sons->data[((NI) 2)], dest);
39756 			cgFormatValue__cgen_141((&res_2), T51_);
39757 			res_2 = resizeString(res_2, 3);
39758 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_653));
39759 			T52_ = NIM_NIL;
39760 			T52_ = raiseInstr__cgen_414(p);
39761 			cgFormatValue__cgen_141((&res_2), T52_);
39762 			res_2 = resizeString(res_2, 1);
39763 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
39764 			{
39765 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA55_;
39766 				res_2 = resizeString(res_2, 1);
39767 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
39768 			}
39769 			LA55_: ;
39770 			T57_ = NIM_NIL;
39771 			T57_ = rope__ropes_109(res_2);
39772 			T58_ = NIM_NIL;
39773 			T58_ = indentLine__cgen_280(p, T57_);
39774 			add__ropes_159(T44_, T58_);
39775 		}
39776 		LA10_: ;
39777 	}
39778 	LA1_: ;
39779 	nimZeroMem((void*)T59_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
39780 	T59_[0] = getTypeDesc__cgen_6631((*p).module, dest, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
39781 	T59_[1] = rdCharLoc__cgen_10343(a);
39782 	T60_ = NIM_NIL;
39783 	T60_ = percent___cgen_22703(T59_, 2);
39784 	putIntoDest__cgen_18656(p, d, n, T60_, a.storage);
39785 }
N_NIMCALL(void,convStrToCStr__cgen_22879)39786 N_LIB_PRIVATE N_NIMCALL(void, convStrToCStr__cgen_22879)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
39787 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
39788 	NimStringDesc* res;
39789 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
39790 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
39791 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
39792 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
39793 	initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 0)], (&a));
39794 	res = rawNewString(((NI) 80));
39795 	T1_ = NIM_NIL;
39796 	T1_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_545));
39797 	cgFormatValue__cgen_141((&res), T1_);
39798 	res = resizeString(res, 1);
39799 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
39800 	T2_ = NIM_NIL;
39801 	T2_ = rdLoc__cgen_425(a);
39802 	cgFormatValue__cgen_141((&res), T2_);
39803 	res = resizeString(res, 1);
39804 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
39805 	T3_ = NIM_NIL;
39806 	T3_ = rope__ropes_109(res);
39807 	putIntoDest__cgen_18656(p, d, n, T3_, a.storage);
39808 }
N_NIMCALL(void,convCStrToStr__cgen_22894)39809 N_LIB_PRIVATE N_NIMCALL(void, convCStrToStr__cgen_22894)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
39810 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
39811 	NimStringDesc* res;
39812 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
39813 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
39814 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
39815 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
39816 	initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 0)], (&a));
39817 	res = rawNewString(((NI) 80));
39818 	T1_ = NIM_NIL;
39819 	T1_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_752));
39820 	cgFormatValue__cgen_141((&res), T1_);
39821 	res = resizeString(res, 1);
39822 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
39823 	T2_ = NIM_NIL;
39824 	T2_ = rdLoc__cgen_425(a);
39825 	cgFormatValue__cgen_141((&res), T2_);
39826 	res = resizeString(res, 1);
39827 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
39828 	T3_ = NIM_NIL;
39829 	T3_ = rope__ropes_109(res);
39830 	putIntoDest__cgen_18656(p, d, n, T3_, a.storage);
39831 	gcUsage__cgen_20362((*(*(*p).module).g).config, n);
39832 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14327)39833 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14327)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
39834 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
39835 	result = NIM_NIL;
39836 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1001), args, argsLen_0);
39837 	return result;
39838 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14333)39839 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14333)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
39840 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
39841 	result = NIM_NIL;
39842 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1002), args, argsLen_0);
39843 	return result;
39844 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14344)39845 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14344)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
39846 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
39847 	result = NIM_NIL;
39848 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1003), args, argsLen_0);
39849 	return result;
39850 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14349)39851 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14349)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
39852 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
39853 	result = NIM_NIL;
39854 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1004), args, argsLen_0);
39855 	return result;
39856 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14364)39857 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14364)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
39858 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
39859 	result = NIM_NIL;
39860 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1005), args, argsLen_0);
39861 	return result;
39862 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14407)39863 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14407)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
39864 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
39865 	result = NIM_NIL;
39866 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1008), args, argsLen_0);
39867 	return result;
39868 }
N_NIMCALL(void,genComputedGoto__cgen_14291)39869 N_LIB_PRIVATE N_NIMCALL(void, genComputedGoto__cgen_14291)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
39870 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n_2;
39871 	NI casePos;
39872 	NI arraySize;
39873 	NI id;
39874 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
39875 	tyArray__JiWwrsTRC6xqNlGcBthSVA T33_;
39876 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* gotoArray;
39877 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T34_;
39878 	tyArray__JiWwrsTRC6xqNlGcBthSVA T40_;
39879 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
39880 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T42_;
39881 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
39882 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* caseStmt;
39883 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
39884 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T47_;
39885 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T48_;
39886 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
39887 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
39888 {	n_2 = flattenStmts__trees_355(n);
39889 	casePos = ((NI) -1);
39890 	arraySize = (NI)0;
39891 	{
39892 		NI i;
39893 		NI colontmp_;
39894 		NI i_2;
39895 		i = (NI)0;
39896 		colontmp_ = (NI)0;
39897 		colontmp_ = len__ast_3198(n_2);
39898 		i_2 = ((NI) 0);
39899 		{
39900 			while (1) {
39901 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
39902 				if (!(i_2 < colontmp_)) goto LA3;
39903 				i = i_2;
39904 				it = (*n_2)._kind_6.sons->data[i];
39905 				{
39906 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA aSize;
39907 					if (!((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 97))) goto LA6_;
39908 					{
39909 						tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T10_;
39910 						T10_ = NIM_NIL;
39911 						T10_ = lastSon__ast_4832(it);
39912 						if (!!(((*T10_).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85)))) goto LA11_;
39913 						liMessage__msgs_1118((*(*(*p).module).g).config, (*it).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_991), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_992, NIM_FALSE);
39914 						goto BeforeRet_;
39915 					}
39916 					LA11_: ;
39917 					casePos = i;
39918 					{
39919 						NIM_BOOL T15_;
39920 						T15_ = (NIM_BOOL)0;
39921 						T15_ = enumHasHoles__types_287((*(*it)._kind_6.sons->data[((NI) 0)]).typ);
39922 						if (!T15_) goto LA16_;
39923 						liMessage__msgs_1118((*(*(*p).module).g).config, (*it).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_993), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_994, NIM_FALSE);
39924 						goto BeforeRet_;
39925 					}
39926 					LA16_: ;
39927 					aSize = lengthOrd__types_1652((*(*(*p).module).g).config, (*(*it)._kind_6.sons->data[((NI) 0)]).typ);
39928 					{
39929 						NIM_BOOL T20_;
39930 						T20_ = (NIM_BOOL)0;
39931 						T20_ = lt___int495056_738(IL64(10000), aSize);
39932 						if (!T20_) goto LA21_;
39933 						liMessage__msgs_1118((*(*(*p).module).g).config, (*it).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_995), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_996, NIM_FALSE);
39934 						goto BeforeRet_;
39935 					}
39936 					LA21_: ;
39937 					arraySize = toInt__int495056_170(aSize);
39938 					{
39939 						tyObject_Int128__9a9axPfb75jdWY25AamJewkA T25_;
39940 						NIM_BOOL T26_;
39941 						T25_ = firstOrd__types_1353((*(*(*p).module).g).config, (*(*it)._kind_6.sons->data[((NI) 0)]).typ);
39942 						T26_ = (NIM_BOOL)0;
39943 						T26_ = eqeq___int495056_759(T25_, IL64(0));
39944 						if (!!(T26_)) goto LA27_;
39945 						liMessage__msgs_1118((*(*(*p).module).g).config, (*it).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_997), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_998, NIM_FALSE);
39946 						goto BeforeRet_;
39947 					}
39948 					LA27_: ;
39949 				}
39950 				LA6_: ;
39951 				i_2 += ((NI) 1);
39952 			} LA3: ;
39953 		}
39954 	}
39955 	{
39956 		if (!(casePos < ((NI) 0))) goto LA31_;
39957 		liMessage__msgs_1118((*(*(*p).module).g).config, (*n_2).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_999), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_1000, NIM_FALSE);
39958 		goto BeforeRet_;
39959 	}
39960 	LA31_: ;
39961 	id = (NI)(((NI) ((*p).labels)) + ((NI) 1));
39962 	(*p).labels += (NI)(arraySize + ((NI) 1));
39963 	nimZeroMem((void*)T33_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
39964 	T33_[0] = rope__ropes_115(((NI64) (id)));
39965 	tmp = percent___cgen_14327(T33_, 1);
39966 	nimZeroMem((void*)T34_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
39967 	T34_[0] = tmp;
39968 	T34_[1] = rope__ropes_115(((NI64) (arraySize)));
39969 	gotoArray = percent___cgen_14333(T34_, 2);
39970 	{
39971 		NI i_3;
39972 		NI colontmp__2;
39973 		NI res;
39974 		i_3 = (NI)0;
39975 		colontmp__2 = (NI)0;
39976 		colontmp__2 = (NI)(arraySize - ((NI) 1));
39977 		res = ((NI) 1);
39978 		{
39979 			while (1) {
39980 				tyArray__JiWwrsTRC6xqNlGcBthSVA T38_;
39981 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
39982 				if (!(res <= colontmp__2)) goto LA37;
39983 				i_3 = res;
39984 				nimZeroMem((void*)T38_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
39985 				T38_[0] = rope__ropes_115(((NI64) ((NI)(id + i_3))));
39986 				T39_ = NIM_NIL;
39987 				T39_ = percent___cgen_14344(T38_, 1);
39988 				add__ropes_159(&gotoArray, T39_);
39989 				res += ((NI) 1);
39990 			} LA37: ;
39991 		}
39992 	}
39993 	nimZeroMem((void*)T40_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
39994 	T40_[0] = rope__ropes_115(((NI64) ((NI)(id + arraySize))));
39995 	T41_ = NIM_NIL;
39996 	T41_ = percent___cgen_14349(T40_, 1);
39997 	add__ropes_159(&gotoArray, T41_);
39998 	T42_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
39999 	T42_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
40000 	T43_ = NIM_NIL;
40001 	T43_ = indentLine__cgen_280(p, gotoArray);
40002 	add__ropes_159(T42_, T43_);
40003 	{
40004 		NI j;
40005 		NI i_4;
40006 		j = (NI)0;
40007 		i_4 = ((NI) 0);
40008 		{
40009 			while (1) {
40010 				if (!(i_4 < casePos)) goto LA46;
40011 				j = i_4;
40012 				genStmts__cgen_11457(p, (*n_2)._kind_6.sons->data[j]);
40013 				i_4 += ((NI) 1);
40014 			} LA46: ;
40015 		}
40016 	}
40017 	caseStmt = (*n_2)._kind_6.sons->data[casePos];
40018 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
40019 	initLocExpr__cgen_11483(p, (*caseStmt)._kind_6.sons->data[((NI) 0)], (&a));
40020 	T47_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40021 	T47_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
40022 	nimZeroMem((void*)T48_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
40023 	T48_[0] = tmp;
40024 	T48_[1] = rdLoc__cgen_425(a);
40025 	T49_ = NIM_NIL;
40026 	T49_ = percent___cgen_14364(T48_, 2);
40027 	T50_ = NIM_NIL;
40028 	T50_ = indentLine__cgen_280(p, T49_);
40029 	add__ropes_159(T47_, T50_);
40030 	{
40031 		NI i_5;
40032 		NI colontmp__3;
40033 		NI i_6;
40034 		i_5 = (NI)0;
40035 		colontmp__3 = (NI)0;
40036 		colontmp__3 = len__ast_3198(caseStmt);
40037 		i_6 = ((NI) 1);
40038 		{
40039 			while (1) {
40040 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T54_;
40041 				NimStringDesc* res_2;
40042 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
40043 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
40044 				NI T61_;
40045 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it_2;
40046 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T75_;
40047 				tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_2;
40048 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T105_;
40049 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T106_;
40050 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T107_;
40051 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T108_;
40052 				if (!(i_6 < colontmp__3)) goto LA53;
40053 				i_5 = i_6;
40054 				T54_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40055 				T54_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
40056 				res_2 = rawNewString(((NI) 80));
40057 				res_2 = resizeString(res_2, 1);
40058 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
40059 				{
40060 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA57_;
40061 					res_2 = resizeString(res_2, 1);
40062 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
40063 				}
40064 				LA57_: ;
40065 				T59_ = NIM_NIL;
40066 				T59_ = rope__ropes_109(res_2);
40067 				T60_ = NIM_NIL;
40068 				T60_ = indentLine__cgen_280(p, T59_);
40069 				add__ropes_159(T54_, T60_);
40070 				T61_ = (NI)0;
40071 				T61_ = startBlockInternal__cgen_13189(p);
40072 				it_2 = (*caseStmt)._kind_6.sons->data[i_5];
40073 				{
40074 					NI j_2;
40075 					NI colontmp__4;
40076 					NI T63_;
40077 					NI i_7;
40078 					j_2 = (NI)0;
40079 					colontmp__4 = (NI)0;
40080 					T63_ = (NI)0;
40081 					T63_ = len__ast_3198(it_2);
40082 					colontmp__4 = (NI)(T63_ - ((NI) 1));
40083 					i_7 = ((NI) 0);
40084 					{
40085 						while (1) {
40086 							tyObject_Int128__9a9axPfb75jdWY25AamJewkA val;
40087 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T70_;
40088 							tyArray__JiWwrsTRC6xqNlGcBthSVA T71_;
40089 							NI64 T72_;
40090 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T73_;
40091 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T74_;
40092 							if (!(i_7 < colontmp__4)) goto LA65;
40093 							j_2 = i_7;
40094 							{
40095 								if (!((*(*it_2)._kind_6.sons->data[j_2]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA68_;
40096 								liMessage__msgs_1118((*(*(*p).module).g).config, (*it_2).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1006), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_1007, NIM_FALSE);
40097 								goto BeforeRet_;
40098 							}
40099 							LA68_: ;
40100 							val = getOrdValue__types_161((*it_2)._kind_6.sons->data[j_2], Max__int495056_27);
40101 							T70_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40102 							T70_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
40103 							nimZeroMem((void*)T71_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
40104 							T72_ = (NI64)0;
40105 							T72_ = toInt64__int495056_88(val);
40106 							T71_[0] = intLiteral__cgen_11471((NI64)((NI64)(T72_ + ((NI64) (id))) + IL64(1)));
40107 							T73_ = NIM_NIL;
40108 							T73_ = percent___cgen_14407(T71_, 1);
40109 							T74_ = NIM_NIL;
40110 							T74_ = indentLine__cgen_280(p, T73_);
40111 							add__ropes_159(T70_, T74_);
40112 							i_7 += ((NI) 1);
40113 						} LA65: ;
40114 					}
40115 				}
40116 				T75_ = NIM_NIL;
40117 				T75_ = lastSon__ast_4832(it_2);
40118 				genStmts__cgen_11457(p, T75_);
40119 				{
40120 					NI j_3;
40121 					NI colontmp__5;
40122 					NI colontmp__6;
40123 					NI i_8;
40124 					j_3 = (NI)0;
40125 					colontmp__5 = (NI)0;
40126 					colontmp__6 = (NI)0;
40127 					colontmp__5 = (NI)(casePos + ((NI) 1));
40128 					colontmp__6 = len__ast_3198(n_2);
40129 					i_8 = colontmp__5;
40130 					{
40131 						while (1) {
40132 							if (!(i_8 < colontmp__6)) goto LA78;
40133 							j_3 = i_8;
40134 							genStmts__cgen_11457(p, (*n_2)._kind_6.sons->data[j_3]);
40135 							i_8 += ((NI) 1);
40136 						} LA78: ;
40137 					}
40138 				}
40139 				{
40140 					NI j_4;
40141 					NI i_9;
40142 					j_4 = (NI)0;
40143 					i_9 = ((NI) 0);
40144 					{
40145 						while (1) {
40146 							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it_3;
40147 							if (!(i_9 < casePos)) goto LA81;
40148 							j_4 = i_9;
40149 							it_3 = (*n_2)._kind_6.sons->data[j_4];
40150 							{
40151 								tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* asgn;
40152 								if (!((*it_3).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 100) || (*it_3).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99))) goto LA84_;
40153 								asgn = copyNode__ast_4336(it_3);
40154 								transitionSonsKind__ast_4359(asgn, ((tyEnum_TNodeKind__Dq0DNfMwTBUf7hLFKKDU7g) 73));
40155 								asgnRef((void**) (&(*asgn)._kind_6.sons), (tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ*) setLengthSeqV2(&((*asgn)._kind_6.sons)->Sup, (&NTItnodeseq__ehmV9bTklH2Gt9cXHV9c0HLeQ_), ((NI) 2)));
40156 								{
40157 									tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* sym;
40158 									tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value;
40159 									sym = NIM_NIL;
40160 									value = NIM_NIL;
40161 									{
40162 										tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* identDefs;
40163 										identDefs = NIM_NIL;
40164 										{
40165 											NI i_10;
40166 											NI colontmp__7;
40167 											NI i_11;
40168 											i_10 = (NI)0;
40169 											colontmp__7 = (NI)0;
40170 											colontmp__7 = safeLen__ast_3191(it_3);
40171 											i_11 = ((NI) 0);
40172 											{
40173 												while (1) {
40174 													if (!(i_11 < colontmp__7)) goto LA90;
40175 													i_10 = i_11;
40176 													identDefs = (*it_3)._kind_6.sons->data[i_10];
40177 													{
40178 														tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* valueSym;
40179 														NI T95_;
40180 														if (!((*identDefs).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 35))) goto LA93_;
40181 														T95_ = (NI)0;
40182 														T95_ = len__ast_3198(identDefs);
40183 														valueSym = (*identDefs)._kind_6.sons->data[(NI)(T95_ - ((NI) 1))];
40184 														{
40185 															NI i_12;
40186 															NI colontmp__8;
40187 															NI T97_;
40188 															NI i_13;
40189 															i_12 = (NI)0;
40190 															colontmp__8 = (NI)0;
40191 															T97_ = (NI)0;
40192 															T97_ = len__ast_3198(identDefs);
40193 															colontmp__8 = (NI)(T97_ - ((NI) 2));
40194 															i_13 = ((NI) 0);
40195 															{
40196 																while (1) {
40197 																	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* memberSym;
40198 																	if (!(i_13 < colontmp__8)) goto LA99;
40199 																	i_12 = i_13;
40200 																	memberSym = (*identDefs)._kind_6.sons->data[i_12];
40201 																	sym = memberSym;
40202 																	value = valueSym;
40203 																	{
40204 																		if (!!(((*value).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA102_;
40205 																		asgnRef((void**) (&(*asgn)._kind_6.sons->data[((NI) 0)]), sym);
40206 																		asgnRef((void**) (&(*asgn)._kind_6.sons->data[((NI) 1)]), value);
40207 																		genStmts__cgen_11457(p, asgn);
40208 																	}
40209 																	LA102_: ;
40210 																	i_13 += ((NI) 1);
40211 																} LA99: ;
40212 															}
40213 														}
40214 													}
40215 													LA93_: ;
40216 													i_11 += ((NI) 1);
40217 												} LA90: ;
40218 											}
40219 										}
40220 									}
40221 								}
40222 							}
40223 							goto LA82_;
40224 							LA84_: ;
40225 							{
40226 								genStmts__cgen_11457(p, it_3);
40227 							}
40228 							LA82_: ;
40229 							i_9 += ((NI) 1);
40230 						} LA81: ;
40231 					}
40232 				}
40233 				nimZeroMem((void*)(&a_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
40234 				initLocExpr__cgen_11483(p, (*caseStmt)._kind_6.sons->data[((NI) 0)], (&a_2));
40235 				T105_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40236 				T105_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
40237 				nimZeroMem((void*)T106_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
40238 				T106_[0] = tmp;
40239 				T106_[1] = rdLoc__cgen_425(a_2);
40240 				T107_ = NIM_NIL;
40241 				T107_ = percent___cgen_14364(T106_, 2);
40242 				T108_ = NIM_NIL;
40243 				T108_ = indentLine__cgen_280(p, T107_);
40244 				add__ropes_159(T105_, T108_);
40245 				endBlock__cgen_13210(p);
40246 				i_6 += ((NI) 1);
40247 			} LA53: ;
40248 		}
40249 	}
40250 	{
40251 		NI j_5;
40252 		NI colontmp__9;
40253 		NI colontmp__10;
40254 		NI i_14;
40255 		j_5 = (NI)0;
40256 		colontmp__9 = (NI)0;
40257 		colontmp__10 = (NI)0;
40258 		colontmp__9 = (NI)(casePos + ((NI) 1));
40259 		colontmp__10 = len__ast_3198(n_2);
40260 		i_14 = colontmp__9;
40261 		{
40262 			while (1) {
40263 				if (!(i_14 < colontmp__10)) goto LA111;
40264 				j_5 = i_14;
40265 				genStmts__cgen_11457(p, (*n_2)._kind_6.sons->data[j_5]);
40266 				i_14 += ((NI) 1);
40267 			} LA111: ;
40268 		}
40269 	}
40270 	}BeforeRet_: ;
40271 }
N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,assignLabel__cgen_13432)40272 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, assignLabel__cgen_13432)(tyObject_TBlock__GFhahvekTq3dDOkWyhchMA* b) {
40273 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
40274 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
40275 	result = NIM_NIL;
40276 	T1_ = NIM_NIL;
40277 	T1_ = rope__ropes_115(((NI64) ((*b).id)));
40278 	unsureAsgnRef((void**) (&(*b).label), amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_631), T1_));
40279 	result = (*b).label;
40280 	return result;
40281 }
N_NIMCALL(void,genWhileStmt__cgen_14463)40282 N_LIB_PRIVATE N_NIMCALL(void, genWhileStmt__cgen_14463)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t) {
40283 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
40284 	NI oldBreakIdxX60gensym1932_;
40285 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* loopBody;
40286 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
40287 	(*p).withinLoop += ((NI) 1);
40288 	genLineDir__cgen_359(p, t);
40289 	oldBreakIdxX60gensym1932_ = (*p).breakIdx;
40290 	loopBody = (*t)._kind_6.sons->data[((NI) 1)];
40291 	{
40292 		NIM_BOOL T3_;
40293 		T3_ = (NIM_BOOL)0;
40294 		T3_ = stmtsContainPragma__ccgutils_42(loopBody, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 206));
40295 		if (!(T3_)) goto LA4_;
40296 		T3_ = ((CC__extccomp_508[((*(*(*(*p).module).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 1))&7U)))!=0);
40297 		LA4_: ;
40298 		if (!T3_) goto LA5_;
40299 		{
40300 			NIM_BOOL T9_;
40301 			NI T10_;
40302 			T9_ = (NIM_BOOL)0;
40303 			T10_ = (NI)0;
40304 			T10_ = len__ast_3198(loopBody);
40305 			T9_ = (T10_ == ((NI) 2));
40306 			if (!(T9_)) goto LA11_;
40307 			T9_ = ((*(*loopBody)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1));
40308 			LA11_: ;
40309 			if (!T9_) goto LA12_;
40310 			loopBody = (*loopBody)._kind_6.sons->data[((NI) 1)];
40311 		}
40312 		LA12_: ;
40313 		genComputedGoto__cgen_14291(p, loopBody);
40314 	}
40315 	goto LA1_;
40316 	LA5_: ;
40317 	{
40318 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T15_;
40319 		NimStringDesc* res;
40320 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
40321 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
40322 		T15_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40323 		T15_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
40324 		res = rawNewString(((NI) 80));
40325 		res = resizeString(res, 11);
40326 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1009));
40327 		{
40328 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA18_;
40329 			res = resizeString(res, 1);
40330 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
40331 		}
40332 		LA18_: ;
40333 		T20_ = NIM_NIL;
40334 		T20_ = rope__ropes_109(res);
40335 		T21_ = NIM_NIL;
40336 		T21_ = indentLine__cgen_280(p, T20_);
40337 		add__ropes_159(T15_, T21_);
40338 		(*p).breakIdx = startBlockInternal__cgen_13189(p);
40339 		(*p).blocks->data[(*p).breakIdx].isLoop = NIM_TRUE;
40340 		initLocExpr__cgen_11483(p, (*t)._kind_6.sons->data[((NI) 0)], (&a));
40341 		{
40342 			NIM_BOOL T24_;
40343 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* label;
40344 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T28_;
40345 			tyArray__mrugoXXRZUEeG9bEXo9auBKw T29_;
40346 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
40347 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
40348 			T24_ = (NIM_BOOL)0;
40349 			T24_ = !(((*(*t)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6)));
40350 			if (T24_) goto LA25_;
40351 			T24_ = ((*(*t)._kind_6.sons->data[((NI) 0)])._kind_1.intVal == IL64(0));
40352 			LA25_: ;
40353 			if (!T24_) goto LA26_;
40354 			label = assignLabel__cgen_13432((&(*p).blocks->data[(*p).breakIdx]));
40355 			T28_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40356 			T28_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
40357 			nimZeroMem((void*)T29_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
40358 			T29_[0] = rdLoc__cgen_425(a);
40359 			T29_[1] = label;
40360 			T30_ = NIM_NIL;
40361 			T30_ = percent___cgen_14101(T29_, 2);
40362 			T31_ = NIM_NIL;
40363 			T31_ = indentLine__cgen_280(p, T30_);
40364 			add__ropes_159(T28_, T31_);
40365 		}
40366 		LA26_: ;
40367 		genStmts__cgen_11457(p, loopBody);
40368 		{
40369 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T36_;
40370 			NimStringDesc* res_2;
40371 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
40372 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
40373 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
40374 			if (!(((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 21))&31U)))!=0)) goto LA34_;
40375 			T36_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40376 			T36_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
40377 			res_2 = rawNewString(((NI) 80));
40378 			T37_ = NIM_NIL;
40379 			T37_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_413));
40380 			cgFormatValue__cgen_141((&res_2), T37_);
40381 			res_2 = resizeString(res_2, 3);
40382 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
40383 			{
40384 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA40_;
40385 				res_2 = resizeString(res_2, 1);
40386 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
40387 			}
40388 			LA40_: ;
40389 			T42_ = NIM_NIL;
40390 			T42_ = rope__ropes_109(res_2);
40391 			T43_ = NIM_NIL;
40392 			T43_ = indentLine__cgen_280(p, T42_);
40393 			add__ropes_159(T36_, T43_);
40394 		}
40395 		LA34_: ;
40396 		endBlock__cgen_13210(p);
40397 	}
40398 	LA1_: ;
40399 	(*p).breakIdx = oldBreakIdxX60gensym1932_;
40400 	(*p).withinLoop -= ((NI) 1);
40401 }
N_NIMCALL(void,genSingleVar__cgen_14005)40402 N_LIB_PRIVATE N_NIMCALL(void, genSingleVar__cgen_14005)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a) {
40403 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v;
40404 {	v = (*(*a)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
40405 	{
40406 		if (!(((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 28))&63U)))!=0)) goto LA3_;
40407 		{
40408 			NIM_BOOL T7_;
40409 			NIM_BOOL T8_;
40410 			T7_ = (NIM_BOOL)0;
40411 			T8_ = (NIM_BOOL)0;
40412 			T8_ = (((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 3))&63U)))!=0);
40413 			if (!(T8_)) goto LA9_;
40414 			T8_ = !(((*p).prc == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
40415 			LA9_: ;
40416 			T7_ = T8_;
40417 			if (!(T7_)) goto LA10_;
40418 			T7_ = ((*(*p).prc).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 12));
40419 			LA10_: ;
40420 			if (!T7_) goto LA11_;
40421 		}
40422 		goto LA5_;
40423 		LA11_: ;
40424 		{
40425 			goto BeforeRet_;
40426 		}
40427 		LA5_: ;
40428 	}
40429 	LA3_: ;
40430 	genSingleVar__cgen_13806(p, v, (*a)._kind_6.sons->data[((NI) 0)], (*a)._kind_6.sons->data[((NI) 2)]);
40431 	}BeforeRet_: ;
40432 }
N_NIMCALL(void,genClosureVar__cgen_14028)40433 N_LIB_PRIVATE N_NIMCALL(void, genClosureVar__cgen_14028)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a) {
40434 	NIM_BOOL immediateAsgn;
40435 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA v;
40436 	immediateAsgn = !(((*(*a)._kind_6.sons->data[((NI) 2)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)));
40437 	nimZeroMem((void*)(&v), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
40438 	initLocExpr__cgen_11483(p, (*a)._kind_6.sons->data[((NI) 0)], (&v));
40439 	genLineDir__cgen_359(p, a);
40440 	{
40441 		if (!immediateAsgn) goto LA3_;
40442 		loadInto__cgen_13409(p, (*a)._kind_6.sons->data[((NI) 0)], (*a)._kind_6.sons->data[((NI) 2)], (&v));
40443 	}
40444 	goto LA1_;
40445 	LA3_: ;
40446 	{
40447 		constructLoc__cgen_10922(p, (&v), NIM_FALSE);
40448 	}
40449 	LA1_: ;
40450 }
N_NIMCALL(void,Marker_tySequence__sno9c9bXUVS2CqhtWOJadaCw)40451 static N_NIMCALL(void, Marker_tySequence__sno9c9bXUVS2CqhtWOJadaCw)(void* p, NI op) {
40452 	tySequence__sno9c9bXUVS2CqhtWOJadaCw* a;
40453 	NI T1_;
40454 	a = (tySequence__sno9c9bXUVS2CqhtWOJadaCw*)p;
40455 	T1_ = (NI)0;
40456 	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
40457 	nimGCvisit((void*)a->data[T1_].Field0.lode, op);
40458 	nimGCvisit((void*)a->data[T1_].Field0.r, op);
40459 	nimGCvisit((void*)a->data[T1_].Field1, op);
40460 	}
40461 }
N_NIMCALL(void,genVarTuple__cgen_13212)40462 N_LIB_PRIVATE N_NIMCALL(void, genVarTuple__cgen_13212)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
40463 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tup;
40464 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA field;
40465 	NIM_BOOL forHcr;
40466 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* hcrCond;
40467 	tySequence__sno9c9bXUVS2CqhtWOJadaCw* hcrGlobals;
40468 	NIM_BOOL isGlobalInBlock;
40469 	NIM_BOOL T19_;
40470 	NI T21_;
40471 	NIM_BOOL T22_;
40472 	NI T43_;
40473 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
40474 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T44_;
40475 {	nimZeroMem((void*)(&tup), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
40476 	nimZeroMem((void*)(&field), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
40477 	{
40478 		if (!!(((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 36)))) goto LA3_;
40479 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1010), TM__MQdRN7fpbG7rPm4JpVVAhA_1011);
40480 	}
40481 	LA3_: ;
40482 	{
40483 		NI i;
40484 		NI colontmp_;
40485 		NI T6_;
40486 		NI i_2;
40487 		i = (NI)0;
40488 		colontmp_ = (NI)0;
40489 		T6_ = (NI)0;
40490 		T6_ = len__ast_3198(n);
40491 		colontmp_ = (NI)(T6_ - ((NI) 2));
40492 		i_2 = ((NI) 0);
40493 		{
40494 			while (1) {
40495 				if (!(i_2 < colontmp_)) goto LA8;
40496 				i = i_2;
40497 				{
40498 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T13_;
40499 					if (!!(((*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA11_;
40500 					T13_ = NIM_NIL;
40501 					T13_ = lowerTupleUnpacking__lowerings_116((*(*(*p).module).g).graph, n, (*(*p).module).Sup.idgen, (*p).prc);
40502 					genStmts__cgen_11457(p, T13_);
40503 					goto BeforeRet_;
40504 				}
40505 				LA11_: ;
40506 				i_2 += ((NI) 1);
40507 			} LA8: ;
40508 		}
40509 	}
40510 	forHcr = treatGlobalDifferentlyForHCR__cgen_11251((*p).module, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym);
40511 	{
40512 		if (!forHcr) goto LA16_;
40513 		hcrCond = getTempName__cgen_418((*p).module);
40514 	}
40515 	goto LA14_;
40516 	LA16_: ;
40517 	{
40518 		hcrCond = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
40519 	}
40520 	LA14_: ;
40521 	hcrGlobals = NIM_NIL;
40522 	T19_ = (NIM_BOOL)0;
40523 	T19_ = forHcr;
40524 	if (!(T19_)) goto LA20_;
40525 	T21_ = ((*p).blocks ? (*p).blocks->Sup.len : 0);
40526 	T19_ = (((NI) 2) < T21_);
40527 	LA20_: ;
40528 	isGlobalInBlock = T19_;
40529 	T22_ = (NIM_BOOL)0;
40530 	T22_ = forHcr;
40531 	if (!(T22_)) goto LA23_;
40532 	T22_ = !(isGlobalInBlock);
40533 	LA23_: ;
40534 	forHcr = T22_;
40535 	{
40536 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T28_;
40537 		NimStringDesc* res;
40538 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
40539 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
40540 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T35_;
40541 		NimStringDesc* res_2;
40542 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
40543 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T41_;
40544 		NI T42_;
40545 		if (!forHcr) goto LA26_;
40546 		T28_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40547 		T28_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
40548 		res = rawNewString(((NI) 80));
40549 		res = resizeString(res, 4);
40550 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
40551 		cgFormatValue__cgen_141((&res), hcrCond);
40552 		res = resizeString(res, 1);
40553 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
40554 		{
40555 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA31_;
40556 			res = resizeString(res, 1);
40557 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
40558 		}
40559 		LA31_: ;
40560 		T33_ = NIM_NIL;
40561 		T33_ = rope__ropes_109(res);
40562 		T34_ = NIM_NIL;
40563 		T34_ = indentLine__cgen_280(p, T33_);
40564 		add__ropes_159(T28_, T34_);
40565 		T35_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40566 		T35_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
40567 		res_2 = rawNewString(((NI) 80));
40568 		res_2 = resizeString(res_2, 1);
40569 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
40570 		{
40571 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA38_;
40572 			res_2 = resizeString(res_2, 1);
40573 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
40574 		}
40575 		LA38_: ;
40576 		T40_ = NIM_NIL;
40577 		T40_ = rope__ropes_109(res_2);
40578 		T41_ = NIM_NIL;
40579 		T41_ = indentLine__cgen_280(p, T40_);
40580 		add__ropes_159(T35_, T41_);
40581 		T42_ = (NI)0;
40582 		T42_ = startBlockInternal__cgen_13189(p);
40583 	}
40584 	LA26_: ;
40585 	genLineDir__cgen_359(p, n);
40586 	T43_ = (NI)0;
40587 	T43_ = len__ast_3198(n);
40588 	initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[(NI)(T43_ - ((NI) 1))], (&tup));
40589 	T44_ = NIM_NIL;
40590 	T44_ = t__cgen_79(tup);
40591 	t = skipTypes__ast_3735(T44_, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
40592 	{
40593 		NI i_3;
40594 		NI colontmp__2;
40595 		NI T46_;
40596 		NI i_4;
40597 		i_3 = (NI)0;
40598 		colontmp__2 = (NI)0;
40599 		T46_ = (NI)0;
40600 		T46_ = len__ast_3198(n);
40601 		colontmp__2 = (NI)(T46_ - ((NI) 2));
40602 		i_4 = ((NI) 0);
40603 		{
40604 			while (1) {
40605 				if (!(i_4 < colontmp__2)) goto LA48;
40606 				i_3 = i_4;
40607 				{
40608 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* vn;
40609 					tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* v;
40610 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* traverseProc;
40611 					vn = (*n)._kind_6.sons->data[i_3];
40612 					v = (*vn)._kind_4.sym;
40613 					{
40614 						if (!(((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 28))&63U)))!=0)) goto LA52_;
40615 						goto LA49;
40616 					}
40617 					LA52_: ;
40618 					traverseProc = NIM_NIL;
40619 					{
40620 						if (!(((*v).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 3))&63U)))!=0)) goto LA56_;
40621 						assignGlobalVar__cgen_11271(p, vn, ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
40622 						genObjectInit__cgen_10380(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1), (*v).typ, (&(*v).loc), ((tyEnum_ObjConstrMode__9agQ3x8C5KfK9c9a3uY9abfUTw) 0));
40623 						traverseProc = getTraverseProc__cgen_13084(p, v);
40624 						{
40625 							NIM_BOOL T60_;
40626 							NIM_BOOL T62_;
40627 							T60_ = (NIM_BOOL)0;
40628 							T60_ = !((traverseProc == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)));
40629 							if (!(T60_)) goto LA61_;
40630 							T62_ = (NIM_BOOL)0;
40631 							T62_ = hcrOn__cgen_45(p);
40632 							T60_ = !(T62_);
40633 							LA61_: ;
40634 							if (!T60_) goto LA63_;
40635 							registerTraverseProc__cgen_13096(p, v, traverseProc);
40636 						}
40637 						LA63_: ;
40638 					}
40639 					goto LA54_;
40640 					LA56_: ;
40641 					{
40642 						NI T66_;
40643 						NIM_BOOL T67_;
40644 						assignLocalVar__cgen_11099(p, vn);
40645 						T66_ = (NI)0;
40646 						T66_ = len__ast_3198(n);
40647 						T67_ = (NIM_BOOL)0;
40648 						T67_ = isAssignedImmediately__cgen_13146((*(*(*p).module).g).config, (*n)._kind_6.sons->data[(NI)(T66_ - ((NI) 1))]);
40649 						initLocalVar__cgen_10987(p, v, T67_);
40650 					}
40651 					LA54_: ;
40652 					initLoc__cgen_60((&field), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), vn, tup.storage);
40653 					{
40654 						tyArray__mrugoXXRZUEeG9bEXo9auBKw T72_;
40655 						if (!((*t).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 18))) goto LA70_;
40656 						nimZeroMem((void*)T72_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
40657 						T72_[0] = rdLoc__cgen_425(tup);
40658 						T72_[1] = rope__ropes_115(((NI64) (i_3)));
40659 						field.r = percent___cgen_13309(T72_, 2);
40660 					}
40661 					goto LA68_;
40662 					LA70_: ;
40663 					{
40664 						tyArray__mrugoXXRZUEeG9bEXo9auBKw T78_;
40665 						{
40666 							if (!!(((*(*(*t).n)._kind_6.sons->data[i_3]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA76_;
40667 							internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1010), TM__MQdRN7fpbG7rPm4JpVVAhA_1012);
40668 						}
40669 						LA76_: ;
40670 						nimZeroMem((void*)T78_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
40671 						T78_[0] = rdLoc__cgen_425(tup);
40672 						T78_[1] = mangleRecFieldName__cgen_3618((*p).module, (*(*(*t).n)._kind_6.sons->data[i_3])._kind_4.sym);
40673 						field.r = percent___cgen_7439(T78_, 2);
40674 					}
40675 					LA68_: ;
40676 					putLocIntoDest__cgen_11467(p, (&(*v).loc), field);
40677 					{
40678 						NIM_BOOL T81_;
40679 						tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA T85_;
40680 						NI T92_;
40681 						T81_ = (NIM_BOOL)0;
40682 						T81_ = forHcr;
40683 						if (T81_) goto LA82_;
40684 						T81_ = isGlobalInBlock;
40685 						LA82_: ;
40686 						if (!T81_) goto LA83_;
40687 						nimZeroMem((void*)(&T85_), sizeof(tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA));
40688 						genericAssign((void*)(&T85_.Field0), (void*)(&(*v).loc), (&NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_));
40689 						{
40690 							tyArray__qTjAvTvKF9anytN1At69aJMQ T90_;
40691 							if (!(traverseProc == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA88_;
40692 							nimZeroMem((void*)T90_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
40693 							T85_.Field1 = percent___cgen_13329(T90_, 0);
40694 						}
40695 						goto LA86_;
40696 						LA88_: ;
40697 						{
40698 							T85_.Field1 = traverseProc;
40699 						}
40700 						LA86_: ;
40701 						hcrGlobals = (tySequence__sno9c9bXUVS2CqhtWOJadaCw*) incrSeqV3((TGenericSeq*)(hcrGlobals), (&NTIseqLtupleLloc58tloc_tp58ropeTT__sno9c9bXUVS2CqhtWOJadaCw_));
40702 						T92_ = hcrGlobals->Sup.len++;
40703 						genericAssign((void*)(&hcrGlobals->data[T92_].Field0), (void*)(&T85_.Field0), (&NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_));
40704 						asgnRef((void**) (&hcrGlobals->data[T92_].Field1), T85_.Field1);
40705 					}
40706 					LA83_: ;
40707 				} LA49: ;
40708 				i_4 += ((NI) 1);
40709 			} LA48: ;
40710 		}
40711 	}
40712 	{
40713 		if (!forHcr) goto LA95_;
40714 		endBlock__cgen_13210(p);
40715 	}
40716 	LA95_: ;
40717 	{
40718 		NIM_BOOL T99_;
40719 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T103_;
40720 		NimStringDesc* res_3;
40721 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T108_;
40722 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T109_;
40723 		T99_ = (NIM_BOOL)0;
40724 		T99_ = forHcr;
40725 		if (T99_) goto LA100_;
40726 		T99_ = isGlobalInBlock;
40727 		LA100_: ;
40728 		if (!T99_) goto LA101_;
40729 		T103_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40730 		T103_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
40731 		res_3 = rawNewString(((NI) 80));
40732 		res_3 = resizeString(res_3, 9);
40733 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1014));
40734 		cgFormatValue__cgen_141((&res_3), hcrCond);
40735 		res_3 = resizeString(res_3, 13);
40736 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1015));
40737 		{
40738 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA106_;
40739 			res_3 = resizeString(res_3, 1);
40740 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
40741 		}
40742 		LA106_: ;
40743 		T108_ = NIM_NIL;
40744 		T108_ = rope__ropes_109(res_3);
40745 		T109_ = NIM_NIL;
40746 		T109_ = indentLine__cgen_280(p, T108_);
40747 		add__ropes_159(T103_, T109_);
40748 		{
40749 			tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA* curr;
40750 			NI i_5;
40751 			NI L;
40752 			NI T111_;
40753 			curr = (tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA*)0;
40754 			i_5 = ((NI) 0);
40755 			T111_ = (hcrGlobals ? hcrGlobals->Sup.len : 0);
40756 			L = T111_;
40757 			{
40758 				while (1) {
40759 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T114_;
40760 					NimStringDesc* res_4;
40761 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T115_;
40762 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T116_;
40763 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T117_;
40764 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T118_;
40765 					if (!(i_5 < L)) goto LA113;
40766 					curr = (&hcrGlobals->data[i_5]);
40767 					T114_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40768 					T114_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
40769 					res_4 = rawNewString(((NI) 80));
40770 					cgFormatValue__cgen_141((&res_4), hcrCond);
40771 					res_4 = resizeString(res_4, 22);
40772 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1016));
40773 					T115_ = NIM_NIL;
40774 					T115_ = getModuleDllPath__cgen_136((*p).module, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym);
40775 					cgFormatValue__cgen_141((&res_4), T115_);
40776 					res_4 = resizeString(res_4, 3);
40777 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_554));
40778 					cgFormatValue__cgen_141((&res_4), (*curr).Field0.r);
40779 					res_4 = resizeString(res_4, 10);
40780 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_555));
40781 					T116_ = NIM_NIL;
40782 					T116_ = rdLoc__cgen_425((*curr).Field0);
40783 					cgFormatValue__cgen_141((&res_4), T116_);
40784 					res_4 = resizeString(res_4, 3);
40785 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_556));
40786 					cgFormatValue__cgen_141((&res_4), (*curr).Field1);
40787 					res_4 = resizeString(res_4, 11);
40788 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_557));
40789 					cgFormatValue__cgen_141((&res_4), (*curr).Field0.r);
40790 					res_4 = resizeString(res_4, 3);
40791 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1017));
40792 					T117_ = NIM_NIL;
40793 					T117_ = rope__ropes_109(res_4);
40794 					T118_ = NIM_NIL;
40795 					T118_ = indentLine__cgen_280(p, T117_);
40796 					add__ropes_159(T114_, T118_);
40797 					i_5 += ((NI) 1);
40798 				} LA113: ;
40799 			}
40800 		}
40801 	}
40802 	LA101_: ;
40803 	}BeforeRet_: ;
40804 }
N_NIMCALL(void,genVarStmt__cgen_14041)40805 N_LIB_PRIVATE N_NIMCALL(void, genVarStmt__cgen_14041)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
40806 	{
40807 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** it;
40808 		tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp_;
40809 		NI i;
40810 		NI L;
40811 		NI T2_;
40812 		it = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
40813 		colontmp_ = NIM_NIL;
40814 		colontmp_ = (*n)._kind_6.sons;
40815 		i = ((NI) 0);
40816 		T2_ = (colontmp_ ? colontmp_->Sup.len : 0);
40817 		L = T2_;
40818 		{
40819 			while (1) {
40820 				if (!(i < L)) goto LA4;
40821 				it = &colontmp_->data[i];
40822 				{
40823 					{
40824 						if (!((*(*it)).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125))) goto LA8_;
40825 						goto LA5;
40826 					}
40827 					LA8_: ;
40828 					{
40829 						if (!((*(*it)).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 35))) goto LA12_;
40830 						{
40831 							if (!((*(*(*it))._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA16_;
40832 							genSingleVar__cgen_14005(p, (*it));
40833 						}
40834 						goto LA14_;
40835 						LA16_: ;
40836 						{
40837 							genClosureVar__cgen_14028(p, (*it));
40838 						}
40839 						LA14_: ;
40840 					}
40841 					goto LA10_;
40842 					LA12_: ;
40843 					{
40844 						genVarTuple__cgen_13212(p, (*it));
40845 					}
40846 					LA10_: ;
40847 				} LA5: ;
40848 				i += ((NI) 1);
40849 			} LA4: ;
40850 		}
40851 	}
40852 }
N_NIMCALL(void,genConstStmt__cgen_24330)40853 N_LIB_PRIVATE N_NIMCALL(void, genConstStmt__cgen_24330)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
40854 	tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m;
40855 	m = (*p).module;
40856 	{
40857 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
40858 		it = NIM_NIL;
40859 		{
40860 			NI i;
40861 			NI colontmp_;
40862 			NI i_2;
40863 			i = (NI)0;
40864 			colontmp_ = (NI)0;
40865 			colontmp_ = safeLen__ast_3191(n);
40866 			i_2 = ((NI) 0);
40867 			{
40868 				while (1) {
40869 					if (!(i_2 < colontmp_)) goto LA4;
40870 					i = i_2;
40871 					it = (*n)._kind_6.sons->data[i];
40872 					{
40873 						tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
40874 						if (!((*(*it)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA7_;
40875 						sym = (*(*it)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
40876 						{
40877 							NIM_BOOL T11_;
40878 							NIM_BOOL T12_;
40879 							NIM_BOOL T13_;
40880 							T11_ = (NIM_BOOL)0;
40881 							T12_ = (NIM_BOOL)0;
40882 							T13_ = (NIM_BOOL)0;
40883 							T13_ = isSimpleConst__cgen_89((*sym).typ);
40884 							T12_ = !(T13_);
40885 							if (!(T12_)) goto LA14_;
40886 							T12_ = contains__astalgo_3496((&(*m).alive), ((NI) ((*sym).Sup.itemId.item)));
40887 							LA14_: ;
40888 							T11_ = T12_;
40889 							if (!(T11_)) goto LA15_;
40890 							T11_ = genConstSetup__cgen_24238(p, sym);
40891 							LA15_: ;
40892 							if (!T11_) goto LA16_;
40893 							genConstDefinition__cgen_24298(m, p, sym);
40894 						}
40895 						LA16_: ;
40896 					}
40897 					LA7_: ;
40898 					i_2 += ((NI) 1);
40899 				} LA4: ;
40900 			}
40901 		}
40902 	}
40903 }
N_NIMCALL(void,genCaseStringBranch__cgen_14993)40904 N_LIB_PRIVATE N_NIMCALL(void, genCaseStringBranch__cgen_14993)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA e, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* labl, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** branches, NI branchesLen_0) {
40905 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA x;
40906 	nimZeroMem((void*)(&x), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
40907 	{
40908 		NI i;
40909 		NI colontmp_;
40910 		NI T2_;
40911 		NI i_2;
40912 		i = (NI)0;
40913 		colontmp_ = (NI)0;
40914 		T2_ = (NI)0;
40915 		T2_ = len__ast_3198(b);
40916 		colontmp_ = (NI)(T2_ - ((NI) 1));
40917 		i_2 = ((NI) 0);
40918 		{
40919 			while (1) {
40920 				NI j;
40921 				NI64 T5_;
40922 				NimStringDesc* res;
40923 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
40924 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
40925 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
40926 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
40927 				if (!(i_2 < colontmp_)) goto LA4;
40928 				i = i_2;
40929 				initLocExpr__cgen_11483(p, (*b)._kind_6.sons->data[i], (&x));
40930 				T5_ = (NI64)0;
40931 				T5_ = hashString__ccgutils_50((*(*(*p).module).g).config, (*(*b)._kind_6.sons->data[i])._kind_3.strVal);
40932 				j = ((NI) ((NI64)(T5_ & ((NI64) ((branchesLen_0-1))))));
40933 				res = rawNewString(((NI) 80));
40934 				res = resizeString(res, 4);
40935 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
40936 				T6_ = NIM_NIL;
40937 				T6_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_741));
40938 				cgFormatValue__cgen_141((&res), T6_);
40939 				res = resizeString(res, 1);
40940 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
40941 				T7_ = NIM_NIL;
40942 				T7_ = rdLoc__cgen_425(e);
40943 				cgFormatValue__cgen_141((&res), T7_);
40944 				res = resizeString(res, 2);
40945 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
40946 				T8_ = NIM_NIL;
40947 				T8_ = rdLoc__cgen_425(x);
40948 				cgFormatValue__cgen_141((&res), T8_);
40949 				res = resizeString(res, 8);
40950 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1020));
40951 				cgFormatValue__cgen_141((&res), labl);
40952 				res = resizeString(res, 1);
40953 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
40954 				{
40955 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA11_;
40956 					res = resizeString(res, 1);
40957 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
40958 				}
40959 				LA11_: ;
40960 				T13_ = NIM_NIL;
40961 				T13_ = rope__ropes_109(res);
40962 				add__ropes_159(&branches[j], T13_);
40963 				i_2 += ((NI) 1);
40964 			} LA4: ;
40965 		}
40966 	}
40967 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_15121)40968 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15121)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
40969 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
40970 	result = NIM_NIL;
40971 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1025), args, argsLen_0);
40972 	return result;
40973 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_15139)40974 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15139)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
40975 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
40976 	result = NIM_NIL;
40977 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1026), args, argsLen_0);
40978 	return result;
40979 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14951)40980 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14951)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
40981 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
40982 	result = NIM_NIL;
40983 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1027), args, argsLen_0);
40984 	return result;
40985 }
N_NIMCALL(void,exprBlock__cgen_13496)40986 N_LIB_PRIVATE N_NIMCALL(void, exprBlock__cgen_13496)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
40987 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T1_;
40988 	NimStringDesc* res;
40989 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
40990 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
40991 	NI T8_;
40992 	T1_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
40993 	T1_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
40994 	res = rawNewString(((NI) 80));
40995 	res = resizeString(res, 1);
40996 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
40997 	{
40998 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA4_;
40999 		res = resizeString(res, 1);
41000 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
41001 	}
41002 	LA4_: ;
41003 	T6_ = NIM_NIL;
41004 	T6_ = rope__ropes_109(res);
41005 	T7_ = NIM_NIL;
41006 	T7_ = indentLine__cgen_280(p, T6_);
41007 	add__ropes_159(T1_, T7_);
41008 	T8_ = (NI)0;
41009 	T8_ = startBlockInternal__cgen_13189(p);
41010 	expr__cgen_11460(p, n, d);
41011 	endBlock__cgen_13210(p);
41012 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genCaseSecondPass__cgen_14934)41013 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genCaseSecondPass__cgen_14934)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d, NI labId, NI until) {
41014 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
41015 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lend;
41016 	result = NIM_NIL;
41017 	lend = getLabel__cgen_11436(p);
41018 	{
41019 		NI i;
41020 		NI res;
41021 		i = (NI)0;
41022 		res = ((NI) 1);
41023 		{
41024 			while (1) {
41025 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
41026 				tyArray__JiWwrsTRC6xqNlGcBthSVA T11_;
41027 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
41028 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
41029 				if (!(res <= until)) goto LA3;
41030 				i = res;
41031 				{
41032 					NIM_BOOL T6_;
41033 					T6_ = (NIM_BOOL)0;
41034 					T6_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1));
41035 					if (!(T6_)) goto LA7_;
41036 					T6_ = isEmptyType__ast_4779((*t).typ);
41037 					LA7_: ;
41038 					if (!T6_) goto LA8_;
41039 					(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0);
41040 				}
41041 				LA8_: ;
41042 				T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41043 				T10_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41044 				nimZeroMem((void*)T11_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41045 				T11_[0] = rope__ropes_115(((NI64) ((NI)(labId + i))));
41046 				T12_ = NIM_NIL;
41047 				T12_ = percent___cgen_14951(T11_, 1);
41048 				T13_ = NIM_NIL;
41049 				T13_ = indentLine__cgen_280(p, T12_);
41050 				add__ropes_159(T10_, T13_);
41051 				{
41052 					NI T18_;
41053 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T19_;
41054 					tyArray__JiWwrsTRC6xqNlGcBthSVA T20_;
41055 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
41056 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
41057 					if (!((*(*t)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85))) goto LA16_;
41058 					T18_ = (NI)0;
41059 					T18_ = len__ast_3198((*t)._kind_6.sons->data[i]);
41060 					exprBlock__cgen_13496(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[(NI)(T18_ - ((NI) 1))], d);
41061 					T19_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41062 					T19_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41063 					nimZeroMem((void*)T20_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41064 					T20_[0] = lend;
41065 					T21_ = NIM_NIL;
41066 					T21_ = percent___cgen_14119(T20_, 1);
41067 					T22_ = NIM_NIL;
41068 					T22_ = indentLine__cgen_280(p, T21_);
41069 					add__ropes_159(T19_, T22_);
41070 				}
41071 				goto LA14_;
41072 				LA16_: ;
41073 				{
41074 					exprBlock__cgen_13496(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)], d);
41075 				}
41076 				LA14_: ;
41077 				res += ((NI) 1);
41078 			} LA3: ;
41079 		}
41080 	}
41081 	result = lend;
41082 	return result;
41083 }
N_NIMCALL(void,genStringCase__cgen_15043)41084 N_LIB_PRIVATE N_NIMCALL(void, genStringCase__cgen_15043)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
41085 	NI strings;
41086 	strings = ((NI) 0);
41087 	{
41088 		NI i;
41089 		NI colontmp_;
41090 		NI i_2;
41091 		i = (NI)0;
41092 		colontmp_ = (NI)0;
41093 		colontmp_ = len__ast_3198(t);
41094 		i_2 = ((NI) 1);
41095 		{
41096 			while (1) {
41097 				if (!(i_2 < colontmp_)) goto LA3;
41098 				i = i_2;
41099 				{
41100 					NI T8_;
41101 					if (!((*(*t)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85))) goto LA6_;
41102 					T8_ = (NI)0;
41103 					T8_ = len__ast_3198((*t)._kind_6.sons->data[i]);
41104 					strings += (NI)(T8_ - ((NI) 1));
41105 				}
41106 				LA6_: ;
41107 				i_2 += ((NI) 1);
41108 			} LA3: ;
41109 		}
41110 	}
41111 	{
41112 		NI bitMask;
41113 		NI T13_;
41114 		tySequence__WwUFq9cJ2xKRlsAWVEHyPRg* branches;
41115 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
41116 		NI labId;
41117 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T25_;
41118 		NimStringDesc* res;
41119 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
41120 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
41121 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
41122 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
41123 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T46_;
41124 		tyArray__qTjAvTvKF9anytN1At69aJMQ T47_;
41125 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
41126 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
41127 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lend;
41128 		NI T59_;
41129 		if (!(((NI) 8) < strings)) goto LA11_;
41130 		T13_ = (NI)0;
41131 		T13_ = nextPowerOfTwo__pureZmath_177(strings);
41132 		bitMask = (NI)(T13_ - ((NI) 1));
41133 		branches = NIM_NIL;
41134 		branches = (tySequence__WwUFq9cJ2xKRlsAWVEHyPRg*) newSeq((&NTIseqLropeT__WwUFq9cJ2xKRlsAWVEHyPRg_), ((NI) ((NI)(bitMask + ((NI) 1)))));
41135 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
41136 		initLocExpr__cgen_11483(p, (*t)._kind_6.sons->data[((NI) 0)], (&a));
41137 		labId = (*p).labels;
41138 		{
41139 			NI i_3;
41140 			NI colontmp__2;
41141 			NI i_4;
41142 			i_3 = (NI)0;
41143 			colontmp__2 = (NI)0;
41144 			colontmp__2 = len__ast_3198(t);
41145 			i_4 = ((NI) 1);
41146 			{
41147 				while (1) {
41148 					if (!(i_4 < colontmp__2)) goto LA16;
41149 					i_3 = i_4;
41150 					(*p).labels += ((NI) 1);
41151 					{
41152 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
41153 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
41154 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
41155 						if (!((*(*t)._kind_6.sons->data[i_3]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85))) goto LA19_;
41156 						T21_ = NIM_NIL;
41157 						T21_ = rope__ropes_115(((NI64) ((*p).labels)));
41158 						T22_ = NIM_NIL;
41159 						T22_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_631), T21_);
41160 						T23_ = NIM_NIL;
41161 						T23_ = amp___ropes_140(T22_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
41162 						genCaseStringBranch__cgen_14993(p, (*t)._kind_6.sons->data[i_3], a, T23_, branches->data, (branches ? branches->Sup.len : 0));
41163 					}
41164 					goto LA17_;
41165 					LA19_: ;
41166 					{
41167 					}
41168 					LA17_: ;
41169 					i_4 += ((NI) 1);
41170 				} LA16: ;
41171 			}
41172 		}
41173 		T25_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41174 		T25_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41175 		res = rawNewString(((NI) 80));
41176 		res = resizeString(res, 8);
41177 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1021));
41178 		T26_ = NIM_NIL;
41179 		T26_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1022));
41180 		cgFormatValue__cgen_141((&res), T26_);
41181 		res = resizeString(res, 1);
41182 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
41183 		T27_ = NIM_NIL;
41184 		T27_ = rdLoc__cgen_425(a);
41185 		cgFormatValue__cgen_141((&res), T27_);
41186 		res = resizeString(res, 4);
41187 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1023));
41188 		cgFormatValue__cgen_148((&res), ((NI64) (bitMask)));
41189 		res = resizeString(res, 3);
41190 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1024));
41191 		{
41192 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA30_;
41193 			res = resizeString(res, 1);
41194 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
41195 		}
41196 		LA30_: ;
41197 		T32_ = NIM_NIL;
41198 		T32_ = rope__ropes_109(res);
41199 		T33_ = NIM_NIL;
41200 		T33_ = indentLine__cgen_280(p, T32_);
41201 		add__ropes_159(T25_, T33_);
41202 		{
41203 			NI j;
41204 			NI colontmp__3;
41205 			NI T35_;
41206 			NI res_2;
41207 			j = (NI)0;
41208 			colontmp__3 = (NI)0;
41209 			T35_ = ((branches ? branches->Sup.len : 0)-1);
41210 			colontmp__3 = T35_;
41211 			res_2 = ((NI) 0);
41212 			{
41213 				while (1) {
41214 					if (!(res_2 <= colontmp__3)) goto LA37;
41215 					j = res_2;
41216 					{
41217 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T42_;
41218 						tyArray__mrugoXXRZUEeG9bEXo9auBKw T43_;
41219 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
41220 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
41221 						if (!!((branches->data[j] == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA40_;
41222 						T42_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41223 						T42_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41224 						nimZeroMem((void*)T43_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
41225 						T43_[0] = intLiteral__cgen_11471(((NI64) (j)));
41226 						T43_[1] = branches->data[j];
41227 						T44_ = NIM_NIL;
41228 						T44_ = percent___cgen_15121(T43_, 2);
41229 						T45_ = NIM_NIL;
41230 						T45_ = indentLine__cgen_280(p, T44_);
41231 						add__ropes_159(T42_, T45_);
41232 					}
41233 					LA40_: ;
41234 					res_2 += ((NI) 1);
41235 				} LA37: ;
41236 			}
41237 		}
41238 		T46_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41239 		T46_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41240 		nimZeroMem((void*)T47_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
41241 		T48_ = NIM_NIL;
41242 		T48_ = percent___cgen_7505(T47_, 0);
41243 		T49_ = NIM_NIL;
41244 		T49_ = indentLine__cgen_280(p, T48_);
41245 		add__ropes_159(T46_, T49_);
41246 		{
41247 			NI T52_;
41248 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T55_;
41249 			tyArray__JiWwrsTRC6xqNlGcBthSVA T56_;
41250 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
41251 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
41252 			T52_ = (NI)0;
41253 			T52_ = len__ast_3198(t);
41254 			if (!!(((*(*t)._kind_6.sons->data[(NI)(T52_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85)))) goto LA53_;
41255 			T55_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41256 			T55_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41257 			nimZeroMem((void*)T56_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41258 			T56_[0] = rope__ropes_115(((NI64) ((*p).labels)));
41259 			T57_ = NIM_NIL;
41260 			T57_ = percent___cgen_15139(T56_, 1);
41261 			T58_ = NIM_NIL;
41262 			T58_ = indentLine__cgen_280(p, T57_);
41263 			add__ropes_159(T55_, T58_);
41264 		}
41265 		LA53_: ;
41266 		T59_ = (NI)0;
41267 		T59_ = len__ast_3198(t);
41268 		lend = genCaseSecondPass__cgen_14934(p, t, d, ((NI) (labId)), (NI)(T59_ - ((NI) 1)));
41269 		fixLabel__cgen_11443(p, lend);
41270 	}
41271 	goto LA9_;
41272 	LA11_: ;
41273 	{
41274 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym2154_;
41275 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lendX60gensym2154_;
41276 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* resX60gensym2156_;
41277 		NI labIdX60gensym2156_;
41278 		nimZeroMem((void*)(&aX60gensym2154_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
41279 		initLocExpr__cgen_11483(p, (*t)._kind_6.sons->data[((NI) 0)], (&aX60gensym2154_));
41280 		resX60gensym2156_ = NIM_NIL;
41281 		labIdX60gensym2156_ = (*p).labels;
41282 		{
41283 			NI iX60gensym2156_;
41284 			NI colontmp__4;
41285 			NI T62_;
41286 			NI res_3;
41287 			iX60gensym2156_ = (NI)0;
41288 			colontmp__4 = (NI)0;
41289 			T62_ = (NI)0;
41290 			T62_ = len__ast_3198(t);
41291 			colontmp__4 = (NI)(T62_ - ((NI) 1));
41292 			res_3 = ((NI) 1);
41293 			{
41294 				while (1) {
41295 					if (!(res_3 <= colontmp__4)) goto LA64;
41296 					iX60gensym2156_ = res_3;
41297 					(*p).labels += ((NI) 1);
41298 					{
41299 						tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA xX60gensym2159_;
41300 						tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA yX60gensym2159_;
41301 						if (!((*(*t)._kind_6.sons->data[iX60gensym2156_]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85))) goto LA67_;
41302 						nimZeroMem((void*)(&xX60gensym2159_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
41303 						nimZeroMem((void*)(&yX60gensym2159_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
41304 						{
41305 							NI iX60gensym2159_;
41306 							NI colontmp__5;
41307 							NI T70_;
41308 							NI i_5;
41309 							iX60gensym2159_ = (NI)0;
41310 							colontmp__5 = (NI)0;
41311 							T70_ = (NI)0;
41312 							T70_ = len__ast_3198((*t)._kind_6.sons->data[iX60gensym2156_]);
41313 							colontmp__5 = (NI)(T70_ - ((NI) 1));
41314 							i_5 = ((NI) 0);
41315 							{
41316 								while (1) {
41317 									if (!(i_5 < colontmp__5)) goto LA72;
41318 									iX60gensym2159_ = i_5;
41319 									{
41320 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T77_;
41321 										NimStringDesc* res_4;
41322 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T78_;
41323 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T79_;
41324 										if (!((*(*(*t)._kind_6.sons->data[iX60gensym2156_])._kind_6.sons->data[iX60gensym2159_]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA75_;
41325 										initLocExpr__cgen_11483(p, (*(*(*t)._kind_6.sons->data[iX60gensym2156_])._kind_6.sons->data[iX60gensym2159_])._kind_6.sons->data[((NI) 0)], (&xX60gensym2159_));
41326 										initLocExpr__cgen_11483(p, (*(*(*t)._kind_6.sons->data[iX60gensym2156_])._kind_6.sons->data[iX60gensym2159_])._kind_6.sons->data[((NI) 1)], (&yX60gensym2159_));
41327 										T77_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41328 										T77_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41329 										res_4 = rawNewString(((NI) 80));
41330 										T78_ = NIM_NIL;
41331 										T78_ = rope__ropes_109(res_4);
41332 										T79_ = NIM_NIL;
41333 										T79_ = indentLine__cgen_280(p, T78_);
41334 										add__ropes_159(T77_, T79_);
41335 									}
41336 									goto LA73_;
41337 									LA75_: ;
41338 									{
41339 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T81_;
41340 										NimStringDesc* res_5;
41341 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T82_;
41342 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T83_;
41343 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T84_;
41344 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T85_;
41345 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T86_;
41346 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T87_;
41347 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T92_;
41348 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T93_;
41349 										initLocExpr__cgen_11483(p, (*(*t)._kind_6.sons->data[iX60gensym2156_])._kind_6.sons->data[iX60gensym2159_], (&xX60gensym2159_));
41350 										T81_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41351 										T81_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41352 										res_5 = rawNewString(((NI) 80));
41353 										res_5 = resizeString(res_5, 4);
41354 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
41355 										T82_ = NIM_NIL;
41356 										T82_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_741));
41357 										cgFormatValue__cgen_141((&res_5), T82_);
41358 										res_5 = resizeString(res_5, 1);
41359 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
41360 										T83_ = NIM_NIL;
41361 										T83_ = rdCharLoc__cgen_10343(aX60gensym2154_);
41362 										cgFormatValue__cgen_141((&res_5), T83_);
41363 										res_5 = resizeString(res_5, 2);
41364 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
41365 										T84_ = NIM_NIL;
41366 										T84_ = rdCharLoc__cgen_10343(xX60gensym2159_);
41367 										cgFormatValue__cgen_141((&res_5), T84_);
41368 										res_5 = resizeString(res_5, 8);
41369 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1020));
41370 										T85_ = NIM_NIL;
41371 										T85_ = rope__ropes_115(((NI64) ((*p).labels)));
41372 										T86_ = NIM_NIL;
41373 										T86_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_631), T85_);
41374 										T87_ = NIM_NIL;
41375 										T87_ = amp___ropes_140(T86_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
41376 										cgFormatValue__cgen_141((&res_5), T87_);
41377 										res_5 = resizeString(res_5, 1);
41378 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
41379 										{
41380 											if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA90_;
41381 											res_5 = resizeString(res_5, 1);
41382 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
41383 										}
41384 										LA90_: ;
41385 										T92_ = NIM_NIL;
41386 										T92_ = rope__ropes_109(res_5);
41387 										T93_ = NIM_NIL;
41388 										T93_ = indentLine__cgen_280(p, T92_);
41389 										add__ropes_159(T81_, T93_);
41390 									}
41391 									LA73_: ;
41392 									i_5 += ((NI) 1);
41393 								} LA72: ;
41394 							}
41395 						}
41396 					}
41397 					goto LA65_;
41398 					LA67_: ;
41399 					{
41400 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T95_;
41401 						tyArray__JiWwrsTRC6xqNlGcBthSVA T96_;
41402 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T97_;
41403 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T98_;
41404 						T95_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41405 						T95_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41406 						nimZeroMem((void*)T96_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41407 						T96_[0] = rope__ropes_115(((NI64) ((*p).labels)));
41408 						T97_ = NIM_NIL;
41409 						T97_ = percent___cgen_15139(T96_, 1);
41410 						T98_ = NIM_NIL;
41411 						T98_ = indentLine__cgen_280(p, T97_);
41412 						add__ropes_159(T95_, T98_);
41413 					}
41414 					LA65_: ;
41415 					res_3 += ((NI) 1);
41416 				} LA64: ;
41417 			}
41418 		}
41419 		{
41420 			NI T101_;
41421 			NI T102_;
41422 			NI gotoTargetX60gensym2156_;
41423 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T105_;
41424 			tyArray__JiWwrsTRC6xqNlGcBthSVA T106_;
41425 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T107_;
41426 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T108_;
41427 			NI T109_;
41428 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T110_;
41429 			tyArray__JiWwrsTRC6xqNlGcBthSVA T111_;
41430 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T112_;
41431 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T113_;
41432 			T101_ = (NI)0;
41433 			T101_ = len__ast_3198(t);
41434 			T102_ = (NI)0;
41435 			T102_ = len__ast_3198(t);
41436 			if (!((NI)(T101_ - ((NI) 1)) < (NI)(T102_ - ((NI) 1)))) goto LA103_;
41437 			(*p).labels += ((NI) 1);
41438 			gotoTargetX60gensym2156_ = (*p).labels;
41439 			T105_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41440 			T105_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41441 			nimZeroMem((void*)T106_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41442 			T106_[0] = rope__ropes_115(((NI64) (gotoTargetX60gensym2156_)));
41443 			T107_ = NIM_NIL;
41444 			T107_ = percent___cgen_15139(T106_, 1);
41445 			T108_ = NIM_NIL;
41446 			T108_ = indentLine__cgen_280(p, T107_);
41447 			add__ropes_159(T105_, T108_);
41448 			T109_ = (NI)0;
41449 			T109_ = len__ast_3198(t);
41450 			resX60gensym2156_ = genCaseSecondPass__cgen_14934(p, t, d, ((NI) (labIdX60gensym2156_)), (NI)(T109_ - ((NI) 1)));
41451 			T110_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41452 			T110_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41453 			nimZeroMem((void*)T111_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41454 			T111_[0] = rope__ropes_115(((NI64) (gotoTargetX60gensym2156_)));
41455 			T112_ = NIM_NIL;
41456 			T112_ = percent___cgen_14951(T111_, 1);
41457 			T113_ = NIM_NIL;
41458 			T113_ = indentLine__cgen_280(p, T112_);
41459 			add__ropes_159(T110_, T113_);
41460 		}
41461 		goto LA99_;
41462 		LA103_: ;
41463 		{
41464 			NI T115_;
41465 			T115_ = (NI)0;
41466 			T115_ = len__ast_3198(t);
41467 			resX60gensym2156_ = genCaseSecondPass__cgen_14934(p, t, d, ((NI) (labIdX60gensym2156_)), (NI)(T115_ - ((NI) 1)));
41468 		}
41469 		LA99_: ;
41470 		lendX60gensym2154_ = resX60gensym2156_;
41471 		fixLabel__cgen_11443(p, lendX60gensym2154_);
41472 	}
41473 	LA9_: ;
41474 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14249)41475 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14249)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
41476 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
41477 	result = NIM_NIL;
41478 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1033), args, argsLen_0);
41479 	return result;
41480 }
N_NIMCALL(void,genGotoForCase__cgen_14208)41481 N_LIB_PRIVATE N_NIMCALL(void, genGotoForCase__cgen_14208)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* caseStmt) {
41482 {	{
41483 		NI i;
41484 		NI colontmp_;
41485 		NI i_2;
41486 		i = (NI)0;
41487 		colontmp_ = (NI)0;
41488 		colontmp_ = len__ast_3198(caseStmt);
41489 		i_2 = ((NI) 1);
41490 		{
41491 			while (1) {
41492 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T4_;
41493 				NimStringDesc* res;
41494 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
41495 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
41496 				NI T11_;
41497 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
41498 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T24_;
41499 				if (!(i_2 < colontmp_)) goto LA3;
41500 				i = i_2;
41501 				T4_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41502 				T4_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41503 				res = rawNewString(((NI) 80));
41504 				res = resizeString(res, 1);
41505 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
41506 				{
41507 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA7_;
41508 					res = resizeString(res, 1);
41509 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
41510 				}
41511 				LA7_: ;
41512 				T9_ = NIM_NIL;
41513 				T9_ = rope__ropes_109(res);
41514 				T10_ = NIM_NIL;
41515 				T10_ = indentLine__cgen_280(p, T9_);
41516 				add__ropes_159(T4_, T10_);
41517 				T11_ = (NI)0;
41518 				T11_ = startBlockInternal__cgen_13189(p);
41519 				it = (*caseStmt)._kind_6.sons->data[i];
41520 				{
41521 					NI j;
41522 					NI colontmp__2;
41523 					NI T13_;
41524 					NI i_3;
41525 					j = (NI)0;
41526 					colontmp__2 = (NI)0;
41527 					T13_ = (NI)0;
41528 					T13_ = len__ast_3198(it);
41529 					colontmp__2 = (NI)(T13_ - ((NI) 1));
41530 					i_3 = ((NI) 0);
41531 					{
41532 						while (1) {
41533 							tyObject_Int128__9a9axPfb75jdWY25AamJewkA val;
41534 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T20_;
41535 							tyArray__JiWwrsTRC6xqNlGcBthSVA T21_;
41536 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
41537 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
41538 							if (!(i_3 < colontmp__2)) goto LA15;
41539 							j = i_3;
41540 							{
41541 								if (!((*(*it)._kind_6.sons->data[j]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA18_;
41542 								liMessage__msgs_1118((*(*(*p).module).g).config, (*it).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1006), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_1032, NIM_FALSE);
41543 								goto BeforeRet_;
41544 							}
41545 							LA18_: ;
41546 							val = getOrdValue__types_161((*it)._kind_6.sons->data[j], Max__int495056_27);
41547 							T20_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41548 							T20_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41549 							nimZeroMem((void*)T21_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41550 							T21_[0] = rope__cgen_6918(val);
41551 							T22_ = NIM_NIL;
41552 							T22_ = percent___cgen_14249(T21_, 1);
41553 							T23_ = NIM_NIL;
41554 							T23_ = indentLine__cgen_280(p, T22_);
41555 							add__ropes_159(T20_, T23_);
41556 							i_3 += ((NI) 1);
41557 						} LA15: ;
41558 					}
41559 				}
41560 				T24_ = NIM_NIL;
41561 				T24_ = lastSon__ast_4832(it);
41562 				genStmts__cgen_11457(p, T24_);
41563 				endBlock__cgen_13210(p);
41564 				i_2 += ((NI) 1);
41565 			} LA3: ;
41566 		}
41567 	}
41568 	}BeforeRet_: ;
41569 }
N_NIMCALL(NIM_BOOL,branchHasTooBigRange__cgen_15242)41570 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, branchHasTooBigRange__cgen_15242)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
41571 	NIM_BOOL result;
41572 {	result = (NIM_BOOL)0;
41573 	{
41574 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* it;
41575 		it = NIM_NIL;
41576 		{
41577 			NI i;
41578 			NI colontmp_;
41579 			NI i_2;
41580 			i = (NI)0;
41581 			colontmp_ = (NI)0;
41582 			colontmp_ = safeLen__ast_3191(b);
41583 			i_2 = ((NI) 0);
41584 			{
41585 				while (1) {
41586 					if (!(i_2 < colontmp_)) goto LA4;
41587 					i = i_2;
41588 					it = (*b)._kind_6.sons->data[i];
41589 					{
41590 						NIM_BOOL T7_;
41591 						T7_ = (NIM_BOOL)0;
41592 						T7_ = ((*it).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44));
41593 						if (!(T7_)) goto LA8_;
41594 						T7_ = (IL64(256) < (NI64)((*(*it)._kind_6.sons->data[((NI) 1)])._kind_1.intVal - (*(*it)._kind_6.sons->data[((NI) 0)])._kind_1.intVal));
41595 						LA8_: ;
41596 						if (!T7_) goto LA9_;
41597 						result = NIM_TRUE;
41598 						goto BeforeRet_;
41599 					}
41600 					LA9_: ;
41601 					i_2 += ((NI) 1);
41602 				} LA4: ;
41603 			}
41604 		}
41605 	}
41606 	}BeforeRet_: ;
41607 	return result;
41608 }
N_NIMCALL(NI,ifSwitchSplitPoint__cgen_15252)41609 N_LIB_PRIVATE N_NIMCALL(NI, ifSwitchSplitPoint__cgen_15252)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
41610 	NI result;
41611 	result = (NI)0;
41612 	{
41613 		NI i;
41614 		NI colontmp_;
41615 		NI i_2;
41616 		i = (NI)0;
41617 		colontmp_ = (NI)0;
41618 		colontmp_ = len__ast_3198(n);
41619 		i_2 = ((NI) 1);
41620 		{
41621 			while (1) {
41622 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch;
41623 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* stmtBlock;
41624 				if (!(i_2 < colontmp_)) goto LA3;
41625 				i = i_2;
41626 				branch = (*n)._kind_6.sons->data[i];
41627 				stmtBlock = lastSon__ast_4832(branch);
41628 				{
41629 					NIM_BOOL T6_;
41630 					T6_ = (NIM_BOOL)0;
41631 					T6_ = stmtsContainPragma__ccgutils_42(stmtBlock, ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 205));
41632 					if (!T6_) goto LA7_;
41633 					result = i;
41634 				}
41635 				goto LA4_;
41636 				LA7_: ;
41637 				{
41638 					if (!!(((CC__extccomp_508[((*(*(*(*p).module).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 0))&7U)))!=0))) goto LA10_;
41639 					{
41640 						NIM_BOOL T14_;
41641 						T14_ = (NIM_BOOL)0;
41642 						T14_ = ((*branch).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85));
41643 						if (!(T14_)) goto LA15_;
41644 						T14_ = branchHasTooBigRange__cgen_15242(branch);
41645 						LA15_: ;
41646 						if (!T14_) goto LA16_;
41647 						result = i;
41648 					}
41649 					LA16_: ;
41650 				}
41651 				goto LA4_;
41652 				LA10_: ;
41653 				LA4_: ;
41654 				i_2 += ((NI) 1);
41655 			} LA3: ;
41656 		}
41657 	}
41658 	return result;
41659 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13684)41660 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13684)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
41661 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
41662 	result = NIM_NIL;
41663 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1034), args, argsLen_0);
41664 	return result;
41665 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_15465)41666 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15465)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
41667 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
41668 	result = NIM_NIL;
41669 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1035), args, argsLen_0);
41670 	return result;
41671 }
N_NIMCALL(void,genOrdinalCase__cgen_15326)41672 N_LIB_PRIVATE N_NIMCALL(void, genOrdinalCase__cgen_15326)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
41673 	NI splitPoint;
41674 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
41675 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lend;
41676 	splitPoint = ifSwitchSplitPoint__cgen_15252(p, n);
41677 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
41678 	initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 0)], (&a));
41679 	{
41680 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* resX60gensym2205_;
41681 		NI labIdX60gensym2205_;
41682 		if (!(((NI) 0) < splitPoint)) goto LA3_;
41683 		resX60gensym2205_ = NIM_NIL;
41684 		labIdX60gensym2205_ = (*p).labels;
41685 		{
41686 			NI iX60gensym2205_;
41687 			NI res;
41688 			iX60gensym2205_ = (NI)0;
41689 			res = ((NI) 1);
41690 			{
41691 				while (1) {
41692 					if (!(res <= splitPoint)) goto LA7;
41693 					iX60gensym2205_ = res;
41694 					(*p).labels += ((NI) 1);
41695 					{
41696 						tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA xX60gensym2208_;
41697 						tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA yX60gensym2208_;
41698 						if (!((*(*n)._kind_6.sons->data[iX60gensym2205_]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85))) goto LA10_;
41699 						nimZeroMem((void*)(&xX60gensym2208_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
41700 						nimZeroMem((void*)(&yX60gensym2208_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
41701 						{
41702 							NI iX60gensym2208_;
41703 							NI colontmp_;
41704 							NI T13_;
41705 							NI i;
41706 							iX60gensym2208_ = (NI)0;
41707 							colontmp_ = (NI)0;
41708 							T13_ = (NI)0;
41709 							T13_ = len__ast_3198((*n)._kind_6.sons->data[iX60gensym2205_]);
41710 							colontmp_ = (NI)(T13_ - ((NI) 1));
41711 							i = ((NI) 0);
41712 							{
41713 								while (1) {
41714 									if (!(i < colontmp_)) goto LA15;
41715 									iX60gensym2208_ = i;
41716 									{
41717 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T20_;
41718 										NimStringDesc* res_2;
41719 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
41720 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
41721 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
41722 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
41723 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
41724 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
41725 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
41726 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
41727 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
41728 										if (!((*(*(*n)._kind_6.sons->data[iX60gensym2205_])._kind_6.sons->data[iX60gensym2208_]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA18_;
41729 										initLocExpr__cgen_11483(p, (*(*(*n)._kind_6.sons->data[iX60gensym2205_])._kind_6.sons->data[iX60gensym2208_])._kind_6.sons->data[((NI) 0)], (&xX60gensym2208_));
41730 										initLocExpr__cgen_11483(p, (*(*(*n)._kind_6.sons->data[iX60gensym2205_])._kind_6.sons->data[iX60gensym2208_])._kind_6.sons->data[((NI) 1)], (&yX60gensym2208_));
41731 										T20_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41732 										T20_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41733 										res_2 = rawNewString(((NI) 80));
41734 										res_2 = resizeString(res_2, 4);
41735 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
41736 										T21_ = NIM_NIL;
41737 										T21_ = rdCharLoc__cgen_10343(a);
41738 										cgFormatValue__cgen_141((&res_2), T21_);
41739 										res_2 = resizeString(res_2, 4);
41740 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1028));
41741 										T22_ = NIM_NIL;
41742 										T22_ = rdCharLoc__cgen_10343(xX60gensym2208_);
41743 										cgFormatValue__cgen_141((&res_2), T22_);
41744 										res_2 = resizeString(res_2, 4);
41745 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1029));
41746 										T23_ = NIM_NIL;
41747 										T23_ = rdCharLoc__cgen_10343(a);
41748 										cgFormatValue__cgen_141((&res_2), T23_);
41749 										res_2 = resizeString(res_2, 4);
41750 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1030));
41751 										T24_ = NIM_NIL;
41752 										T24_ = rdCharLoc__cgen_10343(yX60gensym2208_);
41753 										cgFormatValue__cgen_141((&res_2), T24_);
41754 										res_2 = resizeString(res_2, 7);
41755 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1031));
41756 										T25_ = NIM_NIL;
41757 										T25_ = rope__ropes_115(((NI64) ((*p).labels)));
41758 										T26_ = NIM_NIL;
41759 										T26_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_631), T25_);
41760 										T27_ = NIM_NIL;
41761 										T27_ = amp___ropes_140(T26_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
41762 										cgFormatValue__cgen_141((&res_2), T27_);
41763 										res_2 = resizeString(res_2, 1);
41764 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
41765 										{
41766 											if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA30_;
41767 											res_2 = resizeString(res_2, 1);
41768 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
41769 										}
41770 										LA30_: ;
41771 										T32_ = NIM_NIL;
41772 										T32_ = rope__ropes_109(res_2);
41773 										T33_ = NIM_NIL;
41774 										T33_ = indentLine__cgen_280(p, T32_);
41775 										add__ropes_159(T20_, T33_);
41776 									}
41777 									goto LA16_;
41778 									LA18_: ;
41779 									{
41780 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T35_;
41781 										NimStringDesc* res_3;
41782 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
41783 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
41784 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
41785 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
41786 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
41787 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
41788 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
41789 										initLocExpr__cgen_11483(p, (*(*n)._kind_6.sons->data[iX60gensym2205_])._kind_6.sons->data[iX60gensym2208_], (&xX60gensym2208_));
41790 										T35_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41791 										T35_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41792 										res_3 = rawNewString(((NI) 80));
41793 										res_3 = resizeString(res_3, 4);
41794 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
41795 										T36_ = NIM_NIL;
41796 										T36_ = rdCharLoc__cgen_10343(a);
41797 										cgFormatValue__cgen_141((&res_3), T36_);
41798 										res_3 = resizeString(res_3, 4);
41799 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_639));
41800 										T37_ = NIM_NIL;
41801 										T37_ = rdCharLoc__cgen_10343(xX60gensym2208_);
41802 										cgFormatValue__cgen_141((&res_3), T37_);
41803 										res_3 = resizeString(res_3, 7);
41804 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1031));
41805 										T38_ = NIM_NIL;
41806 										T38_ = rope__ropes_115(((NI64) ((*p).labels)));
41807 										T39_ = NIM_NIL;
41808 										T39_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_631), T38_);
41809 										T40_ = NIM_NIL;
41810 										T40_ = amp___ropes_140(T39_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
41811 										cgFormatValue__cgen_141((&res_3), T40_);
41812 										res_3 = resizeString(res_3, 1);
41813 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
41814 										{
41815 											if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA43_;
41816 											res_3 = resizeString(res_3, 1);
41817 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
41818 										}
41819 										LA43_: ;
41820 										T45_ = NIM_NIL;
41821 										T45_ = rope__ropes_109(res_3);
41822 										T46_ = NIM_NIL;
41823 										T46_ = indentLine__cgen_280(p, T45_);
41824 										add__ropes_159(T35_, T46_);
41825 									}
41826 									LA16_: ;
41827 									i += ((NI) 1);
41828 								} LA15: ;
41829 							}
41830 						}
41831 					}
41832 					goto LA8_;
41833 					LA10_: ;
41834 					{
41835 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T48_;
41836 						tyArray__JiWwrsTRC6xqNlGcBthSVA T49_;
41837 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
41838 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T51_;
41839 						T48_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41840 						T48_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41841 						nimZeroMem((void*)T49_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41842 						T49_[0] = rope__ropes_115(((NI64) ((*p).labels)));
41843 						T50_ = NIM_NIL;
41844 						T50_ = percent___cgen_15139(T49_, 1);
41845 						T51_ = NIM_NIL;
41846 						T51_ = indentLine__cgen_280(p, T50_);
41847 						add__ropes_159(T48_, T51_);
41848 					}
41849 					LA8_: ;
41850 					res += ((NI) 1);
41851 				} LA7: ;
41852 			}
41853 		}
41854 		{
41855 			NI T54_;
41856 			NI gotoTargetX60gensym2205_;
41857 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T57_;
41858 			tyArray__JiWwrsTRC6xqNlGcBthSVA T58_;
41859 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
41860 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
41861 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T61_;
41862 			tyArray__JiWwrsTRC6xqNlGcBthSVA T62_;
41863 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T63_;
41864 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T64_;
41865 			T54_ = (NI)0;
41866 			T54_ = len__ast_3198(n);
41867 			if (!(splitPoint < (NI)(T54_ - ((NI) 1)))) goto LA55_;
41868 			(*p).labels += ((NI) 1);
41869 			gotoTargetX60gensym2205_ = (*p).labels;
41870 			T57_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41871 			T57_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41872 			nimZeroMem((void*)T58_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41873 			T58_[0] = rope__ropes_115(((NI64) (gotoTargetX60gensym2205_)));
41874 			T59_ = NIM_NIL;
41875 			T59_ = percent___cgen_15139(T58_, 1);
41876 			T60_ = NIM_NIL;
41877 			T60_ = indentLine__cgen_280(p, T59_);
41878 			add__ropes_159(T57_, T60_);
41879 			resX60gensym2205_ = genCaseSecondPass__cgen_14934(p, n, d, ((NI) (labIdX60gensym2205_)), splitPoint);
41880 			T61_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41881 			T61_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41882 			nimZeroMem((void*)T62_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41883 			T62_[0] = rope__ropes_115(((NI64) (gotoTargetX60gensym2205_)));
41884 			T63_ = NIM_NIL;
41885 			T63_ = percent___cgen_14951(T62_, 1);
41886 			T64_ = NIM_NIL;
41887 			T64_ = indentLine__cgen_280(p, T63_);
41888 			add__ropes_159(T61_, T64_);
41889 		}
41890 		goto LA52_;
41891 		LA55_: ;
41892 		{
41893 			resX60gensym2205_ = genCaseSecondPass__cgen_14934(p, n, d, ((NI) (labIdX60gensym2205_)), splitPoint);
41894 		}
41895 		LA52_: ;
41896 		lend = resX60gensym2205_;
41897 	}
41898 	goto LA1_;
41899 	LA3_: ;
41900 	{
41901 		lend = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
41902 	}
41903 	LA1_: ;
41904 	{
41905 		NI T69_;
41906 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T72_;
41907 		tyArray__JiWwrsTRC6xqNlGcBthSVA T73_;
41908 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T74_;
41909 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T75_;
41910 		NIM_BOOL hasDefault;
41911 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T109_;
41912 		tyArray__qTjAvTvKF9anytN1At69aJMQ T110_;
41913 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T111_;
41914 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T112_;
41915 		T69_ = (NI)0;
41916 		T69_ = len__ast_3198(n);
41917 		if (!((NI)(splitPoint + ((NI) 1)) < T69_)) goto LA70_;
41918 		T72_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41919 		T72_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41920 		nimZeroMem((void*)T73_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
41921 		T73_[0] = rdCharLoc__cgen_10343(a);
41922 		T74_ = NIM_NIL;
41923 		T74_ = percent___cgen_13684(T73_, 1);
41924 		T75_ = NIM_NIL;
41925 		T75_ = indentLine__cgen_280(p, T74_);
41926 		add__ropes_159(T72_, T75_);
41927 		hasDefault = NIM_FALSE;
41928 		{
41929 			NI i_2;
41930 			NI colontmp__2;
41931 			NI colontmp__3;
41932 			NI i_3;
41933 			i_2 = (NI)0;
41934 			colontmp__2 = (NI)0;
41935 			colontmp__3 = (NI)0;
41936 			colontmp__2 = (NI)(splitPoint + ((NI) 1));
41937 			colontmp__3 = len__ast_3198(n);
41938 			i_3 = colontmp__2;
41939 			{
41940 				while (1) {
41941 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* branch;
41942 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T94_;
41943 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T95_;
41944 					tyArray__qTjAvTvKF9anytN1At69aJMQ T96_;
41945 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T97_;
41946 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T98_;
41947 					if (!(i_3 < colontmp__3)) goto LA78;
41948 					i_2 = i_3;
41949 					{
41950 						NIM_BOOL T81_;
41951 						T81_ = (NIM_BOOL)0;
41952 						T81_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1));
41953 						if (!(T81_)) goto LA82_;
41954 						T81_ = isEmptyType__ast_4779((*n).typ);
41955 						LA82_: ;
41956 						if (!T81_) goto LA83_;
41957 						(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0);
41958 					}
41959 					LA83_: ;
41960 					branch = (*n)._kind_6.sons->data[i_2];
41961 					{
41962 						if (!((*branch).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85))) goto LA87_;
41963 						genCaseRange__cgen_7340(p, branch);
41964 					}
41965 					goto LA85_;
41966 					LA87_: ;
41967 					{
41968 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T90_;
41969 						tyArray__qTjAvTvKF9anytN1At69aJMQ T91_;
41970 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T92_;
41971 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T93_;
41972 						T90_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41973 						T90_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41974 						nimZeroMem((void*)T91_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
41975 						T92_ = NIM_NIL;
41976 						T92_ = percent___cgen_7408(T91_, 0);
41977 						T93_ = NIM_NIL;
41978 						T93_ = indentLine__cgen_280(p, T92_);
41979 						add__ropes_159(T90_, T93_);
41980 						hasDefault = NIM_TRUE;
41981 					}
41982 					LA85_: ;
41983 					T94_ = NIM_NIL;
41984 					T94_ = lastSon__ast_4832(branch);
41985 					exprBlock__cgen_13496(p, T94_, d);
41986 					T95_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
41987 					T95_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
41988 					nimZeroMem((void*)T96_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
41989 					T97_ = NIM_NIL;
41990 					T97_ = percent___cgen_7416(T96_, 0);
41991 					T98_ = NIM_NIL;
41992 					T98_ = indentLine__cgen_280(p, T97_);
41993 					add__ropes_159(T95_, T98_);
41994 					i_3 += ((NI) 1);
41995 				} LA78: ;
41996 			}
41997 		}
41998 		{
41999 			NIM_BOOL T101_;
42000 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T105_;
42001 			tyArray__qTjAvTvKF9anytN1At69aJMQ T106_;
42002 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T107_;
42003 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T108_;
42004 			T101_ = (NIM_BOOL)0;
42005 			T101_ = ((CC__extccomp_508[((*(*(*(*p).module).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 3))&7U)))!=0);
42006 			if (!(T101_)) goto LA102_;
42007 			T101_ = !(hasDefault);
42008 			LA102_: ;
42009 			if (!T101_) goto LA103_;
42010 			T105_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42011 			T105_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42012 			nimZeroMem((void*)T106_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
42013 			T107_ = NIM_NIL;
42014 			T107_ = percent___cgen_15465(T106_, 0);
42015 			T108_ = NIM_NIL;
42016 			T108_ = indentLine__cgen_280(p, T107_);
42017 			add__ropes_159(T105_, T108_);
42018 		}
42019 		LA103_: ;
42020 		T109_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42021 		T109_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42022 		nimZeroMem((void*)T110_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
42023 		T111_ = NIM_NIL;
42024 		T111_ = percent___cgen_7505(T110_, 0);
42025 		T112_ = NIM_NIL;
42026 		T112_ = indentLine__cgen_280(p, T111_);
42027 		add__ropes_159(T109_, T112_);
42028 	}
42029 	LA70_: ;
42030 	{
42031 		if (!!((lend == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA115_;
42032 		fixLabel__cgen_11443(p, lend);
42033 	}
42034 	LA115_: ;
42035 }
N_NIMCALL(void,genCase__cgen_15478)42036 N_LIB_PRIVATE N_NIMCALL(void, genCase__cgen_15478)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
42037 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T8_;
42038 	genLineDir__cgen_359(p, t);
42039 	{
42040 		NIM_BOOL T3_;
42041 		NIM_BOOL T4_;
42042 		T3_ = (NIM_BOOL)0;
42043 		T4_ = (NIM_BOOL)0;
42044 		T4_ = isEmptyType__ast_4779((*t).typ);
42045 		T3_ = !(T4_);
42046 		if (!(T3_)) goto LA5_;
42047 		T3_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0));
42048 		LA5_: ;
42049 		if (!T3_) goto LA6_;
42050 		getTemp__cgen_7343(p, (*t).typ, d, NIM_FALSE);
42051 	}
42052 	LA6_: ;
42053 	T8_ = NIM_NIL;
42054 	T8_ = skipTypes__ast_3735((*(*t)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
42055 	switch ((*T8_).kind) {
42056 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 28):
42057 	{
42058 		genStringCase__cgen_15043(p, t, d);
42059 	}
42060 	break;
42061 	case ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) ... ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39):
42062 	{
42063 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA aX60gensym2244_;
42064 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* lendX60gensym2244_;
42065 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* resX60gensym2246_;
42066 		NI labIdX60gensym2246_;
42067 		nimZeroMem((void*)(&aX60gensym2244_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
42068 		initLocExpr__cgen_11483(p, (*t)._kind_6.sons->data[((NI) 0)], (&aX60gensym2244_));
42069 		resX60gensym2246_ = NIM_NIL;
42070 		labIdX60gensym2246_ = (*p).labels;
42071 		{
42072 			NI iX60gensym2246_;
42073 			NI colontmp_;
42074 			NI T12_;
42075 			NI res;
42076 			iX60gensym2246_ = (NI)0;
42077 			colontmp_ = (NI)0;
42078 			T12_ = (NI)0;
42079 			T12_ = len__ast_3198(t);
42080 			colontmp_ = (NI)(T12_ - ((NI) 1));
42081 			res = ((NI) 1);
42082 			{
42083 				while (1) {
42084 					if (!(res <= colontmp_)) goto LA14;
42085 					iX60gensym2246_ = res;
42086 					(*p).labels += ((NI) 1);
42087 					{
42088 						tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA xX60gensym2249_;
42089 						tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA yX60gensym2249_;
42090 						if (!((*(*t)._kind_6.sons->data[iX60gensym2246_]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85))) goto LA17_;
42091 						nimZeroMem((void*)(&xX60gensym2249_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
42092 						nimZeroMem((void*)(&yX60gensym2249_), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
42093 						{
42094 							NI iX60gensym2249_;
42095 							NI colontmp__2;
42096 							NI T20_;
42097 							NI i;
42098 							iX60gensym2249_ = (NI)0;
42099 							colontmp__2 = (NI)0;
42100 							T20_ = (NI)0;
42101 							T20_ = len__ast_3198((*t)._kind_6.sons->data[iX60gensym2246_]);
42102 							colontmp__2 = (NI)(T20_ - ((NI) 1));
42103 							i = ((NI) 0);
42104 							{
42105 								while (1) {
42106 									if (!(i < colontmp__2)) goto LA22;
42107 									iX60gensym2249_ = i;
42108 									{
42109 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T27_;
42110 										NimStringDesc* res_2;
42111 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
42112 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
42113 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
42114 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
42115 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
42116 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
42117 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
42118 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
42119 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
42120 										if (!((*(*(*t)._kind_6.sons->data[iX60gensym2246_])._kind_6.sons->data[iX60gensym2249_]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA25_;
42121 										initLocExpr__cgen_11483(p, (*(*(*t)._kind_6.sons->data[iX60gensym2246_])._kind_6.sons->data[iX60gensym2249_])._kind_6.sons->data[((NI) 0)], (&xX60gensym2249_));
42122 										initLocExpr__cgen_11483(p, (*(*(*t)._kind_6.sons->data[iX60gensym2246_])._kind_6.sons->data[iX60gensym2249_])._kind_6.sons->data[((NI) 1)], (&yX60gensym2249_));
42123 										T27_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42124 										T27_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42125 										res_2 = rawNewString(((NI) 80));
42126 										res_2 = resizeString(res_2, 4);
42127 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
42128 										T28_ = NIM_NIL;
42129 										T28_ = rdCharLoc__cgen_10343(aX60gensym2244_);
42130 										cgFormatValue__cgen_141((&res_2), T28_);
42131 										res_2 = resizeString(res_2, 4);
42132 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1028));
42133 										T29_ = NIM_NIL;
42134 										T29_ = rdCharLoc__cgen_10343(xX60gensym2249_);
42135 										cgFormatValue__cgen_141((&res_2), T29_);
42136 										res_2 = resizeString(res_2, 4);
42137 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1029));
42138 										T30_ = NIM_NIL;
42139 										T30_ = rdCharLoc__cgen_10343(aX60gensym2244_);
42140 										cgFormatValue__cgen_141((&res_2), T30_);
42141 										res_2 = resizeString(res_2, 4);
42142 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1030));
42143 										T31_ = NIM_NIL;
42144 										T31_ = rdCharLoc__cgen_10343(yX60gensym2249_);
42145 										cgFormatValue__cgen_141((&res_2), T31_);
42146 										res_2 = resizeString(res_2, 7);
42147 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1031));
42148 										T32_ = NIM_NIL;
42149 										T32_ = rope__ropes_115(((NI64) ((*p).labels)));
42150 										T33_ = NIM_NIL;
42151 										T33_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_631), T32_);
42152 										T34_ = NIM_NIL;
42153 										T34_ = amp___ropes_140(T33_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
42154 										cgFormatValue__cgen_141((&res_2), T34_);
42155 										res_2 = resizeString(res_2, 1);
42156 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
42157 										{
42158 											if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA37_;
42159 											res_2 = resizeString(res_2, 1);
42160 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
42161 										}
42162 										LA37_: ;
42163 										T39_ = NIM_NIL;
42164 										T39_ = rope__ropes_109(res_2);
42165 										T40_ = NIM_NIL;
42166 										T40_ = indentLine__cgen_280(p, T39_);
42167 										add__ropes_159(T27_, T40_);
42168 									}
42169 									goto LA23_;
42170 									LA25_: ;
42171 									{
42172 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T42_;
42173 										NimStringDesc* res_3;
42174 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
42175 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
42176 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
42177 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
42178 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
42179 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
42180 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
42181 										initLocExpr__cgen_11483(p, (*(*t)._kind_6.sons->data[iX60gensym2246_])._kind_6.sons->data[iX60gensym2249_], (&xX60gensym2249_));
42182 										T42_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42183 										T42_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42184 										res_3 = rawNewString(((NI) 80));
42185 										res_3 = resizeString(res_3, 4);
42186 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
42187 										T43_ = NIM_NIL;
42188 										T43_ = rdCharLoc__cgen_10343(aX60gensym2244_);
42189 										cgFormatValue__cgen_141((&res_3), T43_);
42190 										res_3 = resizeString(res_3, 4);
42191 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_639));
42192 										T44_ = NIM_NIL;
42193 										T44_ = rdCharLoc__cgen_10343(xX60gensym2249_);
42194 										cgFormatValue__cgen_141((&res_3), T44_);
42195 										res_3 = resizeString(res_3, 7);
42196 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1031));
42197 										T45_ = NIM_NIL;
42198 										T45_ = rope__ropes_115(((NI64) ((*p).labels)));
42199 										T46_ = NIM_NIL;
42200 										T46_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_631), T45_);
42201 										T47_ = NIM_NIL;
42202 										T47_ = amp___ropes_140(T46_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
42203 										cgFormatValue__cgen_141((&res_3), T47_);
42204 										res_3 = resizeString(res_3, 1);
42205 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
42206 										{
42207 											if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA50_;
42208 											res_3 = resizeString(res_3, 1);
42209 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
42210 										}
42211 										LA50_: ;
42212 										T52_ = NIM_NIL;
42213 										T52_ = rope__ropes_109(res_3);
42214 										T53_ = NIM_NIL;
42215 										T53_ = indentLine__cgen_280(p, T52_);
42216 										add__ropes_159(T42_, T53_);
42217 									}
42218 									LA23_: ;
42219 									i += ((NI) 1);
42220 								} LA22: ;
42221 							}
42222 						}
42223 					}
42224 					goto LA15_;
42225 					LA17_: ;
42226 					{
42227 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T55_;
42228 						tyArray__JiWwrsTRC6xqNlGcBthSVA T56_;
42229 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
42230 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
42231 						T55_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42232 						T55_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42233 						nimZeroMem((void*)T56_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
42234 						T56_[0] = rope__ropes_115(((NI64) ((*p).labels)));
42235 						T57_ = NIM_NIL;
42236 						T57_ = percent___cgen_15139(T56_, 1);
42237 						T58_ = NIM_NIL;
42238 						T58_ = indentLine__cgen_280(p, T57_);
42239 						add__ropes_159(T55_, T58_);
42240 					}
42241 					LA15_: ;
42242 					res += ((NI) 1);
42243 				} LA14: ;
42244 			}
42245 		}
42246 		{
42247 			NI T61_;
42248 			NI T62_;
42249 			NI gotoTargetX60gensym2246_;
42250 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T65_;
42251 			tyArray__JiWwrsTRC6xqNlGcBthSVA T66_;
42252 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T67_;
42253 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
42254 			NI T69_;
42255 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T70_;
42256 			tyArray__JiWwrsTRC6xqNlGcBthSVA T71_;
42257 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T72_;
42258 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T73_;
42259 			T61_ = (NI)0;
42260 			T61_ = len__ast_3198(t);
42261 			T62_ = (NI)0;
42262 			T62_ = len__ast_3198(t);
42263 			if (!((NI)(T61_ - ((NI) 1)) < (NI)(T62_ - ((NI) 1)))) goto LA63_;
42264 			(*p).labels += ((NI) 1);
42265 			gotoTargetX60gensym2246_ = (*p).labels;
42266 			T65_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42267 			T65_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42268 			nimZeroMem((void*)T66_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
42269 			T66_[0] = rope__ropes_115(((NI64) (gotoTargetX60gensym2246_)));
42270 			T67_ = NIM_NIL;
42271 			T67_ = percent___cgen_15139(T66_, 1);
42272 			T68_ = NIM_NIL;
42273 			T68_ = indentLine__cgen_280(p, T67_);
42274 			add__ropes_159(T65_, T68_);
42275 			T69_ = (NI)0;
42276 			T69_ = len__ast_3198(t);
42277 			resX60gensym2246_ = genCaseSecondPass__cgen_14934(p, t, d, ((NI) (labIdX60gensym2246_)), (NI)(T69_ - ((NI) 1)));
42278 			T70_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42279 			T70_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42280 			nimZeroMem((void*)T71_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
42281 			T71_[0] = rope__ropes_115(((NI64) (gotoTargetX60gensym2246_)));
42282 			T72_ = NIM_NIL;
42283 			T72_ = percent___cgen_14951(T71_, 1);
42284 			T73_ = NIM_NIL;
42285 			T73_ = indentLine__cgen_280(p, T72_);
42286 			add__ropes_159(T70_, T73_);
42287 		}
42288 		goto LA59_;
42289 		LA63_: ;
42290 		{
42291 			NI T75_;
42292 			T75_ = (NI)0;
42293 			T75_ = len__ast_3198(t);
42294 			resX60gensym2246_ = genCaseSecondPass__cgen_14934(p, t, d, ((NI) (labIdX60gensym2246_)), (NI)(T75_ - ((NI) 1)));
42295 		}
42296 		LA59_: ;
42297 		lendX60gensym2244_ = resX60gensym2246_;
42298 		fixLabel__cgen_11443(p, lendX60gensym2244_);
42299 	}
42300 	break;
42301 	default:
42302 	{
42303 		{
42304 			NIM_BOOL T79_;
42305 			T79_ = (NIM_BOOL)0;
42306 			T79_ = ((*(*t)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
42307 			if (!(T79_)) goto LA80_;
42308 			T79_ = (((*(*(*t)._kind_6.sons->data[((NI) 0)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 35))&63U)))!=0);
42309 			LA80_: ;
42310 			if (!T79_) goto LA81_;
42311 			genGotoForCase__cgen_14208(p, t);
42312 		}
42313 		goto LA77_;
42314 		LA81_: ;
42315 		{
42316 			genOrdinalCase__cgen_15326(p, t, d);
42317 		}
42318 		LA77_: ;
42319 	}
42320 	break;
42321 	}
42322 }
N_NIMCALL(tySequence__KjgUMUjT3LUKOFIK4xt5ug *,newSeq__cgen_13575)42323 N_LIB_PRIVATE N_NIMCALL(tySequence__KjgUMUjT3LUKOFIK4xt5ug*, newSeq__cgen_13575)(NI len) {
42324 	tySequence__KjgUMUjT3LUKOFIK4xt5ug* result;
42325 	result = NIM_NIL;
42326 	result = (tySequence__KjgUMUjT3LUKOFIK4xt5ug*) newSeq((&NTIseqLtupleLfin58pnode_inexcept58bool_label58naturalTT__KjgUMUjT3LUKOFIK4xt5ug_), len);
42327 	return result;
42328 }
N_INLINE(void,pop__cgen_13602)42329 static N_INLINE(void, pop__cgen_13602)(tySequence__KjgUMUjT3LUKOFIK4xt5ug** s, tyTuple__FxkU4d1VDodDMc9ah6Mbagw* Result) {
42330 	NI L;
42331 	NI T1_;
42332 	T1_ = ((*s) ? (*s)->Sup.len : 0);
42333 	L = (NI)(T1_ - ((NI) 1));
42334 	unsureAsgnRef((void**) (&(*Result).Field0), (*s)->data[L].Field0);
42335 	(*Result).Field1 = (*s)->data[L].Field1;
42336 	(*Result).Field2 = (*s)->data[L].Field2;
42337 	unsureAsgnRef((void**) (&(*s)), (tySequence__KjgUMUjT3LUKOFIK4xt5ug*) setLengthSeqV2(&((*s))->Sup, (&NTIseqLtupleLfin58pnode_inexcept58bool_label58naturalTT__KjgUMUjT3LUKOFIK4xt5ug_), ((NI) (L))));
42338 }
N_NIMCALL(void,blockLeaveActions__cgen_13564)42339 N_LIB_PRIVATE N_NIMCALL(void, blockLeaveActions__cgen_13564)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, NI howManyTrys, NI howManyExcepts) {
42340 	tySequence__KjgUMUjT3LUKOFIK4xt5ug* stack;
42341 	stack = newSeq__cgen_13575(((NI) 0));
42342 	(*p).withinBlockLeaveActions += ((NI) 1);
42343 	{
42344 		NI i;
42345 		NI res;
42346 		i = (NI)0;
42347 		res = ((NI) 1);
42348 		{
42349 			while (1) {
42350 				tyTuple__FxkU4d1VDodDMc9ah6Mbagw tryStmt;
42351 				NI T20_;
42352 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* finallyStmt;
42353 				if (!(res <= howManyTrys)) goto LA3;
42354 				i = res;
42355 				nimZeroMem((void*)(&tryStmt), sizeof(tyTuple__FxkU4d1VDodDMc9ah6Mbagw));
42356 				pop__cgen_13602((&(*p).nestedTryStmts), (&tryStmt));
42357 				{
42358 					if (!((*(*(*(*p).module).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 1))) goto LA6_;
42359 					{
42360 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T12_;
42361 						NimStringDesc* res_2;
42362 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
42363 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
42364 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
42365 						if (!!(tryStmt.Field1)) goto LA10_;
42366 						T12_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42367 						T12_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42368 						res_2 = rawNewString(((NI) 80));
42369 						T13_ = NIM_NIL;
42370 						T13_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1036));
42371 						cgFormatValue__cgen_141((&res_2), T13_);
42372 						res_2 = resizeString(res_2, 3);
42373 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
42374 						{
42375 							if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA16_;
42376 							res_2 = resizeString(res_2, 1);
42377 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
42378 						}
42379 						LA16_: ;
42380 						T18_ = NIM_NIL;
42381 						T18_ = rope__ropes_109(res_2);
42382 						T19_ = NIM_NIL;
42383 						T19_ = indentLine__cgen_280(p, T18_);
42384 						add__ropes_159(T12_, T19_);
42385 					}
42386 					LA10_: ;
42387 				}
42388 				LA6_: ;
42389 				stack = (tySequence__KjgUMUjT3LUKOFIK4xt5ug*) incrSeqV3((TGenericSeq*)(stack), (&NTIseqLtupleLfin58pnode_inexcept58bool_label58naturalTT__KjgUMUjT3LUKOFIK4xt5ug_));
42390 				T20_ = stack->Sup.len++;
42391 				asgnRef((void**) (&stack->data[T20_].Field0), tryStmt.Field0);
42392 				stack->data[T20_].Field1 = tryStmt.Field1;
42393 				stack->data[T20_].Field2 = tryStmt.Field2;
42394 				finallyStmt = tryStmt.Field0;
42395 				{
42396 					if (!!((finallyStmt == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA23_;
42397 					genStmts__cgen_11457(p, (*finallyStmt)._kind_6.sons->data[((NI) 0)]);
42398 				}
42399 				LA23_: ;
42400 				res += ((NI) 1);
42401 			} LA3: ;
42402 		}
42403 	}
42404 	(*p).withinBlockLeaveActions -= ((NI) 1);
42405 	{
42406 		NI i_2;
42407 		NI colontmp_;
42408 		NI res_3;
42409 		i_2 = (NI)0;
42410 		colontmp_ = (NI)0;
42411 		colontmp_ = (NI)(howManyTrys - ((NI) 1));
42412 		res_3 = colontmp_;
42413 		{
42414 			while (1) {
42415 				NI T28_;
42416 				if (!(((NI) 0) <= res_3)) goto LA27;
42417 				i_2 = res_3;
42418 				asgnRef((void**) (&(*p).nestedTryStmts), (tySequence__KjgUMUjT3LUKOFIK4xt5ug*) incrSeqV3((TGenericSeq*)((*p).nestedTryStmts), (&NTIseqLtupleLfin58pnode_inexcept58bool_label58naturalTT__KjgUMUjT3LUKOFIK4xt5ug_)));
42419 				T28_ = (*p).nestedTryStmts->Sup.len++;
42420 				asgnRef((void**) (&(*p).nestedTryStmts->data[T28_].Field0), stack->data[i_2].Field0);
42421 				(*p).nestedTryStmts->data[T28_].Field1 = stack->data[i_2].Field1;
42422 				(*p).nestedTryStmts->data[T28_].Field2 = stack->data[i_2].Field2;
42423 				res_3 -= ((NI) 1);
42424 			} LA27: ;
42425 		}
42426 	}
42427 	{
42428 		if (!!((((*p).flags &((NU8)1<<((NU)(((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 3))&7U)))!=0))) goto LA31_;
42429 		{
42430 			NI i_3;
42431 			NI colontmp__2;
42432 			NI res_4;
42433 			i_3 = (NI)0;
42434 			colontmp__2 = (NI)0;
42435 			colontmp__2 = (NI)(howManyExcepts - ((NI) 1));
42436 			res_4 = colontmp__2;
42437 			{
42438 				while (1) {
42439 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T36_;
42440 					NimStringDesc* res_5;
42441 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
42442 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
42443 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
42444 					if (!(((NI) 0) <= res_4)) goto LA35;
42445 					i_3 = res_4;
42446 					T36_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42447 					T36_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42448 					res_5 = rawNewString(((NI) 80));
42449 					T37_ = NIM_NIL;
42450 					T37_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1037));
42451 					cgFormatValue__cgen_141((&res_5), T37_);
42452 					res_5 = resizeString(res_5, 3);
42453 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
42454 					{
42455 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA40_;
42456 						res_5 = resizeString(res_5, 1);
42457 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
42458 					}
42459 					LA40_: ;
42460 					T42_ = NIM_NIL;
42461 					T42_ = rope__ropes_109(res_5);
42462 					T43_ = NIM_NIL;
42463 					T43_ = indentLine__cgen_280(p, T42_);
42464 					add__ropes_159(T36_, T43_);
42465 					res_4 -= ((NI) 1);
42466 				} LA35: ;
42467 			}
42468 		}
42469 	}
42470 	LA31_: ;
42471 }
N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA **,X5BX5D___cgen_14171)42472 static N_INLINE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**, X5BX5D___cgen_14171)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** s, NI sLen_0, NI i) {
42473 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** result;
42474 	result = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42475 	result = &s[(NI)(sLen_0 - i)];
42476 	return result;
42477 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14194)42478 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14194)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
42479 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
42480 	result = NIM_NIL;
42481 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1039), args, argsLen_0);
42482 	return result;
42483 }
N_NIMCALL(void,genReturnStmt__cgen_14144)42484 N_LIB_PRIVATE N_NIMCALL(void, genReturnStmt__cgen_14144)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t) {
42485 	NI T9_;
42486 	NI T10_;
42487 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T27_;
42488 	tyArray__qTjAvTvKF9anytN1At69aJMQ T28_;
42489 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
42490 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
42491 {	{
42492 		if (!(((*t).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 15))&31U)))!=0)) goto LA3_;
42493 		goto BeforeRet_;
42494 	}
42495 	LA3_: ;
42496 	(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 0)) & 7);
42497 	genLineDir__cgen_359(p, t);
42498 	{
42499 		if (!!(((*(*t)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA7_;
42500 		genStmts__cgen_11457(p, (*t)._kind_6.sons->data[((NI) 0)]);
42501 	}
42502 	LA7_: ;
42503 	T9_ = ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0);
42504 	T10_ = (NI)0;
42505 	T10_ = inExceptBlockLen__cgen_13154(p);
42506 	blockLeaveActions__cgen_13564(p, T9_, T10_);
42507 	{
42508 		NIM_BOOL T13_;
42509 		NI T14_;
42510 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* safePoint;
42511 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T18_;
42512 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T19_;
42513 		NimStringDesc* res;
42514 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
42515 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
42516 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
42517 		T13_ = (NIM_BOOL)0;
42518 		T14_ = ((*p).finallySafePoints ? (*p).finallySafePoints->Sup.len : 0);
42519 		T13_ = (((NI) 0) < T14_);
42520 		if (!(T13_)) goto LA15_;
42521 		T13_ = !((((*p).flags &((NU8)1<<((NU)(((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 3))&7U)))!=0));
42522 		LA15_: ;
42523 		if (!T13_) goto LA16_;
42524 		T18_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42525 		T18_ = X5BX5D___cgen_14171((*p).finallySafePoints->data, ((*p).finallySafePoints ? (*p).finallySafePoints->Sup.len : 0), ((NI) 1));
42526 		safePoint = (*T18_);
42527 		T19_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42528 		T19_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42529 		res = rawNewString(((NI) 80));
42530 		res = resizeString(res, 4);
42531 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
42532 		cgFormatValue__cgen_141((&res), safePoint);
42533 		res = resizeString(res, 14);
42534 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1038));
42535 		T20_ = NIM_NIL;
42536 		T20_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1037));
42537 		cgFormatValue__cgen_141((&res), T20_);
42538 		res = resizeString(res, 3);
42539 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
42540 		{
42541 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA23_;
42542 			res = resizeString(res, 1);
42543 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
42544 		}
42545 		LA23_: ;
42546 		T25_ = NIM_NIL;
42547 		T25_ = rope__ropes_109(res);
42548 		T26_ = NIM_NIL;
42549 		T26_ = indentLine__cgen_280(p, T25_);
42550 		add__ropes_159(T19_, T26_);
42551 	}
42552 	LA16_: ;
42553 	T27_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42554 	T27_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42555 	nimZeroMem((void*)T28_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
42556 	T29_ = NIM_NIL;
42557 	T29_ = percent___cgen_14194(T28_, 0);
42558 	T30_ = NIM_NIL;
42559 	T30_ = indentLine__cgen_280(p, T29_);
42560 	add__ropes_159(T27_, T30_);
42561 	}BeforeRet_: ;
42562 }
N_NIMCALL(void,genBreakStmt__cgen_14659)42563 N_LIB_PRIVATE N_NIMCALL(void, genBreakStmt__cgen_14659)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t) {
42564 	NI idx;
42565 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* label;
42566 	NI T20_;
42567 	NI T21_;
42568 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T22_;
42569 	tyArray__JiWwrsTRC6xqNlGcBthSVA T23_;
42570 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
42571 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
42572 	idx = (*p).breakIdx;
42573 	{
42574 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
42575 		if (!!(((*(*t)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA3_;
42576 		sym = (*(*t)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
42577 		{
42578 			if (!!(((*sym).loc.k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 10)))) goto LA7_;
42579 			failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1040));
42580 		}
42581 		LA7_: ;
42582 		idx = (NI)((*sym).position - ((NI) 1));
42583 	}
42584 	goto LA1_;
42585 	LA3_: ;
42586 	{
42587 		{
42588 			while (1) {
42589 				NIM_BOOL T12_;
42590 				T12_ = (NIM_BOOL)0;
42591 				T12_ = (((NI) 0) <= idx);
42592 				if (!(T12_)) goto LA13_;
42593 				T12_ = !((*p).blocks->data[idx].isLoop);
42594 				LA13_: ;
42595 				if (!T12_) goto LA11;
42596 				idx -= ((NI) 1);
42597 			} LA11: ;
42598 		}
42599 		{
42600 			NIM_BOOL T16_;
42601 			T16_ = (NIM_BOOL)0;
42602 			T16_ = (idx < ((NI) 0));
42603 			if (T16_) goto LA17_;
42604 			T16_ = !((*p).blocks->data[idx].isLoop);
42605 			LA17_: ;
42606 			if (!T16_) goto LA18_;
42607 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*t).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1041), TM__MQdRN7fpbG7rPm4JpVVAhA_1042);
42608 		}
42609 		LA18_: ;
42610 	}
42611 	LA1_: ;
42612 	label = assignLabel__cgen_13432((&(*p).blocks->data[idx]));
42613 	T20_ = ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0);
42614 	T21_ = (NI)0;
42615 	T21_ = inExceptBlockLen__cgen_13154(p);
42616 	blockLeaveActions__cgen_13564(p, (NI)(T20_ - ((NI) ((*p).blocks->data[idx].nestedTryStmts))), (NI)(T21_ - ((NI) ((*p).blocks->data[idx].nestedExceptStmts))));
42617 	genLineDir__cgen_359(p, t);
42618 	T22_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42619 	T22_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42620 	nimZeroMem((void*)T23_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
42621 	T23_[0] = label;
42622 	T24_ = NIM_NIL;
42623 	T24_ = percent___cgen_14119(T23_, 1);
42624 	T25_ = NIM_NIL;
42625 	T25_ = indentLine__cgen_280(p, T24_);
42626 	add__ropes_159(T22_, T25_);
42627 }
N_INLINE(void,cow__cgen_19456)42628 static N_INLINE(void, cow__cgen_19456)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
42629 	{
42630 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64))) goto LA3_;
42631 		cowBracket__cgen_19425(p, (*n)._kind_6.sons->data[((NI) 0)]);
42632 	}
42633 	LA3_: ;
42634 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,discriminatorTableDecl__cgen_6921)42635 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, discriminatorTableDecl__cgen_6921)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* objtype, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* d) {
42636 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
42637 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
42638 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
42639 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T2_;
42640 	tyObject_Int128__9a9axPfb75jdWY25AamJewkA T3_;
42641 	tyObject_Int128__9a9axPfb75jdWY25AamJewkA T4_;
42642 	result = NIM_NIL;
42643 	T1_ = NIM_NIL;
42644 	T1_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_135));
42645 	(void)(T1_);
42646 	tmp = discriminatorTableName__cgen_6898(m, objtype, d);
42647 	nimZeroMem((void*)T2_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
42648 	T2_[0] = tmp;
42649 	T3_ = lengthOrd__types_1652((*(*m).g).config, (*d).typ);
42650 	T4_ = plus___int495056_794(T3_, IL64(1));
42651 	T2_[1] = rope__cgen_6918(T4_);
42652 	result = percent___cgen_6927(T2_, 2);
42653 	return result;
42654 }
N_NIMCALL(void,genDiscriminantCheck__cgen_17287)42655 N_LIB_PRIVATE N_NIMCALL(void, genDiscriminantCheck__cgen_17287)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp, tyObject_TType__facALICuu8zUj0hjvbTLFg* objtype, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field) {
42656 	tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
42657 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
42658 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T9_;
42659 	NimStringDesc* res_2;
42660 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
42661 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
42662 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
42663 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
42664 	tyObject_Int128__9a9axPfb75jdWY25AamJewkA T14_;
42665 	NI64 T15_;
42666 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
42667 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
42668 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
42669 	t = skipTypes__ast_3735(objtype, TM__MQdRN7fpbG7rPm4JpVVAhA_357);
42670 	T1_ = NIM_NIL;
42671 	T1_ = genTypeInfoV1__cgen_6768((*p).module, t, (*a.lode).info);
42672 	(void)(T1_);
42673 	{
42674 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym3092_;
42675 		NIM_BOOL T4_;
42676 		NimStringDesc* res;
42677 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
42678 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
42679 		xX60gensym3092_ = field;
42680 		T4_ = (NIM_BOOL)0;
42681 		T4_ = containsOrIncl__astalgo_402((&(*(*p).module).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym3092_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym3092_).Sup.itemId.item))));
42682 		if (!!(T4_)) goto LA5_;
42683 		res = rawNewString(((NI) 80));
42684 		res = resizeString(res, 7);
42685 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_439));
42686 		T7_ = NIM_NIL;
42687 		T7_ = discriminatorTableDecl__cgen_6921((*p).module, t, field);
42688 		cgFormatValue__cgen_141((&res), T7_);
42689 		T8_ = NIM_NIL;
42690 		T8_ = rope__ropes_109(res);
42691 		add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T8_);
42692 	}
42693 	LA5_: ;
42694 	T9_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
42695 	T9_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
42696 	res_2 = rawNewString(((NI) 80));
42697 	T10_ = NIM_NIL;
42698 	T10_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1043));
42699 	cgFormatValue__cgen_141((&res_2), T10_);
42700 	res_2 = resizeString(res_2, 10);
42701 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1044));
42702 	T11_ = NIM_NIL;
42703 	T11_ = rdLoc__cgen_425(a);
42704 	cgFormatValue__cgen_141((&res_2), T11_);
42705 	res_2 = resizeString(res_2, 12);
42706 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1045));
42707 	T12_ = NIM_NIL;
42708 	T12_ = rdLoc__cgen_425(tmp);
42709 	cgFormatValue__cgen_141((&res_2), T12_);
42710 	res_2 = resizeString(res_2, 3);
42711 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_556));
42712 	T13_ = NIM_NIL;
42713 	T13_ = discriminatorTableName__cgen_6898((*p).module, t, field);
42714 	cgFormatValue__cgen_141((&res_2), T13_);
42715 	res_2 = resizeString(res_2, 2);
42716 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
42717 	T14_ = lengthOrd__types_1652((*(*(*p).module).g).config, (*field).typ);
42718 	T15_ = (NI64)0;
42719 	T15_ = toInt64__int495056_88(T14_);
42720 	T16_ = NIM_NIL;
42721 	T16_ = intLiteral__cgen_11471((NI64)(T15_ + IL64(1)));
42722 	cgFormatValue__cgen_141((&res_2), T16_);
42723 	res_2 = resizeString(res_2, 2);
42724 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
42725 	{
42726 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA19_;
42727 		res_2 = resizeString(res_2, 1);
42728 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
42729 	}
42730 	LA19_: ;
42731 	T21_ = NIM_NIL;
42732 	T21_ = rope__ropes_109(res_2);
42733 	T22_ = NIM_NIL;
42734 	T22_ = indentLine__cgen_280(p, T21_);
42735 	add__ropes_159(T9_, T22_);
42736 }
N_NIMCALL(void,asgnFieldDiscriminant__cgen_17401)42737 N_LIB_PRIVATE N_NIMCALL(void, asgnFieldDiscriminant__cgen_17401)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e) {
42738 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
42739 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tmp;
42740 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* dotExpr;
42741 	tyObject_TType__facALICuu8zUj0hjvbTLFg* T5_;
42742 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
42743 	nimZeroMem((void*)(&tmp), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
42744 	dotExpr = (*e)._kind_6.sons->data[((NI) 0)];
42745 	{
42746 		if (!((*dotExpr).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46))) goto LA3_;
42747 		dotExpr = (*dotExpr)._kind_6.sons->data[((NI) 0)];
42748 	}
42749 	LA3_: ;
42750 	initLocExpr__cgen_11483(p, (*e)._kind_6.sons->data[((NI) 0)], (&a));
42751 	T5_ = NIM_NIL;
42752 	T5_ = t__cgen_79(a);
42753 	getTemp__cgen_7343(p, T5_, (&tmp), NIM_FALSE);
42754 	expr__cgen_11460(p, (*e)._kind_6.sons->data[((NI) 1)], (&tmp));
42755 	{
42756 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* field;
42757 		if (!!((((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0))) goto LA8_;
42758 		field = (*(*dotExpr)._kind_6.sons->data[((NI) 1)])._kind_4.sym;
42759 		genDiscriminantCheck__cgen_17287(p, a, tmp, (*(*dotExpr)._kind_6.sons->data[((NI) 0)]).typ, field);
42760 		liMessage__msgs_1118((*(*(*p).module).g).config, (*e).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 55), ((NimStringDesc*) NIM_NIL), ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_1046, NIM_FALSE);
42761 	}
42762 	LA8_: ;
42763 	genAssignment__cgen_10369(p, a, tmp, 0);
42764 }
N_NIMCALL(void,genAsgn__cgen_17422)42765 N_LIB_PRIVATE N_NIMCALL(void, genAsgn__cgen_17422)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* e, NIM_BOOL fastAsgn) {
42766 	{
42767 		NIM_BOOL T3_;
42768 		T3_ = (NIM_BOOL)0;
42769 		T3_ = ((*(*e)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
42770 		if (!(T3_)) goto LA4_;
42771 		T3_ = (((*(*(*e)._kind_6.sons->data[((NI) 0)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 35))&63U)))!=0);
42772 		LA4_: ;
42773 		if (!T3_) goto LA5_;
42774 		genLineDir__cgen_359(p, e);
42775 		genGotoVar__cgen_13760(p, (*e)._kind_6.sons->data[((NI) 1)]);
42776 	}
42777 	goto LA1_;
42778 	LA5_: ;
42779 	{
42780 		NIM_BOOL T8_;
42781 		T8_ = (NIM_BOOL)0;
42782 		T8_ = (((*p).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 2))&31U)))!=0);
42783 		if (!(T8_)) goto LA9_;
42784 		T8_ = isDiscriminantField__astalgo_4335((*e)._kind_6.sons->data[((NI) 0)]);
42785 		LA9_: ;
42786 		if (!T8_) goto LA10_;
42787 		genLineDir__cgen_359(p, e);
42788 		asgnFieldDiscriminant__cgen_17401(p, e);
42789 	}
42790 	goto LA1_;
42791 	LA10_: ;
42792 	{
42793 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* le;
42794 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ri;
42795 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
42796 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T13_;
42797 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
42798 		le = (*e)._kind_6.sons->data[((NI) 0)];
42799 		ri = (*e)._kind_6.sons->data[((NI) 1)];
42800 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
42801 		T13_ = NIM_NIL;
42802 		T13_ = skipTypes__ast_3735((*le).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_112);
42803 		T14_ = NIM_NIL;
42804 		T14_ = getTypeDesc__cgen_6631((*p).module, T13_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
42805 		(void)(T14_);
42806 		initLoc__cgen_60((&a), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0), le, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
42807 		a.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 9)) & 15);
42808 		a.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 10)) & 15);
42809 		expr__cgen_11460(p, le, (&a));
42810 		a.flags &= ~(((NU16)1) << ((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 10)) & 15));
42811 		{
42812 			if (!fastAsgn) goto LA17_;
42813 			a.flags |= ((NU16)1)<<((((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 2)) & 15);
42814 		}
42815 		LA17_: ;
42816 		genLineDir__cgen_359(p, ri);
42817 		loadInto__cgen_13409(p, le, ri, (&a));
42818 	}
42819 	LA1_: ;
42820 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genAsmOrEmitStmt__cgen_17188)42821 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genAsmOrEmitStmt__cgen_17188)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, NIM_BOOL isAsmStmt) {
42822 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
42823 	NimStringDesc* res;
42824 	result = NIM_NIL;
42825 	res = ((NimStringDesc*) NIM_NIL);
42826 	{
42827 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** it;
42828 		tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp_;
42829 		NI i;
42830 		NI L;
42831 		NI T2_;
42832 		it = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
42833 		colontmp_ = NIM_NIL;
42834 		colontmp_ = (*t)._kind_6.sons;
42835 		i = ((NI) 0);
42836 		T2_ = (colontmp_ ? colontmp_->Sup.len : 0);
42837 		L = T2_;
42838 		{
42839 			while (1) {
42840 				if (!(i < L)) goto LA4;
42841 				it = &colontmp_->data[i];
42842 				switch ((*(*it)).kind) {
42843 				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
42844 				{
42845 					res = resizeString(res, ((*(*it))._kind_3.strVal ? (*(*it))._kind_3.strVal->Sup.len : 0) + 0);
42846 appendString(res, (*(*it))._kind_3.strVal);
42847 				}
42848 				break;
42849 				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
42850 				{
42851 					tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
42852 					sym = (*(*it))._kind_4.sym;
42853 					{
42854 						tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
42855 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
42856 						NimStringDesc* T12_;
42857 						if (!((61440 &((NU32)1<<((NU)((*sym).kind)&31U)))!=0)) goto LA9_;
42858 						nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
42859 						initLocExpr__cgen_11483(p, (*it), (&a));
42860 						T11_ = NIM_NIL;
42861 						T11_ = rdLoc__cgen_425(a);
42862 						T12_ = NIM_NIL;
42863 						T12_ = dollar___ropes_250(T11_);
42864 						res = resizeString(res, (T12_ ? T12_->Sup.len : 0) + 0);
42865 appendString(res, T12_);
42866 					}
42867 					goto LA7_;
42868 					LA9_: ;
42869 					{
42870 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
42871 						NimStringDesc* T17_;
42872 						if (!((*sym).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 7))) goto LA14_;
42873 						T16_ = NIM_NIL;
42874 						T16_ = getTypeDesc__cgen_6631((*p).module, (*sym).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
42875 						T17_ = NIM_NIL;
42876 						T17_ = dollar___ropes_250(T16_);
42877 						res = resizeString(res, (T17_ ? T17_->Sup.len : 0) + 0);
42878 appendString(res, T17_);
42879 					}
42880 					goto LA7_;
42881 					LA14_: ;
42882 					{
42883 						tyObject_TType__facALICuu8zUj0hjvbTLFg* T19_;
42884 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
42885 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
42886 						NimStringDesc* T25_;
42887 						T19_ = NIM_NIL;
42888 						T19_ = skipTypes__ast_3735((*sym).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_272);
42889 						T20_ = NIM_NIL;
42890 						T20_ = getTypeDesc__cgen_6631((*p).module, T19_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
42891 						(void)(T20_);
42892 						r = (*sym).loc.r;
42893 						{
42894 							if (!(r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA23_;
42895 							r = mangleName__cgen_628((*p).module, sym);
42896 							asgnRef((void**) (&(*sym).loc.r), r);
42897 						}
42898 						LA23_: ;
42899 						T25_ = NIM_NIL;
42900 						T25_ = dollar___ropes_250(r);
42901 						res = resizeString(res, (T25_ ? T25_->Sup.len : 0) + 0);
42902 appendString(res, T25_);
42903 					}
42904 					LA7_: ;
42905 				}
42906 				break;
42907 				case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 132):
42908 				{
42909 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
42910 					NimStringDesc* T28_;
42911 					T27_ = NIM_NIL;
42912 					T27_ = getTypeDesc__cgen_6631((*p).module, (*(*it)).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
42913 					T28_ = NIM_NIL;
42914 					T28_ = dollar___ropes_250(T27_);
42915 					res = resizeString(res, (T28_ ? T28_->Sup.len : 0) + 0);
42916 appendString(res, T28_);
42917 				}
42918 				break;
42919 				default:
42920 				{
42921 					tyObject_TType__facALICuu8zUj0hjvbTLFg* T30_;
42922 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
42923 					tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_2;
42924 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
42925 					NimStringDesc* T33_;
42926 					T30_ = NIM_NIL;
42927 					T30_ = skipTypes__ast_3735((*(*it)).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_272);
42928 					T31_ = NIM_NIL;
42929 					T31_ = getTypeDesc__cgen_6631((*p).module, T30_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
42930 					(void)(T31_);
42931 					nimZeroMem((void*)(&a_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
42932 					initLocExpr__cgen_11483(p, (*it), (&a_2));
42933 					T32_ = NIM_NIL;
42934 					T32_ = rdLoc__cgen_425(a_2);
42935 					T33_ = NIM_NIL;
42936 					T33_ = dollar___ropes_250(T32_);
42937 					res = resizeString(res, (T33_ ? T33_->Sup.len : 0) + 0);
42938 appendString(res, T33_);
42939 				}
42940 				break;
42941 				}
42942 				i += ((NI) 1);
42943 			} LA4: ;
42944 		}
42945 	}
42946 	{
42947 		NIM_BOOL T36_;
42948 		T36_ = (NIM_BOOL)0;
42949 		T36_ = isAsmStmt;
42950 		if (!(T36_)) goto LA37_;
42951 		T36_ = ((CC__extccomp_508[((*(*(*(*p).module).g).config).cCompiler)- 1].Field21 &((NU8)1<<((NU)(((tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg) 5))&7U)))!=0);
42952 		LA37_: ;
42953 		if (!T36_) goto LA38_;
42954 		{
42955 			NimStringDesc* x;
42956 			NI first;
42957 			NI last;
42958 			NI eolpos;
42959 			x = NIM_NIL;
42960 			first = ((NI) 0);
42961 			last = ((NI) 0);
42962 			eolpos = ((NI) 0);
42963 			{
42964 				while (1) {
42965 					NI T64_;
42966 					NI j;
42967 					{
42968 						while (1) {
42969 							NIM_BOOL T45_;
42970 							T45_ = (NIM_BOOL)0;
42971 							T45_ = (last < (res ? res->Sup.len : 0));
42972 							if (!(T45_)) goto LA46_;
42973 							T45_ = !((((NU8)(res->data[last])) == ((NU8)(13)) || ((NU8)(res->data[last])) == ((NU8)(10))));
42974 							LA46_: ;
42975 							if (!T45_) goto LA44;
42976 							last += ((NI) 1);
42977 						} LA44: ;
42978 					}
42979 					eolpos = last;
42980 					{
42981 						if (!(last < (res ? res->Sup.len : 0))) goto LA49_;
42982 						{
42983 							if (!((NU8)(res->data[last]) == (NU8)(10))) goto LA53_;
42984 							last += ((NI) 1);
42985 						}
42986 						goto LA51_;
42987 						LA53_: ;
42988 						{
42989 							if (!((NU8)(res->data[last]) == (NU8)(13))) goto LA56_;
42990 							last += ((NI) 1);
42991 							{
42992 								NIM_BOOL T60_;
42993 								T60_ = (NIM_BOOL)0;
42994 								T60_ = (last < (res ? res->Sup.len : 0));
42995 								if (!(T60_)) goto LA61_;
42996 								T60_ = ((NU8)(res->data[last]) == (NU8)(10));
42997 								LA61_: ;
42998 								if (!T60_) goto LA62_;
42999 								last += ((NI) 1);
43000 							}
43001 							LA62_: ;
43002 						}
43003 						goto LA51_;
43004 						LA56_: ;
43005 						LA51_: ;
43006 					}
43007 					LA49_: ;
43008 					T64_ = (NI)0;
43009 					{
43010 						if (!NIM_FALSE) goto LA67_;
43011 						T64_ = (NI)(last - ((NI) 1));
43012 					}
43013 					goto LA65_;
43014 					LA67_: ;
43015 					{
43016 						T64_ = (NI)(eolpos - ((NI) 1));
43017 					}
43018 					LA65_: ;
43019 					x = substr__system_7743(res, first, T64_);
43020 					j = ((NI) 0);
43021 					{
43022 						while (1) {
43023 							NIM_BOOL T72_;
43024 							T72_ = (NIM_BOOL)0;
43025 							T72_ = (j < (x ? x->Sup.len : 0));
43026 							if (!(T72_)) goto LA73_;
43027 							T72_ = (((NU8)(x->data[j])) == ((NU8)(32)) || ((NU8)(x->data[j])) == ((NU8)(9)));
43028 							LA73_: ;
43029 							if (!T72_) goto LA71;
43030 							j += ((NI) 1);
43031 						} LA71: ;
43032 					}
43033 					{
43034 						if (!(j < (x ? x->Sup.len : 0))) goto LA76_;
43035 						{
43036 							if (!(((NU8)(x->data[j])) == ((NU8)(34)) || ((NU8)(x->data[j])) == ((NU8)(58)))) goto LA80_;
43037 							add__ropes_162(&result, x);
43038 							add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43039 						}
43040 						goto LA78_;
43041 						LA80_: ;
43042 						{
43043 							NimStringDesc* T83_;
43044 							add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1048));
43045 							T83_ = NIM_NIL;
43046 							T83_ = nsuReplaceStr(x, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1048), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1049));
43047 							add__ropes_162(&result, T83_);
43048 							add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1050));
43049 						}
43050 						LA78_: ;
43051 					}
43052 					LA76_: ;
43053 					{
43054 						if (!(eolpos == last)) goto LA86_;
43055 						goto LA41;
43056 					}
43057 					LA86_: ;
43058 					first = last;
43059 				}
43060 			} LA41: ;
43061 		}
43062 	}
43063 	goto LA34_;
43064 	LA38_: ;
43065 	{
43066 		res = resizeString(res, 1);
43067 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43068 		result = rope__ropes_109(res);
43069 	}
43070 	LA34_: ;
43071 	return result;
43072 }
N_NIMCALL(void,genAsmStmt__cgen_17232)43073 N_LIB_PRIVATE N_NIMCALL(void, genAsmStmt__cgen_17232)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t) {
43074 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* s;
43075 	genLineDir__cgen_359(p, t);
43076 	s = genAsmOrEmitStmt__cgen_17188(p, t, NIM_TRUE);
43077 	{
43078 		tyArray__JiWwrsTRC6xqNlGcBthSVA T5_;
43079 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
43080 		if (!((*p).prc == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA3_;
43081 		nimZeroMem((void*)T5_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
43082 		T5_[0] = s;
43083 		T6_ = NIM_NIL;
43084 		T6_ = runtimeFormat__ropes_271(CC__extccomp_508[((*(*(*(*p).module).g).config).cCompiler)- 1].Field17, T5_, 1);
43085 		add__ropes_159(&(*(*p).module).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 8))- 0], T6_);
43086 	}
43087 	goto LA1_;
43088 	LA3_: ;
43089 	{
43090 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T8_;
43091 		tyArray__JiWwrsTRC6xqNlGcBthSVA T9_;
43092 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
43093 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
43094 		T8_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43095 		T8_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43096 		nimZeroMem((void*)T9_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
43097 		T9_[0] = s;
43098 		T10_ = NIM_NIL;
43099 		T10_ = runtimeFormat__ropes_271(CC__extccomp_508[((*(*(*(*p).module).g).config).cCompiler)- 1].Field17, T9_, 1);
43100 		T11_ = NIM_NIL;
43101 		T11_ = indentLine__cgen_280(p, T10_);
43102 		add__ropes_159(T8_, T11_);
43103 	}
43104 	LA1_: ;
43105 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_16489)43106 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_16489)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
43107 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
43108 	result = NIM_NIL;
43109 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1053), args, argsLen_0);
43110 	return result;
43111 }
N_NIMCALL(NIM_BOOL,bodyCanRaise__cgen_16345)43112 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, bodyCanRaise__cgen_16345)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
43113 	NIM_BOOL result;
43114 {	result = (NIM_BOOL)0;
43115 	switch ((*n).kind) {
43116 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
43117 	{
43118 		result = canRaiseDisp__cgen_11523(p, (*n)._kind_6.sons->data[((NI) 0)]);
43119 		{
43120 			if (!!(result)) goto LA4_;
43121 			{
43122 				NI i;
43123 				NI colontmp_;
43124 				NI i_2;
43125 				i = (NI)0;
43126 				colontmp_ = (NI)0;
43127 				colontmp_ = len__ast_3198(n);
43128 				i_2 = ((NI) 1);
43129 				{
43130 					while (1) {
43131 						if (!(i_2 < colontmp_)) goto LA8;
43132 						i = i_2;
43133 						{
43134 							NIM_BOOL T11_;
43135 							T11_ = (NIM_BOOL)0;
43136 							T11_ = bodyCanRaise__cgen_16345(p, (*n)._kind_6.sons->data[i]);
43137 							if (!T11_) goto LA12_;
43138 							result = NIM_TRUE;
43139 							goto BeforeRet_;
43140 						}
43141 						LA12_: ;
43142 						i_2 += ((NI) 1);
43143 					} LA8: ;
43144 				}
43145 			}
43146 		}
43147 		LA4_: ;
43148 	}
43149 	break;
43150 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 108):
43151 	{
43152 		result = NIM_TRUE;
43153 	}
43154 	break;
43155 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
43156 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79):
43157 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
43158 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 80):
43159 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
43160 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 82):
43161 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83):
43162 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51):
43163 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
43164 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
43165 	{
43166 		result = NIM_FALSE;
43167 	}
43168 	break;
43169 	default:
43170 	{
43171 		{
43172 			NI i_3;
43173 			NI colontmp__2;
43174 			NI i_4;
43175 			i_3 = (NI)0;
43176 			colontmp__2 = (NI)0;
43177 			colontmp__2 = safeLen__ast_3191(n);
43178 			i_4 = ((NI) 0);
43179 			{
43180 				while (1) {
43181 					if (!(i_4 < colontmp__2)) goto LA19;
43182 					i_3 = i_4;
43183 					{
43184 						NIM_BOOL T22_;
43185 						T22_ = (NIM_BOOL)0;
43186 						T22_ = bodyCanRaise__cgen_16345(p, (*n)._kind_6.sons->data[i_3]);
43187 						if (!T22_) goto LA23_;
43188 						result = NIM_TRUE;
43189 						goto BeforeRet_;
43190 					}
43191 					LA23_: ;
43192 					i_4 += ((NI) 1);
43193 				} LA19: ;
43194 			}
43195 		}
43196 		result = NIM_FALSE;
43197 	}
43198 	break;
43199 	}
43200 	}BeforeRet_: ;
43201 	return result;
43202 }
N_NIMCALL(void,genTryGoto__cgen_16365)43203 N_LIB_PRIVATE N_NIMCALL(void, genTryGoto__cgen_16365)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
43204 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fin;
43205 	NI lab;
43206 	NIM_BOOL hasExcept;
43207 	tyTuple__FxkU4d1VDodDMc9ah6Mbagw T12_;
43208 	NI T13_;
43209 	NI T21_;
43210 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T44_;
43211 	NimStringDesc* res_3;
43212 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
43213 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
43214 	tyTuple__FxkU4d1VDodDMc9ah6Mbagw* T51_;
43215 	NI i;
43216 	tyTuple__FxkU4d1VDodDMc9ah6Mbagw T154_;
43217 	{
43218 		NI T3_;
43219 		NI T6_;
43220 		T3_ = (NI)0;
43221 		T3_ = len__ast_3198(t);
43222 		if (!((*(*t)._kind_6.sons->data[(NI)(T3_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107))) goto LA4_;
43223 		T6_ = (NI)0;
43224 		T6_ = len__ast_3198(t);
43225 		fin = (*t)._kind_6.sons->data[(NI)(T6_ - ((NI) 1))];
43226 	}
43227 	goto LA1_;
43228 	LA4_: ;
43229 	{
43230 		fin = ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL);
43231 	}
43232 	LA1_: ;
43233 	(*p).labels += ((NI) 1);
43234 	lab = (*p).labels;
43235 	hasExcept = ((*(*t)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87));
43236 	{
43237 		if (!hasExcept) goto LA10_;
43238 		(*p).withinTryWithExcept += ((NI) 1);
43239 	}
43240 	LA10_: ;
43241 	nimZeroMem((void*)(&T12_), sizeof(tyTuple__FxkU4d1VDodDMc9ah6Mbagw));
43242 	T12_.Field0 = fin;
43243 	T12_.Field1 = NIM_FALSE;
43244 	T12_.Field2 = lab;
43245 	asgnRef((void**) (&(*p).nestedTryStmts), (tySequence__KjgUMUjT3LUKOFIK4xt5ug*) incrSeqV3((TGenericSeq*)((*p).nestedTryStmts), (&NTIseqLtupleLfin58pnode_inexcept58bool_label58naturalTT__KjgUMUjT3LUKOFIK4xt5ug_)));
43246 	T13_ = (*p).nestedTryStmts->Sup.len++;
43247 	asgnRef((void**) (&(*p).nestedTryStmts->data[T13_].Field0), T12_.Field0);
43248 	(*p).nestedTryStmts->data[T13_].Field1 = T12_.Field1;
43249 	(*p).nestedTryStmts->data[T13_].Field2 = T12_.Field2;
43250 	(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 4)) & 7);
43251 	{
43252 		NIM_BOOL T16_;
43253 		NIM_BOOL T17_;
43254 		T16_ = (NIM_BOOL)0;
43255 		T17_ = (NIM_BOOL)0;
43256 		T17_ = isEmptyType__ast_4779((*t).typ);
43257 		T16_ = !(T17_);
43258 		if (!(T16_)) goto LA18_;
43259 		T16_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0));
43260 		LA18_: ;
43261 		if (!T16_) goto LA19_;
43262 		getTemp__cgen_7343(p, (*t).typ, d, NIM_FALSE);
43263 	}
43264 	LA19_: ;
43265 	expr__cgen_11460(p, (*t)._kind_6.sons->data[((NI) 0)], d);
43266 	T21_ = (NI)0;
43267 	{
43268 		NIM_BOOL T24_;
43269 		NI T25_;
43270 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T29_;
43271 		NimStringDesc* res;
43272 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
43273 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
43274 		T24_ = (NIM_BOOL)0;
43275 		T25_ = (NI)0;
43276 		T25_ = len__ast_3198(t);
43277 		T24_ = (((NI) 1) < T25_);
43278 		if (!(T24_)) goto LA26_;
43279 		T24_ = ((*(*t)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87));
43280 		LA26_: ;
43281 		if (!T24_) goto LA27_;
43282 		T29_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43283 		T29_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43284 		res = rawNewString(((NI) 80));
43285 		res = resizeString(res, 29);
43286 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1051));
43287 		{
43288 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA32_;
43289 			res = resizeString(res, 1);
43290 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43291 		}
43292 		LA32_: ;
43293 		T34_ = NIM_NIL;
43294 		T34_ = rope__ropes_109(res);
43295 		T35_ = NIM_NIL;
43296 		T35_ = indentLine__cgen_280(p, T34_);
43297 		add__ropes_159(T29_, T35_);
43298 		T21_ = startBlockInternal__cgen_13189(p);
43299 	}
43300 	goto LA22_;
43301 	LA27_: ;
43302 	{
43303 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T37_;
43304 		NimStringDesc* res_2;
43305 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
43306 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
43307 		T37_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43308 		T37_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43309 		res_2 = rawNewString(((NI) 80));
43310 		res_2 = resizeString(res_2, 1);
43311 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
43312 		{
43313 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA40_;
43314 			res_2 = resizeString(res_2, 1);
43315 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43316 		}
43317 		LA40_: ;
43318 		T42_ = NIM_NIL;
43319 		T42_ = rope__ropes_109(res_2);
43320 		T43_ = NIM_NIL;
43321 		T43_ = indentLine__cgen_280(p, T42_);
43322 		add__ropes_159(T37_, T43_);
43323 		T21_ = startBlockInternal__cgen_13189(p);
43324 	}
43325 	LA22_: ;
43326 	T44_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43327 	T44_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43328 	res_3 = rawNewString(((NI) 80));
43329 	res_3 = resizeString(res_3, 2);
43330 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_631));
43331 	cgFormatValue__cgen_148((&res_3), ((NI64) (lab)));
43332 	res_3 = resizeString(res_3, 3);
43333 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1052));
43334 	{
43335 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA47_;
43336 		res_3 = resizeString(res_3, 1);
43337 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43338 	}
43339 	LA47_: ;
43340 	T49_ = NIM_NIL;
43341 	T49_ = rope__ropes_109(res_3);
43342 	T50_ = NIM_NIL;
43343 	T50_ = indentLine__cgen_280(p, T49_);
43344 	add__ropes_159(T44_, T50_);
43345 	T51_ = (tyTuple__FxkU4d1VDodDMc9ah6Mbagw*)0;
43346 	T51_ = X5BX5D___cgen_14745((*p).nestedTryStmts->data, ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0), ((NI) 1));
43347 	(*T51_).Field1 = NIM_TRUE;
43348 	i = ((NI) 1);
43349 	{
43350 		while (1) {
43351 			NIM_BOOL T54_;
43352 			NI T55_;
43353 			NI nextExcept;
43354 			tyTuple__FxkU4d1VDodDMc9ah6Mbagw* T57_;
43355 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T139_;
43356 			NimStringDesc* res_9;
43357 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T140_;
43358 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T145_;
43359 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T146_;
43360 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T147_;
43361 			NimStringDesc* res_10;
43362 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T152_;
43363 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T153_;
43364 			T54_ = (NIM_BOOL)0;
43365 			T55_ = (NI)0;
43366 			T55_ = len__ast_3198(t);
43367 			T54_ = (i < T55_);
43368 			if (!(T54_)) goto LA56_;
43369 			T54_ = ((*(*t)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87));
43370 			LA56_: ;
43371 			if (!T54_) goto LA53;
43372 			(*p).labels += ((NI) 1);
43373 			nextExcept = (*p).labels;
43374 			T57_ = (tyTuple__FxkU4d1VDodDMc9ah6Mbagw*)0;
43375 			T57_ = X5BX5D___cgen_14745((*p).nestedTryStmts->data, ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0), ((NI) 1));
43376 			(*T57_).Field2 = nextExcept;
43377 			{
43378 				NIM_BOOL T60_;
43379 				T60_ = (NIM_BOOL)0;
43380 				T60_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1));
43381 				if (!(T60_)) goto LA61_;
43382 				T60_ = isEmptyType__ast_4779((*t).typ);
43383 				LA61_: ;
43384 				if (!T60_) goto LA62_;
43385 				(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0);
43386 			}
43387 			LA62_: ;
43388 			{
43389 				NI T66_;
43390 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T77_;
43391 				NimStringDesc* res_4;
43392 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T82_;
43393 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T83_;
43394 				NI T84_;
43395 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T85_;
43396 				NimStringDesc* res_5;
43397 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T90_;
43398 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T91_;
43399 				T66_ = (NI)0;
43400 				T66_ = len__ast_3198((*t)._kind_6.sons->data[i]);
43401 				if (!(T66_ == ((NI) 1))) goto LA67_;
43402 				{
43403 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T73_;
43404 					tyArray__qTjAvTvKF9anytN1At69aJMQ T74_;
43405 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T75_;
43406 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T76_;
43407 					if (!(((NI) 1) < i)) goto LA71_;
43408 					T73_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43409 					T73_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43410 					nimZeroMem((void*)T74_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
43411 					T75_ = NIM_NIL;
43412 					T75_ = percent___cgen_16489(T74_, 0);
43413 					T76_ = NIM_NIL;
43414 					T76_ = indentLine__cgen_280(p, T75_);
43415 					add__ropes_159(T73_, T76_);
43416 				}
43417 				LA71_: ;
43418 				T77_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43419 				T77_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43420 				res_4 = rawNewString(((NI) 80));
43421 				res_4 = resizeString(res_4, 1);
43422 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
43423 				{
43424 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA80_;
43425 					res_4 = resizeString(res_4, 1);
43426 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43427 				}
43428 				LA80_: ;
43429 				T82_ = NIM_NIL;
43430 				T82_ = rope__ropes_109(res_4);
43431 				T83_ = NIM_NIL;
43432 				T83_ = indentLine__cgen_280(p, T82_);
43433 				add__ropes_159(T77_, T83_);
43434 				T84_ = (NI)0;
43435 				T84_ = startBlockInternal__cgen_13189(p);
43436 				T85_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43437 				T85_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43438 				res_5 = rawNewString(((NI) 80));
43439 				res_5 = resizeString(res_5, 21);
43440 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1054));
43441 				{
43442 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA88_;
43443 					res_5 = resizeString(res_5, 1);
43444 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43445 				}
43446 				LA88_: ;
43447 				T90_ = NIM_NIL;
43448 				T90_ = rope__ropes_109(res_5);
43449 				T91_ = NIM_NIL;
43450 				T91_ = indentLine__cgen_280(p, T90_);
43451 				add__ropes_159(T85_, T91_);
43452 				expr__cgen_11460(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)], d);
43453 			}
43454 			goto LA64_;
43455 			LA67_: ;
43456 			{
43457 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* orExpr;
43458 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T123_;
43459 				NimStringDesc* res_7;
43460 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T128_;
43461 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T129_;
43462 				NI T130_;
43463 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T131_;
43464 				NimStringDesc* res_8;
43465 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T136_;
43466 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T137_;
43467 				NI T138_;
43468 				orExpr = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
43469 				{
43470 					NI j;
43471 					NI colontmp_;
43472 					NI T94_;
43473 					NI i_2;
43474 					j = (NI)0;
43475 					colontmp_ = (NI)0;
43476 					T94_ = (NI)0;
43477 					T94_ = len__ast_3198((*t)._kind_6.sons->data[i]);
43478 					colontmp_ = (NI)(T94_ - ((NI) 1));
43479 					i_2 = ((NI) 0);
43480 					{
43481 						while (1) {
43482 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* checkFor;
43483 							NimStringDesc* memberName;
43484 							NimStringDesc* res_6;
43485 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T113_;
43486 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T114_;
43487 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T115_;
43488 							if (!(i_2 < colontmp_)) goto LA96;
43489 							j = i_2;
43490 							{
43491 								if (!!((orExpr == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA99_;
43492 								add__ropes_162(&orExpr, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_421));
43493 							}
43494 							LA99_: ;
43495 							{
43496 								if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA103_;
43497 								checkFor = genTypeInfo2Name__cgen_7805((*p).module, (*(*(*t)._kind_6.sons->data[i])._kind_6.sons->data[j]).typ);
43498 							}
43499 							goto LA101_;
43500 							LA103_: ;
43501 							{
43502 								checkFor = genTypeInfoV1__cgen_6768((*p).module, (*(*(*t)._kind_6.sons->data[i])._kind_6.sons->data[j]).typ, (*(*(*t)._kind_6.sons->data[i])._kind_6.sons->data[j]).info);
43503 							}
43504 							LA101_: ;
43505 							{
43506 								NIM_BOOL T108_;
43507 								T108_ = (NIM_BOOL)0;
43508 								T108_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
43509 								if (T108_) goto LA109_;
43510 								T108_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
43511 								LA109_: ;
43512 								if (!T108_) goto LA110_;
43513 								memberName = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1055));
43514 							}
43515 							goto LA106_;
43516 							LA110_: ;
43517 							{
43518 								memberName = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1056));
43519 							}
43520 							LA106_: ;
43521 							res_6 = rawNewString(((NI) 80));
43522 							T113_ = NIM_NIL;
43523 							T113_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_757));
43524 							cgFormatValue__cgen_141((&res_6), T113_);
43525 							res_6 = resizeString(res_6, 1);
43526 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
43527 							T114_ = NIM_NIL;
43528 							T114_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1057));
43529 							cgFormatValue__cgen_141((&res_6), T114_);
43530 							res_6 = resizeString(res_6, 4);
43531 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1058));
43532 							cgFormatValue__cgen_145((&res_6), memberName);
43533 							res_6 = resizeString(res_6, 2);
43534 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
43535 							cgFormatValue__cgen_141((&res_6), checkFor);
43536 							res_6 = resizeString(res_6, 1);
43537 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
43538 							T115_ = NIM_NIL;
43539 							T115_ = rope__ropes_109(res_6);
43540 							add__ropes_159(&orExpr, T115_);
43541 							i_2 += ((NI) 1);
43542 						} LA96: ;
43543 					}
43544 				}
43545 				{
43546 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T120_;
43547 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T121_;
43548 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T122_;
43549 					if (!(((NI) 1) < i)) goto LA118_;
43550 					T120_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43551 					T120_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43552 					T121_ = NIM_NIL;
43553 					T121_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1059));
43554 					T122_ = NIM_NIL;
43555 					T122_ = indentLine__cgen_280(p, T121_);
43556 					add__ropes_159(T120_, T122_);
43557 				}
43558 				LA118_: ;
43559 				T123_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43560 				T123_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43561 				res_7 = rawNewString(((NI) 80));
43562 				res_7 = resizeString(res_7, 4);
43563 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
43564 				cgFormatValue__cgen_141((&res_7), orExpr);
43565 				res_7 = resizeString(res_7, 3);
43566 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1024));
43567 				{
43568 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA126_;
43569 					res_7 = resizeString(res_7, 1);
43570 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43571 				}
43572 				LA126_: ;
43573 				T128_ = NIM_NIL;
43574 				T128_ = rope__ropes_109(res_7);
43575 				T129_ = NIM_NIL;
43576 				T129_ = indentLine__cgen_280(p, T128_);
43577 				add__ropes_159(T123_, T129_);
43578 				T130_ = (NI)0;
43579 				T130_ = startBlockInternal__cgen_13189(p);
43580 				T131_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43581 				T131_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43582 				res_8 = rawNewString(((NI) 80));
43583 				res_8 = resizeString(res_8, 21);
43584 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1054));
43585 				{
43586 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA134_;
43587 					res_8 = resizeString(res_8, 1);
43588 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43589 				}
43590 				LA134_: ;
43591 				T136_ = NIM_NIL;
43592 				T136_ = rope__ropes_109(res_8);
43593 				T137_ = NIM_NIL;
43594 				T137_ = indentLine__cgen_280(p, T136_);
43595 				add__ropes_159(T131_, T137_);
43596 				T138_ = (NI)0;
43597 				T138_ = len__ast_3198((*t)._kind_6.sons->data[i]);
43598 				expr__cgen_11460(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[(NI)(T138_ - ((NI) 1))], d);
43599 			}
43600 			LA64_: ;
43601 			T139_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43602 			T139_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43603 			res_9 = rawNewString(((NI) 80));
43604 			T140_ = NIM_NIL;
43605 			T140_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1037));
43606 			cgFormatValue__cgen_141((&res_9), T140_);
43607 			res_9 = resizeString(res_9, 3);
43608 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
43609 			{
43610 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA143_;
43611 				res_9 = resizeString(res_9, 1);
43612 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43613 			}
43614 			LA143_: ;
43615 			T145_ = NIM_NIL;
43616 			T145_ = rope__ropes_109(res_9);
43617 			T146_ = NIM_NIL;
43618 			T146_ = indentLine__cgen_280(p, T145_);
43619 			add__ropes_159(T139_, T146_);
43620 			T147_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43621 			T147_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43622 			res_10 = rawNewString(((NI) 80));
43623 			res_10 = resizeString(res_10, 2);
43624 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_631));
43625 			cgFormatValue__cgen_148((&res_10), ((NI64) (nextExcept)));
43626 			res_10 = resizeString(res_10, 3);
43627 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1052));
43628 			{
43629 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA150_;
43630 				res_10 = resizeString(res_10, 1);
43631 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43632 			}
43633 			LA150_: ;
43634 			T152_ = NIM_NIL;
43635 			T152_ = rope__ropes_109(res_10);
43636 			T153_ = NIM_NIL;
43637 			T153_ = indentLine__cgen_280(p, T152_);
43638 			add__ropes_159(T147_, T153_);
43639 			endBlock__cgen_13210(p);
43640 			i += ((NI) 1);
43641 		} LA53: ;
43642 	}
43643 	nimZeroMem((void*)(&T154_), sizeof(tyTuple__FxkU4d1VDodDMc9ah6Mbagw));
43644 	pop__cgen_13602((&(*p).nestedTryStmts), (&T154_));
43645 	(void)(T154_);
43646 	endBlock__cgen_13210(p);
43647 	{
43648 		NIM_BOOL T157_;
43649 		NI T158_;
43650 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T162_;
43651 		NimStringDesc* res_11;
43652 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T167_;
43653 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T168_;
43654 		NI T169_;
43655 		T157_ = (NIM_BOOL)0;
43656 		T158_ = (NI)0;
43657 		T158_ = len__ast_3198(t);
43658 		T157_ = (i < T158_);
43659 		if (!(T157_)) goto LA159_;
43660 		T157_ = ((*(*t)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107));
43661 		LA159_: ;
43662 		if (!T157_) goto LA160_;
43663 		T162_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43664 		T162_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43665 		res_11 = rawNewString(((NI) 80));
43666 		res_11 = resizeString(res_11, 1);
43667 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
43668 		{
43669 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA165_;
43670 			res_11 = resizeString(res_11, 1);
43671 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43672 		}
43673 		LA165_: ;
43674 		T167_ = NIM_NIL;
43675 		T167_ = rope__ropes_109(res_11);
43676 		T168_ = NIM_NIL;
43677 		T168_ = indentLine__cgen_280(p, T167_);
43678 		add__ropes_159(T162_, T168_);
43679 		T169_ = (NI)0;
43680 		T169_ = startBlockInternal__cgen_13189(p);
43681 		{
43682 			NIM_BOOL T172_;
43683 			T172_ = (NIM_BOOL)0;
43684 			T172_ = bodyCanRaise__cgen_16345(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)]);
43685 			if (!!(T172_)) goto LA173_;
43686 			genStmts__cgen_11457(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)]);
43687 		}
43688 		goto LA170_;
43689 		LA173_: ;
43690 		{
43691 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T176_;
43692 			NimStringDesc* res_12;
43693 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T181_;
43694 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T182_;
43695 			NimStringDesc* res_13;
43696 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T187_;
43697 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T188_;
43698 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T189_;
43699 			NimStringDesc* res_14;
43700 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T194_;
43701 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T195_;
43702 			T176_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43703 			T176_ = procSec__cgendata_274(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
43704 			res_12 = rawNewString(((NI) 80));
43705 			res_12 = resizeString(res_12, 21);
43706 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1060));
43707 			cgFormatValue__cgen_148((&res_12), ((NI64) (lab)));
43708 			res_12 = resizeString(res_12, 2);
43709 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_571));
43710 			{
43711 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA179_;
43712 				res_12 = resizeString(res_12, 1);
43713 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43714 			}
43715 			LA179_: ;
43716 			T181_ = NIM_NIL;
43717 			T181_ = rope__ropes_109(res_12);
43718 			add__ropes_159(T176_, T181_);
43719 			T182_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43720 			T182_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43721 			res_13 = rawNewString(((NI) 80));
43722 			res_13 = resizeString(res_13, 12);
43723 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1061));
43724 			cgFormatValue__cgen_148((&res_13), ((NI64) (lab)));
43725 			res_13 = resizeString(res_13, 35);
43726 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1062));
43727 			{
43728 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA185_;
43729 				res_13 = resizeString(res_13, 1);
43730 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43731 			}
43732 			LA185_: ;
43733 			T187_ = NIM_NIL;
43734 			T187_ = rope__ropes_109(res_13);
43735 			T188_ = NIM_NIL;
43736 			T188_ = indentLine__cgen_280(p, T187_);
43737 			add__ropes_159(T182_, T188_);
43738 			genStmts__cgen_11457(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)]);
43739 			T189_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43740 			T189_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43741 			res_14 = rawNewString(((NI) 80));
43742 			res_14 = resizeString(res_14, 23);
43743 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1063));
43744 			cgFormatValue__cgen_148((&res_14), ((NI64) (lab)));
43745 			res_14 = resizeString(res_14, 2);
43746 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_571));
43747 			{
43748 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA192_;
43749 				res_14 = resizeString(res_14, 1);
43750 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43751 			}
43752 			LA192_: ;
43753 			T194_ = NIM_NIL;
43754 			T194_ = rope__ropes_109(res_14);
43755 			T195_ = NIM_NIL;
43756 			T195_ = indentLine__cgen_280(p, T194_);
43757 			add__ropes_159(T189_, T195_);
43758 		}
43759 		LA170_: ;
43760 		endBlock__cgen_13210(p);
43761 	}
43762 	LA160_: ;
43763 	raiseExit__cgen_11481(p);
43764 	{
43765 		if (!hasExcept) goto LA198_;
43766 		(*p).withinTryWithExcept += ((NI) 1);
43767 	}
43768 	LA198_: ;
43769 }
N_NIMCALL(void,genRestoreFrameAfterException__cgen_15595)43770 N_LIB_PRIVATE N_NIMCALL(void, genRestoreFrameAfterException__cgen_15595)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
43771 	{
43772 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T22_;
43773 		NimStringDesc* res_3;
43774 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
43775 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
43776 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
43777 		if (!(((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 17))&31U)))!=0)) goto LA3_;
43778 		{
43779 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T9_;
43780 			NimStringDesc* res;
43781 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
43782 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T15_;
43783 			NimStringDesc* res_2;
43784 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
43785 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
43786 			if (!!((((*p).flags &((NU8)1<<((NU)(((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 2))&7U)))!=0))) goto LA7_;
43787 			(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 2)) & 7);
43788 			T9_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43789 			T9_ = procSec__cgendata_274(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
43790 			res = rawNewString(((NI) 80));
43791 			res = resizeString(res, 22);
43792 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1072));
43793 			{
43794 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA12_;
43795 				res = resizeString(res, 1);
43796 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43797 			}
43798 			LA12_: ;
43799 			T14_ = NIM_NIL;
43800 			T14_ = rope__ropes_109(res);
43801 			add__ropes_159(T9_, T14_);
43802 			T15_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43803 			T15_ = procSec__cgendata_274(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
43804 			res_2 = rawNewString(((NI) 80));
43805 			res_2 = resizeString(res_2, 16);
43806 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1073));
43807 			T16_ = NIM_NIL;
43808 			T16_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1074));
43809 			cgFormatValue__cgen_141((&res_2), T16_);
43810 			res_2 = resizeString(res_2, 3);
43811 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
43812 			{
43813 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA19_;
43814 				res_2 = resizeString(res_2, 1);
43815 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43816 			}
43817 			LA19_: ;
43818 			T21_ = NIM_NIL;
43819 			T21_ = rope__ropes_109(res_2);
43820 			add__ropes_159(T15_, T21_);
43821 		}
43822 		LA7_: ;
43823 		T22_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43824 		T22_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43825 		res_3 = rawNewString(((NI) 80));
43826 		T23_ = NIM_NIL;
43827 		T23_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1075));
43828 		cgFormatValue__cgen_141((&res_3), T23_);
43829 		res_3 = resizeString(res_3, 15);
43830 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1076));
43831 		{
43832 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA26_;
43833 			res_3 = resizeString(res_3, 1);
43834 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43835 		}
43836 		LA26_: ;
43837 		T28_ = NIM_NIL;
43838 		T28_ = rope__ropes_109(res_3);
43839 		T29_ = NIM_NIL;
43840 		T29_ = indentLine__cgen_280(p, T28_);
43841 		add__ropes_159(T22_, T29_);
43842 	}
43843 	LA3_: ;
43844 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_15784)43845 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_15784)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
43846 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
43847 	result = NIM_NIL;
43848 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1059), args, argsLen_0);
43849 	return result;
43850 }
N_NIMCALL(void,genTryCpp__cgen_15648)43851 N_LIB_PRIVATE N_NIMCALL(void, genTryCpp__cgen_15648)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
43852 	NI etmp;
43853 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T8_;
43854 	NimStringDesc* res;
43855 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
43856 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fin;
43857 	tyTuple__FxkU4d1VDodDMc9ah6Mbagw T17_;
43858 	NI T18_;
43859 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T46_;
43860 	NimStringDesc* res_5;
43861 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T47_;
43862 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
43863 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T53_;
43864 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T54_;
43865 	NimStringDesc* res_6;
43866 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
43867 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
43868 	tyTuple__FxkU4d1VDodDMc9ah6Mbagw* T61_;
43869 	NIM_BOOL hasImportedCppExceptions;
43870 	NI i;
43871 	NIM_BOOL hasIf;
43872 	NIM_BOOL hasElse;
43873 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T213_;
43874 	NimStringDesc* res_17;
43875 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T218_;
43876 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T219_;
43877 	NIM_BOOL catchAllPresent;
43878 	tyTuple__FxkU4d1VDodDMc9ah6Mbagw T287_;
43879 	includeHeader__cgendata_214((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1064));
43880 	{
43881 		NIM_BOOL T3_;
43882 		NIM_BOOL T4_;
43883 		T3_ = (NIM_BOOL)0;
43884 		T4_ = (NIM_BOOL)0;
43885 		T4_ = isEmptyType__ast_4779((*t).typ);
43886 		T3_ = !(T4_);
43887 		if (!(T3_)) goto LA5_;
43888 		T3_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0));
43889 		LA5_: ;
43890 		if (!T3_) goto LA6_;
43891 		getTemp__cgen_7343(p, (*t).typ, d, NIM_FALSE);
43892 	}
43893 	LA6_: ;
43894 	genLineDir__cgen_359(p, t);
43895 	(*p).labels += ((NI) 2);
43896 	etmp = (*p).labels;
43897 	T8_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43898 	T8_ = procSec__cgendata_274(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
43899 	res = rawNewString(((NI) 80));
43900 	res = resizeString(res, 21);
43901 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1065));
43902 	cgFormatValue__cgen_148((&res), ((NI64) (etmp)));
43903 	res = resizeString(res, 12);
43904 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1066));
43905 	T9_ = NIM_NIL;
43906 	T9_ = rope__ropes_109(res);
43907 	add__ropes_159(T8_, T9_);
43908 	{
43909 		NI T12_;
43910 		NI T15_;
43911 		T12_ = (NI)0;
43912 		T12_ = len__ast_3198(t);
43913 		if (!((*(*t)._kind_6.sons->data[(NI)(T12_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107))) goto LA13_;
43914 		T15_ = (NI)0;
43915 		T15_ = len__ast_3198(t);
43916 		fin = (*t)._kind_6.sons->data[(NI)(T15_ - ((NI) 1))];
43917 	}
43918 	goto LA10_;
43919 	LA13_: ;
43920 	{
43921 		fin = ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL);
43922 	}
43923 	LA10_: ;
43924 	nimZeroMem((void*)(&T17_), sizeof(tyTuple__FxkU4d1VDodDMc9ah6Mbagw));
43925 	T17_.Field0 = fin;
43926 	T17_.Field1 = NIM_FALSE;
43927 	T17_.Field2 = ((NI) 0);
43928 	asgnRef((void**) (&(*p).nestedTryStmts), (tySequence__KjgUMUjT3LUKOFIK4xt5ug*) incrSeqV3((TGenericSeq*)((*p).nestedTryStmts), (&NTIseqLtupleLfin58pnode_inexcept58bool_label58naturalTT__KjgUMUjT3LUKOFIK4xt5ug_)));
43929 	T18_ = (*p).nestedTryStmts->Sup.len++;
43930 	asgnRef((void**) (&(*p).nestedTryStmts->data[T18_].Field0), T17_.Field0);
43931 	(*p).nestedTryStmts->data[T18_].Field1 = T17_.Field1;
43932 	(*p).nestedTryStmts->data[T18_].Field2 = T17_.Field2;
43933 	{
43934 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T23_;
43935 		NimStringDesc* res_2;
43936 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
43937 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
43938 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T30_;
43939 		NimStringDesc* res_3;
43940 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
43941 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
43942 		if (!((*t).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 154))) goto LA21_;
43943 		T23_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43944 		T23_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43945 		res_2 = rawNewString(((NI) 80));
43946 		res_2 = resizeString(res_2, 5);
43947 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1067));
43948 		{
43949 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA26_;
43950 			res_2 = resizeString(res_2, 1);
43951 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43952 		}
43953 		LA26_: ;
43954 		T28_ = NIM_NIL;
43955 		T28_ = rope__ropes_109(res_2);
43956 		T29_ = NIM_NIL;
43957 		T29_ = indentLine__cgen_280(p, T28_);
43958 		add__ropes_159(T23_, T29_);
43959 		expr__cgen_11460(p, (*t)._kind_6.sons->data[((NI) 0)], d);
43960 		T30_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43961 		T30_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43962 		res_3 = rawNewString(((NI) 80));
43963 		res_3 = resizeString(res_3, 1);
43964 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
43965 		{
43966 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA33_;
43967 			res_3 = resizeString(res_3, 1);
43968 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43969 		}
43970 		LA33_: ;
43971 		T35_ = NIM_NIL;
43972 		T35_ = rope__ropes_109(res_3);
43973 		T36_ = NIM_NIL;
43974 		T36_ = indentLine__cgen_280(p, T35_);
43975 		add__ropes_159(T30_, T36_);
43976 	}
43977 	goto LA19_;
43978 	LA21_: ;
43979 	{
43980 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T38_;
43981 		NimStringDesc* res_4;
43982 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T43_;
43983 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
43984 		NI T45_;
43985 		T38_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
43986 		T38_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
43987 		res_4 = rawNewString(((NI) 80));
43988 		res_4 = resizeString(res_4, 5);
43989 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1067));
43990 		{
43991 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA41_;
43992 			res_4 = resizeString(res_4, 1);
43993 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
43994 		}
43995 		LA41_: ;
43996 		T43_ = NIM_NIL;
43997 		T43_ = rope__ropes_109(res_4);
43998 		T44_ = NIM_NIL;
43999 		T44_ = indentLine__cgen_280(p, T43_);
44000 		add__ropes_159(T38_, T44_);
44001 		T45_ = (NI)0;
44002 		T45_ = startBlockInternal__cgen_13189(p);
44003 		expr__cgen_11460(p, (*t)._kind_6.sons->data[((NI) 0)], d);
44004 		endBlock__cgen_13210(p);
44005 	}
44006 	LA19_: ;
44007 	T46_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44008 	T46_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44009 	res_5 = rawNewString(((NI) 80));
44010 	res_5 = resizeString(res_5, 7);
44011 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1068));
44012 	T47_ = NIM_NIL;
44013 	T47_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1069));
44014 	cgFormatValue__cgen_141((&res_5), T47_);
44015 	res_5 = resizeString(res_5, 3);
44016 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1070));
44017 	cgFormatValue__cgen_148((&res_5), ((NI64) ((NI)(((NI) (etmp)) + ((NI) 1)))));
44018 	res_5 = resizeString(res_5, 4);
44019 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1071));
44020 	{
44021 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA50_;
44022 		res_5 = resizeString(res_5, 1);
44023 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44024 	}
44025 	LA50_: ;
44026 	T52_ = NIM_NIL;
44027 	T52_ = rope__ropes_109(res_5);
44028 	T53_ = NIM_NIL;
44029 	T53_ = indentLine__cgen_280(p, T52_);
44030 	add__ropes_159(T46_, T53_);
44031 	genRestoreFrameAfterException__cgen_15595(p);
44032 	T54_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44033 	T54_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44034 	res_6 = rawNewString(((NI) 80));
44035 	res_6 = resizeString(res_6, 1);
44036 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_169));
44037 	cgFormatValue__cgen_148((&res_6), ((NI64) (etmp)));
44038 	res_6 = resizeString(res_6, 29);
44039 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1077));
44040 	{
44041 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA57_;
44042 		res_6 = resizeString(res_6, 1);
44043 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44044 	}
44045 	LA57_: ;
44046 	T59_ = NIM_NIL;
44047 	T59_ = rope__ropes_109(res_6);
44048 	T60_ = NIM_NIL;
44049 	T60_ = indentLine__cgen_280(p, T59_);
44050 	add__ropes_159(T54_, T60_);
44051 	T61_ = (tyTuple__FxkU4d1VDodDMc9ah6Mbagw*)0;
44052 	T61_ = X5BX5D___cgen_14745((*p).nestedTryStmts->data, ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0), ((NI) 1));
44053 	(*T61_).Field1 = NIM_TRUE;
44054 	hasImportedCppExceptions = NIM_FALSE;
44055 	i = ((NI) 1);
44056 	hasIf = NIM_FALSE;
44057 	hasElse = NIM_FALSE;
44058 	{
44059 		while (1) {
44060 			NIM_BOOL T64_;
44061 			NI T65_;
44062 			T64_ = (NIM_BOOL)0;
44063 			T65_ = (NI)0;
44064 			T65_ = len__ast_3198(t);
44065 			T64_ = (i < T65_);
44066 			if (!(T64_)) goto LA66_;
44067 			T64_ = ((*(*t)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87));
44068 			LA66_: ;
44069 			if (!T64_) goto LA63;
44070 			{
44071 				NIM_BOOL T69_;
44072 				T69_ = (NIM_BOOL)0;
44073 				T69_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1));
44074 				if (!(T69_)) goto LA70_;
44075 				T69_ = isEmptyType__ast_4779((*t).typ);
44076 				LA70_: ;
44077 				if (!T69_) goto LA71_;
44078 				(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0);
44079 			}
44080 			LA71_: ;
44081 			{
44082 				NI T75_;
44083 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T86_;
44084 				NimStringDesc* res_7;
44085 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T91_;
44086 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T92_;
44087 				NI T93_;
44088 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T94_;
44089 				NimStringDesc* res_8;
44090 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T99_;
44091 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T100_;
44092 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T101_;
44093 				NimStringDesc* res_9;
44094 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T102_;
44095 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T107_;
44096 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T108_;
44097 				T75_ = (NI)0;
44098 				T75_ = len__ast_3198((*t)._kind_6.sons->data[i]);
44099 				if (!(T75_ == ((NI) 1))) goto LA76_;
44100 				hasImportedCppExceptions = NIM_TRUE;
44101 				hasElse = NIM_TRUE;
44102 				{
44103 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T82_;
44104 					tyArray__qTjAvTvKF9anytN1At69aJMQ T83_;
44105 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T84_;
44106 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T85_;
44107 					if (!hasIf) goto LA80_;
44108 					T82_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44109 					T82_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44110 					nimZeroMem((void*)T83_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
44111 					T84_ = NIM_NIL;
44112 					T84_ = percent___cgen_15784(T83_, 0);
44113 					T85_ = NIM_NIL;
44114 					T85_ = indentLine__cgen_280(p, T84_);
44115 					add__ropes_159(T82_, T85_);
44116 				}
44117 				LA80_: ;
44118 				T86_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44119 				T86_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44120 				res_7 = rawNewString(((NI) 80));
44121 				res_7 = resizeString(res_7, 1);
44122 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
44123 				{
44124 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA89_;
44125 					res_7 = resizeString(res_7, 1);
44126 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44127 				}
44128 				LA89_: ;
44129 				T91_ = NIM_NIL;
44130 				T91_ = rope__ropes_109(res_7);
44131 				T92_ = NIM_NIL;
44132 				T92_ = indentLine__cgen_280(p, T91_);
44133 				add__ropes_159(T86_, T92_);
44134 				T93_ = (NI)0;
44135 				T93_ = startBlockInternal__cgen_13189(p);
44136 				T94_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44137 				T94_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44138 				res_8 = rawNewString(((NI) 80));
44139 				res_8 = resizeString(res_8, 1);
44140 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_169));
44141 				cgFormatValue__cgen_148((&res_8), ((NI64) (etmp)));
44142 				res_8 = resizeString(res_8, 12);
44143 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1066));
44144 				{
44145 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA97_;
44146 					res_8 = resizeString(res_8, 1);
44147 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44148 				}
44149 				LA97_: ;
44150 				T99_ = NIM_NIL;
44151 				T99_ = rope__ropes_109(res_8);
44152 				T100_ = NIM_NIL;
44153 				T100_ = indentLine__cgen_280(p, T99_);
44154 				add__ropes_159(T94_, T100_);
44155 				expr__cgen_11460(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)], d);
44156 				T101_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44157 				T101_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44158 				res_9 = rawNewString(((NI) 80));
44159 				T102_ = NIM_NIL;
44160 				T102_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1037));
44161 				cgFormatValue__cgen_141((&res_9), T102_);
44162 				res_9 = resizeString(res_9, 3);
44163 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
44164 				{
44165 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA105_;
44166 					res_9 = resizeString(res_9, 1);
44167 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44168 				}
44169 				LA105_: ;
44170 				T107_ = NIM_NIL;
44171 				T107_ = rope__ropes_109(res_9);
44172 				T108_ = NIM_NIL;
44173 				T108_ = indentLine__cgen_280(p, T107_);
44174 				add__ropes_159(T101_, T108_);
44175 				endBlock__cgen_13210(p);
44176 			}
44177 			goto LA73_;
44178 			LA76_: ;
44179 			{
44180 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* orExpr;
44181 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* exvar;
44182 				orExpr = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
44183 				exvar = ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL);
44184 				{
44185 					NI j;
44186 					NI colontmp_;
44187 					NI T111_;
44188 					NI i_2;
44189 					j = (NI)0;
44190 					colontmp_ = (NI)0;
44191 					T111_ = (NI)0;
44192 					T111_ = len__ast_3198((*t)._kind_6.sons->data[i]);
44193 					colontmp_ = (NI)(T111_ - ((NI) 1));
44194 					i_2 = ((NI) 0);
44195 					{
44196 						while (1) {
44197 							tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* typeNode;
44198 							if (!(i_2 < colontmp_)) goto LA113;
44199 							j = i_2;
44200 							typeNode = (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[j];
44201 							{
44202 								NIM_BOOL T116_;
44203 								T116_ = (NIM_BOOL)0;
44204 								T116_ = isInfixAs__ast_4935((*(*t)._kind_6.sons->data[i])._kind_6.sons->data[j]);
44205 								if (!T116_) goto LA117_;
44206 								typeNode = (*(*(*t)._kind_6.sons->data[i])._kind_6.sons->data[j])._kind_6.sons->data[((NI) 1)];
44207 								exvar = (*(*(*t)._kind_6.sons->data[i])._kind_6.sons->data[j])._kind_6.sons->data[((NI) 2)];
44208 							}
44209 							LA117_: ;
44210 							{
44211 								NIM_BOOL T121_;
44212 								T121_ = (NIM_BOOL)0;
44213 								T121_ = isImportedException__ast_4904((*typeNode).typ, (*(*(*p).module).g).config);
44214 								if (!T121_) goto LA122_;
44215 								hasImportedCppExceptions = NIM_TRUE;
44216 							}
44217 							goto LA119_;
44218 							LA122_: ;
44219 							{
44220 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* checkFor;
44221 								NimStringDesc* memberName;
44222 								NimStringDesc* res_10;
44223 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T141_;
44224 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T142_;
44225 								tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T143_;
44226 								{
44227 									if (!!((orExpr == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA127_;
44228 									add__ropes_162(&orExpr, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_421));
44229 								}
44230 								LA127_: ;
44231 								{
44232 									if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA131_;
44233 									checkFor = genTypeInfo2Name__cgen_7805((*p).module, (*typeNode).typ);
44234 								}
44235 								goto LA129_;
44236 								LA131_: ;
44237 								{
44238 									checkFor = genTypeInfoV1__cgen_6768((*p).module, (*typeNode).typ, (*typeNode).info);
44239 								}
44240 								LA129_: ;
44241 								{
44242 									NIM_BOOL T136_;
44243 									T136_ = (NIM_BOOL)0;
44244 									T136_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
44245 									if (T136_) goto LA137_;
44246 									T136_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
44247 									LA137_: ;
44248 									if (!T136_) goto LA138_;
44249 									memberName = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1055));
44250 								}
44251 								goto LA134_;
44252 								LA138_: ;
44253 								{
44254 									memberName = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1056));
44255 								}
44256 								LA134_: ;
44257 								res_10 = rawNewString(((NI) 80));
44258 								T141_ = NIM_NIL;
44259 								T141_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_757));
44260 								cgFormatValue__cgen_141((&res_10), T141_);
44261 								res_10 = resizeString(res_10, 1);
44262 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
44263 								T142_ = NIM_NIL;
44264 								T142_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1057));
44265 								cgFormatValue__cgen_141((&res_10), T142_);
44266 								res_10 = resizeString(res_10, 4);
44267 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1058));
44268 								cgFormatValue__cgen_145((&res_10), memberName);
44269 								res_10 = resizeString(res_10, 2);
44270 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
44271 								cgFormatValue__cgen_141((&res_10), checkFor);
44272 								res_10 = resizeString(res_10, 1);
44273 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
44274 								T143_ = NIM_NIL;
44275 								T143_ = rope__ropes_109(res_10);
44276 								add__ropes_159(&orExpr, T143_);
44277 							}
44278 							LA119_: ;
44279 							i_2 += ((NI) 1);
44280 						} LA113: ;
44281 					}
44282 				}
44283 				{
44284 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T184_;
44285 					NimStringDesc* res_14;
44286 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T189_;
44287 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T190_;
44288 					NI T191_;
44289 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T192_;
44290 					NimStringDesc* res_15;
44291 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T193_;
44292 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T198_;
44293 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T199_;
44294 					if (!!((orExpr == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA146_;
44295 					{
44296 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T152_;
44297 						NimStringDesc* res_11;
44298 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T157_;
44299 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T158_;
44300 						NI T159_;
44301 						if (!hasIf) goto LA150_;
44302 						T152_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44303 						T152_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44304 						res_11 = rawNewString(((NI) 80));
44305 						res_11 = resizeString(res_11, 9);
44306 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1078));
44307 						cgFormatValue__cgen_141((&res_11), orExpr);
44308 						res_11 = resizeString(res_11, 3);
44309 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1024));
44310 						{
44311 							if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA155_;
44312 							res_11 = resizeString(res_11, 1);
44313 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44314 						}
44315 						LA155_: ;
44316 						T157_ = NIM_NIL;
44317 						T157_ = rope__ropes_109(res_11);
44318 						T158_ = NIM_NIL;
44319 						T158_ = indentLine__cgen_280(p, T157_);
44320 						add__ropes_159(T152_, T158_);
44321 						T159_ = (NI)0;
44322 						T159_ = startBlockInternal__cgen_13189(p);
44323 					}
44324 					goto LA148_;
44325 					LA150_: ;
44326 					{
44327 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T161_;
44328 						NimStringDesc* res_12;
44329 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T166_;
44330 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T167_;
44331 						NI T168_;
44332 						T161_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44333 						T161_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44334 						res_12 = rawNewString(((NI) 80));
44335 						res_12 = resizeString(res_12, 4);
44336 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
44337 						cgFormatValue__cgen_141((&res_12), orExpr);
44338 						res_12 = resizeString(res_12, 3);
44339 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1024));
44340 						{
44341 							if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA164_;
44342 							res_12 = resizeString(res_12, 1);
44343 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44344 						}
44345 						LA164_: ;
44346 						T166_ = NIM_NIL;
44347 						T166_ = rope__ropes_109(res_12);
44348 						T167_ = NIM_NIL;
44349 						T167_ = indentLine__cgen_280(p, T166_);
44350 						add__ropes_159(T161_, T167_);
44351 						T168_ = (NI)0;
44352 						T168_ = startBlockInternal__cgen_13189(p);
44353 						hasIf = NIM_TRUE;
44354 					}
44355 					LA148_: ;
44356 					{
44357 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T173_;
44358 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T174_;
44359 						NimStringDesc* res_13;
44360 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T175_;
44361 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T176_;
44362 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T177_;
44363 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T182_;
44364 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T183_;
44365 						if (!!((exvar == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA171_;
44366 						T173_ = NIM_NIL;
44367 						T173_ = mangleLocalName__cgen_726(p, (*exvar)._kind_4.sym);
44368 						fillLoc__cgen_65((&(*(*exvar)._kind_4.sym).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1), exvar, T173_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
44369 						T174_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44370 						T174_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44371 						res_13 = rawNewString(((NI) 80));
44372 						T175_ = NIM_NIL;
44373 						T175_ = getTypeDesc__cgen_6631((*p).module, (*(*exvar)._kind_4.sym).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
44374 						cgFormatValue__cgen_141((&res_13), T175_);
44375 						res_13 = resizeString(res_13, 1);
44376 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
44377 						T176_ = NIM_NIL;
44378 						T176_ = rdLoc__cgen_425((*(*exvar)._kind_4.sym).loc);
44379 						cgFormatValue__cgen_141((&res_13), T176_);
44380 						res_13 = resizeString(res_13, 4);
44381 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1079));
44382 						T177_ = NIM_NIL;
44383 						T177_ = rope__ropes_115(((NI64) ((NI)(((NI) (etmp)) + ((NI) 1)))));
44384 						cgFormatValue__cgen_141((&res_13), T177_);
44385 						res_13 = resizeString(res_13, 2);
44386 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_571));
44387 						{
44388 							if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA180_;
44389 							res_13 = resizeString(res_13, 1);
44390 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44391 						}
44392 						LA180_: ;
44393 						T182_ = NIM_NIL;
44394 						T182_ = rope__ropes_109(res_13);
44395 						T183_ = NIM_NIL;
44396 						T183_ = indentLine__cgen_280(p, T182_);
44397 						add__ropes_159(T174_, T183_);
44398 					}
44399 					LA171_: ;
44400 					T184_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44401 					T184_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44402 					res_14 = rawNewString(((NI) 80));
44403 					res_14 = resizeString(res_14, 1);
44404 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_169));
44405 					cgFormatValue__cgen_148((&res_14), ((NI64) (etmp)));
44406 					res_14 = resizeString(res_14, 12);
44407 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1066));
44408 					{
44409 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA187_;
44410 						res_14 = resizeString(res_14, 1);
44411 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44412 					}
44413 					LA187_: ;
44414 					T189_ = NIM_NIL;
44415 					T189_ = rope__ropes_109(res_14);
44416 					T190_ = NIM_NIL;
44417 					T190_ = indentLine__cgen_280(p, T189_);
44418 					add__ropes_159(T184_, T190_);
44419 					T191_ = (NI)0;
44420 					T191_ = len__ast_3198((*t)._kind_6.sons->data[i]);
44421 					expr__cgen_11460(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[(NI)(T191_ - ((NI) 1))], d);
44422 					T192_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44423 					T192_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44424 					res_15 = rawNewString(((NI) 80));
44425 					T193_ = NIM_NIL;
44426 					T193_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1037));
44427 					cgFormatValue__cgen_141((&res_15), T193_);
44428 					res_15 = resizeString(res_15, 3);
44429 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
44430 					{
44431 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA196_;
44432 						res_15 = resizeString(res_15, 1);
44433 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44434 					}
44435 					LA196_: ;
44436 					T198_ = NIM_NIL;
44437 					T198_ = rope__ropes_109(res_15);
44438 					T199_ = NIM_NIL;
44439 					T199_ = indentLine__cgen_280(p, T198_);
44440 					add__ropes_159(T192_, T199_);
44441 					endBlock__cgen_13210(p);
44442 				}
44443 				LA146_: ;
44444 			}
44445 			LA73_: ;
44446 			i += ((NI) 1);
44447 		} LA63: ;
44448 	}
44449 	{
44450 		NIM_BOOL T202_;
44451 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T206_;
44452 		NimStringDesc* res_16;
44453 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T211_;
44454 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T212_;
44455 		T202_ = (NIM_BOOL)0;
44456 		T202_ = hasIf;
44457 		if (!(T202_)) goto LA203_;
44458 		T202_ = !(hasElse);
44459 		LA203_: ;
44460 		if (!T202_) goto LA204_;
44461 		T206_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44462 		T206_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44463 		res_16 = rawNewString(((NI) 80));
44464 		res_16 = resizeString(res_16, 11);
44465 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1080));
44466 		{
44467 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA209_;
44468 			res_16 = resizeString(res_16, 1);
44469 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44470 		}
44471 		LA209_: ;
44472 		T211_ = NIM_NIL;
44473 		T211_ = rope__ropes_109(res_16);
44474 		T212_ = NIM_NIL;
44475 		T212_ = indentLine__cgen_280(p, T211_);
44476 		add__ropes_159(T206_, T212_);
44477 	}
44478 	LA204_: ;
44479 	T213_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44480 	T213_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44481 	res_17 = rawNewString(((NI) 80));
44482 	res_17 = resizeString(res_17, 1);
44483 appendString(res_17, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
44484 	{
44485 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA216_;
44486 		res_17 = resizeString(res_17, 1);
44487 appendString(res_17, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44488 	}
44489 	LA216_: ;
44490 	T218_ = NIM_NIL;
44491 	T218_ = rope__ropes_109(res_17);
44492 	T219_ = NIM_NIL;
44493 	T219_ = indentLine__cgen_280(p, T218_);
44494 	add__ropes_159(T213_, T219_);
44495 	catchAllPresent = NIM_FALSE;
44496 	(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 3)) & 7);
44497 	{
44498 		if (!hasImportedCppExceptions) goto LA222_;
44499 		{
44500 			NI i_3;
44501 			NI colontmp__2;
44502 			NI i_4;
44503 			i_3 = (NI)0;
44504 			colontmp__2 = (NI)0;
44505 			colontmp__2 = len__ast_3198(t);
44506 			i_4 = ((NI) 1);
44507 			{
44508 				while (1) {
44509 					if (!(i_4 < colontmp__2)) goto LA226;
44510 					i_3 = i_4;
44511 					{
44512 						if (!!(((*(*t)._kind_6.sons->data[i_3]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87)))) goto LA229_;
44513 						goto LA224;
44514 					}
44515 					LA229_: ;
44516 					{
44517 						NIM_BOOL T233_;
44518 						T233_ = (NIM_BOOL)0;
44519 						T233_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1));
44520 						if (!(T233_)) goto LA234_;
44521 						T233_ = isEmptyType__ast_4779((*t).typ);
44522 						LA234_: ;
44523 						if (!T233_) goto LA235_;
44524 						(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0);
44525 					}
44526 					LA235_: ;
44527 					{
44528 						NI T239_;
44529 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T242_;
44530 						NimStringDesc* res_18;
44531 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T243_;
44532 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T244_;
44533 						NI T245_;
44534 						T239_ = (NI)0;
44535 						T239_ = len__ast_3198((*t)._kind_6.sons->data[i_3]);
44536 						if (!(T239_ == ((NI) 1))) goto LA240_;
44537 						T242_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44538 						T242_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44539 						res_18 = rawNewString(((NI) 80));
44540 						res_18 = resizeString(res_18, 13);
44541 appendString(res_18, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1081));
44542 						T243_ = NIM_NIL;
44543 						T243_ = rope__ropes_109(res_18);
44544 						T244_ = NIM_NIL;
44545 						T244_ = indentLine__cgen_280(p, T243_);
44546 						add__ropes_159(T242_, T244_);
44547 						T245_ = (NI)0;
44548 						T245_ = startBlockInternal__cgen_13189(p);
44549 						genRestoreFrameAfterException__cgen_15595(p);
44550 						expr__cgen_11460(p, (*(*t)._kind_6.sons->data[i_3])._kind_6.sons->data[((NI) 0)], d);
44551 						endBlock__cgen_13210(p);
44552 						catchAllPresent = NIM_TRUE;
44553 					}
44554 					goto LA237_;
44555 					LA240_: ;
44556 					{
44557 						{
44558 							NI j_2;
44559 							NI colontmp__3;
44560 							NI T248_;
44561 							NI i_5;
44562 							j_2 = (NI)0;
44563 							colontmp__3 = (NI)0;
44564 							T248_ = (NI)0;
44565 							T248_ = len__ast_3198((*t)._kind_6.sons->data[i_3]);
44566 							colontmp__3 = (NI)(T248_ - ((NI) 1));
44567 							i_5 = ((NI) 0);
44568 							{
44569 								while (1) {
44570 									tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* typeNode_2;
44571 									if (!(i_5 < colontmp__3)) goto LA250;
44572 									j_2 = i_5;
44573 									typeNode_2 = (*(*t)._kind_6.sons->data[i_3])._kind_6.sons->data[j_2];
44574 									{
44575 										NIM_BOOL T253_;
44576 										T253_ = (NIM_BOOL)0;
44577 										T253_ = isInfixAs__ast_4935((*(*t)._kind_6.sons->data[i_3])._kind_6.sons->data[j_2]);
44578 										if (!T253_) goto LA254_;
44579 										typeNode_2 = (*(*(*t)._kind_6.sons->data[i_3])._kind_6.sons->data[j_2])._kind_6.sons->data[((NI) 1)];
44580 										{
44581 											NIM_BOOL T258_;
44582 											tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* exvar_2;
44583 											tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T261_;
44584 											tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T262_;
44585 											NimStringDesc* res_19;
44586 											tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T263_;
44587 											tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T264_;
44588 											tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T269_;
44589 											tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T270_;
44590 											NI T271_;
44591 											NI T272_;
44592 											T258_ = (NIM_BOOL)0;
44593 											T258_ = isImportedException__ast_4904((*typeNode_2).typ, (*(*(*p).module).g).config);
44594 											if (!T258_) goto LA259_;
44595 											exvar_2 = (*(*(*t)._kind_6.sons->data[i_3])._kind_6.sons->data[j_2])._kind_6.sons->data[((NI) 2)];
44596 											T261_ = NIM_NIL;
44597 											T261_ = mangleLocalName__cgen_726(p, (*exvar_2)._kind_4.sym);
44598 											fillLoc__cgen_65((&(*(*exvar_2)._kind_4.sym).loc), ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1), exvar_2, T261_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 2));
44599 											T262_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44600 											T262_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44601 											res_19 = rawNewString(((NI) 80));
44602 											res_19 = resizeString(res_19, 7);
44603 appendString(res_19, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1068));
44604 											T263_ = NIM_NIL;
44605 											T263_ = getTypeDesc__cgen_6631((*p).module, (*typeNode_2).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
44606 											cgFormatValue__cgen_141((&res_19), T263_);
44607 											res_19 = resizeString(res_19, 2);
44608 appendString(res_19, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1082));
44609 											T264_ = NIM_NIL;
44610 											T264_ = rdLoc__cgen_425((*(*exvar_2)._kind_4.sym).loc);
44611 											cgFormatValue__cgen_141((&res_19), T264_);
44612 											res_19 = resizeString(res_19, 3);
44613 appendString(res_19, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1024));
44614 											{
44615 												if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA267_;
44616 												res_19 = resizeString(res_19, 1);
44617 appendString(res_19, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44618 											}
44619 											LA267_: ;
44620 											T269_ = NIM_NIL;
44621 											T269_ = rope__ropes_109(res_19);
44622 											T270_ = NIM_NIL;
44623 											T270_ = indentLine__cgen_280(p, T269_);
44624 											add__ropes_159(T262_, T270_);
44625 											T271_ = (NI)0;
44626 											T271_ = startBlockInternal__cgen_13189(p);
44627 											genRestoreFrameAfterException__cgen_15595(p);
44628 											T272_ = (NI)0;
44629 											T272_ = len__ast_3198((*t)._kind_6.sons->data[i_3]);
44630 											expr__cgen_11460(p, (*(*t)._kind_6.sons->data[i_3])._kind_6.sons->data[(NI)(T272_ - ((NI) 1))], d);
44631 											endBlock__cgen_13210(p);
44632 										}
44633 										LA259_: ;
44634 									}
44635 									goto LA251_;
44636 									LA254_: ;
44637 									{
44638 										NIM_BOOL T274_;
44639 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T277_;
44640 										NimStringDesc* res_20;
44641 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T278_;
44642 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T283_;
44643 										tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T284_;
44644 										NI T285_;
44645 										NI T286_;
44646 										T274_ = (NIM_BOOL)0;
44647 										T274_ = isImportedException__ast_4904((*typeNode_2).typ, (*(*(*p).module).g).config);
44648 										if (!T274_) goto LA275_;
44649 										T277_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44650 										T277_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44651 										res_20 = rawNewString(((NI) 80));
44652 										res_20 = resizeString(res_20, 7);
44653 appendString(res_20, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1068));
44654 										T278_ = NIM_NIL;
44655 										T278_ = getTypeDesc__cgen_6631((*p).module, (*(*(*t)._kind_6.sons->data[i_3])._kind_6.sons->data[j_2]).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
44656 										cgFormatValue__cgen_141((&res_20), T278_);
44657 										res_20 = resizeString(res_20, 4);
44658 appendString(res_20, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1083));
44659 										{
44660 											if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA281_;
44661 											res_20 = resizeString(res_20, 1);
44662 appendString(res_20, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44663 										}
44664 										LA281_: ;
44665 										T283_ = NIM_NIL;
44666 										T283_ = rope__ropes_109(res_20);
44667 										T284_ = NIM_NIL;
44668 										T284_ = indentLine__cgen_280(p, T283_);
44669 										add__ropes_159(T277_, T284_);
44670 										T285_ = (NI)0;
44671 										T285_ = startBlockInternal__cgen_13189(p);
44672 										genRestoreFrameAfterException__cgen_15595(p);
44673 										T286_ = (NI)0;
44674 										T286_ = len__ast_3198((*t)._kind_6.sons->data[i_3]);
44675 										expr__cgen_11460(p, (*(*t)._kind_6.sons->data[i_3])._kind_6.sons->data[(NI)(T286_ - ((NI) 1))], d);
44676 										endBlock__cgen_13210(p);
44677 									}
44678 									goto LA251_;
44679 									LA275_: ;
44680 									LA251_: ;
44681 									i_5 += ((NI) 1);
44682 								} LA250: ;
44683 							}
44684 						}
44685 					}
44686 					LA237_: ;
44687 					i_4 += ((NI) 1);
44688 				} LA226: ;
44689 			}
44690 		} LA224: ;
44691 	}
44692 	LA222_: ;
44693 	(*p).flags &= ~(((NU8)1) << ((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 3)) & 7));
44694 	nimZeroMem((void*)(&T287_), sizeof(tyTuple__FxkU4d1VDodDMc9ah6Mbagw));
44695 	pop__cgen_13602((&(*p).nestedTryStmts), (&T287_));
44696 	(void)(T287_);
44697 	{
44698 		NIM_BOOL T290_;
44699 		NI T291_;
44700 		NI T293_;
44701 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T311_;
44702 		NimStringDesc* res_23;
44703 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T316_;
44704 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T317_;
44705 		NI T318_;
44706 		NI T319_;
44707 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T320_;
44708 		NimStringDesc* res_24;
44709 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T325_;
44710 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T326_;
44711 		T290_ = (NIM_BOOL)0;
44712 		T291_ = (NI)0;
44713 		T291_ = len__ast_3198(t);
44714 		T290_ = (((NI) 0) < T291_);
44715 		if (!(T290_)) goto LA292_;
44716 		T293_ = (NI)0;
44717 		T293_ = len__ast_3198(t);
44718 		T290_ = ((*(*t)._kind_6.sons->data[(NI)(T293_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107));
44719 		LA292_: ;
44720 		if (!T290_) goto LA294_;
44721 		{
44722 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T300_;
44723 			NimStringDesc* res_21;
44724 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T301_;
44725 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T302_;
44726 			NI T303_;
44727 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T304_;
44728 			NimStringDesc* res_22;
44729 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T309_;
44730 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T310_;
44731 			if (!!(catchAllPresent)) goto LA298_;
44732 			T300_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44733 			T300_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44734 			res_21 = rawNewString(((NI) 80));
44735 			res_21 = resizeString(res_21, 13);
44736 appendString(res_21, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1081));
44737 			T301_ = NIM_NIL;
44738 			T301_ = rope__ropes_109(res_21);
44739 			T302_ = NIM_NIL;
44740 			T302_ = indentLine__cgen_280(p, T301_);
44741 			add__ropes_159(T300_, T302_);
44742 			T303_ = (NI)0;
44743 			T303_ = startBlockInternal__cgen_13189(p);
44744 			genRestoreFrameAfterException__cgen_15595(p);
44745 			T304_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44746 			T304_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44747 			res_22 = rawNewString(((NI) 80));
44748 			res_22 = resizeString(res_22, 1);
44749 appendString(res_22, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_169));
44750 			cgFormatValue__cgen_148((&res_22), ((NI64) (etmp)));
44751 			res_22 = resizeString(res_22, 29);
44752 appendString(res_22, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1077));
44753 			{
44754 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA307_;
44755 				res_22 = resizeString(res_22, 1);
44756 appendString(res_22, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44757 			}
44758 			LA307_: ;
44759 			T309_ = NIM_NIL;
44760 			T309_ = rope__ropes_109(res_22);
44761 			T310_ = NIM_NIL;
44762 			T310_ = indentLine__cgen_280(p, T309_);
44763 			add__ropes_159(T304_, T310_);
44764 			endBlock__cgen_13210(p);
44765 		}
44766 		LA298_: ;
44767 		T311_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44768 		T311_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44769 		res_23 = rawNewString(((NI) 80));
44770 		res_23 = resizeString(res_23, 1);
44771 appendString(res_23, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
44772 		{
44773 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA314_;
44774 			res_23 = resizeString(res_23, 1);
44775 appendString(res_23, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44776 		}
44777 		LA314_: ;
44778 		T316_ = NIM_NIL;
44779 		T316_ = rope__ropes_109(res_23);
44780 		T317_ = NIM_NIL;
44781 		T317_ = indentLine__cgen_280(p, T316_);
44782 		add__ropes_159(T311_, T317_);
44783 		T318_ = (NI)0;
44784 		T318_ = startBlockInternal__cgen_13189(p);
44785 		T319_ = (NI)0;
44786 		T319_ = len__ast_3198(t);
44787 		genStmts__cgen_11457(p, (*(*t)._kind_6.sons->data[(NI)(T319_ - ((NI) 1))])._kind_6.sons->data[((NI) 0)]);
44788 		T320_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44789 		T320_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44790 		res_24 = rawNewString(((NI) 80));
44791 		res_24 = resizeString(res_24, 5);
44792 appendString(res_24, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1084));
44793 		cgFormatValue__cgen_148((&res_24), ((NI64) (etmp)));
44794 		res_24 = resizeString(res_24, 27);
44795 appendString(res_24, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1085));
44796 		cgFormatValue__cgen_148((&res_24), ((NI64) (etmp)));
44797 		res_24 = resizeString(res_24, 3);
44798 appendString(res_24, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1086));
44799 		{
44800 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA323_;
44801 			res_24 = resizeString(res_24, 1);
44802 appendString(res_24, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44803 		}
44804 		LA323_: ;
44805 		T325_ = NIM_NIL;
44806 		T325_ = rope__ropes_109(res_24);
44807 		T326_ = NIM_NIL;
44808 		T326_ = indentLine__cgen_280(p, T325_);
44809 		add__ropes_159(T320_, T326_);
44810 		endBlock__cgen_13210(p);
44811 	}
44812 	LA294_: ;
44813 }
N_NIMCALL(void,genTrySetjmp__cgen_16709)44814 N_LIB_PRIVATE N_NIMCALL(void, genTrySetjmp__cgen_16709)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
44815 	NIM_BOOL quirkyExceptions;
44816 	NIM_BOOL T8_;
44817 	NIM_BOOL T10_;
44818 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T17_;
44819 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* safePoint;
44820 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* fin;
44821 	tyTuple__FxkU4d1VDodDMc9ah6Mbagw T118_;
44822 	NI T119_;
44823 	tyTuple__FxkU4d1VDodDMc9ah6Mbagw* T179_;
44824 	NI i;
44825 	tyTuple__FxkU4d1VDodDMc9ah6Mbagw T290_;
44826 	{
44827 		NIM_BOOL T3_;
44828 		NIM_BOOL T4_;
44829 		T3_ = (NIM_BOOL)0;
44830 		T4_ = (NIM_BOOL)0;
44831 		T4_ = isEmptyType__ast_4779((*t).typ);
44832 		T3_ = !(T4_);
44833 		if (!(T3_)) goto LA5_;
44834 		T3_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0));
44835 		LA5_: ;
44836 		if (!T3_) goto LA6_;
44837 		getTemp__cgen_7343(p, (*t).typ, d, NIM_FALSE);
44838 	}
44839 	LA6_: ;
44840 	T8_ = (NIM_BOOL)0;
44841 	T8_ = ((*(*(*(*p).module).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 4));
44842 	if (T8_) goto LA9_;
44843 	T10_ = (NIM_BOOL)0;
44844 	T10_ = ((*t).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 154));
44845 	if (!(T10_)) goto LA11_;
44846 	T10_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0);
44847 	LA11_: ;
44848 	T8_ = T10_;
44849 	LA9_: ;
44850 	quirkyExceptions = T8_;
44851 	{
44852 		if (!!(quirkyExceptions)) goto LA14_;
44853 		includeHeader__cgendata_214((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1087));
44854 	}
44855 	goto LA12_;
44856 	LA14_: ;
44857 	{
44858 		(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 3)) & 7);
44859 	}
44860 	LA12_: ;
44861 	genLineDir__cgen_359(p, t);
44862 	T17_ = NIM_NIL;
44863 	T17_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1069));
44864 	(void)(T17_);
44865 	safePoint = NIM_NIL;
44866 	{
44867 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T22_;
44868 		NimStringDesc* res;
44869 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
44870 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
44871 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
44872 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T30_;
44873 		NimStringDesc* res_2;
44874 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
44875 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
44876 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T37_;
44877 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T104_;
44878 		NimStringDesc* res_9;
44879 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T109_;
44880 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T110_;
44881 		if (!!(quirkyExceptions)) goto LA20_;
44882 		safePoint = getTempName__cgen_418((*p).module);
44883 		T22_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44884 		T22_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
44885 		res = rawNewString(((NI) 80));
44886 		T23_ = NIM_NIL;
44887 		T23_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1088));
44888 		cgFormatValue__cgen_141((&res), T23_);
44889 		res = resizeString(res, 1);
44890 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
44891 		cgFormatValue__cgen_141((&res), safePoint);
44892 		res = resizeString(res, 1);
44893 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_94));
44894 		{
44895 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA26_;
44896 			res = resizeString(res, 1);
44897 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44898 		}
44899 		LA26_: ;
44900 		T28_ = NIM_NIL;
44901 		T28_ = rope__ropes_109(res);
44902 		T29_ = NIM_NIL;
44903 		T29_ = indentLine__cgen_280(p, T28_);
44904 		add__ropes_159(T22_, T29_);
44905 		T30_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44906 		T30_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44907 		res_2 = rawNewString(((NI) 80));
44908 		T31_ = NIM_NIL;
44909 		T31_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1089));
44910 		cgFormatValue__cgen_141((&res_2), T31_);
44911 		res_2 = resizeString(res_2, 2);
44912 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_102));
44913 		cgFormatValue__cgen_141((&res_2), safePoint);
44914 		res_2 = resizeString(res_2, 2);
44915 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
44916 		{
44917 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA34_;
44918 			res_2 = resizeString(res_2, 1);
44919 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44920 		}
44921 		LA34_: ;
44922 		T36_ = NIM_NIL;
44923 		T36_ = rope__ropes_109(res_2);
44924 		T37_ = NIM_NIL;
44925 		T37_ = indentLine__cgen_280(p, T36_);
44926 		add__ropes_159(T30_, T37_);
44927 		{
44928 			NIM_BOOL T40_;
44929 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T43_;
44930 			NimStringDesc* res_3;
44931 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
44932 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
44933 			T40_ = (NIM_BOOL)0;
44934 			T40_ = isDefined__options_2279((*(*(*p).module).g).config, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1090));
44935 			if (!T40_) goto LA41_;
44936 			T43_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44937 			T43_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44938 			res_3 = rawNewString(((NI) 80));
44939 			cgFormatValue__cgen_141((&res_3), safePoint);
44940 			res_3 = resizeString(res_3, 17);
44941 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1091));
44942 			cgFormatValue__cgen_141((&res_3), safePoint);
44943 			res_3 = resizeString(res_3, 10);
44944 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1092));
44945 			{
44946 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA46_;
44947 				res_3 = resizeString(res_3, 1);
44948 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44949 			}
44950 			LA46_: ;
44951 			T48_ = NIM_NIL;
44952 			T48_ = rope__ropes_109(res_3);
44953 			T49_ = NIM_NIL;
44954 			T49_ = indentLine__cgen_280(p, T48_);
44955 			add__ropes_159(T43_, T49_);
44956 		}
44957 		goto LA38_;
44958 		LA41_: ;
44959 		{
44960 			NIM_BOOL T51_;
44961 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T54_;
44962 			NimStringDesc* res_4;
44963 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
44964 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
44965 			T51_ = (NIM_BOOL)0;
44966 			T51_ = isDefined__options_2279((*(*(*p).module).g).config, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1093));
44967 			if (!T51_) goto LA52_;
44968 			T54_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
44969 			T54_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
44970 			res_4 = rawNewString(((NI) 80));
44971 			cgFormatValue__cgen_141((&res_4), safePoint);
44972 			res_4 = resizeString(res_4, 20);
44973 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1094));
44974 			cgFormatValue__cgen_141((&res_4), safePoint);
44975 			res_4 = resizeString(res_4, 13);
44976 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1095));
44977 			{
44978 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA57_;
44979 				res_4 = resizeString(res_4, 1);
44980 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
44981 			}
44982 			LA57_: ;
44983 			T59_ = NIM_NIL;
44984 			T59_ = rope__ropes_109(res_4);
44985 			T60_ = NIM_NIL;
44986 			T60_ = indentLine__cgen_280(p, T59_);
44987 			add__ropes_159(T54_, T60_);
44988 		}
44989 		goto LA38_;
44990 		LA52_: ;
44991 		{
44992 			NIM_BOOL T62_;
44993 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T65_;
44994 			NimStringDesc* res_5;
44995 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
44996 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
44997 			T62_ = (NIM_BOOL)0;
44998 			T62_ = isDefined__options_2279((*(*(*p).module).g).config, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1096));
44999 			if (!T62_) goto LA63_;
45000 			T65_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45001 			T65_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45002 			res_5 = rawNewString(((NI) 80));
45003 			cgFormatValue__cgen_141((&res_5), safePoint);
45004 			res_5 = resizeString(res_5, 27);
45005 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1097));
45006 			cgFormatValue__cgen_141((&res_5), safePoint);
45007 			res_5 = resizeString(res_5, 10);
45008 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1092));
45009 			{
45010 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA68_;
45011 				res_5 = resizeString(res_5, 1);
45012 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45013 			}
45014 			LA68_: ;
45015 			T70_ = NIM_NIL;
45016 			T70_ = rope__ropes_109(res_5);
45017 			T71_ = NIM_NIL;
45018 			T71_ = indentLine__cgen_280(p, T70_);
45019 			add__ropes_159(T65_, T71_);
45020 		}
45021 		goto LA38_;
45022 		LA63_: ;
45023 		{
45024 			NIM_BOOL T73_;
45025 			T73_ = (NIM_BOOL)0;
45026 			T73_ = isDefined__options_2279((*(*(*p).module).g).config, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1098));
45027 			if (!T73_) goto LA74_;
45028 			{
45029 				NIM_BOOL T78_;
45030 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T81_;
45031 				NimStringDesc* res_6;
45032 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T86_;
45033 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T87_;
45034 				T78_ = (NIM_BOOL)0;
45035 				T78_ = isDefined__options_2279((*(*(*p).module).g).config, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1099));
45036 				if (!T78_) goto LA79_;
45037 				T81_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45038 				T81_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45039 				res_6 = rawNewString(((NI) 80));
45040 				cgFormatValue__cgen_141((&res_6), safePoint);
45041 				res_6 = resizeString(res_6, 18);
45042 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1100));
45043 				cgFormatValue__cgen_141((&res_6), safePoint);
45044 				res_6 = resizeString(res_6, 13);
45045 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1095));
45046 				{
45047 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA84_;
45048 					res_6 = resizeString(res_6, 1);
45049 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45050 				}
45051 				LA84_: ;
45052 				T86_ = NIM_NIL;
45053 				T86_ = rope__ropes_109(res_6);
45054 				T87_ = NIM_NIL;
45055 				T87_ = indentLine__cgen_280(p, T86_);
45056 				add__ropes_159(T81_, T87_);
45057 			}
45058 			goto LA76_;
45059 			LA79_: ;
45060 			{
45061 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T89_;
45062 				NimStringDesc* res_7;
45063 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T94_;
45064 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T95_;
45065 				T89_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45066 				T89_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45067 				res_7 = rawNewString(((NI) 80));
45068 				cgFormatValue__cgen_141((&res_7), safePoint);
45069 				res_7 = resizeString(res_7, 18);
45070 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1100));
45071 				cgFormatValue__cgen_141((&res_7), safePoint);
45072 				res_7 = resizeString(res_7, 10);
45073 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1092));
45074 				{
45075 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA92_;
45076 					res_7 = resizeString(res_7, 1);
45077 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45078 				}
45079 				LA92_: ;
45080 				T94_ = NIM_NIL;
45081 				T94_ = rope__ropes_109(res_7);
45082 				T95_ = NIM_NIL;
45083 				T95_ = indentLine__cgen_280(p, T94_);
45084 				add__ropes_159(T89_, T95_);
45085 			}
45086 			LA76_: ;
45087 		}
45088 		goto LA38_;
45089 		LA74_: ;
45090 		{
45091 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T97_;
45092 			NimStringDesc* res_8;
45093 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T102_;
45094 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T103_;
45095 			T97_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45096 			T97_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45097 			res_8 = rawNewString(((NI) 80));
45098 			cgFormatValue__cgen_141((&res_8), safePoint);
45099 			res_8 = resizeString(res_8, 17);
45100 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1091));
45101 			cgFormatValue__cgen_141((&res_8), safePoint);
45102 			res_8 = resizeString(res_8, 10);
45103 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1092));
45104 			{
45105 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA100_;
45106 				res_8 = resizeString(res_8, 1);
45107 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45108 			}
45109 			LA100_: ;
45110 			T102_ = NIM_NIL;
45111 			T102_ = rope__ropes_109(res_8);
45112 			T103_ = NIM_NIL;
45113 			T103_ = indentLine__cgen_280(p, T102_);
45114 			add__ropes_159(T97_, T103_);
45115 		}
45116 		LA38_: ;
45117 		T104_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45118 		T104_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45119 		res_9 = rawNewString(((NI) 80));
45120 		res_9 = resizeString(res_9, 4);
45121 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
45122 		cgFormatValue__cgen_141((&res_9), safePoint);
45123 		res_9 = resizeString(res_9, 15);
45124 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1101));
45125 		{
45126 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA107_;
45127 			res_9 = resizeString(res_9, 1);
45128 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45129 		}
45130 		LA107_: ;
45131 		T109_ = NIM_NIL;
45132 		T109_ = rope__ropes_109(res_9);
45133 		T110_ = NIM_NIL;
45134 		T110_ = indentLine__cgen_280(p, T109_);
45135 		add__ropes_159(T104_, T110_);
45136 	}
45137 	LA20_: ;
45138 	{
45139 		NI T113_;
45140 		NI T116_;
45141 		T113_ = (NI)0;
45142 		T113_ = len__ast_3198(t);
45143 		if (!((*(*t)._kind_6.sons->data[(NI)(T113_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107))) goto LA114_;
45144 		T116_ = (NI)0;
45145 		T116_ = len__ast_3198(t);
45146 		fin = (*t)._kind_6.sons->data[(NI)(T116_ - ((NI) 1))];
45147 	}
45148 	goto LA111_;
45149 	LA114_: ;
45150 	{
45151 		fin = ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL);
45152 	}
45153 	LA111_: ;
45154 	nimZeroMem((void*)(&T118_), sizeof(tyTuple__FxkU4d1VDodDMc9ah6Mbagw));
45155 	T118_.Field0 = fin;
45156 	T118_.Field1 = quirkyExceptions;
45157 	T118_.Field2 = ((NI) 0);
45158 	asgnRef((void**) (&(*p).nestedTryStmts), (tySequence__KjgUMUjT3LUKOFIK4xt5ug*) incrSeqV3((TGenericSeq*)((*p).nestedTryStmts), (&NTIseqLtupleLfin58pnode_inexcept58bool_label58naturalTT__KjgUMUjT3LUKOFIK4xt5ug_)));
45159 	T119_ = (*p).nestedTryStmts->Sup.len++;
45160 	asgnRef((void**) (&(*p).nestedTryStmts->data[T119_].Field0), T118_.Field0);
45161 	(*p).nestedTryStmts->data[T119_].Field1 = T118_.Field1;
45162 	(*p).nestedTryStmts->data[T119_].Field2 = T118_.Field2;
45163 	expr__cgen_11460(p, (*t)._kind_6.sons->data[((NI) 0)], d);
45164 	{
45165 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T124_;
45166 		NimStringDesc* res_10;
45167 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T125_;
45168 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T130_;
45169 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T131_;
45170 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T132_;
45171 		NimStringDesc* res_11;
45172 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T137_;
45173 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T138_;
45174 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T139_;
45175 		NimStringDesc* res_12;
45176 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T144_;
45177 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T145_;
45178 		NI T146_;
45179 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T147_;
45180 		NimStringDesc* res_13;
45181 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T148_;
45182 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T153_;
45183 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T154_;
45184 		if (!!(quirkyExceptions)) goto LA122_;
45185 		T124_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45186 		T124_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45187 		res_10 = rawNewString(((NI) 80));
45188 		T125_ = NIM_NIL;
45189 		T125_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1036));
45190 		cgFormatValue__cgen_141((&res_10), T125_);
45191 		res_10 = resizeString(res_10, 3);
45192 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
45193 		{
45194 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA128_;
45195 			res_10 = resizeString(res_10, 1);
45196 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45197 		}
45198 		LA128_: ;
45199 		T130_ = NIM_NIL;
45200 		T130_ = rope__ropes_109(res_10);
45201 		T131_ = NIM_NIL;
45202 		T131_ = indentLine__cgen_280(p, T130_);
45203 		add__ropes_159(T124_, T131_);
45204 		T132_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45205 		T132_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45206 		res_11 = rawNewString(((NI) 80));
45207 		res_11 = resizeString(res_11, 1);
45208 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_301));
45209 		{
45210 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA135_;
45211 			res_11 = resizeString(res_11, 1);
45212 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45213 		}
45214 		LA135_: ;
45215 		T137_ = NIM_NIL;
45216 		T137_ = rope__ropes_109(res_11);
45217 		T138_ = NIM_NIL;
45218 		T138_ = indentLine__cgen_280(p, T137_);
45219 		add__ropes_159(T132_, T138_);
45220 		T139_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45221 		T139_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45222 		res_12 = rawNewString(((NI) 80));
45223 		res_12 = resizeString(res_12, 6);
45224 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1102));
45225 		{
45226 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA142_;
45227 			res_12 = resizeString(res_12, 1);
45228 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45229 		}
45230 		LA142_: ;
45231 		T144_ = NIM_NIL;
45232 		T144_ = rope__ropes_109(res_12);
45233 		T145_ = NIM_NIL;
45234 		T145_ = indentLine__cgen_280(p, T144_);
45235 		add__ropes_159(T139_, T145_);
45236 		T146_ = (NI)0;
45237 		T146_ = startBlockInternal__cgen_13189(p);
45238 		T147_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45239 		T147_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45240 		res_13 = rawNewString(((NI) 80));
45241 		T148_ = NIM_NIL;
45242 		T148_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1036));
45243 		cgFormatValue__cgen_141((&res_13), T148_);
45244 		res_13 = resizeString(res_13, 3);
45245 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
45246 		{
45247 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA151_;
45248 			res_13 = resizeString(res_13, 1);
45249 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45250 		}
45251 		LA151_: ;
45252 		T153_ = NIM_NIL;
45253 		T153_ = rope__ropes_109(res_13);
45254 		T154_ = NIM_NIL;
45255 		T154_ = indentLine__cgen_280(p, T153_);
45256 		add__ropes_159(T147_, T154_);
45257 		genRestoreFrameAfterException__cgen_15595(p);
45258 	}
45259 	goto LA120_;
45260 	LA122_: ;
45261 	{
45262 		NIM_BOOL T156_;
45263 		NI T157_;
45264 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T161_;
45265 		NimStringDesc* res_14;
45266 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T162_;
45267 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T167_;
45268 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T168_;
45269 		NI T169_;
45270 		T156_ = (NIM_BOOL)0;
45271 		T157_ = (NI)0;
45272 		T157_ = len__ast_3198(t);
45273 		T156_ = (((NI) 1) < T157_);
45274 		if (!(T156_)) goto LA158_;
45275 		T156_ = ((*(*t)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87));
45276 		LA158_: ;
45277 		if (!T156_) goto LA159_;
45278 		T161_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45279 		T161_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45280 		res_14 = rawNewString(((NI) 80));
45281 		res_14 = resizeString(res_14, 4);
45282 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
45283 		T162_ = NIM_NIL;
45284 		T162_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1057));
45285 		cgFormatValue__cgen_141((&res_14), T162_);
45286 		res_14 = resizeString(res_14, 5);
45287 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1103));
45288 		{
45289 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA165_;
45290 			res_14 = resizeString(res_14, 1);
45291 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45292 		}
45293 		LA165_: ;
45294 		T167_ = NIM_NIL;
45295 		T167_ = rope__ropes_109(res_14);
45296 		T168_ = NIM_NIL;
45297 		T168_ = indentLine__cgen_280(p, T167_);
45298 		add__ropes_159(T161_, T168_);
45299 		T169_ = (NI)0;
45300 		T169_ = startBlockInternal__cgen_13189(p);
45301 	}
45302 	goto LA120_;
45303 	LA159_: ;
45304 	{
45305 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T171_;
45306 		NimStringDesc* res_15;
45307 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T176_;
45308 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T177_;
45309 		NI T178_;
45310 		T171_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45311 		T171_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45312 		res_15 = rawNewString(((NI) 80));
45313 		res_15 = resizeString(res_15, 1);
45314 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
45315 		{
45316 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA174_;
45317 			res_15 = resizeString(res_15, 1);
45318 appendString(res_15, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45319 		}
45320 		LA174_: ;
45321 		T176_ = NIM_NIL;
45322 		T176_ = rope__ropes_109(res_15);
45323 		T177_ = NIM_NIL;
45324 		T177_ = indentLine__cgen_280(p, T176_);
45325 		add__ropes_159(T171_, T177_);
45326 		T178_ = (NI)0;
45327 		T178_ = startBlockInternal__cgen_13189(p);
45328 	}
45329 	LA120_: ;
45330 	T179_ = (tyTuple__FxkU4d1VDodDMc9ah6Mbagw*)0;
45331 	T179_ = X5BX5D___cgen_14745((*p).nestedTryStmts->data, ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0), ((NI) 1));
45332 	(*T179_).Field1 = NIM_TRUE;
45333 	i = ((NI) 1);
45334 	{
45335 		while (1) {
45336 			NIM_BOOL T182_;
45337 			NI T183_;
45338 			T182_ = (NIM_BOOL)0;
45339 			T183_ = (NI)0;
45340 			T183_ = len__ast_3198(t);
45341 			T182_ = (i < T183_);
45342 			if (!(T182_)) goto LA184_;
45343 			T182_ = ((*(*t)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 87));
45344 			LA184_: ;
45345 			if (!T182_) goto LA181;
45346 			{
45347 				NIM_BOOL T187_;
45348 				T187_ = (NIM_BOOL)0;
45349 				T187_ = ((*d).k == ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 1));
45350 				if (!(T187_)) goto LA188_;
45351 				T187_ = isEmptyType__ast_4779((*t).typ);
45352 				LA188_: ;
45353 				if (!T187_) goto LA189_;
45354 				(*d).k = ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 0);
45355 			}
45356 			LA189_: ;
45357 			{
45358 				NI T193_;
45359 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T204_;
45360 				NimStringDesc* res_16;
45361 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T209_;
45362 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T210_;
45363 				NI T211_;
45364 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T223_;
45365 				NimStringDesc* res_18;
45366 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T224_;
45367 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T229_;
45368 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T230_;
45369 				T193_ = (NI)0;
45370 				T193_ = len__ast_3198((*t)._kind_6.sons->data[i]);
45371 				if (!(T193_ == ((NI) 1))) goto LA194_;
45372 				{
45373 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T200_;
45374 					tyArray__qTjAvTvKF9anytN1At69aJMQ T201_;
45375 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T202_;
45376 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T203_;
45377 					if (!(((NI) 1) < i)) goto LA198_;
45378 					T200_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45379 					T200_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45380 					nimZeroMem((void*)T201_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
45381 					T202_ = NIM_NIL;
45382 					T202_ = percent___cgen_16489(T201_, 0);
45383 					T203_ = NIM_NIL;
45384 					T203_ = indentLine__cgen_280(p, T202_);
45385 					add__ropes_159(T200_, T203_);
45386 				}
45387 				LA198_: ;
45388 				T204_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45389 				T204_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45390 				res_16 = rawNewString(((NI) 80));
45391 				res_16 = resizeString(res_16, 1);
45392 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
45393 				{
45394 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA207_;
45395 					res_16 = resizeString(res_16, 1);
45396 appendString(res_16, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45397 				}
45398 				LA207_: ;
45399 				T209_ = NIM_NIL;
45400 				T209_ = rope__ropes_109(res_16);
45401 				T210_ = NIM_NIL;
45402 				T210_ = indentLine__cgen_280(p, T209_);
45403 				add__ropes_159(T204_, T210_);
45404 				T211_ = (NI)0;
45405 				T211_ = startBlockInternal__cgen_13189(p);
45406 				{
45407 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T216_;
45408 					NimStringDesc* res_17;
45409 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T221_;
45410 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T222_;
45411 					if (!!(quirkyExceptions)) goto LA214_;
45412 					T216_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45413 					T216_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45414 					res_17 = rawNewString(((NI) 80));
45415 					cgFormatValue__cgen_141((&res_17), safePoint);
45416 					res_17 = resizeString(res_17, 12);
45417 appendString(res_17, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1104));
45418 					{
45419 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA219_;
45420 						res_17 = resizeString(res_17, 1);
45421 appendString(res_17, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45422 					}
45423 					LA219_: ;
45424 					T221_ = NIM_NIL;
45425 					T221_ = rope__ropes_109(res_17);
45426 					T222_ = NIM_NIL;
45427 					T222_ = indentLine__cgen_280(p, T221_);
45428 					add__ropes_159(T216_, T222_);
45429 				}
45430 				LA214_: ;
45431 				expr__cgen_11460(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)], d);
45432 				T223_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45433 				T223_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45434 				res_18 = rawNewString(((NI) 80));
45435 				T224_ = NIM_NIL;
45436 				T224_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1037));
45437 				cgFormatValue__cgen_141((&res_18), T224_);
45438 				res_18 = resizeString(res_18, 3);
45439 appendString(res_18, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
45440 				{
45441 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA227_;
45442 					res_18 = resizeString(res_18, 1);
45443 appendString(res_18, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45444 				}
45445 				LA227_: ;
45446 				T229_ = NIM_NIL;
45447 				T229_ = rope__ropes_109(res_18);
45448 				T230_ = NIM_NIL;
45449 				T230_ = indentLine__cgen_280(p, T229_);
45450 				add__ropes_159(T223_, T230_);
45451 				endBlock__cgen_13210(p);
45452 			}
45453 			goto LA191_;
45454 			LA194_: ;
45455 			{
45456 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* orExpr;
45457 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T262_;
45458 				NimStringDesc* res_20;
45459 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T267_;
45460 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T268_;
45461 				NI T269_;
45462 				NI T281_;
45463 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T282_;
45464 				NimStringDesc* res_22;
45465 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T283_;
45466 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T288_;
45467 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T289_;
45468 				orExpr = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
45469 				{
45470 					NI j;
45471 					NI colontmp_;
45472 					NI T233_;
45473 					NI i_2;
45474 					j = (NI)0;
45475 					colontmp_ = (NI)0;
45476 					T233_ = (NI)0;
45477 					T233_ = len__ast_3198((*t)._kind_6.sons->data[i]);
45478 					colontmp_ = (NI)(T233_ - ((NI) 1));
45479 					i_2 = ((NI) 0);
45480 					{
45481 						while (1) {
45482 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* checkFor;
45483 							NimStringDesc* memberName;
45484 							NimStringDesc* res_19;
45485 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T252_;
45486 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T253_;
45487 							tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T254_;
45488 							if (!(i_2 < colontmp_)) goto LA235;
45489 							j = i_2;
45490 							{
45491 								if (!!((orExpr == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA238_;
45492 								add__ropes_162(&orExpr, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_421));
45493 							}
45494 							LA238_: ;
45495 							{
45496 								if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 41))&63U)))!=0)) goto LA242_;
45497 								checkFor = genTypeInfo2Name__cgen_7805((*p).module, (*(*(*t)._kind_6.sons->data[i])._kind_6.sons->data[j]).typ);
45498 							}
45499 							goto LA240_;
45500 							LA242_: ;
45501 							{
45502 								checkFor = genTypeInfoV1__cgen_6768((*p).module, (*(*(*t)._kind_6.sons->data[i])._kind_6.sons->data[j]).typ, (*(*(*t)._kind_6.sons->data[i])._kind_6.sons->data[j]).info);
45503 							}
45504 							LA240_: ;
45505 							{
45506 								NIM_BOOL T247_;
45507 								T247_ = (NIM_BOOL)0;
45508 								T247_ = ((*(*(*(*p).module).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
45509 								if (T247_) goto LA248_;
45510 								T247_ = (((*(*(*p).module).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
45511 								LA248_: ;
45512 								if (!T247_) goto LA249_;
45513 								memberName = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1055));
45514 							}
45515 							goto LA245_;
45516 							LA249_: ;
45517 							{
45518 								memberName = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1056));
45519 							}
45520 							LA245_: ;
45521 							res_19 = rawNewString(((NI) 80));
45522 							T252_ = NIM_NIL;
45523 							T252_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_757));
45524 							cgFormatValue__cgen_141((&res_19), T252_);
45525 							res_19 = resizeString(res_19, 1);
45526 appendString(res_19, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
45527 							T253_ = NIM_NIL;
45528 							T253_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1057));
45529 							cgFormatValue__cgen_141((&res_19), T253_);
45530 							res_19 = resizeString(res_19, 4);
45531 appendString(res_19, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1058));
45532 							cgFormatValue__cgen_145((&res_19), memberName);
45533 							res_19 = resizeString(res_19, 2);
45534 appendString(res_19, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
45535 							cgFormatValue__cgen_141((&res_19), checkFor);
45536 							res_19 = resizeString(res_19, 1);
45537 appendString(res_19, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_68));
45538 							T254_ = NIM_NIL;
45539 							T254_ = rope__ropes_109(res_19);
45540 							add__ropes_159(&orExpr, T254_);
45541 							i_2 += ((NI) 1);
45542 						} LA235: ;
45543 					}
45544 				}
45545 				{
45546 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T259_;
45547 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T260_;
45548 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T261_;
45549 					if (!(((NI) 1) < i)) goto LA257_;
45550 					T259_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45551 					T259_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45552 					T260_ = NIM_NIL;
45553 					T260_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1059));
45554 					T261_ = NIM_NIL;
45555 					T261_ = indentLine__cgen_280(p, T260_);
45556 					add__ropes_159(T259_, T261_);
45557 				}
45558 				LA257_: ;
45559 				T262_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45560 				T262_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45561 				res_20 = rawNewString(((NI) 80));
45562 				res_20 = resizeString(res_20, 4);
45563 appendString(res_20, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
45564 				cgFormatValue__cgen_141((&res_20), orExpr);
45565 				res_20 = resizeString(res_20, 3);
45566 appendString(res_20, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1024));
45567 				{
45568 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA265_;
45569 					res_20 = resizeString(res_20, 1);
45570 appendString(res_20, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45571 				}
45572 				LA265_: ;
45573 				T267_ = NIM_NIL;
45574 				T267_ = rope__ropes_109(res_20);
45575 				T268_ = NIM_NIL;
45576 				T268_ = indentLine__cgen_280(p, T267_);
45577 				add__ropes_159(T262_, T268_);
45578 				T269_ = (NI)0;
45579 				T269_ = startBlockInternal__cgen_13189(p);
45580 				{
45581 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T274_;
45582 					NimStringDesc* res_21;
45583 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T279_;
45584 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T280_;
45585 					if (!!(quirkyExceptions)) goto LA272_;
45586 					T274_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45587 					T274_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45588 					res_21 = rawNewString(((NI) 80));
45589 					cgFormatValue__cgen_141((&res_21), safePoint);
45590 					res_21 = resizeString(res_21, 12);
45591 appendString(res_21, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1104));
45592 					{
45593 						if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA277_;
45594 						res_21 = resizeString(res_21, 1);
45595 appendString(res_21, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45596 					}
45597 					LA277_: ;
45598 					T279_ = NIM_NIL;
45599 					T279_ = rope__ropes_109(res_21);
45600 					T280_ = NIM_NIL;
45601 					T280_ = indentLine__cgen_280(p, T279_);
45602 					add__ropes_159(T274_, T280_);
45603 				}
45604 				LA272_: ;
45605 				T281_ = (NI)0;
45606 				T281_ = len__ast_3198((*t)._kind_6.sons->data[i]);
45607 				expr__cgen_11460(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[(NI)(T281_ - ((NI) 1))], d);
45608 				T282_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45609 				T282_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45610 				res_22 = rawNewString(((NI) 80));
45611 				T283_ = NIM_NIL;
45612 				T283_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1037));
45613 				cgFormatValue__cgen_141((&res_22), T283_);
45614 				res_22 = resizeString(res_22, 3);
45615 appendString(res_22, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
45616 				{
45617 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA286_;
45618 					res_22 = resizeString(res_22, 1);
45619 appendString(res_22, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45620 				}
45621 				LA286_: ;
45622 				T288_ = NIM_NIL;
45623 				T288_ = rope__ropes_109(res_22);
45624 				T289_ = NIM_NIL;
45625 				T289_ = indentLine__cgen_280(p, T288_);
45626 				add__ropes_159(T282_, T289_);
45627 				endBlock__cgen_13210(p);
45628 			}
45629 			LA191_: ;
45630 			i += ((NI) 1);
45631 		} LA181: ;
45632 	}
45633 	nimZeroMem((void*)(&T290_), sizeof(tyTuple__FxkU4d1VDodDMc9ah6Mbagw));
45634 	pop__cgen_13602((&(*p).nestedTryStmts), (&T290_));
45635 	(void)(T290_);
45636 	endBlock__cgen_13210(p);
45637 	{
45638 		NIM_BOOL T293_;
45639 		NI T294_;
45640 		NI T298_;
45641 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T299_;
45642 		NimStringDesc* res_23;
45643 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T304_;
45644 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T305_;
45645 		NI T306_;
45646 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T322_;
45647 		T293_ = (NIM_BOOL)0;
45648 		T294_ = (NI)0;
45649 		T294_ = len__ast_3198(t);
45650 		T293_ = (i < T294_);
45651 		if (!(T293_)) goto LA295_;
45652 		T293_ = ((*(*t)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 107));
45653 		LA295_: ;
45654 		if (!T293_) goto LA296_;
45655 		asgnRef((void**) (&(*p).finallySafePoints), (tySequence__WwUFq9cJ2xKRlsAWVEHyPRg*) incrSeqV3((TGenericSeq*)((*p).finallySafePoints), (&NTIseqLropeT__WwUFq9cJ2xKRlsAWVEHyPRg_)));
45656 		T298_ = (*p).finallySafePoints->Sup.len++;
45657 		asgnRef((void**) (&(*p).finallySafePoints->data[T298_]), safePoint);
45658 		T299_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45659 		T299_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45660 		res_23 = rawNewString(((NI) 80));
45661 		res_23 = resizeString(res_23, 1);
45662 appendString(res_23, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
45663 		{
45664 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA302_;
45665 			res_23 = resizeString(res_23, 1);
45666 appendString(res_23, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45667 		}
45668 		LA302_: ;
45669 		T304_ = NIM_NIL;
45670 		T304_ = rope__ropes_109(res_23);
45671 		T305_ = NIM_NIL;
45672 		T305_ = indentLine__cgen_280(p, T304_);
45673 		add__ropes_159(T299_, T305_);
45674 		T306_ = (NI)0;
45675 		T306_ = startBlockInternal__cgen_13189(p);
45676 		genStmts__cgen_11457(p, (*(*t)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)]);
45677 		{
45678 			NIM_BOOL T309_;
45679 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T311_;
45680 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T314_;
45681 			NimStringDesc* res_24;
45682 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T315_;
45683 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T320_;
45684 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T321_;
45685 			T309_ = (NIM_BOOL)0;
45686 			T309_ = !(quirkyExceptions);
45687 			if (!(T309_)) goto LA310_;
45688 			T311_ = NIM_NIL;
45689 			T311_ = getCompilerProc__magicsys_145((*(*(*p).module).g).graph, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1105));
45690 			T309_ = !((T311_ == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
45691 			LA310_: ;
45692 			if (!T309_) goto LA312_;
45693 			T314_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45694 			T314_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45695 			res_24 = rawNewString(((NI) 80));
45696 			res_24 = resizeString(res_24, 4);
45697 appendString(res_24, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
45698 			cgFormatValue__cgen_141((&res_24), safePoint);
45699 			res_24 = resizeString(res_24, 14);
45700 appendString(res_24, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1038));
45701 			T315_ = NIM_NIL;
45702 			T315_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1105));
45703 			cgFormatValue__cgen_141((&res_24), T315_);
45704 			res_24 = resizeString(res_24, 3);
45705 appendString(res_24, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
45706 			{
45707 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA318_;
45708 				res_24 = resizeString(res_24, 1);
45709 appendString(res_24, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45710 			}
45711 			LA318_: ;
45712 			T320_ = NIM_NIL;
45713 			T320_ = rope__ropes_109(res_24);
45714 			T321_ = NIM_NIL;
45715 			T321_ = indentLine__cgen_280(p, T320_);
45716 			add__ropes_159(T314_, T321_);
45717 		}
45718 		LA312_: ;
45719 		endBlock__cgen_13210(p);
45720 		T322_ = NIM_NIL;
45721 		T322_ = pop__ropes_180((&(*p).finallySafePoints));
45722 		(void)(T322_);
45723 	}
45724 	LA296_: ;
45725 	{
45726 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T327_;
45727 		NimStringDesc* res_25;
45728 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T328_;
45729 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T333_;
45730 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T334_;
45731 		if (!!(quirkyExceptions)) goto LA325_;
45732 		T327_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45733 		T327_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45734 		res_25 = rawNewString(((NI) 80));
45735 		res_25 = resizeString(res_25, 4);
45736 appendString(res_25, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_349));
45737 		cgFormatValue__cgen_141((&res_25), safePoint);
45738 		res_25 = resizeString(res_25, 14);
45739 appendString(res_25, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1038));
45740 		T328_ = NIM_NIL;
45741 		T328_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1106));
45742 		cgFormatValue__cgen_141((&res_25), T328_);
45743 		res_25 = resizeString(res_25, 3);
45744 appendString(res_25, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
45745 		{
45746 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA331_;
45747 			res_25 = resizeString(res_25, 1);
45748 appendString(res_25, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45749 		}
45750 		LA331_: ;
45751 		T333_ = NIM_NIL;
45752 		T333_ = rope__ropes_109(res_25);
45753 		T334_ = NIM_NIL;
45754 		T334_ = indentLine__cgen_280(p, T333_);
45755 		add__ropes_159(T327_, T334_);
45756 	}
45757 	LA325_: ;
45758 }
N_INLINE(void,genSimpleBlock__cgen_13480)45759 static N_INLINE(void, genSimpleBlock__cgen_13480)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* stmts) {
45760 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T1_;
45761 	NimStringDesc* res;
45762 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T6_;
45763 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
45764 	NI T8_;
45765 	T1_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45766 	T1_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45767 	res = rawNewString(((NI) 80));
45768 	res = resizeString(res, 1);
45769 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
45770 	{
45771 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA4_;
45772 		res = resizeString(res, 1);
45773 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45774 	}
45775 	LA4_: ;
45776 	T6_ = NIM_NIL;
45777 	T6_ = rope__ropes_109(res);
45778 	T7_ = NIM_NIL;
45779 	T7_ = indentLine__cgen_280(p, T6_);
45780 	add__ropes_159(T1_, T7_);
45781 	T8_ = (NI)0;
45782 	T8_ = startBlockInternal__cgen_13189(p);
45783 	genStmts__cgen_11457(p, stmts);
45784 	endBlock__cgen_13210(p);
45785 }
N_NIMCALL(void,finallyActions__cgen_14776)45786 N_LIB_PRIVATE N_NIMCALL(void, finallyActions__cgen_14776)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p) {
45787 	{
45788 		NIM_BOOL T3_;
45789 		NIM_BOOL T4_;
45790 		NI T6_;
45791 		tyTuple__FxkU4d1VDodDMc9ah6Mbagw* T8_;
45792 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* finallyBlock;
45793 		tyTuple__FxkU4d1VDodDMc9ah6Mbagw* T11_;
45794 		T3_ = (NIM_BOOL)0;
45795 		T4_ = (NIM_BOOL)0;
45796 		T4_ = !(((*(*(*(*p).module).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 3)));
45797 		if (!(T4_)) goto LA5_;
45798 		T6_ = ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0);
45799 		T4_ = (((NI) 0) < T6_);
45800 		LA5_: ;
45801 		T3_ = T4_;
45802 		if (!(T3_)) goto LA7_;
45803 		T8_ = (tyTuple__FxkU4d1VDodDMc9ah6Mbagw*)0;
45804 		T8_ = X5BX5D___cgen_14745((*p).nestedTryStmts->data, ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0), ((NI) 1));
45805 		T3_ = (*T8_).Field1;
45806 		LA7_: ;
45807 		if (!T3_) goto LA9_;
45808 		T11_ = (tyTuple__FxkU4d1VDodDMc9ah6Mbagw*)0;
45809 		T11_ = X5BX5D___cgen_14745((*p).nestedTryStmts->data, ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0), ((NI) 1));
45810 		finallyBlock = (*T11_).Field0;
45811 		{
45812 			if (!!((finallyBlock == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA14_;
45813 			genSimpleBlock__cgen_13480(p, (*finallyBlock)._kind_6.sons->data[((NI) 0)]);
45814 		}
45815 		LA14_: ;
45816 	}
45817 	LA9_: ;
45818 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14858)45819 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14858)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
45820 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
45821 	result = NIM_NIL;
45822 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1107), args, argsLen_0);
45823 	return result;
45824 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14901)45825 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14901)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
45826 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
45827 	result = NIM_NIL;
45828 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1110), args, argsLen_0);
45829 	return result;
45830 }
N_NIMCALL(void,genRaiseStmt__cgen_14840)45831 N_LIB_PRIVATE N_NIMCALL(void, genRaiseStmt__cgen_14840)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t) {
45832 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* gotoInstr;
45833 	{
45834 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
45835 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* e;
45836 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
45837 		tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
45838 		if (!!(((*(*t)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA3_;
45839 		nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
45840 		initLocExprSingleUse__cgen_11487(p, (*t)._kind_6.sons->data[((NI) 0)], (&a));
45841 		finallyActions__cgen_14776(p);
45842 		e = rdLoc__cgen_425(a);
45843 		T5_ = NIM_NIL;
45844 		T5_ = getTypeDesc__cgen_6631((*p).module, (*(*t)._kind_6.sons->data[((NI) 0)]).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
45845 		(void)(T5_);
45846 		typ = skipTypes__ast_3735((*(*t)._kind_6.sons->data[((NI) 0)]).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_272);
45847 		{
45848 			NI T10_;
45849 			if (!((*(*(*(*p).module).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 2))) goto LA8_;
45850 			T10_ = (NI)0;
45851 			T10_ = inExceptBlockLen__cgen_13154(p);
45852 			blockLeaveActions__cgen_13564(p, ((NI) 0), T10_);
45853 		}
45854 		LA8_: ;
45855 		genLineDir__cgen_359(p, t);
45856 		{
45857 			NIM_BOOL T13_;
45858 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T16_;
45859 			tyArray__JiWwrsTRC6xqNlGcBthSVA T17_;
45860 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
45861 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
45862 			T13_ = (NIM_BOOL)0;
45863 			T13_ = isImportedException__ast_4904(typ, (*(*(*p).module).g).config);
45864 			if (!T13_) goto LA14_;
45865 			T16_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45866 			T16_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45867 			nimZeroMem((void*)T17_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
45868 			T17_[0] = e;
45869 			T18_ = NIM_NIL;
45870 			T18_ = percent___cgen_14858(T17_, 1);
45871 			T19_ = NIM_NIL;
45872 			T19_ = indentLine__cgen_280(p, T18_);
45873 			add__ropes_159(T16_, T19_);
45874 		}
45875 		goto LA11_;
45876 		LA14_: ;
45877 		{
45878 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T21_;
45879 			NimStringDesc* res;
45880 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
45881 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
45882 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
45883 			NimStringDesc* T25_;
45884 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T31_;
45885 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
45886 			NI T33_;
45887 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
45888 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
45889 			T21_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45890 			T21_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45891 			res = rawNewString(((NI) 80));
45892 			T22_ = NIM_NIL;
45893 			T22_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1108));
45894 			cgFormatValue__cgen_141((&res), T22_);
45895 			res = resizeString(res, 2);
45896 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_218));
45897 			T23_ = NIM_NIL;
45898 			T23_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1069));
45899 			cgFormatValue__cgen_141((&res), T23_);
45900 			res = resizeString(res, 2);
45901 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1109));
45902 			cgFormatValue__cgen_141((&res), e);
45903 			res = resizeString(res, 2);
45904 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
45905 			T24_ = NIM_NIL;
45906 			T24_ = makeCString__msgs_50((*(*(*typ).sym).name).s);
45907 			cgFormatValue__cgen_141((&res), T24_);
45908 			res = resizeString(res, 2);
45909 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
45910 			T25_ = NIM_NIL;
45911 			{
45912 				if (!!(((*p).prc == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA28_;
45913 				T25_ = copyString((*(*(*p).prc).name).s);
45914 			}
45915 			goto LA26_;
45916 			LA28_: ;
45917 			{
45918 				T25_ = copyString((*(*(*(*p).module).module).name).s);
45919 			}
45920 			LA26_: ;
45921 			T31_ = NIM_NIL;
45922 			T31_ = makeCString__msgs_50(T25_);
45923 			cgFormatValue__cgen_141((&res), T31_);
45924 			res = resizeString(res, 2);
45925 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
45926 			T32_ = NIM_NIL;
45927 			T32_ = quotedFilename__msgs_1464((*(*(*p).module).g).config, (*t).info);
45928 			cgFormatValue__cgen_141((&res), T32_);
45929 			res = resizeString(res, 2);
45930 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_37));
45931 			T33_ = (NI)0;
45932 			T33_ = toLinenumber__msgs_609((*t).info);
45933 			cgFormatValue__cgen_148((&res), ((NI64) (T33_)));
45934 			res = resizeString(res, 2);
45935 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_103));
45936 			{
45937 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA36_;
45938 				res = resizeString(res, 1);
45939 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45940 			}
45941 			LA36_: ;
45942 			T38_ = NIM_NIL;
45943 			T38_ = rope__ropes_109(res);
45944 			T39_ = NIM_NIL;
45945 			T39_ = indentLine__cgen_280(p, T38_);
45946 			add__ropes_159(T21_, T39_);
45947 			{
45948 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T44_;
45949 				NimStringDesc* res_2;
45950 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T49_;
45951 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
45952 				if (!(((*(*(*(*p).module).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 42))&63U)))!=0)) goto LA42_;
45953 				T44_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45954 				T44_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45955 				res_2 = rawNewString(((NI) 80));
45956 				cgFormatValue__cgen_141((&res_2), e);
45957 				res_2 = resizeString(res_2, 11);
45958 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_390));
45959 				{
45960 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA47_;
45961 					res_2 = resizeString(res_2, 1);
45962 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
45963 				}
45964 				LA47_: ;
45965 				T49_ = NIM_NIL;
45966 				T49_ = rope__ropes_109(res_2);
45967 				T50_ = NIM_NIL;
45968 				T50_ = indentLine__cgen_280(p, T49_);
45969 				add__ropes_159(T44_, T50_);
45970 			}
45971 			LA42_: ;
45972 		}
45973 		LA11_: ;
45974 	}
45975 	goto LA1_;
45976 	LA3_: ;
45977 	{
45978 		finallyActions__cgen_14776(p);
45979 		genLineDir__cgen_359(p, t);
45980 		{
45981 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T56_;
45982 			tyArray__qTjAvTvKF9anytN1At69aJMQ T57_;
45983 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
45984 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
45985 			if (!((*(*(*(*p).module).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 2))) goto LA54_;
45986 			T56_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
45987 			T56_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
45988 			nimZeroMem((void*)T57_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
45989 			T58_ = NIM_NIL;
45990 			T58_ = percent___cgen_14901(T57_, 0);
45991 			T59_ = NIM_NIL;
45992 			T59_ = indentLine__cgen_280(p, T58_);
45993 			add__ropes_159(T56_, T59_);
45994 		}
45995 		goto LA52_;
45996 		LA54_: ;
45997 		{
45998 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T61_;
45999 			NimStringDesc* res_3;
46000 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T62_;
46001 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T67_;
46002 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
46003 			T61_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46004 			T61_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46005 			res_3 = rawNewString(((NI) 80));
46006 			T62_ = NIM_NIL;
46007 			T62_ = cgsym__cgen_120((*p).module, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1106));
46008 			cgFormatValue__cgen_141((&res_3), T62_);
46009 			res_3 = resizeString(res_3, 3);
46010 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
46011 			{
46012 				if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA65_;
46013 				res_3 = resizeString(res_3, 1);
46014 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
46015 			}
46016 			LA65_: ;
46017 			T67_ = NIM_NIL;
46018 			T67_ = rope__ropes_109(res_3);
46019 			T68_ = NIM_NIL;
46020 			T68_ = indentLine__cgen_280(p, T67_);
46021 			add__ropes_159(T61_, T68_);
46022 		}
46023 		LA52_: ;
46024 	}
46025 	LA1_: ;
46026 	gotoInstr = raiseInstr__cgen_414(p);
46027 	{
46028 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T73_;
46029 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T74_;
46030 		if (!!((gotoInstr == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA71_;
46031 		T73_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46032 		T73_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46033 		T74_ = NIM_NIL;
46034 		T74_ = indentLine__cgen_280(p, gotoInstr);
46035 		add__ropes_159(T73_, T74_);
46036 	}
46037 	LA71_: ;
46038 }
N_NIMCALL(void,genTypeSection__cgen_10277)46039 N_LIB_PRIVATE N_NIMCALL(void, genTypeSection__cgen_10277)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
46040 }
N_NIMCALL(tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg,determineSection__cgen_17247)46041 N_LIB_PRIVATE N_NIMCALL(tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg, determineSection__cgen_17247)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
46042 	tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg result;
46043 	result = (tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg)0;
46044 	result = ((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 8);
46045 	{
46046 		NIM_BOOL T3_;
46047 		NI T4_;
46048 		NimStringDesc* sec;
46049 		T3_ = (NIM_BOOL)0;
46050 		T4_ = (NI)0;
46051 		T4_ = len__ast_3198(n);
46052 		T3_ = (((NI) 1) <= T4_);
46053 		if (!(T3_)) goto LA5_;
46054 		T3_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*(*n)._kind_6.sons->data[((NI) 0)]).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22));
46055 		LA5_: ;
46056 		if (!T3_) goto LA6_;
46057 		sec = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_3.strVal;
46058 		{
46059 			NIM_BOOL T10_;
46060 			T10_ = (NIM_BOOL)0;
46061 			T10_ = nsuStartsWith(sec, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1111));
46062 			if (!T10_) goto LA11_;
46063 			result = ((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4);
46064 		}
46065 		goto LA8_;
46066 		LA11_: ;
46067 		{
46068 			NIM_BOOL T14_;
46069 			T14_ = (NIM_BOOL)0;
46070 			T14_ = nsuStartsWith(sec, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1112));
46071 			if (!T14_) goto LA15_;
46072 			result = ((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10);
46073 		}
46074 		goto LA8_;
46075 		LA15_: ;
46076 		{
46077 			NIM_BOOL T18_;
46078 			T18_ = (NIM_BOOL)0;
46079 			T18_ = nsuStartsWith(sec, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1113));
46080 			if (!T18_) goto LA19_;
46081 			result = ((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 1);
46082 		}
46083 		goto LA8_;
46084 		LA19_: ;
46085 		LA8_: ;
46086 	}
46087 	LA6_: ;
46088 	return result;
46089 }
N_NIMCALL(void,genEmit__cgen_17269)46090 N_LIB_PRIVATE N_NIMCALL(void, genEmit__cgen_17269)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t) {
46091 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* s;
46092 	s = genAsmOrEmitStmt__cgen_17188(p, (*t)._kind_6.sons->data[((NI) 1)], NIM_FALSE);
46093 	{
46094 		tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg section;
46095 		if (!((*p).prc == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA3_;
46096 		section = determineSection__cgen_17247((*t)._kind_6.sons->data[((NI) 1)]);
46097 		genCLineDir__cgen_351(&(*(*p).module).s[(section)- 0], (*t).info, (*(*(*p).module).g).config);
46098 		add__ropes_159(&(*(*p).module).s[(section)- 0], s);
46099 	}
46100 	goto LA1_;
46101 	LA3_: ;
46102 	{
46103 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T6_;
46104 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
46105 		genLineDir__cgen_359(p, t);
46106 		T6_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46107 		T6_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46108 		T7_ = NIM_NIL;
46109 		T7_ = indentLine__cgen_280(p, s);
46110 		add__ropes_159(T6_, T7_);
46111 	}
46112 	LA1_: ;
46113 }
N_NIMCALL(void,genPragma__cgen_17280)46114 N_LIB_PRIVATE N_NIMCALL(void, genPragma__cgen_17280)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
46115 	{
46116 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw** it;
46117 		tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* colontmp_;
46118 		NI i;
46119 		NI L;
46120 		NI T2_;
46121 		it = (tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw**)0;
46122 		colontmp_ = NIM_NIL;
46123 		colontmp_ = (*n)._kind_6.sons;
46124 		i = ((NI) 0);
46125 		T2_ = (colontmp_ ? colontmp_->Sup.len : 0);
46126 		L = T2_;
46127 		{
46128 			while (1) {
46129 				tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw T5_;
46130 				if (!(i < L)) goto LA4;
46131 				it = &colontmp_->data[i];
46132 				T5_ = (tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw)0;
46133 				T5_ = whichPragma__trees_244((*it));
46134 				switch (T5_) {
46135 				case ((tyEnum_TSpecialWord__ycbpMCRV6Cd2eBh3X9biEiw) 214):
46136 				{
46137 					genEmit__cgen_17269(p, (*it));
46138 				}
46139 				break;
46140 				default:
46141 				{
46142 				}
46143 				break;
46144 				}
46145 				i += ((NI) 1);
46146 			} LA4: ;
46147 		}
46148 	}
46149 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14622)46150 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14622)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
46151 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
46152 	result = NIM_NIL;
46153 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1114), args, argsLen_0);
46154 	return result;
46155 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14628)46156 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14628)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
46157 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
46158 	result = NIM_NIL;
46159 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1115), args, argsLen_0);
46160 	return result;
46161 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_14636)46162 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_14636)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
46163 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
46164 	result = NIM_NIL;
46165 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1116), args, argsLen_0);
46166 	return result;
46167 }
N_NIMCALL(void,genParForStmt__cgen_14583)46168 N_LIB_PRIVATE N_NIMCALL(void, genParForStmt__cgen_14583)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t) {
46169 	NI oldBreakIdxX60gensym1980_;
46170 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* forLoopVar;
46171 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA rangeA;
46172 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA rangeB;
46173 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* call;
46174 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T27_;
46175 	NimStringDesc* res;
46176 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T32_;
46177 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
46178 	(*p).withinLoop += ((NI) 1);
46179 	genLineDir__cgen_359(p, t);
46180 	oldBreakIdxX60gensym1980_ = (*p).breakIdx;
46181 	forLoopVar = (*(*t)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
46182 	nimZeroMem((void*)(&rangeA), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
46183 	nimZeroMem((void*)(&rangeB), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
46184 	assignLocalVar__cgen_11099(p, (*t)._kind_6.sons->data[((NI) 0)]);
46185 	call = (*t)._kind_6.sons->data[((NI) 1)];
46186 	initLocExpr__cgen_11483(p, (*call)._kind_6.sons->data[((NI) 1)], (&rangeA));
46187 	initLocExpr__cgen_11483(p, (*call)._kind_6.sons->data[((NI) 2)], (&rangeB));
46188 	{
46189 		NI T3_;
46190 		T3_ = (NI)0;
46191 		T3_ = len__ast_3198(call);
46192 		if (!(T3_ == ((NI) 4))) goto LA4_;
46193 		{
46194 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
46195 			tyArray__f7nG5LD47BH5K9c6mASit3g T11_;
46196 			NimStringDesc* T12_;
46197 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
46198 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
46199 			if (!eqStrings((*(*(*(*call)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).s, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_421))) goto LA8_;
46200 			T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46201 			T10_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46202 			nimZeroMem((void*)T11_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
46203 			T11_[0] = rdLoc__cgen_425((*forLoopVar).loc);
46204 			T11_[1] = rdLoc__cgen_425(rangeA);
46205 			T11_[2] = rdLoc__cgen_425(rangeB);
46206 			T12_ = NIM_NIL;
46207 			T12_ = getStr__ast_4610((*call)._kind_6.sons->data[((NI) 3)]);
46208 			T11_[3] = rope__ropes_109(T12_);
46209 			T13_ = NIM_NIL;
46210 			T13_ = percent___cgen_14622(T11_, 4);
46211 			T14_ = NIM_NIL;
46212 			T14_ = indentLine__cgen_280(p, T13_);
46213 			add__ropes_159(T10_, T14_);
46214 		}
46215 		goto LA6_;
46216 		LA8_: ;
46217 		{
46218 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T16_;
46219 			tyArray__f7nG5LD47BH5K9c6mASit3g T17_;
46220 			NimStringDesc* T18_;
46221 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
46222 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
46223 			T16_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46224 			T16_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46225 			nimZeroMem((void*)T17_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
46226 			T17_[0] = rdLoc__cgen_425((*forLoopVar).loc);
46227 			T17_[1] = rdLoc__cgen_425(rangeA);
46228 			T17_[2] = rdLoc__cgen_425(rangeB);
46229 			T18_ = NIM_NIL;
46230 			T18_ = getStr__ast_4610((*call)._kind_6.sons->data[((NI) 3)]);
46231 			T17_[3] = rope__ropes_109(T18_);
46232 			T19_ = NIM_NIL;
46233 			T19_ = percent___cgen_14628(T17_, 4);
46234 			T20_ = NIM_NIL;
46235 			T20_ = indentLine__cgen_280(p, T19_);
46236 			add__ropes_159(T16_, T20_);
46237 		}
46238 		LA6_: ;
46239 	}
46240 	goto LA1_;
46241 	LA4_: ;
46242 	{
46243 		tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA step;
46244 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T22_;
46245 		tyArray__duFhZXIIlrbrM62cWjNekg T23_;
46246 		NimStringDesc* T24_;
46247 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
46248 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
46249 		nimZeroMem((void*)(&step), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
46250 		initLocExpr__cgen_11483(p, (*call)._kind_6.sons->data[((NI) 3)], (&step));
46251 		T22_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46252 		T22_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46253 		nimZeroMem((void*)T23_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
46254 		T23_[0] = rdLoc__cgen_425((*forLoopVar).loc);
46255 		T23_[1] = rdLoc__cgen_425(rangeA);
46256 		T23_[2] = rdLoc__cgen_425(rangeB);
46257 		T23_[3] = rdLoc__cgen_425(step);
46258 		T24_ = NIM_NIL;
46259 		T24_ = getStr__ast_4610((*call)._kind_6.sons->data[((NI) 4)]);
46260 		T23_[4] = rope__ropes_109(T24_);
46261 		T25_ = NIM_NIL;
46262 		T25_ = percent___cgen_14636(T23_, 5);
46263 		T26_ = NIM_NIL;
46264 		T26_ = indentLine__cgen_280(p, T25_);
46265 		add__ropes_159(T22_, T26_);
46266 	}
46267 	LA1_: ;
46268 	T27_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46269 	T27_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46270 	res = rawNewString(((NI) 80));
46271 	res = resizeString(res, 1);
46272 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
46273 	{
46274 		if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA30_;
46275 		res = resizeString(res, 1);
46276 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
46277 	}
46278 	LA30_: ;
46279 	T32_ = NIM_NIL;
46280 	T32_ = rope__ropes_109(res);
46281 	T33_ = NIM_NIL;
46282 	T33_ = indentLine__cgen_280(p, T32_);
46283 	add__ropes_159(T27_, T33_);
46284 	(*p).breakIdx = startBlockInternal__cgen_13189(p);
46285 	(*p).blocks->data[(*p).breakIdx].isLoop = NIM_TRUE;
46286 	genStmts__cgen_11457(p, (*t)._kind_6.sons->data[((NI) 2)]);
46287 	endBlock__cgen_13210(p);
46288 	(*p).breakIdx = oldBreakIdxX60gensym1980_;
46289 	(*p).withinLoop -= ((NI) 1);
46290 }
N_NIMCALL(void,genState__cgen_13516)46291 N_LIB_PRIVATE N_NIMCALL(void, genState__cgen_13516)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
46292 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n0;
46293 	{
46294 		NI T3_;
46295 		NimStringDesc* argX60gensym1670_;
46296 		T3_ = (NI)0;
46297 		T3_ = len__ast_3198(n);
46298 		if (!!((T3_ == ((NI) 1)))) goto LA4_;
46299 		argX60gensym1670_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_1117);
46300 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, argX60gensym1670_, TM__MQdRN7fpbG7rPm4JpVVAhA_1117);
46301 	}
46302 	LA4_: ;
46303 	n0 = (*n)._kind_6.sons->data[((NI) 0)];
46304 	{
46305 		NI64 idx;
46306 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T10_;
46307 		NimStringDesc* res;
46308 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
46309 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
46310 		if (!((*n0).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6))) goto LA8_;
46311 		idx = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_1.intVal;
46312 		T10_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46313 		T10_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46314 		res = rawNewString(((NI) 80));
46315 		res = resizeString(res, 5);
46316 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1118));
46317 		cgFormatValue__cgen_148((&res), idx);
46318 		res = resizeString(res, 3);
46319 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1119));
46320 		{
46321 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA13_;
46322 			res = resizeString(res, 1);
46323 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
46324 		}
46325 		LA13_: ;
46326 		T15_ = NIM_NIL;
46327 		T15_ = rope__ropes_109(res);
46328 		T16_ = NIM_NIL;
46329 		T16_ = indentLine__cgen_280(p, T15_);
46330 		add__ropes_159(T10_, T16_);
46331 	}
46332 	goto LA6_;
46333 	LA8_: ;
46334 	{
46335 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T20_;
46336 		NimStringDesc* res_2;
46337 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
46338 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
46339 		if (!((*n0).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20))) goto LA18_;
46340 		T20_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46341 		T20_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46342 		res_2 = rawNewString(((NI) 80));
46343 		cgFormatValue__cgen_145((&res_2), (*n0)._kind_3.strVal);
46344 		res_2 = resizeString(res_2, 3);
46345 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1119));
46346 		{
46347 			if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA23_;
46348 			res_2 = resizeString(res_2, 1);
46349 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
46350 		}
46351 		LA23_: ;
46352 		T25_ = NIM_NIL;
46353 		T25_ = rope__ropes_109(res_2);
46354 		T26_ = NIM_NIL;
46355 		T26_ = indentLine__cgen_280(p, T25_);
46356 		add__ropes_159(T20_, T26_);
46357 	}
46358 	goto LA6_;
46359 	LA18_: ;
46360 	LA6_: ;
46361 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13693)46362 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13693)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
46363 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
46364 	result = NIM_NIL;
46365 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1120), args, argsLen_0);
46366 	return result;
46367 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13701)46368 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13701)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
46369 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
46370 	result = NIM_NIL;
46371 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1121), args, argsLen_0);
46372 	return result;
46373 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13728)46374 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13728)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
46375 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
46376 	result = NIM_NIL;
46377 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1123), args, argsLen_0);
46378 	return result;
46379 }
N_NIMCALL(void,genGotoState__cgen_13679)46380 N_LIB_PRIVATE N_NIMCALL(void, genGotoState__cgen_13679)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
46381 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
46382 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T1_;
46383 	tyArray__JiWwrsTRC6xqNlGcBthSVA T2_;
46384 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
46385 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
46386 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T5_;
46387 	tyArray__qTjAvTvKF9anytN1At69aJMQ T6_;
46388 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
46389 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
46390 	NI T9_;
46391 	NI T10_;
46392 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T11_;
46393 	tyArray__qTjAvTvKF9anytN1At69aJMQ T12_;
46394 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
46395 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
46396 	tyObject_Int128__9a9axPfb75jdWY25AamJewkA statesCounter;
46397 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* prefix;
46398 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T37_;
46399 	tyArray__qTjAvTvKF9anytN1At69aJMQ T38_;
46400 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T39_;
46401 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
46402 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
46403 	initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 0)], (&a));
46404 	T1_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46405 	T1_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46406 	nimZeroMem((void*)T2_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
46407 	T2_[0] = rdLoc__cgen_425(a);
46408 	T3_ = NIM_NIL;
46409 	T3_ = percent___cgen_13684(T2_, 1);
46410 	T4_ = NIM_NIL;
46411 	T4_ = indentLine__cgen_280(p, T3_);
46412 	add__ropes_159(T1_, T4_);
46413 	(*p).flags |= ((NU8)1)<<((((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 0)) & 7);
46414 	T5_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46415 	T5_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46416 	nimZeroMem((void*)T6_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
46417 	T7_ = NIM_NIL;
46418 	T7_ = percent___cgen_13693(T6_, 0);
46419 	T8_ = NIM_NIL;
46420 	T8_ = indentLine__cgen_280(p, T7_);
46421 	add__ropes_159(T5_, T8_);
46422 	T9_ = ((*p).nestedTryStmts ? (*p).nestedTryStmts->Sup.len : 0);
46423 	T10_ = (NI)0;
46424 	T10_ = inExceptBlockLen__cgen_13154(p);
46425 	blockLeaveActions__cgen_13564(p, T9_, T10_);
46426 	T11_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46427 	T11_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46428 	nimZeroMem((void*)T12_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
46429 	T13_ = NIM_NIL;
46430 	T13_ = percent___cgen_13701(T12_, 0);
46431 	T14_ = NIM_NIL;
46432 	T14_ = indentLine__cgen_280(p, T13_);
46433 	add__ropes_159(T11_, T14_);
46434 	statesCounter = lastOrd__types_1465((*(*(*p).module).g).config, (*(*n)._kind_6.sons->data[((NI) 0)]).typ);
46435 	{
46436 		NIM_BOOL T17_;
46437 		NI T18_;
46438 		T17_ = (NIM_BOOL)0;
46439 		T18_ = (NI)0;
46440 		T18_ = len__ast_3198(n);
46441 		T17_ = (((NI) 2) <= T18_);
46442 		if (!(T17_)) goto LA19_;
46443 		T17_ = ((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6));
46444 		LA19_: ;
46445 		if (!T17_) goto LA20_;
46446 		statesCounter = getInt__ast_4592((*n)._kind_6.sons->data[((NI) 1)]);
46447 	}
46448 	LA20_: ;
46449 	{
46450 		NIM_BOOL T24_;
46451 		NI T25_;
46452 		T24_ = (NIM_BOOL)0;
46453 		T25_ = (NI)0;
46454 		T25_ = len__ast_3198(n);
46455 		T24_ = (T25_ == ((NI) 3));
46456 		if (!(T24_)) goto LA26_;
46457 		T24_ = ((*(*n)._kind_6.sons->data[((NI) 2)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20));
46458 		LA26_: ;
46459 		if (!T24_) goto LA27_;
46460 		prefix = rope__ropes_109((*(*n)._kind_6.sons->data[((NI) 2)])._kind_3.strVal);
46461 	}
46462 	goto LA22_;
46463 	LA27_: ;
46464 	{
46465 		prefix = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1122));
46466 	}
46467 	LA22_: ;
46468 	{
46469 		NI64 i;
46470 		NI64 colontmp_;
46471 		NI64 res;
46472 		i = (NI64)0;
46473 		colontmp_ = (NI64)0;
46474 		colontmp_ = toInt64__int495056_88(statesCounter);
46475 		res = IL64(0);
46476 		{
46477 			while (1) {
46478 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T33_;
46479 				tyArray__mrugoXXRZUEeG9bEXo9auBKw T34_;
46480 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T35_;
46481 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
46482 				if (!(res <= colontmp_)) goto LA32;
46483 				i = res;
46484 				T33_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46485 				T33_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46486 				nimZeroMem((void*)T34_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
46487 				T34_[0] = prefix;
46488 				T34_[1] = rope__ropes_115(i);
46489 				T35_ = NIM_NIL;
46490 				T35_ = percent___cgen_13728(T34_, 2);
46491 				T36_ = NIM_NIL;
46492 				T36_ = indentLine__cgen_280(p, T35_);
46493 				add__ropes_159(T33_, T36_);
46494 				res += ((NI) 1);
46495 			} LA32: ;
46496 		}
46497 	}
46498 	T37_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
46499 	T37_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
46500 	nimZeroMem((void*)T38_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
46501 	T39_ = NIM_NIL;
46502 	T39_ = percent___cgen_7505(T38_, 0);
46503 	T40_ = NIM_NIL;
46504 	T40_ = indentLine__cgen_280(p, T39_);
46505 	add__ropes_159(T37_, T40_);
46506 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13749)46507 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13749)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
46508 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
46509 	result = NIM_NIL;
46510 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1124), args, argsLen_0);
46511 	return result;
46512 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_13755)46513 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_13755)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
46514 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
46515 	result = NIM_NIL;
46516 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1125), args, argsLen_0);
46517 	return result;
46518 }
N_NIMCALL(void,genBreakState__cgen_13737)46519 N_LIB_PRIVATE N_NIMCALL(void, genBreakState__cgen_13737)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
46520 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
46521 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
46522 	initLoc__cgen_60(d, ((tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg) 6), n, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
46523 	{
46524 		tyArray__JiWwrsTRC6xqNlGcBthSVA T5_;
46525 		if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 155))) goto LA3_;
46526 		initLocExpr__cgen_11483(p, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)], (&a));
46527 		nimZeroMem((void*)T5_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
46528 		T5_[0] = rdLoc__cgen_425(a);
46529 		unsureAsgnRef((void**) (&(*d).r), percent___cgen_13749(T5_, 1));
46530 	}
46531 	goto LA1_;
46532 	LA3_: ;
46533 	{
46534 		tyArray__JiWwrsTRC6xqNlGcBthSVA T7_;
46535 		initLocExpr__cgen_11483(p, (*n)._kind_6.sons->data[((NI) 0)], (&a));
46536 		nimZeroMem((void*)T7_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
46537 		T7_[0] = rdLoc__cgen_425(a);
46538 		unsureAsgnRef((void**) (&(*d).r), percent___cgen_13755(T7_, 1));
46539 	}
46540 	LA1_: ;
46541 }
N_NIMCALL(void,expr__cgen_11460)46542 N_LIB_PRIVATE N_NIMCALL(void, expr__cgen_11460)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA* d) {
46543 	(*p).currLineInfo = (*n).info;
46544 	switch ((*n).kind) {
46545 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
46546 	{
46547 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
46548 		sym = (*n)._kind_4.sym;
46549 		switch ((*sym).kind) {
46550 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 14):
46551 		{
46552 			{
46553 				NIM_BOOL T5_;
46554 				T5_ = (NIM_BOOL)0;
46555 				T5_ = (((*(*p).module).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 6))&7U)))!=0);
46556 				if (T5_) goto LA6_;
46557 				T5_ = !(((1073741840 & (*sym).flags) == 0));
46558 				LA6_: ;
46559 				if (!T5_) goto LA7_;
46560 				fillProcLoc__cgen_11428((*p).module, n);
46561 				genProcPrototype__cgen_11464((*p).module, sym);
46562 			}
46563 			goto LA3_;
46564 			LA7_: ;
46565 			{
46566 				genProc__cgen_411((*p).module, sym);
46567 			}
46568 			LA3_: ;
46569 			putLocIntoDest__cgen_11467(p, d, (*sym).loc);
46570 		}
46571 		break;
46572 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 12):
46573 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 16):
46574 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 15):
46575 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 13):
46576 		{
46577 			{
46578 				NimStringDesc* T15_;
46579 				if (!(((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 28))&63U)))!=0)) goto LA13_;
46580 				T15_ = NIM_NIL;
46581 				T15_ = rawNewString(((*(*sym).name).s ? (*(*sym).name).s->Sup.len : 0) + 48);
46582 appendString(T15_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_511));
46583 appendString(T15_, (*(*sym).name).s);
46584 				liMessage__msgs_1118((*(*(*p).module).g).config, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T15_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__MQdRN7fpbG7rPm4JpVVAhA_512, NIM_FALSE);
46585 			}
46586 			LA13_: ;
46587 			{
46588 				NIM_BOOL T18_;
46589 				T18_ = (NIM_BOOL)0;
46590 				T18_ = (((*(*p).module).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 6))&7U)))!=0);
46591 				if (!(T18_)) goto LA19_;
46592 				T18_ = !(((*(*sym).typ).callConv == ((tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA) 5)));
46593 				LA19_: ;
46594 				if (!T18_) goto LA20_;
46595 				fillProcLoc__cgen_11428((*p).module, n);
46596 				genProcPrototype__cgen_11464((*p).module, sym);
46597 			}
46598 			goto LA16_;
46599 			LA20_: ;
46600 			{
46601 				genProc__cgen_411((*p).module, sym);
46602 			}
46603 			LA16_: ;
46604 			{
46605 				NIM_BOOL T25_;
46606 				NimStringDesc* T29_;
46607 				T25_ = (NIM_BOOL)0;
46608 				T25_ = ((*sym).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
46609 				if (T25_) goto LA26_;
46610 				T25_ = ((*sym).loc.lode == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
46611 				LA26_: ;
46612 				if (!T25_) goto LA27_;
46613 				T29_ = NIM_NIL;
46614 				T29_ = rawNewString(((*(*sym).name).s ? (*(*sym).name).s->Sup.len : 0) + 20);
46615 appendString(T29_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_513));
46616 appendString(T29_, (*(*sym).name).s);
46617 				internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, T29_, TM__MQdRN7fpbG7rPm4JpVVAhA_514);
46618 			}
46619 			LA27_: ;
46620 			putLocIntoDest__cgen_11467(p, d, (*sym).loc);
46621 		}
46622 		break;
46623 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 10):
46624 		{
46625 			{
46626 				NIM_BOOL T33_;
46627 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
46628 				T33_ = (NIM_BOOL)0;
46629 				T33_ = isSimpleConst__cgen_89((*sym).typ);
46630 				if (!T33_) goto LA34_;
46631 				T36_ = NIM_NIL;
46632 				T36_ = genLiteral__cgen_17638(p, (*sym).ast, (*sym).typ);
46633 				putIntoDest__cgen_18656(p, d, n, T36_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 1));
46634 			}
46635 			goto LA31_;
46636 			LA34_: ;
46637 			{
46638 				if (!(((*(*p).module).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 6))&7U)))!=0)) goto LA38_;
46639 				genConstHeader__cgen_24255((*p).module, (*p).module, p, sym);
46640 				putLocIntoDest__cgen_11467(p, d, (*sym).loc);
46641 			}
46642 			goto LA31_;
46643 			LA38_: ;
46644 			{
46645 				genComplexConst__cgen_23978(p, sym, d);
46646 			}
46647 			LA31_: ;
46648 		}
46649 		break;
46650 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 20):
46651 		{
46652 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
46653 			T42_ = NIM_NIL;
46654 			T42_ = rope__ropes_115(((NI64) ((*sym).position)));
46655 			putIntoDest__cgen_18656(p, d, n, T42_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
46656 		}
46657 		break;
46658 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8):
46659 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 21):
46660 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 11):
46661 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 9):
46662 		{
46663 			{
46664 				if (!!(((67108872 & (*sym).flags) == 0))) goto LA46_;
46665 				genVarPrototype__cgen_11451((*p).module, n);
46666 				{
46667 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T52_;
46668 					if (!(((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 28))&63U)))!=0)) goto LA50_;
46669 					T52_ = NIM_NIL;
46670 					T52_ = astdef__ast_3483(sym);
46671 					genSingleVar__cgen_13806(p, sym, n, T52_);
46672 				}
46673 				LA50_: ;
46674 			}
46675 			LA46_: ;
46676 			{
46677 				NIM_BOOL T55_;
46678 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T57_;
46679 				NimStringDesc* T60_;
46680 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym5642_;
46681 				NimStringDesc* T61_;
46682 				T55_ = (NIM_BOOL)0;
46683 				T55_ = ((*sym).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
46684 				if (T55_) goto LA56_;
46685 				T57_ = NIM_NIL;
46686 				T57_ = t__cgen_79((*sym).loc);
46687 				T55_ = (T57_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
46688 				LA56_: ;
46689 				if (!T55_) goto LA58_;
46690 				T60_ = NIM_NIL;
46691 				xX60gensym5642_ = sym;
46692 				T61_ = NIM_NIL;
46693 				T61_ = dollar___systemZdollars_3((NI)((NI)((NU32)(((NI) ((*xX60gensym5642_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym5642_).Sup.itemId.item))));
46694 				T60_ = rawNewString(((*(*sym).name).s ? (*(*sym).name).s->Sup.len : 0) + (T61_ ? T61_->Sup.len : 0) + 20);
46695 appendString(T60_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_622));
46696 appendString(T60_, (*(*sym).name).s);
46697 appendString(T60_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
46698 appendString(T60_, T61_);
46699 				internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, T60_, TM__MQdRN7fpbG7rPm4JpVVAhA_623);
46700 			}
46701 			LA58_: ;
46702 			{
46703 				if (!(((*sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 26))&63U)))!=0)) goto LA64_;
46704 				accessThreadLocalVar__cgen_406(p, sym);
46705 				{
46706 					NIM_BOOL T68_;
46707 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T71_;
46708 					T68_ = (NIM_BOOL)0;
46709 					T68_ = emulatedThreadVars__cgen_409((*(*(*p).module).g).config);
46710 					if (!T68_) goto LA69_;
46711 					T71_ = NIM_NIL;
46712 					T71_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_537), (*sym).loc.r);
46713 					putIntoDest__cgen_18656(p, d, (*sym).loc.lode, T71_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
46714 				}
46715 				goto LA66_;
46716 				LA69_: ;
46717 				{
46718 					putLocIntoDest__cgen_11467(p, d, (*sym).loc);
46719 				}
46720 				LA66_: ;
46721 			}
46722 			goto LA62_;
46723 			LA64_: ;
46724 			{
46725 				putLocIntoDest__cgen_11467(p, d, (*sym).loc);
46726 			}
46727 			LA62_: ;
46728 		}
46729 		break;
46730 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 5):
46731 		{
46732 			{
46733 				NIM_BOOL T77_;
46734 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T79_;
46735 				NimStringDesc* T82_;
46736 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym5648_;
46737 				NimStringDesc* T83_;
46738 				T77_ = (NIM_BOOL)0;
46739 				T77_ = ((*sym).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
46740 				if (T77_) goto LA78_;
46741 				T79_ = NIM_NIL;
46742 				T79_ = t__cgen_79((*sym).loc);
46743 				T77_ = (T79_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
46744 				LA78_: ;
46745 				if (!T77_) goto LA80_;
46746 				T82_ = NIM_NIL;
46747 				xX60gensym5648_ = sym;
46748 				T83_ = NIM_NIL;
46749 				T83_ = dollar___systemZdollars_3((NI)((NI)((NU32)(((NI) ((*xX60gensym5648_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym5648_).Sup.itemId.item))));
46750 				T82_ = rawNewString(((*(*sym).name).s ? (*(*sym).name).s->Sup.len : 0) + (T83_ ? T83_->Sup.len : 0) + 21);
46751 appendString(T82_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_624));
46752 appendString(T82_, (*(*sym).name).s);
46753 appendString(T82_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
46754 appendString(T82_, T83_);
46755 				internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, T82_, TM__MQdRN7fpbG7rPm4JpVVAhA_625);
46756 			}
46757 			LA80_: ;
46758 			putLocIntoDest__cgen_11467(p, d, (*sym).loc);
46759 		}
46760 		break;
46761 		case ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3):
46762 		{
46763 			{
46764 				NIM_BOOL T87_;
46765 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T89_;
46766 				NimStringDesc* T92_;
46767 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym5652_;
46768 				NimStringDesc* T93_;
46769 				T87_ = (NIM_BOOL)0;
46770 				T87_ = ((*sym).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
46771 				if (T87_) goto LA88_;
46772 				T89_ = NIM_NIL;
46773 				T89_ = t__cgen_79((*sym).loc);
46774 				T87_ = (T89_ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL));
46775 				LA88_: ;
46776 				if (!T87_) goto LA90_;
46777 				T92_ = NIM_NIL;
46778 				xX60gensym5652_ = sym;
46779 				T93_ = NIM_NIL;
46780 				T93_ = dollar___systemZdollars_3((NI)((NI)((NU32)(((NI) ((*xX60gensym5652_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym5652_).Sup.itemId.item))));
46781 				T92_ = rawNewString(((*(*sym).name).s ? (*(*sym).name).s->Sup.len : 0) + (T93_ ? T93_->Sup.len : 0) + 22);
46782 appendString(T92_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_626));
46783 appendString(T92_, (*(*sym).name).s);
46784 appendString(T92_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
46785 appendString(T92_, T93_);
46786 				internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, T92_, TM__MQdRN7fpbG7rPm4JpVVAhA_627);
46787 			}
46788 			LA90_: ;
46789 			putLocIntoDest__cgen_11467(p, d, (*sym).loc);
46790 		}
46791 		break;
46792 		default:
46793 		{
46794 			NimStringDesc* T95_;
46795 			T95_ = NIM_NIL;
46796 			T95_ = rawNewString((reprEnum((NI)(*sym).kind, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_)) ? reprEnum((NI)(*sym).kind, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_))->Sup.len : 0) + 22);
46797 appendString(T95_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_628));
46798 appendString(T95_, reprEnum((NI)(*sym).kind, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_)));
46799 appendString(T95_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_629));
46800 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, T95_, TM__MQdRN7fpbG7rPm4JpVVAhA_630);
46801 		}
46802 		break;
46803 		}
46804 	}
46805 	break;
46806 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23):
46807 	{
46808 		{
46809 			NIM_BOOL T99_;
46810 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T102_;
46811 			T99_ = (NIM_BOOL)0;
46812 			T99_ = isEmptyType__ast_4779((*n).typ);
46813 			if (!!(T99_)) goto LA100_;
46814 			T102_ = NIM_NIL;
46815 			T102_ = genLiteral__cgen_11473(p, n);
46816 			putIntoDest__cgen_18656(p, d, n, T102_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
46817 		}
46818 		LA100_: ;
46819 	}
46820 	break;
46821 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
46822 	{
46823 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T104_;
46824 		T104_ = NIM_NIL;
46825 		T104_ = genLiteral__cgen_11473(p, n);
46826 		putDataIntoDest__cgen_18642(p, d, n, T104_);
46827 	}
46828 	break;
46829 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 6) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
46830 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 19):
46831 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5):
46832 	{
46833 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T106_;
46834 		T106_ = NIM_NIL;
46835 		T106_ = genLiteral__cgen_11473(p, n);
46836 		putIntoDest__cgen_18656(p, d, n, T106_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
46837 	}
46838 	break;
46839 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 27):
46840 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
46841 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 29):
46842 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 30):
46843 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 31):
46844 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26):
46845 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 28):
46846 	{
46847 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* op;
46848 		genLineDir__cgen_359(p, n);
46849 		op = (*n)._kind_6.sons->data[((NI) 0)];
46850 		{
46851 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
46852 			if (!((*n).typ == 0)) goto LA110_;
46853 			nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
46854 			{
46855 				NIM_BOOL T114_;
46856 				T114_ = (NIM_BOOL)0;
46857 				T114_ = ((*op).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
46858 				if (!(T114_)) goto LA115_;
46859 				T114_ = !(((*(*op)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0)));
46860 				LA115_: ;
46861 				if (!T114_) goto LA116_;
46862 				genMagicExpr__cgen_23264(p, n, (&a), (*(*op)._kind_4.sym).magic);
46863 			}
46864 			goto LA112_;
46865 			LA116_: ;
46866 			{
46867 				genCall__cgen_13078(p, n, (&a));
46868 			}
46869 			LA112_: ;
46870 		}
46871 		goto LA108_;
46872 		LA110_: ;
46873 		{
46874 			{
46875 				NIM_BOOL T122_;
46876 				T122_ = (NIM_BOOL)0;
46877 				T122_ = ((*op).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
46878 				if (!(T122_)) goto LA123_;
46879 				T122_ = !(((*(*op)._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0)));
46880 				LA123_: ;
46881 				if (!T122_) goto LA124_;
46882 				genMagicExpr__cgen_23264(p, n, d, (*(*op)._kind_4.sym).magic);
46883 			}
46884 			goto LA120_;
46885 			LA124_: ;
46886 			{
46887 				genCall__cgen_13078(p, n, d);
46888 			}
46889 			LA120_: ;
46890 		}
46891 		LA108_: ;
46892 	}
46893 	break;
46894 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39):
46895 	{
46896 		{
46897 			NIM_BOOL T130_;
46898 			NI T132_;
46899 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T135_;
46900 			T130_ = (NIM_BOOL)0;
46901 			T130_ = isDeepConstExpr__trees_171(n, NIM_FALSE);
46902 			if (!(T130_)) goto LA131_;
46903 			T132_ = (NI)0;
46904 			T132_ = len__ast_3198(n);
46905 			T130_ = !((T132_ == ((NI) 0)));
46906 			LA131_: ;
46907 			if (!T130_) goto LA133_;
46908 			T135_ = NIM_NIL;
46909 			T135_ = genSetNode__cgen_17768(p, n);
46910 			putIntoDest__cgen_18656(p, d, n, T135_, ((tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw) 0));
46911 		}
46912 		goto LA128_;
46913 		LA133_: ;
46914 		{
46915 			genSetConstr__cgen_23792(p, n, d);
46916 		}
46917 		LA128_: ;
46918 	}
46919 	break;
46920 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 41):
46921 	{
46922 		{
46923 			NIM_BOOL T140_;
46924 			NI T142_;
46925 			T140_ = (NIM_BOOL)0;
46926 			T140_ = isDeepConstExpr__trees_171(n, NIM_FALSE);
46927 			if (!(T140_)) goto LA141_;
46928 			T142_ = (NI)0;
46929 			T142_ = len__ast_3198(n);
46930 			T140_ = !((T142_ == ((NI) 0)));
46931 			LA141_: ;
46932 			if (!T140_) goto LA143_;
46933 			exprComplexConst__cgen_24215(p, n, d);
46934 		}
46935 		goto LA138_;
46936 		LA143_: ;
46937 		{
46938 			tyObject_TType__facALICuu8zUj0hjvbTLFg* T146_;
46939 			T146_ = NIM_NIL;
46940 			T146_ = skipTypes__ast_3735((*n).typ, TM__MQdRN7fpbG7rPm4JpVVAhA_207);
46941 			if (!((*T146_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24))) goto LA147_;
46942 			genSeqConstr__cgen_21099(p, n, d);
46943 		}
46944 		goto LA138_;
46945 		LA147_: ;
46946 		{
46947 			genArrayConstr__cgen_23956(p, n, d);
46948 		}
46949 		LA138_: ;
46950 	}
46951 	break;
46952 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 37):
46953 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 160):
46954 	{
46955 		{
46956 			NIM_BOOL T153_;
46957 			NIM_BOOL T154_;
46958 			NI T157_;
46959 			T153_ = (NIM_BOOL)0;
46960 			T154_ = (NIM_BOOL)0;
46961 			T154_ = !(((*n).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
46962 			if (!(T154_)) goto LA155_;
46963 			T154_ = ((*(*n).typ).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 25));
46964 			LA155_: ;
46965 			T153_ = T154_;
46966 			if (!(T153_)) goto LA156_;
46967 			T157_ = (NI)0;
46968 			T157_ = len__ast_3198(n);
46969 			T153_ = (T157_ == ((NI) 2));
46970 			LA156_: ;
46971 			if (!T153_) goto LA158_;
46972 			genClosure__cgen_23913(p, n, d);
46973 		}
46974 		goto LA151_;
46975 		LA158_: ;
46976 		{
46977 			NIM_BOOL T161_;
46978 			NI T163_;
46979 			T161_ = (NIM_BOOL)0;
46980 			T161_ = isDeepConstExpr__trees_171(n, NIM_FALSE);
46981 			if (!(T161_)) goto LA162_;
46982 			T163_ = (NI)0;
46983 			T163_ = len__ast_3198(n);
46984 			T161_ = !((T163_ == ((NI) 0)));
46985 			LA162_: ;
46986 			if (!T161_) goto LA164_;
46987 			exprComplexConst__cgen_24215(p, n, d);
46988 		}
46989 		goto LA151_;
46990 		LA164_: ;
46991 		{
46992 			genTupleConstr__cgen_23866(p, n, d);
46993 		}
46994 		LA151_: ;
46995 	}
46996 	break;
46997 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 38):
46998 	{
46999 		genObjConstr__cgen_10361(p, n, d);
47000 	}
47001 	break;
47002 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61):
47003 	{
47004 		genCast__cgen_22751(p, n, d);
47005 	}
47006 	break;
47007 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
47008 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
47009 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 60):
47010 	{
47011 		genConv__cgen_22872(p, n, d);
47012 	}
47013 	break;
47014 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
47015 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
47016 	{
47017 		genAddr__cgen_19464(p, n, d);
47018 	}
47019 	break;
47020 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 42):
47021 	{
47022 		genBracketExpr__cgen_20179(p, n, d);
47023 	}
47024 	break;
47025 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 47):
47026 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 65):
47027 	{
47028 		genDeref__cgen_19306(p, n, d);
47029 	}
47030 	break;
47031 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45):
47032 	{
47033 		genRecordField__cgen_19584(p, n, d);
47034 	}
47035 	break;
47036 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46):
47037 	{
47038 		genCheckedRecordField__cgen_19812(p, n, d);
47039 	}
47040 	break;
47041 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 127):
47042 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 112):
47043 	{
47044 		genBlock__cgen_14540(p, n, d);
47045 	}
47046 	break;
47047 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 126):
47048 	{
47049 		genStmtListExpr__cgen_23995(p, n, d);
47050 	}
47051 	break;
47052 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115):
47053 	{
47054 		genStmtList__cgen_24049(p, n);
47055 	}
47056 	break;
47057 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 48):
47058 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 92):
47059 	{
47060 		genIf__cgen_14061(p, n, d);
47061 	}
47062 	break;
47063 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 93):
47064 	{
47065 		expr__cgen_11460(p, (*(*n)._kind_6.sons->data[((NI) 1)])._kind_6.sons->data[((NI) 0)], d);
47066 	}
47067 	break;
47068 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66):
47069 	{
47070 		downConv__cgen_24169(p, n, d);
47071 	}
47072 	break;
47073 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 67):
47074 	{
47075 		upConv__cgen_24103(p, n, d);
47076 	}
47077 	break;
47078 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 68):
47079 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 69):
47080 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 70):
47081 	{
47082 		genRangeChck__cgen_22798(p, n, d);
47083 	}
47084 	break;
47085 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 71):
47086 	{
47087 		convStrToCStr__cgen_22879(p, n, d);
47088 	}
47089 	break;
47090 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 72):
47091 	{
47092 		convCStrToStr__cgen_22894(p, n, d);
47093 	}
47094 	break;
47095 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 51) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 52):
47096 	{
47097 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym_2;
47098 		sym_2 = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
47099 		genProc__cgen_411((*p).module, sym_2);
47100 		{
47101 			NIM_BOOL T188_;
47102 			NimStringDesc* T192_;
47103 			T188_ = (NIM_BOOL)0;
47104 			T188_ = ((*sym_2).loc.r == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL));
47105 			if (T188_) goto LA189_;
47106 			T188_ = ((*sym_2).loc.lode == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL));
47107 			LA189_: ;
47108 			if (!T188_) goto LA190_;
47109 			T192_ = NIM_NIL;
47110 			T192_ = rawNewString(((*(*sym_2).name).s ? (*(*sym_2).name).s->Sup.len : 0) + 20);
47111 appendString(T192_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_513));
47112 appendString(T192_, (*(*sym_2).name).s);
47113 			internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, T192_, TM__MQdRN7fpbG7rPm4JpVVAhA_990);
47114 		}
47115 		LA190_: ;
47116 		putLocIntoDest__cgen_11467(p, d, (*sym_2).loc);
47117 	}
47118 	break;
47119 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 155):
47120 	{
47121 		genClosure__cgen_23913(p, n, d);
47122 	}
47123 	break;
47124 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1):
47125 	{
47126 	}
47127 	break;
47128 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 96):
47129 	{
47130 		genWhileStmt__cgen_14463(p, n);
47131 	}
47132 	break;
47133 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99):
47134 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 100):
47135 	{
47136 		genVarStmt__cgen_14041(p, n);
47137 	}
47138 	break;
47139 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 101):
47140 	{
47141 		{
47142 			if (!(((*(*p).module).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 6))&7U)))!=0)) goto LA200_;
47143 			genConstStmt__cgen_24330(p, n);
47144 		}
47145 		LA200_: ;
47146 	}
47147 	break;
47148 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 94):
47149 	{
47150 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1018), TM__MQdRN7fpbG7rPm4JpVVAhA_1019);
47151 	}
47152 	break;
47153 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 97):
47154 	{
47155 		genCase__cgen_15478(p, n, d);
47156 	}
47157 	break;
47158 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 109):
47159 	{
47160 		genReturnStmt__cgen_14144(p, n);
47161 	}
47162 	break;
47163 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 110):
47164 	{
47165 		genBreakStmt__cgen_14659(p, n);
47166 	}
47167 	break;
47168 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 73):
47169 	{
47170 		cow__cgen_19456(p, (*n)._kind_6.sons->data[((NI) 1)]);
47171 		{
47172 			if (!!((((*n).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 15))&31U)))!=0))) goto LA209_;
47173 			genAsgn__cgen_17422(p, n, NIM_FALSE);
47174 		}
47175 		LA209_: ;
47176 	}
47177 	break;
47178 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 74):
47179 	{
47180 		cow__cgen_19456(p, (*n)._kind_6.sons->data[((NI) 1)]);
47181 		{
47182 			if (!!((((*n).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 15))&31U)))!=0))) goto LA214_;
47183 			genAsgn__cgen_17422(p, n, !(((*p).prc == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))));
47184 		}
47185 		LA214_: ;
47186 	}
47187 	break;
47188 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 114):
47189 	{
47190 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ex;
47191 		ex = (*n)._kind_6.sons->data[((NI) 0)];
47192 		{
47193 			tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a_2;
47194 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T221_;
47195 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T222_;
47196 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T223_;
47197 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T224_;
47198 			if (!!(((*ex).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1)))) goto LA219_;
47199 			genLineDir__cgen_359(p, n);
47200 			nimZeroMem((void*)(&a_2), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
47201 			initLocExprSingleUse__cgen_11487(p, ex, (&a_2));
47202 			T221_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
47203 			T221_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
47204 			T222_ = NIM_NIL;
47205 			T222_ = amp___ropes_144(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1047), a_2.r);
47206 			T223_ = NIM_NIL;
47207 			T223_ = amp___ropes_140(T222_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1017));
47208 			T224_ = NIM_NIL;
47209 			T224_ = indentLine__cgen_280(p, T223_);
47210 			add__ropes_159(T221_, T224_);
47211 		}
47212 		LA219_: ;
47213 	}
47214 	break;
47215 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 89):
47216 	{
47217 		genAsmStmt__cgen_17232(p, n);
47218 	}
47219 	break;
47220 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 106):
47221 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 154):
47222 	{
47223 		switch ((*(*(*(*p).module).g).config).exc) {
47224 		case ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 3):
47225 		{
47226 			genTryGoto__cgen_16365(p, n, d);
47227 		}
47228 		break;
47229 		case ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 2):
47230 		{
47231 			genTryCpp__cgen_15648(p, n, d);
47232 		}
47233 		break;
47234 		default:
47235 		{
47236 			genTrySetjmp__cgen_16709(p, n, d);
47237 		}
47238 		break;
47239 		}
47240 	}
47241 	break;
47242 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 108):
47243 	{
47244 		genRaiseStmt__cgen_14840(p, n);
47245 	}
47246 	break;
47247 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 98):
47248 	{
47249 		genTypeSection__cgen_10277((*p).module, n);
47250 	}
47251 	break;
47252 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 125):
47253 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 84):
47254 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 121):
47255 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 116):
47256 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 117):
47257 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 118):
47258 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 119):
47259 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 120):
47260 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 83):
47261 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 82):
47262 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 113):
47263 	{
47264 	}
47265 	break;
47266 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 90):
47267 	{
47268 		genPragma__cgen_17280(p, n);
47269 	}
47270 	break;
47271 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 91):
47272 	{
47273 		tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T235_;
47274 		T235_ = NIM_NIL;
47275 		T235_ = lastSon__ast_4832(n);
47276 		expr__cgen_11460(p, T235_, d);
47277 	}
47278 	break;
47279 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 79):
47280 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 159):
47281 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 80):
47282 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 81):
47283 	{
47284 		{
47285 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc;
47286 			if (!((*(*n)._kind_6.sons->data[((NI) 2)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1))) goto LA239_;
47287 			prc = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
47288 			{
47289 				if (!(((*(*p).module).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 6))&7U)))!=0)) goto LA243_;
47290 				{
47291 					NIM_BOOL T247_;
47292 					T247_ = (NIM_BOOL)0;
47293 					T247_ = contains__astalgo_3496((&(*(*p).module).alive), ((NI) ((*prc).Sup.itemId.item)));
47294 					if (!(T247_)) goto LA248_;
47295 					T247_ = ((*prc).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 0) || (*prc).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 155) || (*prc).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 154));
47296 					LA248_: ;
47297 					if (!T247_) goto LA249_;
47298 					genProc__cgen_411((*p).module, prc);
47299 				}
47300 				LA249_: ;
47301 			}
47302 			goto LA241_;
47303 			LA243_: ;
47304 			{
47305 				NIM_BOOL T252_;
47306 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T253_;
47307 				T252_ = (NIM_BOOL)0;
47308 				T253_ = NIM_NIL;
47309 				T253_ = skipGenericOwner__ast_4658(prc);
47310 				T252_ = ((*T253_).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 6));
47311 				if (!(T252_)) goto LA254_;
47312 				T252_ = !((((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 28))&63U)))!=0));
47313 				LA254_: ;
47314 				if (!T252_) goto LA255_;
47315 				{
47316 					NIM_BOOL T259_;
47317 					NIM_BOOL T260_;
47318 					NIM_BOOL T262_;
47319 					T259_ = (NIM_BOOL)0;
47320 					T260_ = (NIM_BOOL)0;
47321 					T260_ = ((262272 & (*prc).flags) == 128);
47322 					if (T260_) goto LA261_;
47323 					T262_ = (NIM_BOOL)0;
47324 					T262_ = (((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 7))&63U)))!=0);
47325 					if (!(T262_)) goto LA263_;
47326 					T262_ = (((*prc).loc.flags &((NU16)1<<((NU)(((tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA) 5))&15U)))!=0);
47327 					LA263_: ;
47328 					T260_ = T262_;
47329 					LA261_: ;
47330 					T259_ = T260_;
47331 					if (T259_) goto LA264_;
47332 					T259_ = ((*prc).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 14));
47333 					LA264_: ;
47334 					if (!T259_) goto LA265_;
47335 					genProc__cgen_411((*p).module, prc);
47336 				}
47337 				LA265_: ;
47338 			}
47339 			goto LA241_;
47340 			LA255_: ;
47341 			LA241_: ;
47342 		}
47343 		LA239_: ;
47344 	}
47345 	break;
47346 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 95):
47347 	{
47348 		genParForStmt__cgen_14583(p, n);
47349 	}
47350 	break;
47351 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 157):
47352 	{
47353 		genState__cgen_13516(p, n);
47354 	}
47355 	break;
47356 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 156):
47357 	{
47358 		(*p).splitDecls += ((NI) 1);
47359 		genGotoState__cgen_13679(p, n);
47360 	}
47361 	break;
47362 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 158):
47363 	{
47364 		genBreakState__cgen_13737(p, n, d);
47365 	}
47366 	break;
47367 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 123):
47368 	case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 122):
47369 	{
47370 	}
47371 	break;
47372 	default:
47373 	{
47374 		NimStringDesc* T273_;
47375 		T273_ = NIM_NIL;
47376 		T273_ = rawNewString((reprEnum((NI)(*n).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)(*n).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 25);
47377 appendString(T273_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_628));
47378 appendString(T273_, reprEnum((NI)(*n).kind, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)));
47379 appendString(T273_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1126));
47380 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, (*n).info, T273_, TM__MQdRN7fpbG7rPm4JpVVAhA_1127);
47381 	}
47382 	break;
47383 	}
47384 }
N_NIMCALL(void,genStmts__cgen_11457)47385 N_LIB_PRIVATE N_NIMCALL(void, genStmts__cgen_11457)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* t) {
47386 	tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA a;
47387 	NIM_BOOL isPush;
47388 	nimZeroMem((void*)(&a), sizeof(tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA));
47389 	isPush = hasHint__options_517((*(*(*p).module).g).config, ((tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug) 100));
47390 	{
47391 		if (!isPush) goto LA3_;
47392 		pushInfoContext__msgs_490((*(*(*p).module).g).config, (*t).info, ((NimStringDesc*) NIM_NIL));
47393 	}
47394 	LA3_: ;
47395 	expr__cgen_11460(p, t, (&a));
47396 	{
47397 		if (!isPush) goto LA7_;
47398 		popInfoContext__msgs_507((*(*(*p).module).g).config);
47399 	}
47400 	LA7_: ;
47401 	{
47402 		NimStringDesc* argX60gensym3134_;
47403 		if (!!(((71 &((NU16)1<<((NU)(a.k)&15U)))!=0))) goto LA11_;
47404 		argX60gensym3134_ = toFileLineCol__msgs_615(TM__MQdRN7fpbG7rPm4JpVVAhA_1128);
47405 		internalErrorImpl__msgs_1431((*(*(*p).module).g).config, unknownLineInfo__lineinfos_280, argX60gensym3134_, TM__MQdRN7fpbG7rPm4JpVVAhA_1128);
47406 	}
47407 	LA11_: ;
47408 }
N_NIMCALL(void,addHcrInitGuards__cgen_28371)47409 N_LIB_PRIVATE N_NIMCALL(void, addHcrInitGuards__cgen_28371)(tyObject_TCProc__g7nhmFb7KltrkyRKuP8k2Q* p, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NIM_BOOL* inInitGuard) {
47410 	{
47411 		if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 115))) goto LA3_;
47412 		{
47413 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* child;
47414 			child = NIM_NIL;
47415 			{
47416 				NI i;
47417 				NI colontmp_;
47418 				NI i_2;
47419 				i = (NI)0;
47420 				colontmp_ = (NI)0;
47421 				colontmp_ = safeLen__ast_3191(n);
47422 				i_2 = ((NI) 0);
47423 				{
47424 					while (1) {
47425 						if (!(i_2 < colontmp_)) goto LA8;
47426 						i = i_2;
47427 						child = (*n)._kind_6.sons->data[i];
47428 						addHcrInitGuards__cgen_28371(p, child, inInitGuard);
47429 						i_2 += ((NI) 1);
47430 					} LA8: ;
47431 				}
47432 			}
47433 		}
47434 	}
47435 	goto LA1_;
47436 	LA3_: ;
47437 	{
47438 		NIM_BOOL stmtShouldExecute;
47439 		NIM_BOOL T10_;
47440 		T10_ = (NIM_BOOL)0;
47441 		T10_ = ((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 99) || (*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 100));
47442 		if (T10_) goto LA11_;
47443 		T10_ = (((*n).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) 20))&31U)))!=0);
47444 		LA11_: ;
47445 		stmtShouldExecute = T10_;
47446 		{
47447 			if (!(*inInitGuard)) goto LA14_;
47448 			{
47449 				if (!stmtShouldExecute) goto LA18_;
47450 				endBlock__cgen_13210(p);
47451 				(*inInitGuard) = NIM_FALSE;
47452 			}
47453 			LA18_: ;
47454 		}
47455 		goto LA12_;
47456 		LA14_: ;
47457 		{
47458 			{
47459 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T25_;
47460 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
47461 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
47462 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T28_;
47463 				NimStringDesc* res;
47464 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
47465 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T34_;
47466 				NI T35_;
47467 				if (!!(stmtShouldExecute)) goto LA23_;
47468 				T25_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
47469 				T25_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
47470 				T26_ = NIM_NIL;
47471 				T26_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_11));
47472 				T27_ = NIM_NIL;
47473 				T27_ = indentLine__cgen_280(p, T26_);
47474 				add__ropes_159(T25_, T27_);
47475 				T28_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
47476 				T28_ = s__cgendata_225(p, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
47477 				res = rawNewString(((NI) 80));
47478 				res = resizeString(res, 1);
47479 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_12));
47480 				{
47481 					if (!!((((*(*(*(*p).module).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA31_;
47482 					res = resizeString(res, 1);
47483 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
47484 				}
47485 				LA31_: ;
47486 				T33_ = NIM_NIL;
47487 				T33_ = rope__ropes_109(res);
47488 				T34_ = NIM_NIL;
47489 				T34_ = indentLine__cgen_280(p, T33_);
47490 				add__ropes_159(T28_, T34_);
47491 				T35_ = (NI)0;
47492 				T35_ = startBlockInternal__cgen_13189(p);
47493 				(*inInitGuard) = NIM_TRUE;
47494 			}
47495 			LA23_: ;
47496 		}
47497 		LA12_: ;
47498 		genStmts__cgen_11457(p, n);
47499 	}
47500 	LA1_: ;
47501 }
N_NIMCALL(void,genTopLevelStmt__cgen_28402)47502 N_LIB_PRIVATE N_NIMCALL(void, genTopLevelStmt__cgen_28402)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
47503 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedN;
47504 {	{
47505 		NIM_BOOL T3_;
47506 		T3_ = (NIM_BOOL)0;
47507 		T3_ = skipCodegen__passes_49((*(*m).g).config, n);
47508 		if (!T3_) goto LA4_;
47509 		goto BeforeRet_;
47510 	}
47511 	LA4_: ;
47512 	(*(*m).initProc).options = initProcOptions__cgen_28167(m);
47513 	transformedN = transformStmt__transf_1873((*(*m).g).graph, (*m).Sup.idgen, (*m).module, n);
47514 	{
47515 		if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 42))&63U)))!=0)) goto LA8_;
47516 		transformedN = injectDestructorCalls__injectdestructors_10100((*(*m).g).graph, (*m).Sup.idgen, (*m).module, transformedN);
47517 	}
47518 	LA8_: ;
47519 	{
47520 		NIM_BOOL T12_;
47521 		T12_ = (NIM_BOOL)0;
47522 		T12_ = hcrOn__cgen_42(m);
47523 		if (!T12_) goto LA13_;
47524 		addHcrInitGuards__cgen_28371((*m).initProc, transformedN, (&(*m).inHcrInitGuard));
47525 	}
47526 	goto LA10_;
47527 	LA13_: ;
47528 	{
47529 		genProcBody__cgen_25959((*m).initProc, transformedN);
47530 	}
47531 	LA10_: ;
47532 	}BeforeRet_: ;
47533 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,myProcess__cgen_28410)47534 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, myProcess__cgen_28410)(tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* b, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
47535 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
47536 	result = NIM_NIL;
47537 	result = n;
47538 	{
47539 		tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m;
47540 		if (!!((b == ((tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*) NIM_NIL)))) goto LA3_;
47541 		m = ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) (b));
47542 		genTopLevelStmt__cgen_28402(m, n);
47543 	}
47544 	LA3_: ;
47545 	return result;
47546 }
N_INLINE(NIM_BOOL,moduleHasChanged__passes_207)47547 static N_INLINE(NIM_BOOL, moduleHasChanged__passes_207)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* module) {
47548 	NIM_BOOL result;
47549 	result = (NIM_BOOL)0;
47550 	result = NIM_TRUE;
47551 	return result;
47552 }
N_NIMCALL(void,finalCodegenActions__cgen_28455)47553 N_LIB_PRIVATE N_NIMCALL(void, finalCodegenActions__cgen_28455)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
47554 	tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* mm;
47555 	NI T82_;
47556 {	{
47557 		if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA3_;
47558 		{
47559 			NIM_BOOL T7_;
47560 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T9_;
47561 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
47562 			T7_ = (NIM_BOOL)0;
47563 			T7_ = ((*(*(*m).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 3));
47564 			if (!(T7_)) goto LA8_;
47565 			T9_ = NIM_NIL;
47566 			T9_ = getCompilerProc__magicsys_145(graph, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1129));
47567 			T7_ = !((T9_ == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
47568 			LA8_: ;
47569 			if (!T7_) goto LA10_;
47570 			T12_ = NIM_NIL;
47571 			T12_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1129));
47572 			(void)(T12_);
47573 		}
47574 		LA10_: ;
47575 		{
47576 			if (!((2097536 & (*(*(*m).g).config).globalOptions) == 0)) goto LA15_;
47577 			{
47578 				NI i;
47579 				NI colontmp_;
47580 				NI T18_;
47581 				NI res;
47582 				i = (NI)0;
47583 				colontmp_ = (NI)0;
47584 				T18_ = (((*graph).globalDestructors ? (*graph).globalDestructors->Sup.len : 0)-1);
47585 				colontmp_ = T18_;
47586 				res = colontmp_;
47587 				{
47588 					while (1) {
47589 						if (!(((NI) 0) <= res)) goto LA20;
47590 						i = res;
47591 						add__ast_4797(n, (*graph).globalDestructors->data[i]);
47592 						res -= ((NI) 1);
47593 					} LA20: ;
47594 				}
47595 			}
47596 		}
47597 		LA15_: ;
47598 	}
47599 	LA3_: ;
47600 	{
47601 		NIM_BOOL T23_;
47602 		T23_ = (NIM_BOOL)0;
47603 		T23_ = skipCodegen__passes_49((*(*m).g).config, n);
47604 		if (!T23_) goto LA24_;
47605 		goto BeforeRet_;
47606 	}
47607 	LA24_: ;
47608 	{
47609 		NIM_BOOL T28_;
47610 		T28_ = (NIM_BOOL)0;
47611 		T28_ = moduleHasChanged__passes_207(graph, (*m).module);
47612 		if (!T28_) goto LA29_;
47613 		{
47614 			if (!!((n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA33_;
47615 			(*(*m).initProc).options = initProcOptions__cgen_28167(m);
47616 			genProcBody__cgen_25959((*m).initProc, n);
47617 		}
47618 		LA33_: ;
47619 		{
47620 			NIM_BOOL T37_;
47621 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
47622 			T37_ = (NIM_BOOL)0;
47623 			T37_ = hcrOn__cgen_42(m);
47624 			if (!T37_) goto LA38_;
47625 			T40_ = NIM_NIL;
47626 			T40_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1130));
47627 			(void)(T40_);
47628 			{
47629 				if (!(*m).inHcrInitGuard) goto LA43_;
47630 				endBlock__cgen_13210((*m).initProc);
47631 			}
47632 			LA43_: ;
47633 		}
47634 		LA38_: ;
47635 		{
47636 			tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* disp;
47637 			if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA47_;
47638 			{
47639 				NIM_BOOL T51_;
47640 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
47641 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T55_;
47642 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
47643 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
47644 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
47645 				T51_ = (NIM_BOOL)0;
47646 				T51_ = hcrOn__cgen_42(m);
47647 				if (!T51_) goto LA52_;
47648 				T54_ = NIM_NIL;
47649 				T54_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_422));
47650 				(void)(T54_);
47651 				T55_ = NIM_NIL;
47652 				T55_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_426));
47653 				(void)(T55_);
47654 				T56_ = NIM_NIL;
47655 				T56_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_435));
47656 				(void)(T56_);
47657 				T57_ = NIM_NIL;
47658 				T57_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1131));
47659 				(void)(T57_);
47660 				T58_ = NIM_NIL;
47661 				T58_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1132));
47662 				(void)(T58_);
47663 			}
47664 			LA52_: ;
47665 			{
47666 				NIM_BOOL T61_;
47667 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T65_;
47668 				T61_ = (NIM_BOOL)0;
47669 				T61_ = !(((*(*(*m).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 29)));
47670 				if (!(T61_)) goto LA62_;
47671 				T61_ = !(((*(*(*m).g).config).selectedGC == ((tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw) 1)));
47672 				LA62_: ;
47673 				if (!T61_) goto LA63_;
47674 				T65_ = NIM_NIL;
47675 				T65_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1133));
47676 				(void)(T65_);
47677 			}
47678 			LA63_: ;
47679 			{
47680 				NIM_BOOL T68_;
47681 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T72_;
47682 				T68_ = (NIM_BOOL)0;
47683 				T68_ = emulatedThreadVars__cgen_409((*(*m).g).config);
47684 				if (!(T68_)) goto LA69_;
47685 				T68_ = !(((*(*(*m).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 29)));
47686 				LA69_: ;
47687 				if (!T68_) goto LA70_;
47688 				T72_ = NIM_NIL;
47689 				T72_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1134));
47690 				(void)(T72_);
47691 			}
47692 			LA70_: ;
47693 			{
47694 				NI T75_;
47695 				T75_ = ((*(*m).g).forwardedProcs ? (*(*m).g).forwardedProcs->Sup.len : 0);
47696 				if (!(T75_ == ((NI) 0))) goto LA76_;
47697 				(*m).flags |= ((NU8)1)<<((((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 5)) & 7);
47698 			}
47699 			LA76_: ;
47700 			disp = generateMethodDispatchers__cgmeth_546(graph);
47701 			{
47702 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
47703 				x = NIM_NIL;
47704 				{
47705 					NI i_2;
47706 					NI colontmp__2;
47707 					NI i_3;
47708 					i_2 = (NI)0;
47709 					colontmp__2 = (NI)0;
47710 					colontmp__2 = safeLen__ast_3191(disp);
47711 					i_3 = ((NI) 0);
47712 					{
47713 						while (1) {
47714 							if (!(i_3 < colontmp__2)) goto LA81;
47715 							i_2 = i_3;
47716 							x = (*disp)._kind_6.sons->data[i_2];
47717 							genProcAux__cgen_26023(m, (*x)._kind_4.sym);
47718 							i_3 += ((NI) 1);
47719 						} LA81: ;
47720 					}
47721 				}
47722 			}
47723 		}
47724 		LA47_: ;
47725 	}
47726 	LA29_: ;
47727 	mm = m;
47728 	asgnRef((void**) (&(*(*m).g).modulesClosed), (tySequence__SHVxAqOYtIy7teT1q4s0zQ*) incrSeqV3((TGenericSeq*)((*(*m).g).modulesClosed), (&NTIseqLbmoduleT__SHVxAqOYtIy7teT1q4s0zQ_)));
47729 	T82_ = (*(*m).g).modulesClosed->Sup.len++;
47730 	asgnRef((void**) (&(*(*m).g).modulesClosed->data[T82_]), mm);
47731 	}BeforeRet_: ;
47732 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,myClose__cgen_28526)47733 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, myClose__cgen_28526)(tyObject_ModuleGraphcolonObjectType___RZI3hCs0FTPYx8StfC81qQ* graph, tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w* b, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
47734 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
47735 {	result = NIM_NIL;
47736 	result = n;
47737 	{
47738 		if (!(b == ((tyObject_TPassContext__Hb6rFM0ecvtlLf2kv9aU75w*) NIM_NIL))) goto LA3_;
47739 		goto BeforeRet_;
47740 	}
47741 	LA3_: ;
47742 	finalCodegenActions__cgen_28455(graph, ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) (b)), n);
47743 	}BeforeRet_: ;
47744 	return result;
47745 }
N_INLINE(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,pop__icZic_2460)47746 static N_INLINE(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, pop__icZic_2460)(tySequence__eHqUwlHGGaPw0TDPDeL79cQ** s) {
47747 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
47748 	NI L;
47749 	NI T1_;
47750 	result = NIM_NIL;
47751 	T1_ = ((*s) ? (*s)->Sup.len : 0);
47752 	L = (NI)(T1_ - ((NI) 1));
47753 	result = (*s)->data[L];
47754 	unsureAsgnRef((void**) (&(*s)), (tySequence__eHqUwlHGGaPw0TDPDeL79cQ*) setLengthSeqV2(&((*s))->Sup, (&NTIseqLpsymT__eHqUwlHGGaPw0TDPDeL79cQ_), ((NI) (L))));
47755 	return result;
47756 }
N_NIMCALL(void,genForwardedProcs__cgen_28535)47757 N_LIB_PRIVATE N_NIMCALL(void, genForwardedProcs__cgen_28535)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g) {
47758 	{
47759 		while (1) {
47760 			NI T3_;
47761 			tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc;
47762 			tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m;
47763 			T3_ = ((*g).forwardedProcs ? (*g).forwardedProcs->Sup.len : 0);
47764 			if (!(((NI) 0) < T3_)) goto LA2;
47765 			prc = pop__icZic_2460((&(*g).forwardedProcs));
47766 			m = (*g).modules->data[(*prc).Sup.itemId.module];
47767 			{
47768 				NimStringDesc* T8_;
47769 				if (!(((*prc).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 4))&63U)))!=0)) goto LA6_;
47770 				T8_ = NIM_NIL;
47771 				T8_ = rawNewString(((*(*prc).name).s ? (*(*prc).name).s->Sup.len : 0) + 17);
47772 appendString(T8_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1135));
47773 appendString(T8_, (*(*prc).name).s);
47774 				internalErrorImpl__msgs_1431((*(*m).g).config, (*prc).info, T8_, TM__MQdRN7fpbG7rPm4JpVVAhA_1136);
47775 			}
47776 			LA6_: ;
47777 			genProcNoForward__cgen_26374(m, prc);
47778 		} LA2: ;
47779 	}
47780 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getSomeNameForModule__cgen_26890)47781 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getSomeNameForModule__cgen_26890)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m) {
47782 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47783 	NimStringDesc* T6_;
47784 	result = NIM_NIL;
47785 	{
47786 		NimStringDesc* T5_;
47787 		if (!((49152 & (*m).flags) == 0)) goto LA3_;
47788 		T5_ = NIM_NIL;
47789 		T5_ = mangle__ccgutils_112((*(*(*m).owner).name).s);
47790 		result = rope__ropes_109(T5_);
47791 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
47792 	}
47793 	LA3_: ;
47794 	T6_ = NIM_NIL;
47795 	T6_ = mangle__ccgutils_112((*(*m).name).s);
47796 	add__ropes_162(&result, T6_);
47797 	return result;
47798 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getSomeInitName__cgen_26915)47799 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getSomeInitName__cgen_26915)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* suffix) {
47800 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47801 	result = NIM_NIL;
47802 	{
47803 		NIM_BOOL T3_;
47804 		T3_ = (NIM_BOOL)0;
47805 		T3_ = hcrOn__cgen_42(m);
47806 		if (!!(T3_)) goto LA4_;
47807 		result = getSomeNameForModule__cgen_26890((*m).module);
47808 	}
47809 	LA4_: ;
47810 	add__ropes_162(&result, suffix);
47811 	return result;
47812 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getInitName__cgen_26919)47813 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getInitName__cgen_26919)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
47814 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47815 	result = NIM_NIL;
47816 	{
47817 		if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA3_;
47818 		result = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1137));
47819 	}
47820 	goto LA1_;
47821 	LA3_: ;
47822 	{
47823 		result = getSomeInitName__cgen_26915(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1138));
47824 	}
47825 	LA1_: ;
47826 	return result;
47827 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27782)47828 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27782)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47829 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47830 	result = NIM_NIL;
47831 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1139), args, argsLen_0);
47832 	return result;
47833 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27900)47834 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27900)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47835 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47836 	result = NIM_NIL;
47837 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1147), args, argsLen_0);
47838 	return result;
47839 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27909)47840 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27909)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47841 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47842 	result = NIM_NIL;
47843 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1148), args, argsLen_0);
47844 	return result;
47845 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27914)47846 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27914)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47847 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47848 	result = NIM_NIL;
47849 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1149), args, argsLen_0);
47850 	return result;
47851 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27919)47852 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27919)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47853 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47854 	result = NIM_NIL;
47855 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1152), args, argsLen_0);
47856 	return result;
47857 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27953)47858 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27953)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47859 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47860 	result = NIM_NIL;
47861 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1153), args, argsLen_0);
47862 	return result;
47863 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27793)47864 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27793)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47865 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47866 	result = NIM_NIL;
47867 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1154), args, argsLen_0);
47868 	return result;
47869 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_28004)47870 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28004)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47871 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47872 	result = NIM_NIL;
47873 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1159), args, argsLen_0);
47874 	return result;
47875 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getHcrInitName__cgen_26929)47876 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getHcrInitName__cgen_26929)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
47877 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47878 	result = NIM_NIL;
47879 	result = getSomeInitName__cgen_26915(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1160));
47880 	return result;
47881 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27837)47882 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27837)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47883 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47884 	result = NIM_NIL;
47885 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1163), args, argsLen_0);
47886 	return result;
47887 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27842)47888 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27842)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47889 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47890 	result = NIM_NIL;
47891 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1164), args, argsLen_0);
47892 	return result;
47893 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,hcrGetProcLoadCode__cgen_26932)47894 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, hcrGetProcLoadCode__cgen_26932)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NimStringDesc* sym, NimStringDesc* prefix, NimStringDesc* handle, NimStringDesc* getProcFunc) {
47895 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47896 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc;
47897 	NimStringDesc* extname;
47898 	NimStringDesc* T1_;
47899 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tmp;
47900 	tyArray__duFhZXIIlrbrM62cWjNekg T10_;
47901 	NimStringDesc* T11_;
47902 	result = NIM_NIL;
47903 	prc = getCompilerProc__magicsys_145((*(*m).g).graph, sym);
47904 	fillProcLoc__cgen_11428(m, (*(*prc).ast)._kind_6.sons->data[((NI) 0)]);
47905 	T1_ = NIM_NIL;
47906 	T1_ = rawNewString((prefix ? prefix->Sup.len : 0) + (sym ? sym->Sup.len : 0) + 0);
47907 appendString(T1_, prefix);
47908 appendString(T1_, sym);
47909 	extname = T1_;
47910 	tmp = mangleDynLibProc__cgen_3781(prc);
47911 	asgnRef((void**) (&(*prc).loc.r), tmp);
47912 	asgnRef((void**) (&(*(*prc).typ).sym), ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL));
47913 	{
47914 		tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym6361_;
47915 		NIM_BOOL T4_;
47916 		tyArray__mrugoXXRZUEeG9bEXo9auBKw T7_;
47917 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T8_;
47918 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
47919 		xX60gensym6361_ = prc;
47920 		T4_ = (NIM_BOOL)0;
47921 		T4_ = containsOrIncl__astalgo_402((&(*m).declaredThings), (NI)((NI)((NU32)(((NI) ((*xX60gensym6361_).Sup.itemId.module))) << (NU32)(((NI) 20))) + ((NI) ((*xX60gensym6361_).Sup.itemId.item))));
47922 		if (!!(T4_)) goto LA5_;
47923 		nimZeroMem((void*)T7_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
47924 		T7_[0] = (*prc).loc.r;
47925 		T8_ = NIM_NIL;
47926 		T8_ = t__cgen_79((*prc).loc);
47927 		T7_[1] = getTypeDesc__cgen_6631(m, T8_, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
47928 		T9_ = NIM_NIL;
47929 		T9_ = percent___cgen_27837(T7_, 2);
47930 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 10))- 0], T9_);
47931 	}
47932 	LA5_: ;
47933 	nimZeroMem((void*)T10_, sizeof(tyArray__duFhZXIIlrbrM62cWjNekg));
47934 	T10_[0] = tmp;
47935 	T10_[1] = getTypeDesc__cgen_6631(m, (*prc).typ, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
47936 	T10_[2] = rope__ropes_109(getProcFunc);
47937 	T10_[3] = rope__ropes_109(handle);
47938 	T11_ = NIM_NIL;
47939 	T11_ = rawNewString((prefix ? prefix->Sup.len : 0) + (sym ? sym->Sup.len : 0) + 0);
47940 appendString(T11_, prefix);
47941 appendString(T11_, sym);
47942 	T10_[4] = makeCString__msgs_50(T11_);
47943 	result = percent___cgen_27842(T10_, 5);
47944 	return result;
47945 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_28129)47946 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28129)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
47947 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47948 	result = NIM_NIL;
47949 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1167), args, argsLen_0);
47950 	return result;
47951 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getDatInitName__cgen_26926)47952 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getDatInitName__cgen_26926)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
47953 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
47954 	result = NIM_NIL;
47955 	result = getSomeInitName__cgen_26915(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1168));
47956 	return result;
47957 }
N_NIMCALL(void,genDatInitCode__cgen_27779)47958 N_LIB_PRIVATE N_NIMCALL(void, genDatInitCode__cgen_27779)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
47959 	NIM_BOOL moduleDatInitRequired;
47960 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* prc;
47961 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T1_;
47962 	NimStringDesc* T2_;
47963 	tyArray__qTjAvTvKF9anytN1At69aJMQ T17_;
47964 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
47965 	moduleDatInitRequired = hcrOn__cgen_42(m);
47966 	nimZeroMem((void*)T1_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
47967 	T2_ = NIM_NIL;
47968 	{
47969 		NIM_BOOL T5_;
47970 		T5_ = (NIM_BOOL)0;
47971 		T5_ = hcrOn__cgen_42(m);
47972 		if (!T5_) goto LA6_;
47973 		T2_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1140));
47974 	}
47975 	goto LA3_;
47976 	LA6_: ;
47977 	{
47978 		T2_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1141));
47979 	}
47980 	LA3_: ;
47981 	T1_[0] = rope__ropes_109(T2_);
47982 	T1_[1] = getDatInitName__cgen_26926(m);
47983 	prc = percent___cgen_27782(T1_, 2);
47984 	genCLineDir__cgen_334(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1142), ((NI) 999999), (*(*m).g).config);
47985 	{
47986 		tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg i;
47987 		NI res;
47988 		i = (tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg)0;
47989 		res = ((NI) 14);
47990 		{
47991 			while (1) {
47992 				if (!(res <= ((NI) 18))) goto LA11;
47993 				i = ((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) (res));
47994 				{
47995 					NI T14_;
47996 					T14_ = (NI)0;
47997 					T14_ = len__ropes_10((*m).s[(i)- 0]);
47998 					if (!!((T14_ == ((NI) 0)))) goto LA15_;
47999 					moduleDatInitRequired = NIM_TRUE;
48000 					add__ropes_159(&prc, (*m).s[(i)- 0]);
48001 				}
48002 				LA15_: ;
48003 				res += ((NI) 1);
48004 			} LA11: ;
48005 		}
48006 	}
48007 	nimZeroMem((void*)T17_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48008 	T18_ = NIM_NIL;
48009 	T18_ = percent___cgen_27793(T17_, 0);
48010 	add__ropes_159(&prc, T18_);
48011 	{
48012 		if (!moduleDatInitRequired) goto LA21_;
48013 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 13))- 0], prc);
48014 	}
48015 	LA21_: ;
48016 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_28139)48017 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28139)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48018 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48019 	result = NIM_NIL;
48020 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1169), args, argsLen_0);
48021 	return result;
48022 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27285)48023 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27285)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48024 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48025 	result = NIM_NIL;
48026 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1170), args, argsLen_0);
48027 	return result;
48028 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27297)48029 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27297)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48030 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48031 	result = NIM_NIL;
48032 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1171), args, argsLen_0);
48033 	return result;
48034 }
N_INLINE(NU64,hiXorLoFallback64__pureZhashes_35)48035 static N_INLINE(NU64, hiXorLoFallback64__pureZhashes_35)(NU64 a, NU64 b) {
48036 	NU64 result;
48037 	NU64 aH;
48038 	NU64 aL;
48039 	NU64 bH;
48040 	NU64 bL;
48041 	NU64 rHH;
48042 	NU64 rHL;
48043 	NU64 rLH;
48044 	NU64 rLL;
48045 	NU64 t;
48046 	NU64 c;
48047 	NU64 lo;
48048 	NU64 T6_;
48049 	NU64 hi;
48050 {	result = (NU64)0;
48051 	aH = (NU64)((NU64)(a) >> (NU64)(((NI) 32)));
48052 	aL = (NU64)(a & 4294967295ULL);
48053 	bH = (NU64)((NU64)(b) >> (NU64)(((NI) 32)));
48054 	bL = (NU64)(b & 4294967295ULL);
48055 	rHH = (NU64)((NU64)(aH) * (NU64)(bH));
48056 	rHL = (NU64)((NU64)(aH) * (NU64)(bL));
48057 	rLH = (NU64)((NU64)(aL) * (NU64)(bH));
48058 	rLL = (NU64)((NU64)(aL) * (NU64)(bL));
48059 	t = (NU64)((NU64)(rLL) + (NU64)((NU64)((NU64)(rHL) << (NU64)(((NI) 32)))));
48060 	{
48061 		if (!((NU64)(t) < (NU64)(rLL))) goto LA3_;
48062 		c = 1ULL;
48063 	}
48064 	goto LA1_;
48065 	LA3_: ;
48066 	{
48067 		c = 0ULL;
48068 	}
48069 	LA1_: ;
48070 	lo = (NU64)((NU64)(t) + (NU64)((NU64)((NU64)(rLH) << (NU64)(((NI) 32)))));
48071 	T6_ = (NU64)0;
48072 	{
48073 		if (!((NU64)(lo) < (NU64)(t))) goto LA9_;
48074 		T6_ = 1ULL;
48075 	}
48076 	goto LA7_;
48077 	LA9_: ;
48078 	{
48079 		T6_ = 0ULL;
48080 	}
48081 	LA7_: ;
48082 	c += T6_;
48083 	hi = (NU64)((NU64)((NU64)((NU64)((NU64)((NU64)(rHH) + (NU64)((NU64)((NU64)(rHL) >> (NU64)(((NI) 32)))))) + (NU64)((NU64)((NU64)(rLH) >> (NU64)(((NI) 32)))))) + (NU64)(c));
48084 	result = (NU64)(hi ^ lo);
48085 	goto BeforeRet_;
48086 	}BeforeRet_: ;
48087 	return result;
48088 }
N_INLINE(NU64,hiXorLo__pureZhashes_79)48089 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b) {
48090 	NU64 result;
48091 	result = (NU64)0;
48092 	result = hiXorLoFallback64__pureZhashes_35(a, b);
48093 	return result;
48094 }
N_INLINE(NI,hashWangYi1__pureZhashes_136)48095 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x) {
48096 	NI result;
48097 	NU64 T1_;
48098 	NU64 T2_;
48099 	result = (NI)0;
48100 	T1_ = (NU64)0;
48101 	T1_ = hiXorLo__pureZhashes_79(11562461410679940143ULL, (NU64)(x ^ 16646288086500911323ULL));
48102 	T2_ = (NU64)0;
48103 	T2_ = hiXorLo__pureZhashes_79(T1_, 16952864883938283885ULL);
48104 	result = ((NI) (T2_));
48105 	return result;
48106 }
N_INLINE(NI,hash__ast_780)48107 static N_INLINE(NI, hash__ast_780)(NI32 x) {
48108 	NI result;
48109 	result = (NI)0;
48110 	result = hashWangYi1__pureZhashes_136(((NU64) (x)));
48111 	return result;
48112 }
N_INLINE(NI,rawGet__cgen_27308)48113 static N_INLINE(NI, rawGet__cgen_27308)(tyObject_Table__fdKWDDO1P17zvuQPReVgRA t, NI32 key, NI* hc) {
48114 	NI result;
48115 	NI h;
48116 	NI T10_;
48117 {	result = (NI)0;
48118 	(*hc) = hash__ast_780(key);
48119 	{
48120 		if (!((*hc) == ((NI) 0))) goto LA3_;
48121 		(*hc) = ((NI) 314159265);
48122 	}
48123 	LA3_: ;
48124 	{
48125 		NI T7_;
48126 		T7_ = (t.data ? t.data->Sup.len : 0);
48127 		if (!(T7_ == ((NI) 0))) goto LA8_;
48128 		result = ((NI) -1);
48129 		goto BeforeRet_;
48130 	}
48131 	LA8_: ;
48132 	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
48133 	h = (NI)((*hc) & T10_);
48134 	{
48135 		while (1) {
48136 			NIM_BOOL T13_;
48137 			NI T20_;
48138 			T13_ = (NIM_BOOL)0;
48139 			T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
48140 			if (!T13_) goto LA12;
48141 			{
48142 				NIM_BOOL T16_;
48143 				T16_ = (NIM_BOOL)0;
48144 				T16_ = (t.data->data[h].Field0 == (*hc));
48145 				if (!(T16_)) goto LA17_;
48146 				T16_ = (t.data->data[h].Field1 == key);
48147 				LA17_: ;
48148 				if (!T16_) goto LA18_;
48149 				result = h;
48150 				goto BeforeRet_;
48151 			}
48152 			LA18_: ;
48153 			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
48154 			h = nextTry__pureZcollectionsZtables_34(h, T20_);
48155 		} LA12: ;
48156 	}
48157 	result = (NI)(((NI) -1) - h);
48158 	}BeforeRet_: ;
48159 	return result;
48160 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27629)48161 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27629)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48162 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48163 	result = NIM_NIL;
48164 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1172), args, argsLen_0);
48165 	return result;
48166 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27634)48167 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27634)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48168 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48169 	result = NIM_NIL;
48170 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1173), args, argsLen_0);
48171 	return result;
48172 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27639)48173 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27639)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48174 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48175 	result = NIM_NIL;
48176 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1174), args, argsLen_0);
48177 	return result;
48178 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27648)48179 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27648)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48180 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48181 	result = NIM_NIL;
48182 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1175), args, argsLen_0);
48183 	return result;
48184 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27653)48185 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27653)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48186 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48187 	result = NIM_NIL;
48188 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1176), args, argsLen_0);
48189 	return result;
48190 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27662)48191 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27662)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48192 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48193 	result = NIM_NIL;
48194 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1177), args, argsLen_0);
48195 	return result;
48196 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27667)48197 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27667)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48198 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48199 	result = NIM_NIL;
48200 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1178), args, argsLen_0);
48201 	return result;
48202 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27222)48203 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27222)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48204 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48205 	result = NIM_NIL;
48206 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1179), args, argsLen_0);
48207 	return result;
48208 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27676)48209 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27676)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48210 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48211 	result = NIM_NIL;
48212 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1180), args, argsLen_0);
48213 	return result;
48214 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27681)48215 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27681)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48216 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48217 	result = NIM_NIL;
48218 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1181), args, argsLen_0);
48219 	return result;
48220 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27686)48221 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27686)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48222 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48223 	result = NIM_NIL;
48224 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1182), args, argsLen_0);
48225 	return result;
48226 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27691)48227 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27691)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48228 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48229 	result = NIM_NIL;
48230 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1183), args, argsLen_0);
48231 	return result;
48232 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27701)48233 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27701)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48234 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48235 	result = NIM_NIL;
48236 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1188), args, argsLen_0);
48237 	return result;
48238 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27706)48239 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27706)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48240 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48241 	result = NIM_NIL;
48242 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1189), args, argsLen_0);
48243 	return result;
48244 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_27217)48245 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_27217)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
48246 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
48247 	result = NIM_NIL;
48248 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1192), args, argsLen_0);
48249 	return result;
48250 }
N_NIMCALL(void,registerModuleToMain__cgen_27280)48251 N_LIB_PRIVATE N_NIMCALL(void, registerModuleToMain__cgen_27280)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g, tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
48252 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* init;
48253 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* datInit;
48254 {	init = getInitName__cgen_26919(m);
48255 	datInit = getDatInitName__cgen_26926(m);
48256 	{
48257 		NIM_BOOL T3_;
48258 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* hcrModuleMeta;
48259 		tyArray__qTjAvTvKF9anytN1At69aJMQ T6_;
48260 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* systemModulePath;
48261 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* mainModulePath;
48262 		NI hcX60gensym6309_;
48263 		NI indexX60gensym6309_;
48264 		NIM_BOOL hasKeyX60gensym6309_;
48265 		tyArray__qTjAvTvKF9anytN1At69aJMQ T23_;
48266 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T24_;
48267 		tyArray__qTjAvTvKF9anytN1At69aJMQ T25_;
48268 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T26_;
48269 		tyArray__JiWwrsTRC6xqNlGcBthSVA T27_;
48270 		tyArray__qtqsWM5aXmcpMIVmvq3kAA T28_;
48271 		NimStringDesc* T29_;
48272 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T30_;
48273 		T3_ = (NIM_BOOL)0;
48274 		T3_ = hcrOn__cgen_42(m);
48275 		if (!T3_) goto LA4_;
48276 		nimZeroMem((void*)T6_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48277 		hcrModuleMeta = percent___cgen_27285(T6_, 0);
48278 		systemModulePath = getModuleDllPath__cgen_136(m, (*(*g).modules->data[(*(*(*g).graph).config).m.systemFileIdx]).module);
48279 		mainModulePath = getModuleDllPath__cgen_136(m, (*m).module);
48280 		{
48281 			tyArray__JiWwrsTRC6xqNlGcBthSVA T11_;
48282 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
48283 			if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA9_;
48284 			nimZeroMem((void*)T11_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48285 			T11_[0] = systemModulePath;
48286 			T12_ = NIM_NIL;
48287 			T12_ = percent___cgen_27297(T11_, 1);
48288 			add__ropes_159(&hcrModuleMeta, T12_);
48289 		}
48290 		LA9_: ;
48291 		hcX60gensym6309_ = (NI)0;
48292 		indexX60gensym6309_ = rawGet__cgen_27308((*(*g).graph).importDeps, ((NI32) ((*(*m).module).position)), (&hcX60gensym6309_));
48293 		hasKeyX60gensym6309_ = (((NI) 0) <= indexX60gensym6309_);
48294 		{
48295 			tySequence__48JTohSgTy339bRxHzUD8KA** deps;
48296 			if (!hasKeyX60gensym6309_) goto LA15_;
48297 			deps = (&(*(*g).graph).importDeps.data->data[indexX60gensym6309_].Field2);
48298 			{
48299 				NI32* curr;
48300 				NI i;
48301 				NI L;
48302 				NI T18_;
48303 				curr = (NI32*)0;
48304 				i = ((NI) 0);
48305 				T18_ = ((*deps) ? (*deps)->Sup.len : 0);
48306 				L = T18_;
48307 				{
48308 					while (1) {
48309 						tyArray__JiWwrsTRC6xqNlGcBthSVA T21_;
48310 						tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T22_;
48311 						if (!(i < L)) goto LA20;
48312 						curr = (&(*deps)->data[i]);
48313 						nimZeroMem((void*)T21_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48314 						T21_[0] = getModuleDllPath__cgen_136(m, (*(*g).modules->data[(*curr)]).module);
48315 						T22_ = NIM_NIL;
48316 						T22_ = percent___cgen_27297(T21_, 1);
48317 						add__ropes_159(&hcrModuleMeta, T22_);
48318 						i += ((NI) 1);
48319 					} LA20: ;
48320 				}
48321 			}
48322 		}
48323 		LA15_: ;
48324 		nimZeroMem((void*)T23_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48325 		T24_ = NIM_NIL;
48326 		T24_ = percent___cgen_27629(T23_, 0);
48327 		add__ropes_159(&hcrModuleMeta, T24_);
48328 		nimZeroMem((void*)T25_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48329 		T26_ = NIM_NIL;
48330 		T26_ = percent___cgen_27634(T25_, 0);
48331 		add__ropes_159(&hcrModuleMeta, T26_);
48332 		nimZeroMem((void*)T27_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48333 		nimZeroMem((void*)T28_, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
48334 		sigHash__sighashes_522((*m).module, T28_);
48335 		T29_ = NIM_NIL;
48336 		T29_ = dollar___modulegraphs_8947(T28_);
48337 		T27_[0] = rope__ropes_109(T29_);
48338 		T30_ = NIM_NIL;
48339 		T30_ = percent___cgen_27639(T27_, 1);
48340 		add__ropes_159(&hcrModuleMeta, T30_);
48341 		{
48342 			tyArray__qTjAvTvKF9anytN1At69aJMQ T35_;
48343 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
48344 			tyArray__JiWwrsTRC6xqNlGcBthSVA T37_;
48345 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
48346 			tyArray__JiWwrsTRC6xqNlGcBthSVA T39_;
48347 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
48348 			tyArray__JiWwrsTRC6xqNlGcBthSVA T41_;
48349 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
48350 			tyArray__qTjAvTvKF9anytN1At69aJMQ T43_;
48351 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T44_;
48352 			tyArray__JiWwrsTRC6xqNlGcBthSVA T45_;
48353 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
48354 			tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T47_;
48355 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T48_;
48356 			tyArray__JiWwrsTRC6xqNlGcBthSVA T49_;
48357 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
48358 			tyArray__JiWwrsTRC6xqNlGcBthSVA T51_;
48359 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T52_;
48360 			tyArray__qTjAvTvKF9anytN1At69aJMQ T53_;
48361 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
48362 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* osModulePath;
48363 			NimStringDesc* T55_;
48364 			NimStringDesc* T56_;
48365 			tyArray__JiWwrsTRC6xqNlGcBthSVA T57_;
48366 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T58_;
48367 			tyArray__JiWwrsTRC6xqNlGcBthSVA T59_;
48368 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T60_;
48369 			tyArray__JiWwrsTRC6xqNlGcBthSVA T61_;
48370 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T62_;
48371 			if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA33_;
48372 			add__ropes_159(&(*g).mainModProcs, hcrModuleMeta);
48373 			nimZeroMem((void*)T35_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48374 			T36_ = NIM_NIL;
48375 			T36_ = percent___cgen_27648(T35_, 0);
48376 			add__ropes_159(&(*g).mainModProcs, T36_);
48377 			nimZeroMem((void*)T37_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48378 			T37_[0] = init;
48379 			T38_ = NIM_NIL;
48380 			T38_ = percent___cgen_27653(T37_, 1);
48381 			add__ropes_159(&(*g).mainModProcs, T38_);
48382 			nimZeroMem((void*)T39_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48383 			T39_[0] = datInit;
48384 			T40_ = NIM_NIL;
48385 			T40_ = percent___cgen_27653(T39_, 1);
48386 			add__ropes_159(&(*g).mainModProcs, T40_);
48387 			nimZeroMem((void*)T41_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48388 			T41_[0] = getHcrInitName__cgen_26929(m);
48389 			T42_ = NIM_NIL;
48390 			T42_ = percent___cgen_27662(T41_, 1);
48391 			add__ropes_159(&(*g).mainModProcs, T42_);
48392 			nimZeroMem((void*)T43_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48393 			T44_ = NIM_NIL;
48394 			T44_ = percent___cgen_27667(T43_, 0);
48395 			add__ropes_159(&(*g).mainModProcs, T44_);
48396 			nimZeroMem((void*)T45_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48397 			T45_[0] = init;
48398 			T46_ = NIM_NIL;
48399 			T46_ = percent___cgen_27222(T45_, 1);
48400 			add__ropes_159(&(*g).mainModInit, T46_);
48401 			nimZeroMem((void*)T47_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
48402 			T47_[0] = mainModulePath;
48403 			T47_[1] = systemModulePath;
48404 			T47_[2] = datInit;
48405 			T48_ = NIM_NIL;
48406 			T48_ = percent___cgen_27676(T47_, 3);
48407 			add__ropes_159(&(*g).otherModsInit, T48_);
48408 			nimZeroMem((void*)T49_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48409 			T49_[0] = getHcrInitName__cgen_26929(m);
48410 			T50_ = NIM_NIL;
48411 			T50_ = percent___cgen_27681(T49_, 1);
48412 			add__ropes_159(&(*g).mainDatInit, T50_);
48413 			nimZeroMem((void*)T51_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48414 			T51_[0] = mainModulePath;
48415 			T52_ = NIM_NIL;
48416 			T52_ = percent___cgen_27686(T51_, 1);
48417 			add__ropes_159(&(*g).mainDatInit, T52_);
48418 			nimZeroMem((void*)T53_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48419 			T54_ = NIM_NIL;
48420 			T54_ = percent___cgen_27691(T53_, 0);
48421 			add__ropes_159(&(*g).mainDatInit, T54_);
48422 			T55_ = NIM_NIL;
48423 			T55_ = dollar___ropes_250(systemModulePath);
48424 			T56_ = NIM_NIL;
48425 			T56_ = nsuReplaceStr(T55_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1184), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1185));
48426 			osModulePath = rope__ropes_109(T56_);
48427 			nimZeroMem((void*)T57_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48428 			T57_[0] = osModulePath;
48429 			T58_ = NIM_NIL;
48430 			T58_ = percent___cgen_27686(T57_, 1);
48431 			add__ropes_159(&(*g).mainDatInit, T58_);
48432 			add__ropes_162(&(*g).mainDatInit, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1186));
48433 			add__ropes_162(&(*g).mainDatInit, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1187));
48434 			nimZeroMem((void*)T59_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48435 			T59_[0] = osModulePath;
48436 			T60_ = NIM_NIL;
48437 			T60_ = percent___cgen_27701(T59_, 1);
48438 			add__ropes_159(&(*g).mainDatInit, T60_);
48439 			nimZeroMem((void*)T61_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48440 			T61_[0] = osModulePath;
48441 			T62_ = NIM_NIL;
48442 			T62_ = percent___cgen_27706(T61_, 1);
48443 			add__ropes_159(&(*g).mainDatInit, T62_);
48444 			add__ropes_162(&(*g).mainDatInit, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1190));
48445 			add__ropes_162(&(*g).mainDatInit, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1191));
48446 		}
48447 		goto LA31_;
48448 		LA33_: ;
48449 		{
48450 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0], hcrModuleMeta);
48451 		}
48452 		LA31_: ;
48453 		goto BeforeRet_;
48454 	}
48455 	LA4_: ;
48456 	{
48457 		NI T66_;
48458 		tyArray__JiWwrsTRC6xqNlGcBthSVA T69_;
48459 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T70_;
48460 		tyArray__JiWwrsTRC6xqNlGcBthSVA T71_;
48461 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T72_;
48462 		T66_ = (NI)0;
48463 		T66_ = len__ropes_10((*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 13))- 0]);
48464 		if (!(((NI) 0) < T66_)) goto LA67_;
48465 		nimZeroMem((void*)T69_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48466 		T69_[0] = datInit;
48467 		T70_ = NIM_NIL;
48468 		T70_ = percent___cgen_27217(T69_, 1);
48469 		add__ropes_159(&(*g).mainModProcs, T70_);
48470 		nimZeroMem((void*)T71_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48471 		T71_[0] = datInit;
48472 		T72_ = NIM_NIL;
48473 		T72_ = percent___cgen_27222(T71_, 1);
48474 		add__ropes_159(&(*g).mainDatInit, T72_);
48475 	}
48476 	LA67_: ;
48477 	{
48478 		if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0)) goto LA75_;
48479 		{
48480 			NIM_BOOL T79_;
48481 			NimStringDesc* res;
48482 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T83_;
48483 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T84_;
48484 			T79_ = (NIM_BOOL)0;
48485 			T79_ = emulatedThreadVars__cgen_409((*(*m).g).config);
48486 			if (!(T79_)) goto LA80_;
48487 			T79_ = !(((*(*(*m).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 29)));
48488 			LA80_: ;
48489 			if (!T79_) goto LA81_;
48490 			res = rawNewString(((NI) 80));
48491 			res = resizeString(res, 1);
48492 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
48493 			T83_ = NIM_NIL;
48494 			T83_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1134));
48495 			cgFormatValue__cgen_141((&res), T83_);
48496 			res = resizeString(res, 4);
48497 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1193));
48498 			T84_ = NIM_NIL;
48499 			T84_ = rope__ropes_109(res);
48500 			add__ropes_159(&(*g).mainDatInit, T84_);
48501 		}
48502 		LA81_: ;
48503 		{
48504 			NIM_BOOL T87_;
48505 			NimStringDesc* res_2;
48506 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T91_;
48507 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T92_;
48508 			T87_ = (NIM_BOOL)0;
48509 			T87_ = !(((*(*(*m).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 29)));
48510 			if (!(T87_)) goto LA88_;
48511 			T87_ = !(((50 &((NU16)1<<((NU)((*(*(*m).g).config).selectedGC)&15U)))!=0));
48512 			LA88_: ;
48513 			if (!T87_) goto LA89_;
48514 			res_2 = rawNewString(((NI) 80));
48515 			res_2 = resizeString(res_2, 1);
48516 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
48517 			T91_ = NIM_NIL;
48518 			T91_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1133));
48519 			cgFormatValue__cgen_141((&res_2), T91_);
48520 			res_2 = resizeString(res_2, 18);
48521 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1194));
48522 			T92_ = NIM_NIL;
48523 			T92_ = rope__ropes_109(res_2);
48524 			add__ropes_159(&(*g).mainDatInit, T92_);
48525 		}
48526 		LA89_: ;
48527 	}
48528 	LA75_: ;
48529 	{
48530 		NI T95_;
48531 		tyArray__JiWwrsTRC6xqNlGcBthSVA T98_;
48532 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T99_;
48533 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* initCall;
48534 		tyArray__JiWwrsTRC6xqNlGcBthSVA T100_;
48535 		T95_ = (NI)0;
48536 		T95_ = len__ropes_10((*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0]);
48537 		if (!(((NI) 0) < T95_)) goto LA96_;
48538 		nimZeroMem((void*)T98_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48539 		T98_[0] = init;
48540 		T99_ = NIM_NIL;
48541 		T99_ = percent___cgen_27217(T98_, 1);
48542 		add__ropes_159(&(*g).mainModProcs, T99_);
48543 		nimZeroMem((void*)T100_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48544 		T100_[0] = init;
48545 		initCall = percent___cgen_27222(T100_, 1);
48546 		{
48547 			if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA103_;
48548 			add__ropes_159(&(*g).mainModInit, initCall);
48549 		}
48550 		goto LA101_;
48551 		LA103_: ;
48552 		{
48553 			if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0)) goto LA106_;
48554 			add__ropes_159(&(*g).mainDatInit, initCall);
48555 		}
48556 		goto LA101_;
48557 		LA106_: ;
48558 		{
48559 			add__ropes_159(&(*g).otherModsInit, initCall);
48560 		}
48561 		LA101_: ;
48562 	}
48563 	LA96_: ;
48564 	}BeforeRet_: ;
48565 }
N_NIMCALL(void,genInitCode__cgen_27847)48566 N_LIB_PRIVATE N_NIMCALL(void, genInitCode__cgen_27847)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
48567 	NIM_BOOL moduleInitRequired;
48568 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* initname;
48569 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* prc;
48570 	tyArray__mrugoXXRZUEeG9bEXo9auBKw T1_;
48571 	NimStringDesc* T2_;
48572 	tyArray__qTjAvTvKF9anytN1At69aJMQ T109_;
48573 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T110_;
48574 	tyArray__qTjAvTvKF9anytN1At69aJMQ T213_;
48575 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T214_;
48576 	tyArray__qTjAvTvKF9anytN1At69aJMQ T215_;
48577 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T216_;
48578 	moduleInitRequired = hcrOn__cgen_42(m);
48579 	initname = getInitName__cgen_26919(m);
48580 	nimZeroMem((void*)T1_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
48581 	T2_ = NIM_NIL;
48582 	{
48583 		NIM_BOOL T5_;
48584 		T5_ = (NIM_BOOL)0;
48585 		T5_ = hcrOn__cgen_42(m);
48586 		if (!T5_) goto LA6_;
48587 		T2_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1140));
48588 	}
48589 	goto LA3_;
48590 	LA6_: ;
48591 	{
48592 		T2_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1141));
48593 	}
48594 	LA3_: ;
48595 	T1_[0] = rope__ropes_109(T2_);
48596 	T1_[1] = initname;
48597 	prc = percent___cgen_27782(T1_, 2);
48598 	genCLineDir__cgen_334(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1142), ((NI) 999999), (*(*m).g).config);
48599 	{
48600 		if (!(((NI) 0) < (*m).typeNodes)) goto LA11_;
48601 		{
48602 			NIM_BOOL T15_;
48603 			NimStringDesc* res;
48604 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T18_;
48605 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
48606 			NimStringDesc* res_2;
48607 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
48608 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T21_;
48609 			T15_ = (NIM_BOOL)0;
48610 			T15_ = hcrOn__cgen_42(m);
48611 			if (!T15_) goto LA16_;
48612 			res = rawNewString(((NI) 80));
48613 			res = resizeString(res, 1);
48614 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
48615 			T18_ = NIM_NIL;
48616 			T18_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_135));
48617 			cgFormatValue__cgen_141((&res), T18_);
48618 			res = resizeString(res, 2);
48619 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1143));
48620 			cgFormatValue__cgen_141((&res), (*m).typeNodesName);
48621 			res = resizeString(res, 2);
48622 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_510));
48623 			T19_ = NIM_NIL;
48624 			T19_ = rope__ropes_109(res);
48625 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 14))- 0], T19_);
48626 			res_2 = rawNewString(((NI) 80));
48627 			res_2 = resizeString(res_2, 19);
48628 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1144));
48629 			T20_ = NIM_NIL;
48630 			T20_ = getModuleDllPath__cgen_136(m, (*m).module);
48631 			cgFormatValue__cgen_141((&res_2), T20_);
48632 			res_2 = resizeString(res_2, 3);
48633 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_554));
48634 			cgFormatValue__cgen_141((&res_2), (*m).typeNodesName);
48635 			res_2 = resizeString(res_2, 1);
48636 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_3));
48637 			cgFormatValue__cgen_148((&res_2), ((NI64) ((*m).typeNodes)));
48638 			res_2 = resizeString(res_2, 22);
48639 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1145));
48640 			cgFormatValue__cgen_148((&res_2), ((NI64) ((*m).typeNodes)));
48641 			res_2 = resizeString(res_2, 17);
48642 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1146));
48643 			cgFormatValue__cgen_141((&res_2), (*m).typeNodesName);
48644 			res_2 = resizeString(res_2, 3);
48645 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1017));
48646 			T21_ = NIM_NIL;
48647 			T21_ = rope__ropes_109(res_2);
48648 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 14))- 0], T21_);
48649 		}
48650 		goto LA13_;
48651 		LA16_: ;
48652 		{
48653 			NimStringDesc* res_3;
48654 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T23_;
48655 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
48656 			res_3 = rawNewString(((NI) 80));
48657 			res_3 = resizeString(res_3, 7);
48658 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_29));
48659 			T23_ = NIM_NIL;
48660 			T23_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_135));
48661 			cgFormatValue__cgen_141((&res_3), T23_);
48662 			res_3 = resizeString(res_3, 1);
48663 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
48664 			cgFormatValue__cgen_141((&res_3), (*m).typeNodesName);
48665 			res_3 = resizeString(res_3, 1);
48666 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
48667 			cgFormatValue__cgen_148((&res_3), ((NI64) ((*m).typeNodes)));
48668 			res_3 = resizeString(res_3, 2);
48669 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_305));
48670 			{
48671 				if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA26_;
48672 				res_3 = resizeString(res_3, 1);
48673 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
48674 			}
48675 			LA26_: ;
48676 			T28_ = NIM_NIL;
48677 			T28_ = rope__ropes_109(res_3);
48678 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 14))- 0], T28_);
48679 		}
48680 		LA13_: ;
48681 	}
48682 	LA11_: ;
48683 	{
48684 		NimStringDesc* res_4;
48685 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T33_;
48686 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T38_;
48687 		if (!(((NI) 0) < (*m).nimTypes)) goto LA31_;
48688 		res_4 = rawNewString(((NI) 80));
48689 		res_4 = resizeString(res_4, 7);
48690 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_29));
48691 		T33_ = NIM_NIL;
48692 		T33_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_134));
48693 		cgFormatValue__cgen_141((&res_4), T33_);
48694 		res_4 = resizeString(res_4, 1);
48695 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_17));
48696 		cgFormatValue__cgen_141((&res_4), (*m).nimTypesName);
48697 		res_4 = resizeString(res_4, 1);
48698 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_180));
48699 		cgFormatValue__cgen_148((&res_4), ((NI64) ((*m).nimTypes)));
48700 		res_4 = resizeString(res_4, 2);
48701 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_305));
48702 		{
48703 			if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA36_;
48704 			res_4 = resizeString(res_4, 1);
48705 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
48706 		}
48707 		LA36_: ;
48708 		T38_ = NIM_NIL;
48709 		T38_ = rope__ropes_109(res_4);
48710 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 14))- 0], T38_);
48711 	}
48712 	LA31_: ;
48713 	{
48714 		NIM_BOOL T41_;
48715 		tyArray__JiWwrsTRC6xqNlGcBthSVA T44_;
48716 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T45_;
48717 		T41_ = (NIM_BOOL)0;
48718 		T41_ = hcrOn__cgen_42(m);
48719 		if (!T41_) goto LA42_;
48720 		nimZeroMem((void*)T44_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
48721 		T44_[0] = getModuleDllPath__cgen_136(m, (*m).module);
48722 		T45_ = NIM_NIL;
48723 		T45_ = percent___cgen_27900(T44_, 1);
48724 		add__ropes_159(&prc, T45_);
48725 	}
48726 	LA42_: ;
48727 	{
48728 		NIM_BOOL T48_;
48729 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T49_;
48730 		NI T50_;
48731 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T52_;
48732 		NI T53_;
48733 		tyArray__qTjAvTvKF9anytN1At69aJMQ T56_;
48734 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T57_;
48735 		tyArray__qTjAvTvKF9anytN1At69aJMQ T58_;
48736 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T59_;
48737 		tyArray__qTjAvTvKF9anytN1At69aJMQ T107_;
48738 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T108_;
48739 		T48_ = (NIM_BOOL)0;
48740 		T49_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48741 		T49_ = s__cgendata_225((*m).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
48742 		T50_ = (NI)0;
48743 		T50_ = len__ropes_10((*T49_));
48744 		T48_ = (((NI) 0) < T50_);
48745 		if (T48_) goto LA51_;
48746 		T52_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48747 		T52_ = s__cgendata_225((*m).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
48748 		T53_ = (NI)0;
48749 		T53_ = len__ropes_10((*T52_));
48750 		T48_ = (((NI) 0) < T53_);
48751 		LA51_: ;
48752 		if (!T48_) goto LA54_;
48753 		nimZeroMem((void*)T56_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48754 		T57_ = NIM_NIL;
48755 		T57_ = percent___cgen_27909(T56_, 0);
48756 		add__ropes_159(&prc, T57_);
48757 		nimZeroMem((void*)T58_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48758 		T59_ = NIM_NIL;
48759 		T59_ = percent___cgen_27914(T58_, 0);
48760 		add__ropes_159(&prc, T59_);
48761 		{
48762 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T62_;
48763 			NI T63_;
48764 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T70_;
48765 			T62_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48766 			T62_ = s__cgendata_225((*m).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
48767 			T63_ = (NI)0;
48768 			T63_ = len__ropes_10((*T62_));
48769 			if (!(((NI) 0) < T63_)) goto LA64_;
48770 			moduleInitRequired = NIM_TRUE;
48771 			{
48772 				if (!NIM_FALSE) goto LA68_;
48773 				add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1150));
48774 			}
48775 			LA68_: ;
48776 			T70_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48777 			T70_ = s__cgendata_225((*m).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
48778 			add__ropes_159(&prc, (*T70_));
48779 			{
48780 				if (!NIM_FALSE) goto LA73_;
48781 				add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1151));
48782 			}
48783 			LA73_: ;
48784 		}
48785 		LA64_: ;
48786 		{
48787 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T77_;
48788 			NI T78_;
48789 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T86_;
48790 			T77_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48791 			T77_ = s__cgendata_225((*m).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
48792 			T78_ = (NI)0;
48793 			T78_ = len__ropes_10((*T77_));
48794 			if (!(((NI) 0) < T78_)) goto LA79_;
48795 			moduleInitRequired = NIM_TRUE;
48796 			{
48797 				NIM_BOOL T83_;
48798 				T83_ = (NIM_BOOL)0;
48799 				T83_ = hcrOn__cgen_42(m);
48800 				if (!T83_) goto LA84_;
48801 				add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1150));
48802 			}
48803 			LA84_: ;
48804 			T86_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48805 			T86_ = s__cgendata_225((*m).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
48806 			add__ropes_159(&prc, (*T86_));
48807 			{
48808 				NIM_BOOL T89_;
48809 				T89_ = (NIM_BOOL)0;
48810 				T89_ = hcrOn__cgen_42(m);
48811 				if (!T89_) goto LA90_;
48812 				add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1151));
48813 			}
48814 			LA90_: ;
48815 		}
48816 		LA79_: ;
48817 		{
48818 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T94_;
48819 			NI T95_;
48820 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T102_;
48821 			T94_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48822 			T94_ = s__cgendata_225((*m).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
48823 			T95_ = (NI)0;
48824 			T95_ = len__ropes_10((*T94_));
48825 			if (!(((NI) 0) < T95_)) goto LA96_;
48826 			moduleInitRequired = NIM_TRUE;
48827 			{
48828 				if (!NIM_FALSE) goto LA100_;
48829 				add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1150));
48830 			}
48831 			LA100_: ;
48832 			T102_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48833 			T102_ = s__cgendata_225((*m).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
48834 			add__ropes_159(&prc, (*T102_));
48835 			{
48836 				if (!NIM_FALSE) goto LA105_;
48837 				add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1151));
48838 			}
48839 			LA105_: ;
48840 		}
48841 		LA96_: ;
48842 		nimZeroMem((void*)T107_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48843 		T108_ = NIM_NIL;
48844 		T108_ = percent___cgen_27919(T107_, 0);
48845 		add__ropes_159(&prc, T108_);
48846 	}
48847 	LA54_: ;
48848 	nimZeroMem((void*)T109_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48849 	T110_ = NIM_NIL;
48850 	T110_ = percent___cgen_27909(T109_, 0);
48851 	add__ropes_159(&prc, T110_);
48852 	{
48853 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T113_;
48854 		NI T114_;
48855 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T121_;
48856 		T113_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48857 		T113_ = s__cgendata_225((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
48858 		T114_ = (NI)0;
48859 		T114_ = len__ropes_10((*T113_));
48860 		if (!(((NI) 0) < T114_)) goto LA115_;
48861 		moduleInitRequired = NIM_TRUE;
48862 		{
48863 			if (!NIM_FALSE) goto LA119_;
48864 			add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1150));
48865 		}
48866 		LA119_: ;
48867 		T121_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48868 		T121_ = s__cgendata_225((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 0));
48869 		add__ropes_159(&prc, (*T121_));
48870 		{
48871 			if (!NIM_FALSE) goto LA124_;
48872 			add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1151));
48873 		}
48874 		LA124_: ;
48875 	}
48876 	LA115_: ;
48877 	{
48878 		NIM_BOOL T128_;
48879 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T129_;
48880 		NI T130_;
48881 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T132_;
48882 		NI T133_;
48883 		T128_ = (NIM_BOOL)0;
48884 		T129_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48885 		T129_ = s__cgendata_225((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
48886 		T130_ = (NI)0;
48887 		T130_ = len__ropes_10((*T129_));
48888 		T128_ = (((NI) 0) < T130_);
48889 		if (T128_) goto LA131_;
48890 		T132_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48891 		T132_ = s__cgendata_225((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
48892 		T133_ = (NI)0;
48893 		T133_ = len__ropes_10((*T132_));
48894 		T128_ = (((NI) 0) < T133_);
48895 		LA131_: ;
48896 		if (!T128_) goto LA134_;
48897 		moduleInitRequired = NIM_TRUE;
48898 		{
48899 			NIM_BOOL T138_;
48900 			T138_ = (NIM_BOOL)0;
48901 			T138_ = (((*(*m).initProc).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 17))&31U)))!=0);
48902 			if (!(T138_)) goto LA139_;
48903 			T138_ = !((((*m).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 2))&7U)))!=0));
48904 			LA139_: ;
48905 			if (!T138_) goto LA140_;
48906 			(*m).flags |= ((NU8)1)<<((((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 2)) & 7);
48907 			{
48908 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* procname;
48909 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T146_;
48910 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T147_;
48911 				if (!!((((*m).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 0))&7U)))!=0))) goto LA144_;
48912 				procname = makeCString__msgs_50((*(*(*m).module).name).s);
48913 				T146_ = NIM_NIL;
48914 				T146_ = quotedFilename__msgs_1464((*(*m).g).config, (*(*m).module).info);
48915 				T147_ = NIM_NIL;
48916 				T147_ = initFrame__cgen_17483((*m).initProc, procname, T146_);
48917 				add__ropes_159(&prc, T147_);
48918 			}
48919 			goto LA142_;
48920 			LA144_: ;
48921 			{
48922 				tyArray__qTjAvTvKF9anytN1At69aJMQ T149_;
48923 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T150_;
48924 				nimZeroMem((void*)T149_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48925 				T150_ = NIM_NIL;
48926 				T150_ = percent___cgen_27914(T149_, 0);
48927 				add__ropes_159(&prc, T150_);
48928 			}
48929 			LA142_: ;
48930 		}
48931 		LA140_: ;
48932 		{
48933 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T153_;
48934 			NI T154_;
48935 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T162_;
48936 			T153_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48937 			T153_ = s__cgendata_225((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
48938 			T154_ = (NI)0;
48939 			T154_ = len__ropes_10((*T153_));
48940 			if (!(((NI) 0) < T154_)) goto LA155_;
48941 			moduleInitRequired = NIM_TRUE;
48942 			{
48943 				NIM_BOOL T159_;
48944 				T159_ = (NIM_BOOL)0;
48945 				T159_ = hcrOn__cgen_42(m);
48946 				if (!T159_) goto LA160_;
48947 				add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1150));
48948 			}
48949 			LA160_: ;
48950 			T162_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48951 			T162_ = s__cgendata_225((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
48952 			add__ropes_159(&prc, (*T162_));
48953 			{
48954 				NIM_BOOL T165_;
48955 				T165_ = (NIM_BOOL)0;
48956 				T165_ = hcrOn__cgen_42(m);
48957 				if (!T165_) goto LA166_;
48958 				add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1151));
48959 			}
48960 			LA166_: ;
48961 		}
48962 		LA155_: ;
48963 		{
48964 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T170_;
48965 			NI T171_;
48966 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T178_;
48967 			T170_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48968 			T170_ = s__cgendata_225((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
48969 			T171_ = (NI)0;
48970 			T171_ = len__ropes_10((*T170_));
48971 			if (!(((NI) 0) < T171_)) goto LA172_;
48972 			moduleInitRequired = NIM_TRUE;
48973 			{
48974 				if (!NIM_FALSE) goto LA176_;
48975 				add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1150));
48976 			}
48977 			LA176_: ;
48978 			T178_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
48979 			T178_ = s__cgendata_225((*m).initProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
48980 			add__ropes_159(&prc, (*T178_));
48981 			{
48982 				if (!NIM_FALSE) goto LA181_;
48983 				add__ropes_162(&prc, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1151));
48984 			}
48985 			LA181_: ;
48986 		}
48987 		LA172_: ;
48988 		{
48989 			tyArray__qTjAvTvKF9anytN1At69aJMQ T187_;
48990 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T188_;
48991 			if (!(((*(*m).initProc).flags &((NU8)1<<((NU)(((tyEnum_TCProcFlag__LgBeaca7tT1nUR7RL1RjPQ) 0))&7U)))!=0)) goto LA185_;
48992 			nimZeroMem((void*)T187_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
48993 			T188_ = NIM_NIL;
48994 			T188_ = percent___cgen_27953(T187_, 0);
48995 			add__ropes_159(&prc, T188_);
48996 		}
48997 		LA185_: ;
48998 		{
48999 			NIM_BOOL T191_;
49000 			T191_ = (NIM_BOOL)0;
49001 			T191_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0);
49002 			if (!(T191_)) goto LA192_;
49003 			T191_ = ((*(*(*m).g).config).exc == ((tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ) 3));
49004 			LA192_: ;
49005 			if (!T191_) goto LA193_;
49006 			{
49007 				tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T197_;
49008 				NimStringDesc* res_5;
49009 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T200_;
49010 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T205_;
49011 				T197_ = NIM_NIL;
49012 				T197_ = getCompilerProc__magicsys_145((*(*m).g).graph, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1129));
49013 				if (!!((T197_ == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA198_;
49014 				res_5 = rawNewString(((NI) 80));
49015 				res_5 = resizeString(res_5, 1);
49016 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
49017 				T200_ = NIM_NIL;
49018 				T200_ = cgsym__cgen_120(m, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1129));
49019 				cgFormatValue__cgen_141((&res_5), T200_);
49020 				res_5 = resizeString(res_5, 3);
49021 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_399));
49022 				{
49023 					if (!!((((*(*(*m).g).config).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 12))&31U)))!=0))) goto LA203_;
49024 					res_5 = resizeString(res_5, 1);
49025 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
49026 				}
49027 				LA203_: ;
49028 				T205_ = NIM_NIL;
49029 				T205_ = rope__ropes_109(res_5);
49030 				add__ropes_159(&prc, T205_);
49031 			}
49032 			LA198_: ;
49033 		}
49034 		LA193_: ;
49035 		{
49036 			NIM_BOOL T208_;
49037 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T212_;
49038 			T208_ = (NIM_BOOL)0;
49039 			T208_ = (((*(*m).initProc).options &((NU32)1<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 17))&31U)))!=0);
49040 			if (!(T208_)) goto LA209_;
49041 			T208_ = !((((*m).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 0))&7U)))!=0));
49042 			LA209_: ;
49043 			if (!T208_) goto LA210_;
49044 			T212_ = NIM_NIL;
49045 			T212_ = deinitFrame__cgen_17553((*m).initProc);
49046 			add__ropes_159(&prc, T212_);
49047 		}
49048 		LA210_: ;
49049 	}
49050 	LA134_: ;
49051 	nimZeroMem((void*)T213_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
49052 	T214_ = NIM_NIL;
49053 	T214_ = percent___cgen_26223(T213_, 0);
49054 	add__ropes_159(&prc, T214_);
49055 	nimZeroMem((void*)T215_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
49056 	T216_ = NIM_NIL;
49057 	T216_ = percent___cgen_27793(T215_, 0);
49058 	add__ropes_159(&prc, T216_);
49059 	{
49060 		NIM_BOOL T219_;
49061 		tySequence__sM4lkSb7zS6F7OVMvW9cffQ* procsToLoad;
49062 		NimStringDesc* T222_;
49063 		NimStringDesc* T223_;
49064 		NimStringDesc* T224_;
49065 		NimStringDesc* T225_;
49066 		tyArray__JiWwrsTRC6xqNlGcBthSVA T226_;
49067 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T227_;
49068 		tyArray__qTjAvTvKF9anytN1At69aJMQ T241_;
49069 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T242_;
49070 		T219_ = (NIM_BOOL)0;
49071 		T219_ = hcrOn__cgen_42(m);
49072 		if (!T219_) goto LA220_;
49073 		procsToLoad = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) newSeq((&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_), 4);
49074 		T222_ = NIM_NIL;
49075 		T222_ = procsToLoad->data[0]; procsToLoad->data[0] = copyStringRC1(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1155));
49076 		if (T222_) nimGCunrefNoCycle(T222_);
49077 		T223_ = NIM_NIL;
49078 		T223_ = procsToLoad->data[1]; procsToLoad->data[1] = copyStringRC1(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1156));
49079 		if (T223_) nimGCunrefNoCycle(T223_);
49080 		T224_ = NIM_NIL;
49081 		T224_ = procsToLoad->data[2]; procsToLoad->data[2] = copyStringRC1(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1157));
49082 		if (T224_) nimGCunrefNoCycle(T224_);
49083 		T225_ = NIM_NIL;
49084 		T225_ = procsToLoad->data[3]; procsToLoad->data[3] = copyStringRC1(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1158));
49085 		if (T225_) nimGCunrefNoCycle(T225_);
49086 		nimZeroMem((void*)T226_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
49087 		T226_[0] = getHcrInitName__cgen_26929(m);
49088 		T227_ = NIM_NIL;
49089 		T227_ = percent___cgen_28004(T226_, 1);
49090 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0], T227_);
49091 		{
49092 			NI T232_;
49093 			NimStringDesc* T233_;
49094 			NI T234_;
49095 			NimStringDesc* T235_;
49096 			if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA230_;
49097 			procsToLoad = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(procsToLoad), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
49098 			T232_ = procsToLoad->Sup.len++;
49099 			T233_ = NIM_NIL;
49100 			T233_ = procsToLoad->data[T232_]; procsToLoad->data[T232_] = copyStringRC1(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1161));
49101 			if (T233_) nimGCunrefNoCycle(T233_);
49102 			procsToLoad = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(procsToLoad), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
49103 			T234_ = procsToLoad->Sup.len++;
49104 			T235_ = NIM_NIL;
49105 			T235_ = procsToLoad->data[T234_]; procsToLoad->data[T234_] = copyStringRC1(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1162));
49106 			if (T235_) nimGCunrefNoCycle(T235_);
49107 		}
49108 		LA230_: ;
49109 		{
49110 			NimStringDesc** curr;
49111 			NI i;
49112 			NI L;
49113 			NI T237_;
49114 			curr = (NimStringDesc**)0;
49115 			i = ((NI) 0);
49116 			T237_ = (procsToLoad ? procsToLoad->Sup.len : 0);
49117 			L = T237_;
49118 			{
49119 				while (1) {
49120 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T240_;
49121 					if (!(i < L)) goto LA239;
49122 					curr = (&procsToLoad->data[i]);
49123 					T240_ = NIM_NIL;
49124 					T240_ = hcrGetProcLoadCode__cgen_26932(m, (*curr), ((NimStringDesc*) NIM_NIL), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1165), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1166));
49125 					add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0], T240_);
49126 					i += ((NI) 1);
49127 				} LA239: ;
49128 			}
49129 		}
49130 		nimZeroMem((void*)T241_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
49131 		T242_ = NIM_NIL;
49132 		T242_ = percent___cgen_27793(T241_, 0);
49133 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0], T242_);
49134 	}
49135 	LA220_: ;
49136 	{
49137 		NIM_CHAR i_2;
49138 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* el;
49139 		NIM_CHAR i_3;
49140 		i_2 = (NIM_CHAR)0;
49141 		el = NIM_NIL;
49142 		i_3 = 48;
49143 		{
49144 			while (1) {
49145 				i_2 = i_3;
49146 				el = (*m).extensionLoaders[(((NU8)(i_3)))- 48];
49147 				{
49148 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* ex;
49149 					tyArray__mrugoXXRZUEeG9bEXo9auBKw T250_;
49150 					if (!!((el == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA248_;
49151 					nimZeroMem((void*)T250_, sizeof(tyArray__mrugoXXRZUEeG9bEXo9auBKw));
49152 					T250_[0] = rope__ropes_115(((NI64) ((NI)(((NU8)(i_2)) - ((NI) 48)))));
49153 					T250_[1] = el;
49154 					ex = percent___cgen_28129(T250_, 2);
49155 					moduleInitRequired = NIM_TRUE;
49156 					add__ropes_159(&prc, ex);
49157 				}
49158 				LA248_: ;
49159 				{
49160 					if (!((NU8)(57) <= (NU8)(((NIM_CHAR) (((NU8)(i_3))))))) goto LA253_;
49161 					goto LA244;
49162 				}
49163 				LA253_: ;
49164 				i_3 += ((NI) 1);
49165 			}
49166 		} LA244: ;
49167 	}
49168 	{
49169 		NIM_BOOL T257_;
49170 		T257_ = (NIM_BOOL)0;
49171 		T257_ = moduleInitRequired;
49172 		if (T257_) goto LA258_;
49173 		T257_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0);
49174 		LA258_: ;
49175 		if (!T257_) goto LA259_;
49176 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0], prc);
49177 	}
49178 	LA259_: ;
49179 	genDatInitCode__cgen_27779(m);
49180 	{
49181 		NIM_BOOL T263_;
49182 		tyArray__qTjAvTvKF9anytN1At69aJMQ T266_;
49183 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T267_;
49184 		tyArray__qTjAvTvKF9anytN1At69aJMQ T268_;
49185 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T269_;
49186 		T263_ = (NIM_BOOL)0;
49187 		T263_ = hcrOn__cgen_42(m);
49188 		if (!T263_) goto LA264_;
49189 		nimZeroMem((void*)T266_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
49190 		T267_ = NIM_NIL;
49191 		T267_ = percent___cgen_28139(T266_, 0);
49192 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0], T267_);
49193 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0], (*m).hcrCreateTypeInfosProc);
49194 		nimZeroMem((void*)T268_, sizeof(tyArray__qTjAvTvKF9anytN1At69aJMQ));
49195 		T269_ = NIM_NIL;
49196 		T269_ = percent___cgen_27793(T268_, 0);
49197 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0], T269_);
49198 	}
49199 	LA264_: ;
49200 	registerModuleToMain__cgen_27280((*m).g, m);
49201 }
N_NIMCALL(void,seqV2ContentType__cgen_3453)49202 N_LIB_PRIVATE N_NIMCALL(void, seqV2ContentType__cgen_3453)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_TType__facALICuu8zUj0hjvbTLFg* t, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* check) {
49203 	tyArray__qtqsWM5aXmcpMIVmvq3kAA sig;
49204 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49205 	nimZeroMem((void*)sig, sizeof(tyArray__qtqsWM5aXmcpMIVmvq3kAA));
49206 	hashType__sighashes_462(t, 2, sig);
49207 	result = cacheGetType__cgen_1353((*m).typeCache, sig);
49208 	{
49209 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
49210 		if (!(result == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL))) goto LA3_;
49211 		T5_ = NIM_NIL;
49212 		T5_ = getTypeDescAux__cgen_1314(m, t, check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
49213 		(void)(T5_);
49214 	}
49215 	goto LA1_;
49216 	LA3_: ;
49217 	{
49218 		NimStringDesc* res;
49219 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
49220 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
49221 		tyObject_TType__facALICuu8zUj0hjvbTLFg* T9_;
49222 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
49223 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
49224 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
49225 		res = rawNewString(((NI) 80));
49226 		res = resizeString(res, 2);
49227 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1195));
49228 		T7_ = NIM_NIL;
49229 		T7_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1196));
49230 		cgFormatValue__cgen_141((&res), T7_);
49231 		res = resizeString(res, 7);
49232 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1197));
49233 		cgFormatValue__cgen_141((&res), result);
49234 		res = resizeString(res, 12);
49235 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1198));
49236 		T8_ = NIM_NIL;
49237 		T8_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1196));
49238 		cgFormatValue__cgen_141((&res), T8_);
49239 		res = resizeString(res, 7);
49240 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1199));
49241 		cgFormatValue__cgen_141((&res), result);
49242 		res = resizeString(res, 19);
49243 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1200));
49244 		cgFormatValue__cgen_141((&res), result);
49245 		res = resizeString(res, 19);
49246 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1201));
49247 		T9_ = NIM_NIL;
49248 		T9_ = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
49249 		T10_ = NIM_NIL;
49250 		T10_ = getTypeDescAux__cgen_1314(m, (*T9_).sons->data[((NI) 0)], check, ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 8));
49251 		cgFormatValue__cgen_141((&res), T10_);
49252 		res = resizeString(res, 24);
49253 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1202));
49254 		T11_ = NIM_NIL;
49255 		T11_ = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1196));
49256 		cgFormatValue__cgen_141((&res), T11_);
49257 		res = resizeString(res, 13);
49258 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1203));
49259 		T12_ = NIM_NIL;
49260 		T12_ = rope__ropes_109(res);
49261 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 4))- 0], T12_);
49262 	}
49263 	LA1_: ;
49264 }
N_NIMCALL(void,finishTypeDescriptions__cgen_6680)49265 N_LIB_PRIVATE N_NIMCALL(void, finishTypeDescriptions__cgen_6680)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
49266 	NI i;
49267 	tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA check;
49268 	i = ((NI) 0);
49269 	nimZeroMem((void*)(&check), sizeof(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA));
49270 	initIntSet__pureZcollectionsZintsets_238((&check));
49271 	{
49272 		while (1) {
49273 			NI T3_;
49274 			tyObject_TType__facALICuu8zUj0hjvbTLFg* t;
49275 			T3_ = ((*m).typeStack ? (*m).typeStack->Sup.len : 0);
49276 			if (!(i < T3_)) goto LA2;
49277 			t = (*m).typeStack->data[i];
49278 			{
49279 				NIM_BOOL T6_;
49280 				tyObject_TType__facALICuu8zUj0hjvbTLFg* T8_;
49281 				T6_ = (NIM_BOOL)0;
49282 				T6_ = (((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 40))&63U)))!=0);
49283 				if (!(T6_)) goto LA7_;
49284 				T8_ = NIM_NIL;
49285 				T8_ = skipTypes__ast_3735(t, TM__MQdRN7fpbG7rPm4JpVVAhA_40);
49286 				T6_ = ((*T8_).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 24));
49287 				LA7_: ;
49288 				if (!T6_) goto LA9_;
49289 				seqV2ContentType__cgen_3453(m, t, (&check));
49290 			}
49291 			goto LA4_;
49292 			LA9_: ;
49293 			{
49294 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T12_;
49295 				T12_ = NIM_NIL;
49296 				T12_ = getTypeDescAux__cgen_1314(m, t, (&check), ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
49297 				(void)(T12_);
49298 			}
49299 			LA4_: ;
49300 			i += ((NI) 1);
49301 		} LA2: ;
49302 	}
49303 	asgnRef((void**) (&(*m).typeStack), (tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A*) setLengthSeqV2(&((*m).typeStack)->Sup, (&NTIttypeseq__9aZVGG5Gtti9cC9bqRpXCtA3A_), ((NI) 0)));
49304 }
N_NIMCALL(void,Marker_tyRef__UjwNQwrGjW3X9ahveEH9bnWA)49305 static N_NIMCALL(void, Marker_tyRef__UjwNQwrGjW3X9ahveEH9bnWA)(void* p, NI op) {
49306 	tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw* a;
49307 	a = (tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw*)p;
49308 	nimGCvisit((void*)(*a).m1, op);
49309 }
N_CLOSURE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,loadLib__cgen_26941)49310 N_LIB_PRIVATE N_CLOSURE(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, loadLib__cgen_26941)(NimStringDesc* handle, NimStringDesc* name, void* ClE_0) {
49311 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49312 	tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw* colonenvP_;
49313 	tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prc;
49314 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
49315 	NimStringDesc* res;
49316 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T1_;
49317 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
49318 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T3_;
49319 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
49320 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
49321 	result = NIM_NIL;
49322 	colonenvP_ = (tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw*) ClE_0;
49323 	prc = getCompilerProc__magicsys_145((*(*(*colonenvP_).m1).g).graph, name);
49324 	n = newStrNode__ast_3813(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20), (*(*(*prc).annex).path)._kind_3.strVal);
49325 	(*n).info = (*(*(*prc).annex).path).info;
49326 	res = rawNewString(((NI) 80));
49327 	res = resizeString(res, 7);
49328 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1205));
49329 	cgFormatValue__cgen_145((&res), handle);
49330 	res = resizeString(res, 3);
49331 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_92));
49332 	T1_ = NIM_NIL;
49333 	T1_ = cgsym__cgen_120((*colonenvP_).m1, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_422));
49334 	cgFormatValue__cgen_141((&res), T1_);
49335 	res = resizeString(res, 1);
49336 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
49337 	T2_ = NIM_NIL;
49338 	T2_ = genStringLiteral__cgen_608((*colonenvP_).m1, n);
49339 	cgFormatValue__cgen_141((&res), T2_);
49340 	res = resizeString(res, 6);
49341 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1206));
49342 	T3_ = NIM_NIL;
49343 	T3_ = cgsym__cgen_120((*colonenvP_).m1, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_426));
49344 	cgFormatValue__cgen_141((&res), T3_);
49345 	res = resizeString(res, 1);
49346 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_69));
49347 	T4_ = NIM_NIL;
49348 	T4_ = genStringLiteral__cgen_608((*colonenvP_).m1, n);
49349 	cgFormatValue__cgen_141((&res), T4_);
49350 	res = resizeString(res, 3);
49351 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1017));
49352 	T5_ = NIM_NIL;
49353 	T5_ = rope__ropes_109(res);
49354 	add__ropes_159(&result, T5_);
49355 	return result;
49356 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,closeNamespaceNim__cgen_25673)49357 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, closeNamespaceNim__cgen_25673)(void) {
49358 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49359 	result = NIM_NIL;
49360 	add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_298));
49361 	return result;
49362 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,openNamespaceNim__cgen_25670)49363 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, openNamespaceNim__cgen_25670)(NimStringDesc* namespace_0) {
49364 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49365 	result = NIM_NIL;
49366 	add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1242));
49367 	add__ropes_162(&result, namespace_0);
49368 	add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1243));
49369 	return result;
49370 }
N_NIMCALL(void,genMainProc__cgen_26938)49371 N_LIB_PRIVATE N_NIMCALL(void, genMainProc__cgen_26938)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
49372 	tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw* colonenv_;
49373 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* preMainCode;
49374 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* initStackBottomCall;
49375 	NimStringDesc* res_2;
49376 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T29_;
49377 	colonenv_ = NIM_NIL;
49378 	colonenv_ = (tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw*) newObj((&NTIrefobject__UjwNQwrGjW3X9ahveEH9bnWA_), sizeof(tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw));
49379 	(*colonenv_).Sup.m_type = (&NTIobject__IDX4istqRyOZp3l6j9aUesw_);
49380 	asgnRef((void**) (&(*colonenv_).m1), m);
49381 	preMainCode = NIM_NIL;
49382 	{
49383 		NIM_BOOL T3_;
49384 		tyProc__G7yv7dCrMxuDBcXNy2RR1w T6_;
49385 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
49386 		tyProc__G7yv7dCrMxuDBcXNy2RR1w T8_;
49387 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
49388 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
49389 		T3_ = (NIM_BOOL)0;
49390 		T3_ = hcrOn__cgen_42((*colonenv_).m1);
49391 		if (!T3_) goto LA4_;
49392 		nimZeroMem((void*)(&T6_), sizeof(tyProc__G7yv7dCrMxuDBcXNy2RR1w));
49393 		T6_.ClP_0 = loadLib__cgen_26941; T6_.ClE_0 = colonenv_;
49394 		T7_ = NIM_NIL;
49395 		T7_ = T6_.ClE_0? T6_.ClP_0(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1207), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1156), T6_.ClE_0):((TM__MQdRN7fpbG7rPm4JpVVAhA_1208)(T6_.ClP_0))(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1207), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1156));
49396 		add__ropes_159(&preMainCode, T7_);
49397 		add__ropes_162(&preMainCode, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1209));
49398 		nimZeroMem((void*)(&T8_), sizeof(tyProc__G7yv7dCrMxuDBcXNy2RR1w));
49399 		T8_.ClP_0 = loadLib__cgen_26941; T8_.ClE_0 = colonenv_;
49400 		T9_ = NIM_NIL;
49401 		T9_ = T8_.ClE_0? T8_.ClP_0(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1210), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1211), T8_.ClE_0):((TM__MQdRN7fpbG7rPm4JpVVAhA_1212)(T8_.ClP_0))(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1210), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1211));
49402 		add__ropes_159(&preMainCode, T9_);
49403 		T10_ = NIM_NIL;
49404 		T10_ = hcrGetProcLoadCode__cgen_26932((*colonenv_).m1, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1211), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1213), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1210), ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_435));
49405 		add__ropes_159(&preMainCode, T10_);
49406 		add__ropes_162(&preMainCode, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1214));
49407 		add__ropes_162(&preMainCode, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1215));
49408 		add__ropes_162(&preMainCode, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1216));
49409 	}
49410 	goto LA1_;
49411 	LA4_: ;
49412 	{
49413 		add__ropes_162(&preMainCode, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1217));
49414 	}
49415 	LA1_: ;
49416 	{
49417 		NIM_BOOL T14_;
49418 		T14_ = (NIM_BOOL)0;
49419 		T14_ = ((*(*(*(*colonenv_).m1).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 2));
49420 		if (!(T14_)) goto LA15_;
49421 		T14_ = !((((*(*(*(*colonenv_).m1).g).config).globalOptions & 640) == 0));
49422 		LA15_: ;
49423 		if (!T14_) goto LA16_;
49424 		includeHeader__cgendata_214((*colonenv_).m1, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1218));
49425 	}
49426 	goto LA12_;
49427 	LA16_: ;
49428 	{
49429 		if (!((*(*(*(*colonenv_).m1).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 26))) goto LA19_;
49430 		includeHeader__cgendata_214((*colonenv_).m1, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1219));
49431 	}
49432 	goto LA12_;
49433 	LA19_: ;
49434 	LA12_: ;
49435 	{
49436 		NIM_BOOL T23_;
49437 		T23_ = (NIM_BOOL)0;
49438 		T23_ = ((*(*(*(*colonenv_).m1).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 29));
49439 		if (T23_) goto LA24_;
49440 		T23_ = ((*(*(*(*colonenv_).m1).g).config).selectedGC == ((tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw) 1));
49441 		LA24_: ;
49442 		if (!T23_) goto LA25_;
49443 		initStackBottomCall = rope__ropes_109(((NimStringDesc*) NIM_NIL));
49444 	}
49445 	goto LA21_;
49446 	LA25_: ;
49447 	{
49448 		NimStringDesc* res;
49449 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
49450 		res = rawNewString(((NI) 80));
49451 		res = resizeString(res, 1);
49452 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_10));
49453 		T28_ = NIM_NIL;
49454 		T28_ = cgsym__cgen_120((*colonenv_).m1, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1133));
49455 		cgFormatValue__cgen_141((&res), T28_);
49456 		res = resizeString(res, 18);
49457 appendString(res, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1194));
49458 		initStackBottomCall = rope__ropes_109(res);
49459 	}
49460 	LA21_: ;
49461 	(*(*colonenv_).m1).labels += ((NI) 1);
49462 	res_2 = rawNewString(((NI) 80));
49463 	res_2 = resizeString(res_2, 41);
49464 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1220));
49465 	cgFormatValue__cgen_141((&res_2), (*(*(*colonenv_).m1).g).otherModsInit);
49466 	res_2 = resizeString(res_2, 177);
49467 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1221));
49468 	cgFormatValue__cgen_141((&res_2), (*(*(*colonenv_).m1).g).mainDatInit);
49469 	res_2 = resizeString(res_2, 16);
49470 appendString(res_2, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1222));
49471 	T29_ = NIM_NIL;
49472 	T29_ = rope__ropes_109(res_2);
49473 	add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T29_);
49474 	{
49475 		NIM_BOOL T32_;
49476 		T32_ = (NIM_BOOL)0;
49477 		T32_ = ((*(*(*(*colonenv_).m1).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 2));
49478 		if (!(T32_)) goto LA33_;
49479 		T32_ = !((((*(*(*(*colonenv_).m1).g).config).globalOptions & 640) == 0));
49480 		LA33_: ;
49481 		if (!T32_) goto LA34_;
49482 		{
49483 			NimStringDesc* res_3;
49484 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T40_;
49485 			if (!(((*(*(*(*colonenv_).m1).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 9))&63U)))!=0)) goto LA38_;
49486 			res_3 = rawNewString(((NI) 80));
49487 			res_3 = resizeString(res_3, 50);
49488 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1223));
49489 			cgFormatValue__cgen_141((&res_3), (*(*(*colonenv_).m1).g).mainModInit);
49490 			res_3 = resizeString(res_3, 17);
49491 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1224));
49492 			cgFormatValue__cgen_145((&res_3), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49493 			res_3 = resizeString(res_3, 48);
49494 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1225));
49495 			cgFormatValue__cgen_141((&res_3), preMainCode);
49496 			res_3 = resizeString(res_3, 23);
49497 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1226));
49498 			cgFormatValue__cgen_141((&res_3), initStackBottomCall);
49499 			res_3 = resizeString(res_3, 16);
49500 appendString(res_3, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1222));
49501 			T40_ = NIM_NIL;
49502 			T40_ = rope__ropes_109(res_3);
49503 			add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T40_);
49504 		}
49505 		goto LA36_;
49506 		LA38_: ;
49507 		{
49508 			NimStringDesc* res_4;
49509 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T42_;
49510 			res_4 = rawNewString(((NI) 80));
49511 			res_4 = resizeString(res_4, 50);
49512 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1223));
49513 			cgFormatValue__cgen_141((&res_4), (*(*(*colonenv_).m1).g).mainModInit);
49514 			res_4 = resizeString(res_4, 30);
49515 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1227));
49516 			cgFormatValue__cgen_145((&res_4), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49517 			res_4 = resizeString(res_4, 48);
49518 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1225));
49519 			cgFormatValue__cgen_141((&res_4), preMainCode);
49520 			res_4 = resizeString(res_4, 23);
49521 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1226));
49522 			cgFormatValue__cgen_141((&res_4), initStackBottomCall);
49523 			res_4 = resizeString(res_4, 16);
49524 appendString(res_4, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1222));
49525 			T42_ = NIM_NIL;
49526 			T42_ = rope__ropes_109(res_4);
49527 			add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T42_);
49528 		}
49529 		LA36_: ;
49530 	}
49531 	goto LA30_;
49532 	LA34_: ;
49533 	{
49534 		NimStringDesc* res_5;
49535 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T46_;
49536 		if (!((*(*(*(*colonenv_).m1).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 26))) goto LA44_;
49537 		res_5 = rawNewString(((NI) 80));
49538 		res_5 = resizeString(res_5, 143);
49539 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1228));
49540 		cgFormatValue__cgen_141((&res_5), (*(*(*colonenv_).m1).g).mainModInit);
49541 		res_5 = resizeString(res_5, 17);
49542 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1224));
49543 		cgFormatValue__cgen_145((&res_5), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49544 		res_5 = resizeString(res_5, 48);
49545 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1225));
49546 		cgFormatValue__cgen_141((&res_5), preMainCode);
49547 		res_5 = resizeString(res_5, 23);
49548 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1226));
49549 		cgFormatValue__cgen_141((&res_5), initStackBottomCall);
49550 		res_5 = resizeString(res_5, 16);
49551 appendString(res_5, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1222));
49552 		T46_ = NIM_NIL;
49553 		T46_ = rope__ropes_109(res_5);
49554 		add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T46_);
49555 	}
49556 	goto LA30_;
49557 	LA44_: ;
49558 	{
49559 		NimStringDesc* res_6;
49560 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T50_;
49561 		if (!(((*(*(*(*colonenv_).m1).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 7))&63U)))!=0)) goto LA48_;
49562 		res_6 = rawNewString(((NI) 80));
49563 		res_6 = resizeString(res_6, 50);
49564 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1223));
49565 		cgFormatValue__cgen_141((&res_6), (*(*(*colonenv_).m1).g).mainModInit);
49566 		res_6 = resizeString(res_6, 30);
49567 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1227));
49568 		cgFormatValue__cgen_145((&res_6), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49569 		res_6 = resizeString(res_6, 48);
49570 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1225));
49571 		cgFormatValue__cgen_141((&res_6), preMainCode);
49572 		res_6 = resizeString(res_6, 23);
49573 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1226));
49574 		cgFormatValue__cgen_141((&res_6), initStackBottomCall);
49575 		res_6 = resizeString(res_6, 16);
49576 appendString(res_6, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1222));
49577 		T50_ = NIM_NIL;
49578 		T50_ = rope__ropes_109(res_6);
49579 		add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T50_);
49580 	}
49581 	goto LA30_;
49582 	LA48_: ;
49583 	{
49584 		NimStringDesc* res_7;
49585 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T54_;
49586 		if (!((*(*(*(*colonenv_).m1).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 29))) goto LA52_;
49587 		res_7 = rawNewString(((NI) 80));
49588 		res_7 = resizeString(res_7, 50);
49589 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1223));
49590 		cgFormatValue__cgen_141((&res_7), (*(*(*colonenv_).m1).g).mainModInit);
49591 		res_7 = resizeString(res_7, 17);
49592 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1224));
49593 		cgFormatValue__cgen_145((&res_7), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49594 		res_7 = resizeString(res_7, 48);
49595 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1225));
49596 		cgFormatValue__cgen_141((&res_7), preMainCode);
49597 		res_7 = resizeString(res_7, 23);
49598 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1226));
49599 		cgFormatValue__cgen_141((&res_7), initStackBottomCall);
49600 		res_7 = resizeString(res_7, 16);
49601 appendString(res_7, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1222));
49602 		T54_ = NIM_NIL;
49603 		T54_ = rope__ropes_109(res_7);
49604 		add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T54_);
49605 	}
49606 	goto LA30_;
49607 	LA52_: ;
49608 	{
49609 		NimStringDesc* res_8;
49610 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T56_;
49611 		res_8 = rawNewString(((NI) 80));
49612 		res_8 = resizeString(res_8, 50);
49613 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1223));
49614 		cgFormatValue__cgen_141((&res_8), (*(*(*colonenv_).m1).g).mainModInit);
49615 		res_8 = resizeString(res_8, 17);
49616 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1224));
49617 		cgFormatValue__cgen_145((&res_8), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49618 		res_8 = resizeString(res_8, 48);
49619 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1225));
49620 		cgFormatValue__cgen_141((&res_8), preMainCode);
49621 		res_8 = resizeString(res_8, 23);
49622 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1226));
49623 		cgFormatValue__cgen_141((&res_8), initStackBottomCall);
49624 		res_8 = resizeString(res_8, 16);
49625 appendString(res_8, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1222));
49626 		T56_ = NIM_NIL;
49627 		T56_ = rope__ropes_109(res_8);
49628 		add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T56_);
49629 	}
49630 	LA30_: ;
49631 	{
49632 		if (!!((((*(*(*(*colonenv_).m1).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 21))&63U)))!=0))) goto LA59_;
49633 		{
49634 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T65_;
49635 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T66_;
49636 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T67_;
49637 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T68_;
49638 			if (!(((NI) 0) < ((*(*(*(*colonenv_).m1).g).config).cppCustomNamespace ? (*(*(*(*colonenv_).m1).g).config).cppCustomNamespace->Sup.len : 0))) goto LA63_;
49639 			T65_ = NIM_NIL;
49640 			T65_ = closeNamespaceNim__cgen_25673();
49641 			T66_ = NIM_NIL;
49642 			T66_ = amp___ropes_140(T65_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1229));
49643 			T67_ = NIM_NIL;
49644 			T67_ = amp___ropes_140(T66_, (*(*(*(*colonenv_).m1).g).config).cppCustomNamespace);
49645 			T68_ = NIM_NIL;
49646 			T68_ = amp___ropes_140(T67_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_510));
49647 			add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T68_);
49648 		}
49649 		LA63_: ;
49650 		{
49651 			NIM_BOOL T71_;
49652 			T71_ = (NIM_BOOL)0;
49653 			T71_ = ((*(*(*(*colonenv_).m1).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 2));
49654 			if (!(T71_)) goto LA72_;
49655 			T71_ = !((((*(*(*(*colonenv_).m1).g).config).globalOptions & 640) == 0));
49656 			LA72_: ;
49657 			if (!T71_) goto LA73_;
49658 			{
49659 				NimStringDesc* res_9;
49660 				NimStringDesc* T79_;
49661 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T86_;
49662 				if (!(((*(*(*(*colonenv_).m1).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 9))&63U)))!=0)) goto LA77_;
49663 				res_9 = rawNewString(((NI) 80));
49664 				res_9 = resizeString(res_9, 157);
49665 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1230));
49666 				cgFormatValue__cgen_145((&res_9), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49667 				res_9 = resizeString(res_9, 19);
49668 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1231));
49669 				T79_ = NIM_NIL;
49670 				{
49671 					NIM_BOOL T82_;
49672 					T82_ = (NIM_BOOL)0;
49673 					T82_ = hcrOn__cgen_42((*colonenv_).m1);
49674 					if (!T82_) goto LA83_;
49675 					T79_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59));
49676 				}
49677 				goto LA80_;
49678 				LA83_: ;
49679 				{
49680 					T79_ = ((NimStringDesc*) NIM_NIL);
49681 				}
49682 				LA80_: ;
49683 				cgFormatValue__cgen_145((&res_9), T79_);
49684 				res_9 = resizeString(res_9, 23);
49685 appendString(res_9, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1232));
49686 				T86_ = NIM_NIL;
49687 				T86_ = rope__ropes_109(res_9);
49688 				add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T86_);
49689 			}
49690 			goto LA75_;
49691 			LA77_: ;
49692 			{
49693 				NimStringDesc* res_10;
49694 				tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T88_;
49695 				res_10 = rawNewString(((NI) 80));
49696 				res_10 = resizeString(res_10, 140);
49697 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1233));
49698 				cgFormatValue__cgen_145((&res_10), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49699 				res_10 = resizeString(res_10, 27);
49700 appendString(res_10, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1234));
49701 				T88_ = NIM_NIL;
49702 				T88_ = rope__ropes_109(res_10);
49703 				add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T88_);
49704 			}
49705 			LA75_: ;
49706 		}
49707 		goto LA69_;
49708 		LA73_: ;
49709 		{
49710 			NimStringDesc* res_11;
49711 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T92_;
49712 			if (!((*(*(*(*colonenv_).m1).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 26))) goto LA90_;
49713 			res_11 = rawNewString(((NI) 80));
49714 			res_11 = resizeString(res_11, 185);
49715 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1235));
49716 			cgFormatValue__cgen_145((&res_11), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49717 			res_11 = resizeString(res_11, 83);
49718 appendString(res_11, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1236));
49719 			T92_ = NIM_NIL;
49720 			T92_ = rope__ropes_109(res_11);
49721 			add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T92_);
49722 		}
49723 		goto LA69_;
49724 		LA90_: ;
49725 		{
49726 			NimStringDesc* res_12;
49727 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T96_;
49728 			if (!(((*(*(*(*colonenv_).m1).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 7))&63U)))!=0)) goto LA94_;
49729 			res_12 = rawNewString(((NI) 80));
49730 			res_12 = resizeString(res_12, 55);
49731 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1237));
49732 			cgFormatValue__cgen_145((&res_12), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49733 			res_12 = resizeString(res_12, 14);
49734 appendString(res_12, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1238));
49735 			T96_ = NIM_NIL;
49736 			T96_ = rope__ropes_109(res_12);
49737 			add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T96_);
49738 		}
49739 		goto LA69_;
49740 		LA94_: ;
49741 		{
49742 			NimStringDesc* res_13;
49743 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T100_;
49744 			if (!((*(*(*(*colonenv_).m1).g).config).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 29))) goto LA98_;
49745 			res_13 = rawNewString(((NI) 80));
49746 			res_13 = resizeString(res_13, 18);
49747 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1239));
49748 			cgFormatValue__cgen_145((&res_13), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49749 			res_13 = resizeString(res_13, 25);
49750 appendString(res_13, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1240));
49751 			T100_ = NIM_NIL;
49752 			T100_ = rope__ropes_109(res_13);
49753 			add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T100_);
49754 		}
49755 		goto LA69_;
49756 		LA98_: ;
49757 		{
49758 			NimStringDesc* res_14;
49759 			NimStringDesc* T102_;
49760 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T109_;
49761 			res_14 = rawNewString(((NI) 80));
49762 			res_14 = resizeString(res_14, 95);
49763 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1241));
49764 			cgFormatValue__cgen_145((&res_14), (*(*(*(*colonenv_).m1).g).config).nimMainPrefix);
49765 			res_14 = resizeString(res_14, 19);
49766 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1231));
49767 			T102_ = NIM_NIL;
49768 			{
49769 				NIM_BOOL T105_;
49770 				T105_ = (NIM_BOOL)0;
49771 				T105_ = hcrOn__cgen_42((*colonenv_).m1);
49772 				if (!T105_) goto LA106_;
49773 				T102_ = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_59));
49774 			}
49775 			goto LA103_;
49776 			LA106_: ;
49777 			{
49778 				T102_ = ((NimStringDesc*) NIM_NIL);
49779 			}
49780 			LA103_: ;
49781 			cgFormatValue__cgen_145((&res_14), T102_);
49782 			res_14 = resizeString(res_14, 23);
49783 appendString(res_14, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1232));
49784 			T109_ = NIM_NIL;
49785 			T109_ = rope__ropes_109(res_14);
49786 			add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T109_);
49787 		}
49788 		LA69_: ;
49789 		{
49790 			tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T114_;
49791 			if (!(((NI) 0) < ((*(*(*(*colonenv_).m1).g).config).cppCustomNamespace ? (*(*(*(*colonenv_).m1).g).config).cppCustomNamespace->Sup.len : 0))) goto LA112_;
49792 			T114_ = NIM_NIL;
49793 			T114_ = openNamespaceNim__cgen_25670((*(*(*(*colonenv_).m1).g).config).cppCustomNamespace);
49794 			add__ropes_159(&(*(*colonenv_).m1).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T114_);
49795 		}
49796 		LA112_: ;
49797 	}
49798 	LA59_: ;
49799 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11243)49800 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11243)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
49801 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49802 	result = NIM_NIL;
49803 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1244), args, argsLen_0);
49804 	return result;
49805 }
N_NIMCALL(void,generateThreadVarsSize__cgen_11228)49806 N_LIB_PRIVATE N_NIMCALL(void, generateThreadVarsSize__cgen_11228)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
49807 	{
49808 		NimStringDesc* externc;
49809 		tyArray__JiWwrsTRC6xqNlGcBthSVA T12_;
49810 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
49811 		if (!!(((*(*m).g).nimtv == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)))) goto LA3_;
49812 		{
49813 			NIM_BOOL T7_;
49814 			T7_ = (NIM_BOOL)0;
49815 			T7_ = ((*(*(*m).g).config).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
49816 			if (T7_) goto LA8_;
49817 			T7_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 32))&63U)))!=0);
49818 			LA8_: ;
49819 			if (!T7_) goto LA9_;
49820 			externc = copyString(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_507));
49821 		}
49822 		goto LA5_;
49823 		LA9_: ;
49824 		{
49825 			externc = ((NimStringDesc*) NIM_NIL);
49826 		}
49827 		LA5_: ;
49828 		nimZeroMem((void*)T12_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
49829 		T12_[0] = rope__ropes_109(externc);
49830 		T13_ = NIM_NIL;
49831 		T13_ = percent___cgen_11243(T12_, 1);
49832 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 11))- 0], T13_);
49833 	}
49834 	LA3_: ;
49835 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_26868)49836 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26868)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
49837 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49838 	result = NIM_NIL;
49839 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1245), args, argsLen_0);
49840 	return result;
49841 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,headerTop__cgen_26866)49842 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, headerTop__cgen_26866)(void) {
49843 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49844 	tyArray__JiWwrsTRC6xqNlGcBthSVA T1_;
49845 	result = NIM_NIL;
49846 	nimZeroMem((void*)T1_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
49847 	T1_[0] = rope__ropes_109(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1246));
49848 	result = percent___cgen_26868(T1_, 1);
49849 	return result;
49850 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_26881)49851 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26881)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
49852 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49853 	result = NIM_NIL;
49854 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1247), args, argsLen_0);
49855 	return result;
49856 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getCopyright__cgen_26873)49857 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getCopyright__cgen_26873)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cfile) {
49858 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49859 	result = NIM_NIL;
49860 	result = headerTop__cgen_26866();
49861 	{
49862 		tyArray__f7nG5LD47BH5K9c6mASit3g T5_;
49863 		NimStringDesc* T6_;
49864 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
49865 		if (!!((((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 4))&63U)))!=0))) goto LA3_;
49866 		nimZeroMem((void*)T5_, sizeof(tyArray__f7nG5LD47BH5K9c6mASit3g));
49867 		T5_[0] = rope__ropes_109(OS__platform_504[((*conf).target.targetOS)- 1].Field0);
49868 		T5_[1] = rope__ropes_109(CPU__platform_691[((*conf).target.targetCPU)- 1].Field0);
49869 		T5_[2] = rope__ropes_109(CC__extccomp_508[((*conf).cCompiler)- 1].Field0);
49870 		T6_ = NIM_NIL;
49871 		T6_ = getCompileCFileCmd__extccomp_997(conf, cfile, NIM_FALSE, NIM_FALSE);
49872 		T5_[3] = rope__ropes_109(T6_);
49873 		T7_ = NIM_NIL;
49874 		T7_ = percent___cgen_26881(T5_, 4);
49875 		add__ropes_159(&result, T7_);
49876 	}
49877 	LA3_: ;
49878 	return result;
49879 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_26861)49880 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_26861)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
49881 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49882 	result = NIM_NIL;
49883 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1249), args, argsLen_0);
49884 	return result;
49885 }
N_INLINE(void,addNimDefines__cgen_26858)49886 static N_INLINE(void, addNimDefines__cgen_26858)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** result, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
49887 	tyArray__JiWwrsTRC6xqNlGcBthSVA T1_;
49888 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T2_;
49889 	nimZeroMem((void*)T1_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
49890 	T1_[0] = rope__ropes_115(((NI64) (CPU__platform_691[((*conf).target.targetCPU)- 1].Field1)));
49891 	T2_ = NIM_NIL;
49892 	T2_ = percent___cgen_26861(T1_, 1);
49893 	add__ropes_159(result, T2_);
49894 	{
49895 		if (!(((NI) 0) < ((*conf).cppCustomNamespace ? (*conf).cppCustomNamespace->Sup.len : 0))) goto LA5_;
49896 		add__ropes_162(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1250));
49897 		add__ropes_162(result, (*conf).cppCustomNamespace);
49898 		add__ropes_162(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
49899 	}
49900 	LA5_: ;
49901 	{
49902 		NIM_BOOL T9_;
49903 		T9_ = (NIM_BOOL)0;
49904 		T9_ = isDefined__options_2279(conf, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1251));
49905 		if (!T9_) goto LA10_;
49906 		add__ropes_162(result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1252));
49907 	}
49908 	LA10_: ;
49909 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,getFileHeader__cgen_26886)49910 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, getFileHeader__cgen_26886)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cfile) {
49911 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49912 	result = NIM_NIL;
49913 	result = getCopyright__cgen_26873(conf, cfile);
49914 	{
49915 		NIM_BOOL T3_;
49916 		T3_ = (NIM_BOOL)0;
49917 		T3_ = hcrOn__options_569(conf);
49918 		if (!T3_) goto LA4_;
49919 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1248));
49920 	}
49921 	LA4_: ;
49922 	addNimDefines__cgen_26858(&result, conf);
49923 	return result;
49924 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_11223)49925 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_11223)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
49926 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49927 	result = NIM_NIL;
49928 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1253), args, argsLen_0);
49929 	return result;
49930 }
N_NIMCALL(void,generateThreadLocalStorage__cgen_11205)49931 N_LIB_PRIVATE N_NIMCALL(void, generateThreadLocalStorage__cgen_11205)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
49932 	{
49933 		NIM_BOOL T3_;
49934 		NIM_BOOL T5_;
49935 		tyArray__JiWwrsTRC6xqNlGcBthSVA T14_;
49936 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T15_;
49937 		T3_ = (NIM_BOOL)0;
49938 		T3_ = !(((*(*m).g).nimtv == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)));
49939 		if (!(T3_)) goto LA4_;
49940 		T5_ = (NIM_BOOL)0;
49941 		T5_ = (((*m).flags &((NU8)1<<((NU)(((tyEnum_CodegenFlag__9c7EibnXBApMXwrQsaaMb6Q) 1))&7U)))!=0);
49942 		if (T5_) goto LA6_;
49943 		T5_ = (((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0);
49944 		LA6_: ;
49945 		T3_ = T5_;
49946 		LA4_: ;
49947 		if (!T3_) goto LA7_;
49948 		{
49949 			tyObject_TType__facALICuu8zUj0hjvbTLFg** t;
49950 			NI i;
49951 			NI L;
49952 			NI T10_;
49953 			t = (tyObject_TType__facALICuu8zUj0hjvbTLFg**)0;
49954 			i = ((NI) 0);
49955 			T10_ = ((*(*m).g).nimtvDeps ? (*(*m).g).nimtvDeps->Sup.len : 0);
49956 			L = T10_;
49957 			{
49958 				while (1) {
49959 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T13_;
49960 					if (!(i < L)) goto LA12;
49961 					t = &(*(*m).g).nimtvDeps->data[i];
49962 					T13_ = NIM_NIL;
49963 					T13_ = getTypeDesc__cgen_6631(m, (*t), ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 3));
49964 					(void)(T13_);
49965 					i += ((NI) 1);
49966 				} LA12: ;
49967 			}
49968 		}
49969 		finishTypeDescriptions__cgen_6680(m);
49970 		nimZeroMem((void*)T14_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
49971 		T14_[0] = (*(*m).g).nimtv;
49972 		T15_ = NIM_NIL;
49973 		T15_ = percent___cgen_11223(T14_, 1);
49974 		add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 5))- 0], T15_);
49975 	}
49976 	LA7_: ;
49977 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25660)49978 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25660)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
49979 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49980 	result = NIM_NIL;
49981 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1255), args, argsLen_0);
49982 	return result;
49983 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_25665)49984 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_25665)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
49985 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
49986 	result = NIM_NIL;
49987 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1256), args, argsLen_0);
49988 	return result;
49989 }
N_NIMCALL(void,generateHeaders__cgen_25650)49990 N_LIB_PRIVATE N_NIMCALL(void, generateHeaders__cgen_25650)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
49991 	add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 1))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1254));
49992 	{
49993 		NimStringDesc** it;
49994 		NI i;
49995 		NI L;
49996 		NI T2_;
49997 		it = (NimStringDesc**)0;
49998 		i = ((NI) 0);
49999 		T2_ = ((*m).headerFiles ? (*m).headerFiles->Sup.len : 0);
50000 		L = T2_;
50001 		{
50002 			while (1) {
50003 				if (!(i < L)) goto LA4;
50004 				it = (&(*m).headerFiles->data[i]);
50005 				{
50006 					NimStringDesc* T9_;
50007 					NimStringDesc* T10_;
50008 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T11_;
50009 					if (!((NU8)((*it)->data[((NI) 0)]) == (NU8)(35))) goto LA7_;
50010 					T9_ = NIM_NIL;
50011 					T10_ = NIM_NIL;
50012 					T10_ = nsuReplaceChar((*it), 96, 34);
50013 					T9_ = rawNewString((T10_ ? T10_->Sup.len : 0) + 1);
50014 appendString(T9_, T10_);
50015 appendString(T9_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_13));
50016 					T11_ = NIM_NIL;
50017 					T11_ = rope__ropes_109(T9_);
50018 					add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 1))- 0], T11_);
50019 				}
50020 				goto LA5_;
50021 				LA7_: ;
50022 				{
50023 					tyArray__JiWwrsTRC6xqNlGcBthSVA T15_;
50024 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
50025 					if (!!((((NU8)((*it)->data[((NI) 0)])) == ((NU8)(34)) || ((NU8)((*it)->data[((NI) 0)])) == ((NU8)(60))))) goto LA13_;
50026 					nimZeroMem((void*)T15_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
50027 					T15_[0] = rope__ropes_109((*it));
50028 					T16_ = NIM_NIL;
50029 					T16_ = percent___cgen_25660(T15_, 1);
50030 					add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 1))- 0], T16_);
50031 				}
50032 				goto LA5_;
50033 				LA13_: ;
50034 				{
50035 					tyArray__JiWwrsTRC6xqNlGcBthSVA T18_;
50036 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T19_;
50037 					nimZeroMem((void*)T18_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
50038 					T18_[0] = rope__ropes_109((*it));
50039 					T19_ = NIM_NIL;
50040 					T19_ = percent___cgen_25665(T18_, 1);
50041 					add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 1))- 0], T19_);
50042 				}
50043 				LA5_: ;
50044 				i += ((NI) 1);
50045 			} LA4: ;
50046 		}
50047 	}
50048 	add__ropes_162(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 1))- 0], ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1257));
50049 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,genModule__cgen_28157)50050 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, genModule__cgen_28157)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cfile) {
50051 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
50052 	NIM_BOOL moduleIsEmpty;
50053 	result = NIM_NIL;
50054 	moduleIsEmpty = NIM_TRUE;
50055 	result = getFileHeader__cgen_26886((*(*m).g).config, cfile);
50056 	generateThreadLocalStorage__cgen_11205(m);
50057 	generateHeaders__cgen_25650(m);
50058 	add__ropes_159(&result, (*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 1))- 0]);
50059 	{
50060 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
50061 		if (!(((NI) 0) < ((*(*(*m).g).config).cppCustomNamespace ? (*(*(*m).g).config).cppCustomNamespace->Sup.len : 0))) goto LA3_;
50062 		T5_ = NIM_NIL;
50063 		T5_ = openNamespaceNim__cgen_25670((*(*(*m).g).config).cppCustomNamespace);
50064 		add__ropes_159(&result, T5_);
50065 	}
50066 	LA3_: ;
50067 	{
50068 		NI T8_;
50069 		T8_ = (NI)0;
50070 		T8_ = len__ropes_10((*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 2))- 0]);
50071 		if (!(((NI) 0) < T8_)) goto LA9_;
50072 		add__ropes_159(&result, (*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 2))- 0]);
50073 	}
50074 	goto LA6_;
50075 	LA9_: ;
50076 	{
50077 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1258));
50078 	}
50079 	LA6_: ;
50080 	{
50081 		tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg i;
50082 		NI res;
50083 		i = (tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg)0;
50084 		res = ((NI) 3);
50085 		{
50086 			while (1) {
50087 				if (!(res <= ((NI) 11))) goto LA14;
50088 				i = ((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) (res));
50089 				{
50090 					NI T17_;
50091 					T17_ = (NI)0;
50092 					T17_ = len__ropes_10((*m).s[(i)- 0]);
50093 					if (!(((NI) 0) < T17_)) goto LA18_;
50094 					moduleIsEmpty = NIM_FALSE;
50095 					add__ropes_159(&result, (*m).s[(i)- 0]);
50096 				}
50097 				LA18_: ;
50098 				res += ((NI) 1);
50099 			} LA14: ;
50100 		}
50101 	}
50102 	{
50103 		NI T22_;
50104 		T22_ = (NI)0;
50105 		T22_ = len__ropes_10((*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0]);
50106 		if (!(((NI) 0) < T22_)) goto LA23_;
50107 		moduleIsEmpty = NIM_FALSE;
50108 		add__ropes_159(&result, (*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0]);
50109 	}
50110 	LA23_: ;
50111 	{
50112 		NIM_BOOL T27_;
50113 		NI T28_;
50114 		T27_ = (NIM_BOOL)0;
50115 		T28_ = (NI)0;
50116 		T28_ = len__ropes_10((*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 13))- 0]);
50117 		T27_ = (((NI) 0) < T28_);
50118 		if (T27_) goto LA29_;
50119 		T27_ = hcrOn__cgen_42(m);
50120 		LA29_: ;
50121 		if (!T27_) goto LA30_;
50122 		moduleIsEmpty = NIM_FALSE;
50123 		add__ropes_159(&result, (*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 13))- 0]);
50124 	}
50125 	LA30_: ;
50126 	{
50127 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T36_;
50128 		if (!(((NI) 0) < ((*(*(*m).g).config).cppCustomNamespace ? (*(*(*m).g).config).cppCustomNamespace->Sup.len : 0))) goto LA34_;
50129 		T36_ = NIM_NIL;
50130 		T36_ = closeNamespaceNim__cgen_25673();
50131 		add__ropes_159(&result, T36_);
50132 	}
50133 	LA34_: ;
50134 	{
50135 		if (!moduleIsEmpty) goto LA39_;
50136 		result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
50137 	}
50138 	LA39_: ;
50139 	return result;
50140 }
N_NIMCALL(NIM_BOOL,shouldRecompile__cgen_28419)50141 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, shouldRecompile__cgen_28419)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* code, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cfile) {
50142 	NIM_BOOL result;
50143 	result = (NIM_BOOL)0;
50144 	{
50145 		if (!!((((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 1))&63U)))!=0))) goto LA3_;
50146 		{
50147 			NIM_BOOL T7_;
50148 			T7_ = (NIM_BOOL)0;
50149 			T7_ = moduleHasChanged__passes_207((*(*m).g).graph, (*m).module);
50150 			if (!!(T7_)) goto LA8_;
50151 			result = NIM_FALSE;
50152 		}
50153 		goto LA5_;
50154 		LA8_: ;
50155 		{
50156 			NIM_BOOL T11_;
50157 			T11_ = (NIM_BOOL)0;
50158 			T11_ = equalsFile__ropes_453(code, cfile.cname);
50159 			if (!!(T11_)) goto LA12_;
50160 			{
50161 				NIM_BOOL T16_;
50162 				T16_ = (NIM_BOOL)0;
50163 				T16_ = writeRope__ropes_241(code, cfile.cname);
50164 				if (!!(T16_)) goto LA17_;
50165 				liMessage__msgs_1118((*(*m).g).config, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 4), cfile.cname, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__MQdRN7fpbG7rPm4JpVVAhA_1259, NIM_FALSE);
50166 			}
50167 			LA17_: ;
50168 			result = NIM_TRUE;
50169 		}
50170 		goto LA5_;
50171 		LA12_: ;
50172 		{
50173 			NIM_BOOL T20_;
50174 			T20_ = (NIM_BOOL)0;
50175 			T20_ = nosfileExists(cfile.obj);
50176 			if (!(T20_)) goto LA21_;
50177 			T20_ = nosfileNewer(cfile.obj, cfile.cname);
50178 			LA21_: ;
50179 			if (!T20_) goto LA22_;
50180 			result = NIM_FALSE;
50181 		}
50182 		goto LA5_;
50183 		LA22_: ;
50184 		{
50185 			result = NIM_TRUE;
50186 		}
50187 		LA5_: ;
50188 	}
50189 	goto LA1_;
50190 	LA3_: ;
50191 	{
50192 		{
50193 			NIM_BOOL T28_;
50194 			T28_ = (NIM_BOOL)0;
50195 			T28_ = writeRope__ropes_241(code, cfile.cname);
50196 			if (!!(T28_)) goto LA29_;
50197 			liMessage__msgs_1118((*(*m).g).config, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 4), cfile.cname, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__MQdRN7fpbG7rPm4JpVVAhA_1260, NIM_FALSE);
50198 		}
50199 		LA29_: ;
50200 		result = NIM_TRUE;
50201 	}
50202 	LA1_: ;
50203 	return result;
50204 }
N_NIMCALL(void,writeModule__cgen_28428)50205 N_LIB_PRIVATE N_NIMCALL(void, writeModule__cgen_28428)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m, NIM_BOOL pending) {
50206 	NimStringDesc* cfile;
50207 	tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg cf;
50208 	NimStringDesc* T10_;
50209 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* code;
50210 	cfile = getCFile__cgen_123(m);
50211 	{
50212 		NIM_BOOL T3_;
50213 		T3_ = (NIM_BOOL)0;
50214 		T3_ = moduleHasChanged__passes_207((*(*m).g).graph, (*m).module);
50215 		if (!T3_) goto LA4_;
50216 		genInitCode__cgen_27847(m);
50217 		finishTypeDescriptions__cgen_6680(m);
50218 		{
50219 			if (!(((*(*m).module).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA8_;
50220 			genMainProc__cgen_26938(m);
50221 			add__ropes_159(&(*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 8))- 0], (*(*m).g).mainModProcs);
50222 			generateThreadVarsSize__cgen_11228(m);
50223 		}
50224 		LA8_: ;
50225 	}
50226 	LA4_: ;
50227 	nimZeroMem((void*)(&cf), sizeof(tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg));
50228 	nimZeroMem((void*)(&cf), sizeof(tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg));
50229 	cf.nimname = copyString((*(*(*m).module).name).s);
50230 	cf.cname = copyString(cfile);
50231 	T10_ = NIM_NIL;
50232 	T10_ = toObjFile__extccomp_718((*(*m).g).config, cfile);
50233 	cf.obj = completeCfilePath__extccomp_713((*(*m).g).config, T10_, NIM_TRUE);
50234 	cf.flags = 0;
50235 	code = genModule__cgen_28157(m, cf);
50236 	{
50237 		NIM_BOOL T13_;
50238 		T13_ = (NIM_BOOL)0;
50239 		T13_ = !((code == ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL)));
50240 		if (T13_) goto LA14_;
50241 		T13_ = !(((*(*(*m).g).config).symbolFiles == ((tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ) 0)));
50242 		LA14_: ;
50243 		if (!T13_) goto LA15_;
50244 		{
50245 			NIM_BOOL T19_;
50246 			T19_ = (NIM_BOOL)0;
50247 			T19_ = shouldRecompile__cgen_28419(m, code, cf);
50248 			if (!!(T19_)) goto LA20_;
50249 			cf.flags = 1;
50250 		}
50251 		LA20_: ;
50252 		addFileToCompile__extccomp_722((*(*m).g).config, cf);
50253 	}
50254 	LA15_: ;
50255 	close__ndi_31((&(*m).ndi), (*(*m).g).config);
50256 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_28316)50257 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28316)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
50258 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
50259 	result = NIM_NIL;
50260 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1261), args, argsLen_0);
50261 	return result;
50262 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_28322)50263 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28322)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
50264 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
50265 	result = NIM_NIL;
50266 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1262), args, argsLen_0);
50267 	return result;
50268 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_28341)50269 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28341)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
50270 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
50271 	result = NIM_NIL;
50272 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1263), args, argsLen_0);
50273 	return result;
50274 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___cgen_28346)50275 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___cgen_28346)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
50276 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
50277 	result = NIM_NIL;
50278 	result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1264), args, argsLen_0);
50279 	return result;
50280 }
N_NIMCALL(void,writeHeader__cgen_28313)50281 N_LIB_PRIVATE N_NIMCALL(void, writeHeader__cgen_28313)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
50282 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
50283 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* guard;
50284 	tyArray__JiWwrsTRC6xqNlGcBthSVA T1_;
50285 	tyTuple__7q7q3E6Oj24ZNVJb9aonhAg T2_;
50286 	tyArray__JiWwrsTRC6xqNlGcBthSVA T3_;
50287 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T4_;
50288 	tyArray__JiWwrsTRC6xqNlGcBthSVA T19_;
50289 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T20_;
50290 	tyArray__JiWwrsTRC6xqNlGcBthSVA T26_;
50291 	tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T27_;
50292 	result = headerTop__cgen_26866();
50293 	nimZeroMem((void*)T1_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
50294 	nimZeroMem((void*)(&T2_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
50295 	splitFile__pathutils_26((*m).filename, (&T2_));
50296 	T1_[0] = rope__ropes_109(T2_.Field1);
50297 	guard = percent___cgen_28316(T1_, 1);
50298 	nimZeroMem((void*)T3_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
50299 	T3_[0] = guard;
50300 	T4_ = NIM_NIL;
50301 	T4_ = percent___cgen_28322(T3_, 1);
50302 	add__ropes_159(&result, T4_);
50303 	addNimDefines__cgen_26858(&result, (*(*m).g).config);
50304 	generateHeaders__cgen_25650(m);
50305 	generateThreadLocalStorage__cgen_11205(m);
50306 	{
50307 		tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg i;
50308 		NI res;
50309 		i = (tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg)0;
50310 		res = ((NI) 1);
50311 		{
50312 			while (1) {
50313 				if (!(res <= ((NI) 11))) goto LA7;
50314 				i = ((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) (res));
50315 				add__ropes_159(&result, (*m).s[(i)- 0]);
50316 				{
50317 					NIM_BOOL T10_;
50318 					tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
50319 					T10_ = (NIM_BOOL)0;
50320 					T10_ = (((NI) 0) < ((*(*(*m).g).config).cppCustomNamespace ? (*(*(*m).g).config).cppCustomNamespace->Sup.len : 0));
50321 					if (!(T10_)) goto LA11_;
50322 					T10_ = (i == ((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 1));
50323 					LA11_: ;
50324 					if (!T10_) goto LA12_;
50325 					T14_ = NIM_NIL;
50326 					T14_ = openNamespaceNim__cgen_25670((*(*(*m).g).config).cppCustomNamespace);
50327 					add__ropes_159(&result, T14_);
50328 				}
50329 				LA12_: ;
50330 				res += ((NI) 1);
50331 			} LA7: ;
50332 		}
50333 	}
50334 	add__ropes_159(&result, (*m).s[(((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) 12))- 0]);
50335 	{
50336 		if (!(((*(*(*m).g).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 7))&63U)))!=0)) goto LA17_;
50337 		add__ropes_162(&result, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_27));
50338 	}
50339 	LA17_: ;
50340 	nimZeroMem((void*)T19_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
50341 	T19_[0] = rope__ropes_109((*(*(*m).g).config).nimMainPrefix);
50342 	T20_ = NIM_NIL;
50343 	T20_ = percent___cgen_28341(T19_, 1);
50344 	add__ropes_159(&result, T20_);
50345 	{
50346 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T25_;
50347 		if (!(((NI) 0) < ((*(*(*m).g).config).cppCustomNamespace ? (*(*(*m).g).config).cppCustomNamespace->Sup.len : 0))) goto LA23_;
50348 		T25_ = NIM_NIL;
50349 		T25_ = closeNamespaceNim__cgen_25673();
50350 		add__ropes_159(&result, T25_);
50351 	}
50352 	LA23_: ;
50353 	nimZeroMem((void*)T26_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
50354 	T26_[0] = guard;
50355 	T27_ = NIM_NIL;
50356 	T27_ = percent___cgen_28346(T26_, 1);
50357 	add__ropes_159(&result, T27_);
50358 	{
50359 		NIM_BOOL T30_;
50360 		T30_ = (NIM_BOOL)0;
50361 		T30_ = writeRope__ropes_241(result, (*m).filename);
50362 		if (!!(T30_)) goto LA31_;
50363 		liMessage__msgs_1118((*(*m).g).config, unknownLineInfo__lineinfos_280, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 4), (*m).filename, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__MQdRN7fpbG7rPm4JpVVAhA_1265, NIM_FALSE);
50364 	}
50365 	LA31_: ;
50366 }
N_NIMCALL(void,cgenWriteModules__cgen_28549)50367 N_LIB_PRIVATE N_NIMCALL(void, cgenWriteModules__cgen_28549)(RootObj* backend, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config) {
50368 	tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g;
50369 	g = ((tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA*) (backend));
50370 	asgnRef((void**) (&(*g).config), config);
50371 	genForwardedProcs__cgen_28535(g);
50372 	{
50373 		tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m;
50374 		m = NIM_NIL;
50375 		{
50376 			tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow** m_2;
50377 			NI i;
50378 			NI L;
50379 			NI T3_;
50380 			m_2 = (tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow**)0;
50381 			i = ((NI) 0);
50382 			T3_ = ((*g).modulesClosed ? (*g).modulesClosed->Sup.len : 0);
50383 			L = T3_;
50384 			{
50385 				while (1) {
50386 					if (!(i < L)) goto LA5;
50387 					m_2 = &(*g).modulesClosed->data[i];
50388 					m = (*m_2);
50389 					writeModule__cgen_28428(m, NIM_TRUE);
50390 					i += ((NI) 1);
50391 				} LA5: ;
50392 			}
50393 		}
50394 	}
50395 	writeMapping__extccomp_2650(config, (*g).mapping);
50396 	{
50397 		if (!!(((*g).generatedHeader == ((tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow*) NIM_NIL)))) goto LA8_;
50398 		writeHeader__cgen_28313((*g).generatedHeader);
50399 	}
50400 	LA8_: ;
50401 }
N_NIMCALL(tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g,whichInitProcs__cgen_27249)50402 N_LIB_PRIVATE N_NIMCALL(tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g, whichInitProcs__cgen_27249)(tyObject_TCGen__9cG6VsX22pOhho6kxyhFVow* m) {
50403 	tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g result;
50404 	nimZeroMem((void*)(&result), sizeof(tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g));
50405 	result = 0;
50406 	{
50407 		NIM_BOOL T3_;
50408 		NIM_BOOL T4_;
50409 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T6_;
50410 		NI T7_;
50411 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** T9_;
50412 		NI T10_;
50413 		T3_ = (NIM_BOOL)0;
50414 		T4_ = (NIM_BOOL)0;
50415 		T4_ = hcrOn__cgen_42(m);
50416 		if (T4_) goto LA5_;
50417 		T6_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
50418 		T6_ = s__cgendata_225((*m).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 1));
50419 		T7_ = (NI)0;
50420 		T7_ = len__ropes_10((*T6_));
50421 		T4_ = (((NI) 0) < T7_);
50422 		LA5_: ;
50423 		T3_ = T4_;
50424 		if (T3_) goto LA8_;
50425 		T9_ = (tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA**)0;
50426 		T9_ = s__cgendata_225((*m).preInitProc, ((tyEnum_TCProcSection__0r9aIOfveOcxZqJ7OwbI2gg) 2));
50427 		T10_ = (NI)0;
50428 		T10_ = len__ropes_10((*T9_));
50429 		T3_ = (((NI) 0) < T10_);
50430 		LA8_: ;
50431 		if (!T3_) goto LA11_;
50432 		result |= ((NU8)1)<<((((tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g) 1)) & 7);
50433 	}
50434 	LA11_: ;
50435 	{
50436 		tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg i;
50437 		NI res;
50438 		i = (tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg)0;
50439 		res = ((NI) 14);
50440 		{
50441 			while (1) {
50442 				if (!(res <= ((NI) 18))) goto LA15;
50443 				i = ((tyEnum_TCFileSection__NR9cMDOmG9cHJhM0tCKvXNzg) (res));
50444 				{
50445 					NI T18_;
50446 					T18_ = (NI)0;
50447 					T18_ = len__ropes_10((*m).s[(i)- 0]);
50448 					if (!!((T18_ == ((NI) 0)))) goto LA19_;
50449 					result |= ((NU8)1)<<((((tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g) 0)) & 7);
50450 					goto LA13;
50451 				}
50452 				LA19_: ;
50453 				res += ((NI) 1);
50454 			} LA15: ;
50455 		}
50456 	} LA13: ;
50457 	return result;
50458 }
N_NIMCALL(void,registerInitProcs__cgen_27207)50459 N_LIB_PRIVATE N_NIMCALL(void, registerInitProcs__cgen_27207)(tyObject_BModuleListcolonObjectType___CpP4eJLbv5ZwofQXpESuGA* g, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* m, tySet_tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g flags) {
50460 	{
50461 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* datInit;
50462 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T5_;
50463 		tyArray__JiWwrsTRC6xqNlGcBthSVA T6_;
50464 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T7_;
50465 		tyArray__JiWwrsTRC6xqNlGcBthSVA T8_;
50466 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T9_;
50467 		if (!((flags &((NU8)1<<((NU)(((tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g) 0))&7U)))!=0)) goto LA3_;
50468 		T5_ = NIM_NIL;
50469 		T5_ = getSomeNameForModule__cgen_26890(m);
50470 		datInit = amp___ropes_140(T5_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1168));
50471 		nimZeroMem((void*)T6_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
50472 		T6_[0] = datInit;
50473 		T7_ = NIM_NIL;
50474 		T7_ = percent___cgen_27217(T6_, 1);
50475 		add__ropes_159(&(*g).mainModProcs, T7_);
50476 		nimZeroMem((void*)T8_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
50477 		T8_[0] = datInit;
50478 		T9_ = NIM_NIL;
50479 		T9_ = percent___cgen_27222(T8_, 1);
50480 		add__ropes_159(&(*g).mainDatInit, T9_);
50481 	}
50482 	LA3_: ;
50483 	{
50484 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* init;
50485 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T14_;
50486 		tyArray__JiWwrsTRC6xqNlGcBthSVA T15_;
50487 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T16_;
50488 		tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* initCall;
50489 		tyArray__JiWwrsTRC6xqNlGcBthSVA T17_;
50490 		if (!((flags &((NU8)1<<((NU)(((tyEnum_ModuleBackendFlag__fgnyOEZ7Q9aYVj8O59afcT4g) 1))&7U)))!=0)) goto LA12_;
50491 		T14_ = NIM_NIL;
50492 		T14_ = getSomeNameForModule__cgen_26890(m);
50493 		init = amp___ropes_140(T14_, ((NimStringDesc*) &TM__MQdRN7fpbG7rPm4JpVVAhA_1138));
50494 		nimZeroMem((void*)T15_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
50495 		T15_[0] = init;
50496 		T16_ = NIM_NIL;
50497 		T16_ = percent___cgen_27217(T15_, 1);
50498 		add__ropes_159(&(*g).mainModProcs, T16_);
50499 		nimZeroMem((void*)T17_, sizeof(tyArray__JiWwrsTRC6xqNlGcBthSVA));
50500 		T17_[0] = init;
50501 		initCall = percent___cgen_27222(T17_, 1);
50502 		{
50503 			if (!(((*m).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 14))&63U)))!=0)) goto LA20_;
50504 			add__ropes_159(&(*g).mainModInit, initCall);
50505 		}
50506 		goto LA18_;
50507 		LA20_: ;
50508 		{
50509 			if (!(((*m).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 15))&63U)))!=0)) goto LA23_;
50510 			add__ropes_159(&(*g).mainDatInit, initCall);
50511 		}
50512 		goto LA18_;
50513 		LA23_: ;
50514 		{
50515 			add__ropes_159(&(*g).otherModsInit, initCall);
50516 		}
50517 		LA18_: ;
50518 	}
50519 	LA12_: ;
50520 }
N_NIMCALL(void,compiler_cgenDatInit000)50521 N_LIB_PRIVATE N_NIMCALL(void, compiler_cgenDatInit000)(void) {
50522 static TNimNode* TM__MQdRN7fpbG7rPm4JpVVAhA_1013_2[2];
50523 static TNimNode* TM__MQdRN7fpbG7rPm4JpVVAhA_1204_2[2];
50524 static TNimNode TM__MQdRN7fpbG7rPm4JpVVAhA_0[6];
50525 NTItupleLloc58tloc_tp58ropeT__9cSd9cjH9cnPQaBRO0ioKSxRA_.size = sizeof(tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA);
50526 NTItupleLloc58tloc_tp58ropeT__9cSd9cjH9cnPQaBRO0ioKSxRA_.align = NIM_ALIGNOF(tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA);
50527 NTItupleLloc58tloc_tp58ropeT__9cSd9cjH9cnPQaBRO0ioKSxRA_.kind = 18;
50528 NTItupleLloc58tloc_tp58ropeT__9cSd9cjH9cnPQaBRO0ioKSxRA_.base = 0;
50529 TM__MQdRN7fpbG7rPm4JpVVAhA_1013_2[0] = &TM__MQdRN7fpbG7rPm4JpVVAhA_0[1];
50530 TM__MQdRN7fpbG7rPm4JpVVAhA_0[1].kind = 1;
50531 TM__MQdRN7fpbG7rPm4JpVVAhA_0[1].offset = offsetof(tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA, Field0);
50532 TM__MQdRN7fpbG7rPm4JpVVAhA_0[1].typ = (&NTItloc__EtHNvCB0bgfu9bFjzx9cb6aA_);
50533 TM__MQdRN7fpbG7rPm4JpVVAhA_0[1].name = "Field0";
50534 TM__MQdRN7fpbG7rPm4JpVVAhA_1013_2[1] = &TM__MQdRN7fpbG7rPm4JpVVAhA_0[2];
50535 TM__MQdRN7fpbG7rPm4JpVVAhA_0[2].kind = 1;
50536 TM__MQdRN7fpbG7rPm4JpVVAhA_0[2].offset = offsetof(tyTuple__9cSd9cjH9cnPQaBRO0ioKSxRA, Field1);
50537 TM__MQdRN7fpbG7rPm4JpVVAhA_0[2].typ = (&NTIrope__4hi0XQqK9aLiPuWT9acsXm9aQ_);
50538 TM__MQdRN7fpbG7rPm4JpVVAhA_0[2].name = "Field1";
50539 TM__MQdRN7fpbG7rPm4JpVVAhA_0[0].len = 2; TM__MQdRN7fpbG7rPm4JpVVAhA_0[0].kind = 2; TM__MQdRN7fpbG7rPm4JpVVAhA_0[0].sons = &TM__MQdRN7fpbG7rPm4JpVVAhA_1013_2[0];
50540 NTItupleLloc58tloc_tp58ropeT__9cSd9cjH9cnPQaBRO0ioKSxRA_.node = &TM__MQdRN7fpbG7rPm4JpVVAhA_0[0];
50541 NTIseqLtupleLloc58tloc_tp58ropeTT__sno9c9bXUVS2CqhtWOJadaCw_.size = sizeof(tySequence__sno9c9bXUVS2CqhtWOJadaCw*);
50542 NTIseqLtupleLloc58tloc_tp58ropeTT__sno9c9bXUVS2CqhtWOJadaCw_.align = NIM_ALIGNOF(tySequence__sno9c9bXUVS2CqhtWOJadaCw*);
50543 NTIseqLtupleLloc58tloc_tp58ropeTT__sno9c9bXUVS2CqhtWOJadaCw_.kind = 24;
50544 NTIseqLtupleLloc58tloc_tp58ropeTT__sno9c9bXUVS2CqhtWOJadaCw_.base = (&NTItupleLloc58tloc_tp58ropeT__9cSd9cjH9cnPQaBRO0ioKSxRA_);
50545 NTIseqLtupleLloc58tloc_tp58ropeTT__sno9c9bXUVS2CqhtWOJadaCw_.marker = Marker_tySequence__sno9c9bXUVS2CqhtWOJadaCw;
50546 NTIobject__IDX4istqRyOZp3l6j9aUesw_.size = sizeof(tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw);
50547 NTIobject__IDX4istqRyOZp3l6j9aUesw_.align = NIM_ALIGNOF(tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw);
50548 NTIobject__IDX4istqRyOZp3l6j9aUesw_.kind = 17;
50549 NTIobject__IDX4istqRyOZp3l6j9aUesw_.base = (&NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_);
50550 TM__MQdRN7fpbG7rPm4JpVVAhA_1204_2[0] = &TM__MQdRN7fpbG7rPm4JpVVAhA_0[4];
50551 TM__MQdRN7fpbG7rPm4JpVVAhA_0[4].kind = 1;
50552 TM__MQdRN7fpbG7rPm4JpVVAhA_0[4].offset = offsetof(tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw, colonstate_);
50553 TM__MQdRN7fpbG7rPm4JpVVAhA_0[4].typ = (&NTIint__xHTZrq9aYs6boc9bCba0JbpQ_);
50554 TM__MQdRN7fpbG7rPm4JpVVAhA_0[4].name = ":state";
50555 TM__MQdRN7fpbG7rPm4JpVVAhA_1204_2[1] = &TM__MQdRN7fpbG7rPm4JpVVAhA_0[5];
50556 TM__MQdRN7fpbG7rPm4JpVVAhA_0[5].kind = 1;
50557 TM__MQdRN7fpbG7rPm4JpVVAhA_0[5].offset = offsetof(tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw, m1);
50558 TM__MQdRN7fpbG7rPm4JpVVAhA_0[5].typ = (&NTIbmodule__NkKlBfvvsMUW70DxvxLVIg_);
50559 TM__MQdRN7fpbG7rPm4JpVVAhA_0[5].name = "m1";
50560 TM__MQdRN7fpbG7rPm4JpVVAhA_0[3].len = 2; TM__MQdRN7fpbG7rPm4JpVVAhA_0[3].kind = 2; TM__MQdRN7fpbG7rPm4JpVVAhA_0[3].sons = &TM__MQdRN7fpbG7rPm4JpVVAhA_1204_2[0];
50561 NTIobject__IDX4istqRyOZp3l6j9aUesw_.node = &TM__MQdRN7fpbG7rPm4JpVVAhA_0[3];
50562 NTIrefobject__UjwNQwrGjW3X9ahveEH9bnWA_.size = sizeof(tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw*);
50563 NTIrefobject__UjwNQwrGjW3X9ahveEH9bnWA_.align = NIM_ALIGNOF(tyObject_Env_cgendotnim_genMainProc___IDX4istqRyOZp3l6j9aUesw*);
50564 NTIrefobject__UjwNQwrGjW3X9ahveEH9bnWA_.kind = 22;
50565 NTIrefobject__UjwNQwrGjW3X9ahveEH9bnWA_.base = (&NTIobject__IDX4istqRyOZp3l6j9aUesw_);
50566 NTIrefobject__UjwNQwrGjW3X9ahveEH9bnWA_.marker = Marker_tyRef__UjwNQwrGjW3X9ahveEH9bnWA;
50567 }
50568 
50569