/* Generated by Nim Compiler v1.6.14 */
#define NIM_INTBITS 64

#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
#define nimfr_(x, y)
#define nimln_(x, y)
typedef struct NimStringDesc NimStringDesc;
typedef struct TGenericSeq TGenericSeq;
typedef struct tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw;
typedef struct tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ;
typedef struct tySequence__U1GhxZcouR7SC9csuA1Iicg tySequence__U1GhxZcouR7SC9csuA1Iicg;
typedef struct tySequence__IeU9azYSNIK3V9b36Ir6NZcw tySequence__IeU9azYSNIK3V9b36Ir6NZcw;
typedef struct tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ;
typedef struct tySequence__ed0C0uAUZPhvw3RAc5hfYg tySequence__ed0C0uAUZPhvw3RAc5hfYg;
typedef struct tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag;
typedef struct tyObject_TSym__3r34mwqcVmg5JFNmiaVncw tyObject_TSym__3r34mwqcVmg5JFNmiaVncw;
typedef struct tyObject_Target__tpQT7iEuCtUPNwog9cc3VgA tyObject_Target__tpQT7iEuCtUPNwog9cc3VgA;
typedef struct tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA;
typedef struct tyObject_MsgConfig__whxq1VkHUSUyso71rqeLKA tyObject_MsgConfig__whxq1VkHUSUyso71rqeLKA;
typedef struct tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw;
typedef struct tySequence__mIo9bZUsotCEUUtEGNhYmaA tySequence__mIo9bZUsotCEUUtEGNhYmaA;
typedef struct tyObject_Table__9cHFtxtpgztIcDsypRz9byKw tyObject_Table__9cHFtxtpgztIcDsypRz9byKw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__8rKxBHaz7QqNR9a4WIZqqqQ tySequence__8rKxBHaz7QqNR9a4WIZqqqQ;
typedef struct tyObject_HashSet__LVIAeIp9cp9c81do0NZpv6Sw tyObject_HashSet__LVIAeIp9cp9c81do0NZpv6Sw;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
typedef struct tySequence__KLItBKQec3LJzPmfiYYfQA tySequence__KLItBKQec3LJzPmfiYYfQA;
typedef struct tyObject_SuggestcolonObjectType___VUPO9alfTq2Ar9a7ZtY9cSPDg tyObject_SuggestcolonObjectType___VUPO9alfTq2Ar9a7ZtY9cSPDg;
typedef struct tyObject_ProfileDatacolonObjectType___EiZfxxvPWlUmMsSkx8Qffg tyObject_ProfileDatacolonObjectType___EiZfxxvPWlUmMsSkx8Qffg;
typedef struct tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA;
typedef struct tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg;
typedef struct tyTuple__yxRvfrk1NAG5KBbg9bKqqWw tyTuple__yxRvfrk1NAG5KBbg9bKqqWw;
typedef struct TNimType TNimType;
typedef struct TNimNode TNimNode;
typedef struct tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g;
typedef struct tyObject_CellSeq__nav876ELHgxScHhs30CKiA tyObject_CellSeq__nav876ELHgxScHhs30CKiA;
typedef struct tyObject_GcHeap__ZRn9bWCksoiGwT2drZZzyWQ tyObject_GcHeap__ZRn9bWCksoiGwT2drZZzyWQ;
typedef struct tyObject_GcStack__qFeGMKlnq6c9cTM2vPWycQQ tyObject_GcStack__qFeGMKlnq6c9cTM2vPWycQQ;
typedef struct tyObject_MemRegion__6QRscFDo4mEwbg9aL76vDGQ tyObject_MemRegion__6QRscFDo4mEwbg9aL76vDGQ;
typedef struct tyObject_SmallChunk__eUrTKmsk1Dqt5tm2WUT2Lw tyObject_SmallChunk__eUrTKmsk1Dqt5tm2WUT2Lw;
typedef struct tyObject_BigChunk__39bC3HTk2w4NGDjG74oNjmA tyObject_BigChunk__39bC3HTk2w4NGDjG74oNjmA;
typedef struct tyObject_LLChunk__Fjkr5Ya6Zl0UoUGxG047hA tyObject_LLChunk__Fjkr5Ya6Zl0UoUGxG047hA;
typedef struct tyObject_IntSet__WrQriiGmHk59cB1lNPtGo6A tyObject_IntSet__WrQriiGmHk59cB1lNPtGo6A;
typedef struct tyObject_Trunk__Ju1AURWHenTn3cJwAjbUhg tyObject_Trunk__Ju1AURWHenTn3cJwAjbUhg;
typedef struct tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw;
typedef struct tyObject_HeapLinks__5IkCDh5QlsYpsfEMJf6zNw tyObject_HeapLinks__5IkCDh5QlsYpsfEMJf6zNw;
typedef struct tyTuple__p2vAp9cQ6YrpDq9cI3XzEDWA tyTuple__p2vAp9cQ6YrpDq9cI3XzEDWA;
typedef struct tyObject_GcStat__OG9ams3mtFJyICkjTOHbc9bg tyObject_GcStat__OG9ams3mtFJyICkjTOHbc9bg;
typedef struct tyObject_CellSet__A0mJvGLunfUxGkLUtesjdA tyObject_CellSet__A0mJvGLunfUxGkLUtesjdA;
typedef struct tyObject_PageDesc__N7tjEodqPVJaQ6oKQW8YfQ tyObject_PageDesc__N7tjEodqPVJaQ6oKQW8YfQ;
typedef struct tyObject_TIdObj__1qw9bcK4rZXhGbJEJhkKQFA tyObject_TIdObj__1qw9bcK4rZXhGbJEJhkKQFA;
typedef struct RootObj RootObj;
typedef struct tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg;
typedef struct tyObject_TLoc__CAJV4zTUpZwr0j6Wy8FiFw tyObject_TLoc__CAJV4zTUpZwr0j6Wy8FiFw;
typedef struct tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ;
typedef struct tyObject_TLib__W49cDqPTe2Tvc1mw7CVZOFg tyObject_TLib__W49cDqPTe2Tvc1mw7CVZOFg;
typedef struct tySequence__vKogasEnJSPhbQmA8r4Y9aA tySequence__vKogasEnJSPhbQmA8r4Y9aA;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyTuple__U3hs4iGgBd4Y9beL6zJV9boQ tyTuple__U3hs4iGgBd4Y9beL6zJV9boQ;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyObject_TFileInfo__2PBRRPxvvEH2sQ9cRi19bh7w tyObject_TFileInfo__2PBRRPxvvEH2sQ9cRi19bh7w;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef struct tyObject_Cfile__n9b2nVKiXbLpHsfkan9c3Rkw tyObject_Cfile__n9b2nVKiXbLpHsfkan9c3Rkw;
struct TGenericSeq {
NI len;
NI reserved;
};
struct NimStringDesc {
  TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
typedef NU16 tySet_tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA;
struct tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ {
NI indent;
NI lineLen;
NI col;
NI pos;
NI idx;
tySequence__U1GhxZcouR7SC9csuA1Iicg* tokens;
NimStringDesc* buf;
NI pendingNL;
NI pendingWhitespace;
tySequence__IeU9azYSNIK3V9b36Ir6NZcw* comStack;
tySet_tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA flags;
NIM_BOOL inGenericParams;
NIM_BOOL checkAnon;
NI inPragma;
NI32 fid;
tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config;
tySequence__ed0C0uAUZPhvw3RAc5hfYg* mangler;
};
typedef NU8 tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw;
struct tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag {
tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw kind;
NI16 length;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym;
};
typedef NU8 tyEnum_TBackend__zoooocqvga73vZuhGAAy6A;
typedef NU8 tyEnum_TSystemCPU__bwO2H8lhMFycb5BeZf6MFQ;
typedef NU8 tyEnum_TSystemOS__Vz6QOcCh9a6xfgXqmx3OBpw;
struct tyObject_Target__tpQT7iEuCtUPNwog9cc3VgA {
tyEnum_TSystemCPU__bwO2H8lhMFycb5BeZf6MFQ targetCPU;
tyEnum_TSystemCPU__bwO2H8lhMFycb5BeZf6MFQ hostCPU;
tyEnum_TSystemOS__Vz6QOcCh9a6xfgXqmx3OBpw targetOS;
tyEnum_TSystemOS__Vz6QOcCh9a6xfgXqmx3OBpw hostOS;
NI intSize;
NI floatSize;
NI ptrSize;
NimStringDesc* tnl;
};
typedef NU32 tySet_tyEnum_TOption__HPX9bEWraE8wyYLoP9bHbKYQ;
typedef NU64 tySet_tyEnum_TGlobalOption__WCvlY9b2UxZ4Fz8D59cE3YSg;
struct tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw {
NU16 line;
NI16 col;
NI32 fileIndex;
};
typedef NU8 tySet_tyEnum_TErrorOutput__AR9blT7YaZzdImck9a5cntbQ;
struct tyObject_Table__9cHFtxtpgztIcDsypRz9byKw {
tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
NI counter;
};
struct tyObject_MsgConfig__whxq1VkHUSUyso71rqeLKA {
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw trackPos;
NIM_BOOL trackPosAttached;
tySet_tyEnum_TErrorOutput__AR9blT7YaZzdImck9a5cntbQ errorOutputs;
tySequence__mIo9bZUsotCEUUtEGNhYmaA* msgContext;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw lastError;
tyObject_Table__9cHFtxtpgztIcDsypRz9byKw filenameToIndexTbl;
tySequence__8rKxBHaz7QqNR9a4WIZqqqQ* fileInfos;
NI32 systemFileIdx;
};
typedef NU8 tyEnum_FilenameOption__CPbjHbMoELnjs1sUwb4U6w;
typedef NU8 tyEnum_Command__9bV9cjzU2RVpin7yQI1gAZgg;
typedef NU8 tyEnum_TGCMode__yHeclYqeKaCEfMHNbcWn4w;
typedef NU8 tyEnum_ExceptionSystem__B9agvczdQhYbOz39atZ7Ap3Q;
typedef NU8 tyEnum_SymbolFilesOption__qvBr4umnK8GxeSOSEgbmLg;
struct tyObject_HashSet__LVIAeIp9cp9c81do0NZpv6Sw {
tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
NI counter;
};
typedef NU32 tySet_tyEnum_Feature__T2jOg7rgtA4lKTKRASHfHw;
typedef NU8 tySet_tyEnum_LegacyFeature__YfzcW9bRC8xGYaRkFXliJ2g;
typedef NU8 tyEnum_IdeCmd__p9ct5yRAwVUwh1wTpKTgABg;
typedef NU8 tyEnum_TSystemCC__DqbWIQj9a2XvtXkztox3VFQ;
typedef NU8 tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA[12];
struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
NI Field0;
NI Field1;
NI Field2;
};
typedef NU8 tySet_tyEnum_StdOrrKind__iRAzj081qUCWECwmGroJoA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___VUPO9alfTq2Ar9a7ZtY9cSPDg* result, void* ClE_0);
void* ClE_0;
} tyProc__Ox1WDSaSyO73VnvAC2a4UA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
void* ClE_0;
} tyProc__k2HFjxisIgDALbEUFojxaQ;
typedef NU8 tyEnum_Severity__ai6Qt9bTOrsyOxOrlIkRHUg;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, NimStringDesc* msg, tyEnum_Severity__ai6Qt9bTOrsyOxOrlIkRHUg severity, void* ClE_0);
void* ClE_0;
} tyProc__2bM7rNPFiQD9bOvwFI49bKLQ;
struct tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ {
tyEnum_TBackend__zoooocqvga73vZuhGAAy6A backend;
tyObject_Target__tpQT7iEuCtUPNwog9cc3VgA target;
NI linesCompiled;
tySet_tyEnum_TOption__HPX9bEWraE8wyYLoP9bHbKYQ options;
tySet_tyEnum_TGlobalOption__WCvlY9b2UxZ4Fz8D59cE3YSg globalOptions;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* macrosToExpand;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* arcToExpand;
tyObject_MsgConfig__whxq1VkHUSUyso71rqeLKA m;
tyEnum_FilenameOption__CPbjHbMoELnjs1sUwb4U6w filenameOption;
NimStringDesc* unitSep;
NI evalTemplateCounter;
NI evalMacroCounter;
NI8 exitcode;
tyEnum_Command__9bV9cjzU2RVpin7yQI1gAZgg cmd;
NimStringDesc* cmdInput;
NIM_BOOL projectIsCmd;
NIM_BOOL implicitCmd;
tyEnum_TGCMode__yHeclYqeKaCEfMHNbcWn4w selectedGC;
tyEnum_ExceptionSystem__B9agvczdQhYbOz39atZ7Ap3Q exc;
NIM_BOOL hintProcessingDots;
NI verbosity;
NI numberOfProcessors;
NF lastCmdTime;
tyEnum_SymbolFilesOption__qvBr4umnK8GxeSOSEgbmLg symbolFiles;
NI spellSuggestMax;
tyObject_HashSet__LVIAeIp9cp9c81do0NZpv6Sw cppDefines;
NimStringDesc* headerFile;
tySet_tyEnum_Feature__T2jOg7rgtA4lKTKRASHfHw features;
tySet_tyEnum_LegacyFeature__YfzcW9bRC8xGYaRkFXliJ2g legacyFeatures;
NimStringDesc* arguments;
tyEnum_IdeCmd__p9ct5yRAwVUwh1wTpKTgABg ideCmd;
NIM_BOOL oldNewlines;
tyEnum_TSystemCC__DqbWIQj9a2XvtXkztox3VFQ cCompiler;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA modifiedyNotes;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA cmdlineNotes;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA foreignPackageNotes;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA notes;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA warningAsErrors;
tySet_tyEnum_TMsgKind__rb52wmU1YxCKdMrEGfD9boA mainPackageNotes;
NI mainPackageId;
NI errorCounter;
NI hintCounter;
NI warnCounter;
NI errorMax;
NI maxLoopIterationsVM;
NIM_BOOL isVmTrace;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* configVars;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* symbols;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* packageCache;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
NimStringDesc* outFile;
NimStringDesc* outDir;
NimStringDesc* jsonBuildFile;
NimStringDesc* prefixDir;
NimStringDesc* libpath;
NimStringDesc* nimcacheDir;
tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* dllOverrides;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* moduleOverrides;
tyObject_StringTableObj__9aYeizX9bryvlooxqmPkPxqA* cfileSpecificOptions;
NimStringDesc* projectName;
NimStringDesc* projectPath;
NimStringDesc* projectFull;
NIM_BOOL projectIsStdin;
tySet_tyEnum_StdOrrKind__iRAzj081qUCWECwmGroJoA lastMsgWasDot;
NI32 projectMainIdx;
NI32 projectMainIdx2;
NimStringDesc* command;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
NimStringDesc* commandLine;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
NIM_BOOL keepComments;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
NimStringDesc* docSeeSrcUrl;
NimStringDesc* docRoot;
NimStringDesc* docCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
NimStringDesc* linkOptionsCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
NimStringDesc* linkOptions;
NimStringDesc* compileOptions;
NimStringDesc* cCompilerPath;
tySequence__KLItBKQec3LJzPmfiYYfQA* toCompile;
tyProc__Ox1WDSaSyO73VnvAC2a4UA suggestionResultHook;
NI suggestVersion;
NI suggestMaxResults;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw lastLineInfo;
tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
tyProc__2bM7rNPFiQD9bOvwFI49bKLQ structuredErrorHook;
NimStringDesc* cppCustomNamespace;
NimStringDesc* nimMainPrefix;
tyObject_ProfileDatacolonObjectType___EiZfxxvPWlUmMsSkx8Qffg* vmProfileData;
NIM_BOOL expandProgress;
NI expandLevels;
NimStringDesc* expandNodeResult;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw expandPosition;
};
typedef NU32 tySet_tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg;
typedef NU8 tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw;
struct tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw {
tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info;
tySet_tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg flags;
tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw kind;
union{
struct {NI64 intVal;
} _kind_1;
struct {NF floatVal;
} _kind_2;
struct {NimStringDesc* strVal;
} _kind_3;
struct {tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym;
} _kind_4;
struct {tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* ident;
} _kind_5;
struct {tySequence__IeU9azYSNIK3V9b36Ir6NZcw* sons;
} _kind_6;
};
};
typedef NU8 tySet_tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w;
struct tyTuple__yxRvfrk1NAG5KBbg9bKqqWw {
NI Field0;
tySet_tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w Field1;
};
typedef NU8 tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA;
typedef NU8 tyEnum_TNimKind__pspQAsqJLrw3jEKBD9bxmyQ;
typedef NU8 tySet_tyEnum_TNimTypeFlag__Yt5hq6z2IoHhKZrzIVrc1w;
typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
struct TNimType {
NI size;
NI align;
tyEnum_TNimKind__pspQAsqJLrw3jEKBD9bxmyQ kind;
tySet_tyEnum_TNimTypeFlag__Yt5hq6z2IoHhKZrzIVrc1w flags;
TNimType* base;
TNimNode* node;
void* finalizer;
tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
};
typedef NU8 tyEnum_TNimNodeKind__rrp49bl1h9aEkXfXp9bNg0yZw;
struct TNimNode {
tyEnum_TNimNodeKind__rrp49bl1h9aEkXfXp9bNg0yZw kind;
NI offset;
TNimType* typ;
NCSTRING name;
NI len;
TNimNode** sons;
};
struct tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g {
NI refcount;
TNimType* typ;
};
struct tyObject_GcStack__qFeGMKlnq6c9cTM2vPWycQQ {
void* bottom;
};
struct tyObject_CellSeq__nav876ELHgxScHhs30CKiA {
NI len;
NI cap;
tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g** d;
};
typedef tyObject_SmallChunk__eUrTKmsk1Dqt5tm2WUT2Lw* tyArray__1eFxjkcKGHnofywkmCV8oQ[256];
typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
typedef tyObject_BigChunk__39bC3HTk2w4NGDjG74oNjmA* tyArray__KxTmKT9a3kTkdwYfqXhEYSw[32];
typedef tyArray__KxTmKT9a3kTkdwYfqXhEYSw tyArray__ATT5LBefmjy9bg8ApRmg3rw[24];
typedef tyObject_Trunk__Ju1AURWHenTn3cJwAjbUhg* tyArray__RxhBwkGQwTHLKhoK685Xfg[256];
struct tyObject_IntSet__WrQriiGmHk59cB1lNPtGo6A {
tyArray__RxhBwkGQwTHLKhoK685Xfg data;
};
typedef tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw* tyArray__DrxDrI9bg9apB70ydOoNZrWw[2];
struct tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw {
tyArray__DrxDrI9bg9apB70ydOoNZrWw link;
NI key;
NI upperBound;
NI level;
};
struct tyTuple__p2vAp9cQ6YrpDq9cI3XzEDWA {
tyObject_BigChunk__39bC3HTk2w4NGDjG74oNjmA* Field0;
NI Field1;
};
typedef tyTuple__p2vAp9cQ6YrpDq9cI3XzEDWA tyArray__wsokuoa9bVBSU4gPLKbFaaw[30];
struct tyObject_HeapLinks__5IkCDh5QlsYpsfEMJf6zNw {
NI len;
tyArray__wsokuoa9bVBSU4gPLKbFaaw chunks;
tyObject_HeapLinks__5IkCDh5QlsYpsfEMJf6zNw* next;
};
struct tyObject_MemRegion__6QRscFDo4mEwbg9aL76vDGQ {
NI minLargeObj;
NI maxLargeObj;
tyArray__1eFxjkcKGHnofywkmCV8oQ freeSmallChunks;
NU32 flBitmap;
tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
tyArray__ATT5LBefmjy9bg8ApRmg3rw matrix;
tyObject_LLChunk__Fjkr5Ya6Zl0UoUGxG047hA* llmem;
NI currMem;
NI maxMem;
NI freeMem;
NI occ;
NI lastSize;
tyObject_IntSet__WrQriiGmHk59cB1lNPtGo6A chunkStarts;
tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw* root;
tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw* deleted;
tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw* last;
tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw* freeAvlNodes;
NIM_BOOL locked;
NIM_BOOL blockChunkSizeIncrease;
NI nextChunkSize;
tyObject_AvlNode__aGkK1t9a0WoXjpugXR6FWpw bottomData;
tyObject_HeapLinks__5IkCDh5QlsYpsfEMJf6zNw heapLinks;
};
struct tyObject_GcStat__OG9ams3mtFJyICkjTOHbc9bg {
NI stackScans;
NI cycleCollections;
NI maxThreshold;
NI maxStackSize;
NI maxStackCells;
NI cycleTableSize;
NI64 maxPause;
};
struct tyObject_CellSet__A0mJvGLunfUxGkLUtesjdA {
NI counter;
NI max;
tyObject_PageDesc__N7tjEodqPVJaQ6oKQW8YfQ* head;
tyObject_PageDesc__N7tjEodqPVJaQ6oKQW8YfQ** data;
};
struct tyObject_GcHeap__ZRn9bWCksoiGwT2drZZzyWQ {
tyObject_GcStack__qFeGMKlnq6c9cTM2vPWycQQ stack;
NI cycleThreshold;
NI zctThreshold;
tyObject_CellSeq__nav876ELHgxScHhs30CKiA zct;
tyObject_CellSeq__nav876ELHgxScHhs30CKiA decStack;
tyObject_CellSeq__nav876ELHgxScHhs30CKiA tempStack;
NI recGcLock;
tyObject_MemRegion__6QRscFDo4mEwbg9aL76vDGQ region;
tyObject_GcStat__OG9ams3mtFJyICkjTOHbc9bg stat;
tyObject_CellSet__A0mJvGLunfUxGkLUtesjdA marked;
tyObject_CellSeq__nav876ELHgxScHhs30CKiA additionalRoots;
NI gcThreadId;
};
struct tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg {
NI id;
NimStringDesc* s;
tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* next;
NI h;
};
struct RootObj {
TNimType* m_type;
};
struct tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg {
NI32 module;
NI32 item;
};
struct tyObject_TIdObj__1qw9bcK4rZXhGbJEJhkKQFA {
  RootObj Sup;
tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg itemId;
};
typedef NU8 tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw;
typedef NU16 tyEnum_TMagic__3qAy6bDUDlF8Fc2RR6pF9ag;
typedef NU64 tySet_tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA;
typedef NU8 tyEnum_TLocKind__pD6N6rEUmrrqJbKE02Sezw;
typedef NU8 tyEnum_TStorageLoc__JIS9cieRcL9cZccyO9bM9aBmFQ;
typedef NU16 tySet_tyEnum_TLocFlag__Ic4ywZl9cdJtKSUkG4WZfHw;
struct tyObject_TLoc__CAJV4zTUpZwr0j6Wy8FiFw {
tyEnum_TLocKind__pD6N6rEUmrrqJbKE02Sezw k;
tyEnum_TStorageLoc__JIS9cieRcL9cZccyO9bM9aBmFQ storage;
tySet_tyEnum_TLocFlag__Ic4ywZl9cdJtKSUkG4WZfHw flags;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* lode;
tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ* r;
};
struct tyObject_TSym__3r34mwqcVmg5JFNmiaVncw {
  tyObject_TIdObj__1qw9bcK4rZXhGbJEJhkKQFA Sup;
tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw kind;
union{
struct {tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* gcUnsafetyReason;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* transformedBody;
} _kind_1;
struct {tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* guard;
NI bitsize;
NI alignment;
} _kind_2;
};
tyEnum_TMagic__3qAy6bDUDlF8Fc2RR6pF9ag magic;
tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ;
tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* name;
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* owner;
tySet_tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA flags;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* ast;
tySet_tyEnum_TOption__HPX9bEWraE8wyYLoP9bHbKYQ options;
NI position;
NI offset;
tyObject_TLoc__CAJV4zTUpZwr0j6Wy8FiFw loc;
tyObject_TLib__W49cDqPTe2Tvc1mw7CVZOFg* annex;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* constraint;
};
typedef NU8 tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg;
typedef NU8 tyEnum_TCallingConvention__5kpSva5OFmGFHujbio7C9cg;
typedef NU64 tySet_tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw;
struct tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA {
  tyObject_TIdObj__1qw9bcK4rZXhGbJEJhkKQFA Sup;
tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg kind;
tyEnum_TCallingConvention__5kpSva5OFmGFHujbio7C9cg callConv;
tySet_tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw flags;
tySequence__vKogasEnJSPhbQmA8r4Y9aA* sons;
tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* owner;
tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym;
NI64 size;
NI16 align;
NI16 paddingAtEnd;
NI16 lockLevel;
tyObject_TLoc__CAJV4zTUpZwr0j6Wy8FiFw loc;
tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typeInst;
tyObject_ItemId__wg9aowaxscbUe2F0nV9btZLg uniqueId;
};
typedef NU8 tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA;
typedef NU8 tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
NimStringDesc* Field0;
NI Field1;
NI Field2;
};
typedef NU8 tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw;
typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
typedef NimStringDesc* tyArray__sMpvt1sOxOJ3LFGulnbeMQ[4];
typedef NimStringDesc* tyArray__Re75IspeoxXy2oCZHwcRrA[2];
typedef NU8 tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q;
typedef NU8 tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w;
typedef NU8 tyEnum_FileMode__l9cwNsPPKSvz36rQZGh2S7w;
typedef NU8 tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ;
typedef NU8 tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w;
struct tyTuple__U3hs4iGgBd4Y9beL6zJV9boQ {
tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw Field0;
NimStringDesc* Field1;
};
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
NI Field0;
NimStringDesc* Field1;
NI32 Field2;
};
struct tyObject_TFileInfo__2PBRRPxvvEH2sQ9cRi19bh7w {
NimStringDesc* fullPath;
NimStringDesc* projPath;
NimStringDesc* shortName;
tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ* quotedName;
tyObject_RopeObj__vUl1aIPQxBiroOuyvqu9bZQ* quotedFullName;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
NimStringDesc* dirtyFile;
NimStringDesc* hash;
NIM_BOOL dirty;
};
struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
NI Field0;
NimStringDesc* Field1;
};
typedef NU8 tySet_tyEnum_CfileFlag__S5Qo9byZG8QnIQnJQ0ZDWrA;
struct tyObject_Cfile__n9b2nVKiXbLpHsfkan9c3Rkw {
NimStringDesc* nimname;
NimStringDesc* cname;
NimStringDesc* obj;
tySet_tyEnum_CfileFlag__S5Qo9byZG8QnIQnJQ0ZDWrA flags;
NimStringDesc* customArgs;
};
struct tySequence__IeU9azYSNIK3V9b36Ir6NZcw {
  TGenericSeq Sup;
  tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* data[SEQ_DECL_SIZE];
};
struct tySequence__U1GhxZcouR7SC9csuA1Iicg {
  TGenericSeq Sup;
  tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag data[SEQ_DECL_SIZE];
};
struct tySequence__ed0C0uAUZPhvw3RAc5hfYg {
  TGenericSeq Sup;
  tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* data[SEQ_DECL_SIZE];
};
struct tySequence__mIo9bZUsotCEUUtEGNhYmaA {
  TGenericSeq Sup;
  tyTuple__U3hs4iGgBd4Y9beL6zJV9boQ data[SEQ_DECL_SIZE];
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  TGenericSeq Sup;
  tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
};
struct tySequence__8rKxBHaz7QqNR9a4WIZqqqQ {
  TGenericSeq Sup;
  tyObject_TFileInfo__2PBRRPxvvEH2sQ9cRi19bh7w data[SEQ_DECL_SIZE];
};
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
  TGenericSeq Sup;
  tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
};
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  TGenericSeq Sup;
  NimStringDesc* data[SEQ_DECL_SIZE];
};
struct tySequence__KLItBKQec3LJzPmfiYYfQA {
  TGenericSeq Sup;
  tyObject_Cfile__n9b2nVKiXbLpHsfkan9c3Rkw data[SEQ_DECL_SIZE];
};
struct tySequence__vKogasEnJSPhbQmA8r4Y9aA {
  TGenericSeq Sup;
  tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* data[SEQ_DECL_SIZE];
};
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
N_LIB_PRIVATE N_NIMCALL(void, initSrcGen__renderer_101)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tySet_tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA renderFlags, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config);
N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
N_LIB_PRIVATE N_NIMCALL(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ*, newPartialConfigRef__options_2528)(void);
N_LIB_PRIVATE N_NIMCALL(void, gstmts__renderer_1023)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c, NIM_BOOL doIndent);
N_LIB_PRIVATE N_NIMCALL(void, indentNL__renderer_212)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g);
static N_INLINE(NI, len__ast_3155)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, optNL__renderer_208)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b);
N_LIB_PRIVATE N_NIMCALL(void, optNL__renderer_206)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g);
N_LIB_PRIVATE N_NIMCALL(void, optNL__renderer_203)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, NI indent);
N_LIB_PRIVATE N_NIMCALL(void, gsub__renderer_856)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NIM_BOOL fromStmtList);
N_LIB_PRIVATE N_NIMCALL(void, initContext__renderer_849)(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw* c);
N_LIB_PRIVATE N_NIMCALL(void, gsub__renderer_851)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c, NIM_BOOL fromStmtList);
static N_INLINE(NIM_BOOL, shouldRenderComment__renderer_383)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
static N_INLINE(NIM_BOOL, shouldRenderComment__renderer_371)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, comment__ast_997)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, pushCom__renderer_346)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
static N_INLINE(void, X5BX5Deq___renderer_356)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** s, NI sLen_0, NI i, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* x);
N_LIB_PRIVATE N_NIMCALL(void, put__renderer_235)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw kind, NimStringDesc* s, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym);
N_LIB_PRIVATE N_NIMCALL(void, addPendingNL__renderer_166)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g);
N_LIB_PRIVATE N_NIMCALL(void, addTok__renderer_140)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw kind, NimStringDesc* s, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
static N_NIMCALL(void, Marker_tySequence__U1GhxZcouR7SC9csuA1Iicg)(void* p, NI op);
static N_INLINE(void, asgnRef)(void** dest, void* src);
static N_INLINE(void, incRef__system_5311)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c);
static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
static N_INLINE(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*, usrToCell__system_5273)(void* usr);
static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
static N_INLINE(void, decRef__system_5318)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c);
static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
static N_INLINE(void, rtlAddZCT__system_5316)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c);
N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5267)(tyObject_CellSeq__nav876ELHgxScHhs30CKiA* s, tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c);
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
static N_INLINE(void, copyMem__system_1733)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
static N_INLINE(NimStringDesc*, spaces__pureZstrutils_1029)(NI n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuRepeatChar)(NIM_CHAR c, NI count);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, atom__renderer_504)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, addQuoted__pureZos_449)(NimStringDesc** s, NimStringDesc* x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuReplaceStr)(NimStringDesc* s, NimStringDesc* sub, NimStringDesc* by);
static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
static N_INLINE(void, addEscapedChar__system_7486)(NimStringDesc** s, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, litAux__renderer_425)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI64 x, NI size);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*, skip__renderer_431)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t);
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*, lastSon__ast_3731)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* n);
static N_INLINE(NI, safeLen__ast_3148)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuToBin)(NI64 x, NI len);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuToOct)(NI64 x, NI len);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toHex__renderer_477)(NI64 x, NI len);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_6)(NI64 x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, ulitAux__renderer_482)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI64 x, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_9)(NU64 x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___system_3126)(NF x);
N_LIB_PRIVATE N_NIMCALL(void, internalErrorImpl__msgs_1441)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, NimStringDesc* errMsg, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
N_LIB_PRIVATE N_NIMCALL(void, gident__renderer_1307)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NI, disamb__renderer_49)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
static N_INLINE(NIM_BOOL, equalMem__system_1741)(void* a, void* b, NI size);
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x);
N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_167)(NimStringDesc** result, NI64 x);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, lastSon__ast_4833)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, accentedName__renderer_1477)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
static N_INLINE(tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg*, getPIdent__ast_3060)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a);
static N_INLINE(NIM_BOOL, eqeq___idents_229)(tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* a, tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* b);
N_LIB_PRIVATE N_NIMCALL(void, gcomma__renderer_963)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI start, NI theEnd);
N_LIB_PRIVATE N_NIMCALL(void, gcommaAux__renderer_911)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI ind, NI start, NI theEnd, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw separator);
N_LIB_PRIVATE N_NIMCALL(NI, lsub__renderer_422)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsNL__renderer_338)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NI, lcomma__renderer_559)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI start, NI theEnd);
N_LIB_PRIVATE N_NIMCALL(NI, lsons__renderer_594)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI start, NI theEnd);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, fits__renderer_821)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, NI x);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isHideable__renderer_889)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
static N_INLINE(NIM_BOOL, contains__stdZenumutils_44)(NimStringDesc** a, NI aLen_0, NimStringDesc* item);
static N_INLINE(NI, find__stdZenumutils_49)(NimStringDesc** a, NI aLen_0, NimStringDesc* item);
N_LIB_PRIVATE N_NIMCALL(void, putWithSpace__renderer_885)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw kind, NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasCom__renderer_870)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gcoms__renderer_403)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g);
N_LIB_PRIVATE N_NIMCALL(void, gcom__renderer_387)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
static N_INLINE(NIM_CHAR*, X5BX5D___system_7363)(NimStringDesc** s, NI i);
N_LIB_PRIVATE N_NIMCALL(NI, maxLineLength__renderer_289)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(void, putComment__renderer_256)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(void, popAllComs__renderer_364)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g);
N_LIB_PRIVATE N_NIMCALL(void, gsub__renderer_1413)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI i);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
N_LIB_PRIVATE N_NIMCALL(tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q, bracketKind__renderer_1433)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gcomma__renderer_951)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c, NI start, NI theEnd);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isCustomLit__renderer_1531)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
static N_INLINE(NIM_BOOL, startsWith__pureZstrutils_1246)(NimStringDesc* s, NIM_CHAR prefix);
N_LIB_PRIVATE N_NIMCALL(void, doParamsAux__renderer_1398)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* params);
N_LIB_PRIVATE N_NIMCALL(void, gsemicolon__renderer_969)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI start, NI theEnd);
N_LIB_PRIVATE N_NIMCALL(void, infixArgument__renderer_1494)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI i);
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, skipHiddenNodes__renderer_1454)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NI, getPrecedence__lexer_1794)(tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* ident);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isKeyword__renderer_73)(tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* i);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isAlpha__renderer_1838)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getStrVal__renderer_1835)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gcond__renderer_1053)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gsons__renderer_975)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c, NI start, NI theEnd);
N_LIB_PRIVATE N_NIMCALL(void, dedent__renderer_218)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g);
N_LIB_PRIVATE N_NIMCALL(void, putNL__renderer_201)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g);
N_LIB_PRIVATE N_NIMCALL(void, putNL__renderer_169)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, NI indent);
N_LIB_PRIVATE N_NIMCALL(void, gif__renderer_1064)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, longMode__renderer_1008)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI start, NI theEnd);
N_LIB_PRIVATE N_NIMCALL(void, gwhile__renderer_1087)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gpragmaBlock__renderer_1107)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gcase__renderer_1156)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gtry__renderer_1118)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gfor__renderer_1128)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gblock__renderer_1267)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gstaticStmt__renderer_1289)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gasm__renderer_1299)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gproc__renderer_1205)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderDefinitionName__renderer_88)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s, NIM_BOOL noQuotes);
static N_INLINE(void, genSymSuffix__renderer_1192)(NimStringDesc** result, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s);
N_LIB_PRIVATE N_NIMCALL(void, gpattern__renderer_1098)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(void, gsection__renderer_990)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw kind, NimStringDesc* k);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasExplicitParams__renderer_2062)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* gp);
N_LIB_PRIVATE N_NIMCALL(void, gTypeClassTy__renderer_1259)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderTree__renderer_46)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tySet_tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA renderFlags);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, open__systemZio_389)(FILE** f, NimStringDesc* filename, tyEnum_FileMode__l9cwNsPPKSvz36rQZGh2S7w mode, NI bufSize);
N_LIB_PRIVATE N_NIMCALL(void, write__systemZio_205)(FILE* f, NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(void, close__systemZio_217)(FILE* f);
N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_1128)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf, tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw info, tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ msg, NimStringDesc* arg, tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7745)(NimStringDesc* s, NI first, NI last);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_2, "<nil tree>", 10);
extern TNimType NTItnodeseq__IeU9azYSNIK3V9b36Ir6NZcw_;
N_LIB_PRIVATE TNimType NTItrendertok__z9cSoNPqXol8GydNVfj7f9ag_;
extern TNimType NTItoktype__jtO8nsEQZ3q9auoz8Uy0Ohw_;
extern TNimType NTIint4954__kDPg4wXyR8DDyA0MeEjIsw_;
extern TNimType NTIpsym__u9bhQvrOYyAS9bCQ6gt41GOQ_;
N_LIB_PRIVATE TNimType NTItrendertokseq__U1GhxZcouR7SC9csuA1Iicg_;
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_4, "\012", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_5, "r\"", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_6, "\"", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_7, "\"\"", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_8, "\"\"\"", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_9, "\'", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_10, "\\a", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_11, "\\b", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_12, "\\t", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_13, "\\n", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_14, "\\v", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_15, "\\f", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_16, "\\r", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_17, "\\e", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_18, "\\\\", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_19, "\\\'", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_20, "\\\"", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_21, "\\x", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_22, "0123456789ABCDEF", 16);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_23, "0b", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_24, "0o", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_25, "0x", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_26, "\'i8", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_27, "\'i16", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_28, "\'i32", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_29, "\'i64", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_30, "\'u", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_31, "\'u8", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_32, "\'u16", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_33, "\'u32", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_34, "\'u64", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_35, "\'f32", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_36, "\'f64", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_37, "nil", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_38, "[type node]", 11);
extern NIM_CONST tyObject_TLineInfo__66OQV9bsmGEfS6hVHBswcPw unknownLineInfo__lineinfos_284;
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_39, "renderer.atom ", 14);
extern TNimType NTItnodekind__clSgDh22o9au33BrVH9bDQZw_;
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_41, "/home/runner/work/nightlies/nightlies/nim/compiler/renderer.nim", 63);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__edlVk3rimVQxtoXNQ77Dhw_40 = {((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_41),
((NI) 416),
((NI) 17)}
;
extern TNimType NTIseqLpsymT__ed0C0uAUZPhvw3RAc5hfYg_;
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_42, "_cursor", 7);
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__edlVk3rimVQxtoXNQ77Dhw_43 = {
0x00, 0x00, 0x00, 0x00, 0xf2, 0xec, 0x00, 0xf4,
0x01, 0x00, 0x00, 0x58, 0x00, 0x00, 0x00, 0x58,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
;
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_44, "`", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_45, "(", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_47, "raises", 6);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_48, "tags", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_49, "extern", 6);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_50, "deprecated", 10);
static NIM_CONST tyArray__sMpvt1sOxOJ3LFGulnbeMQ TM__edlVk3rimVQxtoXNQ77Dhw_46 = {((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_47),
((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_48),
((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_49),
((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_50)}
;
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_52, "gcsafe", 6);
static NIM_CONST tyArray__Re75IspeoxXy2oCZHwcRrA TM__edlVk3rimVQxtoXNQ77Dhw_51 = {((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_52),
((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_50)}
;
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_53, " ", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_54, "## ", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_55, ")", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_56, ":", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_57, "do", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_58, "<<", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_59, "th child missing for ", 21);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_60, " >>", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_61, "[]", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_62, "[]=", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_63, "{}", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_64, "{}=", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_65, "[", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_66, "]", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_67, "=", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_68, "{", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_69, "}", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_70, "(wrong conv)", 12);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_71, "cast", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_72, "addr", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_73, "static", 6);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_74, ",", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_75, "chckRangeF", 10);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_76, "chckRange64", 11);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_77, "chckRange", 9);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_78, "|", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_79, ".", 1);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_80, "|...)", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_81, "bind", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_82, "proc", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_83, "->", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_84, "..", 2);
static NIM_CONST tyArray__Re75IspeoxXy2oCZHwcRrA TM__edlVk3rimVQxtoXNQ77Dhw_85 = {((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67),
((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_9)}
;
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_86, "if", 2);
static NIM_CONST tyTuple__yxRvfrk1NAG5KBbg9bKqqWw TM__edlVk3rimVQxtoXNQ77Dhw_87 = {((NI) 0),
0}
;
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_88, " elif", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_89, " else", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_90, "typeof", 6);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_91, "ref", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_92, "ptr", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_93, "var", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_94, "distinct", 8);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_95, " with", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_96, " without", 8);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_97, "object", 6);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_98, "of", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_99, "iterator", 8);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_100, "enum", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_101, "when", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_102, "while", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_103, "case", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_104, "try", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_105, "for", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_106, "in", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_107, "block", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_108, "asm", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_109, "func", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_110, "converter", 9);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_111, "method", 6);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_112, "macro", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_113, "template", 8);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_114, "type", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_115, "const", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_116, "let", 3);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_117, "using", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_118, "return", 6);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_119, "raise", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_120, "yield", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_121, "discard", 7);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_122, "break", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_123, "continue", 8);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_124, "{.", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_125, ".}", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_126, "import", 6);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_127, "export", 6);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_128, "except", 6);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_129, "from", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_130, "include", 7);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_131, "as", 2);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_132, "mixin", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_133, "elif", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_134, "else", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_135, "finally", 7);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_136, "defer", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_137, "tuple", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_138, "(ComesFrom|", 11);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_139, "goto", 4);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_140, "state", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_141, "breakstate", 10);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_142, "concept", 7);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_143, "error", 5);
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_144, "renderer.gsub(", 14);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__edlVk3rimVQxtoXNQ77Dhw_145 = {((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_41),
((NI) 1705),
((NI) 17)}
;
STRING_LITERAL(TM__edlVk3rimVQxtoXNQ77Dhw_146, "cannot open file: ", 18);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__edlVk3rimVQxtoXNQ77Dhw_147 = {((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_41),
((NI) 1743),
((NI) 14)}
;
extern tyObject_GcHeap__ZRn9bWCksoiGwT2drZZzyWQ gch__system_5220;
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a, v, ((size_t) (size)));
}
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
	nimSetMem__systemZmemory_7(p, ((int) 0), size);
}
N_LIB_PRIVATE N_NIMCALL(void, initSrcGen__renderer_101)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tySet_tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA renderFlags, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config) {
	unsureAsgnRef((void**) (&(*g).comStack), NIM_NIL);
	unsureAsgnRef((void**) (&(*g).tokens), NIM_NIL);
	(*g).indent = ((NI) 0);
	(*g).lineLen = ((NI) 0);
	(*g).pos = ((NI) 0);
	(*g).idx = ((NI) 0);
	unsureAsgnRef((void**) (&(*g).buf), ((NimStringDesc*) NIM_NIL));
	(*g).flags = renderFlags;
	(*g).pendingNL = ((NI) -1);
	(*g).pendingWhitespace = ((NI) -1);
	(*g).inGenericParams = NIM_FALSE;
	unsureAsgnRef((void**) (&(*g).config), config);
}
N_LIB_PRIVATE N_NIMCALL(void, indentNL__renderer_212)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g) {
	(*g).indent += ((NI) 2);
	(*g).pendingNL = (*g).indent;
	(*g).lineLen = (*g).indent;
}
static N_INLINE(NI, len__ast_3155)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NI result;
	NI T1_;
	result = (NI)0;
	T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, optNL__renderer_208)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* b) {
	(*g).pendingNL = (*g).indent;
	(*g).lineLen = (*g).indent;
	(*g).col = (*g).indent;
}
N_LIB_PRIVATE N_NIMCALL(void, optNL__renderer_203)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, NI indent) {
	(*g).pendingNL = indent;
	(*g).lineLen = indent;
	(*g).col = (*g).indent;
}
N_LIB_PRIVATE N_NIMCALL(void, optNL__renderer_206)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g) {
	optNL__renderer_203(g, (*g).indent);
}
N_LIB_PRIVATE N_NIMCALL(void, initContext__renderer_849)(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw* c) {
	(*c).Field0 = ((NI) 0);
	(*c).Field1 = 0;
}
static N_INLINE(NIM_BOOL, shouldRenderComment__renderer_371)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T1_ = !((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 2))&15U)))!=0));
	if (T1_) goto LA2_;
	T1_ = (((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 3))&15U)))!=0);
	LA2_: ;
	result = T1_;
	return result;
}
static N_INLINE(NIM_BOOL, shouldRenderComment__renderer_383)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NimStringDesc* T3_;
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T1_ = shouldRenderComment__renderer_371(g);
	if (!(T1_)) goto LA2_;
	T3_ = NIM_NIL;
	T3_ = comment__ast_997(n);
	T1_ = (((NI) 0) < (T3_ ? T3_->Sup.len : 0));
	LA2_: ;
	result = T1_;
	return result;
}
static N_INLINE(void, X5BX5Deq___renderer_356)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw** s, NI sLen_0, NI i, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* x) {
	unsureAsgnRef((void**) (&s[(NI)(sLen_0 - i)]), x);
}
N_LIB_PRIVATE N_NIMCALL(void, pushCom__renderer_346)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NI T1_;
	T1_ = ((*g).comStack ? (*g).comStack->Sup.len : 0);
	unsureAsgnRef((void**) (&(*g).comStack), (tySequence__IeU9azYSNIK3V9b36Ir6NZcw*) setLengthSeqV2(((*g).comStack)?&((*g).comStack)->Sup:NIM_NIL, (&NTItnodeseq__IeU9azYSNIK3V9b36Ir6NZcw_), ((NI) ((NI)(T1_ + ((NI) 1))))));
	X5BX5Deq___renderer_356(((*g).comStack) ? ((*g).comStack->data) : NIM_NIL, ((*g).comStack ? (*g).comStack->Sup.len : 0), ((NI) 1), n);
}
static N_NIMCALL(void, Marker_tySequence__U1GhxZcouR7SC9csuA1Iicg)(void* p, NI op) {
	tySequence__U1GhxZcouR7SC9csuA1Iicg* a;
	NI T1_;
	a = (tySequence__U1GhxZcouR7SC9csuA1Iicg*)p;
	T1_ = (NI)0;
	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
	nimGCvisit((void*)a->data[T1_].sym, op);
	}
}
static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
	NI result;
	result = (NI)0;
	result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
	return result;
}
static N_INLINE(void, incRef__system_5311)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c) {
	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
}
static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
	NI result;
	result = (NI)0;
	result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
	return result;
}
static N_INLINE(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*, usrToCell__system_5273)(void* usr) {
	tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* result;
	NI T1_;
	result = (tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*)0;
	T1_ = (NI)0;
	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
	result = ((tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*) (T1_));
	return result;
}
static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
	return result;
}
static N_INLINE(void, rtlAddZCT__system_5316)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c) {
	addZCT__system_5267((&gch__system_5220.zct), c);
}
static N_INLINE(void, decRef__system_5318)(tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* c) {
	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
		if (!T3_) goto LA4_;
		rtlAddZCT__system_5316(c);
	}
	LA4_: ;
}
static N_INLINE(void, asgnRef)(void** dest, void* src) {
	{
		tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* T5_;
		if (!!((src == NIM_NIL))) goto LA3_;
		T5_ = (tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*)0;
		T5_ = usrToCell__system_5273(src);
		incRef__system_5311(T5_);
	}
	LA3_: ;
	{
		tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g* T10_;
		if (!!(((*dest) == NIM_NIL))) goto LA8_;
		T10_ = (tyObject_Cell__nhn83Yf9cX7rcmG5W9b4oa6g*)0;
		T10_ = usrToCell__system_5273((*dest));
		decRef__system_5318(T10_);
	}
	LA8_: ;
	(*dest) = src;
}
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest, source, ((size_t) (size)));
}
static N_INLINE(void, copyMem__system_1733)(void* dest, void* source, NI size) {
	nimCopyMem(dest, source, size);
}
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
	{
		if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
		copyMem__system_1733(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
		(*dest).Sup.len += (*src).Sup.len;
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addTok__renderer_140)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw kind, NimStringDesc* s, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym) {
	tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag T1_;
	NI T2_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag));
	nimZeroMem((void*)(&T1_), sizeof(tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag));
	T1_.kind = kind;
	T1_.length = ((NI16) ((s ? s->Sup.len : 0)));
	T1_.sym = sym;
	unsureAsgnRef((void**) (&(*g).tokens), (tySequence__U1GhxZcouR7SC9csuA1Iicg*) incrSeqV3((TGenericSeq*)((*g).tokens), (&NTItrendertokseq__U1GhxZcouR7SC9csuA1Iicg_)));
	T2_ = (*g).tokens->Sup.len++;
	(*g).tokens->data[T2_].kind = T1_.kind;
	(*g).tokens->data[T2_].length = T1_.length;
	asgnRef((void**) (&(*g).tokens->data[T2_].sym), T1_.sym);
	unsureAsgnRef((void**) (&(*g).buf), resizeString((*g).buf, (s ? s->Sup.len : 0) + 0));
