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 <stdio.h>
8 #undef LANGUAGE_C
9 #undef MIPSEB
10 #undef MIPSEL
11 #undef PPC
12 #undef R3000
13 #undef R4000
14 #undef i386
15 #undef linux
16 #undef mips
17 #undef near
18 #undef far
19 #undef powerpc
20 #undef unix
21 #define nimfr_(x, y)
22 #define nimln_(x, y)
23 typedef struct TNimType TNimType;
24 typedef struct TNimNode TNimNode;
25 typedef struct tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw;
26 typedef struct tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag;
27 typedef struct RootObj RootObj;
28 typedef struct NimStringDesc NimStringDesc;
29 typedef struct TGenericSeq TGenericSeq;
30 typedef struct tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g;
31 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
32 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
33 typedef struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw;
34 typedef struct tyTuple__JfHvHzMrhKkWAUvQKe0i1A tyTuple__JfHvHzMrhKkWAUvQKe0i1A;
35 typedef struct tyObject_Env_lexerdotnim_lexer___diB2NTuAIWY0FO9c5IUJRGg tyObject_Env_lexerdotnim_lexer___diB2NTuAIWY0FO9c5IUJRGg;
36 typedef struct tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA;
37 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
38 typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
39 typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
40 typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
41 typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
42 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
43 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
44 typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
45 typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
46 typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
47 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
48 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
49 typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
50 typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
51 typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
52 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
53 typedef struct tyTuple__eYjXpYmwoditlWZaGvgooQ tyTuple__eYjXpYmwoditlWZaGvgooQ;
54 typedef struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA;
55 typedef struct Exception Exception;
56 typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
57 typedef struct TSafePoint TSafePoint;
58 typedef struct tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ;
59 typedef struct tyObject_ArithmeticDefect__cT9c9bHlHSpA1QTnKbHjnIkA tyObject_ArithmeticDefect__cT9c9bHlHSpA1QTnKbHjnIkA;
60 typedef struct tyObject_Defect__LbeSGvgPzGzXnW9caIkJqMA tyObject_Defect__LbeSGvgPzGzXnW9caIkJqMA;
61 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
62 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
63 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
64 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
65 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
66 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
67 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
68 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
69 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
70 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
71 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
72 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
73 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
74 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
75 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
76 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
77 typedef struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw;
78 typedef struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA;
79 typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
80 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
81 typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
82 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
83 typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
84 typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
85 typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
86 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
87 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
88 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
89 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
90 struct TNimType {
91 NI size;
92 NI align;
93 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
94 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
95 TNimType* base;
96 TNimNode* node;
97 void* finalizer;
98 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
99 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
100 };
101 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
102 struct TNimNode {
103 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
104 NI offset;
105 TNimType* typ;
106 NCSTRING name;
107 NI len;
108 TNimNode** sons;
109 };
110 struct RootObj {
111 TNimType* m_type;
112 };
113 struct TGenericSeq {
114 NI len;
115 NI reserved;
116 };
117 struct NimStringDesc {
118   TGenericSeq Sup;
119 NIM_CHAR data[SEQ_DECL_SIZE];
120 };
121 struct tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag {
122   RootObj Sup;
123 NI bufpos;
124 NCSTRING buf;
125 NimStringDesc* bufStorage;
126 NI bufLen;
127 tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* stream;
128 NI lineNumber;
129 NI sentinel;
130 NI lineStart;
131 NI offsetBase;
132 };
133 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
134 typedef struct {
135 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, void* ClE_0);
136 void* ClE_0;
137 } tyProc__pIuD7iLYdwrBMntVRm61ZA;
138 struct tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw {
139   tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag Sup;
140 NI32 fileIdx;
141 NI indentAhead;
142 NI currLineIndent;
143 NIM_BOOL strongSpaces;
144 NIM_BOOL allowTabs;
145 tyProc__pIuD7iLYdwrBMntVRm61ZA errorHandler;
146 tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache;
147 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config;
148 };
149 struct tyTuple__JfHvHzMrhKkWAUvQKe0i1A {
150 void* Field0;
151 tyObject_Env_lexerdotnim_lexer___diB2NTuAIWY0FO9c5IUJRGg* Field1;
152 };
153 typedef NU8 tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ;
154 typedef NU8 tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog;
155 struct tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA {
156 tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ tokType;
157 NI indent;
158 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
159 NI64 iNumber;
160 NF fNumber;
161 tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog base;
162 NI8 strongSpaceA;
163 NI8 strongSpaceB;
164 NimStringDesc* literal;
165 NI line;
166 NI col;
167 };
168 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
169 NI id;
170 NimStringDesc* s;
171 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
172 NI h;
173 };
174 typedef NU8 tyEnum_TLLStreamKind__jVcKY16LbOamXE9bxXUD6pQ;
175 typedef struct {
176 N_NIMCALL_PTR(NI, ClP_0) (tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* s, void* buf, NI bufLen, void* ClE_0);
177 void* ClE_0;
178 } tyProc__9cZV5JMJLsdOPMv55VbpOVg;
179 typedef struct {
180 N_NIMCALL_PTR(void, ClP_0) (void* ClE_0);
181 void* ClE_0;
182 } tyProc__HzVCwACFYM9cx9aV62PdjtuA;
183 struct tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g {
184   RootObj Sup;
185 tyEnum_TLLStreamKind__jVcKY16LbOamXE9bxXUD6pQ kind;
186 FILE* f;
187 NimStringDesc* s;
188 NI rd;
189 NI wr;
190 NI lineOffset;
191 tyProc__9cZV5JMJLsdOPMv55VbpOVg repl;
192 tyProc__HzVCwACFYM9cx9aV62PdjtuA onPrompt;
193 };
194 typedef tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* tyArray__O7BaHX6ctEz6BpjFNHWCFQ[8192];
195 struct tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw {
196 tyArray__O7BaHX6ctEz6BpjFNHWCFQ buckets;
197 NI wordCounter;
198 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* idAnon;
199 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* idDelegator;
200 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* emptyIdent;
201 };
202 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
203 typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
204 typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
205 struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
206 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
207 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
208 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
209 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
210 NI intSize;
211 NI floatSize;
212 NI ptrSize;
213 NimStringDesc* tnl;
214 };
215 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
216 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
217 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
218 NU16 line;
219 NI16 col;
220 NI32 fileIndex;
221 };
222 typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
223 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
224 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
225 NI counter;
226 };
227 struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
228 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
229 NIM_BOOL trackPosAttached;
230 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
231 tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
232 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
233 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
234 tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
235 NI32 systemFileIdx;
236 };
237 typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ;
238 typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA;
239 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
240 typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
241 typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
242 struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
243 tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
244 NI counter;
245 };
246 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
247 typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
248 typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
249 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
250 typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11];
251 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
252 NI Field0;
253 NI Field1;
254 NI Field2;
255 };
256 typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
257 typedef struct {
258 N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
259 void* ClE_0;
260 } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
261 typedef struct {
262 N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
263 void* ClE_0;
264 } tyProc__k2HFjxisIgDALbEUFojxaQ;
265 typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
266 typedef struct {
267 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
268 void* ClE_0;
269 } tyProc__oL9coyIA2VDTGdUcur9aL9bew;
270 struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
271 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
272 tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
273 NI linesCompiled;
274 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
275 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
276 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
277 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
278 tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
279 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption;
280 NimStringDesc* unitSep;
281 NI evalTemplateCounter;
282 NI evalMacroCounter;
283 NI8 exitcode;
284 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd;
285 NimStringDesc* cmdInput;
286 NIM_BOOL projectIsCmd;
287 NIM_BOOL implicitCmd;
288 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
289 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
290 NIM_BOOL hintProcessingDots;
291 NI verbosity;
292 NI numberOfProcessors;
293 NF lastCmdTime;
294 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
295 NI spellSuggestMax;
296 tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
297 NimStringDesc* headerFile;
298 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
299 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
300 NimStringDesc* arguments;
301 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
302 NIM_BOOL oldNewlines;
303 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
304 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes;
305 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes;
306 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes;
307 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes;
308 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors;
309 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug mainPackageNotes;
310 NI mainPackageId;
311 NI errorCounter;
312 NI hintCounter;
313 NI warnCounter;
314 NI errorMax;
315 NI maxLoopIterationsVM;
316 NIM_BOOL isVmTrace;
317 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
318 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
319 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
320 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
321 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
322 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
323 NimStringDesc* outFile;
324 NimStringDesc* outDir;
325 NimStringDesc* jsonBuildFile;
326 NimStringDesc* prefixDir;
327 NimStringDesc* libpath;
328 NimStringDesc* nimcacheDir;
329 tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
330 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
331 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
332 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
333 NimStringDesc* projectName;
334 NimStringDesc* projectPath;
335 NimStringDesc* projectFull;
336 NIM_BOOL projectIsStdin;
337 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot;
338 NI32 projectMainIdx;
339 NI32 projectMainIdx2;
340 NimStringDesc* command;
341 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
342 NimStringDesc* commandLine;
343 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
344 NIM_BOOL keepComments;
345 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
346 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
347 NimStringDesc* docSeeSrcUrl;
348 NimStringDesc* docRoot;
349 NimStringDesc* docCmd;
350 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
351 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
352 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
353 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
354 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
355 NimStringDesc* linkOptionsCmd;
356 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
357 NimStringDesc* linkOptions;
358 NimStringDesc* compileOptions;
359 NimStringDesc* cCompilerPath;
360 tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
361 tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
362 NI suggestVersion;
363 NI suggestMaxResults;
364 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
365 tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
366 tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
367 NimStringDesc* cppCustomNamespace;
368 NimStringDesc* nimMainPrefix;
369 tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
370 };
371 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
372 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
373 NimStringDesc* Field0;
374 NI Field1;
375 NI Field2;
376 };
377 typedef N_CLOSURE_PTR(void, TM__4JpEWnGrmRM8CRqL3P2O1Q_6) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg);
378 typedef NU8 tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
379 typedef NU8 tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA;
380 struct tyTuple__eYjXpYmwoditlWZaGvgooQ {
381 NI8 Field0;
382 tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA Field1;
383 };
384 typedef NimStringDesc* tyArray__24KAM9afIUgUaqBaEBB6r9bg[3];
385 typedef NU8 tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
386 typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
387 typedef NU8 tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ;
388 struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA {
389 NI a;
390 NI b;
391 };
392 struct Exception {
393   RootObj Sup;
394 Exception* parent;
395 NCSTRING name;
396 NimStringDesc* message;
397 tySequence__uB9b75OUPRENsBAu4AnoePA* trace;
398 Exception* up;
399 };
400 struct TSafePoint {
401 TSafePoint* prev;
402 NI status;
403 jmp_buf context;
404 };
405 struct tyObject_Defect__LbeSGvgPzGzXnW9caIkJqMA {
406   Exception Sup;
407 };
408 struct tyObject_ArithmeticDefect__cT9c9bHlHSpA1QTnKbHjnIkA {
409   tyObject_Defect__LbeSGvgPzGzXnW9caIkJqMA Sup;
410 };
411 struct tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ {
412   tyObject_ArithmeticDefect__cT9c9bHlHSpA1QTnKbHjnIkA Sup;
413 };
414 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
415 NI refcount;
416 TNimType* typ;
417 };
418 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
419 void* bottom;
420 };
421 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
422 NI len;
423 NI cap;
424 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
425 };
426 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
427 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
428 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
429 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
430 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
431 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
432 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
433 };
434 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
435 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
436 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
437 NI key;
438 NI upperBound;
439 NI level;
440 };
441 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
442 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
443 NI Field1;
444 };
445 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
446 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
447 NI len;
448 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
449 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
450 };
451 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
452 NI minLargeObj;
453 NI maxLargeObj;
454 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
455 NU32 flBitmap;
456 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
457 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
458 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
459 NI currMem;
460 NI maxMem;
461 NI freeMem;
462 NI occ;
463 NI lastSize;
464 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
465 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
466 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
467 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
468 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
469 NIM_BOOL locked;
470 NIM_BOOL blockChunkSizeIncrease;
471 NI nextChunkSize;
472 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
473 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
474 };
475 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
476 NI stackScans;
477 NI cycleCollections;
478 NI maxThreshold;
479 NI maxStackSize;
480 NI maxStackCells;
481 NI cycleTableSize;
482 NI64 maxPause;
483 };
484 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
485 NI counter;
486 NI max;
487 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
488 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
489 };
490 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
491 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
492 NI cycleThreshold;
493 NI zctThreshold;
494 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
495 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
496 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
497 NI recGcLock;
498 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
499 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
500 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
501 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
502 NI gcThreadId;
503 };
504 struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA {
505   Exception Sup;
506 };
507 struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw {
508   tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup;
509 };
510 struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
511 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
512 NimStringDesc* Field1;
513 };
514 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
515 NI Field0;
516 NimStringDesc* Field1;
517 NI32 Field2;
518 };
519 struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
520 NimStringDesc* fullPath;
521 NimStringDesc* projPath;
522 NimStringDesc* shortName;
523 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
524 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
525 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
526 NimStringDesc* dirtyFile;
527 NimStringDesc* hash;
528 NIM_BOOL dirty;
529 };
530 struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
531 NI Field0;
532 NimStringDesc* Field1;
533 };
534 typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
535 struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
536 NimStringDesc* nimname;
537 NimStringDesc* cname;
538 NimStringDesc* obj;
539 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
540 NimStringDesc* customArgs;
541 };
542 struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
543 NCSTRING procname;
544 NI line;
545 NCSTRING filename;
546 };
547 struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
548   TGenericSeq Sup;
549   tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
550 };
551 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
552   TGenericSeq Sup;
553   tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
554 };
555 struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
556   TGenericSeq Sup;
557   tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
558 };
559 struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
560   TGenericSeq Sup;
561   tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
562 };
563 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
564   TGenericSeq Sup;
565   NimStringDesc* data[SEQ_DECL_SIZE];
566 };
567 struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
568   TGenericSeq Sup;
569   tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
570 };
571 struct tySequence__uB9b75OUPRENsBAu4AnoePA {
572   TGenericSeq Sup;
573   tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];
574 };
575 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
576 N_LIB_PRIVATE N_NIMCALL(void, openLexer__lexer_270)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* lex, NI32 fileIdx, tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* inputstream, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config);
577 N_LIB_PRIVATE N_NIMCALL(void, openBaseLexer__nimlexbase_25)(tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag* L, tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* inputstream, NI bufLen);
578 N_LIB_PRIVATE N_NIMCALL(NI32, fileInfoIdx__msgs_376)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename);
579 N_LIB_PRIVATE N_NIMCALL(void, fillToken__lexer_268)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* L);
580 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen);
581 N_LIB_PRIVATE N_NIMCALL(void, skip__lexer_1552)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
582 N_LIB_PRIVATE N_NIMCALL(void, lexMessagePos__lexer_346)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NI pos, NimStringDesc* arg);
583 N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q, newLineInfo__msgs_381)(NI32 fileInfoIdx, NI line, NI col);
584 N_LIB_PRIVATE N_NIMCALL(void, dispMessage__lexer_326)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg);
585 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);
586 N_LIB_PRIVATE N_NIMCALL(NI, handleCRLF__lexer_1080)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI pos);
587 N_LIB_PRIVATE N_NIMCALL(NI, getColNumber__nimlexbase_34)(tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag* L, NI pos);
588 N_LIB_PRIVATE N_NIMCALL(NI, handleCR__nimlexbase_37)(tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag* L, NI pos);
589 N_LIB_PRIVATE N_NIMCALL(NI, handleLF__nimlexbase_40)(tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag* L, NI pos);
590 N_LIB_PRIVATE N_NIMCALL(void, skipMultiLineComment__lexer_1409)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, NI start, NIM_BOOL isDoc);
591 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
592 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
593 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
594 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
595 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
596 N_LIB_PRIVATE N_NIMCALL(void, getSymbol__lexer_1229)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
597 static N_INLINE(NI, emarkamp___pureZhashes_3)(NI h, NI val);
598 N_LIB_PRIVATE N_NIMCALL(void, lexMessage__lexer_336)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg);
599 N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q, getLineInfo__lexer_314)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L);
600 static N_INLINE(void, nimZeroMem)(void* p, NI size);
601 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
602 N_LIB_PRIVATE N_NIMCALL(tyTuple__eYjXpYmwoditlWZaGvgooQ, unicodeOprLen__lexer_1203)(NCSTRING buf, NI pos);
603 static N_INLINE(NI, emarkdollar___pureZhashes_18)(NI h);
604 N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getIdent__idents_89)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NCSTRING identifier, NI length, NI h);
605 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
606 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
607 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuNormalize)(NimStringDesc* s);
608 N_LIB_PRIVATE N_NIMCALL(void, getOperator__lexer_1324)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
609 static N_INLINE(void, endOperator__lexer_1315)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, NI pos, NI hash);
610 N_LIB_PRIVATE N_NIMCALL(void, scanComment__lexer_1490)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
611 N_LIB_PRIVATE N_NIMCALL(void, getString__lexer_1097)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ mode);
612 N_LIB_PRIVATE N_NIMCALL(void, getEscapedChar__lexer_978)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
613 N_LIB_PRIVATE N_NIMCALL(void, handleHexChar__lexer_781)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI* xi, NI position);
614 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
615 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
616 static N_INLINE(NimStringDesc*, X5BX5D___pureZunicode_865)(NimStringDesc* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x);
617 N_NIMCALL(NimStringDesc*, mnewString)(NI len);
618 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cstrToNimstr)(NCSTRING str);
619 static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___pureZunicode_840)(NI a, NI b);
620 N_LIB_PRIVATE N_NIMCALL(void, addUnicodeCodePoint__lexer_853)(NimStringDesc** s, NI i);
621 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, matchTwoChars__lexer_352)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NIM_CHAR first, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw second);
622 N_LIB_PRIVATE N_NIMCALL(void, handleDecChars__lexer_836)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI* xi);
623 N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*, getIdent__idents_143)(tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* ic, NimStringDesc* identifier);
624 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimCharToStr)(NIM_CHAR x);
625 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
626 N_LIB_PRIVATE N_NIMCALL(void, getCharacter__lexer_1172)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
627 N_LIB_PRIVATE N_NIMCALL(void, getNumber__lexer_382)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* result);
628 N_LIB_PRIVATE N_NIMCALL(void, lexMessageLitNum__lexer_424)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NimStringDesc* msg, NI startpos, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msgKind);
629 N_LIB_PRIVATE N_NIMCALL(void, matchChars__lexer_411)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars);
630 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
631 N_LIB_PRIVATE N_NIMCALL(NI, matchUnderscoreChars__lexer_385)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars);
632 N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1431)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2);
633 N_NIMCALL(NimStringDesc*, rawNewString)(NI cap);
634 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuToLowerAsciiStr)(NimStringDesc* s);
635 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
636 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
637 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
638 N_LIB_PRIVATE N_NIMCALL(NI, hashString)(NimStringDesc* s);
639 static N_INLINE(void, pushSafePoint)(TSafePoint* s);
640 N_LIB_PRIVATE N_NIMCALL(NF, nsuParseFloat)(NimStringDesc* s);
641 N_LIB_PRIVATE N_NIMCALL(NI, npuParseBiggestUInt)(NimStringDesc* s, NU64* number, NI start);
642 static N_INLINE(void, popSafePoint)(void);
643 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isObj)(TNimType* obj, TNimType* subclass);
644 static N_INLINE(Exception*, nimBorrowCurrentException)(void);
645 N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size);
646 static N_INLINE(void, asgnRef)(void** dest, void* src);
647 static N_INLINE(void, incRef__system_5308)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
648 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
649 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5270)(void* usr);
650 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
651 static N_INLINE(void, decRef__system_5315)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
652 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
653 static N_INLINE(void, rtlAddZCT__system_5313)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
654 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5264)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
655 N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e, NCSTRING ename, NCSTRING procname, NCSTRING filename, NI line);
656 static N_INLINE(void, popCurrentException)(void);
657 N_LIB_PRIVATE N_NIMCALL(void, reraiseException)(void);
658 N_LIB_PRIVATE N_NIMCALL(NI, npuParseBiggestInt)(NimStringDesc* s, NI64* number, NI start);
659 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_6)(NI64 x);
660 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___system_3118)(NF x);
661 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
662 static N_INLINE(NIM_BOOL, eqeq___idents_220)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* b);
663 N_LIB_PRIVATE N_NIMCALL(void, closeBaseLexer__nimlexbase_29)(tyObject_TBaseLexer__jTxk7Uc2dfr9aTDL2dZhO9ag* L);
664 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isKeyword__lexer_196)(tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ kind);
665 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___lexer_230)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
666 static N_INLINE(NIM_CHAR*, X5BX5D___system_7361)(NimStringDesc** s, NI i);
667 static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s);
668 N_LIB_PRIVATE N_NIMCALL(void, initToken__lexer_248)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* L);
669 static N_INLINE(NIM_BOOL, contains__pureZtimes_2283)(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA s, NI value);
670 N_LIB_PRIVATE N_NIMCALL(NI, getPrecedence__lexer_1374)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok);
671 extern TNimType NTItbaselexer__jTxk7Uc2dfr9aTDL2dZhO9ag_;
672 N_LIB_PRIVATE TNimType NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_;
673 extern TNimType NTIint5150__sVg18TP9cLifHyygRe9cro9aA_;
674 extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
675 extern TNimType NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_;
676 N_LIB_PRIVATE TNimType NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_;
677 extern TNimType NTIpointer__vr5DoT1jILTGdRlYv1OYpw_;
678 extern TNimType NTIrefobject__HsJiUUcO9cHBdUCi0HwkSTA_;
679 extern TNimType NTIidentcache__lnkYNZP9asc88UfiEGjLrbA_;
680 extern TNimType NTIconfigref__a8lycfSA25OQltN3OMeBsA_;
681 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_5, "/home/runner/work/nightlies/nightlies/nim/compiler/lexer.nim", 60);
682 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__4JpEWnGrmRM8CRqL3P2O1Q_4 = {((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_5),
683 ((NI) 221),
684 ((NI) 16)}
685 ;
686 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_7, "tabs are not allowed, use spaces instead", 40);
687 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_8, "\012", 1);
688 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_9, "end of multiline comment expected", 33);
689 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_10, "invalid token: trailing underscore", 34);
690 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_11, "\'$1\' should be: \'$2\'$3", 22);
691 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__4JpEWnGrmRM8CRqL3P2O1Q_12 = {((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_5),
692 ((NI) 922),
693 ((NI) 16)}
694 ;
695 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_13 = {
696 0x00, 0x00, 0x00, 0x00, 0x72, 0xec, 0x00, 0xf4,
697 0x01, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x50,
698 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
699 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
700 ;
701 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_14, "closing \"\"\" expected, but end of file reached", 45);
702 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_15, "closing \" expected", 18);
703 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_16, "\\p not allowed in character literal", 35);
704 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_17, "expected a hex digit, but found: ", 33);
705 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_18, "; maybe prepend with 0", 22);
706 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_19, "\\u not allowed in character literal", 35);
707 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_20, "Unicode codepoint cannot be empty", 33);
708 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_21, "Unicode codepoint must be lower than 0x10FFFF, but was: ", 56);
709 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_22 = {
710 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x03,
711 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
712 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
713 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
714 ;
715 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_23, "invalid character constant", 26);
716 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_24, "_", 1);
717 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_25, "invalid token: ", 15);
718 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_26, " (\\", 3);
719 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_27, "invalid character literal", 25);
720 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_28, "\'", 1);
721 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_29, "missing closing \' for character literal", 39);
722 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_30 = {
723 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0xff, 0x03,
724 0xfe, 0xff, 0xff, 0x87, 0xfe, 0xff, 0xff, 0x07,
725 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
726 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
727 ;
728 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_31, "$1 will soon be invalid for oct literals; Use \'0o\' for octals. \'c\', \'C\' prefix", 78);
729 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_32, "only single underscores may occur in a token and token may not end with an underscore: e.g. \'1__1\' and \'1_\' are invalid", 119);
730 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_33 = {
731 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00,
732 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
733 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
734 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
735 ;
736 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_34, "$1 is an invalid int literal; For octal literals use the \'0o\' prefix.", 69);
737 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_35 = {
738 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x03,
739 0x7e, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00,
740 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
741 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
742 ;
743 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_36 = {
744 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
745 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
746 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
747 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
748 ;
749 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_37, "getNumber", 9);
750 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__4JpEWnGrmRM8CRqL3P2O1Q_38 = {((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_5),
751 ((NI) 388),
752 ((NI) 19)}
753 ;
754 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_39, "invalid number: \'$1\'", 20);
755 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_40 = {
756 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
757 0x50, 0x02, 0x20, 0x00, 0x50, 0x02, 0x20, 0x00,
758 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
759 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
760 ;
761 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_41, "f", 1);
762 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_42, "f32", 3);
763 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_43, "d", 1);
764 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_44, "f64", 3);
765 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_45, "f128", 4);
766 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_46, "i8", 2);
767 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_47, "i16", 3);
768 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_48, "i32", 3);
769 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_49, "i64", 3);
770 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_50, "u", 1);
771 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_51, "u8", 2);
772 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_52, "u16", 3);
773 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_53, "u32", 3);
774 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_54, "u64", 3);
775 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_55, "invalid number suffix: \'$1\'", 27);
776 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__4JpEWnGrmRM8CRqL3P2O1Q_57 = {((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_5),
777 ((NI) 493),
778 ((NI) 23)}
779 ;
780 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__4JpEWnGrmRM8CRqL3P2O1Q_58 = {((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_5),
781 ((NI) 510),
782 ((NI) 27)}
783 ;
784 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_59, "number out of range: \'$1\'", 25);
785 extern TNimType NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_;
786 extern TNimType NTIrefoverflowdefect__r8GBEWywN07B3Rat3azS4Q_;
787 extern TNimType NTIoverflowdefect__9cxMi1BPLc3UKt9br86bGfGQ_;
788 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_61, "number out of range: ", 21);
789 extern TNimType NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_;
790 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_62, "invalid integer: ", 17);
791 extern TNimType NTIrangedefect__Rp9adJYTsbbIUzQ8fWxwgdA_;
792 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_64, "invalid token: no whitespace between number and identifier", 58);
793 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__4JpEWnGrmRM8CRqL3P2O1Q_65 = {
794 0x00, 0x26, 0x00, 0x00, 0x01, 0x11, 0x00, 0x08,
795 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08,
796 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
797 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
798 ;
799 N_LIB_PRIVATE TNimType NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_;
800 N_LIB_PRIVATE TNimType NTItoken__sNMaWRTImjqfh1DU9cmdQkA_;
801 extern TNimType NTIpident__EiGmNYVHiKeimIyQkW82mg_;
802 extern TNimType NTIbiggestint__Aav8dQoMlCFnZRxA0IhTHQ_;
803 extern TNimType NTIfloat__w9bl9a1ul9ctRJWiMl9cNnIMvg_;
804 N_LIB_PRIVATE TNimType NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_;
805 extern TNimType NTIint56__chXunH2dwinSkhpA6JnsXw_;
806 extern TNimType NTIstring__77mFvmsOLKik79ci2hXkHEg_;
807 STRING_LITERAL(TM__4JpEWnGrmRM8CRqL3P2O1Q_73, "keyword ", 8);
808 extern TSafePoint* excHandler__system_2565;
809 extern TSafePoint* excHandler__system_2565;
810 extern TSafePoint* excHandler__system_2565;
811 extern TSafePoint* excHandler__system_2565;
812 extern Exception* currException__system_2566;
813 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5217;
814 extern Exception* currException__system_2566;
815 extern Exception* currException__system_2566;
N_NIMCALL(void,initToken__lexer_248)816 N_LIB_PRIVATE N_NIMCALL(void, initToken__lexer_248)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* L) {
817 	(*L).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 0);
818 	(*L).iNumber = IL64(0);
819 	(*L).indent = ((NI) 0);
820 	(*L).strongSpaceA = ((NI8) 0);
821 	unsureAsgnRef((void**) (&(*L).literal), ((NimStringDesc*) NIM_NIL));
822 	(*L).fNumber = 0.0;
823 	(*L).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 0);
824 	unsureAsgnRef((void**) (&(*L).ident), ((tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*) NIM_NIL));
825 }
N_NIMCALL(void,openLexer__lexer_270)826 N_LIB_PRIVATE N_NIMCALL(void, openLexer__lexer_270)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* lex, NI32 fileIdx, tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* inputstream, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config) {
827 	openBaseLexer__nimlexbase_25(&lex->Sup, inputstream, ((NI) 8192));
828 	(*lex).fileIdx = fileIdx;
829 	(*lex).indentAhead = ((NI) -1);
830 	(*lex).currLineIndent = ((NI) 0);
831 	(*lex).Sup.lineNumber += (*inputstream).lineOffset;
832 	unsureAsgnRef((void**) (&(*lex).cache), cache);
833 	unsureAsgnRef((void**) (&(*lex).config), config);
834 }
N_NIMCALL(void,openLexer__lexer_298)835 N_LIB_PRIVATE N_NIMCALL(void, openLexer__lexer_298)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* lex, NimStringDesc* filename, tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* inputstream, tyObject_IdentCachecolonObjectType___TzLHS09bRH9a0TYLs39cqcNaw* cache, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config) {
836 	NI32 T1_;
837 	T1_ = (NI32)0;
838 	T1_ = fileInfoIdx__msgs_376(config, filename);
839 	openLexer__lexer_270(lex, T1_, inputstream, cache, config);
840 }
N_NIMCALL(void,fillToken__lexer_268)841 N_LIB_PRIVATE N_NIMCALL(void, fillToken__lexer_268)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* L) {
842 	(*L).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 0);
843 	(*L).iNumber = IL64(0);
844 	(*L).indent = ((NI) 0);
845 	(*L).strongSpaceA = ((NI8) 0);
846 	unsureAsgnRef((void**) (&(*L).literal), setLengthStr((*L).literal, ((NI) 0)));
847 	(*L).fNumber = 0.0;
848 	(*L).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 0);
849 	unsureAsgnRef((void**) (&(*L).ident), ((tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*) NIM_NIL));
850 }
N_NIMCALL(void,dispMessage__lexer_326)851 N_LIB_PRIVATE N_NIMCALL(void, dispMessage__lexer_326)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg) {
852 	{
853 		if (!((*L).errorHandler.ClP_0 == 0)) goto LA3_;
854 		liMessage__msgs_1118((*L).config, info, msg, arg, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__4JpEWnGrmRM8CRqL3P2O1Q_4, NIM_FALSE);
855 	}
856 	goto LA1_;
857 	LA3_: ;
858 	{
859 		(*L).errorHandler.ClE_0? (*L).errorHandler.ClP_0((*L).config, info, msg, arg, (*L).errorHandler.ClE_0):((TM__4JpEWnGrmRM8CRqL3P2O1Q_6)((*L).errorHandler.ClP_0))((*L).config, info, msg, arg);
860 	}
861 	LA1_: ;
862 }
N_NIMCALL(void,lexMessagePos__lexer_346)863 N_LIB_PRIVATE N_NIMCALL(void, lexMessagePos__lexer_346)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NI pos, NimStringDesc* arg) {
864 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
865 	info = newLineInfo__msgs_381((*L).fileIdx, (*L).Sup.lineNumber, (NI)(pos - (*L).Sup.lineStart));
866 	dispMessage__lexer_326((&(*L)), info, msg, arg);
867 }
N_NIMCALL(NI,handleCRLF__lexer_1080)868 N_LIB_PRIVATE N_NIMCALL(NI, handleCRLF__lexer_1080)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI pos) {
869 	NI result;
870 	result = (NI)0;
871 	switch (((NU8)((*L).Sup.buf[pos]))) {
872 	case 13:
873 	{
874 		NI colX60gensym93_;
875 		colX60gensym93_ = getColNumber__nimlexbase_34((&(*L).Sup), pos);
876 		{
877 			if (!(((NI) 80) < colX60gensym93_)) goto LA4_;
878 			lexMessagePos__lexer_346(L, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 71), pos, ((NimStringDesc*) NIM_NIL));
879 		}
880 		LA4_: ;
881 		result = handleCR__nimlexbase_37(&L->Sup, pos);
882 	}
883 	break;
884 	case 10:
885 	{
886 		NI colX60gensym95_;
887 		colX60gensym95_ = getColNumber__nimlexbase_34((&(*L).Sup), pos);
888 		{
889 			if (!(((NI) 80) < colX60gensym95_)) goto LA9_;
890 			lexMessagePos__lexer_346(L, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 71), pos, ((NimStringDesc*) NIM_NIL));
891 		}
892 		LA9_: ;
893 		result = handleLF__nimlexbase_40(&L->Sup, pos);
894 	}
895 	break;
896 	default:
897 	{
898 		result = pos;
899 	}
900 	break;
901 	}
902 	return result;
903 }
N_INLINE(void,nimCopyMem)904 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
905 	void* T1_;
906 	T1_ = (void*)0;
907 	T1_ = memcpy(dest, source, ((size_t) (size)));
908 }
N_INLINE(void,copyMem__system_1727)909 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
910 	nimCopyMem(dest, source, size);
911 }
N_INLINE(void,appendString)912 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
913 	{
914 		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
915 		copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
916 		(*dest).Sup.len += (*src).Sup.len;
917 	}
918 	LA3_: ;
919 }
N_NIMCALL(void,skipMultiLineComment__lexer_1409)920 N_LIB_PRIVATE N_NIMCALL(void, skipMultiLineComment__lexer_1409)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, NI start, NIM_BOOL isDoc) {
921 	NI pos;
922 	NI toStrip;
923 	NI nesting;
924 	pos = start;
925 	toStrip = ((NI) 0);
926 	{
927 		if (!isDoc) goto LA3_;
928 		toStrip = getColNumber__nimlexbase_34((&(*L).Sup), pos);
929 		{
930 			while (1) {
931 				if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA6;
932 				pos += ((NI) 1);
933 				toStrip += ((NI) 1);
934 			} LA6: ;
935 		}
936 		{
937 			while (1) {
938 				if (!(((NU8)((*L).Sup.buf[pos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(10)))) goto LA8;
939 				pos = handleCRLF__lexer_1080(L, pos);
940 				toStrip = ((NI) 0);
941 				{
942 					while (1) {
943 						if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA10;
944 						pos += ((NI) 1);
945 						toStrip += ((NI) 1);
946 					} LA10: ;
947 				}
948 			} LA8: ;
949 		}
950 	}
951 	LA3_: ;
952 	nesting = ((NI) 0);
953 	{
954 		while (1) {
955 			switch (((NU8)((*L).Sup.buf[pos]))) {
956 			case 35:
957 			{
958 				{
959 					if (!isDoc) goto LA16_;
960 					{
961 						NIM_BOOL T20_;
962 						T20_ = (NIM_BOOL)0;
963 						T20_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35));
964 						if (!(T20_)) goto LA21_;
965 						T20_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 2))]) == (NU8)(91));
966 						LA21_: ;
967 						if (!T20_) goto LA22_;
968 						nesting += ((NI) 1);
969 					}
970 					LA22_: ;
971 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 35));
972 				}
973 				goto LA14_;
974 				LA16_: ;
975 				{
976 					if (!((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(91))) goto LA25_;
977 					nesting += ((NI) 1);
978 				}
979 				goto LA14_;
980 				LA25_: ;
981 				LA14_: ;
982 				pos += ((NI) 1);
983 			}
984 			break;
985 			case 93:
986 			{
987 				{
988 					if (!isDoc) goto LA30_;
989 					{
990 						NIM_BOOL T34_;
991 						T34_ = (NIM_BOOL)0;
992 						T34_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35));
993 						if (!(T34_)) goto LA35_;
994 						T34_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 2))]) == (NU8)(35));
995 						LA35_: ;
996 						if (!T34_) goto LA36_;
997 						{
998 							if (!(nesting == ((NI) 0))) goto LA40_;
999 							pos += ((NI) 3);
1000 							goto LA11;
1001 						}
1002 						LA40_: ;
1003 						nesting -= ((NI) 1);
1004 					}
1005 					LA36_: ;
1006 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 93));
1007 				}
1008 				goto LA28_;
1009 				LA30_: ;
1010 				{
1011 					if (!((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35))) goto LA43_;
1012 					{
1013 						if (!(nesting == ((NI) 0))) goto LA47_;
1014 						pos += ((NI) 2);
1015 						goto LA11;
1016 					}
1017 					LA47_: ;
1018 					nesting -= ((NI) 1);
1019 				}
1020 				goto LA28_;
1021 				LA43_: ;
1022 				LA28_: ;
1023 				pos += ((NI) 1);
1024 			}
1025 			break;
1026 			case 13:
1027 			case 10:
1028 			{
1029 				pos = handleCRLF__lexer_1080(L, pos);
1030 				{
1031 					NI c;
1032 					if (!isDoc) goto LA52_;
1033 					unsureAsgnRef((void**) (&(*tok).literal), resizeString((*tok).literal, 1));
1034 appendString((*tok).literal, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_8));
1035 					(*tok).iNumber += ((NI) 1);
1036 					c = toStrip;
1037 					{
1038 						while (1) {
1039 							NIM_BOOL T56_;
1040 							T56_ = (NIM_BOOL)0;
1041 							T56_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(32));
1042 							if (!(T56_)) goto LA57_;
1043 							T56_ = (((NI) 0) < c);
1044 							LA57_: ;
1045 							if (!T56_) goto LA55;
1046 							pos += ((NI) 1);
1047 							c -= ((NI) 1);
1048 						} LA55: ;
1049 					}
1050 				}
1051 				LA52_: ;
1052 			}
1053 			break;
1054 			case 0:
1055 			{
1056 				lexMessagePos__lexer_346(L, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), pos, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_9));
1057 				goto LA11;
1058 			}
1059 			break;
1060 			default:
1061 			{
1062 				{
1063 					NIM_BOOL T62_;
1064 					T62_ = (NIM_BOOL)0;
1065 					T62_ = isDoc;
1066 					if (T62_) goto LA63_;
1067 					T62_ = NIM_FALSE;
1068 					LA63_: ;
1069 					if (!T62_) goto LA64_;
1070 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[pos]));
1071 				}
1072 				LA64_: ;
1073 				pos += ((NI) 1);
1074 			}
1075 			break;
1076 			}
1077 		}
1078 	} LA11: ;
1079 	(*L).Sup.bufpos = pos;
1080 }
N_NIMCALL(void,skip__lexer_1552)1081 N_LIB_PRIVATE N_NIMCALL(void, skip__lexer_1552)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
1082 	NI pos;
1083 	pos = (*L).Sup.bufpos;
1084 	(*tok).strongSpaceA = ((NI8) 0);
1085 	{
1086 		while (1) {
1087 			switch (((NU8)((*L).Sup.buf[pos]))) {
1088 			case 32:
1089 			{
1090 				pos += ((NI) 1);
1091 				(*tok).strongSpaceA += ((NI) 1);
1092 			}
1093 			break;
1094 			case 9:
1095 			{
1096 				{
1097 					if (!!((*L).allowTabs)) goto LA7_;
1098 					lexMessagePos__lexer_346(L, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), pos, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_7));
1099 				}
1100 				LA7_: ;
1101 				pos += ((NI) 1);
1102 			}
1103 			break;
1104 			case 13:
1105 			case 10:
1106 			{
1107 				NI indent;
1108 				pos = handleCRLF__lexer_1080(L, pos);
1109 				indent = ((NI) 0);
1110 				{
1111 					while (1) {
1112 						{
1113 							if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA14_;
1114 							pos += ((NI) 1);
1115 							indent += ((NI) 1);
1116 						}
1117 						goto LA12_;
1118 						LA14_: ;
1119 						{
1120 							NIM_BOOL T17_;
1121 							T17_ = (NIM_BOOL)0;
1122 							T17_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(35));
1123 							if (!(T17_)) goto LA18_;
1124 							T17_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(91));
1125 							LA18_: ;
1126 							if (!T17_) goto LA19_;
1127 							skipMultiLineComment__lexer_1409(L, tok, (NI)(pos + ((NI) 2)), NIM_FALSE);
1128 							pos = (*L).Sup.bufpos;
1129 						}
1130 						goto LA12_;
1131 						LA19_: ;
1132 						{
1133 							goto LA10;
1134 						}
1135 						LA12_: ;
1136 					}
1137 				} LA10: ;
1138 				(*tok).strongSpaceA = ((NI8) 0);
1139 				{
1140 					NIM_BOOL T24_;
1141 					NIM_BOOL T26_;
1142 					T24_ = (NIM_BOOL)0;
1143 					T24_ = ((NU8)(32) < (NU8)((*L).Sup.buf[pos]));
1144 					if (!(T24_)) goto LA25_;
1145 					T26_ = (NIM_BOOL)0;
1146 					T26_ = !(((NU8)((*L).Sup.buf[pos]) == (NU8)(35)));
1147 					if (T26_) goto LA27_;
1148 					T26_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35));
1149 					LA27_: ;
1150 					T24_ = T26_;
1151 					LA25_: ;
1152 					if (!T24_) goto LA28_;
1153 					(*tok).indent = indent;
1154 					(*L).currLineIndent = indent;
1155 					goto LA1;
1156 				}
1157 				LA28_: ;
1158 			}
1159 			break;
1160 			case 35:
1161 			{
1162 				{
1163 					if (!((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35))) goto LA33_;
1164 					goto LA1;
1165 				}
1166 				LA33_: ;
1167 				{
1168 					if (!((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(91))) goto LA37_;
1169 					skipMultiLineComment__lexer_1409(L, tok, (NI)(pos + ((NI) 2)), NIM_FALSE);
1170 					pos = (*L).Sup.bufpos;
1171 				}
1172 				goto LA35_;
1173 				LA37_: ;
1174 				{
1175 					{
1176 						while (1) {
1177 							if (!!((((NU8)((*L).Sup.buf[pos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(10)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(0))))) goto LA41;
1178 							pos += ((NI) 1);
1179 						} LA41: ;
1180 					}
1181 				}
1182 				LA35_: ;
1183 			}
1184 			break;
1185 			default:
1186 			{
1187 				goto LA1;
1188 			}
1189 			break;
1190 			}
1191 		}
1192 	} LA1: ;
1193 	(*L).Sup.bufpos = pos;
1194 }
N_INLINE(NI,emarkamp___pureZhashes_3)1195 static N_INLINE(NI, emarkamp___pureZhashes_3)(NI h, NI val) {
1196 	NI result;
1197 	NU h_2;
1198 	NU val_2;
1199 	NU res;
1200 	result = (NI)0;
1201 	h_2 = ((NU) (h));
1202 	val_2 = ((NU) (val));
1203 	res = (NU)((NU32)(h_2) + (NU32)(val_2));
1204 	res = (NU)((NU32)(res) + (NU32)((NU)((NU32)(res) << (NU32)(((NI) 10)))));
1205 	res = (NU)(res ^ (NU)((NU32)(res) >> (NU32)(((NI) 6))));
1206 	result = ((NI) (res));
1207 	return result;
1208 }
N_INLINE(void,nimSetMem__systemZmemory_7)1209 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
1210 	void* T1_;
1211 	T1_ = (void*)0;
1212 	T1_ = memset(a, v, ((size_t) (size)));
1213 }
N_INLINE(void,nimZeroMem)1214 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
1215 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
1216 }
N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q,getLineInfo__lexer_314)1217 N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q, getLineInfo__lexer_314)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L) {
1218 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q result;
1219 	NI T1_;
1220 	nimZeroMem((void*)(&result), sizeof(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q));
1221 	T1_ = (NI)0;
1222 	T1_ = getColNumber__nimlexbase_34((&(*L).Sup), (*L).Sup.bufpos);
1223 	result = newLineInfo__msgs_381((*L).fileIdx, (*L).Sup.lineNumber, T1_);
1224 	return result;
1225 }
N_NIMCALL(void,lexMessage__lexer_336)1226 N_LIB_PRIVATE N_NIMCALL(void, lexMessage__lexer_336)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg) {
1227 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T1_;
1228 	T1_ = getLineInfo__lexer_314(L);
1229 	dispMessage__lexer_326(L, T1_, msg, arg);
1230 }
N_NIMCALL(tyTuple__eYjXpYmwoditlWZaGvgooQ,unicodeOprLen__lexer_1203)1231 N_LIB_PRIVATE N_NIMCALL(tyTuple__eYjXpYmwoditlWZaGvgooQ, unicodeOprLen__lexer_1203)(NCSTRING buf, NI pos) {
1232 	tyTuple__eYjXpYmwoditlWZaGvgooQ result;
1233 	NI8 colontmp_;
1234 	tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__2;
1235 	nimZeroMem((void*)(&result), sizeof(tyTuple__eYjXpYmwoditlWZaGvgooQ));
1236 	colontmp_ = ((NI8) 0);
1237 	colontmp__2 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1238 	result.Field0 = colontmp_;
1239 	result.Field1 = colontmp__2;
1240 	switch (((NU8)(buf[pos]))) {
1241 	case 226:
1242 	{
1243 		{
1244 			if (!((NU8)(buf[(NI)(pos + ((NI) 1))]) == (NU8)(136))) goto LA4_;
1245 			{
1246 				NI8 colontmp__3;
1247 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__4;
1248 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(152))) goto LA8_;
1249 				colontmp__3 = ((NI8) 3);
1250 				colontmp__4 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1251 				result.Field0 = colontmp__3;
1252 				result.Field1 = colontmp__4;
1253 			}
1254 			goto LA6_;
1255 			LA8_: ;
1256 			{
1257 				NI8 colontmp__5;
1258 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__6;
1259 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(153))) goto LA11_;
1260 				colontmp__5 = ((NI8) 3);
1261 				colontmp__6 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1262 				result.Field0 = colontmp__5;
1263 				result.Field1 = colontmp__6;
1264 			}
1265 			goto LA6_;
1266 			LA11_: ;
1267 			{
1268 				NI8 colontmp__7;
1269 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__8;
1270 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(167))) goto LA14_;
1271 				colontmp__7 = ((NI8) 3);
1272 				colontmp__8 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1273 				result.Field0 = colontmp__7;
1274 				result.Field1 = colontmp__8;
1275 			}
1276 			goto LA6_;
1277 			LA14_: ;
1278 			{
1279 				NI8 colontmp__9;
1280 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__10;
1281 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(168))) goto LA17_;
1282 				colontmp__9 = ((NI8) 3);
1283 				colontmp__10 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1284 				result.Field0 = colontmp__9;
1285 				result.Field1 = colontmp__10;
1286 			}
1287 			goto LA6_;
1288 			LA17_: ;
1289 			{
1290 				NI8 colontmp__11;
1291 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__12;
1292 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(169))) goto LA20_;
1293 				colontmp__11 = ((NI8) 3);
1294 				colontmp__12 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1295 				result.Field0 = colontmp__11;
1296 				result.Field1 = colontmp__12;
1297 			}
1298 			goto LA6_;
1299 			LA20_: ;
1300 			{
1301 				NI8 colontmp__13;
1302 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__14;
1303 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(170))) goto LA23_;
1304 				colontmp__13 = ((NI8) 3);
1305 				colontmp__14 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1306 				result.Field0 = colontmp__13;
1307 				result.Field1 = colontmp__14;
1308 			}
1309 			goto LA6_;
1310 			LA23_: ;
1311 			LA6_: ;
1312 		}
1313 		goto LA2_;
1314 		LA4_: ;
1315 		{
1316 			if (!((NU8)(buf[(NI)(pos + ((NI) 1))]) == (NU8)(138))) goto LA26_;
1317 			{
1318 				NI8 colontmp__15;
1319 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__16;
1320 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(147))) goto LA30_;
1321 				colontmp__15 = ((NI8) 3);
1322 				colontmp__16 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1323 				result.Field0 = colontmp__15;
1324 				result.Field1 = colontmp__16;
1325 			}
1326 			goto LA28_;
1327 			LA30_: ;
1328 			{
1329 				NI8 colontmp__17;
1330 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__18;
1331 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(148))) goto LA33_;
1332 				colontmp__17 = ((NI8) 3);
1333 				colontmp__18 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1334 				result.Field0 = colontmp__17;
1335 				result.Field1 = colontmp__18;
1336 			}
1337 			goto LA28_;
1338 			LA33_: ;
1339 			{
1340 				NI8 colontmp__19;
1341 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__20;
1342 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(149))) goto LA36_;
1343 				colontmp__19 = ((NI8) 3);
1344 				colontmp__20 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1345 				result.Field0 = colontmp__19;
1346 				result.Field1 = colontmp__20;
1347 			}
1348 			goto LA28_;
1349 			LA36_: ;
1350 			{
1351 				NI8 colontmp__21;
1352 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__22;
1353 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(150))) goto LA39_;
1354 				colontmp__21 = ((NI8) 3);
1355 				colontmp__22 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1356 				result.Field0 = colontmp__21;
1357 				result.Field1 = colontmp__22;
1358 			}
1359 			goto LA28_;
1360 			LA39_: ;
1361 			{
1362 				NI8 colontmp__23;
1363 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__24;
1364 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(151))) goto LA42_;
1365 				colontmp__23 = ((NI8) 3);
1366 				colontmp__24 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1367 				result.Field0 = colontmp__23;
1368 				result.Field1 = colontmp__24;
1369 			}
1370 			goto LA28_;
1371 			LA42_: ;
1372 			{
1373 				NI8 colontmp__25;
1374 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__26;
1375 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(152))) goto LA45_;
1376 				colontmp__25 = ((NI8) 3);
1377 				colontmp__26 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1378 				result.Field0 = colontmp__25;
1379 				result.Field1 = colontmp__26;
1380 			}
1381 			goto LA28_;
1382 			LA45_: ;
1383 			{
1384 				NI8 colontmp__27;
1385 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__28;
1386 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(153))) goto LA48_;
1387 				colontmp__27 = ((NI8) 3);
1388 				colontmp__28 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1389 				result.Field0 = colontmp__27;
1390 				result.Field1 = colontmp__28;
1391 			}
1392 			goto LA28_;
1393 			LA48_: ;
1394 			{
1395 				NI8 colontmp__29;
1396 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__30;
1397 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(155))) goto LA51_;
1398 				colontmp__29 = ((NI8) 3);
1399 				colontmp__30 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1400 				result.Field0 = colontmp__29;
1401 				result.Field1 = colontmp__30;
1402 			}
1403 			goto LA28_;
1404 			LA51_: ;
1405 			{
1406 				NI8 colontmp__31;
1407 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__32;
1408 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(158))) goto LA54_;
1409 				colontmp__31 = ((NI8) 3);
1410 				colontmp__32 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1411 				result.Field0 = colontmp__31;
1412 				result.Field1 = colontmp__32;
1413 			}
1414 			goto LA28_;
1415 			LA54_: ;
1416 			{
1417 				NI8 colontmp__33;
1418 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__34;
1419 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(159))) goto LA57_;
1420 				colontmp__33 = ((NI8) 3);
1421 				colontmp__34 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1422 				result.Field0 = colontmp__33;
1423 				result.Field1 = colontmp__34;
1424 			}
1425 			goto LA28_;
1426 			LA57_: ;
1427 			{
1428 				NI8 colontmp__35;
1429 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__36;
1430 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(160))) goto LA60_;
1431 				colontmp__35 = ((NI8) 3);
1432 				colontmp__36 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1433 				result.Field0 = colontmp__35;
1434 				result.Field1 = colontmp__36;
1435 			}
1436 			goto LA28_;
1437 			LA60_: ;
1438 			{
1439 				NI8 colontmp__37;
1440 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__38;
1441 				if (!((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(161))) goto LA63_;
1442 				colontmp__37 = ((NI8) 3);
1443 				colontmp__38 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1444 				result.Field0 = colontmp__37;
1445 				result.Field1 = colontmp__38;
1446 			}
1447 			goto LA28_;
1448 			LA63_: ;
1449 			LA28_: ;
1450 		}
1451 		goto LA2_;
1452 		LA26_: ;
1453 		{
1454 			NIM_BOOL T66_;
1455 			NI8 colontmp__39;
1456 			tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__40;
1457 			T66_ = (NIM_BOOL)0;
1458 			T66_ = ((NU8)(buf[(NI)(pos + ((NI) 1))]) == (NU8)(152));
1459 			if (!(T66_)) goto LA67_;
1460 			T66_ = ((NU8)(buf[(NI)(pos + ((NI) 2))]) == (NU8)(133));
1461 			LA67_: ;
1462 			if (!T66_) goto LA68_;
1463 			colontmp__39 = ((NI8) 3);
1464 			colontmp__40 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1465 			result.Field0 = colontmp__39;
1466 			result.Field1 = colontmp__40;
1467 		}
1468 		goto LA2_;
1469 		LA68_: ;
1470 		LA2_: ;
1471 	}
1472 	break;
1473 	case 194:
1474 	{
1475 		{
1476 			NI8 colontmp__41;
1477 			tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__42;
1478 			if (!((NU8)(buf[(NI)(pos + ((NI) 1))]) == (NU8)(177))) goto LA73_;
1479 			colontmp__41 = ((NI8) 2);
1480 			colontmp__42 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 1);
1481 			result.Field0 = colontmp__41;
1482 			result.Field1 = colontmp__42;
1483 		}
1484 		LA73_: ;
1485 	}
1486 	break;
1487 	case 195:
1488 	{
1489 		{
1490 			NI8 colontmp__43;
1491 			tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA colontmp__44;
1492 			if (!((NU8)(buf[(NI)(pos + ((NI) 1))]) == (NU8)(151))) goto LA78_;
1493 			colontmp__43 = ((NI8) 2);
1494 			colontmp__44 = ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0);
1495 			result.Field0 = colontmp__43;
1496 			result.Field1 = colontmp__44;
1497 		}
1498 		LA78_: ;
1499 	}
1500 	break;
1501 	default:
1502 	{
1503 	}
1504 	break;
1505 	}
1506 	return result;
1507 }
N_INLINE(NI,emarkdollar___pureZhashes_18)1508 static N_INLINE(NI, emarkdollar___pureZhashes_18)(NI h) {
1509 	NI result;
1510 	NU h_2;
1511 	NU res;
1512 	result = (NI)0;
1513 	h_2 = ((NU) (h));
1514 	res = (NU)((NU32)(h_2) + (NU32)((NU)((NU32)(h_2) << (NU32)(((NI) 3)))));
1515 	res = (NU)(res ^ (NU)((NU32)(res) >> (NU32)(((NI) 11))));
1516 	res = (NU)((NU32)(res) + (NU32)((NU)((NU32)(res) << (NU32)(((NI) 15)))));
1517 	result = ((NI) (res));
1518 	return result;
1519 }
N_NIMCALL(void,getSymbol__lexer_1229)1520 N_LIB_PRIVATE N_NIMCALL(void, getSymbol__lexer_1229)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
1521 	NI h;
1522 	NI pos;
1523 	NIM_BOOL suspicious;
1524 	h = ((NI) 0);
1525 	pos = (*L).Sup.bufpos;
1526 	suspicious = NIM_FALSE;
1527 	{
1528 		while (1) {
1529 			NIM_CHAR c;
1530 			c = (*L).Sup.buf[pos];
1531 			switch (((NU8)(c))) {
1532 			case 97 ... 122:
1533 			case 48 ... 57:
1534 			{
1535 				h = emarkamp___pureZhashes_3(h, ((NU8)(c)));
1536 				pos += ((NI) 1);
1537 			}
1538 			break;
1539 			case 65 ... 90:
1540 			{
1541 				c = ((NIM_CHAR) (((NI) ((NI)(((NU8)(c)) + ((NI) 32))))));
1542 				h = emarkamp___pureZhashes_3(h, ((NU8)(c)));
1543 				pos += ((NI) 1);
1544 				suspicious = NIM_TRUE;
1545 			}
1546 			break;
1547 			case 95:
1548 			{
1549 				{
1550 					if (!!((((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) >= ((NU8)(128)) && ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) <= ((NU8)(255))))) goto LA8_;
1551 					lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_10));
1552 					goto LA1;
1553 				}
1554 				LA8_: ;
1555 				pos += ((NI) 1);
1556 				suspicious = NIM_TRUE;
1557 			}
1558 			break;
1559 			case 128 ... 255:
1560 			{
1561 				{
1562 					NIM_BOOL T13_;
1563 					NIM_BOOL T14_;
1564 					tyTuple__eYjXpYmwoditlWZaGvgooQ T17_;
1565 					T13_ = (NIM_BOOL)0;
1566 					T14_ = (NIM_BOOL)0;
1567 					T14_ = (((NU8)(c)) == ((NU8)(226)) || ((NU8)(c)) == ((NU8)(194)) || ((NU8)(c)) == ((NU8)(195)));
1568 					if (!(T14_)) goto LA15_;
1569 					T14_ = (((*(*L).config).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 17))&31U)))!=0);
1570 					LA15_: ;
1571 					T13_ = T14_;
1572 					if (!(T13_)) goto LA16_;
1573 					T17_ = unicodeOprLen__lexer_1203((*L).Sup.buf, pos);
1574 					T13_ = !((T17_.Field0 == ((NI8) 0)));
1575 					LA16_: ;
1576 					if (!T13_) goto LA18_;
1577 					goto LA1;
1578 				}
1579 				goto LA11_;
1580 				LA18_: ;
1581 				{
1582 					h = emarkamp___pureZhashes_3(h, ((NU8)(c)));
1583 					pos += ((NI) 1);
1584 				}
1585 				LA11_: ;
1586 			}
1587 			break;
1588 			default:
1589 			{
1590 				goto LA1;
1591 			}
1592 			break;
1593 			}
1594 		}
1595 	} LA1: ;
1596 	h = emarkdollar___pureZhashes_18(h);
1597 	unsureAsgnRef((void**) (&(*tok).ident), getIdent__idents_89((*L).cache, ((NCSTRING) ((&(*L).Sup.buf[(*L).Sup.bufpos]))), (NI)(pos - (*L).Sup.bufpos), h));
1598 	{
1599 		NIM_BOOL T24_;
1600 		T24_ = (NIM_BOOL)0;
1601 		T24_ = ((*(*tok).ident).id < ((NI) 1));
1602 		if (T24_) goto LA25_;
1603 		T24_ = (((NI) 66) < (*(*tok).ident).id);
1604 		LA25_: ;
1605 		if (!T24_) goto LA26_;
1606 		(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 2);
1607 	}
1608 	goto LA22_;
1609 	LA26_: ;
1610 	{
1611 		(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) ((NI)((*(*tok).ident).id + ((NI) 2))));
1612 		{
1613 			NIM_BOOL T31_;
1614 			NimStringDesc* mX60gensym144_;
1615 			tyArray__24KAM9afIUgUaqBaEBB6r9bg T35_;
1616 			tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msgX60gensym144_;
1617 			tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T43_;
1618 			T31_ = (NIM_BOOL)0;
1619 			T31_ = suspicious;
1620 			if (!(T31_)) goto LA32_;
1621 			T31_ = !(((49152 & (*(*L).config).globalOptions) == 0));
1622 			LA32_: ;
1623 			if (!T31_) goto LA33_;
1624 			nimZeroMem((void*)T35_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
1625 			T35_[0] = copyString((*(*tok).ident).s);
1626 			T35_[1] = nsuNormalize((*(*tok).ident).s);
1627 			T35_[2] = ((NimStringDesc*) NIM_NIL);
1628 			mX60gensym144_ = nsuFormatOpenArray(((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_11), T35_, 3);
1629 			{
1630 				NIM_BOOL T38_;
1631 				T38_ = (NIM_BOOL)0;
1632 				T38_ = (((*(*L).config).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 15))&63U)))!=0);
1633 				if (!(T38_)) goto LA39_;
1634 				T38_ = NIM_TRUE;
1635 				LA39_: ;
1636 				if (!T38_) goto LA40_;
1637 				msgX60gensym144_ = ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14);
1638 			}
1639 			goto LA36_;
1640 			LA40_: ;
1641 			{
1642 				msgX60gensym144_ = ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 87);
1643 			}
1644 			LA36_: ;
1645 			T43_ = getLineInfo__lexer_314((&(*L)));
1646 			liMessage__msgs_1118((*L).config, T43_, msgX60gensym144_, mX60gensym144_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__4JpEWnGrmRM8CRqL3P2O1Q_12, NIM_FALSE);
1647 		}
1648 		LA33_: ;
1649 	}
1650 	LA22_: ;
1651 	(*L).Sup.bufpos = pos;
1652 }
N_INLINE(void,endOperator__lexer_1315)1653 static N_INLINE(void, endOperator__lexer_1315)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, NI pos, NI hash) {
1654 	NI h;
1655 	h = emarkdollar___pureZhashes_18(hash);
1656 	unsureAsgnRef((void**) (&(*tok).ident), getIdent__idents_89((*L).cache, ((NCSTRING) ((&(*L).Sup.buf[(*L).Sup.bufpos]))), (NI)(pos - (*L).Sup.bufpos), h));
1657 	{
1658 		NIM_BOOL T3_;
1659 		T3_ = (NIM_BOOL)0;
1660 		T3_ = ((*(*tok).ident).id < ((NI) 67));
1661 		if (T3_) goto LA4_;
1662 		T3_ = (((NI) 71) < (*(*tok).ident).id);
1663 		LA4_: ;
1664 		if (!T3_) goto LA5_;
1665 		(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 110);
1666 	}
1667 	goto LA1_;
1668 	LA5_: ;
1669 	{
1670 		(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) ((NI)((NI)((*(*tok).ident).id - ((NI) 67)) + ((NI) 104))));
1671 	}
1672 	LA1_: ;
1673 	(*L).Sup.bufpos = pos;
1674 }
N_NIMCALL(void,getOperator__lexer_1324)1675 N_LIB_PRIVATE N_NIMCALL(void, getOperator__lexer_1324)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
1676 	NI pos;
1677 	NI h;
1678 	pos = (*L).Sup.bufpos;
1679 	h = ((NI) 0);
1680 	{
1681 		while (1) {
1682 			NIM_CHAR c;
1683 			c = (*L).Sup.buf[pos];
1684 			{
1685 				if (!((TM__4JpEWnGrmRM8CRqL3P2O1Q_13[(NU)(((NU8)(c)))>>3] &(1U<<((NU)(((NU8)(c)))&7U)))!=0)) goto LA5_;
1686 				h = emarkamp___pureZhashes_3(h, ((NU8)(c)));
1687 				pos += ((NI) 1);
1688 			}
1689 			goto LA3_;
1690 			LA5_: ;
1691 			{
1692 				NIM_BOOL T8_;
1693 				NI8 oprLen;
1694 				tyTuple__eYjXpYmwoditlWZaGvgooQ T12_;
1695 				T8_ = (NIM_BOOL)0;
1696 				T8_ = (((NU8)(c)) == ((NU8)(226)) || ((NU8)(c)) == ((NU8)(194)) || ((NU8)(c)) == ((NU8)(195)));
1697 				if (!(T8_)) goto LA9_;
1698 				T8_ = (((*(*L).config).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 17))&31U)))!=0);
1699 				LA9_: ;
1700 				if (!T8_) goto LA10_;
1701 				T12_ = unicodeOprLen__lexer_1203((*L).Sup.buf, pos);
1702 				oprLen = T12_.Field0;
1703 				{
1704 					if (!(oprLen == ((NI8) 0))) goto LA15_;
1705 					goto LA1;
1706 				}
1707 				LA15_: ;
1708 				{
1709 					NI i;
1710 					NI colontmp_;
1711 					NI i_2;
1712 					i = (NI)0;
1713 					colontmp_ = (NI)0;
1714 					colontmp_ = ((NI) (oprLen));
1715 					i_2 = ((NI) 0);
1716 					{
1717 						while (1) {
1718 							if (!(i_2 < colontmp_)) goto LA19;
1719 							i = i_2;
1720 							h = emarkamp___pureZhashes_3(h, ((NU8)((*L).Sup.buf[pos])));
1721 							pos += ((NI) 1);
1722 							i_2 += ((NI) 1);
1723 						} LA19: ;
1724 					}
1725 				}
1726 			}
1727 			goto LA3_;
1728 			LA10_: ;
1729 			{
1730 				goto LA1;
1731 			}
1732 			LA3_: ;
1733 		}
1734 	} LA1: ;
1735 	endOperator__lexer_1315(L, tok, pos, h);
1736 	(*tok).strongSpaceB = ((NI8) 0);
1737 	{
1738 		while (1) {
1739 			if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA22;
1740 			pos += ((NI) 1);
1741 			(*tok).strongSpaceB += ((NI) 1);
1742 		} LA22: ;
1743 	}
1744 	{
1745 		if (!(((NU8)((*L).Sup.buf[pos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(10)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(0)))) goto LA25_;
1746 		(*tok).strongSpaceB = ((NI8) -1);
1747 	}
1748 	LA25_: ;
1749 }
N_NIMCALL(void,scanComment__lexer_1490)1750 N_LIB_PRIVATE N_NIMCALL(void, scanComment__lexer_1490)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
1751 	NI pos;
1752 	NI toStrip;
1753 	NIM_BOOL stripInit;
1754 {	pos = (*L).Sup.bufpos;
1755 	(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 111);
1756 	(*tok).iNumber = IL64(0);
1757 	{
1758 		if (!((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 2))]) == (NU8)(91))) goto LA3_;
1759 		skipMultiLineComment__lexer_1409(L, tok, (NI)(pos + ((NI) 3)), NIM_TRUE);
1760 		goto BeforeRet_;
1761 	}
1762 	LA3_: ;
1763 	pos += ((NI) 2);
1764 	toStrip = ((NI) 0);
1765 	stripInit = NIM_FALSE;
1766 	{
1767 		while (1) {
1768 			NI lastBackslash;
1769 			NI indent;
1770 			{
1771 				if (!!(stripInit)) goto LA9_;
1772 				{
1773 					while (1) {
1774 						if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA12;
1775 						pos += ((NI) 1);
1776 						toStrip += ((NI) 1);
1777 					} LA12: ;
1778 				}
1779 				{
1780 					if (!(((NU8)((*L).Sup.buf[pos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(10)))) goto LA15_;
1781 					toStrip = ((NI) 0);
1782 				}
1783 				goto LA13_;
1784 				LA15_: ;
1785 				{
1786 					stripInit = NIM_TRUE;
1787 				}
1788 				LA13_: ;
1789 			}
1790 			LA9_: ;
1791 			lastBackslash = ((NI) -1);
1792 			{
1793 				while (1) {
1794 					if (!!((((NU8)((*L).Sup.buf[pos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(10)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(0))))) goto LA19;
1795 					{
1796 						if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(92))) goto LA22_;
1797 						lastBackslash = (NI)(pos + ((NI) 1));
1798 					}
1799 					LA22_: ;
1800 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[pos]));
1801 					pos += ((NI) 1);
1802 				} LA19: ;
1803 			}
1804 			pos = handleCRLF__lexer_1080(L, pos);
1805 			indent = ((NI) 0);
1806 			{
1807 				while (1) {
1808 					if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(32))) goto LA25;
1809 					pos += ((NI) 1);
1810 					indent += ((NI) 1);
1811 				} LA25: ;
1812 			}
1813 			{
1814 				NIM_BOOL T28_;
1815 				T28_ = (NIM_BOOL)0;
1816 				T28_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(35));
1817 				if (!(T28_)) goto LA29_;
1818 				T28_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(35));
1819 				LA29_: ;
1820 				if (!T28_) goto LA30_;
1821 				unsureAsgnRef((void**) (&(*tok).literal), resizeString((*tok).literal, 1));
1822 appendString((*tok).literal, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_8));
1823 				pos += ((NI) 2);
1824 				{
1825 					NI c;
1826 					if (!stripInit) goto LA34_;
1827 					c = toStrip;
1828 					{
1829 						while (1) {
1830 							NIM_BOOL T38_;
1831 							T38_ = (NIM_BOOL)0;
1832 							T38_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(32));
1833 							if (!(T38_)) goto LA39_;
1834 							T38_ = (((NI) 0) < c);
1835 							LA39_: ;
1836 							if (!T38_) goto LA37;
1837 							pos += ((NI) 1);
1838 							c -= ((NI) 1);
1839 						} LA37: ;
1840 					}
1841 					(*tok).iNumber += ((NI) 1);
1842 				}
1843 				LA34_: ;
1844 			}
1845 			goto LA26_;
1846 			LA30_: ;
1847 			{
1848 				{
1849 					if (!((NU8)(32) < (NU8)((*L).Sup.buf[pos]))) goto LA43_;
1850 					(*L).indentAhead = indent;
1851 				}
1852 				LA43_: ;
1853 				goto LA5;
1854 			}
1855 			LA26_: ;
1856 		}
1857 	} LA5: ;
1858 	(*L).Sup.bufpos = pos;
1859 	}BeforeRet_: ;
1860 }
N_INLINE(void,appendChar)1861 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c) {
1862 	(*dest).data[(*dest).Sup.len] = c;
1863 	(*dest).data[(NI)((*dest).Sup.len + ((NI) 1))] = 0;
1864 	(*dest).Sup.len += ((NI) 1);
1865 }
N_NIMCALL(void,handleHexChar__lexer_781)1866 N_LIB_PRIVATE N_NIMCALL(void, handleHexChar__lexer_781)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI* xi, NI position) {
1867 	switch (((NU8)((*L).Sup.buf[(*L).Sup.bufpos]))) {
1868 	case 48 ... 57:
1869 	{
1870 		(*xi) = (NI)((NI)((NU32)((*xi)) << (NU32)(((NI) 4))) | (NI)(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) - ((NI) 48)));
1871 		(*L).Sup.bufpos += ((NI) 1);
1872 	}
1873 	break;
1874 	case 97 ... 102:
1875 	{
1876 		(*xi) = (NI)((NI)((NU32)((*xi)) << (NU32)(((NI) 4))) | (NI)((NI)(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) - ((NI) 97)) + ((NI) 10)));
1877 		(*L).Sup.bufpos += ((NI) 1);
1878 	}
1879 	break;
1880 	case 65 ... 70:
1881 	{
1882 		(*xi) = (NI)((NI)((NU32)((*xi)) << (NU32)(((NI) 4))) | (NI)((NI)(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) - ((NI) 65)) + ((NI) 10)));
1883 		(*L).Sup.bufpos += ((NI) 1);
1884 	}
1885 	break;
1886 	case 34:
1887 	case 39:
1888 	{
1889 		{
1890 			NimStringDesc* T9_;
1891 			if (!(((NI) (position)) <= ((NI) 1))) goto LA7_;
1892 			T9_ = NIM_NIL;
1893 			T9_ = rawNewString(56);
1894 appendString(T9_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_17));
1895 appendChar(T9_, (*L).Sup.buf[(*L).Sup.bufpos]);
1896 appendString(T9_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_18));
1897 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T9_);
1898 		}
1899 		LA7_: ;
1900 		{
1901 			if (!(((NI) (position)) == ((NI) 0))) goto LA12_;
1902 			(*L).Sup.bufpos += ((NI) 1);
1903 		}
1904 		LA12_: ;
1905 	}
1906 	break;
1907 	default:
1908 	{
1909 		NimStringDesc* T15_;
1910 		T15_ = NIM_NIL;
1911 		T15_ = rawNewString(56);
1912 appendString(T15_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_17));
1913 appendChar(T15_, (*L).Sup.buf[(*L).Sup.bufpos]);
1914 appendString(T15_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_18));
1915 		lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T15_);
1916 		(*L).Sup.bufpos += ((NI) 1);
1917 	}
1918 	break;
1919 	}
1920 }
N_INLINE(NimStringDesc *,X5BX5D___pureZunicode_865)1921 static N_INLINE(NimStringDesc*, X5BX5D___pureZunicode_865)(NimStringDesc* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x) {
1922 	NimStringDesc* result;
1923 	NI a;
1924 	NI L;
1925 	result = NIM_NIL;
1926 	a = x.a;
1927 	L = (NI)((NI)(x.b - a) + ((NI) 1));
1928 	result = mnewString(((NI) (L)));
1929 	{
1930 		NI i;
1931 		NI i_2;
1932 		i = (NI)0;
1933 		i_2 = ((NI) 0);
1934 		{
1935 			while (1) {
1936 				if (!(i_2 < L)) goto LA3;
1937 				i = i_2;
1938 				result->data[i] = s->data[(NI)(i + a)];
1939 				i_2 += ((NI) 1);
1940 			} LA3: ;
1941 		}
1942 	}
1943 	return result;
1944 }
N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA,dotdot___pureZunicode_840)1945 static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___pureZunicode_840)(NI a, NI b) {
1946 	tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA result;
1947 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
1948 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
1949 	result.a = a;
1950 	result.b = b;
1951 	return result;
1952 }
N_NIMCALL(void,addUnicodeCodePoint__lexer_853)1953 N_LIB_PRIVATE N_NIMCALL(void, addUnicodeCodePoint__lexer_853)(NimStringDesc** s, NI i) {
1954 	NU i_2;
1955 	NI pos;
1956 	i_2 = ((NU) (i));
1957 	pos = ((*s) ? (*s)->Sup.len : 0);
1958 	{
1959 		if (!((NU32)(i_2) <= (NU32)(((NU) 127)))) goto LA3_;
1960 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 1))))));
1961 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) (i_2))));
1962 	}
1963 	goto LA1_;
1964 	LA3_: ;
1965 	{
1966 		if (!((NU32)(i_2) <= (NU32)(((NU) 2047)))) goto LA6_;
1967 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 2))))));
1968 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 6))) | ((NU) 192))))));
1969 		(*s)->data[(NI)(pos + ((NI) 1))] = ((NIM_CHAR) (((NI) ((NU)((NU)(i_2 & ((NU) 63)) | ((NU) 128))))));
1970 	}
1971 	goto LA1_;
1972 	LA6_: ;
1973 	{
1974 		if (!((NU32)(i_2) <= (NU32)(((NU) 65535)))) goto LA9_;
1975 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 3))))));
1976 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 12))) | ((NU) 224))))));
1977 		(*s)->data[(NI)(pos + ((NI) 1))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 6))) & ((NU) 63)) | ((NU) 128))))));
1978 		(*s)->data[(NI)(pos + ((NI) 2))] = ((NIM_CHAR) (((NI) ((NU)((NU)(i_2 & ((NU) 63)) | ((NU) 128))))));
1979 	}
1980 	goto LA1_;
1981 	LA9_: ;
1982 	{
1983 		if (!((NU32)(i_2) <= (NU32)(((NU) 2097151)))) goto LA12_;
1984 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 4))))));
1985 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 18))) | ((NU) 240))))));
1986 		(*s)->data[(NI)(pos + ((NI) 1))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 12))) & ((NU) 63)) | ((NU) 128))))));
1987 		(*s)->data[(NI)(pos + ((NI) 2))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 6))) & ((NU) 63)) | ((NU) 128))))));
1988 		(*s)->data[(NI)(pos + ((NI) 3))] = ((NIM_CHAR) (((NI) ((NU)((NU)(i_2 & ((NU) 63)) | ((NU) 128))))));
1989 	}
1990 	goto LA1_;
1991 	LA12_: ;
1992 	{
1993 		if (!((NU32)(i_2) <= (NU32)(((NU) 67108863)))) goto LA15_;
1994 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 5))))));
1995 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 24))) | ((NU) 248))))));
1996 		(*s)->data[(NI)(pos + ((NI) 1))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 18))) & ((NU) 63)) | ((NU) 128))))));
1997 		(*s)->data[(NI)(pos + ((NI) 2))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 12))) & ((NU) 63)) | ((NU) 128))))));
1998 		(*s)->data[(NI)(pos + ((NI) 3))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 6))) & ((NU) 63)) | ((NU) 128))))));
1999 		(*s)->data[(NI)(pos + ((NI) 4))] = ((NIM_CHAR) (((NI) ((NU)((NU)(i_2 & ((NU) 63)) | ((NU) 128))))));
2000 	}
2001 	goto LA1_;
2002 	LA15_: ;
2003 	{
2004 		if (!((NU32)(i_2) <= (NU32)(((NU) 2147483647)))) goto LA18_;
2005 		unsureAsgnRef((void**) (&(*s)), setLengthStr((*s), ((NI) ((NI)(pos + ((NI) 6))))));
2006 		(*s)->data[(NI)(pos + ((NI) 0))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 30))) | ((NU) 252))))));
2007 		(*s)->data[(NI)(pos + ((NI) 1))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 24))) & ((NU) 63)) | ((NU) 128))))));
2008 		(*s)->data[(NI)(pos + ((NI) 2))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 18))) & ((NU) 63)) | ((NU) 128))))));
2009 		(*s)->data[(NI)(pos + ((NI) 3))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 12))) & ((NU) 63)) | ((NU) 128))))));
2010 		(*s)->data[(NI)(pos + ((NI) 4))] = ((NIM_CHAR) (((NI) ((NU)((NU)((NU)((NU32)(i_2) >> (NU32)(((NI) 6))) & ((NU) 63)) | ((NU) 128))))));
2011 		(*s)->data[(NI)(pos + ((NI) 5))] = ((NIM_CHAR) (((NI) ((NU)((NU)(i_2 & ((NU) 63)) | ((NU) 128))))));
2012 	}
2013 	goto LA1_;
2014 	LA18_: ;
2015 	LA1_: ;
2016 }
N_NIMCALL(NIM_BOOL,matchTwoChars__lexer_352)2017 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, matchTwoChars__lexer_352)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NIM_CHAR first, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw second) {
2018 	NIM_BOOL result;
2019 	NIM_BOOL T1_;
2020 	result = (NIM_BOOL)0;
2021 	T1_ = (NIM_BOOL)0;
2022 	T1_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(first));
2023 	if (!(T1_)) goto LA2_;
2024 	T1_ = ((second[(NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])))&7U)))!=0);
2025 	LA2_: ;
2026 	result = T1_;
2027 	return result;
2028 }
N_NIMCALL(void,handleDecChars__lexer_836)2029 N_LIB_PRIVATE N_NIMCALL(void, handleDecChars__lexer_836)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NI* xi) {
2030 	{
2031 		while (1) {
2032 			if (!(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(57)))) goto LA2;
2033 			(*xi) = (NI)((NI)((*xi) * ((NI) 10)) + (NI)(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) - ((NI) 48)));
2034 			(*L).Sup.bufpos += ((NI) 1);
2035 		} LA2: ;
2036 	}
2037 }
N_NIMCALL(void,getEscapedChar__lexer_978)2038 N_LIB_PRIVATE N_NIMCALL(void, getEscapedChar__lexer_978)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
2039 	(*L).Sup.bufpos += ((NI) 1);
2040 	switch (((NU8)((*L).Sup.buf[(*L).Sup.bufpos]))) {
2041 	case 110:
2042 	case 78:
2043 	{
2044 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 10));
2045 		(*L).Sup.bufpos += ((NI) 1);
2046 	}
2047 	break;
2048 	case 112:
2049 	case 80:
2050 	{
2051 		{
2052 			if (!((*tok).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 88))) goto LA5_;
2053 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_16));
2054 		}
2055 		LA5_: ;
2056 		unsureAsgnRef((void**) (&(*tok).literal), resizeString((*tok).literal, ((*(*L).config).target.tnl ? (*(*L).config).target.tnl->Sup.len : 0) + 0));
2057 appendString((*tok).literal, (*(*L).config).target.tnl);
2058 		(*L).Sup.bufpos += ((NI) 1);
2059 	}
2060 	break;
2061 	case 114:
2062 	case 82:
2063 	case 99:
2064 	case 67:
2065 	{
2066 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 13));
2067 		(*L).Sup.bufpos += ((NI) 1);
2068 	}
2069 	break;
2070 	case 108:
2071 	case 76:
2072 	{
2073 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 10));
2074 		(*L).Sup.bufpos += ((NI) 1);
2075 	}
2076 	break;
2077 	case 102:
2078 	case 70:
2079 	{
2080 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 12));
2081 		(*L).Sup.bufpos += ((NI) 1);
2082 	}
2083 	break;
2084 	case 101:
2085 	case 69:
2086 	{
2087 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 27));
2088 		(*L).Sup.bufpos += ((NI) 1);
2089 	}
2090 	break;
2091 	case 97:
2092 	case 65:
2093 	{
2094 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 7));
2095 		(*L).Sup.bufpos += ((NI) 1);
2096 	}
2097 	break;
2098 	case 98:
2099 	case 66:
2100 	{
2101 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 8));
2102 		(*L).Sup.bufpos += ((NI) 1);
2103 	}
2104 	break;
2105 	case 118:
2106 	case 86:
2107 	{
2108 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 11));
2109 		(*L).Sup.bufpos += ((NI) 1);
2110 	}
2111 	break;
2112 	case 116:
2113 	case 84:
2114 	{
2115 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 9));
2116 		(*L).Sup.bufpos += ((NI) 1);
2117 	}
2118 	break;
2119 	case 39:
2120 	case 34:
2121 	{
2122 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[(*L).Sup.bufpos]));
2123 		(*L).Sup.bufpos += ((NI) 1);
2124 	}
2125 	break;
2126 	case 92:
2127 	{
2128 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 92));
2129 		(*L).Sup.bufpos += ((NI) 1);
2130 	}
2131 	break;
2132 	case 120:
2133 	case 88:
2134 	{
2135 		NI xi;
2136 		(*L).Sup.bufpos += ((NI) 1);
2137 		xi = ((NI) 0);
2138 		handleHexChar__lexer_781(L, (&xi), ((NI) 1));
2139 		handleHexChar__lexer_781(L, (&xi), ((NI) 2));
2140 		unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, ((NIM_CHAR) (((NI) (xi))))));
2141 	}
2142 	break;
2143 	case 117:
2144 	case 85:
2145 	{
2146 		NI xi_2;
2147 		{
2148 			if (!((*tok).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 88))) goto LA21_;
2149 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_19));
2150 		}
2151 		LA21_: ;
2152 		(*L).Sup.bufpos += ((NI) 1);
2153 		xi_2 = ((NI) 0);
2154 		{
2155 			NI start;
2156 			if (!((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(123))) goto LA25_;
2157 			(*L).Sup.bufpos += ((NI) 1);
2158 			start = (*L).Sup.bufpos;
2159 			{
2160 				while (1) {
2161 					if (!!(((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(125)))) goto LA28;
2162 					handleHexChar__lexer_781(L, (&xi_2), ((NI) 0));
2163 				} LA28: ;
2164 			}
2165 			{
2166 				if (!(start == (*L).Sup.bufpos)) goto LA31_;
2167 				lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_20));
2168 			}
2169 			LA31_: ;
2170 			(*L).Sup.bufpos += ((NI) 1);
2171 			{
2172 				NimStringDesc* hex;
2173 				NimStringDesc* T37_;
2174 				tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T38_;
2175 				NimStringDesc* T39_;
2176 				if (!(((NI) 1114111) < xi_2)) goto LA35_;
2177 				T37_ = NIM_NIL;
2178 				T37_ = cstrToNimstr((*L).Sup.buf);
2179 				T38_ = dotdot___pureZunicode_840(start, (NI)((*L).Sup.bufpos - ((NI) 2)));
2180 				hex = X5BX5D___pureZunicode_865(T37_, T38_);
2181 				T39_ = NIM_NIL;
2182 				T39_ = rawNewString((hex ? hex->Sup.len : 0) + 56);
2183 appendString(T39_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_21));
2184 appendString(T39_, hex);
2185 				lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T39_);
2186 			}
2187 			LA35_: ;
2188 		}
2189 		goto LA23_;
2190 		LA25_: ;
2191 		{
2192 			handleHexChar__lexer_781(L, (&xi_2), ((NI) 1));
2193 			handleHexChar__lexer_781(L, (&xi_2), ((NI) 2));
2194 			handleHexChar__lexer_781(L, (&xi_2), ((NI) 3));
2195 			handleHexChar__lexer_781(L, (&xi_2), ((NI) 4));
2196 		}
2197 		LA23_: ;
2198 		addUnicodeCodePoint__lexer_853((&(*tok).literal), xi_2);
2199 	}
2200 	break;
2201 	case 48 ... 57:
2202 	{
2203 		NI xi_3;
2204 		{
2205 			NIM_BOOL T44_;
2206 			T44_ = (NIM_BOOL)0;
2207 			T44_ = matchTwoChars__lexer_352((&(*L)), 48, TM__4JpEWnGrmRM8CRqL3P2O1Q_22);
2208 			if (!T44_) goto LA45_;
2209 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 17), ((NimStringDesc*) NIM_NIL));
2210 		}
2211 		LA45_: ;
2212 		xi_3 = ((NI) 0);
2213 		handleDecChars__lexer_836(L, (&xi_3));
2214 		{
2215 			if (!(xi_3 <= ((NI) 255))) goto LA49_;
2216 			unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, ((NIM_CHAR) (((NI) (xi_3))))));
2217 		}
2218 		goto LA47_;
2219 		LA49_: ;
2220 		{
2221 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_23));
2222 		}
2223 		LA47_: ;
2224 	}
2225 	break;
2226 	default:
2227 	{
2228 		lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_23));
2229 	}
2230 	break;
2231 	}
2232 }
N_NIMCALL(void,getString__lexer_1097)2233 N_LIB_PRIVATE N_NIMCALL(void, getString__lexer_1097)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ mode) {
2234 	NI pos;
2235 	NI line;
2236 	pos = (*L).Sup.bufpos;
2237 	line = (*L).Sup.lineNumber;
2238 	pos += ((NI) 1);
2239 	{
2240 		NIM_BOOL T3_;
2241 		T3_ = (NIM_BOOL)0;
2242 		T3_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(34));
2243 		if (!(T3_)) goto LA4_;
2244 		T3_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(34));
2245 		LA4_: ;
2246 		if (!T3_) goto LA5_;
2247 		(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 85);
2248 		pos += ((NI) 2);
2249 		{
2250 			NI newpos;
2251 			if (!(((NU8)((*L).Sup.buf[pos])) == ((NU8)(32)) || ((NU8)((*L).Sup.buf[pos])) == ((NU8)(9)))) goto LA9_;
2252 			newpos = (NI)(pos + ((NI) 1));
2253 			{
2254 				while (1) {
2255 					if (!(((NU8)((*L).Sup.buf[newpos])) == ((NU8)(32)) || ((NU8)((*L).Sup.buf[newpos])) == ((NU8)(9)))) goto LA12;
2256 					newpos += ((NI) 1);
2257 				} LA12: ;
2258 			}
2259 			{
2260 				if (!(((NU8)((*L).Sup.buf[newpos])) == ((NU8)(13)) || ((NU8)((*L).Sup.buf[newpos])) == ((NU8)(10)))) goto LA15_;
2261 				pos = newpos;
2262 			}
2263 			LA15_: ;
2264 		}
2265 		LA9_: ;
2266 		pos = handleCRLF__lexer_1080(L, pos);
2267 		{
2268 			while (1) {
2269 				switch (((NU8)((*L).Sup.buf[pos]))) {
2270 				case 34:
2271 				{
2272 					{
2273 						NIM_BOOL T22_;
2274 						NIM_BOOL T23_;
2275 						T22_ = (NIM_BOOL)0;
2276 						T23_ = (NIM_BOOL)0;
2277 						T23_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(34));
2278 						if (!(T23_)) goto LA24_;
2279 						T23_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 2))]) == (NU8)(34));
2280 						LA24_: ;
2281 						T22_ = T23_;
2282 						if (!(T22_)) goto LA25_;
2283 						T22_ = !(((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 3))]) == (NU8)(34)));
2284 						LA25_: ;
2285 						if (!T22_) goto LA26_;
2286 						(*L).Sup.bufpos = (NI)(pos + ((NI) 3));
2287 						goto LA17;
2288 					}
2289 					LA26_: ;
2290 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 34));
2291 					pos += ((NI) 1);
2292 				}
2293 				break;
2294 				case 13:
2295 				case 10:
2296 				{
2297 					pos = handleCRLF__lexer_1080(L, pos);
2298 					unsureAsgnRef((void**) (&(*tok).literal), resizeString((*tok).literal, 1));
2299 appendString((*tok).literal, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_8));
2300 				}
2301 				break;
2302 				case 0:
2303 				{
2304 					NI line2;
2305 					line2 = (*L).Sup.lineNumber;
2306 					(*L).Sup.lineNumber = line;
2307 					lexMessagePos__lexer_346(L, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), (*L).Sup.lineStart, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_14));
2308 					(*L).Sup.lineNumber = line2;
2309 					(*L).Sup.bufpos = pos;
2310 					goto LA17;
2311 				}
2312 				break;
2313 				default:
2314 				{
2315 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[pos]));
2316 					pos += ((NI) 1);
2317 				}
2318 				break;
2319 				}
2320 			}
2321 		} LA17: ;
2322 	}
2323 	goto LA1_;
2324 	LA5_: ;
2325 	{
2326 		{
2327 			if (!!((mode == ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 0)))) goto LA34_;
2328 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 84);
2329 		}
2330 		goto LA32_;
2331 		LA34_: ;
2332 		{
2333 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 83);
2334 		}
2335 		LA32_: ;
2336 		{
2337 			while (1) {
2338 				NIM_CHAR c;
2339 				c = (*L).Sup.buf[pos];
2340 				{
2341 					if (!((NU8)(c) == (NU8)(34))) goto LA41_;
2342 					{
2343 						NIM_BOOL T45_;
2344 						T45_ = (NIM_BOOL)0;
2345 						T45_ = !((mode == ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 0)));
2346 						if (!(T45_)) goto LA46_;
2347 						T45_ = ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))]) == (NU8)(34));
2348 						LA46_: ;
2349 						if (!T45_) goto LA47_;
2350 						pos += ((NI) 2);
2351 						unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 34));
2352 					}
2353 					goto LA43_;
2354 					LA47_: ;
2355 					{
2356 						pos += ((NI) 1);
2357 						goto LA37;
2358 					}
2359 					LA43_: ;
2360 				}
2361 				goto LA39_;
2362 				LA41_: ;
2363 				{
2364 					if (!(((NU8)(c)) == ((NU8)(13)) || ((NU8)(c)) == ((NU8)(10)) || ((NU8)(c)) == ((NU8)(0)))) goto LA51_;
2365 					lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_15));
2366 					goto LA37;
2367 				}
2368 				goto LA39_;
2369 				LA51_: ;
2370 				{
2371 					NIM_BOOL T54_;
2372 					T54_ = (NIM_BOOL)0;
2373 					T54_ = ((NU8)(c) == (NU8)(92));
2374 					if (!(T54_)) goto LA55_;
2375 					T54_ = (mode == ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 0));
2376 					LA55_: ;
2377 					if (!T54_) goto LA56_;
2378 					(*L).Sup.bufpos = pos;
2379 					getEscapedChar__lexer_978(L, tok);
2380 					pos = (*L).Sup.bufpos;
2381 				}
2382 				goto LA39_;
2383 				LA56_: ;
2384 				{
2385 					unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, c));
2386 					pos += ((NI) 1);
2387 				}
2388 				LA39_: ;
2389 			}
2390 		} LA37: ;
2391 		(*L).Sup.bufpos = pos;
2392 	}
2393 	LA1_: ;
2394 }
N_NIMCALL(void,getCharacter__lexer_1172)2395 N_LIB_PRIVATE N_NIMCALL(void, getCharacter__lexer_1172)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
2396 	NI startPos;
2397 	NIM_CHAR c;
2398 	startPos = (*L).Sup.bufpos;
2399 	(*L).Sup.bufpos += ((NI) 1);
2400 	c = (*L).Sup.buf[(*L).Sup.bufpos];
2401 	switch (((NU8)(c))) {
2402 	case 0 ... 31:
2403 	case 39:
2404 	{
2405 		lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_27));
2406 		unsureAsgnRef((void**) (&(*tok).literal), nimCharToStr(c));
2407 	}
2408 	break;
2409 	case 92:
2410 	{
2411 		getEscapedChar__lexer_978(L, tok);
2412 	}
2413 	break;
2414 	default:
2415 	{
2416 		unsureAsgnRef((void**) (&(*tok).literal), nimCharToStr(c));
2417 		(*L).Sup.bufpos += ((NI) 1);
2418 	}
2419 	break;
2420 	}
2421 	{
2422 		if (!((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(39))) goto LA6_;
2423 		(*L).Sup.bufpos += ((NI) 1);
2424 	}
2425 	goto LA4_;
2426 	LA6_: ;
2427 	{
2428 		{
2429 			NIM_BOOL T11_;
2430 			T11_ = (NIM_BOOL)0;
2431 			T11_ = (((NI) 0) < startPos);
2432 			if (!(T11_)) goto LA12_;
2433 			T11_ = ((NU8)((*L).Sup.buf[(NI)(startPos - ((NI) 1))]) == (NU8)(96));
2434 			LA12_: ;
2435 			if (!T11_) goto LA13_;
2436 			unsureAsgnRef((void**) (&(*tok).literal), copyString(((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_28)));
2437 			(*L).Sup.bufpos = (NI)(startPos + ((NI) 1));
2438 		}
2439 		goto LA9_;
2440 		LA13_: ;
2441 		{
2442 			lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_29));
2443 		}
2444 		LA9_: ;
2445 	}
2446 	LA4_: ;
2447 }
N_NIMCALL(void,matchChars__lexer_411)2448 N_LIB_PRIVATE N_NIMCALL(void, matchChars__lexer_411)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars) {
2449 	NI pos;
2450 	pos = (*L).Sup.bufpos;
2451 	{
2452 		while (1) {
2453 			if (!((chars[(NU)(((NU8)((*L).Sup.buf[pos])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[pos])))&7U)))!=0)) goto LA2;
2454 			unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[pos]));
2455 			pos += ((NI) 1);
2456 		} LA2: ;
2457 	}
2458 	(*L).Sup.bufpos = pos;
2459 }
N_NIMCALL(void,lexMessageLitNum__lexer_424)2460 N_LIB_PRIVATE N_NIMCALL(void, lexMessageLitNum__lexer_424)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, NimStringDesc* msg, NI startpos, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msgKind) {
2461 	NI msgPos;
2462 	tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA t;
2463 	NimStringDesc* T11_;
2464 	msgPos = (*L).Sup.bufpos;
2465 	nimZeroMem((void*)(&t), sizeof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA));
2466 	t.literal = ((NimStringDesc*) NIM_NIL);
2467 	(*L).Sup.bufpos = startpos;
2468 	matchChars__lexer_411(L, (&t), TM__4JpEWnGrmRM8CRqL3P2O1Q_30);
2469 	{
2470 		NIM_BOOL T3_;
2471 		T3_ = (NIM_BOOL)0;
2472 		T3_ = (((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(43)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(45)));
2473 		if (!(T3_)) goto LA4_;
2474 		T3_ = (((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) == ((NU8)(101)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) == ((NU8)(69)));
2475 		LA4_: ;
2476 		if (!T3_) goto LA5_;
2477 		t.literal = addChar(t.literal, (*L).Sup.buf[(*L).Sup.bufpos]);
2478 		(*L).Sup.bufpos += ((NI) 1);
2479 		matchChars__lexer_411(L, (&t), TM__4JpEWnGrmRM8CRqL3P2O1Q_30);
2480 	}
2481 	LA5_: ;
2482 	{
2483 		if (!(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(95)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(46)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(39)))) goto LA9_;
2484 		t.literal = addChar(t.literal, (*L).Sup.buf[(*L).Sup.bufpos]);
2485 		(*L).Sup.bufpos += ((NI) 1);
2486 		matchChars__lexer_411(L, (&t), TM__4JpEWnGrmRM8CRqL3P2O1Q_22);
2487 	}
2488 	LA9_: ;
2489 	(*L).Sup.bufpos = msgPos;
2490 	T11_ = NIM_NIL;
2491 	T11_ = nsuFormatSingleElem(msg, t.literal);
2492 	lexMessage__lexer_336((&(*L)), msgKind, T11_);
2493 }
N_NIMCALL(NI,matchUnderscoreChars__lexer_385)2494 N_LIB_PRIVATE N_NIMCALL(NI, matchUnderscoreChars__lexer_385)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars) {
2495 	NI result;
2496 	NI pos;
2497 	result = (NI)0;
2498 	pos = (*L).Sup.bufpos;
2499 	result = ((NI) 0);
2500 	{
2501 		while (1) {
2502 			{
2503 				if (!((chars[(NU)(((NU8)((*L).Sup.buf[pos])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[pos])))&7U)))!=0)) goto LA5_;
2504 				unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, (*L).Sup.buf[pos]));
2505 				pos += ((NI) 1);
2506 				result += ((NI) 1);
2507 			}
2508 			goto LA3_;
2509 			LA5_: ;
2510 			{
2511 				goto LA1;
2512 			}
2513 			LA3_: ;
2514 			{
2515 				if (!((NU8)((*L).Sup.buf[pos]) == (NU8)(95))) goto LA10_;
2516 				{
2517 					if (!!(((chars[(NU)(((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])))&7U)))!=0))) goto LA14_;
2518 					lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_32));
2519 					goto LA1;
2520 				}
2521 				LA14_: ;
2522 				unsureAsgnRef((void**) (&(*tok).literal), addChar((*tok).literal, 95));
2523 				pos += ((NI) 1);
2524 			}
2525 			LA10_: ;
2526 		}
2527 	} LA1: ;
2528 	(*L).Sup.bufpos = pos;
2529 	return result;
2530 }
N_INLINE(int,nimCmpMem)2531 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
2532 	int result;
2533 	result = (int)0;
2534 	result = memcmp(a, b, ((size_t) (size)));
2535 	return result;
2536 }
N_INLINE(NIM_BOOL,equalMem__system_1735)2537 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
2538 	NIM_BOOL result;
2539 	int T1_;
2540 	result = (NIM_BOOL)0;
2541 	T1_ = (int)0;
2542 	T1_ = nimCmpMem(a, b, size);
2543 	result = (T1_ == ((NI32) 0));
2544 	return result;
2545 }
N_INLINE(NIM_BOOL,eqStrings)2546 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
2547 	NIM_BOOL result;
2548 	NI alen;
2549 	NI blen;
2550 {	result = (NIM_BOOL)0;
2551 	alen = (a ? a->Sup.len : 0);
2552 	blen = (b ? b->Sup.len : 0);
2553 	{
2554 		if (!(alen == blen)) goto LA3_;
2555 		{
2556 			if (!(alen == ((NI) 0))) goto LA7_;
2557 			result = NIM_TRUE;
2558 			goto BeforeRet_;
2559 		}
2560 		LA7_: ;
2561 		result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
2562 		goto BeforeRet_;
2563 	}
2564 	LA3_: ;
2565 	}BeforeRet_: ;
2566 	return result;
2567 }
N_INLINE(void,pushSafePoint)2568 static N_INLINE(void, pushSafePoint)(TSafePoint* s) {
2569 	(*s).prev = excHandler__system_2565;
2570 	excHandler__system_2565 = s;
2571 }
N_INLINE(void,popSafePoint)2572 static N_INLINE(void, popSafePoint)(void) {
2573 	excHandler__system_2565 = (*excHandler__system_2565).prev;
2574 }
N_INLINE(Exception *,nimBorrowCurrentException)2575 static N_INLINE(Exception*, nimBorrowCurrentException)(void) {
2576 	Exception* result;
2577 	result = NIM_NIL;
2578 	result = currException__system_2566;
2579 	return result;
2580 }
N_INLINE(NI,pluspercent___system_696)2581 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
2582 	NI result;
2583 	result = (NI)0;
2584 	result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
2585 	return result;
2586 }
N_INLINE(void,incRef__system_5308)2587 static N_INLINE(void, incRef__system_5308)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2588 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
2589 }
N_INLINE(NI,minuspercent___system_716)2590 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
2591 	NI result;
2592 	result = (NI)0;
2593 	result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
2594 	return result;
2595 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5270)2596 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5270)(void* usr) {
2597 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
2598 	NI T1_;
2599 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2600 	T1_ = (NI)0;
2601 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
2602 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
2603 	return result;
2604 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)2605 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
2606 	NIM_BOOL result;
2607 	result = (NIM_BOOL)0;
2608 	result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
2609 	return result;
2610 }
N_INLINE(void,rtlAddZCT__system_5313)2611 static N_INLINE(void, rtlAddZCT__system_5313)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2612 	addZCT__system_5264((&gch__system_5217.zct), c);
2613 }
N_INLINE(void,decRef__system_5315)2614 static N_INLINE(void, decRef__system_5315)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2615 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
2616 	{
2617 		NIM_BOOL T3_;
2618 		T3_ = (NIM_BOOL)0;
2619 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
2620 		if (!T3_) goto LA4_;
2621 		rtlAddZCT__system_5313(c);
2622 	}
2623 	LA4_: ;
2624 }
N_INLINE(void,asgnRef)2625 static N_INLINE(void, asgnRef)(void** dest, void* src) {
2626 	{
2627 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
2628 		if (!!((src == NIM_NIL))) goto LA3_;
2629 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2630 		T5_ = usrToCell__system_5270(src);
2631 		incRef__system_5308(T5_);
2632 	}
2633 	LA3_: ;
2634 	{
2635 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
2636 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
2637 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2638 		T10_ = usrToCell__system_5270((*dest));
2639 		decRef__system_5315(T10_);
2640 	}
2641 	LA8_: ;
2642 	(*dest) = src;
2643 }
N_INLINE(void,popCurrentException)2644 static N_INLINE(void, popCurrentException)(void) {
2645 	asgnRef((void**) (&currException__system_2566), (*currException__system_2566).up);
2646 }
N_NIMCALL(void,getNumber__lexer_382)2647 N_LIB_PRIVATE N_NIMCALL(void, getNumber__lexer_382)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* result) {
2648 	NI64 volatile xi;
2649 	NIM_BOOL isBase10;
2650 	NI numDigits;
2651 	NIM_BOOL isPositive;
2652 	NI startpos;
2653 	NI endpos;
2654 	NI postPos;
2655 	xi = (NI64)0;
2656 	isBase10 = NIM_TRUE;
2657 	numDigits = ((NI) 0);
2658 	(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 69);
2659 	unsureAsgnRef((void**) (&(*result).literal), ((NimStringDesc*) NIM_NIL));
2660 	(*result).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 0);
2661 	isPositive = NIM_TRUE;
2662 	{
2663 		if (!((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(45))) goto LA3_;
2664 		unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, (*L).Sup.buf[(*L).Sup.bufpos]));
2665 		(*L).Sup.bufpos += ((NI) 1);
2666 		isPositive = NIM_FALSE;
2667 	}
2668 	LA3_: ;
2669 	startpos = (*L).Sup.bufpos;
2670 	{
2671 		NIM_BOOL T7_;
2672 		T7_ = (NIM_BOOL)0;
2673 		T7_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(48));
2674 		if (!(T7_)) goto LA8_;
2675 		T7_ = (((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) >= ((NU8)(66)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) <= ((NU8)(67)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) == ((NU8)(79)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) == ((NU8)(88)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) >= ((NU8)(98)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) <= ((NU8)(99)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) == ((NU8)(111)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) == ((NU8)(120)));
2676 		LA8_: ;
2677 		if (!T7_) goto LA9_;
2678 		isBase10 = NIM_FALSE;
2679 		unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 48));
2680 		(*L).Sup.bufpos += ((NI) 1);
2681 		switch (((NU8)((*L).Sup.buf[(*L).Sup.bufpos]))) {
2682 		case 99:
2683 		case 67:
2684 		{
2685 			NI T12_;
2686 			lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_31), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 20));
2687 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 99));
2688 			(*L).Sup.bufpos += ((NI) 1);
2689 			T12_ = (NI)0;
2690 			T12_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_33);
2691 			numDigits = ((NI) (T12_));
2692 		}
2693 		break;
2694 		case 79:
2695 		{
2696 			lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_34), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
2697 		}
2698 		break;
2699 		case 120:
2700 		case 88:
2701 		{
2702 			NI T15_;
2703 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 120));
2704 			(*L).Sup.bufpos += ((NI) 1);
2705 			T15_ = (NI)0;
2706 			T15_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_35);
2707 			numDigits = ((NI) (T15_));
2708 		}
2709 		break;
2710 		case 111:
2711 		{
2712 			NI T17_;
2713 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 111));
2714 			(*L).Sup.bufpos += ((NI) 1);
2715 			T17_ = (NI)0;
2716 			T17_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_33);
2717 			numDigits = ((NI) (T17_));
2718 		}
2719 		break;
2720 		case 98:
2721 		case 66:
2722 		{
2723 			NI T19_;
2724 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 98));
2725 			(*L).Sup.bufpos += ((NI) 1);
2726 			T19_ = (NI)0;
2727 			T19_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_36);
2728 			numDigits = ((NI) (T19_));
2729 		}
2730 		break;
2731 		default:
2732 		{
2733 			tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T21_;
2734 			T21_ = getLineInfo__lexer_314((&(*L)));
2735 			internalErrorImpl__msgs_1431((*L).config, T21_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_37), TM__4JpEWnGrmRM8CRqL3P2O1Q_38);
2736 		}
2737 		break;
2738 		}
2739 		{
2740 			if (!(numDigits == ((NI) 0))) goto LA24_;
2741 			lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_39), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
2742 		}
2743 		LA24_: ;
2744 	}
2745 	goto LA5_;
2746 	LA9_: ;
2747 	{
2748 		NI T27_;
2749 		T27_ = (NI)0;
2750 		T27_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_22);
2751 		(void)(T27_);
2752 		{
2753 			NIM_BOOL T30_;
2754 			NI T34_;
2755 			T30_ = (NIM_BOOL)0;
2756 			T30_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(46));
2757 			if (!(T30_)) goto LA31_;
2758 			T30_ = (((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) <= ((NU8)(57)));
2759 			LA31_: ;
2760 			if (!T30_) goto LA32_;
2761 			(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79);
2762 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 46));
2763 			(*L).Sup.bufpos += ((NI) 1);
2764 			T34_ = (NI)0;
2765 			T34_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_22);
2766 			(void)(T34_);
2767 		}
2768 		LA32_: ;
2769 		{
2770 			NI T43_;
2771 			if (!(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(101)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(69)))) goto LA37_;
2772 			(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79);
2773 			unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, (*L).Sup.buf[(*L).Sup.bufpos]));
2774 			(*L).Sup.bufpos += ((NI) 1);
2775 			{
2776 				if (!(((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(43)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(45)))) goto LA41_;
2777 				unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, (*L).Sup.buf[(*L).Sup.bufpos]));
2778 				(*L).Sup.bufpos += ((NI) 1);
2779 			}
2780 			LA41_: ;
2781 			T43_ = (NI)0;
2782 			T43_ = matchUnderscoreChars__lexer_385(L, result, TM__4JpEWnGrmRM8CRqL3P2O1Q_22);
2783 			(void)(T43_);
2784 		}
2785 		LA37_: ;
2786 	}
2787 	LA5_: ;
2788 	endpos = (*L).Sup.bufpos;
2789 	postPos = endpos;
2790 	{
2791 		NI errPos;
2792 		NIM_BOOL customLitPossible;
2793 		if (!((TM__4JpEWnGrmRM8CRqL3P2O1Q_40[(NU)(((NU8)((*L).Sup.buf[postPos])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[postPos])))&7U)))!=0)) goto LA46_;
2794 		errPos = postPos;
2795 		customLitPossible = NIM_FALSE;
2796 		{
2797 			if (!((NU8)((*L).Sup.buf[postPos]) == (NU8)(39))) goto LA50_;
2798 			postPos += ((NI) 1);
2799 			customLitPossible = NIM_TRUE;
2800 		}
2801 		LA50_: ;
2802 		{
2803 			NimStringDesc* suffix;
2804 			NimStringDesc* suffixAsLower;
2805 			if (!(((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(128)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(255)))) goto LA54_;
2806 			suffix = rawNewString(((NI) 10));
2807 			{
2808 				while (1) {
2809 					suffix = addChar(suffix, (*L).Sup.buf[postPos]);
2810 					postPos += ((NI) 1);
2811 					{
2812 						if (!!((((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[postPos])) == ((NU8)(95)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(128)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(255))))) goto LA60_;
2813 						goto LA56;
2814 					}
2815 					LA60_: ;
2816 				}
2817 			} LA56: ;
2818 			suffixAsLower = nsuToLowerAsciiStr(suffix);
2819 			switch (hashString(suffixAsLower) & 15) {
2820 			case 1:
2821 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_42))) goto LA62_;
2822 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_48))) goto LA67_;
2823 break;
2824 			case 2:
2825 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_45))) goto LA64_;
2826 break;
2827 			case 3:
2828 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_53))) goto LA72_;
2829 break;
2830 			case 5:
2831 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_43))) goto LA63_;
2832 break;
2833 			case 6:
2834 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_44))) goto LA63_;
2835 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_52))) goto LA71_;
2836 break;
2837 			case 7:
2838 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_47))) goto LA66_;
2839 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_51))) goto LA70_;
2840 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_54))) goto LA73_;
2841 break;
2842 			case 9:
2843 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_50))) goto LA69_;
2844 break;
2845 			case 10:
2846 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_46))) goto LA65_;
2847 break;
2848 			case 13:
2849 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_49))) goto LA68_;
2850 break;
2851 			case 14:
2852 if (eqStrings(suffixAsLower, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_41))) goto LA62_;
2853 break;
2854 			}
2855 			goto LA74_;
2856 			LA62_: ;
2857 			{
2858 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 80);
2859 			}
2860 			goto LA75_;
2861 			LA63_: ;
2862 			{
2863 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 81);
2864 			}
2865 			goto LA75_;
2866 			LA64_: ;
2867 			{
2868 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 82);
2869 			}
2870 			goto LA75_;
2871 			LA65_: ;
2872 			{
2873 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 70);
2874 			}
2875 			goto LA75_;
2876 			LA66_: ;
2877 			{
2878 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 71);
2879 			}
2880 			goto LA75_;
2881 			LA67_: ;
2882 			{
2883 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 72);
2884 			}
2885 			goto LA75_;
2886 			LA68_: ;
2887 			{
2888 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 73);
2889 			}
2890 			goto LA75_;
2891 			LA69_: ;
2892 			{
2893 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 74);
2894 			}
2895 			goto LA75_;
2896 			LA70_: ;
2897 			{
2898 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 75);
2899 			}
2900 			goto LA75_;
2901 			LA71_: ;
2902 			{
2903 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 76);
2904 			}
2905 			goto LA75_;
2906 			LA72_: ;
2907 			{
2908 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 77);
2909 			}
2910 			goto LA75_;
2911 			LA73_: ;
2912 			{
2913 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 78);
2914 			}
2915 			goto LA75_;
2916 			LA74_: ;
2917 			{
2918 				{
2919 					if (!customLitPossible) goto LA91_;
2920 					(*result).iNumber = ((NI64) (((*result).literal ? (*result).literal->Sup.len : 0)));
2921 					unsureAsgnRef((void**) (&(*result).literal), addChar((*result).literal, 39));
2922 					unsureAsgnRef((void**) (&(*result).literal), resizeString((*result).literal, (suffix ? suffix->Sup.len : 0) + 0));
2923 appendString((*result).literal, suffix);
2924 					(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 89);
2925 				}
2926 				goto LA89_;
2927 				LA91_: ;
2928 				{
2929 					lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_55), errPos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
2930 				}
2931 				LA89_: ;
2932 			}
2933 			LA75_: ;
2934 		}
2935 		goto LA52_;
2936 		LA54_: ;
2937 		{
2938 			lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_55), errPos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
2939 		}
2940 		LA52_: ;
2941 	}
2942 	LA46_: ;
2943 	{
2944 		NIM_BOOL T97_;
2945 		NIM_BOOL T99_;
2946 		T97_ = (NIM_BOOL)0;
2947 		T97_ = (((NU8)((*L).Sup.buf[postPos])) == ((NU8)(39)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(70)) || ((NU8)((*L).Sup.buf[postPos])) == ((NU8)(88)) || ((NU8)((*L).Sup.buf[postPos])) == ((NU8)(95)) || ((NU8)((*L).Sup.buf[postPos])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[postPos])) <= ((NU8)(102)) || ((NU8)((*L).Sup.buf[postPos])) == ((NU8)(111)) || ((NU8)((*L).Sup.buf[postPos])) == ((NU8)(120)));
2948 		if (T97_) goto LA98_;
2949 		T99_ = (NIM_BOOL)0;
2950 		T99_ = ((NU8)((*L).Sup.buf[postPos]) == (NU8)(46));
2951 		if (!(T99_)) goto LA100_;
2952 		T99_ = (((NU8)((*L).Sup.buf[(NI)(postPos + ((NI) 1))])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(NI)(postPos + ((NI) 1))])) <= ((NU8)(57)));
2953 		LA100_: ;
2954 		T97_ = T99_;
2955 		LA98_: ;
2956 		if (!T97_) goto LA101_;
2957 		lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_39), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
2958 	}
2959 	LA101_: ;
2960 	{
2961 		NI volatile pos;
2962 		TSafePoint TM__4JpEWnGrmRM8CRqL3P2O1Q_56;
2963 		if (!!(((*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 89)))) goto LA105_;
2964 		(*L).Sup.bufpos = startpos;
2965 		pos = startpos;
2966 		pushSafePoint(&TM__4JpEWnGrmRM8CRqL3P2O1Q_56);
2967 		TM__4JpEWnGrmRM8CRqL3P2O1Q_56.status = _setjmp(TM__4JpEWnGrmRM8CRqL3P2O1Q_56.context);
2968 		if (TM__4JpEWnGrmRM8CRqL3P2O1Q_56.status == 0) {
2969 		{
2970 			NIM_BOOL T109_;
2971 			T109_ = (NIM_BOOL)0;
2972 			T109_ = ((NU8)((*L).Sup.buf[pos]) == (NU8)(48));
2973 			if (!(T109_)) goto LA110_;
2974 			T109_ = (((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(88)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(120)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(111)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(98)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(66)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(99)) || ((NU8)((*L).Sup.buf[(NI)(pos + ((NI) 1))])) == ((NU8)(67)));
2975 			LA110_: ;
2976 			if (!T109_) goto LA111_;
2977 			pos += ((NI) 2);
2978 			xi = IL64(0);
2979 			switch (((NU8)((*L).Sup.buf[(NI)(pos - ((NI) 1))]))) {
2980 			case 98:
2981 			case 66:
2982 			{
2983 				(*result).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 1);
2984 				{
2985 					while (1) {
2986 						if (!(pos < endpos)) goto LA115;
2987 						{
2988 							if (!!(((NU8)((*L).Sup.buf[pos]) == (NU8)(95)))) goto LA118_;
2989 							xi = (NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 1))) | ((NI64) ((NI)(((NU8)((*L).Sup.buf[pos])) - ((NI) 48)))));
2990 						}
2991 						LA118_: ;
2992 						pos += ((NI) 1);
2993 					} LA115: ;
2994 				}
2995 			}
2996 			break;
2997 			case 111:
2998 			case 99:
2999 			case 67:
3000 			{
3001 				(*result).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 2);
3002 				{
3003 					while (1) {
3004 						if (!(pos < endpos)) goto LA122;
3005 						{
3006 							if (!!(((NU8)((*L).Sup.buf[pos]) == (NU8)(95)))) goto LA125_;
3007 							xi = (NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 3))) | ((NI64) ((NI)(((NU8)((*L).Sup.buf[pos])) - ((NI) 48)))));
3008 						}
3009 						LA125_: ;
3010 						pos += ((NI) 1);
3011 					} LA122: ;
3012 				}
3013 			}
3014 			break;
3015 			case 120:
3016 			case 88:
3017 			{
3018 				(*result).base = ((tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog) 3);
3019 				{
3020 					while (1) {
3021 						if (!(pos < endpos)) goto LA129;
3022 						switch (((NU8)((*L).Sup.buf[pos]))) {
3023 						case 95:
3024 						{
3025 							pos += ((NI) 1);
3026 						}
3027 						break;
3028 						case 48 ... 57:
3029 						{
3030 							xi = (NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 4))) | ((NI64) ((NI)(((NU8)((*L).Sup.buf[pos])) - ((NI) 48)))));
3031 							pos += ((NI) 1);
3032 						}
3033 						break;
3034 						case 97 ... 102:
3035 						{
3036 							xi = (NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 4))) | ((NI64) ((NI)((NI)(((NU8)((*L).Sup.buf[pos])) - ((NI) 97)) + ((NI) 10)))));
3037 							pos += ((NI) 1);
3038 						}
3039 						break;
3040 						case 65 ... 70:
3041 						{
3042 							xi = (NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 4))) | ((NI64) ((NI)((NI)(((NU8)((*L).Sup.buf[pos])) - ((NI) 65)) + ((NI) 10)))));
3043 							pos += ((NI) 1);
3044 						}
3045 						break;
3046 						default:
3047 						{
3048 							goto LA128;
3049 						}
3050 						break;
3051 						}
3052 					} LA129: ;
3053 				} LA128: ;
3054 			}
3055 			break;
3056 			default:
3057 			{
3058 				tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T136_;
3059 				T136_ = getLineInfo__lexer_314((&(*L)));
3060 				internalErrorImpl__msgs_1431((*L).config, T136_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_37), TM__4JpEWnGrmRM8CRqL3P2O1Q_57);
3061 			}
3062 			break;
3063 			}
3064 			switch ((*result).tokType) {
3065 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 69):
3066 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 73):
3067 			{
3068 				{
3069 					if (!isPositive) goto LA140_;
3070 					(*result).iNumber = xi;
3071 				}
3072 				goto LA138_;
3073 				LA140_: ;
3074 				{
3075 					(*result).iNumber = -(xi);
3076 				}
3077 				LA138_: ;
3078 			}
3079 			break;
3080 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 70):
3081 			{
3082 				{
3083 					if (!isPositive) goto LA146_;
3084 					(*result).iNumber = (NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 56)))) >> (NU64)(((NI) 56)));
3085 				}
3086 				goto LA144_;
3087 				LA146_: ;
3088 				{
3089 					(*result).iNumber = -((NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 56)))) >> (NU64)(((NI) 56))));
3090 				}
3091 				LA144_: ;
3092 			}
3093 			break;
3094 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 71):
3095 			{
3096 				{
3097 					if (!isPositive) goto LA152_;
3098 					(*result).iNumber = (NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 48)))) >> (NU64)(((NI) 48)));
3099 				}
3100 				goto LA150_;
3101 				LA152_: ;
3102 				{
3103 					(*result).iNumber = -((NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 48)))) >> (NU64)(((NI) 48))));
3104 				}
3105 				LA150_: ;
3106 			}
3107 			break;
3108 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 72):
3109 			{
3110 				{
3111 					if (!isPositive) goto LA158_;
3112 					(*result).iNumber = (NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 32)))) >> (NU64)(((NI) 32)));
3113 				}
3114 				goto LA156_;
3115 				LA158_: ;
3116 				{
3117 					(*result).iNumber = -((NI64)((NI64)((NI64)((NU64)(xi) << (NU64)(((NI) 32)))) >> (NU64)(((NI) 32))));
3118 				}
3119 				LA156_: ;
3120 			}
3121 			break;
3122 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 74):
3123 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 78):
3124 			{
3125 				{
3126 					if (!isPositive) goto LA164_;
3127 					(*result).iNumber = xi;
3128 				}
3129 				goto LA162_;
3130 				LA164_: ;
3131 				{
3132 					(*result).iNumber = -(xi);
3133 				}
3134 				LA162_: ;
3135 			}
3136 			break;
3137 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 75):
3138 			{
3139 				{
3140 					if (!isPositive) goto LA170_;
3141 					(*result).iNumber = (NI64)(xi & IL64(255));
3142 				}
3143 				goto LA168_;
3144 				LA170_: ;
3145 				{
3146 					(*result).iNumber = -((NI64)(xi & IL64(255)));
3147 				}
3148 				LA168_: ;
3149 			}
3150 			break;
3151 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 76):
3152 			{
3153 				{
3154 					if (!isPositive) goto LA176_;
3155 					(*result).iNumber = (NI64)(xi & IL64(65535));
3156 				}
3157 				goto LA174_;
3158 				LA176_: ;
3159 				{
3160 					(*result).iNumber = -((NI64)(xi & IL64(65535)));
3161 				}
3162 				LA174_: ;
3163 			}
3164 			break;
3165 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 77):
3166 			{
3167 				{
3168 					if (!isPositive) goto LA182_;
3169 					(*result).iNumber = (NI64)(xi & IL64(4294967295));
3170 				}
3171 				goto LA180_;
3172 				LA182_: ;
3173 				{
3174 					(*result).iNumber = -((NI64)(xi & IL64(4294967295)));
3175 				}
3176 				LA180_: ;
3177 			}
3178 			break;
3179 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 80):
3180 			{
3181 				NF32 T186_;
3182 				T186_ = (NF32)0;
3183 				{
3184 					if (!isPositive) goto LA189_;
3185 					T186_ = (*((NF32*) ((&xi))));
3186 				}
3187 				goto LA187_;
3188 				LA189_: ;
3189 				{
3190 					T186_ = -((*((NF32*) ((&xi)))));
3191 				}
3192 				LA187_: ;
3193 				(*result).fNumber = ((NF) (T186_));
3194 			}
3195 			break;
3196 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 81):
3197 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79):
3198 			{
3199 				{
3200 					if (!isPositive) goto LA195_;
3201 					(*result).fNumber = (*((NF*) ((&xi))));
3202 				}
3203 				goto LA193_;
3204 				LA195_: ;
3205 				{
3206 					(*result).fNumber = -((*((NF*) ((&xi)))));
3207 				}
3208 				LA193_: ;
3209 			}
3210 			break;
3211 			default:
3212 			{
3213 				tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q T199_;
3214 				T199_ = getLineInfo__lexer_314((&(*L)));
3215 				internalErrorImpl__msgs_1431((*L).config, T199_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_37), TM__4JpEWnGrmRM8CRqL3P2O1Q_58);
3216 			}
3217 			break;
3218 			}
3219 			{
3220 				NIM_BOOL outOfRange;
3221 				if (!!(((*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79) || (*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 80) || (*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 81) || (*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 82)))) goto LA202_;
3222 				switch ((*result).tokType) {
3223 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 75):
3224 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 76):
3225 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 77):
3226 				{
3227 					outOfRange = !(((*result).iNumber == xi));
3228 				}
3229 				break;
3230 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 70):
3231 				{
3232 					outOfRange = (IL64(255) < xi);
3233 				}
3234 				break;
3235 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 71):
3236 				{
3237 					outOfRange = (IL64(65535) < xi);
3238 				}
3239 				break;
3240 				case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 72):
3241 				{
3242 					outOfRange = (IL64(4294967295) < xi);
3243 				}
3244 				break;
3245 				default:
3246 				{
3247 					outOfRange = NIM_FALSE;
3248 				}
3249 				break;
3250 				}
3251 				{
3252 					if (!outOfRange) goto LA211_;
3253 					lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_59), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
3254 				}
3255 				LA211_: ;
3256 			}
3257 			LA202_: ;
3258 		}
3259 		goto LA107_;
3260 		LA111_: ;
3261 		{
3262 			NIM_BOOL outOfRange_2;
3263 			switch ((*result).tokType) {
3264 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79) ... ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 82):
3265 			{
3266 				(*result).fNumber = nsuParseFloat((*result).literal);
3267 			}
3268 			break;
3269 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 78):
3270 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 74):
3271 			{
3272 				NU64 iNumber;
3273 				NI volatile len;
3274 				TSafePoint TM__4JpEWnGrmRM8CRqL3P2O1Q_60;
3275 				iNumber = (NU64)0;
3276 				len = (NI)0;
3277 				pushSafePoint(&TM__4JpEWnGrmRM8CRqL3P2O1Q_60);
3278 				TM__4JpEWnGrmRM8CRqL3P2O1Q_60.status = _setjmp(TM__4JpEWnGrmRM8CRqL3P2O1Q_60.context);
3279 				if (TM__4JpEWnGrmRM8CRqL3P2O1Q_60.status == 0) {
3280 				len = npuParseBiggestUInt((*result).literal, (&iNumber), ((NI) 0));
3281 				popSafePoint();
3282 				}
3283 				else {
3284 					popSafePoint();
3285 					if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_))) {
3286 						tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ* T218_;
3287 						NimStringDesc* T219_;
3288 						TM__4JpEWnGrmRM8CRqL3P2O1Q_60.status = 0;
3289 						T218_ = NIM_NIL;
3290 						T218_ = (tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ*) newObj((&NTIrefoverflowdefect__r8GBEWywN07B3Rat3azS4Q_), sizeof(tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ));
3291 						(*T218_).Sup.Sup.Sup.Sup.m_type = (&NTIoverflowdefect__9cxMi1BPLc3UKt9br86bGfGQ_);
3292 						(*T218_).Sup.Sup.Sup.name = "OverflowDefect";
3293 						T219_ = NIM_NIL;
3294 						T219_ = rawNewString(((*result).literal ? (*result).literal->Sup.len : 0) + 21);
3295 appendString(T219_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_61));
3296 appendString(T219_, (*result).literal);
3297 						asgnRef((void**) (&(*T218_).Sup.Sup.Sup.message), T219_);
3298 						asgnRef((void**) (&(*T218_).Sup.Sup.Sup.parent), ((Exception*) NIM_NIL));
3299 						raiseExceptionEx((Exception*)T218_, "OverflowDefect", "getNumber", "lexer.nim", 539);
3300 						popCurrentException();
3301 					}
3302 				}
3303 				if (TM__4JpEWnGrmRM8CRqL3P2O1Q_60.status != 0) reraiseException();
3304 				{
3305 					tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T224_;
3306 					NimStringDesc* T225_;
3307 					if (!!((len == ((*result).literal ? (*result).literal->Sup.len : 0)))) goto LA222_;
3308 					T224_ = NIM_NIL;
3309 					T224_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw));
3310 					(*T224_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_);
3311 					(*T224_).Sup.Sup.name = "ValueError";
3312 					T225_ = NIM_NIL;
3313 					T225_ = rawNewString(((*result).literal ? (*result).literal->Sup.len : 0) + 17);
3314 appendString(T225_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_62));
3315 appendString(T225_, (*result).literal);
3316 					asgnRef((void**) (&(*T224_).Sup.Sup.message), T225_);
3317 					asgnRef((void**) (&(*T224_).Sup.Sup.parent), ((Exception*) NIM_NIL));
3318 					raiseExceptionEx((Exception*)T224_, "ValueError", "getNumber", "lexer.nim", 541);
3319 				}
3320 				LA222_: ;
3321 				(*result).iNumber = ((NI64) (iNumber));
3322 			}
3323 			break;
3324 			default:
3325 			{
3326 				NI64 iNumber_2;
3327 				NI volatile len_2;
3328 				TSafePoint TM__4JpEWnGrmRM8CRqL3P2O1Q_63;
3329 				iNumber_2 = (NI64)0;
3330 				len_2 = (NI)0;
3331 				pushSafePoint(&TM__4JpEWnGrmRM8CRqL3P2O1Q_63);
3332 				TM__4JpEWnGrmRM8CRqL3P2O1Q_63.status = _setjmp(TM__4JpEWnGrmRM8CRqL3P2O1Q_63.context);
3333 				if (TM__4JpEWnGrmRM8CRqL3P2O1Q_63.status == 0) {
3334 				len_2 = npuParseBiggestInt((*result).literal, (&iNumber_2), ((NI) 0));
3335 				popSafePoint();
3336 				}
3337 				else {
3338 					popSafePoint();
3339 					if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_))) {
3340 						tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ* T229_;
3341 						NimStringDesc* T230_;
3342 						TM__4JpEWnGrmRM8CRqL3P2O1Q_63.status = 0;
3343 						T229_ = NIM_NIL;
3344 						T229_ = (tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ*) newObj((&NTIrefoverflowdefect__r8GBEWywN07B3Rat3azS4Q_), sizeof(tyObject_OverflowDefect__9cxMi1BPLc3UKt9br86bGfGQ));
3345 						(*T229_).Sup.Sup.Sup.Sup.m_type = (&NTIoverflowdefect__9cxMi1BPLc3UKt9br86bGfGQ_);
3346 						(*T229_).Sup.Sup.Sup.name = "OverflowDefect";
3347 						T230_ = NIM_NIL;
3348 						T230_ = rawNewString(((*result).literal ? (*result).literal->Sup.len : 0) + 21);
3349 appendString(T230_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_61));
3350 appendString(T230_, (*result).literal);
3351 						asgnRef((void**) (&(*T229_).Sup.Sup.Sup.message), T230_);
3352 						asgnRef((void**) (&(*T229_).Sup.Sup.Sup.parent), ((Exception*) NIM_NIL));
3353 						raiseExceptionEx((Exception*)T229_, "OverflowDefect", "getNumber", "lexer.nim", 549);
3354 						popCurrentException();
3355 					}
3356 				}
3357 				if (TM__4JpEWnGrmRM8CRqL3P2O1Q_63.status != 0) reraiseException();
3358 				{
3359 					tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T235_;
3360 					NimStringDesc* T236_;
3361 					if (!!((len_2 == ((*result).literal ? (*result).literal->Sup.len : 0)))) goto LA233_;
3362 					T235_ = NIM_NIL;
3363 					T235_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw));
3364 					(*T235_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_);
3365 					(*T235_).Sup.Sup.name = "ValueError";
3366 					T236_ = NIM_NIL;
3367 					T236_ = rawNewString(((*result).literal ? (*result).literal->Sup.len : 0) + 17);
3368 appendString(T236_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_62));
3369 appendString(T236_, (*result).literal);
3370 					asgnRef((void**) (&(*T235_).Sup.Sup.message), T236_);
3371 					asgnRef((void**) (&(*T235_).Sup.Sup.parent), ((Exception*) NIM_NIL));
3372 					raiseExceptionEx((Exception*)T235_, "ValueError", "getNumber", "lexer.nim", 551);
3373 				}
3374 				LA233_: ;
3375 				(*result).iNumber = iNumber_2;
3376 			}
3377 			break;
3378 			}
3379 			switch ((*result).tokType) {
3380 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 70):
3381 			{
3382 				NIM_BOOL T238_;
3383 				T238_ = (NIM_BOOL)0;
3384 				T238_ = (IL64(127) < (*result).iNumber);
3385 				if (T238_) goto LA239_;
3386 				T238_ = ((*result).iNumber < IL64(-128));
3387 				LA239_: ;
3388 				outOfRange_2 = T238_;
3389 			}
3390 			break;
3391 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 75):
3392 			{
3393 				NIM_BOOL T241_;
3394 				T241_ = (NIM_BOOL)0;
3395 				T241_ = (IL64(255) < (*result).iNumber);
3396 				if (T241_) goto LA242_;
3397 				T241_ = ((*result).iNumber < IL64(0));
3398 				LA242_: ;
3399 				outOfRange_2 = T241_;
3400 			}
3401 			break;
3402 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 71):
3403 			{
3404 				NIM_BOOL T244_;
3405 				T244_ = (NIM_BOOL)0;
3406 				T244_ = (IL64(32767) < (*result).iNumber);
3407 				if (T244_) goto LA245_;
3408 				T244_ = ((*result).iNumber < IL64(-32768));
3409 				LA245_: ;
3410 				outOfRange_2 = T244_;
3411 			}
3412 			break;
3413 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 76):
3414 			{
3415 				NIM_BOOL T247_;
3416 				T247_ = (NIM_BOOL)0;
3417 				T247_ = (IL64(65535) < (*result).iNumber);
3418 				if (T247_) goto LA248_;
3419 				T247_ = ((*result).iNumber < IL64(0));
3420 				LA248_: ;
3421 				outOfRange_2 = T247_;
3422 			}
3423 			break;
3424 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 72):
3425 			{
3426 				NIM_BOOL T250_;
3427 				T250_ = (NIM_BOOL)0;
3428 				T250_ = (IL64(2147483647) < (*result).iNumber);
3429 				if (T250_) goto LA251_;
3430 				T250_ = ((*result).iNumber < IL64(-2147483648));
3431 				LA251_: ;
3432 				outOfRange_2 = T250_;
3433 			}
3434 			break;
3435 			case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 77):
3436 			{
3437 				NIM_BOOL T253_;
3438 				T253_ = (NIM_BOOL)0;
3439 				T253_ = (IL64(4294967295) < (*result).iNumber);
3440 				if (T253_) goto LA254_;
3441 				T253_ = ((*result).iNumber < IL64(0));
3442 				LA254_: ;
3443 				outOfRange_2 = T253_;
3444 			}
3445 			break;
3446 			default:
3447 			{
3448 				outOfRange_2 = NIM_FALSE;
3449 			}
3450 			break;
3451 			}
3452 			{
3453 				if (!outOfRange_2) goto LA258_;
3454 				lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_59), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
3455 			}
3456 			LA258_: ;
3457 		}
3458 		LA107_: ;
3459 		{
3460 			if (!((*result).tokType == ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 69))) goto LA262_;
3461 			{
3462 				NIM_BOOL T266_;
3463 				T266_ = (NIM_BOOL)0;
3464 				T266_ = (IL64(2147483647) < (*result).iNumber);
3465 				if (T266_) goto LA267_;
3466 				T266_ = ((*result).iNumber < IL64(-2147483648));
3467 				LA267_: ;
3468 				if (!T266_) goto LA268_;
3469 				(*result).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 73);
3470 			}
3471 			LA268_: ;
3472 		}
3473 		LA262_: ;
3474 		popSafePoint();
3475 		}
3476 		else {
3477 			popSafePoint();
3478 			if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_))) {
3479 				TM__4JpEWnGrmRM8CRqL3P2O1Q_56.status = 0;
3480 				lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_39), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
3481 				popCurrentException();
3482 			}
3483 			else 			if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIoverflowdefect__9cxMi1BPLc3UKt9br86bGfGQ_))||isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIrangedefect__Rp9adJYTsbbIUzQ8fWxwgdA_))) {
3484 				TM__4JpEWnGrmRM8CRqL3P2O1Q_56.status = 0;
3485 				lexMessageLitNum__lexer_424(L, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_59), startpos, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14));
3486 				popCurrentException();
3487 			}
3488 		}
3489 		if (TM__4JpEWnGrmRM8CRqL3P2O1Q_56.status != 0) reraiseException();
3490 	}
3491 	LA105_: ;
3492 	(*L).Sup.bufpos = postPos;
3493 }
N_NIMCALL(void,rawGetTok__lexer_1588)3494 N_LIB_PRIVATE N_NIMCALL(void, rawGetTok__lexer_1588)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
3495 	NIM_CHAR c;
3496 	fillToken__lexer_268(tok);
3497 	{
3498 		if (!(((NI) 0) <= (*L).indentAhead)) goto LA3_;
3499 		(*tok).indent = (*L).indentAhead;
3500 		(*L).currLineIndent = (*L).indentAhead;
3501 		(*L).indentAhead = ((NI) -1);
3502 	}
3503 	goto LA1_;
3504 	LA3_: ;
3505 	{
3506 		(*tok).indent = ((NI) -1);
3507 	}
3508 	LA1_: ;
3509 	skip__lexer_1552(L, tok);
3510 	c = (*L).Sup.buf[(*L).Sup.bufpos];
3511 	(*tok).line = (*L).Sup.lineNumber;
3512 	(*tok).col = getColNumber__nimlexbase_34((&(*L).Sup), (*L).Sup.bufpos);
3513 	{
3514 		if (!(((NU8)(c)) >= ((NU8)(65)) && ((NU8)(c)) <= ((NU8)(81)) || ((NU8)(c)) >= ((NU8)(83)) && ((NU8)(c)) <= ((NU8)(90)) || ((NU8)(c)) >= ((NU8)(97)) && ((NU8)(c)) <= ((NU8)(113)) || ((NU8)(c)) >= ((NU8)(115)) && ((NU8)(c)) <= ((NU8)(122)) || ((NU8)(c)) >= ((NU8)(128)) && ((NU8)(c)) <= ((NU8)(193)) || ((NU8)(c)) >= ((NU8)(196)) && ((NU8)(c)) <= ((NU8)(225)) || ((NU8)(c)) >= ((NU8)(227)) && ((NU8)(c)) <= ((NU8)(255)))) goto LA8_;
3515 		getSymbol__lexer_1229(L, tok);
3516 	}
3517 	goto LA6_;
3518 	LA8_: ;
3519 	{
3520 		switch (((NU8)(c))) {
3521 		case 194 ... 195:
3522 		case 226:
3523 		{
3524 			{
3525 				NIM_BOOL T14_;
3526 				tyTuple__eYjXpYmwoditlWZaGvgooQ T16_;
3527 				T14_ = (NIM_BOOL)0;
3528 				T14_ = (((*(*L).config).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 17))&31U)))!=0);
3529 				if (!(T14_)) goto LA15_;
3530 				T16_ = unicodeOprLen__lexer_1203((*L).Sup.buf, (*L).Sup.bufpos);
3531 				T14_ = !((T16_.Field0 == ((NI8) 0)));
3532 				LA15_: ;
3533 				if (!T14_) goto LA17_;
3534 				getOperator__lexer_1324(L, tok);
3535 			}
3536 			goto LA12_;
3537 			LA17_: ;
3538 			{
3539 				getSymbol__lexer_1229(L, tok);
3540 			}
3541 			LA12_: ;
3542 		}
3543 		break;
3544 		case 35:
3545 		{
3546 			scanComment__lexer_1490(L, tok);
3547 		}
3548 		break;
3549 		case 42:
3550 		{
3551 			{
3552 				NIM_BOOL T24_;
3553 				NI h;
3554 				T24_ = (NIM_BOOL)0;
3555 				T24_ = ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(58));
3556 				if (!(T24_)) goto LA25_;
3557 				T24_ = !(((TM__4JpEWnGrmRM8CRqL3P2O1Q_13[(NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 2))])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 2))])))&7U)))!=0));
3558 				LA25_: ;
3559 				if (!T24_) goto LA26_;
3560 				h = emarkamp___pureZhashes_3(((NI) 0), ((NI) 42));
3561 				endOperator__lexer_1315(L, tok, (NI)((*L).Sup.bufpos + ((NI) 1)), h);
3562 			}
3563 			goto LA22_;
3564 			LA26_: ;
3565 			{
3566 				getOperator__lexer_1324(L, tok);
3567 			}
3568 			LA22_: ;
3569 		}
3570 		break;
3571 		case 44:
3572 		{
3573 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 102);
3574 			(*L).Sup.bufpos += ((NI) 1);
3575 		}
3576 		break;
3577 		case 114:
3578 		case 82:
3579 		{
3580 			{
3581 				if (!((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(34))) goto LA33_;
3582 				(*L).Sup.bufpos += ((NI) 1);
3583 				getString__lexer_1097(L, tok, ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 1));
3584 			}
3585 			goto LA31_;
3586 			LA33_: ;
3587 			{
3588 				getSymbol__lexer_1229(L, tok);
3589 			}
3590 			LA31_: ;
3591 		}
3592 		break;
3593 		case 40:
3594 		{
3595 			(*L).Sup.bufpos += ((NI) 1);
3596 			{
3597 				NIM_BOOL T39_;
3598 				T39_ = (NIM_BOOL)0;
3599 				T39_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(46));
3600 				if (!(T39_)) goto LA40_;
3601 				T39_ = !(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(46)));
3602 				LA40_: ;
3603 				if (!T39_) goto LA41_;
3604 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 100);
3605 				(*L).Sup.bufpos += ((NI) 1);
3606 			}
3607 			goto LA37_;
3608 			LA41_: ;
3609 			{
3610 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 90);
3611 			}
3612 			LA37_: ;
3613 		}
3614 		break;
3615 		case 41:
3616 		{
3617 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 91);
3618 			(*L).Sup.bufpos += ((NI) 1);
3619 		}
3620 		break;
3621 		case 91:
3622 		{
3623 			(*L).Sup.bufpos += ((NI) 1);
3624 			{
3625 				NIM_BOOL T48_;
3626 				T48_ = (NIM_BOOL)0;
3627 				T48_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(46));
3628 				if (!(T48_)) goto LA49_;
3629 				T48_ = !(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(46)));
3630 				LA49_: ;
3631 				if (!T48_) goto LA50_;
3632 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 96);
3633 				(*L).Sup.bufpos += ((NI) 1);
3634 			}
3635 			goto LA46_;
3636 			LA50_: ;
3637 			{
3638 				if (!((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(58))) goto LA53_;
3639 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 109);
3640 				(*L).Sup.bufpos += ((NI) 1);
3641 			}
3642 			goto LA46_;
3643 			LA53_: ;
3644 			{
3645 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 92);
3646 			}
3647 			LA46_: ;
3648 		}
3649 		break;
3650 		case 93:
3651 		{
3652 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 93);
3653 			(*L).Sup.bufpos += ((NI) 1);
3654 		}
3655 		break;
3656 		case 46:
3657 		{
3658 			{
3659 				if (!((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(93))) goto LA60_;
3660 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 97);
3661 				(*L).Sup.bufpos += ((NI) 2);
3662 			}
3663 			goto LA58_;
3664 			LA60_: ;
3665 			{
3666 				if (!((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(125))) goto LA63_;
3667 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 99);
3668 				(*L).Sup.bufpos += ((NI) 2);
3669 			}
3670 			goto LA58_;
3671 			LA63_: ;
3672 			{
3673 				if (!((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(41))) goto LA66_;
3674 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 101);
3675 				(*L).Sup.bufpos += ((NI) 2);
3676 			}
3677 			goto LA58_;
3678 			LA66_: ;
3679 			{
3680 				getOperator__lexer_1324(L, tok);
3681 			}
3682 			LA58_: ;
3683 		}
3684 		break;
3685 		case 123:
3686 		{
3687 			(*L).Sup.bufpos += ((NI) 1);
3688 			{
3689 				NIM_BOOL T72_;
3690 				T72_ = (NIM_BOOL)0;
3691 				T72_ = ((NU8)((*L).Sup.buf[(*L).Sup.bufpos]) == (NU8)(46));
3692 				if (!(T72_)) goto LA73_;
3693 				T72_ = !(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))]) == (NU8)(46)));
3694 				LA73_: ;
3695 				if (!T72_) goto LA74_;
3696 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 98);
3697 				(*L).Sup.bufpos += ((NI) 1);
3698 			}
3699 			goto LA70_;
3700 			LA74_: ;
3701 			{
3702 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 94);
3703 			}
3704 			LA70_: ;
3705 		}
3706 		break;
3707 		case 125:
3708 		{
3709 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 95);
3710 			(*L).Sup.bufpos += ((NI) 1);
3711 		}
3712 		break;
3713 		case 59:
3714 		{
3715 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 103);
3716 			(*L).Sup.bufpos += ((NI) 1);
3717 		}
3718 		break;
3719 		case 96:
3720 		{
3721 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 112);
3722 			(*L).Sup.bufpos += ((NI) 1);
3723 		}
3724 		break;
3725 		case 95:
3726 		{
3727 			(*L).Sup.bufpos += ((NI) 1);
3728 			{
3729 				if (!!((((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) == ((NU8)(95)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) >= ((NU8)(128)) && ((NU8)((*L).Sup.buf[(*L).Sup.bufpos])) <= ((NU8)(255))))) goto LA83_;
3730 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 2);
3731 				unsureAsgnRef((void**) (&(*tok).ident), getIdent__idents_143((*L).cache, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_24)));
3732 			}
3733 			goto LA81_;
3734 			LA83_: ;
3735 			{
3736 				NimStringDesc* T86_;
3737 				NimStringDesc* T87_;
3738 				unsureAsgnRef((void**) (&(*tok).literal), nimCharToStr(c));
3739 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 0);
3740 				T86_ = NIM_NIL;
3741 				T87_ = NIM_NIL;
3742 				T87_ = dollar___systemZdollars_3(((NU8)(c)));
3743 				T86_ = rawNewString((T87_ ? T87_->Sup.len : 0) + 20);
3744 appendString(T86_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_25));
3745 appendChar(T86_, c);
3746 appendString(T86_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_26));
3747 appendString(T86_, T87_);
3748 appendChar(T86_, 41);
3749 				lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T86_);
3750 			}
3751 			LA81_: ;
3752 		}
3753 		break;
3754 		case 34:
3755 		{
3756 			tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ mode;
3757 			{
3758 				NIM_BOOL T91_;
3759 				T91_ = (NIM_BOOL)0;
3760 				T91_ = (((NI) 0) < (*L).Sup.bufpos);
3761 				if (!(T91_)) goto LA92_;
3762 				T91_ = (((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) >= ((NU8)(97)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) <= ((NU8)(122)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) >= ((NU8)(65)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) <= ((NU8)(90)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) <= ((NU8)(57)) || ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) >= ((NU8)(128)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])) <= ((NU8)(255)));
3763 				LA92_: ;
3764 				if (!T91_) goto LA93_;
3765 				mode = ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 2);
3766 			}
3767 			goto LA89_;
3768 			LA93_: ;
3769 			{
3770 				mode = ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 0);
3771 			}
3772 			LA89_: ;
3773 			getString__lexer_1097(L, tok, mode);
3774 			{
3775 				if (!(mode == ((tyEnum_StringMode__nSovsy4OWY2URVkgcoWPUQ) 2))) goto LA98_;
3776 				(*tok).tokType += ((NI) 2);
3777 			}
3778 			LA98_: ;
3779 		}
3780 		break;
3781 		case 39:
3782 		{
3783 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 88);
3784 			getCharacter__lexer_1172(L, tok);
3785 			(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 88);
3786 		}
3787 		break;
3788 		case 48 ... 57:
3789 		{
3790 			NIM_CHAR c_2;
3791 			getNumber__lexer_382(L, tok);
3792 			c_2 = (*L).Sup.buf[(*L).Sup.bufpos];
3793 			{
3794 				if (!(((NU8)(c_2)) >= ((NU8)(48)) && ((NU8)(c_2)) <= ((NU8)(57)) || ((NU8)(c_2)) >= ((NU8)(65)) && ((NU8)(c_2)) <= ((NU8)(90)) || ((NU8)(c_2)) == ((NU8)(95)) || ((NU8)(c_2)) >= ((NU8)(97)) && ((NU8)(c_2)) <= ((NU8)(122)) || ((NU8)(c_2)) >= ((NU8)(128)) && ((NU8)(c_2)) <= ((NU8)(255)))) goto LA104_;
3795 				{
3796 					NIM_BOOL T108_;
3797 					NIM_BOOL T109_;
3798 					tyTuple__eYjXpYmwoditlWZaGvgooQ T112_;
3799 					T108_ = (NIM_BOOL)0;
3800 					T109_ = (NIM_BOOL)0;
3801 					T109_ = (((NU8)(c_2)) == ((NU8)(226)) || ((NU8)(c_2)) == ((NU8)(194)) || ((NU8)(c_2)) == ((NU8)(195)));
3802 					if (!(T109_)) goto LA110_;
3803 					T109_ = (((*(*L).config).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 17))&31U)))!=0);
3804 					LA110_: ;
3805 					T108_ = T109_;
3806 					if (!(T108_)) goto LA111_;
3807 					T112_ = unicodeOprLen__lexer_1203((*L).Sup.buf, (*L).Sup.bufpos);
3808 					T108_ = !((T112_.Field0 == ((NI8) 0)));
3809 					LA111_: ;
3810 					if (!T108_) goto LA113_;
3811 				}
3812 				goto LA106_;
3813 				LA113_: ;
3814 				{
3815 					lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_64));
3816 				}
3817 				LA106_: ;
3818 			}
3819 			LA104_: ;
3820 		}
3821 		break;
3822 		case 45:
3823 		{
3824 			{
3825 				NIM_BOOL T119_;
3826 				NIM_BOOL T121_;
3827 				NIM_CHAR c_3;
3828 				T119_ = (NIM_BOOL)0;
3829 				T119_ = (((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) >= ((NU8)(48)) && ((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos + ((NI) 1))])) <= ((NU8)(57)));
3830 				if (!(T119_)) goto LA120_;
3831 				T121_ = (NIM_BOOL)0;
3832 				T121_ = ((NI)((*L).Sup.bufpos - ((NI) 1)) == ((NI) 0));
3833 				if (T121_) goto LA122_;
3834 				T121_ = ((TM__4JpEWnGrmRM8CRqL3P2O1Q_65[(NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])))>>3] &(1U<<((NU)(((NU8)((*L).Sup.buf[(NI)((*L).Sup.bufpos - ((NI) 1))])))&7U)))!=0);
3835 				LA122_: ;
3836 				T119_ = T121_;
3837 				LA120_: ;
3838 				if (!T119_) goto LA123_;
3839 				getNumber__lexer_382(L, tok);
3840 				c_3 = (*L).Sup.buf[(*L).Sup.bufpos];
3841 				{
3842 					if (!(((NU8)(c_3)) >= ((NU8)(48)) && ((NU8)(c_3)) <= ((NU8)(57)) || ((NU8)(c_3)) >= ((NU8)(65)) && ((NU8)(c_3)) <= ((NU8)(90)) || ((NU8)(c_3)) == ((NU8)(95)) || ((NU8)(c_3)) >= ((NU8)(97)) && ((NU8)(c_3)) <= ((NU8)(122)) || ((NU8)(c_3)) >= ((NU8)(128)) && ((NU8)(c_3)) <= ((NU8)(255)))) goto LA127_;
3843 					{
3844 						NIM_BOOL T131_;
3845 						NIM_BOOL T132_;
3846 						tyTuple__eYjXpYmwoditlWZaGvgooQ T135_;
3847 						T131_ = (NIM_BOOL)0;
3848 						T132_ = (NIM_BOOL)0;
3849 						T132_ = (((NU8)(c_3)) == ((NU8)(226)) || ((NU8)(c_3)) == ((NU8)(194)) || ((NU8)(c_3)) == ((NU8)(195)));
3850 						if (!(T132_)) goto LA133_;
3851 						T132_ = (((*(*L).config).features &((NU32)1<<((NU)(((tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ) 17))&31U)))!=0);
3852 						LA133_: ;
3853 						T131_ = T132_;
3854 						if (!(T131_)) goto LA134_;
3855 						T135_ = unicodeOprLen__lexer_1203((*L).Sup.buf, (*L).Sup.bufpos);
3856 						T131_ = !((T135_.Field0 == ((NI8) 0)));
3857 						LA134_: ;
3858 						if (!T131_) goto LA136_;
3859 					}
3860 					goto LA129_;
3861 					LA136_: ;
3862 					{
3863 						lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_64));
3864 					}
3865 					LA129_: ;
3866 				}
3867 				LA127_: ;
3868 			}
3869 			goto LA117_;
3870 			LA123_: ;
3871 			{
3872 				getOperator__lexer_1324(L, tok);
3873 			}
3874 			LA117_: ;
3875 		}
3876 		break;
3877 		default:
3878 		{
3879 			{
3880 				if (!((TM__4JpEWnGrmRM8CRqL3P2O1Q_13[(NU)(((NU8)(c)))>>3] &(1U<<((NU)(((NU8)(c)))&7U)))!=0)) goto LA143_;
3881 				getOperator__lexer_1324(L, tok);
3882 			}
3883 			goto LA141_;
3884 			LA143_: ;
3885 			{
3886 				if (!((NU8)(c) == (NU8)(0))) goto LA146_;
3887 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 1);
3888 				(*tok).indent = ((NI) 0);
3889 			}
3890 			goto LA141_;
3891 			LA146_: ;
3892 			{
3893 				NimStringDesc* T149_;
3894 				NimStringDesc* T150_;
3895 				unsureAsgnRef((void**) (&(*tok).literal), nimCharToStr(c));
3896 				(*tok).tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 0);
3897 				T149_ = NIM_NIL;
3898 				T150_ = NIM_NIL;
3899 				T150_ = dollar___systemZdollars_3(((NU8)(c)));
3900 				T149_ = rawNewString((T150_ ? T150_->Sup.len : 0) + 20);
3901 appendString(T149_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_25));
3902 appendChar(T149_, c);
3903 appendString(T149_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_26));
3904 appendString(T149_, T150_);
3905 appendChar(T149_, 41);
3906 				lexMessage__lexer_336((&(*L)), ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T149_);
3907 				(*L).Sup.bufpos += ((NI) 1);
3908 			}
3909 			LA141_: ;
3910 		}
3911 		break;
3912 		}
3913 	}
3914 	LA6_: ;
3915 }
N_INLINE(NIM_BOOL,eqeq___idents_220)3916 static N_INLINE(NIM_BOOL, eqeq___idents_220)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* b) {
3917 	NIM_BOOL result;
3918 	result = (NIM_BOOL)0;
3919 	{
3920 		NIM_BOOL T3_;
3921 		T3_ = (NIM_BOOL)0;
3922 		T3_ = (a == 0);
3923 		if (T3_) goto LA4_;
3924 		T3_ = (b == 0);
3925 		LA4_: ;
3926 		if (!T3_) goto LA5_;
3927 		result = (a == b);
3928 	}
3929 	goto LA1_;
3930 	LA5_: ;
3931 	{
3932 		result = ((*a).id == (*b).id);
3933 	}
3934 	LA1_: ;
3935 	return result;
3936 }
N_NIMCALL(NimStringDesc *,dollar___lexer_230)3937 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___lexer_230)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
3938 	NimStringDesc* result;
3939 	result = NIM_NIL;
3940 	switch ((*tok).tokType) {
3941 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 69) ... ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 73):
3942 	{
3943 		result = dollar___systemZdollars_6((*tok).iNumber);
3944 	}
3945 	break;
3946 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 79) ... ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 81):
3947 	{
3948 		result = dollar___system_3118((*tok).fNumber);
3949 	}
3950 	break;
3951 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 0):
3952 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 83) ... ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 88):
3953 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 111):
3954 	{
3955 		result = copyString((*tok).literal);
3956 	}
3957 	break;
3958 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 90) ... ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 104):
3959 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 1):
3960 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 112):
3961 	{
3962 		result = reprEnum((NI)(*tok).tokType, (&NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_));
3963 	}
3964 	break;
3965 	default:
3966 	{
3967 		{
3968 			NIM_BOOL T8_;
3969 			T8_ = (NIM_BOOL)0;
3970 			T8_ = eqeq___idents_220((*tok).ident, ((tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*) NIM_NIL));
3971 			if (!!(T8_)) goto LA9_;
3972 			result = copyString((*(*tok).ident).s);
3973 		}
3974 		goto LA6_;
3975 		LA9_: ;
3976 		{
3977 			result = ((NimStringDesc*) NIM_NIL);
3978 		}
3979 		LA6_: ;
3980 	}
3981 	break;
3982 	}
3983 	return result;
3984 }
N_NIMCALL(void,closeLexer__lexer_304)3985 N_LIB_PRIVATE N_NIMCALL(void, closeLexer__lexer_304)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* lex) {
3986 	{
3987 		if (!!(((*lex).config == ((tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*) NIM_NIL)))) goto LA3_;
3988 		(*(*lex).config).linesCompiled += (*lex).Sup.lineNumber;
3989 	}
3990 	LA3_: ;
3991 	closeBaseLexer__nimlexbase_29(&lex->Sup);
3992 }
N_NIMCALL(void,lexMessageTok__lexer_340)3993 N_LIB_PRIVATE N_NIMCALL(void, lexMessageTok__lexer_340)(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw* L, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok, NimStringDesc* arg) {
3994 	tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
3995 	info = newLineInfo__msgs_381((*L).fileIdx, (*tok).line, (*tok).col);
3996 	dispMessage__lexer_326(L, info, msg, arg);
3997 }
N_NIMCALL(NIM_BOOL,isKeyword__lexer_196)3998 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isKeyword__lexer_196)(tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ kind) {
3999 	NIM_BOOL result;
4000 	NIM_BOOL T1_;
4001 	result = (NIM_BOOL)0;
4002 	T1_ = (NIM_BOOL)0;
4003 	T1_ = (((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 3) <= kind);
4004 	if (!(T1_)) goto LA2_;
4005 	T1_ = (kind <= ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 68));
4006 	LA2_: ;
4007 	result = T1_;
4008 	return result;
4009 }
N_NIMCALL(NimStringDesc *,prettyTok__lexer_239)4010 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, prettyTok__lexer_239)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
4011 	NimStringDesc* result;
4012 	result = NIM_NIL;
4013 	{
4014 		NIM_BOOL T3_;
4015 		NimStringDesc* T6_;
4016 		T3_ = (NIM_BOOL)0;
4017 		T3_ = isKeyword__lexer_196((*tok).tokType);
4018 		if (!T3_) goto LA4_;
4019 		T6_ = NIM_NIL;
4020 		T6_ = rawNewString(((*(*tok).ident).s ? (*(*tok).ident).s->Sup.len : 0) + 8);
4021 appendString(T6_, ((NimStringDesc*) &TM__4JpEWnGrmRM8CRqL3P2O1Q_73));
4022 appendString(T6_, (*(*tok).ident).s);
4023 		result = T6_;
4024 	}
4025 	goto LA1_;
4026 	LA4_: ;
4027 	{
4028 		result = dollar___lexer_230(tok);
4029 	}
4030 	LA1_: ;
4031 	return result;
4032 }
N_INLINE(NIM_CHAR *,X5BX5D___system_7361)4033 static N_INLINE(NIM_CHAR*, X5BX5D___system_7361)(NimStringDesc** s, NI i) {
4034 	NIM_CHAR* result;
4035 	result = (NIM_CHAR*)0;
4036 	result = (&(*s)->data[(NI)(((*s) ? (*s)->Sup.len : 0) - i)]);
4037 	return result;
4038 }
N_INLINE(NCSTRING,nimToCStringConv)4039 static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s) {
4040 	NCSTRING result;
4041 	result = (NCSTRING)0;
4042 	{
4043 		NIM_BOOL T3_;
4044 		T3_ = (NIM_BOOL)0;
4045 		T3_ = (s == ((NimStringDesc*) NIM_NIL));
4046 		if (T3_) goto LA4_;
4047 		T3_ = ((*s).Sup.len == ((NI) 0));
4048 		LA4_: ;
4049 		if (!T3_) goto LA5_;
4050 		result = "";
4051 	}
4052 	goto LA1_;
4053 	LA5_: ;
4054 	{
4055 		result = ((NCSTRING) ((*s).data));
4056 	}
4057 	LA1_: ;
4058 	return result;
4059 }
N_NIMCALL(NI,getPrecedence__lexer_1374)4060 N_LIB_PRIVATE N_NIMCALL(NI, getPrecedence__lexer_1374)(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA* tok) {
4061 	NI result;
4062 {	result = (NI)0;
4063 	switch ((*tok).tokType) {
4064 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 110):
4065 	{
4066 		NIM_CHAR relevantChar;
4067 		relevantChar = (*(*tok).ident).s->data[((NI) 0)];
4068 		{
4069 			NIM_BOOL T4_;
4070 			NIM_BOOL T5_;
4071 			NIM_CHAR* T7_;
4072 			NIM_CHAR* T9_;
4073 			T4_ = (NIM_BOOL)0;
4074 			T5_ = (NIM_BOOL)0;
4075 			T5_ = (((NI) 1) < ((*(*tok).ident).s ? (*(*tok).ident).s->Sup.len : 0));
4076 			if (!(T5_)) goto LA6_;
4077 			T7_ = (NIM_CHAR*)0;
4078 			T7_ = X5BX5D___system_7361((&(*(*tok).ident).s), ((NI) 1));
4079 			T5_ = ((NU8)((*T7_)) == (NU8)(62));
4080 			LA6_: ;
4081 			T4_ = T5_;
4082 			if (!(T4_)) goto LA8_;
4083 			T9_ = (NIM_CHAR*)0;
4084 			T9_ = X5BX5D___system_7361((&(*(*tok).ident).s), ((NI) 2));
4085 			T4_ = (((NU8)((*T9_))) == ((NU8)(45)) || ((NU8)((*T9_))) == ((NU8)(126)) || ((NU8)((*T9_))) == ((NU8)(61)));
4086 			LA8_: ;
4087 			if (!T4_) goto LA10_;
4088 			result = ((NI) 1);
4089 			goto BeforeRet_;
4090 		}
4091 		LA10_: ;
4092 		switch (((NU8)(relevantChar))) {
4093 		case 36:
4094 		case 94:
4095 		{
4096 			{
4097 				NIM_CHAR* T15_;
4098 				T15_ = (NIM_CHAR*)0;
4099 				T15_ = X5BX5D___system_7361((&(*(*tok).ident).s), ((NI) 1));
4100 				if (!((NU8)((*T15_)) == (NU8)(61))) goto LA16_;
4101 				result = ((NI) 1);
4102 			}
4103 			goto LA13_;
4104 			LA16_: ;
4105 			{
4106 				result = ((NI) 10);
4107 			}
4108 			LA13_: ;
4109 		}
4110 		break;
4111 		case 42:
4112 		case 37:
4113 		case 47:
4114 		case 92:
4115 		{
4116 			{
4117 				NIM_CHAR* T22_;
4118 				T22_ = (NIM_CHAR*)0;
4119 				T22_ = X5BX5D___system_7361((&(*(*tok).ident).s), ((NI) 1));
4120 				if (!((NU8)((*T22_)) == (NU8)(61))) goto LA23_;
4121 				result = ((NI) 1);
4122 			}
4123 			goto LA20_;
4124 			LA23_: ;
4125 			{
4126 				result = ((NI) 9);
4127 			}
4128 			LA20_: ;
4129 		}
4130 		break;
4131 		case 126:
4132 		{
4133 			result = ((NI) 8);
4134 		}
4135 		break;
4136 		case 43:
4137 		case 45:
4138 		case 124:
4139 		{
4140 			{
4141 				NIM_CHAR* T30_;
4142 				T30_ = (NIM_CHAR*)0;
4143 				T30_ = X5BX5D___system_7361((&(*(*tok).ident).s), ((NI) 1));
4144 				if (!((NU8)((*T30_)) == (NU8)(61))) goto LA31_;
4145 				result = ((NI) 1);
4146 			}
4147 			goto LA28_;
4148 			LA31_: ;
4149 			{
4150 				result = ((NI) 8);
4151 			}
4152 			LA28_: ;
4153 		}
4154 		break;
4155 		case 38:
4156 		{
4157 			{
4158 				NIM_CHAR* T37_;
4159 				T37_ = (NIM_CHAR*)0;
4160 				T37_ = X5BX5D___system_7361((&(*(*tok).ident).s), ((NI) 1));
4161 				if (!((NU8)((*T37_)) == (NU8)(61))) goto LA38_;
4162 				result = ((NI) 1);
4163 			}
4164 			goto LA35_;
4165 			LA38_: ;
4166 			{
4167 				result = ((NI) 7);
4168 			}
4169 			LA35_: ;
4170 		}
4171 		break;
4172 		case 61:
4173 		case 60:
4174 		case 62:
4175 		case 33:
4176 		{
4177 			result = ((NI) 5);
4178 		}
4179 		break;
4180 		case 46:
4181 		{
4182 			{
4183 				NIM_CHAR* T45_;
4184 				T45_ = (NIM_CHAR*)0;
4185 				T45_ = X5BX5D___system_7361((&(*(*tok).ident).s), ((NI) 1));
4186 				if (!((NU8)((*T45_)) == (NU8)(61))) goto LA46_;
4187 				result = ((NI) 1);
4188 			}
4189 			goto LA43_;
4190 			LA46_: ;
4191 			{
4192 				result = ((NI) 6);
4193 			}
4194 			LA43_: ;
4195 		}
4196 		break;
4197 		case 63:
4198 		{
4199 			result = ((NI) 2);
4200 		}
4201 		break;
4202 		case 194 ... 195:
4203 		case 226:
4204 		{
4205 			{
4206 				NIM_CHAR* T53_;
4207 				T53_ = (NIM_CHAR*)0;
4208 				T53_ = X5BX5D___system_7361((&(*(*tok).ident).s), ((NI) 1));
4209 				if (!((NU8)((*T53_)) == (NU8)(61))) goto LA54_;
4210 				result = ((NI) 1);
4211 			}
4212 			goto LA51_;
4213 			LA54_: ;
4214 			{
4215 				tyTuple__eYjXpYmwoditlWZaGvgooQ T57_;
4216 				NI8 len;
4217 				tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA pred;
4218 				T57_ = unicodeOprLen__lexer_1203(nimToCStringConv((*(*tok).ident).s), ((NI) 0));
4219 				len = T57_.Field0;
4220 				pred = T57_.Field1;
4221 				{
4222 					if (!!((len == ((NI8) 0)))) goto LA60_;
4223 					{
4224 						if (!(pred == ((tyEnum_UnicodeOprPred__f0oKMpJTiNSDY7xXSOHJIA) 0))) goto LA64_;
4225 						result = ((NI) 9);
4226 					}
4227 					goto LA62_;
4228 					LA64_: ;
4229 					{
4230 						result = ((NI) 8);
4231 					}
4232 					LA62_: ;
4233 				}
4234 				goto LA58_;
4235 				LA60_: ;
4236 				{
4237 					result = ((NI) 2);
4238 				}
4239 				LA58_: ;
4240 			}
4241 			LA51_: ;
4242 		}
4243 		break;
4244 		default:
4245 		{
4246 			{
4247 				NIM_CHAR* T71_;
4248 				T71_ = (NIM_CHAR*)0;
4249 				T71_ = X5BX5D___system_7361((&(*(*tok).ident).s), ((NI) 1));
4250 				if (!((NU8)((*T71_)) == (NU8)(61))) goto LA72_;
4251 				result = ((NI) 1);
4252 			}
4253 			goto LA69_;
4254 			LA72_: ;
4255 			{
4256 				result = ((NI) 2);
4257 			}
4258 			LA69_: ;
4259 		}
4260 		break;
4261 		}
4262 	}
4263 	break;
4264 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 19):
4265 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 43):
4266 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 56):
4267 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 57):
4268 	{
4269 		result = ((NI) 9);
4270 	}
4271 	break;
4272 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 108):
4273 	{
4274 		result = ((NI) 6);
4275 	}
4276 	break;
4277 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 33):
4278 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 46):
4279 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 36):
4280 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 37):
4281 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 48):
4282 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 5):
4283 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 29):
4284 	{
4285 		result = ((NI) 5);
4286 	}
4287 	break;
4288 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 4):
4289 	{
4290 		result = ((NI) 4);
4291 	}
4292 	break;
4293 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 49):
4294 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 67):
4295 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 52):
4296 	case ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 54):
4297 	{
4298 		result = ((NI) 3);
4299 	}
4300 	break;
4301 	default:
4302 	{
4303 		result = ((NI) -10);
4304 		goto BeforeRet_;
4305 	}
4306 	break;
4307 	}
4308 	}BeforeRet_: ;
4309 	return result;
4310 }
N_INLINE(NIM_BOOL,contains__pureZtimes_2283)4311 static N_INLINE(NIM_BOOL, contains__pureZtimes_2283)(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA s, NI value) {
4312 	NIM_BOOL result;
4313 	NIM_BOOL T1_;
4314 	result = (NIM_BOOL)0;
4315 	T1_ = (NIM_BOOL)0;
4316 	T1_ = (s.a <= value);
4317 	if (!(T1_)) goto LA2_;
4318 	T1_ = (value <= s.b);
4319 	LA2_: ;
4320 	result = T1_;
4321 	return result;
4322 }
N_NIMCALL(NI,getPrecedence__lexer_1792)4323 N_LIB_PRIVATE N_NIMCALL(NI, getPrecedence__lexer_1792)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident) {
4324 	NI result;
4325 	tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA tok;
4326 	result = (NI)0;
4327 	nimZeroMem((void*)(&tok), sizeof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA));
4328 	initToken__lexer_248((&tok));
4329 	tok.ident = ident;
4330 	{
4331 		tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T3_;
4332 		NIM_BOOL T4_;
4333 		T3_ = dotdot___pureZunicode_840(((NI) 1), ((NI) 66));
4334 		T4_ = (NIM_BOOL)0;
4335 		T4_ = contains__pureZtimes_2283(T3_, (*tok.ident).id);
4336 		if (!T4_) goto LA5_;
4337 		tok.tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) ((NI)((*tok.ident).id + ((NI) 2))));
4338 	}
4339 	goto LA1_;
4340 	LA5_: ;
4341 	{
4342 		tok.tokType = ((tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ) 110);
4343 	}
4344 	LA1_: ;
4345 	result = getPrecedence__lexer_1374((&tok));
4346 	return result;
4347 }
N_NIMCALL(NIM_BOOL,isNimIdentifier__lexer_209)4348 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isNimIdentifier__lexer_209)(NimStringDesc* s) {
4349 	NIM_BOOL result;
4350 	NI sLen;
4351 {	result = (NIM_BOOL)0;
4352 	sLen = (s ? s->Sup.len : 0);
4353 	{
4354 		NIM_BOOL T3_;
4355 		NI i;
4356 		T3_ = (NIM_BOOL)0;
4357 		T3_ = (((NI) 0) < sLen);
4358 		if (!(T3_)) goto LA4_;
4359 		T3_ = (((NU8)(s->data[((NI) 0)])) >= ((NU8)(97)) && ((NU8)(s->data[((NI) 0)])) <= ((NU8)(122)) || ((NU8)(s->data[((NI) 0)])) >= ((NU8)(65)) && ((NU8)(s->data[((NI) 0)])) <= ((NU8)(90)) || ((NU8)(s->data[((NI) 0)])) >= ((NU8)(128)) && ((NU8)(s->data[((NI) 0)])) <= ((NU8)(255)));
4360 		LA4_: ;
4361 		if (!T3_) goto LA5_;
4362 		i = ((NI) 1);
4363 		{
4364 			while (1) {
4365 				if (!(i < sLen)) goto LA8;
4366 				{
4367 					if (!((NU8)(s->data[i]) == (NU8)(95))) goto LA11_;
4368 					i += ((NI) 1);
4369 				}
4370 				LA11_: ;
4371 				{
4372 					NIM_BOOL T15_;
4373 					T15_ = (NIM_BOOL)0;
4374 					T15_ = (i < sLen);
4375 					if (!(T15_)) goto LA16_;
4376 					T15_ = !((((NU8)(s->data[i])) >= ((NU8)(97)) && ((NU8)(s->data[i])) <= ((NU8)(122)) || ((NU8)(s->data[i])) >= ((NU8)(65)) && ((NU8)(s->data[i])) <= ((NU8)(90)) || ((NU8)(s->data[i])) >= ((NU8)(48)) && ((NU8)(s->data[i])) <= ((NU8)(57)) || ((NU8)(s->data[i])) >= ((NU8)(128)) && ((NU8)(s->data[i])) <= ((NU8)(255))));
4377 					LA16_: ;
4378 					if (!T15_) goto LA17_;
4379 					goto BeforeRet_;
4380 				}
4381 				LA17_: ;
4382 				i += ((NI) 1);
4383 			} LA8: ;
4384 		}
4385 		result = NIM_TRUE;
4386 	}
4387 	LA5_: ;
4388 	}BeforeRet_: ;
4389 	return result;
4390 }
N_NIMCALL(void,compiler_lexerDatInit000)4391 N_LIB_PRIVATE N_NIMCALL(void, compiler_lexerDatInit000)(void) {
4392 static TNimNode* TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[8];
4393 static TNimNode* TM__4JpEWnGrmRM8CRqL3P2O1Q_3_2[2];
4394 static TNimNode* TM__4JpEWnGrmRM8CRqL3P2O1Q_66_119[119];
4395 NI TM__4JpEWnGrmRM8CRqL3P2O1Q_68;
4396 static char* NIM_CONST TM__4JpEWnGrmRM8CRqL3P2O1Q_67[119] = {
4397 "tkInvalid",
4398 "[EOF]",
4399 "tkSymbol",
4400 "addr",
4401 "and",
4402 "as",
4403 "asm",
4404 "bind",
4405 "block",
4406 "break",
4407 "case",
4408 "cast",
4409 "concept",
4410 "const",
4411 "continue",
4412 "converter",
4413 "defer",
4414 "discard",
4415 "distinct",
4416 "div",
4417 "do",
4418 "elif",
4419 "else",
4420 "end",
4421 "enum",
4422 "except",
4423 "export",
4424 "finally",
4425 "for",
4426 "from",
4427 "func",
4428 "if",
4429 "import",
4430 "in",
4431 "include",
4432 "interface",
4433 "is",
4434 "isnot",
4435 "iterator",
4436 "let",
4437 "macro",
4438 "method",
4439 "mixin",
4440 "mod",
4441 "nil",
4442 "not",
4443 "notin",
4444 "object",
4445 "of",
4446 "or",
4447 "out",
4448 "proc",
4449 "ptr",
4450 "raise",
4451 "ref",
4452 "return",
4453 "shl",
4454 "shr",
4455 "static",
4456 "template",
4457 "try",
4458 "tuple",
4459 "type",
4460 "using",
4461 "var",
4462 "when",
4463 "while",
4464 "xor",
4465 "yield",
4466 "tkIntLit",
4467 "tkInt8Lit",
4468 "tkInt16Lit",
4469 "tkInt32Lit",
4470 "tkInt64Lit",
4471 "tkUIntLit",
4472 "tkUInt8Lit",
4473 "tkUInt16Lit",
4474 "tkUInt32Lit",
4475 "tkUInt64Lit",
4476 "tkFloatLit",
4477 "tkFloat32Lit",
4478 "tkFloat64Lit",
4479 "tkFloat128Lit",
4480 "tkStrLit",
4481 "tkRStrLit",
4482 "tkTripleStrLit",
4483 "tkGStrLit",
4484 "tkGTripleStrLit",
4485 "tkCharLit",
4486 "tkCustomLit",
4487 "(",
4488 ")",
4489 "[",
4490 "]",
4491 "{",
4492 "}",
4493 "[.",
4494 ".]",
4495 "{.",
4496 ".}",
4497 "(.",
4498 ".)",
4499 ",",
4500 ";",
4501 ":",
4502 "::",
4503 "=",
4504 ".",
4505 "..",
4506 "[:",
4507 "tkOpr",
4508 "tkComment",
4509 "`",
4510 "tkSpaces",
4511 "tkInfixOpr",
4512 "tkPrefixOpr",
4513 "tkPostfixOpr",
4514 "tkHideableStart",
4515 "tkHideableEnd"};
4516 static TNimNode* TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[11];
4517 static TNimNode* TM__4JpEWnGrmRM8CRqL3P2O1Q_70_4[4];
4518 NI TM__4JpEWnGrmRM8CRqL3P2O1Q_72;
4519 static char* NIM_CONST TM__4JpEWnGrmRM8CRqL3P2O1Q_71[4] = {
4520 "base10",
4521 "base2",
4522 "base8",
4523 "base16"};
4524 static TNimNode TM__4JpEWnGrmRM8CRqL3P2O1Q_0[149];
4525 NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_.size = sizeof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw);
4526 NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_.align = NIM_ALIGNOF(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw);
4527 NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_.kind = 17;
4528 NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_.base = (&NTItbaselexer__jTxk7Uc2dfr9aTDL2dZhO9ag_);
4529 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[0] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[1];
4530 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[1].kind = 1;
4531 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[1].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, fileIdx);
4532 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[1].typ = (&NTIint5150__sVg18TP9cLifHyygRe9cro9aA_);
4533 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[1].name = "fileIdx";
4534 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[1] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[2];
4535 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[2].kind = 1;
4536 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[2].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, indentAhead);
4537 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[2].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4538 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[2].name = "indentAhead";
4539 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[2] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[3];
4540 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[3].kind = 1;
4541 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[3].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, currLineIndent);
4542 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[3].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4543 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[3].name = "currLineIndent";
4544 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[3] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[4];
4545 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[4].kind = 1;
4546 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[4].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, strongSpaces);
4547 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[4].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_);
4548 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[4].name = "strongSpaces";
4549 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[4] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[5];
4550 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[5].kind = 1;
4551 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[5].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, allowTabs);
4552 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[5].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_);
4553 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[5].name = "allowTabs";
4554 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[5] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[6];
4555 NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_.size = sizeof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A);
4556 NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_.align = NIM_ALIGNOF(tyTuple__JfHvHzMrhKkWAUvQKe0i1A);
4557 NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_.kind = 18;
4558 NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_.base = 0;
4559 TM__4JpEWnGrmRM8CRqL3P2O1Q_3_2[0] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[8];
4560 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[8].kind = 1;
4561 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[8].offset = offsetof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A, Field0);
4562 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[8].typ = (&NTIpointer__vr5DoT1jILTGdRlYv1OYpw_);
4563 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[8].name = "Field0";
4564 TM__4JpEWnGrmRM8CRqL3P2O1Q_3_2[1] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[9];
4565 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[9].kind = 1;
4566 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[9].offset = offsetof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A, Field1);
4567 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[9].typ = (&NTIrefobject__HsJiUUcO9cHBdUCi0HwkSTA_);
4568 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[9].name = "Field1";
4569 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[7].len = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[7].kind = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[7].sons = &TM__4JpEWnGrmRM8CRqL3P2O1Q_3_2[0];
4570 NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_.node = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[7];
4571 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[6].kind = 1;
4572 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[6].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, errorHandler);
4573 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[6].typ = (&NTIerrorhandler__pIuD7iLYdwrBMntVRm61ZA_);
4574 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[6].name = "errorHandler";
4575 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[6] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[10];
4576 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[10].kind = 1;
4577 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[10].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, cache);
4578 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[10].typ = (&NTIidentcache__lnkYNZP9asc88UfiEGjLrbA_);
4579 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[10].name = "cache";
4580 TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[7] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[11];
4581 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[11].kind = 1;
4582 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[11].offset = offsetof(tyObject_Lexer__JC9bQ4bKzkuzV9bdqS4ju8yw, config);
4583 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[11].typ = (&NTIconfigref__a8lycfSA25OQltN3OMeBsA_);
4584 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[11].name = "config";
4585 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[0].len = 8; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[0].kind = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[0].sons = &TM__4JpEWnGrmRM8CRqL3P2O1Q_2_8[0];
4586 NTIlexer__JC9bQ4bKzkuzV9bdqS4ju8yw_.node = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[0];
4587 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.size = sizeof(tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ);
4588 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.align = NIM_ALIGNOF(tyEnum_TokType__5VVBIL7Ozj1cc9akK23jAGQ);
4589 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.kind = 14;
4590 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.base = 0;
4591 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.flags = 3;
4592 for (TM__4JpEWnGrmRM8CRqL3P2O1Q_68 = 0; TM__4JpEWnGrmRM8CRqL3P2O1Q_68 < 119; TM__4JpEWnGrmRM8CRqL3P2O1Q_68++) {
4593 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_68+12].kind = 1;
4594 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_68+12].offset = TM__4JpEWnGrmRM8CRqL3P2O1Q_68;
4595 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_68+12].name = TM__4JpEWnGrmRM8CRqL3P2O1Q_67[TM__4JpEWnGrmRM8CRqL3P2O1Q_68];
4596 TM__4JpEWnGrmRM8CRqL3P2O1Q_66_119[TM__4JpEWnGrmRM8CRqL3P2O1Q_68] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_68+12];
4597 }
4598 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[131].len = 119; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[131].kind = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[131].sons = &TM__4JpEWnGrmRM8CRqL3P2O1Q_66_119[0];
4599 NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_.node = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[131];
4600 NTItoken__sNMaWRTImjqfh1DU9cmdQkA_.size = sizeof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA);
4601 NTItoken__sNMaWRTImjqfh1DU9cmdQkA_.align = NIM_ALIGNOF(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA);
4602 NTItoken__sNMaWRTImjqfh1DU9cmdQkA_.kind = 18;
4603 NTItoken__sNMaWRTImjqfh1DU9cmdQkA_.base = 0;
4604 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[0] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[133];
4605 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[133].kind = 1;
4606 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[133].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, tokType);
4607 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[133].typ = (&NTItoktype__5VVBIL7Ozj1cc9akK23jAGQ_);
4608 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[133].name = "tokType";
4609 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[1] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[134];
4610 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[134].kind = 1;
4611 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[134].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, indent);
4612 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[134].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4613 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[134].name = "indent";
4614 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[2] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[135];
4615 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[135].kind = 1;
4616 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[135].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, ident);
4617 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[135].typ = (&NTIpident__EiGmNYVHiKeimIyQkW82mg_);
4618 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[135].name = "ident";
4619 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[3] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[136];
4620 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[136].kind = 1;
4621 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[136].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, iNumber);
4622 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[136].typ = (&NTIbiggestint__Aav8dQoMlCFnZRxA0IhTHQ_);
4623 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[136].name = "iNumber";
4624 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[4] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[137];
4625 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[137].kind = 1;
4626 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[137].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, fNumber);
4627 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[137].typ = (&NTIfloat__w9bl9a1ul9ctRJWiMl9cNnIMvg_);
4628 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[137].name = "fNumber";
4629 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[5] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[138];
4630 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.size = sizeof(tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog);
4631 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.align = NIM_ALIGNOF(tyEnum_NumericalBase__thnLAz9aJwaXPrSfSppUBog);
4632 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.kind = 14;
4633 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.base = 0;
4634 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.flags = 3;
4635 for (TM__4JpEWnGrmRM8CRqL3P2O1Q_72 = 0; TM__4JpEWnGrmRM8CRqL3P2O1Q_72 < 4; TM__4JpEWnGrmRM8CRqL3P2O1Q_72++) {
4636 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_72+139].kind = 1;
4637 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_72+139].offset = TM__4JpEWnGrmRM8CRqL3P2O1Q_72;
4638 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_72+139].name = TM__4JpEWnGrmRM8CRqL3P2O1Q_71[TM__4JpEWnGrmRM8CRqL3P2O1Q_72];
4639 TM__4JpEWnGrmRM8CRqL3P2O1Q_70_4[TM__4JpEWnGrmRM8CRqL3P2O1Q_72] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[TM__4JpEWnGrmRM8CRqL3P2O1Q_72+139];
4640 }
4641 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[143].len = 4; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[143].kind = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[143].sons = &TM__4JpEWnGrmRM8CRqL3P2O1Q_70_4[0];
4642 NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_.node = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[143];
4643 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[138].kind = 1;
4644 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[138].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, base);
4645 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[138].typ = (&NTInumericalbase__thnLAz9aJwaXPrSfSppUBog_);
4646 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[138].name = "base";
4647 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[6] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[144];
4648 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[144].kind = 1;
4649 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[144].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, strongSpaceA);
4650 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[144].typ = (&NTIint56__chXunH2dwinSkhpA6JnsXw_);
4651 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[144].name = "strongSpaceA";
4652 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[7] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[145];
4653 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[145].kind = 1;
4654 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[145].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, strongSpaceB);
4655 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[145].typ = (&NTIint56__chXunH2dwinSkhpA6JnsXw_);
4656 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[145].name = "strongSpaceB";
4657 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[8] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[146];
4658 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[146].kind = 1;
4659 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[146].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, literal);
4660 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[146].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
4661 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[146].name = "literal";
4662 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[9] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[147];
4663 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[147].kind = 1;
4664 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[147].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, line);
4665 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[147].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4666 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[147].name = "line";
4667 TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[10] = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[148];
4668 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[148].kind = 1;
4669 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[148].offset = offsetof(tyObject_Token__sNMaWRTImjqfh1DU9cmdQkA, col);
4670 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[148].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
4671 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[148].name = "col";
4672 TM__4JpEWnGrmRM8CRqL3P2O1Q_0[132].len = 11; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[132].kind = 2; TM__4JpEWnGrmRM8CRqL3P2O1Q_0[132].sons = &TM__4JpEWnGrmRM8CRqL3P2O1Q_69_11[0];
4673 NTItoken__sNMaWRTImjqfh1DU9cmdQkA_.node = &TM__4JpEWnGrmRM8CRqL3P2O1Q_0[132];
4674 }
4675 
4676