/* Generated by Nim Compiler v2.2.10 */
/* Compiled for: MacOSX, arm64, clang */
/* Command for C compiler:
   clang -c  -w -ferror-limit=3 -fno-strict-aliasing -pthread -isysroot /Applications/Xcode_16.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -target arm64-apple-darwin24.2.0 -O3   -I/Users/runner/work/nightlies/nightlies/nim-2.2.10/lib -I/Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/src -o /Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/.nimcache/@pcompiler@ssyntaxes.nim.c.o /Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/.nimcache/@pcompiler@ssyntaxes.nim.c */
#define NIM_INTBITS 64
#define NIM_EmulateOverflowChecks

#include "nimbase.h"
#include <string.h>
#include <stdio.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
typedef struct tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg;
typedef struct tyObject_IdentCachecolonObjectType___kM30JRennovNjSy87Q0tZg tyObject_IdentCachecolonObjectType___kM30JRennovNjSy87Q0tZg;
typedef struct tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ;
typedef struct tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ;
typedef struct tyObject_TType__Mr5OLuzzwXOlraK5ByalKg tyObject_TType__Mr5OLuzzwXOlraK5ByalKg;
typedef struct tyObject_TSym__JSAgsmM1rxuWFgHM7Nlxdg tyObject_TSym__JSAgsmM1rxuWFgHM7Nlxdg;
typedef struct tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg;
typedef struct tySequence__dLTPEqP7th9csUVoVHHIjNw tySequence__dLTPEqP7th9csUVoVHHIjNw;
typedef struct tySequence__dLTPEqP7th9csUVoVHHIjNw_Content tySequence__dLTPEqP7th9csUVoVHHIjNw_Content;
typedef struct RootObj RootObj;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct tyObject_Lexer__pr0lUFd9b8B8UI5LygxHiDA tyObject_Lexer__pr0lUFd9b8B8UI5LygxHiDA;
typedef struct tyObject_TBaseLexer__uGVQu9a9b6vaC8dO9cPA8KdFA tyObject_TBaseLexer__uGVQu9a9b6vaC8dO9cPA8KdFA;
typedef struct tyObject_Token__0RfaoeiXz87H212JyhBKLA tyObject_Token__0RfaoeiXz87H212JyhBKLA;
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
typedef NU8 tyEnum_FileMode__wjF0STQGT1PBuQEl3p0tng;
struct tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA {
	NU16 line;
	NI16 col;
	NI32 fileIndex;
};
typedef NU8 tyEnum_TMsgKind__pCKnCkdazBSZAewKQ9a3R5g;
typedef NU8 tyEnum_TErrorHandling__TVDY9cjniDpHSXHIbcThXrQ;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
	NimStringV2 Field0;
	NI Field1;
	NI Field2;
};
typedef NU32 tySet_tyEnum_TNodeFlag__sglT9bUvYWblEf3C9c5ok1QA;
typedef NU8 tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ;
struct tySequence__dLTPEqP7th9csUVoVHHIjNw {
  NI len; tySequence__dLTPEqP7th9csUVoVHHIjNw_Content* p;
};
struct tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ {
	tyObject_TType__Mr5OLuzzwXOlraK5ByalKg* typField;
	tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA info;
	tySet_tyEnum_TNodeFlag__sglT9bUvYWblEf3C9c5ok1QA flags;
	tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ kind;
union{
	struct {
	NI64 intVal;
} _kind_1;
	struct {
	NF floatVal;
} _kind_2;
	struct {
	NimStringV2 strVal;
} _kind_3;
	struct {
	tyObject_TSym__JSAgsmM1rxuWFgHM7Nlxdg* sym;
} _kind_4;
	struct {
	tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg* ident;
} _kind_5;
	struct {
	tySequence__dLTPEqP7th9csUVoVHHIjNw sons;
} _kind_6;
};
};
struct TNimTypeV2 {
	void* destructor;
	NI size;
	NI16 align;
	NI16 depth;
	NU32* display;
	void* traceImpl;
	void* typeInfoV1;
	NI flags;
	void* vTable[SEQ_DECL_SIZE];
};
struct RootObj {
	TNimTypeV2* m_type;
};
typedef NU8 tyEnum_TLLStreamKind__Vt32Tvf0nxx4kIGObvTB4w;
typedef struct {
N_NIMCALL_PTR(NI, ClP_0) (tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* s_p0, void* buf_p1, NI bufLen_p2, void* ClE_0);
void* ClE_0;
} tyProc__wlJibQYTL5o48Y4PSwC79ag;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (void* ClE_0);
void* ClE_0;
} tyProc__HzVCwACFYM9cx9aV62PdjtuA;
struct tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ {
	RootObj Sup;
	tyEnum_TLLStreamKind__Vt32Tvf0nxx4kIGObvTB4w kind;
	FILE* f;
	NimStringV2 s;
	NI rd;
	NI wr;
	NI lineOffset;
	tyProc__wlJibQYTL5o48Y4PSwC79ag repl;
	tyProc__HzVCwACFYM9cx9aV62PdjtuA onPrompt;
};
struct tyObject_TBaseLexer__uGVQu9a9b6vaC8dO9cPA8KdFA {
	RootObj Sup;
	NI bufpos;
	NCSTRING buf;
	NimStringV2 bufStorage;
	NI bufLen;
	tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* stream;
	NI lineNumber;
	NI sentinel;
	NI lineStart;
	NI offsetBase;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA info_p1, tyEnum_TMsgKind__pCKnCkdazBSZAewKQ9a3R5g msg_p2, NimStringV2 arg_p3, void* ClE_0);