appendString((*g).buf, s);
	{
		if (!!((kind == ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113)))) goto LA5_;
		(*g).col += (s ? s->Sup.len : 0);
	}
	LA5_: ;
}
static N_INLINE(NimStringDesc*, spaces__pureZstrutils_1029)(NI n) {
	NimStringDesc* result;
	result = NIM_NIL;
	result = nsuRepeatChar(32, n);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addPendingNL__renderer_166)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g) {
	{
		NimStringDesc* T5_;
		NimStringDesc* T6_;
		if (!(((NI) 0) <= (*g).pendingNL)) goto LA3_;
		T5_ = NIM_NIL;
		T6_ = NIM_NIL;
		T6_ = spaces__pureZstrutils_1029(((NI) ((*g).pendingNL)));
		T5_ = rawNewString((T6_ ? T6_->Sup.len : 0) + 1);
appendString(T5_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_4));
appendString(T5_, T6_);
		addTok__renderer_140(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), T5_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		(*g).lineLen = (*g).pendingNL;
		(*g).col = (*g).pendingNL;
		(*g).pendingNL = ((NI) -1);
		(*g).pendingWhitespace = ((NI) -1);
	}
	goto LA1_;
	LA3_: ;
	{
		NimStringDesc* T10_;
		if (!(((NI) 0) <= (*g).pendingWhitespace)) goto LA8_;
		T10_ = NIM_NIL;
		T10_ = spaces__pureZstrutils_1029(((NI) ((*g).pendingWhitespace)));
		addTok__renderer_140(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), T10_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		(*g).pendingWhitespace = ((NI) -1);
	}
	goto LA1_;
	LA8_: ;
	LA1_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, put__renderer_235)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw kind, NimStringDesc* s, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* sym) {
	{
		if (!!((kind == ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113)))) goto LA3_;
		addPendingNL__renderer_166(g);
		{
			NIM_BOOL T7_;
			T7_ = (NIM_BOOL)0;
			T7_ = (((NI) 0) < (s ? s->Sup.len : 0));
			if (T7_) goto LA8_;
			T7_ = (kind == ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 117) || kind == ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 118));
			LA8_: ;
			if (!T7_) goto LA9_;
			addTok__renderer_140(g, kind, s, sym);
		}
		LA9_: ;
	}
	goto LA1_;
	LA3_: ;
	{
		(*g).pendingWhitespace = (s ? s->Sup.len : 0);
		(*g).col += (s ? s->Sup.len : 0);
	}
	LA1_: ;
	(*g).lineLen += (s ? s->Sup.len : 0);
}
static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c) {
	(*dest).data[(*dest).Sup.len] = c;
	(*dest).data[(NI)((*dest).Sup.len + ((NI) 1))] = 0;
	(*dest).Sup.len += ((NI) 1);
}
static N_INLINE(void, addEscapedChar__system_7486)(NimStringDesc** s, NIM_CHAR c) {
	switch (((NU8)(c))) {
	case 7:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_10));
	}
	break;
	case 8:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_11));
	}
	break;
	case 9:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_12));
	}
	break;
	case 10:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_13));
	}
	break;
	case 11:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_14));
	}
	break;
	case 12:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_15));
	}
	break;
	case 13:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_16));
	}
	break;
	case 27:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_17));
	}
	break;
	case 92:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_18));
	}
	break;
	case 39:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_19));
	}
	break;
	case 34:
	{
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_20));
	}
	break;
	case 32 ... 33:
	case 35 ... 38:
	case 40 ... 91:
	case 93 ... 126:
	{
		unsureAsgnRef((void**) (&(*s)), addChar((*s), c));
	}
	break;
	default:
	{
		NI n;
		unsureAsgnRef((void**) (&(*s)), resizeString((*s), 2));
appendString((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_21));
		n = ((NU8)(c));
		unsureAsgnRef((void**) (&(*s)), addChar((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_22)->data[(NI)((NI64)((NI)(n & ((NI) 240))) >> (NU64)(((NI) 4)))]));
		unsureAsgnRef((void**) (&(*s)), addChar((*s), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_22)->data[(NI)(n & ((NI) 15))]));
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*, skip__renderer_431)(tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* t) {
	tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* result;
	result = NIM_NIL;
	result = t;
	{
		while (1) {
			NIM_BOOL T3_;
			T3_ = (NIM_BOOL)0;
			T3_ = !((result == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
			if (!(T3_)) goto LA4_;
			T3_ = ((*result).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 11) || (*result).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 20) || (*result).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 23) || (*result).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 47) || (*result).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 13) || (*result).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 15) || (*result).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 4) || (*result).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 46));
			LA4_: ;
			if (!T3_) goto LA2;
			result = lastSon__ast_3731(result);
		} LA2: ;
	}
	return result;
}
static N_INLINE(NI, safeLen__ast_3148)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NI result;
	result = (NI)0;
	{
		if (!((*n).kind >= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 0) && (*n).kind <= ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23))) goto LA3_;
		result = ((NI) 0);
	}
	goto LA1_;
	LA3_: ;
	{
		result = len__ast_3155(n);
	}
	LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, litAux__renderer_425)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI64 x, NI size) {
	NimStringDesc* result;
	tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA* typ;
{	result = NIM_NIL;
	typ = skip__renderer_431((*n).typ);
	{
		NIM_BOOL T3_;
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* enumfields;
		T3_ = (NIM_BOOL)0;
		T3_ = !((typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
		if (!(T3_)) goto LA4_;
		T3_ = ((*typ).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 1) || (*typ).kind == ((tyEnum_TTypeKind__b28l2MkhJpnFhatVrsrXpg) 14));
		LA4_: ;
		if (!T3_) goto LA5_;
		{
			NimStringDesc* T11_;
			if (!(((*(*typ).sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA) 11))&63U)))!=0)) goto LA9_;
			T11_ = NIM_NIL;
			T11_ = rawNewString(((*(*(*typ).sym).name).s ? (*(*(*typ).sym).name).s->Sup.len : 0) + 1);
appendString(T11_, (*(*(*typ).sym).name).s);
appendChar(T11_, 46);
			result = T11_;
		}
		LA9_: ;
		enumfields = (*typ).n;
		{
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* e;
			e = NIM_NIL;
			{
				NI i;
				NI colontmp_;
				NI i_2;
				i = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = safeLen__ast_3148(enumfields);
				i_2 = ((NI) 0);
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA15;
						i = i_2;
						e = (*enumfields)._kind_6.sons->data[i];
						{
							if (!(((NI64) ((*(*e)._kind_4.sym).position)) == x)) goto LA18_;
							result = resizeString(result, ((*(*(*e)._kind_4.sym).name).s ? (*(*(*e)._kind_4.sym).name).s->Sup.len : 0) + 0);
appendString(result, (*(*(*e)._kind_4.sym).name).s);
							goto BeforeRet_;
						}
						LA18_: ;
						i_2 += ((NI) 1);
					} LA15: ;
				}
			}
		}
	}
	LA5_: ;
	{
		NimStringDesc* T24_;
		NimStringDesc* T25_;
		if (!(((*n).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 1))&31U)))!=0)) goto LA22_;
		T24_ = NIM_NIL;
		T25_ = NIM_NIL;
		T25_ = nsuToBin(x, ((NI) ((NI)(size * ((NI) 8)))));
		T24_ = rawNewString((T25_ ? T25_->Sup.len : 0) + 2);
