1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
3 #define NIM_EmulateOverflowChecks
4 
5 #include "nimbase.h"
6 #include <string.h>
7 #undef LANGUAGE_C
8 #undef MIPSEB
9 #undef MIPSEL
10 #undef PPC
11 #undef R3000
12 #undef R4000
13 #undef i386
14 #undef linux
15 #undef mips
16 #undef near
17 #undef far
18 #undef powerpc
19 #undef unix
20 #define nimfr_(x, y)
21 #define nimln_(x, y)
22 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
23 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
24 typedef struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ tySequence__6H5Oh5UUvVCLiakt9aTwtUQ;
25 typedef struct TGenericSeq TGenericSeq;
26 typedef struct tyObject_Int128__9a9axPfb75jdWY25AamJewkA tyObject_Int128__9a9axPfb75jdWY25AamJewkA;
27 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
28 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
29 typedef struct NimStringDesc NimStringDesc;
30 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
31 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
32 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
33 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
34 typedef struct RootObj RootObj;
35 typedef struct TNimType TNimType;
36 typedef struct TNimNode TNimNode;
37 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
38 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
39 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
40 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
41 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
42 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
43 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
44 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
45 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
46 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
47 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
48 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
49 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
50 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
51 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
52 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
53 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
54 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
55 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
56 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
57 struct TGenericSeq {
58 NI len;
59 NI reserved;
60 };
61 typedef NU32 tyArray__FleBT9cC2nxhgiXmSYYnEKA[4];
62 struct tyObject_Int128__9a9axPfb75jdWY25AamJewkA {
63 tyArray__FleBT9cC2nxhgiXmSYYnEKA udata;
64 };
65 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
66 NU16 line;
67 NI16 col;
68 NI32 fileIndex;
69 };
70 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
71 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
72 struct NimStringDesc {
73   TGenericSeq Sup;
74 NIM_CHAR data[SEQ_DECL_SIZE];
75 };
76 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
77 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
78 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
79 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
80 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
81 union{
82 struct {NI64 intVal;
83 } _kind_1;
84 struct {NF floatVal;
85 } _kind_2;
86 struct {NimStringDesc* strVal;
87 } _kind_3;
88 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
89 } _kind_4;
90 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
91 } _kind_5;
92 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
93 } _kind_6;
94 };
95 };
96 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
97 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
98 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
99 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
100 struct TNimType {
101 NI size;
102 NI align;
103 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
104 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
105 TNimType* base;
106 TNimNode* node;
107 void* finalizer;
108 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
109 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
110 };
111 struct RootObj {
112 TNimType* m_type;
113 };
114 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
115 NI32 module;
116 NI32 item;
117 };
118 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
119   RootObj Sup;
120 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
121 };
122 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
123 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
124 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
125 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
126 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
127 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
128 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
129 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
130 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
131 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
132 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
133 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
134 };
135 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
136   tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
137 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
138 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
139 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
140 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
141 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
142 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
143 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
144 NI64 size;
145 NI16 align;
146 NI16 paddingAtEnd;
147 NI16 lockLevel;
148 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
149 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
150 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
151 };
152 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
153 NI refcount;
154 TNimType* typ;
155 };
156 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
157 void* bottom;
158 };
159 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
160 NI len;
161 NI cap;
162 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
163 };
164 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
165 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
166 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
167 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
168 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
169 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
170 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
171 };
172 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
173 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
174 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
175 NI key;
176 NI upperBound;
177 NI level;
178 };
179 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
180 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
181 NI Field1;
182 };
183 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
184 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
185 NI len;
186 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
187 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
188 };
189 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
190 NI minLargeObj;
191 NI maxLargeObj;
192 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
193 NU32 flBitmap;
194 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
195 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
196 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
197 NI currMem;
198 NI maxMem;
199 NI freeMem;
200 NI occ;
201 NI lastSize;
202 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
203 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
204 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
205 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
206 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
207 NIM_BOOL locked;
208 NIM_BOOL blockChunkSizeIncrease;
209 NI nextChunkSize;
210 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
211 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
212 };
213 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
214 NI stackScans;
215 NI cycleCollections;
216 NI maxThreshold;
217 NI maxStackSize;
218 NI maxStackCells;
219 NI cycleTableSize;
220 NI64 maxPause;
221 };
222 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
223 NI counter;
224 NI max;
225 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
226 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
227 };
228 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
229 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
230 NI cycleThreshold;
231 NI zctThreshold;
232 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
233 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
234 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
235 NI recGcLock;
236 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
237 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
238 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
239 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
240 NI gcThreadId;
241 };
242 struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ {
243   TGenericSeq Sup;
244   NU8 data[SEQ_DECL_SIZE];
245 };
246 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
247   TGenericSeq Sup;
248   tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
249 };
250 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
251   TGenericSeq Sup;
252   tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
253 };
254 N_LIB_PRIVATE N_NIMCALL(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ*, toBitSet__nimsets_103)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s);
255 static N_INLINE(void, nimZeroMem)(void* p, NI size);
256 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
257 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, firstOrd__types_1353)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* t);
258 N_LIB_PRIVATE N_NIMCALL(void, bitSetInit__bitsets_10)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** b, NI length);
259 N_LIB_PRIVATE N_NIMCALL(NI64, getSize__types_3336)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
260 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
261 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, getOrdValue__types_161)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_Int128__9a9axPfb75jdWY25AamJewkA onError);
262 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lteq___int495056_309)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
263 N_LIB_PRIVATE N_NIMCALL(void, bitSetIncl__bitsets_25)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** x, NI64 elem);
264 N_LIB_PRIVATE N_NIMCALL(NI64, toInt64__int495056_88)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA arg);
265 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, minus___int495056_474)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
266 N_LIB_PRIVATE N_NIMCALL(void, inc__int495056_251)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA* a, NU32 y);
267 N_LIB_PRIVATE N_NIMCALL(NI64, bitSetCard__bitsets_40)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x);
268 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, bitSetContains__bitsets_37)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y);
269 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, bitSetEquals__bitsets_34)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y);
270 N_LIB_PRIVATE N_NIMCALL(void, bitSetIntersect__bitsets_22)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y);
271 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, toTreeSet__nimsets_128)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* s, tyObject_TType__facALICuu8zUj0hjvbTLFg* settype, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
272 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newNodeI__ast_3356)(tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
273 static N_INLINE(void, asgnRef)(void** dest, void* src);
274 static N_INLINE(void, incRef__system_5338)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
275 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
276 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5300)(void* usr);
277 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
278 static N_INLINE(void, decRef__system_5345)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
279 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
280 static N_INLINE(void, rtlAddZCT__system_5343)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
281 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5294)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
282 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, bitSetIn__bitsets_31)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x, NI64 e);
283 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, newIntTypeNode__ast_3783)(NI64 intVal, tyObject_TType__facALICuu8zUj0hjvbTLFg* typ);
284 N_LIB_PRIVATE N_NIMCALL(void, add__ast_4797)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* father, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* son);
285 N_LIB_PRIVATE N_NIMCALL(void, bitSetUnion__bitsets_13)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y);
286 N_LIB_PRIVATE N_NIMCALL(void, bitSetDiff__bitsets_16)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y);
287 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, leValue__astalgo_135)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
288 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameValue__astalgo_119)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
289 extern NIM_CONST tyObject_Int128__9a9axPfb75jdWY25AamJewkA Max__int495056_27;
290 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5247;
N_INLINE(void,nimSetMem__systemZmemory_7)291 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
292 	void* T1_;
293 	T1_ = (void*)0;
294 	T1_ = memset(a, v, ((size_t) (size)));
295 }
N_INLINE(void,nimZeroMem)296 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
297 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
298 }
N_INLINE(NI,len__ast_3198)299 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
300 	NI result;
301 	NI T1_;
302 	result = (NI)0;
303 	T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
304 	result = T1_;
305 	return result;
306 }
N_NIMCALL(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ *,toBitSet__nimsets_103)307 N_LIB_PRIVATE N_NIMCALL(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ*, toBitSet__nimsets_103)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s) {
308 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* result;
309 	tyObject_Int128__9a9axPfb75jdWY25AamJewkA first;
310 	tyObject_Int128__9a9axPfb75jdWY25AamJewkA j;
311 	NI64 T1_;
312 	result = NIM_NIL;
313 	nimZeroMem((void*)(&first), sizeof(tyObject_Int128__9a9axPfb75jdWY25AamJewkA));
314 	nimZeroMem((void*)(&j), sizeof(tyObject_Int128__9a9axPfb75jdWY25AamJewkA));
315 	first = firstOrd__types_1353(conf, (*(*s).typ).sons->data[((NI) 0)]);
316 	T1_ = (NI64)0;
317 	T1_ = getSize__types_3336(conf, (*s).typ);
318 	bitSetInit__bitsets_10((&result), ((NI) (T1_)));
319 	{
320 		NI i;
321 		NI colontmp_;
322 		NI i_2;
323 		i = (NI)0;
324 		colontmp_ = (NI)0;
325 		colontmp_ = len__ast_3198(s);
326 		i_2 = ((NI) 0);
327 		{
328 			while (1) {
329 				if (!(i_2 < colontmp_)) goto LA4;
330 				i = i_2;
331 				{
332 					if (!((*(*s)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA7_;
333 					j = getOrdValue__types_161((*(*s)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)], first);
334 					{
335 						while (1) {
336 							tyObject_Int128__9a9axPfb75jdWY25AamJewkA T11_;
337 							NIM_BOOL T12_;
338 							tyObject_Int128__9a9axPfb75jdWY25AamJewkA T13_;
339 							NI64 T14_;
340 							T11_ = getOrdValue__types_161((*(*s)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 1)], first);
341 							T12_ = (NIM_BOOL)0;
342 							T12_ = lteq___int495056_309(j, T11_);
343 							if (!T12_) goto LA10;
344 							T13_ = minus___int495056_474(j, first);
345 							T14_ = (NI64)0;
346 							T14_ = toInt64__int495056_88(T13_);
347 							bitSetIncl__bitsets_25((&result), T14_);
348 							inc__int495056_251((&j), ((NU32) 1));
349 						} LA10: ;
350 					}
351 				}
352 				goto LA5_;
353 				LA7_: ;
354 				{
355 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T16_;
356 					tyObject_Int128__9a9axPfb75jdWY25AamJewkA T17_;
357 					NI64 T18_;
358 					T16_ = getOrdValue__types_161((*s)._kind_6.sons->data[i], Max__int495056_27);
359 					T17_ = minus___int495056_474(T16_, first);
360 					T18_ = (NI64)0;
361 					T18_ = toInt64__int495056_88(T17_);
362 					bitSetIncl__bitsets_25((&result), T18_);
363 				}
364 				LA5_: ;
365 				i_2 += ((NI) 1);
366 			} LA4: ;
367 		}
368 	}
369 	return result;
370 }
N_NIMCALL(NI64,cardSet__nimsets_241)371 N_LIB_PRIVATE N_NIMCALL(NI64, cardSet__nimsets_241)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a) {
372 	NI64 result;
373 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x;
374 	result = (NI64)0;
375 	x = toBitSet__nimsets_103(conf, a);
376 	result = bitSetCard__bitsets_40(x);
377 	return result;
378 }
N_NIMCALL(NIM_BOOL,containsSets__nimsets_209)379 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsSets__nimsets_209)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
380 	NIM_BOOL result;
381 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x;
382 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y;
383 	result = (NIM_BOOL)0;
384 	x = toBitSet__nimsets_103(conf, a);
385 	y = toBitSet__nimsets_103(conf, b);
386 	result = bitSetContains__bitsets_37(x, y);
387 	return result;
388 }
N_NIMCALL(NIM_BOOL,equalSets__nimsets_216)389 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, equalSets__nimsets_216)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
390 	NIM_BOOL result;
391 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x;
392 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y;
393 	result = (NIM_BOOL)0;
394 	x = toBitSet__nimsets_103(conf, a);
395 	y = toBitSet__nimsets_103(conf, b);
396 	result = bitSetEquals__bitsets_34(x, y);
397 	return result;
398 }
N_INLINE(NI,pluspercent___system_696)399 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
400 	NI result;
401 	result = (NI)0;
402 	result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
403 	return result;
404 }
N_INLINE(void,incRef__system_5338)405 static N_INLINE(void, incRef__system_5338)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
406 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
407 }
N_INLINE(NI,minuspercent___system_716)408 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
409 	NI result;
410 	result = (NI)0;
411 	result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
412 	return result;
413 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5300)414 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5300)(void* usr) {
415 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
416 	NI T1_;
417 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
418 	T1_ = (NI)0;
419 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
420 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
421 	return result;
422 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)423 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
424 	NIM_BOOL result;
425 	result = (NIM_BOOL)0;
426 	result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
427 	return result;
428 }
N_INLINE(void,rtlAddZCT__system_5343)429 static N_INLINE(void, rtlAddZCT__system_5343)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
430 	addZCT__system_5294((&gch__system_5247.zct), c);
431 }
N_INLINE(void,decRef__system_5345)432 static N_INLINE(void, decRef__system_5345)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
433 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
434 	{
435 		NIM_BOOL T3_;
436 		T3_ = (NIM_BOOL)0;
437 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
438 		if (!T3_) goto LA4_;
439 		rtlAddZCT__system_5343(c);
440 	}
441 	LA4_: ;
442 }
N_INLINE(void,asgnRef)443 static N_INLINE(void, asgnRef)(void** dest, void* src) {
444 	{
445 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
446 		if (!!((src == NIM_NIL))) goto LA3_;
447 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
448 		T5_ = usrToCell__system_5300(src);
449 		incRef__system_5338(T5_);
450 	}
451 	LA3_: ;
452 	{
453 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
454 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
455 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
456 		T10_ = usrToCell__system_5300((*dest));
457 		decRef__system_5345(T10_);
458 	}
459 	LA8_: ;
460 	(*dest) = src;
461 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,toTreeSet__nimsets_128)462 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, toTreeSet__nimsets_128)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* s, tyObject_TType__facALICuu8zUj0hjvbTLFg* settype, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
463 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
464 	NI64 a;
465 	NI64 b;
466 	NI64 e;
467 	NI64 first;
468 	tyObject_TType__facALICuu8zUj0hjvbTLFg* elemType;
469 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
470 	tyObject_Int128__9a9axPfb75jdWY25AamJewkA T1_;
471 	result = NIM_NIL;
472 	a = (NI64)0;
473 	b = (NI64)0;
474 	e = (NI64)0;
475 	first = (NI64)0;
476 	elemType = NIM_NIL;
477 	n = NIM_NIL;
478 	elemType = (*settype).sons->data[((NI) 0)];
479 	T1_ = firstOrd__types_1353(conf, elemType);
480 	first = toInt64__int495056_88(T1_);
481 	result = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39), info);
482 	asgnRef((void**) (&(*result).typ), settype);
483 	(*result).info = info;
484 	e = IL64(0);
485 	{
486 		while (1) {
487 			NI T4_;
488 			T4_ = (s ? s->Sup.len : 0);
489 			if (!(e < ((NI64) ((NI)(T4_ * ((NI) 8)))))) goto LA3;
490 			{
491 				NIM_BOOL T7_;
492 				tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* aa;
493 				T7_ = (NIM_BOOL)0;
494 				T7_ = bitSetIn__bitsets_31(s, e);
495 				if (!T7_) goto LA8_;
496 				a = e;
497 				b = e;
498 				{
499 					while (1) {
500 						b += ((NI) 1);
501 						{
502 							NIM_BOOL T14_;
503 							NI T15_;
504 							NIM_BOOL T17_;
505 							T14_ = (NIM_BOOL)0;
506 							T15_ = (s ? s->Sup.len : 0);
507 							T14_ = (((NI64) ((NI)(T15_ * ((NI) 8)))) <= b);
508 							if (T14_) goto LA16_;
509 							T17_ = (NIM_BOOL)0;
510 							T17_ = bitSetIn__bitsets_31(s, b);
511 							T14_ = !(T17_);
512 							LA16_: ;
513 							if (!T14_) goto LA18_;
514 							goto LA10;
515 						}
516 						LA18_: ;
517 					}
518 				} LA10: ;
519 				b -= ((NI) 1);
520 				aa = newIntTypeNode__ast_3783((NI64)(a + first), elemType);
521 				(*aa).info = info;
522 				{
523 					if (!(a == b)) goto LA22_;
524 					add__ast_4797(result, aa);
525 				}
526 				goto LA20_;
527 				LA22_: ;
528 				{
529 					tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* bb;
530 					n = newNodeI__ast_3356(((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44), info);
531 					asgnRef((void**) (&(*n).typ), elemType);
532 					add__ast_4797(n, aa);
533 					bb = newIntTypeNode__ast_3783((NI64)(b + first), elemType);
534 					(*bb).info = info;
535 					add__ast_4797(n, bb);
536 					add__ast_4797(result, n);
537 				}
538 				LA20_: ;
539 				e = b;
540 			}
541 			LA8_: ;
542 			e += ((NI) 1);
543 		} LA3: ;
544 	}
545 	return result;
546 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,intersectSets__nimsets_195)547 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, intersectSets__nimsets_195)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
548 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
549 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x;
550 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y;
551 	result = NIM_NIL;
552 	x = toBitSet__nimsets_103(conf, a);
553 	y = toBitSet__nimsets_103(conf, b);
554 	bitSetIntersect__bitsets_22((&x), y);
555 	result = toTreeSet__nimsets_128(conf, x, (*a).typ, (*a).info);
556 	return result;
557 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,unionSets__nimsets_181)558 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, unionSets__nimsets_181)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
559 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
560 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x;
561 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y;
562 	result = NIM_NIL;
563 	x = toBitSet__nimsets_103(conf, a);
564 	y = toBitSet__nimsets_103(conf, b);
565 	bitSetUnion__bitsets_13((&x), y);
566 	result = toTreeSet__nimsets_128(conf, x, (*a).typ, (*a).info);
567 	return result;
568 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,diffSets__nimsets_188)569 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, diffSets__nimsets_188)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
570 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
571 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x;
572 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y;
573 	result = NIM_NIL;
574 	x = toBitSet__nimsets_103(conf, a);
575 	y = toBitSet__nimsets_103(conf, b);
576 	bitSetDiff__bitsets_16((&x), y);
577 	result = toTreeSet__nimsets_128(conf, x, (*a).typ, (*a).info);
578 	return result;
579 }
N_NIMCALL(NIM_BOOL,inSet__nimsets_7)580 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inSet__nimsets_7)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* s, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* elem) {
581 	NIM_BOOL result;
582 {	result = (NIM_BOOL)0;
583 	{
584 		if (!!(((*s).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 39)))) goto LA3_;
585 		result = NIM_FALSE;
586 		goto BeforeRet_;
587 	}
588 	LA3_: ;
589 	{
590 		NI i;
591 		NI colontmp_;
592 		NI i_2;
593 		i = (NI)0;
594 		colontmp_ = (NI)0;
595 		colontmp_ = len__ast_3198(s);
596 		i_2 = ((NI) 0);
597 		{
598 			while (1) {
599 				if (!(i_2 < colontmp_)) goto LA7;
600 				i = i_2;
601 				{
602 					if (!((*(*s)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA10_;
603 					{
604 						NIM_BOOL T14_;
605 						T14_ = (NIM_BOOL)0;
606 						T14_ = leValue__astalgo_135((*(*s)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)], elem);
607 						if (!(T14_)) goto LA15_;
608 						T14_ = leValue__astalgo_135(elem, (*(*s)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 1)]);
609 						LA15_: ;
610 						if (!T14_) goto LA16_;
611 						result = NIM_TRUE;
612 						goto BeforeRet_;
613 					}
614 					LA16_: ;
615 				}
616 				goto LA8_;
617 				LA10_: ;
618 				{
619 					{
620 						NIM_BOOL T21_;
621 						T21_ = (NIM_BOOL)0;
622 						T21_ = sameValue__astalgo_119((*s)._kind_6.sons->data[i], elem);
623 						if (!T21_) goto LA22_;
624 						result = NIM_TRUE;
625 						goto BeforeRet_;
626 					}
627 					LA22_: ;
628 				}
629 				LA8_: ;
630 				i_2 += ((NI) 1);
631 			} LA7: ;
632 		}
633 	}
634 	result = NIM_FALSE;
635 	}BeforeRet_: ;
636 	return result;
637 }
N_NIMCALL(NIM_BOOL,overlap__nimsets_40)638 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, overlap__nimsets_40)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
639 	NIM_BOOL result;
640 	result = (NIM_BOOL)0;
641 	{
642 		if (!((*a).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA3_;
643 		{
644 			NIM_BOOL T9_;
645 			if (!((*b).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA7_;
646 			T9_ = (NIM_BOOL)0;
647 			T9_ = leValue__astalgo_135((*a)._kind_6.sons->data[((NI) 0)], (*b)._kind_6.sons->data[((NI) 1)]);
648 			if (!(T9_)) goto LA10_;
649 			T9_ = leValue__astalgo_135((*b)._kind_6.sons->data[((NI) 0)], (*a)._kind_6.sons->data[((NI) 1)]);
650 			LA10_: ;
651 			result = T9_;
652 		}
653 		goto LA5_;
654 		LA7_: ;
655 		{
656 			NIM_BOOL T12_;
657 			T12_ = (NIM_BOOL)0;
658 			T12_ = leValue__astalgo_135((*a)._kind_6.sons->data[((NI) 0)], b);
659 			if (!(T12_)) goto LA13_;
660 			T12_ = leValue__astalgo_135(b, (*a)._kind_6.sons->data[((NI) 1)]);
661 			LA13_: ;
662 			result = T12_;
663 		}
664 		LA5_: ;
665 	}
666 	goto LA1_;
667 	LA3_: ;
668 	{
669 		{
670 			NIM_BOOL T19_;
671 			if (!((*b).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 44))) goto LA17_;
672 			T19_ = (NIM_BOOL)0;
673 			T19_ = leValue__astalgo_135((*b)._kind_6.sons->data[((NI) 0)], a);
674 			if (!(T19_)) goto LA20_;
675 			T19_ = leValue__astalgo_135(a, (*b)._kind_6.sons->data[((NI) 1)]);
676 			LA20_: ;
677 			result = T19_;
678 		}
679 		goto LA15_;
680 		LA17_: ;
681 		{
682 			result = sameValue__astalgo_119(a, b);
683 		}
684 		LA15_: ;
685 	}
686 	LA1_: ;
687 	return result;
688 }
N_NIMCALL(NIM_BOOL,emptyRange__nimsets_273)689 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, emptyRange__nimsets_273)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
690 	NIM_BOOL result;
691 	NIM_BOOL T1_;
692 	result = (NIM_BOOL)0;
693 	T1_ = (NIM_BOOL)0;
694 	T1_ = leValue__astalgo_135(a, b);
695 	result = !(T1_);
696 	return result;
697 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,deduplicate__nimsets_236)698 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, deduplicate__nimsets_236)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a) {
699 	tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
700 	tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x;
701 	result = NIM_NIL;
702 	x = toBitSet__nimsets_103(conf, a);
703 	result = toTreeSet__nimsets_128(conf, x, (*a).typ, (*a).info);
704 	return result;
705 }
706