void* ClE_0;
} tyProc__pZyCb85IttgsT24JoT50Ow;
struct tyObject_Lexer__pr0lUFd9b8B8UI5LygxHiDA {
	tyObject_TBaseLexer__uGVQu9a9b6vaC8dO9cPA8KdFA Sup;
	NI32 fileIdx;
	NI indentAhead;
	NI currLineIndent;
	tyProc__pZyCb85IttgsT24JoT50Ow errorHandler;
	tyObject_IdentCachecolonObjectType___kM30JRennovNjSy87Q0tZg* cache;
	tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* config;
};
typedef NU8 tyEnum_TokType__rA9cc6YOHsEyGZVlRnIgR4g;
typedef NU8 tyEnum_NumericalBase__S2Pf8C28L7Ch8LvRxz9bs6Q;
typedef NU8 tySet_tyEnum_TokenSpacing__qVjGgblH7LYE7ShSh9aYb9bg;
struct tyObject_Token__0RfaoeiXz87H212JyhBKLA {
	tyEnum_TokType__rA9cc6YOHsEyGZVlRnIgR4g tokType;
	tyEnum_NumericalBase__S2Pf8C28L7Ch8LvRxz9bs6Q base;
	tySet_tyEnum_TokenSpacing__qVjGgblH7LYE7ShSh9aYb9bg spacing;
	NI indent;
	tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg* ident;
	NI64 iNumber;
	NF fNumber;
	NimStringV2 literal;
	NI line;
	NI col;
};
struct tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg {
	NI currInd;
	NIM_BOOL firstTok;
	NIM_BOOL hasProgress;
	tyObject_Lexer__pr0lUFd9b8B8UI5LygxHiDA lex;
	tyObject_Token__0RfaoeiXz87H212JyhBKLA tok;
	NI lineStartPrevious;
	NI lineNumberPrevious;
	NI bufposPrevious;
	NI inPragma;
	NI inSemiStmtList;
	tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* emptyNode;
};
typedef NU8 tySet_tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ[21];
struct tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg {
	NI id;
	NimStringV2 s;
	tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg* next;
	NI h;
};
typedef NU8 tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww;
typedef NU16 tySet_tyEnum_TRenderFlag__gDamCxUj0iS9bEaSTAVGRZg;
typedef NU8 tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ;
typedef NU8 tySet_tyEnum_MsgFlag__R3GNIVpuNONyqBrVwryP9cw;
struct tySequence__dLTPEqP7th9csUVoVHHIjNw_Content { NI cap; tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toFullPathConsiderDirty__OOZOOZOOZcompilerZmsgs_u660)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, NI32 fileIdx_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, open__stdZsyncio_u413)(FILE** f_p0, NimStringV2 filename_p1, tyEnum_FileMode__wjF0STQGT1PBuQEl3p0tng mode_p2, NI bufSize_p3);
N_LIB_PRIVATE N_NOINLINE(void, liMessage__OOZOOZOOZcompilerZmsgs_u1230)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA info_p1, tyEnum_TMsgKind__pCKnCkdazBSZAewKQ9a3R5g msg_p2, NimStringV2 arg_p3, tyEnum_TErrorHandling__TVDY9cjniDpHSXHIbcThXrQ eh_p4, tyTuple__kN8up2W6YKc5YA9avn5mV5w* info2_p5, NIM_BOOL isRaw_p6, NIM_BOOL ignoreError_p7);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, copyMem__system_u1755)(void* dest_p0, void* source_p1, NI size_p2);
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space_p0);
N_LIB_PRIVATE N_NOCONV(void, deallocShared)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZllstream_u111)(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, openParser__OOZOOZOOZcompilerZsyntaxes_u205)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0, NI32 fileIdx_p1, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* inputstream_p2, tyObject_IdentCachecolonObjectType___kM30JRennovNjSy87Q0tZg* cache_p3, tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* config_p4);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__stdZassertions_u95)(NimStringV2 msg_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ*, parsePipe__OOZOOZOOZcompilerZsyntaxes_u39)(NimStringV2 filename_p0, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* inputStream_p1, tyObject_IdentCachecolonObjectType___kM30JRennovNjSy87Q0tZg* cache_p2, tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* config_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ*, newNode__OOZOOZOOZcompilerZast_u4112)(tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ kind_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*, llStreamOpen__OOZOOZOOZcompilerZllstream_u135)(NimStringV2 filename_p0, tyEnum_FileMode__wjF0STQGT1PBuQEl3p0tng mode_p1);
N_NIMCALL(NimStringV2, rawNewString)(NI cap_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, llStreamReadLine__OOZOOZOOZcompilerZllstream_u454)(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* s_p0, NimStringV2* line_p1);
N_LIB_PRIVATE N_NIMCALL(NI, utf8Bom__OOZOOZOOZcompilerZsyntaxes_u22)(NimStringV2 s_p0);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i_p0, NI n_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsShebang__OOZOOZOOZcompilerZsyntaxes_u25)(NimStringV2 s_p0, NI i_p1);
static N_INLINE(NIM_BOOL, nimAddInt)(NI a_p0, NI b_p1, NI* res_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseOverflow)(void);
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1);
static N_INLINE(void, nimSetMem__system_u2188)(void* a_p0, int v_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(void, openParser__OOZOOZOOZcompilerZparser_u128)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0, NimStringV2 filename_p1, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* inputStream_p2, tyObject_IdentCachecolonObjectType___kM30JRennovNjSy87Q0tZg* cache_p3, tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* config_p4);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*, llStreamOpen__OOZOOZOOZcompilerZllstream_u31)(NimStringV2 data_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, substr__system_u9109)(NimStringV2 s_p0, NI first_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___OOZOOZOOZcompilerZast_u3279)(tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ** dest_p0, tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ*, parseAll__OOZOOZOOZcompilerZparser_u1768)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZast_u3270)(tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, closeParser__OOZOOZOOZcompilerZparser_u134)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZparser_u1789)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, llStreamClose__OOZOOZOOZcompilerZllstream_u181)(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* s_p0);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___OOZOOZOOZcompilerZoptions_u1943)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw** dest_p0, tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*, evalPipe__OOZOOZOOZcompilerZsyntaxes_u165)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0, tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* n_p1, NimStringV2 filename_p2, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* start_p3);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___OOZOOZOOZcompilerZllstream_u114)(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ** dest_p0, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___OOZOOZOOZcompilerZnodekinds_u168)(tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ e_p0);
N_LIB_PRIVATE N_NOINLINE(void, raiseFieldErrorStr)(NimStringV2 f_p0, NimStringV2 discVal_p1);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1);
static N_INLINE(NIM_BOOL, equalMem__system_u1763)(void* a_p0, void* b_p1, NI size_p2);
static N_INLINE(int, nimCmpMem)(void* a_p0, void* b_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___OOZOOZOOZcompilerZllstream_u122)(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ** dest_p0, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*, applyFilter__OOZOOZOOZcompilerZsyntaxes_u144)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0, tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* n_p1, NimStringV2 filename_p2, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* stdin_p3);
N_LIB_PRIVATE N_NIMCALL(tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww, getFilter__OOZOOZOOZcompilerZsyntaxes_u78)(tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg* ident_p0);
N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreStyle)(NimStringV2 a_p0, NimStringV2 b_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___OOZOOZOOZcompilerZsyntaxes_u19)(tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww e_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg*, getCallee__OOZOOZOOZcompilerZsyntaxes_u128)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* n_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___OOZOOZOOZcompilerZidents_u159)(tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg** dest_p0, tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg* src_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, renderTree__OOZOOZOOZcompilerZrenderer_u56)(tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* n_p0, tySet_tyEnum_TRenderFlag__gDamCxUj0iS9bEaSTAVGRZg renderFlags_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*, filterTmpl__OOZOOZOOZcompilerZfilter95tmpl_u230)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* stdin_p1, NimStringV2 filename_p2, tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* call_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*, filterStrip__OOZOOZOOZcompilerZfilters_u91)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* stdin_p1, NimStringV2 filename_p2, tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* call_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*, filterReplace__OOZOOZOOZcompilerZfilters_u102)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* stdin_p1, NimStringV2 filename_p2, tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* call_p3);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasHint__OOZOOZOOZcompilerZoptions_u551)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ note_p1);
N_LIB_PRIVATE N_NIMCALL(void, msgWriteln__OOZOOZOOZcompilerZmsgs_u740)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, NimStringV2 s_p1, tySet_tyEnum_MsgFlag__R3GNIVpuNONyqBrVwryP9cw flags_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___OOZOOZOOZcompilerZidents_u156)(tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, openParser__OOZOOZOOZcompilerZparser_u119)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0, NI32 fileIdx_p1, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* inputStream_p2, tyObject_IdentCachecolonObjectType___kM30JRennovNjSy87Q0tZg* cache_p3, tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* config_p4);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*, llStreamOpen__OOZOOZOOZcompilerZllstream_u132)(FILE* f_p0);
static const struct {
  NI cap; NIM_CHAR data[18+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_2 = { 18 | NIM_STRLIT_FLAG, "cannot open file: " };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_3 = {18, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_2};
static const struct {
  NI cap; NIM_CHAR data[71+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_5 = { 71 | NIM_STRLIT_FLAG, "/Users/runner/work/nightlies/nightlies/nim-2.2.10/compiler/syntaxes.nim" };
static const struct {
  NI cap; NIM_CHAR data[37+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_6 = { 37 | NIM_STRLIT_FLAG, "syntaxes.nim(121, 3) `config != nil` " };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_7 = {37, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_6};
extern TNimTypeV2 NTIv2__pr0lUFd9b8B8UI5LygxHiDA_;
static const struct {
  NI cap; NIM_CHAR data[43+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_18 = { 43 | NIM_STRLIT_FLAG, "syntaxes.nim(105, 3) `p.lex.config != nil` " };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_19 = {43, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_18};
static NIM_CONST tySet_tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ TM__Furs9bKK6tVLoyofH3f4bRw_20 = {
0xec, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00}
;
static const struct {
  NI cap; NIM_CHAR data[62+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_21 = { 62 | NIM_STRLIT_FLAG, "field \'sons\' is not accessible for type \'TNode\' using \'kind = " };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_22 = {62, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_21};
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_23 = {62, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_21};
static NIM_CONST tySet_tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ TM__Furs9bKK6tVLoyofH3f4bRw_24 = {
0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00}
;
static const struct {
  NI cap; NIM_CHAR data[63+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_25 = { 63 | NIM_STRLIT_FLAG, "field \'ident\' is not accessible for type \'TNode\' using \'kind = " };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_26 = {63, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_25};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_27 = { 1 | NIM_STRLIT_FLAG, "|" };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_28 = {1, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_27};
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_29 = {62, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_21};
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_30 = {62, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_21};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_31 = { 4 | NIM_STRLIT_FLAG, "none" };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_32 = {4, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_31};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_33 = { 7 | NIM_STRLIT_FLAG, "stdtmpl" };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_34 = {7, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_33};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_35 = { 7 | NIM_STRLIT_FLAG, "replace" };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_36 = {7, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_35};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_37 = { 5 | NIM_STRLIT_FLAG, "strip" };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_38 = {5, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_37};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_39 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_40 = {0, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_39};
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_42 = {62, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_21};
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_43 = {62, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_21};
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_44 = {63, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_25};
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_45 = {63, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_25};
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_46 = { 16 | NIM_STRLIT_FLAG, "invalid filter: " };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_47 = {16, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_46};
static const struct {
  NI cap; NIM_CHAR data[42+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_49 = { 42 | NIM_STRLIT_FLAG, "syntaxes.nim(97, 5) `p.lex.config != nil` " };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_50 = {42, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_49};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__Furs9bKK6tVLoyofH3f4bRw_51 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_52 = {0, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_51};
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_54 = {0, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_51};
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_56 = {62, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_21};
static const NimStringV2 TM__Furs9bKK6tVLoyofH3f4bRw_58 = {62, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_21};
extern NIM_CONST tyObject_TLineInfo__kiDjTapnw5C9b3hMkuXAcnA unknownLineInfo__OOZOOZOOZcompilerZlineinfos_u364;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__Furs9bKK6tVLoyofH3f4bRw_4 = {{71, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_5},
((NI)134),
((NI)14)}
;
static NIM_CONST tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg TM__Furs9bKK6tVLoyofH3f4bRw_15 = {0, NIM_FALSE, NIM_FALSE, {{{(&NTIv2__pr0lUFd9b8B8UI5LygxHiDA_)}, 0, NIM_NIL, {0, NIM_NIL}, 0, NIM_NIL, 0, 0, 0, 0}, 0, 0, 0, {NIM_NIL, NIM_NIL}, NIM_NIL, NIM_NIL}, {0, 0, 0, 0, NIM_NIL, 0, 0.0, {0, NIM_NIL}, 0, 0}, 0, 0, 0, 0, 0, NIM_NIL}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__Furs9bKK6tVLoyofH3f4bRw_48 = {{71, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_5},
((NI)82),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__Furs9bKK6tVLoyofH3f4bRw_53 = {{71, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_5},
((NI)99),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__Furs9bKK6tVLoyofH3f4bRw_55 = {{71, (NimStrPayload*)&TM__Furs9bKK6tVLoyofH3f4bRw_5},
((NI)101),
((NI)16)}
;
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__system_u4198;
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest_p0, source_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, copyMem__system_u1755)(void* dest_p0, void* source_p1, NI size_p2) {
	nimCopyMem(dest_p0, source_p1, size_p2);
}
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1) {
	{
		if (!(((NI)0) < src_p1.len)) goto LA3_;
		copyMem__system_u1755(((void*) ((&(*(*dest_p0).p).data[(*dest_p0).len]))), ((void*) ((&(*src_p1.p).data[((NI)0)]))), (src_p1.len));
		(*dest_p0).len += src_p1.len;
		(*(*dest_p0).p).data[(*dest_p0).len] = 0;
	}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, utf8Bom__OOZOOZOOZcompilerZsyntaxes_u22)(NimStringV2 s_p0) {
	NI result;
	NI T1_;
{	T1_ = (NI)0;
	{
		NIM_BOOL T4_;
		NIM_BOOL T5_;
		NIM_BOOL T6_;
		T4_ = (NIM_BOOL)0;
		T5_ = (NIM_BOOL)0;
		T6_ = (NIM_BOOL)0;
		T6_ = (((NI)3) <= s_p0.len);
		if (!(T6_)) goto LA7_;
		if (((NI)0) < 0 || ((NI)0) >= s_p0.len){ raiseIndexError2(((NI)0),s_p0.len-1); goto BeforeRet_;
		}
		T6_ = ((NU8)(s_p0.p->data[((NI)0)]) == (NU8)(239));
LA7_: ;
		T5_ = T6_;
		if (!(T5_)) goto LA8_;
		if (((NI)1) < 0 || ((NI)1) >= s_p0.len){ raiseIndexError2(((NI)1),s_p0.len-1); goto BeforeRet_;
		}
		T5_ = ((NU8)(s_p0.p->data[((NI)1)]) == (NU8)(187));
LA8_: ;
		T4_ = T5_;
		if (!(T4_)) goto LA9_;
		if (((NI)2) < 0 || ((NI)2) >= s_p0.len){ raiseIndexError2(((NI)2),s_p0.len-1); goto BeforeRet_;
		}
		T4_ = ((NU8)(s_p0.p->data[((NI)2)]) == (NU8)(191));
LA9_: ;
		if (!T4_) goto LA10_;
		result = ((NI)3);
	}
	goto LA2_;
LA10_: ;
	{
		result = ((NI)0);
	}
LA2_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, nimAddInt)(NI a_p0, NI b_p1, NI* res_p2) {
	NIM_BOOL result;
	NI r_1;
	result = (NIM_BOOL)0;
	r_1 = ((NI) ((NU)((NU64)(((NU) (a_p0))) + (NU64)(((NU) (b_p1))))));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI)0) <= (NI)(r_1 ^ a_p0));
		if (T3_) goto LA4_;
		T3_ = (((NI)0) <= (NI)(r_1 ^ b_p1));
LA4_: ;
		if (!T3_) goto LA5_;
		(*res_p2) = r_1;
	}
	goto LA1_;
LA5_: ;
	{
		result = NIM_TRUE;
	}
LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsShebang__OOZOOZOOZcompilerZsyntaxes_u25)(NimStringV2 s_p0, NI i_p1) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		NIM_BOOL T3_;
		NIM_BOOL T4_;
		NI TM__Furs9bKK6tVLoyofH3f4bRw_8;
		NI TM__Furs9bKK6tVLoyofH3f4bRw_9;
		NI j_1;
		NI TM__Furs9bKK6tVLoyofH3f4bRw_10;
		T3_ = (NIM_BOOL)0;
		T4_ = (NIM_BOOL)0;
		if (nimAddInt(i_p1, ((NI)1), &TM__Furs9bKK6tVLoyofH3f4bRw_8)) { raiseOverflow(); goto BeforeRet_;
		};
		T4_ = ((NI)(TM__Furs9bKK6tVLoyofH3f4bRw_8) < s_p0.len);
		if (!(T4_)) goto LA5_;
		if (i_p1 < 0 || i_p1 >= s_p0.len){ raiseIndexError2(i_p1,s_p0.len-1); goto BeforeRet_;
		}
		T4_ = ((NU8)(s_p0.p->data[i_p1]) == (NU8)(35));
LA5_: ;
		T3_ = T4_;
		if (!(T3_)) goto LA6_;
		if (nimAddInt(i_p1, ((NI)1), &TM__Furs9bKK6tVLoyofH3f4bRw_9)) { raiseOverflow(); goto BeforeRet_;
		};
		if ((NI)(TM__Furs9bKK6tVLoyofH3f4bRw_9) < 0 || (NI)(TM__Furs9bKK6tVLoyofH3f4bRw_9) >= s_p0.len){ raiseIndexError2((NI)(TM__Furs9bKK6tVLoyofH3f4bRw_9),s_p0.len-1); goto BeforeRet_;
		}
		T3_ = ((NU8)(s_p0.p->data[(NI)(TM__Furs9bKK6tVLoyofH3f4bRw_9)]) == (NU8)(33));
LA6_: ;
		if (!T3_) goto LA7_;
		if (nimAddInt(i_p1, ((NI)2), &TM__Furs9bKK6tVLoyofH3f4bRw_10)) { raiseOverflow(); goto BeforeRet_;
		};
		j_1 = (NI)(TM__Furs9bKK6tVLoyofH3f4bRw_10);
		{
			while (1) {
				NIM_BOOL T11_;
				NI TM__Furs9bKK6tVLoyofH3f4bRw_11;
				T11_ = (NIM_BOOL)0;
				T11_ = (j_1 < s_p0.len);
				if (!(T11_)) goto LA12_;
				if (j_1 < 0 || j_1 >= s_p0.len){ raiseIndexError2(j_1,s_p0.len-1); goto BeforeRet_;
				}
				T11_ = (((NU8)(s_p0.p->data[j_1])) == ((NU8)(32)) || ((NU8)(s_p0.p->data[j_1])) == ((NU8)(9)) || ((NU8)(s_p0.p->data[j_1])) == ((NU8)(11)) || ((NU8)(s_p0.p->data[j_1])) == ((NU8)(13)) || ((NU8)(s_p0.p->data[j_1])) == ((NU8)(10)) || ((NU8)(s_p0.p->data[j_1])) == ((NU8)(12)));
LA12_: ;
				if (!T11_) goto LA10;
				if (nimAddInt(j_1, ((NI)1), &TM__Furs9bKK6tVLoyofH3f4bRw_11)) { raiseOverflow(); goto BeforeRet_;
				};
				j_1 = (NI)(TM__Furs9bKK6tVLoyofH3f4bRw_11);
			} LA10: ;
		}
		if (j_1 < 0 || j_1 >= s_p0.len){ raiseIndexError2(j_1,s_p0.len-1); goto BeforeRet_;
		}
		result = ((NU8)(s_p0.p->data[j_1]) == (NU8)(47));
	}
	goto LA1_;
LA7_: ;
	{
		result = NIM_FALSE;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimSetMem__system_u2188)(void* a_p0, int v_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a_p0, v_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1) {
	nimSetMem__system_u2188(p_p0, ((int)0), size_p1);
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4198);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ*, parsePipe__OOZOOZOOZcompilerZsyntaxes_u39)(NimStringV2 filename_p0, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* inputStream_p1, tyObject_IdentCachecolonObjectType___kM30JRennovNjSy87Q0tZg* cache_p2, tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* config_p3) {
	tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* result;
	tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* s_1;
NIM_BOOL oldNimErrFin22_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	s_1 = NIM_NIL;
	result = newNode__OOZOOZOOZcompilerZast_u4112(((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	s_1 = llStreamOpen__OOZOOZOOZcompilerZllstream_u135(filename_p0, ((tyEnum_FileMode__wjF0STQGT1PBuQEl3p0tng)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NimStringV2 line_1;
		NIM_BOOL T7_;
		NI i_1;
		NI linenumber_1;
		if (!!((s_1 == ((tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*) NIM_NIL)))) goto LA4_;
		line_1.len = 0; line_1.p = NIM_NIL;
		line_1 = rawNewString(((NI)80));
		T7_ = (NIM_BOOL)0;
		T7_ = llStreamReadLine__OOZOOZOOZcompilerZllstream_u454(s_1, (&line_1));
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		(void)(T7_);
		i_1 = utf8Bom__OOZOOZOOZcompilerZsyntaxes_u22(line_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		linenumber_1 = ((NI)1);
		{
			NIM_BOOL T10_;
			NIM_BOOL T13_;
			NI TM__Furs9bKK6tVLoyofH3f4bRw_12;
			T10_ = (NIM_BOOL)0;
			T10_ = containsShebang__OOZOOZOOZcompilerZsyntaxes_u25(line_1, i_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
			if (!T10_) goto LA11_;
			T13_ = (NIM_BOOL)0;
			T13_ = llStreamReadLine__OOZOOZOOZcompilerZllstream_u454(s_1, (&line_1));
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
			(void)(T13_);
			i_1 = ((NI)0);
			if (nimAddInt(linenumber_1, ((NI)1), &TM__Furs9bKK6tVLoyofH3f4bRw_12)) { raiseOverflow(); goto LA6_;
			};
			linenumber_1 = (NI)(TM__Furs9bKK6tVLoyofH3f4bRw_12);
		}
LA11_: ;
		{
			NIM_BOOL T16_;
			NIM_BOOL T17_;
			NI TM__Furs9bKK6tVLoyofH3f4bRw_13;
			NI TM__Furs9bKK6tVLoyofH3f4bRw_14;
			tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg p_1;
			tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* colontmpD_;
			NI TM__Furs9bKK6tVLoyofH3f4bRw_16;
			NimStringV2 T27_;
			tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* T28_;
			T16_ = (NIM_BOOL)0;
			T17_ = (NIM_BOOL)0;
			if (nimAddInt(i_1, ((NI)1), &TM__Furs9bKK6tVLoyofH3f4bRw_13)) { raiseOverflow(); goto LA6_;
			};
			T17_ = ((NI)(TM__Furs9bKK6tVLoyofH3f4bRw_13) < line_1.len);
			if (!(T17_)) goto LA18_;
			if (i_1 < 0 || i_1 >= line_1.len){ raiseIndexError2(i_1,line_1.len-1); goto LA6_;
			}
			T17_ = ((NU8)(line_1.p->data[i_1]) == (NU8)(35));
LA18_: ;
			T16_ = T17_;
			if (!(T16_)) goto LA19_;
			if (nimAddInt(i_1, ((NI)1), &TM__Furs9bKK6tVLoyofH3f4bRw_14)) { raiseOverflow(); goto LA6_;
			};
			if ((NI)(TM__Furs9bKK6tVLoyofH3f4bRw_14) < 0 || (NI)(TM__Furs9bKK6tVLoyofH3f4bRw_14) >= line_1.len){ raiseIndexError2((NI)(TM__Furs9bKK6tVLoyofH3f4bRw_14),line_1.len-1); goto LA6_;
			}
			T16_ = ((NU8)(line_1.p->data[(NI)(TM__Furs9bKK6tVLoyofH3f4bRw_14)]) == (NU8)(63));
LA19_: ;
			if (!T16_) goto LA20_;
			nimZeroMem((void*)(&p_1), sizeof(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg));
			p_1 = TM__Furs9bKK6tVLoyofH3f4bRw_15;
			colontmpD_ = NIM_NIL;
			if (nimAddInt(i_1, ((NI)2), &TM__Furs9bKK6tVLoyofH3f4bRw_16)) { raiseOverflow(); goto LA22_;
			};
			i_1 = (NI)(TM__Furs9bKK6tVLoyofH3f4bRw_16);
			{
				while (1) {
					NIM_BOOL T25_;
					NI TM__Furs9bKK6tVLoyofH3f4bRw_17;
					T25_ = (NIM_BOOL)0;
					T25_ = (i_1 < line_1.len);
					if (!(T25_)) goto LA26_;
					if (i_1 < 0 || i_1 >= line_1.len){ raiseIndexError2(i_1,line_1.len-1); goto LA22_;
					}
					T25_ = (((NU8)(line_1.p->data[i_1])) == ((NU8)(32)) || ((NU8)(line_1.p->data[i_1])) == ((NU8)(9)) || ((NU8)(line_1.p->data[i_1])) == ((NU8)(11)) || ((NU8)(line_1.p->data[i_1])) == ((NU8)(13)) || ((NU8)(line_1.p->data[i_1])) == ((NU8)(10)) || ((NU8)(line_1.p->data[i_1])) == ((NU8)(12)));
LA26_: ;
					if (!T25_) goto LA24;
					if (nimAddInt(i_1, ((NI)1), &TM__Furs9bKK6tVLoyofH3f4bRw_17)) { raiseOverflow(); goto LA22_;
					};
					i_1 = (NI)(TM__Furs9bKK6tVLoyofH3f4bRw_17);
				} LA24: ;
			}
			nimZeroMem((void*)(&p_1), sizeof(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg));
			p_1 = TM__Furs9bKK6tVLoyofH3f4bRw_15;
			T27_.len = 0; T27_.p = NIM_NIL;
			T27_ = substr__system_u9109(line_1, i_1);
			colontmpD_ = llStreamOpen__OOZOOZOOZcompilerZllstream_u31(T27_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
			openParser__OOZOOZOOZcompilerZparser_u128((&p_1), filename_p0, colontmpD_, cache_p2, config_p3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
			T28_ = NIM_NIL;
			T28_ = parseAll__OOZOOZOOZcompilerZparser_u1768((&p_1));
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___OOZOOZOOZcompilerZast_u3270(T28_); goto LA22_;}
			eqsink___OOZOOZOOZcompilerZast_u3279(&result, T28_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
			closeParser__OOZOOZOOZcompilerZparser_u134((&p_1));
			if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
			{
				LA22_:;
			}
			{
				oldNimErrFin22_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___OOZOOZOOZcompilerZllstream_u111(colontmpD_);
				eqdestroy___OOZOOZOOZcompilerZparser_u1789((&p_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
				*nimErr_ = oldNimErrFin22_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		}
LA20_: ;
		llStreamClose__OOZOOZOOZcompilerZllstream_u181(s_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		{
			LA6_:;
		}
		{
			if (line_1.p && !(line_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(line_1.p);
}
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA4_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___OOZOOZOOZcompilerZllstream_u111(s_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(int, nimCmpMem)(void* a_p0, void* b_p1, NI size_p2) {
	int result;
	result = memcmp(a_p0, b_p1, ((size_t) (size_p2)));
	return result;
}
static N_INLINE(NIM_BOOL, equalMem__system_u1763)(void* a_p0, void* b_p1, NI size_p2) {
	NIM_BOOL result;
	int T1_;
	T1_ = (int)0;
	T1_ = nimCmpMem(a_p0, b_p1, size_p2);
	result = (T1_ == ((NI32)0));
	return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1) {
	NIM_BOOL result;
	NI alen_1;
	NI blen_1;
{	result = NIM_FALSE;
	alen_1 = a_p0.len;
	blen_1 = b_p1.len;
	{
		if (!(alen_1 == blen_1)) goto LA3_;
		{
			if (!(alen_1 == ((NI)0))) goto LA7_;
			result = NIM_TRUE;
			goto BeforeRet_;
		}
LA7_: ;
		result = equalMem__system_u1763(((void*) ((&a_p0.p->data[((NI)0)]))), ((void*) ((&b_p1.p->data[((NI)0)]))), (alen_1));
		goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___OOZOOZOOZcompilerZsyntaxes_u19)(tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww e_p0) {
	NimStringV2 result;
	switch (e_p0) {
	case ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)0):
	{
		result = TM__Furs9bKK6tVLoyofH3f4bRw_32;
	}
	break;
	case ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)1):
	{
		result = TM__Furs9bKK6tVLoyofH3f4bRw_34;
	}
	break;
	case ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)2):
	{
		result = TM__Furs9bKK6tVLoyofH3f4bRw_36;
	}
	break;
	case ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)3):
	{
		result = TM__Furs9bKK6tVLoyofH3f4bRw_38;
	}
	break;
	default:
	{
		result = TM__Furs9bKK6tVLoyofH3f4bRw_40;
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww, getFilter__OOZOOZOOZcompilerZsyntaxes_u78)(tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg* ident_p0) {
	tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)0);
	{
		tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww i_1;
		i_1 = (tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)0;
		{
			tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww v_1;
			NI res_1;
			v_1 = (tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)0;
			res_1 = ((NI)0);
			{
				while (1) {
					NimStringV2 colontmpD_;
					NI TM__Furs9bKK6tVLoyofH3f4bRw_41;
					if (!(res_1 <= ((NI)3))) goto LA4;
					colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
					v_1 = ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww) (res_1));
					i_1 = v_1;
					{
						NI T8_;
						colontmpD_ = dollar___OOZOOZOOZcompilerZsyntaxes_u19(i_1);
						T8_ = (NI)0;
						T8_ = nsuCmpIgnoreStyle((*ident_p0).s, colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
						if (!(T8_ == ((NI)0))) goto LA9_;
						result = i_1;
						if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
						goto BeforeRet_;
					}
LA9_: ;
					if (nimAddInt(res_1, ((NI)1), &TM__Furs9bKK6tVLoyofH3f4bRw_41)) { raiseOverflow(); goto LA5_;
					};
					res_1 = (NI)(TM__Furs9bKK6tVLoyofH3f4bRw_41);
					{
						LA5_:;
					}
					{
						if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
					}
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				} LA4: ;
			}
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg*, getCallee__OOZOOZOOZcompilerZsyntaxes_u128)(tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* conf_p0, tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* n_p1) {
	tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = ((*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)27) || (*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)29) || (*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)30) || (*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)31) || (*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)26) || (*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)28) || (*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)32));
		if (!(T3_)) goto LA4_;
		if (((TM__Furs9bKK6tVLoyofH3f4bRw_20[(NU)(((*n_p1).kind))>>3] &(1U<<((NU)(((*n_p1).kind))&7U)))!=0)) 		{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_42, dollar___OOZOOZOOZcompilerZnodekinds_u168((*n_p1).kind)); goto BeforeRet_;
		}
		if (((NI)0) < 0 || ((NI)0) >= (*n_p1)._kind_6.sons.len){ raiseIndexError2(((NI)0),(*n_p1)._kind_6.sons.len-1); goto BeforeRet_;
		}
		T3_ = ((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)2));
LA4_: ;
		if (!T3_) goto LA5_;
		if (((TM__Furs9bKK6tVLoyofH3f4bRw_20[(NU)(((*n_p1).kind))>>3] &(1U<<((NU)(((*n_p1).kind))&7U)))!=0)) 		{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_43, dollar___OOZOOZOOZcompilerZnodekinds_u168((*n_p1).kind)); goto BeforeRet_;
		}
		if (((NI)0) < 0 || ((NI)0) >= (*n_p1)._kind_6.sons.len){ raiseIndexError2(((NI)0),(*n_p1)._kind_6.sons.len-1); goto BeforeRet_;
		}
		if (!(((TM__Furs9bKK6tVLoyofH3f4bRw_24[(NU)(((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind))>>3] &(1U<<((NU)(((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind))&7U)))!=0))) 		{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_44, dollar___OOZOOZOOZcompilerZnodekinds_u168((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind)); goto BeforeRet_;
		}
		eqcopy___OOZOOZOOZcompilerZidents_u159(&result, (*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_5.ident);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA5_: ;
	{
		if (!((*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)2))) goto LA8_;
		if (!(((TM__Furs9bKK6tVLoyofH3f4bRw_24[(NU)(((*n_p1).kind))>>3] &(1U<<((NU)(((*n_p1).kind))&7U)))!=0))) 		{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_45, dollar___OOZOOZOOZcompilerZnodekinds_u168((*n_p1).kind)); goto BeforeRet_;
		}
		eqcopy___OOZOOZOOZcompilerZidents_u159(&result, (*n_p1)._kind_5.ident);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA8_: ;
	{
		NimStringV2 colontmpD_;
		NimStringV2 colontmpD__2;
		NimStringV2 T12_;
		tySet_tyEnum_TRenderFlag__gDamCxUj0iS9bEaSTAVGRZg T13_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		result = ((tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg*) NIM_NIL);
		T12_.len = 0; T12_.p = NIM_NIL;
		T13_ = 0;
		colontmpD_ = renderTree__OOZOOZOOZcompilerZrenderer_u56(n_p1, T13_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		T12_ = rawNewString(colontmpD_.len + 16);
appendString((&T12_), TM__Furs9bKK6tVLoyofH3f4bRw_47);
appendString((&T12_), colontmpD_);
		colontmpD__2 = T12_;
		liMessage__OOZOOZOOZcompilerZmsgs_u1230(conf_p0, (*n_p1).info, ((tyEnum_TMsgKind__pCKnCkdazBSZAewKQ9a3R5g)17), colontmpD__2, ((tyEnum_TErrorHandling__TVDY9cjniDpHSXHIbcThXrQ)0), (&TM__Furs9bKK6tVLoyofH3f4bRw_48), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		{
			LA11_:;
		}
		{
			if (colontmpD__2.p && !(colontmpD__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD__2.p);
}
			if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*, applyFilter__OOZOOZOOZcompilerZsyntaxes_u144)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0, tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* n_p1, NimStringV2 filename_p2, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* stdin_p3) {
	tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* result;
	tyObject_TIdent__dfGofgHRLZgz9aF6YlFTsqg* colontmpD_;
	tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww f_1;
	tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* T2_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	colontmpD_ = NIM_NIL;
	colontmpD_ = getCallee__OOZOOZOOZcompilerZsyntaxes_u128((*p_p0).lex.config, n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	f_1 = getFilter__OOZOOZOOZcompilerZsyntaxes_u78(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T2_ = NIM_NIL;
	switch (f_1) {
	case ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)0):
	{
		eqcopy___OOZOOZOOZcompilerZllstream_u114(&result, stdin_p3, NIM_FALSE);
	}
	break;
	case ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)1):
	{
		result = filterTmpl__OOZOOZOOZcompilerZfilter95tmpl_u230((*p_p0).lex.config, stdin_p3, filename_p2, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)3):
	{
		result = filterStrip__OOZOOZOOZcompilerZfilters_u91((*p_p0).lex.config, stdin_p3, filename_p2, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)2):
	{
		result = filterReplace__OOZOOZOOZcompilerZfilters_u102((*p_p0).lex.config, stdin_p3, filename_p2, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	default: __builtin_unreachable();
	}
	{
		if (!!((f_1 == ((tyEnum_FilterKind__EJJC7BbDUp3ZQAQmo0dMww)0)))) goto LA9_;
		{
			if (!!(!(((*p_p0).lex.config == ((tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw*) NIM_NIL))))) goto LA13_;
			failedAssertImpl__stdZassertions_u95(TM__Furs9bKK6tVLoyofH3f4bRw_50);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA13_: ;
		{
			NIM_BOOL T17_;
			tySet_tyEnum_MsgFlag__R3GNIVpuNONyqBrVwryP9cw T20_;
			T17_ = (NIM_BOOL)0;
			T17_ = hasHint__OOZOOZOOZcompilerZoptions_u551((*p_p0).lex.config, ((tyEnum_TMsgKind__2JlKu3VCQMJAR9clVZDiMrQ)101));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!T17_) goto LA18_;
			liMessage__OOZOOZOOZcompilerZmsgs_u1230((*p_p0).lex.config, unknownLineInfo__OOZOOZOOZcompilerZlineinfos_u364, ((tyEnum_TMsgKind__pCKnCkdazBSZAewKQ9a3R5g)101), TM__Furs9bKK6tVLoyofH3f4bRw_52, ((tyEnum_TErrorHandling__TVDY9cjniDpHSXHIbcThXrQ)1), (&TM__Furs9bKK6tVLoyofH3f4bRw_53), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			T20_ = 0;
			msgWriteln__OOZOOZOOZcompilerZmsgs_u740((*p_p0).lex.config, (*result).s, T20_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			liMessage__OOZOOZOOZcompilerZmsgs_u1230((*p_p0).lex.config, unknownLineInfo__OOZOOZOOZcompilerZlineinfos_u364, ((tyEnum_TMsgKind__pCKnCkdazBSZAewKQ9a3R5g)102), TM__Furs9bKK6tVLoyofH3f4bRw_54, ((tyEnum_TErrorHandling__TVDY9cjniDpHSXHIbcThXrQ)1), (&TM__Furs9bKK6tVLoyofH3f4bRw_55), NIM_FALSE, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA18_: ;
	}
LA9_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___OOZOOZOOZcompilerZidents_u156(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ*, evalPipe__OOZOOZOOZcompilerZsyntaxes_u165)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0, tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* n_p1, NimStringV2 filename_p2, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* start_p3) {
	tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		if (!!(!(((*p_p0).lex.config == ((tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw*) NIM_NIL))))) goto LA3_;
		failedAssertImpl__stdZassertions_u95(TM__Furs9bKK6tVLoyofH3f4bRw_19);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	eqcopy___OOZOOZOOZcompilerZllstream_u114(&result, start_p3, NIM_FALSE);
	{
		if (!((*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)1))) goto LA7_;
		goto BeforeRet_;
	}
LA7_: ;
	{
		NIM_BOOL T11_;
		NIM_BOOL T12_;
		T11_ = (NIM_BOOL)0;
		T12_ = (NIM_BOOL)0;
		T12_ = ((*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)29));
		if (!(T12_)) goto LA13_;
		if (((TM__Furs9bKK6tVLoyofH3f4bRw_20[(NU)(((*n_p1).kind))>>3] &(1U<<((NU)(((*n_p1).kind))&7U)))!=0)) 		{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_22, dollar___OOZOOZOOZcompilerZnodekinds_u168((*n_p1).kind)); goto BeforeRet_;
		}
		if (((NI)0) < 0 || ((NI)0) >= (*n_p1)._kind_6.sons.len){ raiseIndexError2(((NI)0),(*n_p1)._kind_6.sons.len-1); goto BeforeRet_;
		}
		T12_ = ((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)2));
LA13_: ;
		T11_ = T12_;
		if (!(T11_)) goto LA14_;
		if (((TM__Furs9bKK6tVLoyofH3f4bRw_20[(NU)(((*n_p1).kind))>>3] &(1U<<((NU)(((*n_p1).kind))&7U)))!=0)) 		{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_23, dollar___OOZOOZOOZcompilerZnodekinds_u168((*n_p1).kind)); goto BeforeRet_;
		}
		if (((NI)0) < 0 || ((NI)0) >= (*n_p1)._kind_6.sons.len){ raiseIndexError2(((NI)0),(*n_p1)._kind_6.sons.len-1); goto BeforeRet_;
		}
		if (!(((TM__Furs9bKK6tVLoyofH3f4bRw_24[(NU)(((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind))>>3] &(1U<<((NU)(((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind))&7U)))!=0))) 		{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_26, dollar___OOZOOZOOZcompilerZnodekinds_u168((*(*n_p1)._kind_6.sons.p->data[((NI)0)]).kind)); goto BeforeRet_;
		}
		T11_ = eqStrings((*(*(*n_p1)._kind_6.sons.p->data[((NI)0)])._kind_5.ident).s, TM__Furs9bKK6tVLoyofH3f4bRw_28);
LA14_: ;
		if (!T11_) goto LA15_;
		{
			NI i_1;
			NI res_1;
			i_1 = (NI)0;
			res_1 = ((NI)1);
			{
				while (1) {
					NI TM__Furs9bKK6tVLoyofH3f4bRw_57;
					if (!(res_1 <= ((NI)2))) goto LA19;
					i_1 = ((NI) (res_1));
					{
						tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* T24_;
						if (((TM__Furs9bKK6tVLoyofH3f4bRw_20[(NU)(((*n_p1).kind))>>3] &(1U<<((NU)(((*n_p1).kind))&7U)))!=0)) 						{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_29, dollar___OOZOOZOOZcompilerZnodekinds_u168((*n_p1).kind)); goto BeforeRet_;
						}
						if (i_1 < 0 || i_1 >= (*n_p1)._kind_6.sons.len){ raiseIndexError2(i_1,(*n_p1)._kind_6.sons.len-1); goto BeforeRet_;
						}
						if (!((*(*n_p1)._kind_6.sons.p->data[i_1]).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)29))) goto LA22_;
						if (((TM__Furs9bKK6tVLoyofH3f4bRw_20[(NU)(((*n_p1).kind))>>3] &(1U<<((NU)(((*n_p1).kind))&7U)))!=0)) 						{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_30, dollar___OOZOOZOOZcompilerZnodekinds_u168((*n_p1).kind)); goto BeforeRet_;
						}
						if (i_1 < 0 || i_1 >= (*n_p1)._kind_6.sons.len){ raiseIndexError2(i_1,(*n_p1)._kind_6.sons.len-1); goto BeforeRet_;
						}
						T24_ = NIM_NIL;
						T24_ = evalPipe__OOZOOZOOZcompilerZsyntaxes_u165(p_p0, (*n_p1)._kind_6.sons.p->data[i_1], filename_p2, result);
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___OOZOOZOOZcompilerZllstream_u111(T24_); goto BeforeRet_;}
						eqsink___OOZOOZOOZcompilerZllstream_u122(&result, T24_);
					}
					goto LA20_;
LA22_: ;
					{
						tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* T26_;
						if (((TM__Furs9bKK6tVLoyofH3f4bRw_20[(NU)(((*n_p1).kind))>>3] &(1U<<((NU)(((*n_p1).kind))&7U)))!=0)) 						{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_56, dollar___OOZOOZOOZcompilerZnodekinds_u168((*n_p1).kind)); goto BeforeRet_;
						}
						if (i_1 < 0 || i_1 >= (*n_p1)._kind_6.sons.len){ raiseIndexError2(i_1,(*n_p1)._kind_6.sons.len-1); goto BeforeRet_;
						}
						T26_ = NIM_NIL;
						T26_ = applyFilter__OOZOOZOOZcompilerZsyntaxes_u144(p_p0, (*n_p1)._kind_6.sons.p->data[i_1], filename_p2, result);
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___OOZOOZOOZcompilerZllstream_u111(T26_); goto BeforeRet_;}
						eqsink___OOZOOZOOZcompilerZllstream_u122(&result, T26_);
					}
LA20_: ;
					if (nimAddInt(res_1, ((NI)1), &TM__Furs9bKK6tVLoyofH3f4bRw_57)) { raiseOverflow(); goto BeforeRet_;
					};
					res_1 = (NI)(TM__Furs9bKK6tVLoyofH3f4bRw_57);
				} LA19: ;
			}
		}
	}
	goto LA9_;
LA15_: ;
	{
		tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* T30_;
		if (!((*n_p1).kind == ((tyEnum_TNodeKind__Kq5ckzatEHB9a8r7P3H36fQ)115))) goto LA28_;
		if (((TM__Furs9bKK6tVLoyofH3f4bRw_20[(NU)(((*n_p1).kind))>>3] &(1U<<((NU)(((*n_p1).kind))&7U)))!=0)) 		{ raiseFieldErrorStr(TM__Furs9bKK6tVLoyofH3f4bRw_58, dollar___OOZOOZOOZcompilerZnodekinds_u168((*n_p1).kind)); goto BeforeRet_;
		}
		if (((NI)0) < 0 || ((NI)0) >= (*n_p1)._kind_6.sons.len){ raiseIndexError2(((NI)0),(*n_p1)._kind_6.sons.len-1); goto BeforeRet_;
		}
		T30_ = NIM_NIL;
		T30_ = evalPipe__OOZOOZOOZcompilerZsyntaxes_u165(p_p0, (*n_p1)._kind_6.sons.p->data[((NI)0)], filename_p2, result);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___OOZOOZOOZcompilerZllstream_u111(T30_); goto BeforeRet_;}
		eqsink___OOZOOZOOZcompilerZllstream_u122(&result, T30_);
	}
	goto LA9_;
LA28_: ;
	{
		tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* T32_;
		T32_ = NIM_NIL;
		T32_ = applyFilter__OOZOOZOOZcompilerZsyntaxes_u144(p_p0, n_p1, filename_p2, result);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___OOZOOZOOZcompilerZllstream_u111(T32_); goto BeforeRet_;}
		eqsink___OOZOOZOOZcompilerZllstream_u122(&result, T32_);
	}
LA9_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, openParser__OOZOOZOOZcompilerZsyntaxes_u205)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0, NI32 fileIdx_p1, tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* inputstream_p2, tyObject_IdentCachecolonObjectType___kM30JRennovNjSy87Q0tZg* cache_p3, tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* config_p4) {
	NimStringV2 filename_1;
	tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ* pipe_1;
	tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* s_1;
	tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* T6_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	filename_1.len = 0; filename_1.p = NIM_NIL;
	pipe_1 = NIM_NIL;
	s_1 = NIM_NIL;
	{
		if (!!(!((config_p4 == ((tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw*) NIM_NIL))))) goto LA4_;
		failedAssertImpl__stdZassertions_u95(TM__Furs9bKK6tVLoyofH3f4bRw_7);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA4_: ;
	filename_1 = toFullPathConsiderDirty__OOZOOZOOZcompilerZmsgs_u660(config_p4, fileIdx_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	pipe_1 = parsePipe__OOZOOZOOZcompilerZsyntaxes_u39(filename_1, inputstream_p2, cache_p3, config_p4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqcopy___OOZOOZOOZcompilerZoptions_u1943(&(*p_p0).lex.config, config_p4);
	T6_ = NIM_NIL;
	{
		if (!!((pipe_1 == ((tyObject_TNode__Ti48YnpfFPqIlDllc6ehaQ*) NIM_NIL)))) goto LA9_;
		s_1 = evalPipe__OOZOOZOOZcompilerZsyntaxes_u165(p_p0, pipe_1, filename_1, inputstream_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA7_;
LA9_: ;
	{
		eqcopy___OOZOOZOOZcompilerZllstream_u114(&s_1, inputstream_p2, NIM_FALSE);
	}
LA7_: ;
	openParser__OOZOOZOOZcompilerZparser_u119(p_p0, fileIdx_p1, s_1, cache_p3, config_p4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___OOZOOZOOZcompilerZllstream_u111(s_1);
		eqdestroy___OOZOOZOOZcompilerZast_u3270(pipe_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (filename_1.p && !(filename_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(filename_1.p);
}
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, setupParser__OOZOOZOOZcompilerZsyntaxes_u227)(tyObject_Parser__lxvmEiPLzhqFAB1Ndj4OXg* p_p0, NI32 fileIdx_p1, tyObject_IdentCachecolonObjectType___kM30JRennovNjSy87Q0tZg* cache_p2, tyObject_ConfigRefcolonObjectType___WEVIgmckGyO0Rv9cbVqxUQw* config_p3) {
	NIM_BOOL result;
	NimStringV2 filename_1;
	tyObject_TLLStream__SBuFBW9b2EpSkuka9b9cYZHgQ* colontmpD_;
	FILE* f_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	filename_1.len = 0; filename_1.p = NIM_NIL;
	colontmpD_ = NIM_NIL;
	filename_1 = toFullPathConsiderDirty__OOZOOZOOZcompilerZmsgs_u660(config_p3, fileIdx_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	f_1 = 0;
	{
		NIM_BOOL T4_;
		NimStringV2 colontmpD__2;
		NimStringV2 T8_;
		T4_ = (NIM_BOOL)0;
		T4_ = open__stdZsyncio_u413(&f_1, filename_1, ((tyEnum_FileMode__wjF0STQGT1PBuQEl3p0tng)0), ((NI)-1));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!(T4_)) goto LA5_;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		T8_.len = 0; T8_.p = NIM_NIL;
		T8_ = rawNewString(filename_1.len + 18);
appendString((&T8_), TM__Furs9bKK6tVLoyofH3f4bRw_3);
appendString((&T8_), filename_1);
		colontmpD__2 = T8_;
		liMessage__OOZOOZOOZcompilerZmsgs_u1230(config_p3, unknownLineInfo__OOZOOZOOZcompilerZlineinfos_u364, ((tyEnum_TMsgKind__pCKnCkdazBSZAewKQ9a3R5g)17), colontmpD__2, ((tyEnum_TErrorHandling__TVDY9cjniDpHSXHIbcThXrQ)1), (&TM__Furs9bKK6tVLoyofH3f4bRw_4), NIM_FALSE, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		result = NIM_FALSE;
		if (colontmpD__2.p && !(colontmpD__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD__2.p);
}
		eqdestroy___OOZOOZOOZcompilerZllstream_u111(colontmpD_);
		if (filename_1.p && !(filename_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(filename_1.p);
}
		goto BeforeRet_;
		{
			LA7_:;
		}
		{
			if (colontmpD__2.p && !(colontmpD__2.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD__2.p);
}
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA5_: ;
	colontmpD_ = llStreamOpen__OOZOOZOOZcompilerZllstream_u132(f_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	openParser__OOZOOZOOZcompilerZsyntaxes_u205(p_p0, fileIdx_p1, colontmpD_, cache_p2, config_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	result = NIM_TRUE;
	{
		LA1_:;
	}
	{
		eqdestroy___OOZOOZOOZcompilerZllstream_u111(colontmpD_);
		if (filename_1.p && !(filename_1.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(filename_1.p);
}
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