appendString(T24_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_23));
appendString(T24_, T25_);
		result = T24_;
	}
	goto LA20_;
	LA22_: ;
	{
		NI64 y;
		NimStringDesc* T34_;
		NimStringDesc* T35_;
		if (!(((*n).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 2))&31U)))!=0)) goto LA27_;
		{
			if (!(size < ((NI) 8))) goto LA31_;
			y = (NI64)(x & (NI64)((NI64)((NU64)(IL64(1)) << (NU64)((NI)(size * ((NI) 8)))) - IL64(1)));
		}
		goto LA29_;
		LA31_: ;
		{
			y = x;
		}
		LA29_: ;
		T34_ = NIM_NIL;
		T35_ = NIM_NIL;
		T35_ = nsuToOct(y, ((NI) ((NI)(size * ((NI) 3)))));
		T34_ = rawNewString((T35_ ? T35_->Sup.len : 0) + 2);
appendString(T34_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_24));
appendString(T34_, T35_);
		result = T34_;
	}
	goto LA20_;
	LA27_: ;
	{
		NimStringDesc* T39_;
		NimStringDesc* T40_;
		if (!(((*n).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 3))&31U)))!=0)) goto LA37_;
		T39_ = NIM_NIL;
		T40_ = NIM_NIL;
		T40_ = toHex__renderer_477(x, ((NI) ((NI)(size * ((NI) 2)))));
		T39_ = rawNewString((T40_ ? T40_->Sup.len : 0) + 2);
appendString(T39_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_25));
appendString(T39_, T40_);
		result = T39_;
	}
	goto LA20_;
	LA37_: ;
	{
		result = dollar___systemZdollars_6(x);
	}
	LA20_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, ulitAux__renderer_482)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI64 x, NI size) {
	NimStringDesc* result;
	result = NIM_NIL;
	{
		NimStringDesc* T5_;
		NimStringDesc* T6_;
		if (!(((*n).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 1))&31U)))!=0)) goto LA3_;
		T5_ = NIM_NIL;
		T6_ = NIM_NIL;
		T6_ = nsuToBin(x, ((NI) ((NI)(size * ((NI) 8)))));
		T5_ = rawNewString((T6_ ? T6_->Sup.len : 0) + 2);
appendString(T5_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_23));
appendString(T5_, T6_);
		result = T5_;
	}
	goto LA1_;
	LA3_: ;
	{
		NimStringDesc* T10_;
		NimStringDesc* T11_;
		if (!(((*n).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 2))&31U)))!=0)) goto LA8_;
		T10_ = NIM_NIL;
		T11_ = NIM_NIL;
		T11_ = nsuToOct(x, ((NI) ((NI)(size * ((NI) 3)))));
		T10_ = rawNewString((T11_ ? T11_->Sup.len : 0) + 2);
appendString(T10_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_24));
appendString(T10_, T11_);
		result = T10_;
	}
	goto LA1_;
	LA8_: ;
	{
		NimStringDesc* T15_;
		NimStringDesc* T16_;
		if (!(((*n).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 3))&31U)))!=0)) goto LA13_;
		T15_ = NIM_NIL;
		T16_ = NIM_NIL;
		T16_ = toHex__renderer_477(x, ((NI) ((NI)(size * ((NI) 2)))));
		T15_ = rawNewString((T16_ ? T16_->Sup.len : 0) + 2);
appendString(T15_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_25));
appendString(T15_, T16_);
		result = T15_;
	}
	goto LA1_;
	LA13_: ;
	{
		result = dollar___systemZdollars_9(((NU64) (x)));
	}
	LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, atom__renderer_504)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NimStringDesc* result;
	NF32 f;
	result = NIM_NIL;
	f = (NF32)0;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1):
	{
		result = ((NimStringDesc*) NIM_NIL);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2):
	{
		result = copyString((*(*n)._kind_5.ident).s);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3):
	{
		result = copyString((*(*(*n)._kind_4.sym).name).s);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 56):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 57):
	{
		result = copyString((*(*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name).s);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20):
	{
		result = ((NimStringDesc*) NIM_NIL);
		addQuoted__pureZos_449((&result), (*n)._kind_3.strVal);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 21):
	{
		NimStringDesc* T7_;
		NimStringDesc* T8_;
		T7_ = NIM_NIL;
		T8_ = NIM_NIL;
		T8_ = nsuReplaceStr((*n)._kind_3.strVal, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_6), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_7));
		T7_ = rawNewString((T8_ ? T8_->Sup.len : 0) + 3);
appendString(T7_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_5));
appendString(T7_, T8_);
appendChar(T7_, 34);
		result = T7_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
	{
		NimStringDesc* T10_;
		T10_ = NIM_NIL;
		T10_ = rawNewString(((*n)._kind_3.strVal ? (*n)._kind_3.strVal->Sup.len : 0) + 6);
appendString(T10_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_8));
appendString(T10_, (*n)._kind_3.strVal);
appendString(T10_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_8));
		result = T10_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 5):
	{
		result = copyString(((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_9));
		addEscapedChar__system_7486((&result), ((NIM_CHAR) (((NI) (((NI) ((*n)._kind_1.intVal)))))));
		result = addChar(result, 39);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6):
	{
		result = litAux__renderer_425(g, n, (*n)._kind_1.intVal, ((NI) 4));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 7):
	{
		NimStringDesc* T14_;
		NimStringDesc* T15_;
		T14_ = NIM_NIL;
		T15_ = NIM_NIL;
		T15_ = litAux__renderer_425(g, n, (*n)._kind_1.intVal, ((NI) 1));
		T14_ = rawNewString((T15_ ? T15_->Sup.len : 0) + 3);
appendString(T14_, T15_);
appendString(T14_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_26));
		result = T14_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 8):
	{
		NimStringDesc* T17_;
		NimStringDesc* T18_;
		T17_ = NIM_NIL;
		T18_ = NIM_NIL;
		T18_ = litAux__renderer_425(g, n, (*n)._kind_1.intVal, ((NI) 2));
		T17_ = rawNewString((T18_ ? T18_->Sup.len : 0) + 4);
appendString(T17_, T18_);
appendString(T17_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_27));
		result = T17_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 9):
	{
		NimStringDesc* T20_;
		NimStringDesc* T21_;
		T20_ = NIM_NIL;
		T21_ = NIM_NIL;
		T21_ = litAux__renderer_425(g, n, (*n)._kind_1.intVal, ((NI) 4));
		T20_ = rawNewString((T21_ ? T21_->Sup.len : 0) + 4);
appendString(T20_, T21_);
appendString(T20_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_28));
		result = T20_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 10):
	{
		NimStringDesc* T23_;
		NimStringDesc* T24_;
		T23_ = NIM_NIL;
		T24_ = NIM_NIL;
		T24_ = litAux__renderer_425(g, n, (*n)._kind_1.intVal, ((NI) 8));
		T23_ = rawNewString((T24_ ? T24_->Sup.len : 0) + 4);
appendString(T23_, T24_);
appendString(T23_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_29));
		result = T23_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 11):
	{
		NimStringDesc* T26_;
		NimStringDesc* T27_;
		T26_ = NIM_NIL;
		T27_ = NIM_NIL;
		T27_ = ulitAux__renderer_482(g, n, (*n)._kind_1.intVal, ((NI) 4));
		T26_ = rawNewString((T27_ ? T27_->Sup.len : 0) + 2);
appendString(T26_, T27_);
appendString(T26_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_30));
		result = T26_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 12):
	{
		NimStringDesc* T29_;
		NimStringDesc* T30_;
		T29_ = NIM_NIL;
		T30_ = NIM_NIL;
		T30_ = ulitAux__renderer_482(g, n, (*n)._kind_1.intVal, ((NI) 1));
		T29_ = rawNewString((T30_ ? T30_->Sup.len : 0) + 3);
appendString(T29_, T30_);
appendString(T29_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_31));
		result = T29_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 13):
	{
		NimStringDesc* T32_;
		NimStringDesc* T33_;
		T32_ = NIM_NIL;
		T33_ = NIM_NIL;
		T33_ = ulitAux__renderer_482(g, n, (*n)._kind_1.intVal, ((NI) 2));
		T32_ = rawNewString((T33_ ? T33_->Sup.len : 0) + 4);
appendString(T32_, T33_);
appendString(T32_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_32));
		result = T32_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 14):
	{
		NimStringDesc* T35_;
		NimStringDesc* T36_;
		T35_ = NIM_NIL;
		T36_ = NIM_NIL;
		T36_ = ulitAux__renderer_482(g, n, (*n)._kind_1.intVal, ((NI) 4));
		T35_ = rawNewString((T36_ ? T36_->Sup.len : 0) + 4);
appendString(T35_, T36_);
appendString(T35_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_33));
		result = T35_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 15):
	{
		NimStringDesc* T38_;
		NimStringDesc* T39_;
		T38_ = NIM_NIL;
		T39_ = NIM_NIL;
		T39_ = ulitAux__renderer_482(g, n, (*n)._kind_1.intVal, ((NI) 8));
		T38_ = rawNewString((T39_ ? T39_->Sup.len : 0) + 4);
appendString(T38_, T39_);
appendString(T38_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_34));
		result = T38_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 16):
	{
		{
			if (!(((*n).flags & 14) == 0)) goto LA43_;
			result = dollar___system_3126((*n)._kind_2.floatVal);
		}
		goto LA41_;
		LA43_: ;
		{
			result = litAux__renderer_425(g, n, (*((NI64*) ((&(*n)._kind_2.floatVal)))), ((NI) 8));
		}
		LA41_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 17):
	{
		{
			NimStringDesc* T51_;
			NimStringDesc* T52_;
			if (!(((*n).flags & 14) == 0)) goto LA49_;
			T51_ = NIM_NIL;
			T52_ = NIM_NIL;
			T52_ = dollar___system_3126((*n)._kind_2.floatVal);
			T51_ = rawNewString((T52_ ? T52_->Sup.len : 0) + 4);
appendString(T51_, T52_);
appendString(T51_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_35));
			result = T51_;
		}
		goto LA47_;
		LA49_: ;
		{
			NimStringDesc* T54_;
			NimStringDesc* T55_;
			f = ((NF32) ((*n)._kind_2.floatVal));
			T54_ = NIM_NIL;
			T55_ = NIM_NIL;
			T55_ = litAux__renderer_425(g, n, ((NI64) ((*((NI32*) ((&f)))))), ((NI) 4));
			T54_ = rawNewString((T55_ ? T55_->Sup.len : 0) + 4);
appendString(T54_, T55_);
appendString(T54_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_35));
			result = T54_;
		}
		LA47_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 18):
	{
		{
			NimStringDesc* T61_;
			NimStringDesc* T62_;
			if (!(((*n).flags & 14) == 0)) goto LA59_;
			T61_ = NIM_NIL;
			T62_ = NIM_NIL;
			T62_ = dollar___system_3126((*n)._kind_2.floatVal);
			T61_ = rawNewString((T62_ ? T62_->Sup.len : 0) + 4);
appendString(T61_, T62_);
appendString(T61_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_36));
			result = T61_;
		}
		goto LA57_;
		LA59_: ;
		{
			NimStringDesc* T64_;
			NimStringDesc* T65_;
			T64_ = NIM_NIL;
			T65_ = NIM_NIL;
			T65_ = litAux__renderer_425(g, n, (*((NI64*) ((&(*n)._kind_2.floatVal)))), ((NI) 8));
			T64_ = rawNewString((T65_ ? T65_->Sup.len : 0) + 4);
appendString(T64_, T65_);
appendString(T64_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_36));
			result = T64_;
		}
		LA57_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23):
	{
		result = copyString(((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_37));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 4):
	{
		{
			NIM_BOOL T70_;
			T70_ = (NIM_BOOL)0;
			T70_ = !(((*n).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
			if (!(T70_)) goto LA71_;
			T70_ = !(((*(*n).typ).sym == ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL)));
			LA71_: ;
			if (!T70_) goto LA72_;
			result = copyString((*(*(*(*n).typ).sym).name).s);
		}
		goto LA68_;
		LA72_: ;
		{
			result = copyString(((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_38));
		}
		LA68_: ;
	}
	break;
	default:
	{
		NimStringDesc* T76_;
		T76_ = NIM_NIL;
		T76_ = rawNewString((reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)) ? reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_))->Sup.len : 0) + 14);
appendString(T76_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_39));
appendString(T76_, reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)));
		internalErrorImpl__msgs_1441((*g).config, unknownLineInfo__lineinfos_284, T76_, TM__edlVk3rimVQxtoXNQ77Dhw_40);
		result = ((NimStringDesc*) NIM_NIL);
	}
	break;
	}
	return result;
}
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
	int result;
	result = (int)0;
	result = memcmp(a, b, ((size_t) (size)));
	return result;
}
static N_INLINE(NIM_BOOL, equalMem__system_1741)(void* a, void* b, NI size) {
	NIM_BOOL result;
	int T1_;
	result = (NIM_BOOL)0;
	T1_ = (int)0;
	T1_ = nimCmpMem(a, b, size);
	result = (T1_ == ((NI32) 0));
	return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
	NIM_BOOL result;
	NI alen;
	NI blen;
{	result = (NIM_BOOL)0;
	alen = (a ? a->Sup.len : 0);
	blen = (b ? b->Sup.len : 0);
	{
		if (!(alen == blen)) goto LA3_;
		{
			if (!(alen == ((NI) 0))) goto LA7_;
			result = NIM_TRUE;
			goto BeforeRet_;
		}
		LA7_: ;
		result = equalMem__system_1741(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
		goto BeforeRet_;
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, disamb__renderer_49)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s) {
	NI result;
	NI T13_;
{	result = (NI)0;
	result = ((NI) 0);
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = ((*g).mangler ? (*g).mangler->Sup.len : 0);
		colontmp_ = T2_;
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA4;
				i = i_2;
				{
					if (!(s == (*g).mangler->data[i])) goto LA7_;
					goto BeforeRet_;
				}
				LA7_: ;
				{
					if (!eqStrings((*(*s).name).s, (*(*(*g).mangler->data[i]).name).s)) goto LA11_;
					result += ((NI) 1);
				}
				LA11_: ;
				i_2 += ((NI) 1);
			} LA4: ;
		}
	}
	unsureAsgnRef((void**) (&(*g).mangler), (tySequence__ed0C0uAUZPhvw3RAc5hfYg*) incrSeqV3((TGenericSeq*)((*g).mangler), (&NTIseqLpsymT__ed0C0uAUZPhvw3RAc5hfYg_)));
	T13_ = (*g).mangler->Sup.len++;
	asgnRef((void**) (&(*g).mangler->data[T13_]), s);
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x) {
	addInt__stdZprivateZdigitsutils_167(result, ((NI64) (x)));
}
N_LIB_PRIVATE N_NIMCALL(void, gident__renderer_1307)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw t;
	NimStringDesc* s;
	tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* T59_;
{	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (*g).inGenericParams;
		if (!(T3_)) goto LA4_;
		T3_ = ((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
		LA4_: ;
		if (!T3_) goto LA5_;
		{
			NIM_BOOL T9_;
			NIM_BOOL T11_;
			T9_ = (NIM_BOOL)0;
			T9_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA) 34))&63U)))!=0);
			if (T9_) goto LA10_;
			T11_ = (NIM_BOOL)0;
			T11_ = !(((*n).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
			if (!(T11_)) goto LA12_;
			T11_ = (((*(*n).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw) 26))&63U)))!=0);
			LA12_: ;
			T9_ = T11_;
			LA10_: ;
			if (!T9_) goto LA13_;
			goto BeforeRet_;
		}
		LA13_: ;
	}
	LA5_: ;
	t = (tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw)0;
	s = atom__renderer_504((&(*g)), n);
	{
		NIM_BOOL T17_;
		T17_ = (NIM_BOOL)0;
		T17_ = (((NI) 0) < (s ? s->Sup.len : 0));
		if (!(T17_)) goto LA18_;
		T17_ = (((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)(48)) && ((NU8)(s->data[((NI) 0)])) <= ((NU8)(57)) || ((NU8)(s->data[((NI) 0)])) >= ((NU8)(128)) && ((NU8)(s->data[((NI) 0)])) <= ((NU8)(255)));
		LA18_: ;
		if (!T17_) goto LA19_;
		{
			if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2))) goto LA23_;
			{
				NIM_BOOL T27_;
				T27_ = (NIM_BOOL)0;
				T27_ = ((*(*n)._kind_5.ident).id < ((NI) 1));
				if (T27_) goto LA28_;
				T27_ = (((NI) 66) < (*(*n)._kind_5.ident).id);
				LA28_: ;
				if (!T27_) goto LA29_;
				t = ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2);
			}
			goto LA25_;
			LA29_: ;
			{
				t = ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) ((NI)((*(*n)._kind_5.ident).id + ((NI) 2))));
			}
			LA25_: ;
		}
		goto LA21_;
		LA23_: ;
		{
			t = ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2);
		}
		LA21_: ;
	}
	goto LA15_;
	LA19_: ;
	{
		t = ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 110);
	}
	LA15_: ;
	{
		NIM_BOOL T36_;
		NI localId;
		T36_ = (NIM_BOOL)0;
		T36_ = (((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 9))&15U)))!=0);
		if (!(T36_)) goto LA37_;
		T36_ = ((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
		LA37_: ;
		if (!T36_) goto LA38_;
		localId = disamb__renderer_49(g, (*n)._kind_4.sym);
		{
			NIM_BOOL T42_;
			T42_ = (NIM_BOOL)0;
			T42_ = !((localId == ((NI) 0)));
			if (!(T42_)) goto LA43_;
			T42_ = ((*(*n)._kind_4.sym).magic == ((tyEnum_TMagic__3qAy6bDUDlF8Fc2RR6pF9ag) 0));
			LA43_: ;
			if (!T42_) goto LA44_;
			s = addChar(s, 95);
			addInt__stdZprivateZdigitsutils_189((&s), localId);
		}
		LA44_: ;
		{
			if (!(((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA) 41))&63U)))!=0)) goto LA48_;
			s = resizeString(s, 7);
appendString(s, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_42));
		}
		LA48_: ;
	}
	goto LA34_;
	LA38_: ;
	{
		NIM_BOOL T51_;
		NIM_BOOL T53_;
		NIM_BOOL T54_;
		tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* xX60gensym257_;
		T51_ = (NIM_BOOL)0;
		T51_ = ((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
		if (!(T51_)) goto LA52_;
		T53_ = (NIM_BOOL)0;
		T54_ = (NIM_BOOL)0;
		T54_ = (((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 5))&15U)))!=0);
		if (T54_) goto LA55_;
		T54_ = (((*(*n)._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA) 37))&63U)))!=0);
		LA55_: ;
		T53_ = T54_;
		if (T53_) goto LA56_;
		T53_ = ((*(*n)._kind_4.sym).kind == ((tyEnum_TSymKind__sjiB9b9aO1FRPetW6gPYZbfw) 5));
		LA56_: ;
		T51_ = T53_;
		LA52_: ;
		if (!T51_) goto LA57_;
		s = addChar(s, 95);
		xX60gensym257_ = (*n)._kind_4.sym;
		addInt__stdZprivateZdigitsutils_189((&s), (NI)((NI)((NU64)(((NI) ((*xX60gensym257_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym257_).Sup.itemId.item))));
	}
	goto LA34_;
	LA57_: ;
	LA34_: ;
	T59_ = NIM_NIL;
	{
		NIM_BOOL T62_;
		T62_ = (NIM_BOOL)0;
		T62_ = ((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3));
		if (!(T62_)) goto LA63_;
		T62_ = (((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 7))&15U)))!=0);
		LA63_: ;
		if (!T62_) goto LA64_;
		T59_ = (*n)._kind_4.sym;
	}
	goto LA60_;
	LA64_: ;
	{
		T59_ = ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL);
	}
	LA60_: ;
	put__renderer_235(g, t, s, T59_);
	}BeforeRet_: ;
}
static N_INLINE(tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg*, getPIdent__ast_3060)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* a) {
	tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* result;
	result = NIM_NIL;
	switch ((*a).kind) {
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3):
	{
		result = (*(*a)._kind_4.sym).name;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2):
	{
		result = (*a)._kind_5.ident;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 57):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 56):
	{
		result = (*(*(*a)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name;
	}
	break;
	default:
	{
		result = ((tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg*) NIM_NIL);
	}
	break;
	}
	return result;
}
static N_INLINE(NIM_BOOL, eqeq___idents_229)(tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* a, tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* b) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (a == 0);
		if (T3_) goto LA4_;
		T3_ = (b == 0);
		LA4_: ;
		if (!T3_) goto LA5_;
		result = (a == b);
	}
	goto LA1_;
	LA5_: ;
	{
		result = ((*a).id == (*b).id);
	}
	LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, accentedName__renderer_1477)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* ident;
{	{
		if (!(n == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL))) goto LA3_;
		goto BeforeRet_;
	}
	LA3_: ;
	ident = getPIdent__ast_3060(n);
	{
		NIM_BOOL T7_;
		NIM_BOOL T8_;
		T7_ = (NIM_BOOL)0;
		T8_ = (NIM_BOOL)0;
		T8_ = eqeq___idents_229(ident, ((tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg*) NIM_NIL));
		T7_ = !(T8_);
		if (!(T7_)) goto LA9_;
		T7_ = ((TM__edlVk3rimVQxtoXNQ77Dhw_43[(NU)(((NU8)((*ident).s->data[((NI) 0)])))>>3] &(1U<<((NU)(((NU8)((*ident).s->data[((NI) 0)])))&7U)))!=0);
		LA9_: ;
		if (!T7_) goto LA10_;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 112), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_44), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gident__renderer_1307(g, n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 112), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_44), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	goto LA5_;
	LA10_: ;
	{
		gsub__renderer_856(g, n, NIM_FALSE);
	}
	LA5_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsNL__renderer_338)(NimStringDesc* s) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = (s ? s->Sup.len : 0);
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA3;
				i = i_2;
				switch (((NU8)(s->data[i]))) {
				case 13:
				case 10:
				{
					result = NIM_TRUE;
					goto BeforeRet_;
				}
				break;
				default:
				{
				}
				break;
				}
				i_2 += ((NI) 1);
			} LA3: ;
		}
	}
	result = NIM_FALSE;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, lcomma__renderer_559)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI start, NI theEnd) {
	NI result;
	result = (NI)0;
	result = ((NI) 0);
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (NI)0;
		T2_ = len__ast_3155(n);
		colontmp_ = (NI)(T2_ + theEnd);
		res = start;
		{
			while (1) {
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* param;
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				param = (*n)._kind_6.sons->data[i];
				{
					NI T9_;
					if (!!((((*param).flags &((NU32)1<<((NU)(((tyEnum_TNodeFlag__0RUKWdbLPY3l0smKVGDLMg) 18))&31U)))!=0))) goto LA7_;
					T9_ = (NI)0;
					T9_ = lsub__renderer_422(g, param);
					result += T9_;
					result += ((NI) 2);
				}
				LA7_: ;
				res += ((NI) 1);
			} LA4: ;
		}
	}
	{
		if (!(((NI) 0) < result)) goto LA12_;
		result -= ((NI) 2);
	}
	LA12_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, lsons__renderer_594)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI start, NI theEnd) {
	NI result;
	result = (NI)0;
	result = ((NI) 0);
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (NI)0;
		T2_ = len__ast_3155(n);
		colontmp_ = (NI)(T2_ + theEnd);
		res = start;
		{
			while (1) {
				NI T5_;
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				T5_ = (NI)0;
				T5_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[i]);
				result += T5_;
				res += ((NI) 1);
			} LA4: ;
		}
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, lsub__renderer_422)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NI result;
{	result = (NI)0;
	{
		if (!(n == 0)) goto LA3_;
		result = ((NI) 0);
		goto BeforeRet_;
	}
	LA3_: ;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = shouldRenderComment__renderer_383(g, n);
		if (!T7_) goto LA8_;
		result = ((NI) 81);
		goto BeforeRet_;
	}
	LA8_: ;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1):
	{
		result = ((NI) 0);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
	{
		{
			NIM_BOOL T14_;
			T14_ = (NIM_BOOL)0;
			T14_ = containsNL__renderer_338((*n)._kind_3.strVal);
			if (!T14_) goto LA15_;
			result = ((NI) 81);
		}
		goto LA12_;
		LA15_: ;
		{
			NimStringDesc* T18_;
			T18_ = NIM_NIL;
			T18_ = atom__renderer_504(g, n);
			result = (T18_ ? T18_->Sup.len : 0);
		}
		LA12_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 21):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23):
	{
		NimStringDesc* T20_;
		T20_ = NIM_NIL;
		T20_ = atom__renderer_504(g, n);
		result = (T20_ ? T20_->Sup.len : 0);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 27):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 42):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 40):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 60):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 153):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 38):
	{
		NI T22_;
		NI T23_;
		T22_ = (NI)0;
		T22_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		T23_ = (NI)0;
		T23_ = lcomma__renderer_559(g, n, ((NI) 1), ((NI) -1));
		result = (NI)((NI)(T22_ + T23_) + ((NI) 2));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 58):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 59):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 32):
	{
		result = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 1)]);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 61):
	{
		NI T26_;
		NI T27_;
		T26_ = (NI)0;
		T26_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		T27_ = (NI)0;
		T27_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 1)]);
		result = (NI)((NI)(T26_ + T27_) + ((NI) 8));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 63):
	{
		{
			NI T31_;
			NI T34_;
			T31_ = (NI)0;
			T31_ = len__ast_3155(n);
			if (!(((NI) 0) < T31_)) goto LA32_;
			T34_ = (NI)0;
			T34_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
			result = (NI)(T34_ + ((NI) 6));
		}
		goto LA29_;
		LA32_: ;
		{
			result = ((NI) 4);
		}
		LA29_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 62):
	{
		NI T37_;
		T37_ = (NI)0;
		T37_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T37_ + ((NI) 7));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 64):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 65):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 71):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 72):
	{
		result = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 26):
	{
		NI T40_;
		NI T41_;
		T40_ = (NI)0;
		T40_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		T41_ = (NI)0;
		T41_ = lcomma__renderer_559(g, n, ((NI) 1), ((NI) -1));
		result = (NI)((NI)(T40_ + T41_) + ((NI) 1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 33):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 73):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 74):
	{
		NI T43_;
		T43_ = (NI)0;
		T43_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T43_ + ((NI) 3));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 37):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 39):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 41):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 155):
	{
		NI T45_;
		T45_ = (NI)0;
		T45_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T45_ + ((NI) 2));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160):
	{
		NI T47_;
		T47_ = (NI)0;
		T47_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T47_ + ((NI) 3));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 152):
	{
		result = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 54):
	{
		{
			NI T52_;
			NI T55_;
			T52_ = (NI)0;
			T52_ = len__ast_3155(n);
			if (!(((NI) 0) < T52_)) goto LA53_;
			T55_ = (NI)0;
			T55_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
			result = (NI)(T55_ + ((NI) 2));
		}
		goto LA50_;
		LA53_: ;
		{
			result = ((NI) 3);
		}
		LA50_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 56):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 57):
	{
		{
			NI T60_;
			NI T63_;
			T60_ = (NI)0;
			T60_ = len__ast_3155(n);
			if (!(((NI) 0) < T60_)) goto LA61_;
			T63_ = (NI)0;
			T63_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
			result += T63_;
		}
		LA61_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 134):
	{
		NI T65_;
		T65_ = (NI)0;
		T65_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T65_ + ((NI) 7));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 135):
	{
		result = ((NI) 5);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 45):
	{
		NI T68_;
		T68_ = (NI)0;
		T68_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T68_ + ((NI) 1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 55):
	{
		NI T70_;
		T70_ = (NI)0;
		T70_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T70_ + ((NI) 5));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 122):
	{
		NI T72_;
		T72_ = (NI)0;
		T72_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T72_ + ((NI) 5));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 123):
	{
		NI T74_;
		T74_ = (NI)0;
		T74_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T74_ + ((NI) 6));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 46):
	{
		result = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 51):
	{
		NI T77_;
		T77_ = (NI)0;
		T77_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T77_ + ((NI) 8));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 52):
	{
		NI T79_;
		T79_ = (NI)0;
		T79_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T79_ + ((NI) 6));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 102):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 35):
	{
		result = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -3));
		{
			NI T83_;
			NI T86_;
			NI T87_;
			T83_ = (NI)0;
			T83_ = len__ast_3155(n);
			if (!!(((*(*n)._kind_6.sons->data[(NI)(T83_ - ((NI) 2))]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)))) goto LA84_;
			T86_ = (NI)0;
			T86_ = len__ast_3155(n);
			T87_ = (NI)0;
			T87_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[(NI)(T86_ - ((NI) 2))]);
			result += (NI)(T87_ + ((NI) 2));
		}
		LA84_: ;
		{
			NI T90_;
			NI T93_;
			NI T94_;
			T90_ = (NI)0;
			T90_ = len__ast_3155(n);
			if (!!(((*(*n)._kind_6.sons->data[(NI)(T90_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)))) goto LA91_;
			T93_ = (NI)0;
			T93_ = len__ast_3155(n);
			T94_ = (NI)0;
			T94_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[(NI)(T93_ - ((NI) 1))]);
			result += (NI)(T94_ + ((NI) 3));
		}
		LA91_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 36):
	{
		{
			NI T98_;
			NI T101_;
			T98_ = (NI)0;
			T98_ = len__ast_3155(n);
			if (!((*(*n)._kind_6.sons->data[(NI)(T98_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1))) goto LA99_;
			T101_ = (NI)0;
			T101_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -2));
			result = (NI)(T101_ + ((NI) 2));
		}
		goto LA96_;
		LA99_: ;
		{
			NI T103_;
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T104_;
			NI T105_;
			T103_ = (NI)0;
			T103_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -3));
			T104_ = NIM_NIL;
			T104_ = lastSon__ast_4833(n);
			T105_ = (NI)0;
			T105_ = lsub__renderer_422(g, T104_);
			result = (NI)((NI)(T103_ + ((NI) 5)) + T105_);
		}
		LA96_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 68):
	{
		NI T107_;
		T107_ = (NI)0;
		T107_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(((NI) 12) + T107_);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 69):
	{
		NI T109_;
		T109_ = (NI)0;
		T109_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(((NI) 13) + T109_);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 70):
	{
		NI T111_;
		T111_ = (NI)0;
		T111_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(((NI) 11) + T111_);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 66):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 67):
	{
		NI T119_;
		result = ((NI) 2);
		{
			NI T115_;
			NI T118_;
			T115_ = (NI)0;
			T115_ = len__ast_3155(n);
			if (!(((NI) 1) <= T115_)) goto LA116_;
			T118_ = (NI)0;
			T118_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
			result += T118_;
		}
		LA116_: ;
		T119_ = (NI)0;
		T119_ = lcomma__renderer_559(g, n, ((NI) 1), ((NI) -1));
		result += T119_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 34):
	{
		NI T121_;
		T121_ = (NI)0;
		T121_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T121_ + ((NI) 2));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 29):
	{
		NI T123_;
		T123_ = (NI)0;
		T123_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T123_ + ((NI) 2));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 30):
	{
		NI T125_;
		NI T126_;
		T125_ = (NI)0;
		T125_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		T126_ = (NI)0;
		{
			NIM_BOOL T129_;
			NI T130_;
			T129_ = (NIM_BOOL)0;
			T130_ = (NI)0;
			T130_ = len__ast_3155(n);
			T129_ = (((NI) 0) < T130_);
			if (!(T129_)) goto LA131_;
			T129_ = ((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 29));
			LA131_: ;
			if (!T129_) goto LA132_;
			T126_ = ((NI) 2);
		}
		goto LA127_;
		LA132_: ;
		{
			T126_ = ((NI) 0);
		}
		LA127_: ;
		result = (NI)((NI)(T125_ + ((NI) 1)) + T126_);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 31):
	{
		result = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 28):
	{
		result = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 43):
	{
		NI T138_;
		NI T139_;
		T138_ = (NI)0;
		T138_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		T139_ = (NI)0;
		T139_ = lcomma__renderer_559(g, n, ((NI) 1), ((NI) -1));
		result = (NI)(T138_ + T139_);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 44):
	{
		NI T141_;
		T141_ = (NI)0;
		T141_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T141_ + ((NI) 2));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 47):
	{
		NI T143_;
		T143_ = (NI)0;
		T143_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T143_ + ((NI) 2));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 53):
	{
		NI T145_;
		T145_ = (NI)0;
		T145_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T145_ + ((NI) 2));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 48):
	{
		NI T147_;
		NI T148_;
		NI T149_;
		T147_ = (NI)0;
		T147_ = lsub__renderer_422(g, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)]);
		T148_ = (NI)0;
		T148_ = lsub__renderer_422(g, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)]);
		T149_ = (NI)0;
		T149_ = lsons__renderer_594(g, n, ((NI) 1), ((NI) -1));
		result = (NI)((NI)((NI)(T147_ + T148_) + T149_) + ((NI) 5));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 49):
	{
		NI T151_;
		T151_ = (NI)0;
		T151_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T151_ + ((NI) 8));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 50):
	{
		NI T153_;
		T153_ = (NI)0;
		T153_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T153_ + ((NI) 7));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 132):
	{
		NI T155_;
		T155_ = (NI)0;
		{
			NI T158_;
			T158_ = (NI)0;
			T158_ = len__ast_3155(n);
			if (!(((NI) 0) < T158_)) goto LA159_;
			T155_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		}
		goto LA156_;
		LA159_: ;
		{
			T155_ = ((NI) 0);
		}
		LA156_: ;
		result = (NI)(T155_ + ((NI) 8));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 141):
	{
		NI T163_;
		T163_ = (NI)0;
		{
			NI T166_;
			NI T169_;
			T166_ = (NI)0;
			T166_ = len__ast_3155(n);
			if (!(((NI) 0) < T166_)) goto LA167_;
			T169_ = (NI)0;
			T169_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
			T163_ = (NI)(T169_ + ((NI) 1));
		}
		goto LA164_;
		LA167_: ;
		{
			T163_ = ((NI) 0);
		}
		LA164_: ;
		result = (NI)(T163_ + ((NI) 3));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 142):
	{
		NI T172_;
		T172_ = (NI)0;
		{
			NI T175_;
			NI T178_;
			T175_ = (NI)0;
			T175_ = len__ast_3155(n);
			if (!(((NI) 0) < T175_)) goto LA176_;
			T178_ = (NI)0;
			T178_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
			T172_ = (NI)(T178_ + ((NI) 1));
		}
		goto LA173_;
		LA176_: ;
		{
			T172_ = ((NI) 0);
		}
		LA173_: ;
		result = (NI)(T172_ + ((NI) 3));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 143):
	{
		NI T181_;
		T181_ = (NI)0;
		{
			NI T184_;
			NI T187_;
			T184_ = (NI)0;
			T184_ = len__ast_3155(n);
			if (!(((NI) 0) < T184_)) goto LA185_;
			T187_ = (NI)0;
			T187_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
			T181_ = (NI)(T187_ + ((NI) 1));
		}
		goto LA182_;
		LA185_: ;
		{
			T181_ = ((NI) 0);
		}
		LA182_: ;
		result = (NI)(T181_ + ((NI) 3));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 146):
	{
		NI T190_;
		T190_ = (NI)0;
		{
			NI T193_;
			NI T196_;
			T193_ = (NI)0;
			T193_ = len__ast_3155(n);
			if (!(((NI) 0) < T193_)) goto LA194_;
			T196_ = (NI)0;
			T196_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
			T190_ = (NI)(T196_ + ((NI) 1));
		}
		goto LA191_;
		LA194_: ;
		{
			T190_ = ((NI) 0);
		}
		LA191_: ;
		result = (NI)(((NI) 8) + T190_);
		{
			NI T200_;
			NI T203_;
			NI T209_;
			T200_ = (NI)0;
			T200_ = len__ast_3155(n);
			if (!(((NI) 1) < T200_)) goto LA201_;
			T203_ = (NI)0;
			{
				if (!((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 130))) goto LA206_;
				T203_ = ((NI) 6);
			}
			goto LA204_;
			LA206_: ;
			{
				T203_ = ((NI) 9);
			}
			LA204_: ;
			result += T203_;
			T209_ = (NI)0;
			T209_ = lcomma__renderer_559(g, (*n)._kind_6.sons->data[((NI) 1)], ((NI) 0), ((NI) -1));
			result += T209_;
		}
		LA201_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 137):
	{
		NI T211_;
		T211_ = (NI)0;
		{
			NI T214_;
			T214_ = (NI)0;
			T214_ = len__ast_3155(n);
			if (!(((NI) 0) < T214_)) goto LA215_;
			T211_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		}
		goto LA212_;
		LA215_: ;
		{
			T211_ = ((NI) 0);
		}
		LA212_: ;
		result = (NI)(T211_ + ((NI) 8));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 103):
	{
		NI T219_;
		T219_ = (NI)0;
		T219_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T219_ + ((NI) 3));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 77):
	{
		NI T221_;
		T221_ = (NI)0;
		T221_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T221_ + ((NI) 3));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 147):
	{
		NI T223_;
		T223_ = (NI)0;
		T223_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T223_ + ((NI) 5));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 148):
	{
		NI T225_;
		T225_ = (NI)0;
		T225_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T225_ + ((NI) 9));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 149):
	{
		NI T227_;
		T227_ = (NI)0;
		T227_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T227_ + ((NI) 7));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 150):
	{
		{
			NI T231_;
			NI T234_;
			NI T235_;
			T231_ = (NI)0;
			T231_ = len__ast_3155(n);
			if (!(((NI) 0) < T231_)) goto LA232_;
			T234_ = (NI)0;
			T234_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
			T235_ = (NI)0;
			T235_ = lcomma__renderer_559(g, n, ((NI) 1), ((NI) -1));
			result = (NI)((NI)(T234_ + T235_) + ((NI) 5));
		}
		goto LA229_;
		LA232_: ;
		{
			result = ((NI) 4);
		}
		LA229_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 151):
	{
		NI T238_;
		T238_ = (NI)0;
		T238_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T238_ + ((NI) 3));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 99):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 100):
	{
		{
			NI T242_;
			T242_ = (NI)0;
			T242_ = len__ast_3155(n);
			if (!(((NI) 1) < T242_)) goto LA243_;
			result = ((NI) 81);
		}
		goto LA240_;
		LA243_: ;
		{
			NI T246_;
			T246_ = (NI)0;
			T246_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
			result = (NI)(T246_ + ((NI) 4));
		}
		LA240_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 124):
	{
		{
			NI T250_;
			T250_ = (NI)0;
			T250_ = len__ast_3155(n);
			if (!(((NI) 1) < T250_)) goto LA251_;
			result = ((NI) 81);
		}
		goto LA248_;
		LA251_: ;
		{
			NI T254_;
			T254_ = (NI)0;
			T254_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
			result = (NI)(T254_ + ((NI) 6));
		}
		LA248_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 109):
	{
		{
			NIM_BOOL T258_;
			NI T259_;
			NI T263_;
			T258_ = (NIM_BOOL)0;
			T259_ = (NI)0;
			T259_ = len__ast_3155(n);
			T258_ = (((NI) 0) < T259_);
			if (!(T258_)) goto LA260_;
			T258_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 73));
			LA260_: ;
			if (!T258_) goto LA261_;
			T263_ = (NI)0;
			T263_ = lsub__renderer_422(g, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)]);
			result = (NI)(((NI) 7) + T263_);
		}
		goto LA256_;
		LA261_: ;
		{
			NI T265_;
			T265_ = (NI)0;
			T265_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
			result = (NI)(((NI) 7) + T265_);
		}
		LA256_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 108):
	{
		NI T267_;
		T267_ = (NI)0;
		T267_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T267_ + ((NI) 6));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 104):
	{
		NI T269_;
		T269_ = (NI)0;
		T269_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T269_ + ((NI) 6));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 114):
	{
		NI T271_;
		T271_ = (NI)0;
		T271_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T271_ + ((NI) 8));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 110):
	{
		NI T273_;
		T273_ = (NI)0;
		T273_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T273_ + ((NI) 6));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 111):
	{
		NI T275_;
		T275_ = (NI)0;
		T275_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T275_ + ((NI) 9));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 90):
	{
		NI T277_;
		T277_ = (NI)0;
		T277_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T277_ + ((NI) 4));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 125):
	{
		NimStringDesc* T279_;
		T279_ = NIM_NIL;
		T279_ = comment__ast_997(n);
		result = (T279_ ? T279_->Sup.len : 0);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 85):
	{
		NI T281_;
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T282_;
		NI T283_;
		T281_ = (NI)0;
		T281_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -2));
		T282_ = NIM_NIL;
		T282_ = lastSon__ast_4833(n);
		T283_ = (NI)0;
		T283_ = lsub__renderer_422(g, T282_);
		result = (NI)((NI)(T281_ + T283_) + ((NI) 5));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 78):
	{
		NI T285_;
		NI T286_;
		T285_ = (NI)0;
		T285_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		T286_ = (NI)0;
		T286_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 1)]);
		result = (NI)((NI)(T285_ + ((NI) 4)) + T286_);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 86):
	{
		NI T288_;
		T288_ = (NI)0;
		T288_ = lsons__renderer_594(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T288_ + ((NI) 7));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 88):
	{
		NI T290_;
		T290_ = (NI)0;
		T290_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T290_ + ((NI) 6));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 107):
	{
		NI T292_;
		T292_ = (NI)0;
		T292_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
		result = (NI)(T292_ + ((NI) 9));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 75):
	{
		NI T294_;
		T294_ = (NI)0;
		T294_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -1));
		result = (NI)(T294_ + ((NI) 2));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 76):
	{
		NI T296_;
		T296_ = (NI)0;
		T296_ = lcomma__renderer_559(g, n, ((NI) 1), ((NI) -1));
		result = (NI)(T296_ + ((NI) 2));
		{
			NI T301_;
			if (!!(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)))) goto LA299_;
			T301_ = (NI)0;
			T301_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[((NI) 0)]);
			result += (NI)(T301_ + ((NI) 2));
		}
		LA299_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 87):
	{
		NI T303_;
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T304_;
		NI T305_;
		T303_ = (NI)0;
		T303_ = lcomma__renderer_559(g, n, ((NI) 0), ((NI) -2));
		T304_ = NIM_NIL;
		T304_ = lastSon__ast_4833(n);
		T305_ = (NI)0;
		T305_ = lsub__renderer_422(g, T304_);
		result = (NI)((NI)(T303_ + T305_) + ((NI) 9));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 133):
	{
		result = ((NI) 7);
	}
	break;
	default:
	{
		result = ((NI) 81);
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, fits__renderer_821)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, NI x) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = (x <= ((NI) 80));
	return result;
}
static N_INLINE(NI, find__stdZenumutils_49)(NimStringDesc** a, NI aLen_0, NimStringDesc* item) {
	NI result;
{	result = (NI)0;
	result = ((NI) 0);
	{
		NimStringDesc** i;
		NI i_2;
		i = (NimStringDesc**)0;
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < aLen_0)) goto LA3;
				i = (&a[i_2]);
				{
					if (!eqStrings((*i), item)) goto LA6_;
					goto BeforeRet_;
				}
				LA6_: ;
				result += ((NI) 1);
				i_2 += ((NI) 1);
			} LA3: ;
		}
	}
	result = ((NI) -1);
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, contains__stdZenumutils_44)(NimStringDesc** a, NI aLen_0, NimStringDesc* item) {
	NIM_BOOL result;
	NI T1_;
{	result = (NIM_BOOL)0;
	T1_ = (NI)0;
	T1_ = find__stdZenumutils_49(a, aLen_0, item);
	result = (((NI) 0) <= T1_);
	goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isHideable__renderer_889)(tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* config, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 34):
	{
		NIM_BOOL T2_;
		T2_ = (NIM_BOOL)0;
		T2_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2));
		if (!(T2_)) goto LA3_;
		T2_ = contains__stdZenumutils_44(TM__edlVk3rimVQxtoXNQ77Dhw_46, 4, (*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_5.ident).s);
		LA3_: ;
		result = T2_;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2):
	{
		result = contains__stdZenumutils_44(TM__edlVk3rimVQxtoXNQ77Dhw_51, 2, (*(*n)._kind_5.ident).s);
	}
	break;
	default:
	{
		result = NIM_FALSE;
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, putWithSpace__renderer_885)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw kind, NimStringDesc* s) {
	put__renderer_235(g, kind, s, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasCom__renderer_870)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	result = NIM_FALSE;
	{
		if (!(n == 0)) goto LA3_;
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	LA3_: ;
	{
		NimStringDesc* T7_;
		T7_ = NIM_NIL;
		T7_ = comment__ast_997(n);
		if (!(((NI) 0) < (T7_ ? T7_->Sup.len : 0))) goto LA8_;
		result = NIM_TRUE;
		goto BeforeRet_;
	}
	LA8_: ;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1) ... ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23):
	{
	}
	break;
	default:
	{
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__ast_3155(n);
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA14;
					i = i_2;
					{
						NIM_BOOL T17_;
						T17_ = (NIM_BOOL)0;
						T17_ = hasCom__renderer_870((*n)._kind_6.sons->data[i]);
						if (!T17_) goto LA18_;
						result = NIM_TRUE;
						goto BeforeRet_;
					}
					LA18_: ;
					i_2 += ((NI) 1);
				} LA14: ;
			}
		}
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_CHAR*, X5BX5D___system_7363)(NimStringDesc** s, NI i) {
	NIM_CHAR* result;
	result = (NIM_CHAR*)0;
	result = (&(*s)->data[(NI)(((*s) ? (*s)->Sup.len : 0) - i)]);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, maxLineLength__renderer_289)(NimStringDesc* s) {
	NI result;
	NI i;
	NI hi;
	NI lineLen;
{	result = (NI)0;
	{
		if (!((s ? s->Sup.len : 0) == ((NI) 0))) goto LA3_;
		result = ((NI) 0);
		goto BeforeRet_;
	}
	LA3_: ;
	i = ((NI) 0);
	hi = (NI)((s ? s->Sup.len : 0) - ((NI) 1));
	lineLen = ((NI) 0);
	{
		while (1) {
			if (!(i <= hi)) goto LA6;
			switch (((NU8)(s->data[i]))) {
			case 0:
			{
				goto LA5;
			}
			break;
			case 13:
			{
				i += ((NI) 1);
				{
					NIM_BOOL T11_;
					T11_ = (NIM_BOOL)0;
					T11_ = (i <= hi);
					if (!(T11_)) goto LA12_;
					T11_ = ((NU8)(s->data[i]) == (NU8)(10));
					LA12_: ;
					if (!T11_) goto LA13_;
					i += ((NI) 1);
				}
				LA13_: ;
				result = ((result >= lineLen) ? result : lineLen);
				lineLen = ((NI) 0);
			}
			break;
			case 10:
			{
				i += ((NI) 1);
				result = ((result >= lineLen) ? result : lineLen);
				lineLen = ((NI) 0);
			}
			break;
			default:
			{
				lineLen += ((NI) 1);
				i += ((NI) 1);
			}
			break;
			}
		} LA6: ;
	} LA5: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, putComment__renderer_256)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, NimStringDesc* s) {
	NI i;
	NI hi;
	NIM_BOOL isCode;
	NIM_BOOL T5_;
	NI ind;
	NimStringDesc* com;
{	{
		if (!((s ? s->Sup.len : 0) == ((NI) 0))) goto LA3_;
		goto BeforeRet_;
	}
	LA3_: ;
	i = ((NI) 0);
	hi = (NI)((s ? s->Sup.len : 0) - ((NI) 1));
	T5_ = (NIM_BOOL)0;
	T5_ = (((NI) 2) <= (s ? s->Sup.len : 0));
	if (!(T5_)) goto LA6_;
	T5_ = !(((NU8)(s->data[((NI) 1)]) == (NU8)(32)));
	LA6_: ;
	isCode = T5_;
	ind = (*g).col;
	com = copyString(((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_54));
	{
		while (1) {
			if (!(i <= hi)) goto LA8;
			switch (((NU8)(s->data[i]))) {
			case 0:
			{
				goto LA7;
			}
			break;
			case 13:
			{
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 111), com, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				com = copyString(((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_54));
				i += ((NI) 1);
				{
					NIM_BOOL T13_;
					T13_ = (NIM_BOOL)0;
					T13_ = (i <= hi);
					if (!(T13_)) goto LA14_;
					T13_ = ((NU8)(s->data[i]) == (NU8)(10));
					LA14_: ;
					if (!T13_) goto LA15_;
					i += ((NI) 1);
				}
				LA15_: ;
				optNL__renderer_203(g, ind);
			}
			break;
			case 10:
			{
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 111), com, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				com = copyString(((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_54));
				i += ((NI) 1);
				optNL__renderer_203(g, ind);
			}
			break;
			case 32:
			case 9:
			{
				com = addChar(com, s->data[i]);
				i += ((NI) 1);
			}
			break;
			default:
			{
				NI j;
				j = i;
				{
					while (1) {
						NIM_BOOL T22_;
						T22_ = (NIM_BOOL)0;
						T22_ = (j <= hi);
						if (!(T22_)) goto LA23_;
						T22_ = ((NU8)(32) < (NU8)(s->data[j]));
						LA23_: ;
						if (!T22_) goto LA21;
						j += ((NI) 1);
					} LA21: ;
				}
				{
					NIM_BOOL T26_;
					T26_ = (NIM_BOOL)0;
					T26_ = !(isCode);
					if (!(T26_)) goto LA27_;
					T26_ = (((NI) 80) < (NI)((*g).col + (NI)(j - i)));
					LA27_: ;
					if (!T26_) goto LA28_;
					put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 111), com, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
					optNL__renderer_203(g, ind);
					com = copyString(((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_54));
				}
				LA28_: ;
				{
					while (1) {
						NIM_BOOL T32_;
						T32_ = (NIM_BOOL)0;
						T32_ = (i <= hi);
						if (!(T32_)) goto LA33_;
						T32_ = ((NU8)(32) < (NU8)(s->data[i]));
						LA33_: ;
						if (!T32_) goto LA31;
						com = addChar(com, s->data[i]);
						i += ((NI) 1);
					} LA31: ;
				}
			}
			break;
			}
		} LA8: ;
	} LA7: ;
	put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 111), com, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	optNL__renderer_206(g);
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, gcom__renderer_387)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	{
		NIM_BOOL T3_;
		NI oneSpaceAdded;
		NimStringDesc* T29_;
		T3_ = (NIM_BOOL)0;
		T3_ = shouldRenderComment__renderer_383((&(*g)), n);
		if (!T3_) goto LA4_;
		oneSpaceAdded = ((NI) 0);
		{
			NIM_BOOL T8_;
			NIM_BOOL T9_;
			NIM_CHAR* T12_;
			T8_ = (NIM_BOOL)0;
			T9_ = (NIM_BOOL)0;
			T9_ = ((*g).pendingNL < ((NI) 0));
			if (!(T9_)) goto LA10_;
			T9_ = (((NI) 0) < ((*g).buf ? (*g).buf->Sup.len : 0));
			LA10_: ;
			T8_ = T9_;
			if (!(T8_)) goto LA11_;
			T12_ = (NIM_CHAR*)0;
			T12_ = X5BX5D___system_7363((&(*g).buf), ((NI) 1));
			T8_ = !(((NU8)((*T12_)) == (NU8)(32)));
			LA11_: ;
			if (!T8_) goto LA13_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			oneSpaceAdded = ((NI) 1);
		}
		LA13_: ;
		{
			NIM_BOOL T17_;
			NIM_BOOL T18_;
			NI ml;
			NimStringDesc* T23_;
			T17_ = (NIM_BOOL)0;
			T18_ = (NIM_BOOL)0;
			T18_ = ((*g).pendingNL < ((NI) 0));
			if (!(T18_)) goto LA19_;
			T18_ = (((NI) 0) < ((*g).buf ? (*g).buf->Sup.len : 0));
			LA19_: ;
			T17_ = T18_;
			if (!(T17_)) goto LA20_;
			T17_ = ((*g).col < ((NI) 30));
			LA20_: ;
			if (!T17_) goto LA21_;
			T23_ = NIM_NIL;
			T23_ = comment__ast_997(n);
			ml = maxLineLength__renderer_289(T23_);
			{
				NimStringDesc* T28_;
				if (!((NI)(ml + ((NI) 30)) <= ((NI) 80))) goto LA26_;
				T28_ = NIM_NIL;
				T28_ = spaces__pureZstrutils_1029(((NI) ((NI)(((NI) 30) - (*g).col))));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), T28_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				(*g).col -= oneSpaceAdded;
			}
			LA26_: ;
		}
		LA21_: ;
		T29_ = NIM_NIL;
		T29_ = comment__ast_997(n);
		putComment__renderer_256(g, T29_);
	}
	LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, popAllComs__renderer_364)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g) {
	unsureAsgnRef((void**) (&(*g).comStack), (tySequence__IeU9azYSNIK3V9b36Ir6NZcw*) setLengthSeqV2(((*g).comStack)?&((*g).comStack)->Sup:NIM_NIL, (&NTItnodeseq__IeU9azYSNIK3V9b36Ir6NZcw_), ((NI) 0)));
}
N_LIB_PRIVATE N_NIMCALL(void, gcoms__renderer_403)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g) {
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (((*g).comStack ? (*g).comStack->Sup.len : 0)-1);
		colontmp_ = T2_;
		res = ((NI) 0);
		{
			while (1) {
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				gcom__renderer_387(g, (*g).comStack->data[i]);
				res += ((NI) 1);
			} LA4: ;
		}
	}
	popAllComs__renderer_364(g);
}
N_LIB_PRIVATE N_NIMCALL(void, gcommaAux__renderer_911)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI ind, NI start, NI theEnd, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw separator) {
	NIM_BOOL inPragma;
	NIM_BOOL inHideable;
	inPragma = ((*g).inPragma == ((NI) 1));
	inHideable = NIM_FALSE;
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (NI)0;
		T2_ = len__ast_3155(n);
		colontmp_ = (NI)(T2_ + theEnd);
		res = start;
		{
			while (1) {
				NIM_BOOL c;
				NI T5_;
				NI sublen;
				NI T6_;
				NI oldLen;
				NI T14_;
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				T5_ = (NI)0;
				T5_ = len__ast_3155(n);
				c = (i < (NI)(T5_ + theEnd));
				T6_ = (NI)0;
				T6_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[i]);
				sublen = (NI)(T6_ + c);
				{
					NIM_BOOL T9_;
					NIM_BOOL T10_;
					T9_ = (NIM_BOOL)0;
					T10_ = (NIM_BOOL)0;
					T10_ = fits__renderer_821((&(*g)), (NI)((*g).lineLen + sublen));
					T9_ = !(T10_);
					if (!(T9_)) goto LA11_;
					T9_ = ((NI)(ind + sublen) < ((NI) 80));
					LA11_: ;
					if (!T9_) goto LA12_;
					optNL__renderer_203(g, ind);
				}
				LA12_: ;
				T14_ = ((*g).tokens ? (*g).tokens->Sup.len : 0);
				oldLen = T14_;
				{
					if (!inPragma) goto LA17_;
					{
						NIM_BOOL T21_;
						T21_ = (NIM_BOOL)0;
						T21_ = !(inHideable);
						if (!(T21_)) goto LA22_;
						T21_ = isHideable__renderer_889((*g).config, (*n)._kind_6.sons->data[i]);
						LA22_: ;
						if (!T21_) goto LA23_;
						inHideable = NIM_TRUE;
						put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 117), ((NimStringDesc*) NIM_NIL), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
					}
					goto LA19_;
					LA23_: ;
					{
						NIM_BOOL T26_;
						NIM_BOOL T28_;
						T26_ = (NIM_BOOL)0;
						T26_ = inHideable;
						if (!(T26_)) goto LA27_;
						T28_ = (NIM_BOOL)0;
						T28_ = isHideable__renderer_889((*g).config, (*n)._kind_6.sons->data[i]);
						T26_ = !(T28_);
						LA27_: ;
						if (!T26_) goto LA29_;
						inHideable = NIM_FALSE;
						put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 118), ((NimStringDesc*) NIM_NIL), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
					}
					goto LA19_;
					LA29_: ;
					LA19_: ;
				}
				LA17_: ;
				gsub__renderer_856(g, (*n)._kind_6.sons->data[i], NIM_FALSE);
				{
					if (!c) goto LA33_;
					{
						NI T37_;
						T37_ = ((*g).tokens ? (*g).tokens->Sup.len : 0);
						if (!(oldLen < T37_)) goto LA38_;
						putWithSpace__renderer_885(g, separator, reprEnum((NI)separator, (&NTItoktype__jtO8nsEQZ3q9auoz8Uy0Ohw_)));
					}
					LA38_: ;
					{
						NIM_BOOL T42_;
						T42_ = (NIM_BOOL)0;
						T42_ = shouldRenderComment__renderer_371((&(*g)));
						if (!(T42_)) goto LA43_;
						T42_ = hasCom__renderer_870((*n)._kind_6.sons->data[i]);
						LA43_: ;
						if (!T42_) goto LA44_;
						gcoms__renderer_403(g);
						optNL__renderer_203(g, ind);
					}
					LA44_: ;
				}
				LA33_: ;
				res += ((NI) 1);
			} LA4: ;
		}
	}
	{
		if (!inHideable) goto LA48_;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 118), ((NimStringDesc*) NIM_NIL), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		inHideable = NIM_FALSE;
	}
	LA48_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, gcomma__renderer_963)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI start, NI theEnd) {
	NI ind;
	ind = (*g).lineLen;
	{
		if (!(((NI) 40) < ind)) goto LA3_;
		ind = (NI)((*g).indent + ((NI) 4));
	}
	LA3_: ;
	gcommaAux__renderer_911(g, n, ind, start, theEnd, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 102));
}
N_LIB_PRIVATE N_NIMCALL(void, gsub__renderer_1413)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI i) {
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__ast_3155(n);
		if (!(i < T3_)) goto LA4_;
		gsub__renderer_856(g, (*n)._kind_6.sons->data[i], NIM_FALSE);
	}
	goto LA1_;
	LA4_: ;
	{
		NimStringDesc* T7_;
		NimStringDesc* T8_;
		T7_ = NIM_NIL;
		T8_ = NIM_NIL;
		T8_ = dollar___systemZdollars_3(i);
		T7_ = rawNewString((T8_ ? T8_->Sup.len : 0) + (reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)) ? reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_))->Sup.len : 0) + 26);
appendString(T7_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_58));
appendString(T7_, T8_);
appendString(T7_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_59));
appendString(T7_, reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)));
appendString(T7_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_60));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 110), T7_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	LA1_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q, bracketKind__renderer_1433)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q result;
	result = (tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q)0;
	{
		if (!!((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 5))&15U)))!=0))) goto LA3_;
		switch ((*n).kind) {
		case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 56):
		case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 57):
		{
			{
				NI T8_;
				T8_ = (NI)0;
				T8_ = len__ast_3155(n);
				if (!(((NI) 0) < T8_)) goto LA9_;
				result = bracketKind__renderer_1433(g, (*n)._kind_6.sons->data[((NI) 0)]);
			}
			LA9_: ;
		}
		break;
		case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3):
		{
			if (eqStrings((*(*(*n)._kind_4.sym).name).s, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_61))) goto LA12_;
			if (eqStrings((*(*(*n)._kind_4.sym).name).s, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_62))) goto LA13_;
			if (eqStrings((*(*(*n)._kind_4.sym).name).s, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_63))) goto LA14_;
			if (eqStrings((*(*(*n)._kind_4.sym).name).s, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_64))) goto LA15_;
			goto LA16_;
			LA12_: ;
			{
				result = ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 1);
			}
			goto LA17_;
			LA13_: ;
			{
				result = ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 2);
			}
			goto LA17_;
			LA14_: ;
			{
				result = ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 3);
			}
			goto LA17_;
			LA15_: ;
			{
				result = ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 4);
			}
			goto LA17_;
			LA16_: ;
			{
				result = ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 0);
			}
			LA17_: ;
		}
		break;
		default:
		{
			result = ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 0);
		}
		break;
		}
	}
	LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, gcomma__renderer_951)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c, NI start, NI theEnd) {
	NI ind;
	ind = (NI)0;
	{
		if (!((c.Field1 &((NU8)1<<((NU)(((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 1))&7U)))!=0)) goto LA3_;
		ind = (NI)((*g).indent + ((NI) 2));
	}
	goto LA1_;
	LA3_: ;
	{
		ind = (*g).lineLen;
		{
			if (!(((NI) 40) < ind)) goto LA8_;
			ind = (NI)((*g).indent + ((NI) 4));
		}
		LA8_: ;
	}
	LA1_: ;
	gcommaAux__renderer_911(g, n, ind, start, theEnd, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 102));
}
static N_INLINE(NIM_BOOL, startsWith__pureZstrutils_1246)(NimStringDesc* s, NIM_CHAR prefix) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T1_ = (((NI) 0) < (s ? s->Sup.len : 0));
	if (!(T1_)) goto LA2_;
	T1_ = ((NU8)(s->data[((NI) 0)]) == (NU8)(prefix));
	LA2_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isCustomLit__renderer_1531)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T3_;
		NI T4_;
		tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* ident;
		NIM_BOOL T8_;
		NIM_BOOL T9_;
		T3_ = (NIM_BOOL)0;
		T4_ = (NI)0;
		T4_ = len__ast_3155(n);
		T3_ = (T4_ == ((NI) 2));
		if (!(T3_)) goto LA5_;
		T3_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 21));
		LA5_: ;
		if (!T3_) goto LA6_;
		ident = getPIdent__ast_3060((*n)._kind_6.sons->data[((NI) 1)]);
		T8_ = (NIM_BOOL)0;
		T9_ = (NIM_BOOL)0;
		T9_ = eqeq___idents_229(ident, ((tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg*) NIM_NIL));
		T8_ = !(T9_);
		if (!(T8_)) goto LA10_;
		T8_ = startsWith__pureZstrutils_1246((*ident).s, 39);
		LA10_: ;
		result = T8_;
	}
	LA6_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, gsemicolon__renderer_969)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI start, NI theEnd) {
	NI ind;
	ind = (*g).lineLen;
	{
		if (!(((NI) 40) < ind)) goto LA3_;
		ind = (NI)((*g).indent + ((NI) 4));
	}
	LA3_: ;
	gcommaAux__renderer_911(g, n, ind, start, theEnd, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 103));
}
N_LIB_PRIVATE N_NIMCALL(void, doParamsAux__renderer_1398)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* params) {
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__ast_3155(params);
		if (!(((NI) 1) < T3_)) goto LA4_;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gsemicolon__renderer_969(g, params, ((NI) 1), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	LA4_: ;
	{
		NIM_BOOL T8_;
		NI T9_;
		T8_ = (NIM_BOOL)0;
		T9_ = (NI)0;
		T9_ = len__ast_3155(params);
		T8_ = (((NI) 0) < T9_);
		if (!(T8_)) goto LA10_;
		T8_ = !(((*(*params)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)));
		LA10_: ;
		if (!T8_) goto LA11_;
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 110), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_83));
		gsub__renderer_856(g, (*params)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
	}
	LA11_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*, skipHiddenNodes__renderer_1454)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* result;
	result = NIM_NIL;
	result = n;
	{
		while (1) {
			if (!!((result == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL)))) goto LA2;
			{
				NIM_BOOL T5_;
				NI T7_;
				T5_ = (NIM_BOOL)0;
				T5_ = ((*result).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 58) || (*result).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 59) || (*result).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 32));
				if (!(T5_)) goto LA6_;
				T7_ = (NI)0;
				T7_ = len__ast_3155(result);
				T5_ = (((NI) 1) < T7_);
				LA6_: ;
				if (!T5_) goto LA8_;
				result = (*result)._kind_6.sons->data[((NI) 1)];
			}
			goto LA3_;
			LA8_: ;
			{
				NIM_BOOL T11_;
				NI T13_;
				T11_ = (NIM_BOOL)0;
				T11_ = ((*result).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 46) || (*result).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 64) || (*result).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 65) || (*result).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 71) || (*result).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 72));
				if (!(T11_)) goto LA12_;
				T13_ = (NI)0;
				T13_ = len__ast_3155(result);
				T11_ = (((NI) 0) < T13_);
				LA12_: ;
				if (!T11_) goto LA14_;
				result = (*result)._kind_6.sons->data[((NI) 0)];
			}
			goto LA3_;
			LA14_: ;
			{
				goto LA1;
			}
			LA3_: ;
		} LA2: ;
	} LA1: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, infixArgument__renderer_1494)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI i) {
	NIM_BOOL needsParenthesis;
	tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* nNext;
{	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (i < ((NI) 1));
		if (!(T3_)) goto LA4_;
		T3_ = (((NI) 2) < i);
		LA4_: ;
		if (!T3_) goto LA5_;
		goto BeforeRet_;
	}
	LA5_: ;
	needsParenthesis = NIM_FALSE;
	nNext = skipHiddenNodes__renderer_1454((*n)._kind_6.sons->data[i]);
	{
		if (!((*nNext).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 29))) goto LA9_;
		{
			NIM_BOOL T13_;
			tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* nextId;
			tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* nnId;
			T13_ = (NIM_BOOL)0;
			T13_ = ((*(*nNext)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3) || (*(*nNext)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2));
			if (!(T13_)) goto LA14_;
			T13_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3) || (*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2));
			LA14_: ;
			if (!T13_) goto LA15_;
			{
				if (!((*(*nNext)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA19_;
				nextId = (*(*(*nNext)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name;
			}
			goto LA17_;
			LA19_: ;
			{
				nextId = (*(*nNext)._kind_6.sons->data[((NI) 0)])._kind_5.ident;
			}
			LA17_: ;
			{
				if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA24_;
				nnId = (*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name;
			}
			goto LA22_;
			LA24_: ;
			{
				nnId = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_5.ident;
			}
			LA22_: ;
			{
				if (!(i == ((NI) 1))) goto LA29_;
				{
					NI T33_;
					NI T34_;
					T33_ = (NI)0;
					T33_ = getPrecedence__lexer_1794(nextId);
					T34_ = (NI)0;
					T34_ = getPrecedence__lexer_1794(nnId);
					if (!(T33_ < T34_)) goto LA35_;
					needsParenthesis = NIM_TRUE;
				}
				LA35_: ;
			}
			goto LA27_;
			LA29_: ;
			{
				if (!(i == ((NI) 2))) goto LA38_;
				{
					NI T42_;
					NI T43_;
					T42_ = (NI)0;
					T42_ = getPrecedence__lexer_1794(nextId);
					T43_ = (NI)0;
					T43_ = getPrecedence__lexer_1794(nnId);
					if (!(T42_ <= T43_)) goto LA44_;
					needsParenthesis = NIM_TRUE;
				}
				LA44_: ;
			}
			goto LA27_;
			LA38_: ;
			LA27_: ;
		}
		LA15_: ;
	}
	LA9_: ;
	{
		if (!needsParenthesis) goto LA48_;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	LA48_: ;
	gsub__renderer_1413(g, n, i);
	{
		if (!needsParenthesis) goto LA52_;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	LA52_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isKeyword__renderer_73)(tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* i) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI) 1) <= (*i).id);
		if (!(T3_)) goto LA4_;
		T3_ = ((*i).id <= ((NI) 66));
		LA4_: ;
		if (!T3_) goto LA5_;
		result = NIM_TRUE;
	}
	LA5_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getStrVal__renderer_1835)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NimStringDesc* result;
	result = NIM_NIL;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2):
	{
		result = copyString((*(*n)._kind_5.ident).s);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3):
	{
		result = copyString((*(*(*n)._kind_4.sym).name).s);
	}
	break;
	default:
	{
		result = ((NimStringDesc*) NIM_NIL);
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isAlpha__renderer_1838)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	{
		NimStringDesc* tmp;
		NIM_BOOL T5_;
		if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2) || (*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA3_;
		tmp = getStrVal__renderer_1835(n);
		T5_ = (NIM_BOOL)0;
		T5_ = (((NI) 0) < (tmp ? tmp->Sup.len : 0));
		if (!(T5_)) goto LA6_;
		T5_ = (((NU8)(tmp->data[((NI) 0)])) >= ((NU8)(97)) && ((NU8)(tmp->data[((NI) 0)])) <= ((NU8)(122)) || ((NU8)(tmp->data[((NI) 0)])) >= ((NU8)(65)) && ((NU8)(tmp->data[((NI) 0)])) <= ((NU8)(90)));
		LA6_: ;
		result = T5_;
	}
	LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, gcond__renderer_1053)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	{
		if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 126))) goto LA3_;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	LA3_: ;
	gsub__renderer_856(g, n, NIM_FALSE);
	{
		if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 126))) goto LA7_;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	LA7_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, gsons__renderer_975)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c, NI start, NI theEnd) {
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (NI)0;
		T2_ = len__ast_3155(n);
		colontmp_ = (NI)(T2_ + theEnd);
		res = start;
		{
			while (1) {
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				gsub__renderer_851(g, (*n)._kind_6.sons->data[i], c, NIM_FALSE);
				res += ((NI) 1);
			} LA4: ;
		}
	}
}
N_LIB_PRIVATE N_NIMCALL(void, dedent__renderer_218)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g) {
	(*g).indent -= ((NI) 2);
	{
		if (!(((NI) 2) < (*g).pendingNL)) goto LA3_;
		(*g).pendingNL -= ((NI) 2);
		(*g).lineLen -= ((NI) 2);
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, putNL__renderer_169)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, NI indent) {
	{
		if (!(((NI) 0) <= (*g).pendingNL)) goto LA3_;
		addPendingNL__renderer_166(g);
	}
	goto LA1_;
	LA3_: ;
	{
		addTok__renderer_140(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_4), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		(*g).col = ((NI) 0);
	}
	LA1_: ;
	(*g).pendingNL = indent;
	(*g).lineLen = indent;
	(*g).pendingWhitespace = ((NI) -1);
}
N_LIB_PRIVATE N_NIMCALL(void, putNL__renderer_201)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g) {
	putNL__renderer_169(g, (*g).indent);
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, longMode__renderer_1008)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NI start, NI theEnd) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = shouldRenderComment__renderer_383(g, n);
	{
		if (!!(result)) goto LA3_;
		{
			NI i;
			NI colontmp_;
			NI T6_;
			NI res;
			i = (NI)0;
			colontmp_ = (NI)0;
			T6_ = (NI)0;
			T6_ = len__ast_3155(n);
			colontmp_ = (NI)(T6_ + theEnd);
			res = start;
			{
				while (1) {
					if (!(res <= colontmp_)) goto LA8;
					i = res;
					{
						NI T11_;
						T11_ = (NI)0;
						T11_ = lsub__renderer_422(g, (*n)._kind_6.sons->data[i]);
						if (!(((NI) 80) < T11_)) goto LA12_;
						result = NIM_TRUE;
						goto LA5;
					}
					LA12_: ;
					res += ((NI) 1);
				} LA8: ;
			}
		} LA5: ;
	}
	LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, gif__renderer_1064)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	gcond__renderer_1053(g, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)]);
	initContext__renderer_849((&c));
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
	{
		NIM_BOOL T3_;
		NI T5_;
		T3_ = (NIM_BOOL)0;
		T3_ = longMode__renderer_1008((&(*g)), n, ((NI) 0), ((NI) -1));
		if (T3_) goto LA4_;
		T5_ = (NI)0;
		T5_ = lsub__renderer_422((&(*g)), (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)]);
		T3_ = (((NI) 80) < (NI)(T5_ + (*g).lineLen));
		LA4_: ;
		if (!T3_) goto LA6_;
		c.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 0)) & 7);
	}
	LA6_: ;
	gcoms__renderer_403(g);
	gstmts__renderer_1023(g, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)], c, NIM_TRUE);
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_3155(n);
		i_2 = ((NI) 1);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA10;
				i = i_2;
				optNL__renderer_206(g);
				gsub__renderer_851(g, (*n)._kind_6.sons->data[i], c, NIM_FALSE);
				i_2 += ((NI) 1);
			} LA10: ;
		}
	}
}
N_LIB_PRIVATE N_NIMCALL(void, gwhile__renderer_1087)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 66), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_102));
	gcond__renderer_1053(g, (*n)._kind_6.sons->data[((NI) 0)]);
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
	initContext__renderer_849((&c));
	{
		NIM_BOOL T3_;
		NI T5_;
		T3_ = (NIM_BOOL)0;
		T3_ = longMode__renderer_1008((&(*g)), n, ((NI) 0), ((NI) -1));
		if (T3_) goto LA4_;
		T5_ = (NI)0;
		T5_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[((NI) 1)]);
		T3_ = (((NI) 80) < (NI)(T5_ + (*g).lineLen));
		LA4_: ;
		if (!T3_) goto LA6_;
		c.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 0)) & 7);
	}
	LA6_: ;
	gcoms__renderer_403(g);
	gstmts__renderer_1023(g, (*n)._kind_6.sons->data[((NI) 1)], c, NIM_TRUE);
}
N_LIB_PRIVATE N_NIMCALL(void, gpragmaBlock__renderer_1107)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
	initContext__renderer_849((&c));
	{
		NIM_BOOL T3_;
		NI T5_;
		T3_ = (NIM_BOOL)0;
		T3_ = longMode__renderer_1008((&(*g)), n, ((NI) 0), ((NI) -1));
		if (T3_) goto LA4_;
		T5_ = (NI)0;
		T5_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[((NI) 1)]);
		T3_ = (((NI) 80) < (NI)(T5_ + (*g).lineLen));
		LA4_: ;
		if (!T3_) goto LA6_;
		c.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 0)) & 7);
	}
	LA6_: ;
	gcoms__renderer_403(g);
	gstmts__renderer_1023(g, (*n)._kind_6.sons->data[((NI) 1)], c, NIM_TRUE);
}
N_LIB_PRIVATE N_NIMCALL(void, gcase__renderer_1156)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	NI last;
{	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	initContext__renderer_849((&c));
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__ast_3155(n);
		if (!(T3_ == ((NI) 0))) goto LA4_;
		goto BeforeRet_;
	}
	LA4_: ;
	{
		NI T8_;
		T8_ = (NI)0;
		T8_ = len__ast_3155(n);
		if (!((*(*n)._kind_6.sons->data[(NI)(T8_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 88))) goto LA9_;
		last = ((NI) -2);
	}
	goto LA6_;
	LA9_: ;
	{
		last = ((NI) -1);
	}
	LA6_: ;
	{
		NIM_BOOL T14_;
		T14_ = (NIM_BOOL)0;
		T14_ = longMode__renderer_1008((&(*g)), n, ((NI) 0), last);
		if (!T14_) goto LA15_;
		c.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 0)) & 7);
	}
	LA15_: ;
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 10), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_103));
	gcond__renderer_1053(g, (*n)._kind_6.sons->data[((NI) 0)]);
	gcoms__renderer_403(g);
	optNL__renderer_206(g);
	gsons__renderer_975(g, n, c, ((NI) 1), last);
	{
		NI T27_;
		if (!(last == ((NI) -2))) goto LA19_;
		initContext__renderer_849((&c));
		{
			NI T23_;
			NIM_BOOL T24_;
			T23_ = (NI)0;
			T23_ = len__ast_3155(n);
			T24_ = (NIM_BOOL)0;
			T24_ = longMode__renderer_1008((&(*g)), (*n)._kind_6.sons->data[(NI)(T23_ - ((NI) 1))], ((NI) 0), ((NI) -1));
			if (!T24_) goto LA25_;
			c.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 0)) & 7);
		}
		LA25_: ;
		T27_ = (NI)0;
		T27_ = len__ast_3155(n);
		gsub__renderer_851(g, (*n)._kind_6.sons->data[(NI)(T27_ - ((NI) 1))], c, NIM_FALSE);
	}
	LA19_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, gtry__renderer_1118)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 60), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_104), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
	initContext__renderer_849((&c));
	{
		NIM_BOOL T3_;
		NI T5_;
		T3_ = (NIM_BOOL)0;
		T3_ = longMode__renderer_1008((&(*g)), n, ((NI) 0), ((NI) -1));
		if (T3_) goto LA4_;
		T5_ = (NI)0;
		T5_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[((NI) 0)]);
		T3_ = (((NI) 80) < (NI)(T5_ + (*g).lineLen));
		LA4_: ;
		if (!T3_) goto LA6_;
		c.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 0)) & 7);
	}
	LA6_: ;
	gcoms__renderer_403(g);
	gstmts__renderer_1023(g, (*n)._kind_6.sons->data[((NI) 0)], c, NIM_TRUE);
	gsons__renderer_975(g, n, c, ((NI) 1), ((NI) -1));
}
N_LIB_PRIVATE N_NIMCALL(void, gfor__renderer_1128)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	NI T11_;
	NI T12_;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 28), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_105));
	initContext__renderer_849((&c));
	{
		NIM_BOOL T3_;
		NI T5_;
		NI T6_;
		NI T7_;
		NI T8_;
		T3_ = (NIM_BOOL)0;
		T3_ = longMode__renderer_1008((&(*g)), n, ((NI) 0), ((NI) -1));
		if (T3_) goto LA4_;
		T5_ = (NI)0;
		T5_ = len__ast_3155(n);
		T6_ = (NI)0;
		T6_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[(NI)(T5_ - ((NI) 1))]);
		T7_ = (NI)0;
		T7_ = len__ast_3155(n);
		T8_ = (NI)0;
		T8_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[(NI)(T7_ - ((NI) 2))]);
		T3_ = (((NI) 80) < (NI)((NI)((NI)(T6_ + T8_) + ((NI) 6)) + (*g).lineLen));
		LA4_: ;
		if (!T3_) goto LA9_;
		c.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 0)) & 7);
	}
	LA9_: ;
	gcomma__renderer_951(g, n, c, ((NI) 0), ((NI) -3));
	put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 33), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_106));
	T11_ = (NI)0;
	T11_ = len__ast_3155(n);
	gsub__renderer_851(g, (*n)._kind_6.sons->data[(NI)(T11_ - ((NI) 2))], c, NIM_FALSE);
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
	gcoms__renderer_403(g);
	T12_ = (NI)0;
	T12_ = len__ast_3155(n);
	gstmts__renderer_1023(g, (*n)._kind_6.sons->data[(NI)(T12_ - ((NI) 1))], c, NIM_TRUE);
}
N_LIB_PRIVATE N_NIMCALL(void, gblock__renderer_1267)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
{	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__ast_3155(n);
		if (!(T3_ == ((NI) 0))) goto LA4_;
		goto BeforeRet_;
	}
	LA4_: ;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	initContext__renderer_849((&c));
	{
		if (!!(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)))) goto LA8_;
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 8), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_107));
		gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
	}
	goto LA6_;
	LA8_: ;
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 8), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_107), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	LA6_: ;
	{
		NI T13_;
		T13_ = (NI)0;
		T13_ = len__ast_3155(n);
		if (!(T13_ == ((NI) 1))) goto LA14_;
		goto BeforeRet_;
	}
	LA14_: ;
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
	{
		NIM_BOOL T18_;
		NI T20_;
		T18_ = (NIM_BOOL)0;
		T18_ = longMode__renderer_1008((&(*g)), n, ((NI) 0), ((NI) -1));
		if (T18_) goto LA19_;
		T20_ = (NI)0;
		T20_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[((NI) 1)]);
		T18_ = (((NI) 80) < (NI)(T20_ + (*g).lineLen));
		LA19_: ;
		if (!T18_) goto LA21_;
		c.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 0)) & 7);
	}
	LA21_: ;
	gcoms__renderer_403(g);
	gstmts__renderer_1023(g, (*n)._kind_6.sons->data[((NI) 1)], c, NIM_TRUE);
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, gstaticStmt__renderer_1289)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 58), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_73));
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
	initContext__renderer_849((&c));
	{
		NIM_BOOL T3_;
		NI T5_;
		T3_ = (NIM_BOOL)0;
		T3_ = longMode__renderer_1008((&(*g)), n, ((NI) 0), ((NI) -1));
		if (T3_) goto LA4_;
		T5_ = (NI)0;
		T5_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[((NI) 0)]);
		T3_ = (((NI) 80) < (NI)(T5_ + (*g).lineLen));
		LA4_: ;
		if (!T3_) goto LA6_;
		c.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 0)) & 7);
	}
	LA6_: ;
	gcoms__renderer_403(g);
	gstmts__renderer_1023(g, (*n)._kind_6.sons->data[((NI) 0)], c, NIM_TRUE);
}
N_LIB_PRIVATE N_NIMCALL(void, gasm__renderer_1299)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 6), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_108));
	gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
	gcoms__renderer_403(g);
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__ast_3155(n);
		if (!(((NI) 1) < T3_)) goto LA4_;
		gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 1)], NIM_FALSE);
	}
	LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderDefinitionName__renderer_88)(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s, NIM_BOOL noQuotes) {
	NimStringDesc* result;
	NimStringDesc* x;
	result = NIM_NIL;
	x = (*(*s).name).s;
	{
		NIM_BOOL T3_;
		NIM_BOOL T5_;
		NIM_BOOL T7_;
		T3_ = (NIM_BOOL)0;
		T3_ = noQuotes;
		if (T3_) goto LA4_;
		T5_ = (NIM_BOOL)0;
		T5_ = (((NU8)(x->data[((NI) 0)])) >= ((NU8)(97)) && ((NU8)(x->data[((NI) 0)])) <= ((NU8)(122)) || ((NU8)(x->data[((NI) 0)])) >= ((NU8)(65)) && ((NU8)(x->data[((NI) 0)])) <= ((NU8)(90)) || ((NU8)(x->data[((NI) 0)])) >= ((NU8)(128)) && ((NU8)(x->data[((NI) 0)])) <= ((NU8)(255)));
		if (!(T5_)) goto LA6_;
		T7_ = (NIM_BOOL)0;
		T7_ = isKeyword__renderer_73((*s).name);
		T5_ = !(T7_);
		LA6_: ;
		T3_ = T5_;
		LA4_: ;
		if (!T3_) goto LA8_;
		result = copyString(x);
	}
	goto LA1_;
	LA8_: ;
	{
		NimStringDesc* T11_;
		T11_ = NIM_NIL;
		T11_ = rawNewString((x ? x->Sup.len : 0) + 2);
appendChar(T11_, 96);
appendString(T11_, x);
appendChar(T11_, 96);
		result = T11_;
	}
	LA1_: ;
	return result;
}
static N_INLINE(void, genSymSuffix__renderer_1192)(NimStringDesc** result, tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s) {
	{
		tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* xX60gensym207_;
		if (!(((*s).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__9be9c6fEXk5NwyPvxxb6toPA) 37))&63U)))!=0)) goto LA3_;
		unsureAsgnRef((void**) (&(*result)), addChar((*result), 95));
		xX60gensym207_ = s;
		addInt__stdZprivateZdigitsutils_189(result, (NI)((NI)((NU64)(((NI) ((*xX60gensym207_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym207_).Sup.itemId.item))));
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, gpattern__renderer_1098)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 94), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_68), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	initContext__renderer_849((&c));
	{
		NIM_BOOL T3_;
		NI T5_;
		T3_ = (NIM_BOOL)0;
		T3_ = longMode__renderer_1008((&(*g)), n, ((NI) 0), ((NI) -1));
		if (T3_) goto LA4_;
		T5_ = (NI)0;
		T5_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[((NI) 0)]);
		T3_ = (((NI) 80) < (NI)(T5_ + (*g).lineLen));
		LA4_: ;
		if (!T3_) goto LA6_;
		c.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 0)) & 7);
	}
	LA6_: ;
	gcoms__renderer_403(g);
	gstmts__renderer_1023(g, n, c, NIM_TRUE);
	put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 95), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_69), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
}
N_LIB_PRIVATE N_NIMCALL(void, gproc__renderer_1205)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	NIM_BOOL oldInGenericParams;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	{
		tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s;
		NimStringDesc* ret;
		if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA3_;
		s = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym;
		ret = renderDefinitionName__renderer_88(s, NIM_FALSE);
		genSymSuffix__renderer_1192((&ret), s);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ret, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	goto LA1_;
	LA3_: ;
	{
		gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
	}
	LA1_: ;
	{
		if (!!(((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)))) goto LA8_;
		gpattern__renderer_1098(g, (*n)._kind_6.sons->data[((NI) 1)]);
	}
	LA8_: ;
	oldInGenericParams = (*g).inGenericParams;
	(*g).inGenericParams = NIM_TRUE;
	{
		NIM_BOOL T12_;
		NIM_BOOL T13_;
		T12_ = (NIM_BOOL)0;
		T13_ = (NIM_BOOL)0;
		T13_ = (((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 1))&15U)))!=0);
		if (!(T13_)) goto LA14_;
		T13_ = !(((*(*n)._kind_6.sons->data[((NI) 5)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)));
		LA14_: ;
		T12_ = T13_;
		if (!(T12_)) goto LA15_;
		T12_ = !(((*(*(*n)._kind_6.sons->data[((NI) 5)])._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)));
		LA15_: ;
		if (!T12_) goto LA16_;
		gsub__renderer_856(g, (*(*n)._kind_6.sons->data[((NI) 5)])._kind_6.sons->data[((NI) 1)], NIM_FALSE);
	}
	goto LA10_;
	LA16_: ;
	{
		gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 2)], NIM_FALSE);
	}
	LA10_: ;
	(*g).inGenericParams = oldInGenericParams;
	gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 3)], NIM_FALSE);
	{
		if (!!((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 4))&15U)))!=0))) goto LA21_;
		gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 4)], NIM_FALSE);
	}
	LA21_: ;
	{
		if (!!((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 1))&15U)))!=0))) goto LA25_;
		{
			if (!!(((*(*n)._kind_6.sons->data[((NI) 6)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)))) goto LA29_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 106), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67));
			indentNL__renderer_212(g);
			gcoms__renderer_403(g);
			dedent__renderer_218(g);
			initContext__renderer_849((&c));
			gstmts__renderer_1023(g, (*n)._kind_6.sons->data[((NI) 6)], c, NIM_TRUE);
			putNL__renderer_201(g);
		}
		goto LA27_;
		LA29_: ;
		{
			indentNL__renderer_212(g);
			gcoms__renderer_403(g);
			dedent__renderer_218(g);
		}
		LA27_: ;
	}
	LA25_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, gsection__renderer_990)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw kind, NimStringDesc* k) {
{	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__ast_3155(n);
		if (!(T3_ == ((NI) 0))) goto LA4_;
		goto BeforeRet_;
	}
	LA4_: ;
	putWithSpace__renderer_885(g, kind, k);
	gcoms__renderer_403(g);
	indentNL__renderer_212(g);
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_3155(n);
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA8;
				i = i_2;
				optNL__renderer_206(g);
				gsub__renderer_851(g, (*n)._kind_6.sons->data[i], c, NIM_FALSE);
				gcoms__renderer_403(g);
				i_2 += ((NI) 1);
			} LA8: ;
		}
	}
	dedent__renderer_218(g);
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasExplicitParams__renderer_2062)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* gp) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* p;
		p = NIM_NIL;
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = safeLen__ast_3148(gp);
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA4;
					i = i_2;
					p = (*gp)._kind_6.sons->data[i];
					{
						NIM_BOOL T7_;
						T7_ = (NIM_BOOL)0;
						T7_ = ((*p).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL));
						if (T7_) goto LA8_;
						T7_ = !((((*(*p).typ).flags &((NU64)1<<((NU)(((tyEnum_TTypeFlag__Vrztsndr9a9bj8bQ3cn49bwWw) 26))&63U)))!=0));
						LA8_: ;
						if (!T7_) goto LA9_;
						result = NIM_TRUE;
						goto BeforeRet_;
					}
					LA9_: ;
					i_2 += ((NI) 1);
				} LA4: ;
			}
		}
	}
	result = NIM_FALSE;
	goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, gTypeClassTy__renderer_1259)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	initContext__renderer_849((&c));
	putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 12), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_142));
	gsons__renderer_975(g, (*n)._kind_6.sons->data[((NI) 0)], c, ((NI) 0), ((NI) -1));
	gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 1)], NIM_FALSE);
	gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 2)], NIM_FALSE);
	gcoms__renderer_403(g);
	indentNL__renderer_212(g);
	gcoms__renderer_403(g);
	gstmts__renderer_1023(g, (*n)._kind_6.sons->data[((NI) 3)], c, NIM_TRUE);
	dedent__renderer_218(g);
}
N_LIB_PRIVATE N_NIMCALL(void, gsub__renderer_851)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c, NIM_BOOL fromStmtList) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw a;
{	{
		if (!(n == 0)) goto LA3_;
		goto BeforeRet_;
	}
	LA3_: ;
	nimZeroMem((void*)(&a), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = shouldRenderComment__renderer_383((&(*g)), n);
		if (!T7_) goto LA8_;
		pushCom__renderer_346(g, n);
	}
	LA8_: ;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 22):
	{
		NimStringDesc* T11_;
		T11_ = NIM_NIL;
		T11_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 85), T11_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1):
	{
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 4):
	{
		NimStringDesc* T14_;
		T14_ = NIM_NIL;
		T14_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 0), T14_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2):
	{
		gident__renderer_1307(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 6):
	{
		NimStringDesc* T17_;
		T17_ = NIM_NIL;
		T17_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 69), T17_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 7):
	{
		NimStringDesc* T19_;
		T19_ = NIM_NIL;
		T19_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 70), T19_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 8):
	{
		NimStringDesc* T21_;
		T21_ = NIM_NIL;
		T21_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 71), T21_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 9):
	{
		NimStringDesc* T23_;
		T23_ = NIM_NIL;
		T23_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 72), T23_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 10):
	{
		NimStringDesc* T25_;
		T25_ = NIM_NIL;
		T25_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 73), T25_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 11):
	{
		NimStringDesc* T27_;
		T27_ = NIM_NIL;
		T27_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 74), T27_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 12):
	{
		NimStringDesc* T29_;
		T29_ = NIM_NIL;
		T29_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 75), T29_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 13):
	{
		NimStringDesc* T31_;
		T31_ = NIM_NIL;
		T31_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 76), T31_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 14):
	{
		NimStringDesc* T33_;
		T33_ = NIM_NIL;
		T33_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 77), T33_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 15):
	{
		NimStringDesc* T35_;
		T35_ = NIM_NIL;
		T35_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 78), T35_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 16):
	{
		NimStringDesc* T37_;
		T37_ = NIM_NIL;
		T37_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 79), T37_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 17):
	{
		NimStringDesc* T39_;
		T39_ = NIM_NIL;
		T39_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 80), T39_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 18):
	{
		NimStringDesc* T41_;
		T41_ = NIM_NIL;
		T41_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 81), T41_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 19):
	{
		NimStringDesc* T43_;
		T43_ = NIM_NIL;
		T43_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 82), T43_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 20):
	{
		NimStringDesc* T45_;
		T45_ = NIM_NIL;
		T45_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 83), T45_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 21):
	{
		NimStringDesc* T47_;
		T47_ = NIM_NIL;
		T47_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 84), T47_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 5):
	{
		NimStringDesc* T49_;
		T49_ = NIM_NIL;
		T49_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 88), T49_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 23):
	{
		NimStringDesc* T51_;
		T51_ = NIM_NIL;
		T51_ = atom__renderer_504((&(*g)), n);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 44), T51_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 27):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 60):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 25):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 153):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 38):
	{
		{
			NIM_BOOL T55_;
			NI T56_;
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T58_;
			NI i;
			T55_ = (NIM_BOOL)0;
			T56_ = (NI)0;
			T56_ = len__ast_3155(n);
			T55_ = (((NI) 1) < T56_);
			if (!(T55_)) goto LA57_;
			T58_ = NIM_NIL;
			T58_ = lastSon__ast_4833(n);
			T55_ = ((*T58_).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 115) || (*T58_).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 126));
			LA57_: ;
			if (!T55_) goto LA59_;
			accentedName__renderer_1477(g, (*n)._kind_6.sons->data[((NI) 0)]);
			i = ((NI) 1);
			{
				while (1) {
					NIM_BOOL T63_;
					NI T64_;
					T63_ = (NIM_BOOL)0;
					T64_ = (NI)0;
					T64_ = len__ast_3155(n);
					T63_ = (i < T64_);
					if (!(T63_)) goto LA65_;
					T63_ = !(((*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 115) || (*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 126)));
					LA65_: ;
					if (!T63_) goto LA62;
					i += ((NI) 1);
				} LA62: ;
			}
			{
				NI T70_;
				if (!(((NI) 1) < i)) goto LA68_;
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				T70_ = (NI)0;
				T70_ = len__ast_3155(n);
				gcomma__renderer_963(g, n, ((NI) 1), (NI)((NI)(i - ((NI) 1)) - T70_));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			}
			LA68_: ;
			{
				if (!fromStmtList) goto LA73_;
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			}
			goto LA71_;
			LA73_: ;
			{
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 20), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_57), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			}
			LA71_: ;
			gsub__renderer_1413(g, n, i);
			i += ((NI) 1);
			{
				NI j;
				NI colontmp_;
				NI i_2;
				j = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = len__ast_3155(n);
				i_2 = i;
				{
					while (1) {
						if (!(i_2 < colontmp_)) goto LA78;
						j = i_2;
						optNL__renderer_206(g);
						put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 20), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_57), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
						put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
						gsub__renderer_1413(g, n, j);
						i_2 += ((NI) 1);
					} LA78: ;
				}
			}
		}
		goto LA53_;
		LA59_: ;
		{
			NI T80_;
			tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q T83_;
			T80_ = (NI)0;
			T80_ = len__ast_3155(n);
			if (!(((NI) 1) <= T80_)) goto LA81_;
			T83_ = (tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q)0;
			T83_ = bracketKind__renderer_1433((&(*g)), (*n)._kind_6.sons->data[((NI) 0)]);
			switch (T83_) {
			case ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 1):
			{
				gsub__renderer_1413(g, n, ((NI) 1));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 92), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_65), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				gcomma__renderer_963(g, n, ((NI) 2), ((NI) -1));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 93), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_66), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			}
			break;
			case ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 2):
			{
				NI T86_;
				gsub__renderer_1413(g, n, ((NI) 1));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 92), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_65), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				gcomma__renderer_963(g, n, ((NI) 2), ((NI) -2));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 93), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_66), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 106), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67));
				T86_ = (NI)0;
				T86_ = len__ast_3155(n);
				gsub__renderer_1413(g, n, (NI)(T86_ - ((NI) 1)));
			}
			break;
			case ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 3):
			{
				gsub__renderer_1413(g, n, ((NI) 1));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 94), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_68), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				gcomma__renderer_963(g, n, ((NI) 2), ((NI) -1));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 95), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_69), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			}
			break;
			case ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 4):
			{
				NI T89_;
				gsub__renderer_1413(g, n, ((NI) 1));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 94), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_68), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				gcomma__renderer_963(g, n, ((NI) 2), ((NI) -2));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 95), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_69), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 106), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67));
				T89_ = (NI)0;
				T89_ = len__ast_3155(n);
				gsub__renderer_1413(g, n, (NI)(T89_ - ((NI) 1)));
			}
			break;
			case ((tyEnum_BracketKind__qPWqwN4ED8jm9beTZChRx3Q) 0):
			{
				accentedName__renderer_1477(g, (*n)._kind_6.sons->data[((NI) 0)]);
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				gcomma__renderer_963(g, n, ((NI) 1), ((NI) -1));
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			}
			break;
			}
		}
		goto LA53_;
		LA81_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA53_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 28):
	{
		{
			NI T95_;
			T95_ = (NI)0;
			T95_ = len__ast_3155(n);
			if (!(((NI) 0) < T95_)) goto LA96_;
			accentedName__renderer_1477(g, (*n)._kind_6.sons->data[((NI) 0)]);
		}
		LA96_: ;
		{
			NIM_BOOL T100_;
			NI T101_;
			NimStringDesc* T105_;
			NimStringDesc* T106_;
			T100_ = (NIM_BOOL)0;
			T101_ = (NI)0;
			T101_ = len__ast_3155(n);
			T100_ = (((NI) 1) < T101_);
			if (!(T100_)) goto LA102_;
			T100_ = ((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 21));
			LA102_: ;
			if (!T100_) goto LA103_;
			T105_ = NIM_NIL;
			T106_ = NIM_NIL;
			T106_ = nsuReplaceStr((*(*n)._kind_6.sons->data[((NI) 1)])._kind_3.strVal, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_6), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_7));
			T105_ = rawNewString((T106_ ? T106_->Sup.len : 0) + 2);
appendChar(T105_, 34);
appendString(T105_, T106_);
appendChar(T105_, 34);
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 84), T105_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		goto LA98_;
		LA103_: ;
		{
			gsub__renderer_1413(g, n, ((NI) 1));
		}
		LA98_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 58):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 59):
	{
		{
			NI T111_;
			T111_ = (NI)0;
			T111_ = len__ast_3155(n);
			if (!(((NI) 2) <= T111_)) goto LA112_;
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 1)], NIM_FALSE);
		}
		goto LA109_;
		LA112_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_70), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA109_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 32):
	{
		{
			if (!!(((544 & (*g).flags) == 0))) goto LA118_;
			accentedName__renderer_1477(g, (*n)._kind_6.sons->data[((NI) 0)]);
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			gcomma__renderer_963(g, n, ((NI) 1), ((NI) -1));
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		goto LA116_;
		LA118_: ;
		{
			NI T121_;
			T121_ = (NI)0;
			T121_ = len__ast_3155(n);
			if (!(((NI) 2) <= T121_)) goto LA122_;
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 1)], NIM_FALSE);
		}
		goto LA116_;
		LA122_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_70), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA116_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 61):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 11), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_71), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			NIM_BOOL T128_;
			NI T129_;
			T128_ = (NIM_BOOL)0;
			T129_ = (NI)0;
			T129_ = len__ast_3155(n);
			T128_ = (((NI) 0) < T129_);
			if (!(T128_)) goto LA130_;
			T128_ = !(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)));
			LA130_: ;
			if (!T128_) goto LA131_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 92), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_65), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			gsub__renderer_1413(g, n, ((NI) 0));
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 93), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_66), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA131_: ;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gsub__renderer_1413(g, n, ((NI) 1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 63):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 3), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_72), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			NI T136_;
			T136_ = (NI)0;
			T136_ = len__ast_3155(n);
			if (!(((NI) 0) < T136_)) goto LA137_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA137_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 62):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 58), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_73), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 42):
	{
		gsub__renderer_1413(g, n, ((NI) 0));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 92), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_65), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gcomma__renderer_963(g, n, ((NI) 1), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 93), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_66), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 40):
	{
		gsub__renderer_1413(g, n, ((NI) 0));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 94), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_68), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gcomma__renderer_963(g, n, ((NI) 1), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 95), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_69), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 43):
	{
		gsub__renderer_1413(g, n, ((NI) 0));
		gcomma__renderer_963(g, n, ((NI) 1), ((NI) -1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 26):
	{
		accentedName__renderer_1477(g, (*n)._kind_6.sons->data[((NI) 0)]);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			NI T146_;
			T146_ = (NI)0;
			T146_ = len__ast_3155(n);
			if (!((*(*n)._kind_6.sons->data[(NI)(T146_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 115))) goto LA147_;
			{
				NI i_3;
				tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* child;
				i_3 = (NI)0;
				child = NIM_NIL;
				{
					NI i_4;
					NI colontmp__2;
					NI i_5;
					i_4 = (NI)0;
					colontmp__2 = (NI)0;
					colontmp__2 = safeLen__ast_3148(n);
					i_5 = ((NI) 0);
					{
						while (1) {
							if (!(i_5 < colontmp__2)) goto LA152;
							i_4 = i_5;
							i_3 = i_4;
							child = (*n)._kind_6.sons->data[i_4];
							{
								NIM_BOOL T155_;
								NI T157_;
								T155_ = (NIM_BOOL)0;
								T155_ = (((NI) 1) < i_3);
								if (!(T155_)) goto LA156_;
								T157_ = (NI)0;
								T157_ = len__ast_3155(n);
								T155_ = (i_3 < (NI)(T157_ - ((NI) 1)));
								LA156_: ;
								if (!T155_) goto LA158_;
								put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 102), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_74), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
							}
							goto LA153_;
							LA158_: ;
							{
								NI T161_;
								T161_ = (NI)0;
								T161_ = len__ast_3155(n);
								if (!(i_3 == (NI)(T161_ - ((NI) 1)))) goto LA162_;
								put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
							}
							goto LA153_;
							LA162_: ;
							LA153_: ;
							{
								if (!(((NI) 0) < i_3)) goto LA166_;
								gsub__renderer_856(g, child, NIM_FALSE);
							}
							LA166_: ;
							i_5 += ((NI) 1);
						} LA152: ;
					}
				}
			}
		}
		goto LA144_;
		LA147_: ;
		{
			gcomma__renderer_963(g, n, ((NI) 1), ((NI) -1));
		}
		LA144_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 33):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 73):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 74):
	{
		gsub__renderer_1413(g, n, ((NI) 0));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 106), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67));
		gsub__renderer_1413(g, n, ((NI) 1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 68):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_75), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gcomma__renderer_963(g, n, ((NI) 0), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 69):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_76), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gcomma__renderer_963(g, n, ((NI) 0), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 70):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_77), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gcomma__renderer_963(g, n, ((NI) 0), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 66):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 67):
	{
		NimStringDesc* typ;
		NimStringDesc* T181_;
		{
			NIM_BOOL T176_;
			T176_ = (NIM_BOOL)0;
			T176_ = !(((*n).typ == ((tyObject_TType__kQDDJGUiaUAtO9c9b6LjZYjA*) NIM_NIL)));
			if (!(T176_)) goto LA177_;
			T176_ = !(((*(*n).typ).sym == ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL)));
			LA177_: ;
			if (!T176_) goto LA178_;
			typ = (*(*(*(*n).typ).sym).name).s;
		}
		goto LA174_;
		LA178_: ;
		{
			typ = ((NimStringDesc*) NIM_NIL);
		}
		LA174_: ;
		T181_ = NIM_NIL;
		T181_ = rawNewString((typ ? typ->Sup.len : 0) + 1);
appendString(T181_, typ);
appendString(T181_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), T181_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			NI T184_;
			T184_ = (NI)0;
			T184_ = len__ast_3155(n);
			if (!(((NI) 1) <= T184_)) goto LA185_;
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
		}
		LA185_: ;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 56):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 57):
	{
		{
			NimStringDesc* T208_;
			if (!(((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 5))&15U)))!=0)) goto LA190_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			{
				NI i_6;
				NI colontmp__3;
				NI i_7;
				i_6 = (NI)0;
				colontmp__3 = (NI)0;
				colontmp__3 = len__ast_3155(n);
				i_7 = ((NI) 0);
				{
					while (1) {
						if (!(i_7 < colontmp__3)) goto LA194;
						i_6 = i_7;
						{
							if (!(((NI) 0) < i_6)) goto LA197_;
							put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 110), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_78), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
						}
						LA197_: ;
						{
							tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* s;
							if (!((*(*n)._kind_6.sons->data[i_6]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA201_;
							s = (*(*n)._kind_6.sons->data[i_6])._kind_4.sym;
							{
								if (!!(((*s).owner == ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL)))) goto LA205_;
								put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), (*(*(*(*(*n)._kind_6.sons->data[i_6])._kind_4.sym).owner).name).s, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
								put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 110), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_79), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
							}
							LA205_: ;
							put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), (*(*(*(*n)._kind_6.sons->data[i_6])._kind_4.sym).name).s, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
						}
						goto LA199_;
						LA201_: ;
						{
							gsub__renderer_851(g, (*n)._kind_6.sons->data[i_6], c, NIM_FALSE);
						}
						LA199_: ;
						i_7 += ((NI) 1);
					} LA194: ;
				}
			}
			T208_ = NIM_NIL;
			{
				if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 57))) goto LA211_;
				T208_ = copyString(((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_80));
			}
			goto LA209_;
			LA211_: ;
			{
				T208_ = copyString(((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55));
			}
			LA209_: ;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), T208_, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		goto LA188_;
		LA190_: ;
		{
			gsub__renderer_1413(g, n, ((NI) 0));
		}
		LA188_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 37):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 155):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gcomma__renderer_951(g, n, c, ((NI) 0), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 160):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gcomma__renderer_951(g, n, c, ((NI) 0), ((NI) -1));
		{
			NIM_BOOL T219_;
			NI T220_;
			T219_ = (NIM_BOOL)0;
			T220_ = (NI)0;
			T220_ = len__ast_3155(n);
			T219_ = (T220_ == ((NI) 1));
			if (!(T219_)) goto LA221_;
			T219_ = !(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 34)));
			LA221_: ;
			if (!T219_) goto LA222_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 102), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_74), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA222_: ;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 39):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 94), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_68), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gcomma__renderer_951(g, n, c, ((NI) 0), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 95), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_69), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 152):
	{
		gcomma__renderer_951(g, n, c, ((NI) 0), ((NI) -1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 54):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 94), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_68), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			NI T229_;
			T229_ = (NI)0;
			T229_ = len__ast_3155(n);
			if (!(((NI) 0) < T229_)) goto LA230_;
			gcomma__renderer_951(g, n, c, ((NI) 0), ((NI) -1));
		}
		goto LA227_;
		LA230_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA227_: ;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 95), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_69), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 41):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 92), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_65), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gcomma__renderer_951(g, n, c, ((NI) 0), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 93), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_66), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 45):
	{
		{
			NIM_BOOL T237_;
			T237_ = (NIM_BOOL)0;
			T237_ = isCustomLit__renderer_1531(n);
			if (!T237_) goto LA238_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 89), (*(*n)._kind_6.sons->data[((NI) 0)])._kind_3.strVal, ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			gsub__renderer_1413(g, n, ((NI) 1));
		}
		goto LA235_;
		LA238_: ;
		{
			gsub__renderer_1413(g, n, ((NI) 0));
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 107), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_79), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			accentedName__renderer_1477(g, (*n)._kind_6.sons->data[((NI) 1)]);
		}
		LA235_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 55):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 7), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_81));
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 46):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 64):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 65):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 71):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 72):
	{
		{
			if (!(((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 5))&15U)))!=0)) goto LA245_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 3), reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)));
		}
		LA245_: ;
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 51):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 51), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_82));
		gsub__renderer_1413(g, n, ((NI) 3));
		gsub__renderer_1413(g, n, ((NI) 4));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 106), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67));
		gsub__renderer_1413(g, n, ((NI) 6));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 52):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 20), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_57));
		{
			NI T251_;
			T251_ = (NI)0;
			T251_ = len__ast_3155(n);
			if (!(((NI) 3) < T251_)) goto LA252_;
			doParamsAux__renderer_1398(g, (*n)._kind_6.sons->data[((NI) 3)]);
		}
		LA252_: ;
		gsub__renderer_1413(g, n, ((NI) 4));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gsub__renderer_1413(g, n, ((NI) 6));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 102):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 35):
	{
		gcomma__renderer_963(g, n, ((NI) 0), ((NI) -3));
		{
			NIM_BOOL T257_;
			NI T258_;
			NI T260_;
			NI T263_;
			T257_ = (NIM_BOOL)0;
			T258_ = (NI)0;
			T258_ = len__ast_3155(n);
			T257_ = (((NI) 2) <= T258_);
			if (!(T257_)) goto LA259_;
			T260_ = (NI)0;
			T260_ = len__ast_3155(n);
			T257_ = !(((*(*n)._kind_6.sons->data[(NI)(T260_ - ((NI) 2))]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)));
			LA259_: ;
			if (!T257_) goto LA261_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
			T263_ = (NI)0;
			T263_ = len__ast_3155(n);
			gsub__renderer_1413(g, n, (NI)(T263_ - ((NI) 2)));
		}
		LA261_: ;
		{
			NIM_BOOL T266_;
			NI T267_;
			NI T269_;
			NI T272_;
			T266_ = (NIM_BOOL)0;
			T267_ = (NI)0;
			T267_ = len__ast_3155(n);
			T266_ = (((NI) 1) <= T267_);
			if (!(T266_)) goto LA268_;
			T269_ = (NI)0;
			T269_ = len__ast_3155(n);
			T266_ = !(((*(*n)._kind_6.sons->data[(NI)(T269_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)));
			LA268_: ;
			if (!T266_) goto LA270_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 106), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67));
			T272_ = (NI)0;
			T272_ = len__ast_3155(n);
			gsub__renderer_851(g, (*n)._kind_6.sons->data[(NI)(T272_ - ((NI) 1))], c, NIM_FALSE);
		}
		LA270_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 36):
	{
		{
			NI T276_;
			T276_ = (NI)0;
			T276_ = len__ast_3155(n);
			if (!((*(*n)._kind_6.sons->data[(NI)(T276_ - ((NI) 1))]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1))) goto LA277_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			gcomma__renderer_963(g, n, ((NI) 0), ((NI) -2));
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		goto LA274_;
		LA277_: ;
		{
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T280_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			gcomma__renderer_963(g, n, ((NI) 0), ((NI) -3));
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 106), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67));
			T280_ = NIM_NIL;
			T280_ = lastSon__ast_4833(n);
			gsub__renderer_851(g, T280_, c, NIM_FALSE);
		}
		LA274_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 34):
	{
		gsub__renderer_1413(g, n, ((NI) 0));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
		gsub__renderer_1413(g, n, ((NI) 1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 29):
	{
		NI oldLineLen;
		oldLineLen = (*g).lineLen;
		infixArgument__renderer_1494(g, n, ((NI) 1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gsub__renderer_1413(g, n, ((NI) 0));
		{
			NIM_BOOL T285_;
			NI T286_;
			NI T288_;
			NI T289_;
			NI T290_;
			NIM_BOOL T291_;
			T285_ = (NIM_BOOL)0;
			T286_ = (NI)0;
			T286_ = len__ast_3155(n);
			T285_ = (T286_ == ((NI) 3));
			if (!(T285_)) goto LA287_;
			T288_ = (NI)0;
			T288_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[((NI) 1)]);
			T289_ = (NI)0;
			T289_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[((NI) 2)]);
			T290_ = (NI)0;
			T290_ = lsub__renderer_422((&(*g)), (*n)._kind_6.sons->data[((NI) 0)]);
			T291_ = (NIM_BOOL)0;
			T291_ = fits__renderer_821((&(*g)), (NI)((NI)((NI)((NI)(oldLineLen + T288_) + T289_) + T290_) + ((NI) 2)));
			T285_ = !(T291_);
			LA287_: ;
			if (!T285_) goto LA292_;
			optNL__renderer_203(g, (NI)((*g).indent + ((NI) 4)));
		}
		goto LA283_;
		LA292_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA283_: ;
		infixArgument__renderer_1494(g, n, ((NI) 2));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 30):
	{
		gsub__renderer_1413(g, n, ((NI) 0));
		{
			NI T298_;
			tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg* opr;
			tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* nNext;
			T298_ = (NI)0;
			T298_ = len__ast_3155(n);
			if (!(((NI) 1) < T298_)) goto LA299_;
			{
				if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2))) goto LA303_;
				opr = (*(*n)._kind_6.sons->data[((NI) 0)])._kind_5.ident;
			}
			goto LA301_;
			LA303_: ;
			{
				if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 3))) goto LA306_;
				opr = (*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).name;
			}
			goto LA301_;
			LA306_: ;
			{
				if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 57) || (*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 56))) goto LA309_;
				opr = (*(*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)])._kind_4.sym).name;
			}
			goto LA301_;
			LA309_: ;
			{
				opr = ((tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg*) NIM_NIL);
			}
			LA301_: ;
			nNext = skipHiddenNodes__renderer_1454((*n)._kind_6.sons->data[((NI) 1)]);
			{
				NIM_BOOL T314_;
				NIM_BOOL T316_;
				NIM_BOOL T317_;
				T314_ = (NIM_BOOL)0;
				T314_ = ((*nNext).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 30));
				if (T314_) goto LA315_;
				T316_ = (NIM_BOOL)0;
				T317_ = (NIM_BOOL)0;
				T317_ = eqeq___idents_229(opr, ((tyObject_TIdent__PKDcQ7dqdhiSW9c9cXUFFpMg*) NIM_NIL));
				T316_ = !(T317_);
				if (!(T316_)) goto LA318_;
				T316_ = isKeyword__renderer_73(opr);
				LA318_: ;
				T314_ = T316_;
				LA315_: ;
				if (!T314_) goto LA319_;
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			}
			LA319_: ;
			{
				if (!((*nNext).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 29))) goto LA323_;
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
				gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 1)], NIM_FALSE);
				put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			}
			goto LA321_;
			LA323_: ;
			{
				gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 1)], NIM_FALSE);
			}
			LA321_: ;
		}
		LA299_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 31):
	{
		gsub__renderer_1413(g, n, ((NI) 1));
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 44):
	{
		gsub__renderer_1413(g, n, ((NI) 0));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 108), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_84), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gsub__renderer_1413(g, n, ((NI) 1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 47):
	{
		gsub__renderer_1413(g, n, ((NI) 0));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 110), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_61), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 53):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 112), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_44), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			NI i_8;
			NI colontmp__4;
			NI i_9;
			i_8 = (NI)0;
			colontmp__4 = (NI)0;
			colontmp__4 = len__ast_3155(n);
			i_9 = ((NI) 0);
			{
				while (1) {
					NIM_BOOL useSpace;
					if (!(i_9 < colontmp__4)) goto LA332;
					i_8 = i_9;
					useSpace = NIM_FALSE;
					{
						NIM_BOOL T335_;
						NIM_BOOL T336_;
						T335_ = (NIM_BOOL)0;
						T336_ = (NIM_BOOL)0;
						T336_ = (i_8 == ((NI) 1));
						if (!(T336_)) goto LA337_;
						T336_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2));
						LA337_: ;
						T335_ = T336_;
						if (!(T335_)) goto LA338_;
						T335_ = contains__stdZenumutils_44(TM__edlVk3rimVQxtoXNQ77Dhw_85, 2, (*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_5.ident).s);
						LA338_: ;
						if (!T335_) goto LA339_;
						{
							NIM_BOOL T343_;
							T343_ = (NIM_BOOL)0;
							T343_ = isAlpha__renderer_1838((*n)._kind_6.sons->data[((NI) 1)]);
							if (!!(T343_)) goto LA344_;
							useSpace = NIM_TRUE;
						}
						LA344_: ;
					}
					goto LA333_;
					LA339_: ;
					{
						NIM_BOOL T347_;
						NIM_BOOL T348_;
						T347_ = (NIM_BOOL)0;
						T348_ = (NIM_BOOL)0;
						T348_ = (i_8 == ((NI) 1));
						if (!(T348_)) goto LA349_;
						T348_ = ((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 2));
						LA349_: ;
						T347_ = T348_;
						if (!(T347_)) goto LA350_;
						T347_ = eqStrings((*(*(*n)._kind_6.sons->data[((NI) 1)])._kind_5.ident).s, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67));
						LA350_: ;
						if (!T347_) goto LA351_;
						{
							NIM_BOOL T355_;
							T355_ = (NIM_BOOL)0;
							T355_ = isAlpha__renderer_1838((*n)._kind_6.sons->data[((NI) 0)]);
							if (!!(T355_)) goto LA356_;
							useSpace = NIM_TRUE;
						}
						LA356_: ;
					}
					goto LA333_;
					LA351_: ;
					{
						if (!(((NI) 0) < i_8)) goto LA359_;
						useSpace = NIM_TRUE;
					}
					goto LA333_;
					LA359_: ;
					LA333_: ;
					{
						if (!useSpace) goto LA363_;
						put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
					}
					LA363_: ;
					gsub__renderer_856(g, (*n)._kind_6.sons->data[i_8], NIM_FALSE);
					i_9 += ((NI) 1);
				} LA332: ;
			}
		}
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 112), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_44), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 48):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 31), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_86));
		{
			NI T368_;
			T368_ = (NI)0;
			T368_ = len__ast_3155(n);
			if (!(((NI) 0) < T368_)) goto LA369_;
			gcond__renderer_1053(g, (*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 0)]);
		}
		LA369_: ;
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
		{
			NI T373_;
			T373_ = (NI)0;
			T373_ = len__ast_3155(n);
			if (!(((NI) 0) < T373_)) goto LA374_;
			gsub__renderer_1413(g, (*n)._kind_6.sons->data[((NI) 0)], ((NI) 1));
		}
		LA374_: ;
		gsons__renderer_975(g, n, TM__edlVk3rimVQxtoXNQ77Dhw_87, ((NI) 1), ((NI) -1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 49):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 21), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_88));
		gcond__renderer_1053(g, (*n)._kind_6.sons->data[((NI) 0)]);
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
		gsub__renderer_1413(g, n, ((NI) 1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 50):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 22), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_89), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 132):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 62), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_90), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			NI T381_;
			T381_ = (NI)0;
			T381_ = len__ast_3155(n);
			if (!(((NI) 0) < T381_)) goto LA382_;
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
		}
		LA382_: ;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 141):
	{
		{
			NI T387_;
			T387_ = (NI)0;
			T387_ = len__ast_3155(n);
			if (!(((NI) 0) < T387_)) goto LA388_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 54), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_91));
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
		}
		goto LA385_;
		LA388_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 54), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_91), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA385_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 142):
	{
		{
			NI T394_;
			T394_ = (NI)0;
			T394_ = len__ast_3155(n);
			if (!(((NI) 0) < T394_)) goto LA395_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 52), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_92));
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
		}
		goto LA392_;
		LA395_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 52), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_92), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA392_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 143):
	{
		{
			NI T401_;
			T401_ = (NI)0;
			T401_ = len__ast_3155(n);
			if (!(((NI) 0) < T401_)) goto LA402_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 64), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_93));
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
		}
		goto LA399_;
		LA402_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 64), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_93), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA399_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 146):
	{
		{
			NI T408_;
			T408_ = (NI)0;
			T408_ = len__ast_3155(n);
			if (!(((NI) 0) < T408_)) goto LA409_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 18), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_94));
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
			{
				NI T413_;
				T413_ = (NI)0;
				T413_ = len__ast_3155(n);
				if (!(((NI) 1) < T413_)) goto LA414_;
				{
					if (!((*(*n)._kind_6.sons->data[((NI) 1)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 130))) goto LA418_;
					putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_95));
				}
				goto LA416_;
				LA418_: ;
				{
					putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_96));
				}
				LA416_: ;
				gcomma__renderer_963(g, (*n)._kind_6.sons->data[((NI) 1)], ((NI) 0), ((NI) -1));
			}
			LA414_: ;
		}
		goto LA406_;
		LA409_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 18), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_94), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA406_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 103):
	{
		{
			if (!((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 43))) goto LA425_;
			gsub__renderer_1413(g, (*n)._kind_6.sons->data[((NI) 0)], ((NI) 0));
			gsub__renderer_1413(g, n, ((NI) 1));
			gsub__renderer_1413(g, (*n)._kind_6.sons->data[((NI) 0)], ((NI) 1));
		}
		goto LA423_;
		LA425_: ;
		{
			gsub__renderer_1413(g, n, ((NI) 0));
			gsub__renderer_1413(g, n, ((NI) 1));
		}
		LA423_: ;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			NIM_BOOL T430_;
			NI T431_;
			T430_ = (NIM_BOOL)0;
			T431_ = (NI)0;
			T431_ = len__ast_3155(n);
			T430_ = (((NI) 2) < T431_);
			if (!(T430_)) goto LA432_;
			T430_ = !(((*(*n)._kind_6.sons->data[((NI) 2)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)));
			LA432_: ;
			if (!T430_) goto LA433_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 106), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67));
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 2)], NIM_FALSE);
		}
		LA433_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 133):
	{
		{
			NI T438_;
			T438_ = (NI)0;
			T438_ = len__ast_3155(n);
			if (!(((NI) 0) < T438_)) goto LA439_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 47), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_97));
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 1)], NIM_FALSE);
			gcoms__renderer_403(g);
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 2)], NIM_FALSE);
		}
		goto LA436_;
		LA439_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 47), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_97), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA436_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 138):
	{
		indentNL__renderer_212(g);
		{
			NI i_10;
			NI colontmp__5;
			NI i_11;
			i_10 = (NI)0;
			colontmp__5 = (NI)0;
			colontmp__5 = len__ast_3155(n);
			i_11 = ((NI) 0);
			{
				while (1) {
					if (!(i_11 < colontmp__5)) goto LA445;
					i_10 = i_11;
					optNL__renderer_206(g);
					gsub__renderer_851(g, (*n)._kind_6.sons->data[i_10], c, NIM_FALSE);
					gcoms__renderer_403(g);
					i_11 += ((NI) 1);
				} LA445: ;
			}
		}
		dedent__renderer_218(g);
		putNL__renderer_201(g);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 77):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 48), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_98));
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 147):
	{
		{
			NI T450_;
			T450_ = (NI)0;
			T450_ = len__ast_3155(n);
			if (!(((NI) 0) < T450_)) goto LA451_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 51), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_82));
			gsub__renderer_1413(g, n, ((NI) 0));
			gsub__renderer_1413(g, n, ((NI) 1));
		}
		goto LA448_;
		LA451_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 51), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_82), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA448_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 148):
	{
		{
			NI T457_;
			T457_ = (NI)0;
			T457_ = len__ast_3155(n);
			if (!(((NI) 0) < T457_)) goto LA458_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 38), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_99));
			gsub__renderer_1413(g, n, ((NI) 0));
			gsub__renderer_1413(g, n, ((NI) 1));
		}
		goto LA455_;
		LA458_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 38), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_99), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA455_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 137):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 58), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_73), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 92), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_65), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			NI T464_;
			T464_ = (NI)0;
			T464_ = len__ast_3155(n);
			if (!(((NI) 0) < T464_)) goto LA465_;
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
		}
		LA465_: ;
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 93), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_66), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 150):
	{
		{
			NI T470_;
			T470_ = (NI)0;
			T470_ = len__ast_3155(n);
			if (!(((NI) 0) < T470_)) goto LA471_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 24), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_100));
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
			gcoms__renderer_403(g);
			indentNL__renderer_212(g);
			gcommaAux__renderer_911(g, n, (*g).indent, ((NI) 1), ((NI) -1), ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 102));
			gcoms__renderer_403(g);
			dedent__renderer_218(g);
		}
		goto LA468_;
		LA471_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 24), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_100), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA468_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 151):
	{
		gsub__renderer_1413(g, n, ((NI) 0));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 106), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_67));
		gsub__renderer_1413(g, n, ((NI) 1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 115):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 126):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 128):
	{
		{
			NIM_BOOL T478_;
			NI T479_;
			T478_ = (NIM_BOOL)0;
			T479_ = (NI)0;
			T479_ = len__ast_3155(n);
			T478_ = (T479_ == ((NI) 1));
			if (!(T478_)) goto LA480_;
			T478_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 114));
			LA480_: ;
			if (!T478_) goto LA481_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		goto LA476_;
		LA481_: ;
		{
			gstmts__renderer_1023(g, n, TM__edlVk3rimVQxtoXNQ77Dhw_87, NIM_TRUE);
		}
		LA476_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 92):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 31), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_86));
		gif__renderer_1064(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 93):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 140):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 65), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_101));
		gif__renderer_1064(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 96):
	{
		gwhile__renderer_1087(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 91):
	{
		gpragmaBlock__renderer_1107(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 97):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 139):
	{
		gcase__renderer_1156(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 106):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 154):
	{
		gtry__renderer_1118(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 94):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 95):
	{
		gfor__renderer_1128(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 112):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 127):
	{
		gblock__renderer_1267(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 113):
	{
		gstaticStmt__renderer_1289(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 89):
	{
		gasm__renderer_1299(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 79):
	{
		{
			if (!!((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 6))&15U)))!=0))) goto LA497_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 51), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_82));
		}
		LA497_: ;
		gproc__renderer_1205(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 159):
	{
		{
			if (!!((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 6))&15U)))!=0))) goto LA502_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 30), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_109));
		}
		LA502_: ;
		gproc__renderer_1205(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 81):
	{
		{
			if (!!((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 6))&15U)))!=0))) goto LA507_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 15), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_110));
		}
		LA507_: ;
		gproc__renderer_1205(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 80):
	{
		{
			if (!!((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 6))&15U)))!=0))) goto LA512_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 41), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_111));
		}
		LA512_: ;
		gproc__renderer_1205(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 84):
	{
		{
			if (!!((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 6))&15U)))!=0))) goto LA517_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 38), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_99));
		}
		LA517_: ;
		gproc__renderer_1205(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 82):
	{
		{
			if (!!((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 6))&15U)))!=0))) goto LA522_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 40), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_112));
		}
		LA522_: ;
		gproc__renderer_1205(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 83):
	{
		{
			if (!!((((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 6))&15U)))!=0))) goto LA527_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 59), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_113));
		}
		LA527_: ;
		gproc__renderer_1205(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 98):
	{
		gsection__renderer_990(g, n, TM__edlVk3rimVQxtoXNQ77Dhw_87, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 62), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_114));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 101):
	{
		initContext__renderer_849((&a));
		a.Field1 |= ((NU8)1)<<((((tyEnum_TSubFlag__kl6lrHH9ai8B58yQArQ1V2w) 1)) & 7);
		gsection__renderer_990(g, n, a, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 13), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_115));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 99):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 100):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 124):
	{
		{
			NI T534_;
			T534_ = (NI)0;
			T534_ = len__ast_3155(n);
			if (!(T534_ == ((NI) 0))) goto LA535_;
			goto BeforeRet_;
		}
		LA535_: ;
		{
			if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 99))) goto LA539_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 64), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_93));
		}
		goto LA537_;
		LA539_: ;
		{
			if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 100))) goto LA542_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 39), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_116));
		}
		goto LA537_;
		LA542_: ;
		{
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 63), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_117));
		}
		LA537_: ;
		{
			NI T547_;
			T547_ = (NI)0;
			T547_ = len__ast_3155(n);
			if (!(((NI) 1) < T547_)) goto LA548_;
			gcoms__renderer_403(g);
			indentNL__renderer_212(g);
			{
				NI i_12;
				NI colontmp__6;
				NI i_13;
				i_12 = (NI)0;
				colontmp__6 = (NI)0;
				colontmp__6 = len__ast_3155(n);
				i_13 = ((NI) 0);
				{
					while (1) {
						if (!(i_13 < colontmp__6)) goto LA552;
						i_12 = i_13;
						optNL__renderer_206(g);
						gsub__renderer_856(g, (*n)._kind_6.sons->data[i_12], NIM_FALSE);
						gcoms__renderer_403(g);
						i_13 += ((NI) 1);
					} LA552: ;
				}
			}
			dedent__renderer_218(g);
		}
		goto LA545_;
		LA548_: ;
		{
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
		}
		LA545_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 109):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 55), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_118));
		{
			NIM_BOOL T557_;
			NI T558_;
			T557_ = (NIM_BOOL)0;
			T558_ = (NI)0;
			T558_ = len__ast_3155(n);
			T557_ = (((NI) 0) < T558_);
			if (!(T557_)) goto LA559_;
			T557_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 73));
			LA559_: ;
			if (!T557_) goto LA560_;
			gsub__renderer_1413(g, (*n)._kind_6.sons->data[((NI) 0)], ((NI) 1));
		}
		goto LA555_;
		LA560_: ;
		{
			gsub__renderer_1413(g, n, ((NI) 0));
		}
		LA555_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 108):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 53), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_119));
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 104):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 68), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_120));
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 114):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 17), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_121));
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 110):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 9), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_122));
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 111):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 14), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_123));
		gsub__renderer_1413(g, n, ((NI) 0));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 90):
	{
		{
			if (!((*g).inPragma <= ((NI) 0))) goto LA571_;
			(*g).inPragma += ((NI) 1);
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 98), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_124), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			gcomma__renderer_951(g, n, TM__edlVk3rimVQxtoXNQ77Dhw_87, ((NI) 0), ((NI) -1));
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 99), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_125), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			(*g).inPragma -= ((NI) 1);
		}
		goto LA569_;
		LA571_: ;
		{
			gcomma__renderer_951(g, n, TM__edlVk3rimVQxtoXNQ77Dhw_87, ((NI) 0), ((NI) -1));
		}
		LA569_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 116):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 118):
	{
		{
			if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 116))) goto LA577_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 32), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_126));
		}
		goto LA575_;
		LA577_: ;
		{
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 26), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_127));
		}
		LA575_: ;
		gcoms__renderer_403(g);
		indentNL__renderer_212(g);
		gcommaAux__renderer_911(g, n, (*g).indent, ((NI) 0), ((NI) -1), ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 102));
		dedent__renderer_218(g);
		putNL__renderer_201(g);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 117):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 119):
	{
		{
			if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 117))) goto LA583_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 32), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_126));
		}
		goto LA581_;
		LA583_: ;
		{
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 26), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_127));
		}
		LA581_: ;
		gsub__renderer_1413(g, n, ((NI) 0));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 25), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_128));
		gcommaAux__renderer_911(g, n, (*g).indent, ((NI) 1), ((NI) -1), ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 102));
		gcoms__renderer_403(g);
		putNL__renderer_201(g);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 120):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 29), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_129));
		gsub__renderer_1413(g, n, ((NI) 0));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 32), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_126));
		gcomma__renderer_951(g, n, TM__edlVk3rimVQxtoXNQ77Dhw_87, ((NI) 1), ((NI) -1));
		putNL__renderer_201(g);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 121):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 34), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_130));
		gcoms__renderer_403(g);
		indentNL__renderer_212(g);
		gcommaAux__renderer_911(g, n, (*g).indent, ((NI) 0), ((NI) -1), ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 102));
		dedent__renderer_218(g);
		putNL__renderer_201(g);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 125):
	{
		gcoms__renderer_403(g);
		optNL__renderer_206(g);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 85):
	{
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T590_;
		optNL__renderer_206(g);
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 48), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_98));
		gcomma__renderer_951(g, n, c, ((NI) 0), ((NI) -2));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
		gcoms__renderer_403(g);
		T590_ = NIM_NIL;
		T590_ = lastSon__ast_4833(n);
		gstmts__renderer_1023(g, T590_, c, NIM_TRUE);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 78):
	{
		gsub__renderer_1413(g, n, ((NI) 0));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 113), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_53), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 5), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_131));
		gsub__renderer_1413(g, n, ((NI) 1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 122):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 7), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_81));
		gcomma__renderer_951(g, n, c, ((NI) 0), ((NI) -1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 123):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 42), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_132));
		gcomma__renderer_951(g, n, c, ((NI) 0), ((NI) -1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 86):
	{
		optNL__renderer_206(g);
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 21), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_133));
		gsub__renderer_1413(g, n, ((NI) 0));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
		gcoms__renderer_403(g);
		gstmts__renderer_1023(g, (*n)._kind_6.sons->data[((NI) 1)], c, NIM_TRUE);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 88):
	{
		optNL__renderer_206(g);
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 22), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_134), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
		gcoms__renderer_403(g);
		gstmts__renderer_1023(g, (*n)._kind_6.sons->data[((NI) 0)], c, NIM_TRUE);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 107):
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 105):
	{
		optNL__renderer_206(g);
		{
			if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 107))) goto LA599_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 27), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_135), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		goto LA597_;
		LA599_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 16), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_136), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA597_: ;
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
		gcoms__renderer_403(g);
		gstmts__renderer_1023(g, (*n)._kind_6.sons->data[((NI) 0)], c, NIM_TRUE);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 87):
	{
		tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* T609_;
		optNL__renderer_206(g);
		{
			NI T605_;
			T605_ = (NI)0;
			T605_ = len__ast_3155(n);
			if (!!((T605_ == ((NI) 1)))) goto LA606_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 25), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_128));
		}
		goto LA603_;
		LA606_: ;
		{
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 25), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_128), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA603_: ;
		gcomma__renderer_963(g, n, ((NI) 0), ((NI) -2));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
		gcoms__renderer_403(g);
		T609_ = NIM_NIL;
		T609_ = lastSon__ast_4833(n);
		gstmts__renderer_1023(g, T609_, c, NIM_TRUE);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 75):
	{
		{
			NIM_BOOL T613_;
			T613_ = (NIM_BOOL)0;
			T613_ = hasExplicitParams__renderer_2062(n);
			if (!T613_) goto LA614_;
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 92), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_65), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
			gsemicolon__renderer_969(g, n, ((NI) 0), ((NI) -1));
			put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 93), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_66), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		}
		LA614_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 76):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_45), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gsemicolon__renderer_969(g, n, ((NI) 1), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			NIM_BOOL T619_;
			NI T620_;
			T619_ = (NIM_BOOL)0;
			T620_ = (NI)0;
			T620_ = len__ast_3155(n);
			T619_ = (((NI) 0) < T620_);
			if (!(T619_)) goto LA621_;
			T619_ = !(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1)));
			LA621_: ;
			if (!T619_) goto LA622_;
			putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
			gsub__renderer_856(g, (*n)._kind_6.sons->data[((NI) 0)], NIM_FALSE);
		}
		LA622_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 134):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 61), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_137), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 92), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_65), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gcomma__renderer_963(g, n, ((NI) 0), ((NI) -1));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 93), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_66), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 135):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 61), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_137), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 24):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 90), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_138), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		gsub__renderer_1413(g, n, ((NI) 0));
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 91), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_55), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 156):
	{
		tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c_2;
		nimZeroMem((void*)(&c_2), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
		initContext__renderer_849((&c_2));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_139));
		gsons__renderer_975(g, n, c_2, ((NI) 0), ((NI) -1));
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 157):
	{
		tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c_3;
		nimZeroMem((void*)(&c_3), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
		initContext__renderer_849((&c_3));
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_140));
		gsub__renderer_851(g, (*n)._kind_6.sons->data[((NI) 0)], c_3, NIM_FALSE);
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 104), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_56));
		indentNL__renderer_212(g);
		gsons__renderer_975(g, n, c_3, ((NI) 1), ((NI) -1));
		dedent__renderer_218(g);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 158):
	{
		put__renderer_235(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 61), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_141), ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL));
		{
			if (!(((*g).flags &((NU16)1<<((NU)(((tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA) 5))&15U)))!=0)) goto LA632_;
			gsons__renderer_975(g, n, c, ((NI) 0), ((NI) -1));
		}
		LA632_: ;
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 136):
	{
		gTypeClassTy__renderer_1259(g, n);
	}
	break;
	case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 161):
	{
		putWithSpace__renderer_885(g, ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 2), ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_143));
		gsub__renderer_851(g, (*n)._kind_6.sons->data[((NI) 0)], c, NIM_FALSE);
	}
	break;
	default:
	{
		NimStringDesc* T637_;
		T637_ = NIM_NIL;
		T637_ = rawNewString((reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)) ? reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_))->Sup.len : 0) + 15);
appendString(T637_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_144));
appendString(T637_, reprEnum((NI)(*n).kind, (&NTItnodekind__clSgDh22o9au33BrVH9bDQZw_)));
appendChar(T637_, 41);
		internalErrorImpl__msgs_1441((*g).config, (*n).info, T637_, TM__edlVk3rimVQxtoXNQ77Dhw_145);
	}
	break;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, gsub__renderer_856)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NIM_BOOL fromStmtList) {
	tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c;
	nimZeroMem((void*)(&c), sizeof(tyTuple__yxRvfrk1NAG5KBbg9bKqqWw));
	initContext__renderer_849((&c));
	gsub__renderer_851(g, n, c, fromStmtList);
}
N_LIB_PRIVATE N_NIMCALL(void, gstmts__renderer_1023)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* g, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tyTuple__yxRvfrk1NAG5KBbg9bKqqWw c, NIM_BOOL doIndent) {
{	{
		if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 1))) goto LA3_;
		goto BeforeRet_;
	}
	LA3_: ;
	{
		if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 115) || (*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 126) || (*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 128))) goto LA7_;
		{
			if (!doIndent) goto LA11_;
			indentNL__renderer_212(g);
		}
		LA11_: ;
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__ast_3155(n);
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA15;
					i = i_2;
					{
						if (!(((NI) 0) < i)) goto LA18_;
						optNL__renderer_208(g, (*n)._kind_6.sons->data[(NI)(i - ((NI) 1))], (*n)._kind_6.sons->data[i]);
					}
					goto LA16_;
					LA18_: ;
					{
						optNL__renderer_206(g);
					}
					LA16_: ;
					{
						if (!((*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 115) || (*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 126) || (*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 128))) goto LA23_;
						gstmts__renderer_1023(g, (*n)._kind_6.sons->data[i], c, NIM_FALSE);
					}
					goto LA21_;
					LA23_: ;
					{
						gsub__renderer_856(g, (*n)._kind_6.sons->data[i], NIM_TRUE);
					}
					LA21_: ;
					gcoms__renderer_403(g);
					i_2 += ((NI) 1);
				} LA15: ;
			}
		}
		{
			if (!doIndent) goto LA28_;
			dedent__renderer_218(g);
		}
		LA28_: ;
	}
	goto LA5_;
	LA7_: ;
	{
		indentNL__renderer_212(g);
		gsub__renderer_856(g, n, NIM_FALSE);
		gcoms__renderer_403(g);
		dedent__renderer_218(g);
		optNL__renderer_206(g);
	}
	LA5_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderTree__renderer_46)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tySet_tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA renderFlags) {
	NimStringDesc* result;
	tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ g;
	tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* T5_;
{	result = NIM_NIL;
	{
		if (!(n == ((tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw*) NIM_NIL))) goto LA3_;
		result = copyString(((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_2));
		goto BeforeRet_;
	}
	LA3_: ;
	nimZeroMem((void*)(&g), sizeof(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ));
	T5_ = NIM_NIL;
	T5_ = newPartialConfigRef__options_2528();
	initSrcGen__renderer_101((&g), renderFlags, T5_);
	{
		if (!((*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 115) || (*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 126) || (*n).kind == ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 128))) goto LA8_;
		gstmts__renderer_1023((&g), n, TM__edlVk3rimVQxtoXNQ77Dhw_87, NIM_FALSE);
	}
	goto LA6_;
	LA8_: ;
	{
		gsub__renderer_856((&g), n, NIM_FALSE);
	}
	LA6_: ;
	result = copyString(g.buf);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___renderer_2116)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n) {
	NimStringDesc* result;
	result = NIM_NIL;
	result = renderTree__renderer_46(n, 0);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, renderModule__renderer_2119)(tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, NimStringDesc* outfile, tySet_tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA renderFlags, NI32 fid, tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* conf) {
	FILE* f;
	tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ g;
	f = (FILE*)0;
	nimZeroMem((void*)(&g), sizeof(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ));
	initSrcGen__renderer_101((&g), renderFlags, conf);
	g.fid = fid;
	{
		NI i;
		NI colontmp_;
		NI i_2;
		i = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__ast_3155(n);
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA3;
				i = i_2;
				gsub__renderer_856((&g), (*n)._kind_6.sons->data[i], NIM_FALSE);
				optNL__renderer_206((&g));
				switch ((*(*n)._kind_6.sons->data[i]).kind) {
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 98):
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 101):
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 99):
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 100):
				case ((tyEnum_TNodeKind__clSgDh22o9au33BrVH9bDQZw) 125):
				{
					putNL__renderer_201((&g));
				}
				break;
				default:
				{
				}
				break;
				}
				i_2 += ((NI) 1);
			} LA3: ;
		}
	}
	gcoms__renderer_403((&g));
	{
		NIM_BOOL T8_;
		T8_ = (NIM_BOOL)0;
		T8_ = open__systemZio_389(&f, outfile, ((tyEnum_FileMode__l9cwNsPPKSvz36rQZGh2S7w) 1), ((NI) -1));
		if (!T8_) goto LA9_;
		write__systemZio_205(f, g.buf);
		close__systemZio_217(f);
	}
	goto LA6_;
	LA9_: ;
	{
		NimStringDesc* T12_;
		T12_ = NIM_NIL;
		T12_ = rawNewString((outfile ? outfile->Sup.len : 0) + 18);
appendString(T12_, ((NimStringDesc*) &TM__edlVk3rimVQxtoXNQ77Dhw_146));
appendString(T12_, outfile);
		liMessage__msgs_1128(g.config, unknownLineInfo__lineinfos_284, ((tyEnum_TMsgKind__J0cVyqzpFKvufCivtQUgHQ) 15), T12_, ((tyEnum_TErrorHandling__sOC1wCv9bUYRquMih1VRi3w) 1), TM__edlVk3rimVQxtoXNQ77Dhw_147, NIM_FALSE);
	}
	LA6_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, initTokRender__renderer_2137)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* r, tyObject_TNode__uh9cWvEa5Ty85PXOtuP5emw* n, tySet_tyEnum_TRenderFlag__ppo9aY4M5jqJlCPC7ZH9bmwA renderFlags) {
	tyObject_ConfigRefcolonObjectType___XoIrMAjHi4NOQu4oAkNfVQ* T1_;
	T1_ = NIM_NIL;
	T1_ = newPartialConfigRef__options_2528();
	initSrcGen__renderer_101(r, renderFlags, T1_);
	gsub__renderer_856(r, n, NIM_FALSE);
}
N_LIB_PRIVATE N_NIMCALL(void, getNextTok__renderer_2141)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* r, tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw* kind, NimStringDesc** literal) {
	{
		NI T3_;
		NI length;
		T3_ = ((*r).tokens ? (*r).tokens->Sup.len : 0);
		if (!((*r).idx < T3_)) goto LA4_;
		(*kind) = (*r).tokens->data[(*r).idx].kind;
		length = ((NI) ((*r).tokens->data[(*r).idx].length));
		unsureAsgnRef((void**) (&(*literal)), substr__system_7745((*r).buf, (*r).pos, (NI)((NI)((*r).pos + length) - ((NI) 1))));
		(*r).pos += length;
		(*r).idx += ((NI) 1);
	}
	goto LA1_;
	LA4_: ;
	{
		(*kind) = ((tyEnum_TokType__jtO8nsEQZ3q9auoz8Uy0Ohw) 1);
	}
	LA1_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*, getTokSym__renderer_2157)(tyObject_TSrcGen__FLkIzVI9alYjwMpiriDPTPQ* r) {
	tyObject_TSym__3r34mwqcVmg5JFNmiaVncw* result;
	result = NIM_NIL;
	{
		NIM_BOOL T3_;
		NI T5_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI) 0) < (*r).idx);
		if (!(T3_)) goto LA4_;
		T5_ = ((*r).tokens ? (*r).tokens->Sup.len : 0);
		T3_ = ((*r).idx <= T5_);
		LA4_: ;
		if (!T3_) goto LA6_;
		result = (*r).tokens->data[(NI)((*r).idx - ((NI) 1))].sym;
	}
	goto LA1_;
	LA6_: ;
	{
		result = ((tyObject_TSym__3r34mwqcVmg5JFNmiaVncw*) NIM_NIL);
	}
	LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, atmrendererdotnim_DatInit000)(void) {
static TNimNode* TM__edlVk3rimVQxtoXNQ77Dhw_3_3[3];
static TNimNode TM__edlVk3rimVQxtoXNQ77Dhw_0[4];
NTItrendertok__z9cSoNPqXol8GydNVfj7f9ag_.size = sizeof(tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag);
NTItrendertok__z9cSoNPqXol8GydNVfj7f9ag_.align = NIM_ALIGNOF(tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag);
NTItrendertok__z9cSoNPqXol8GydNVfj7f9ag_.kind = 18;
NTItrendertok__z9cSoNPqXol8GydNVfj7f9ag_.base = 0;
NTItrendertok__z9cSoNPqXol8GydNVfj7f9ag_.flags = 2;
TM__edlVk3rimVQxtoXNQ77Dhw_3_3[0] = &TM__edlVk3rimVQxtoXNQ77Dhw_0[1];
TM__edlVk3rimVQxtoXNQ77Dhw_0[1].kind = 1;
TM__edlVk3rimVQxtoXNQ77Dhw_0[1].offset = offsetof(tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag, kind);
TM__edlVk3rimVQxtoXNQ77Dhw_0[1].typ = (&NTItoktype__jtO8nsEQZ3q9auoz8Uy0Ohw_);
TM__edlVk3rimVQxtoXNQ77Dhw_0[1].name = "kind";
TM__edlVk3rimVQxtoXNQ77Dhw_3_3[1] = &TM__edlVk3rimVQxtoXNQ77Dhw_0[2];
TM__edlVk3rimVQxtoXNQ77Dhw_0[2].kind = 1;
TM__edlVk3rimVQxtoXNQ77Dhw_0[2].offset = offsetof(tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag, length);
TM__edlVk3rimVQxtoXNQ77Dhw_0[2].typ = (&NTIint4954__kDPg4wXyR8DDyA0MeEjIsw_);
TM__edlVk3rimVQxtoXNQ77Dhw_0[2].name = "length";
TM__edlVk3rimVQxtoXNQ77Dhw_3_3[2] = &TM__edlVk3rimVQxtoXNQ77Dhw_0[3];
TM__edlVk3rimVQxtoXNQ77Dhw_0[3].kind = 1;
TM__edlVk3rimVQxtoXNQ77Dhw_0[3].offset = offsetof(tyObject_TRenderTok__z9cSoNPqXol8GydNVfj7f9ag, sym);
TM__edlVk3rimVQxtoXNQ77Dhw_0[3].typ = (&NTIpsym__u9bhQvrOYyAS9bCQ6gt41GOQ_);
TM__edlVk3rimVQxtoXNQ77Dhw_0[3].name = "sym";
TM__edlVk3rimVQxtoXNQ77Dhw_0[0].len = 3; TM__edlVk3rimVQxtoXNQ77Dhw_0[0].kind = 2; TM__edlVk3rimVQxtoXNQ77Dhw_0[0].sons = &TM__edlVk3rimVQxtoXNQ77Dhw_3_3[0];
NTItrendertok__z9cSoNPqXol8GydNVfj7f9ag_.node = &TM__edlVk3rimVQxtoXNQ77Dhw_0[0];
NTItrendertokseq__U1GhxZcouR7SC9csuA1Iicg_.size = sizeof(tySequence__U1GhxZcouR7SC9csuA1Iicg*);
NTItrendertokseq__U1GhxZcouR7SC9csuA1Iicg_.align = NIM_ALIGNOF(tySequence__U1GhxZcouR7SC9csuA1Iicg*);
NTItrendertokseq__U1GhxZcouR7SC9csuA1Iicg_.kind = 24;
NTItrendertokseq__U1GhxZcouR7SC9csuA1Iicg_.base = (&NTItrendertok__z9cSoNPqXol8GydNVfj7f9ag_);
NTItrendertokseq__U1GhxZcouR7SC9csuA1Iicg_.flags = 2;
NTItrendertokseq__U1GhxZcouR7SC9csuA1Iicg_.marker = Marker_tySequence__U1GhxZcouR7SC9csuA1Iicg;
}

