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

#include "nimbase.h"
#include <string.h>
#include <dirent.h>
#include <setjmp.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <time.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 TNimType TNimType;
typedef struct TNimNode TNimNode;
typedef struct tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA;
typedef struct RootObj RootObj;
typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
typedef struct tySequence__dwIXh8fAQr31bYUekxTtpA tySequence__dwIXh8fAQr31bYUekxTtpA;
typedef struct NimStringDesc NimStringDesc;
typedef struct TGenericSeq TGenericSeq;
typedef struct tyObject_RstFileTable__1rYTAF4X28SkQlz9cTtPDzQ tyObject_RstFileTable__1rYTAF4X28SkQlz9cTtPDzQ;
typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ;
typedef struct tySequence__pUxI6Ljo6IKKHXKOZkQ7Og tySequence__pUxI6Ljo6IKKHXKOZkQ7Og;
typedef struct tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A;
typedef struct tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ;
typedef struct tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ;
typedef struct tyTuple__JfHvHzMrhKkWAUvQKe0i1A tyTuple__JfHvHzMrhKkWAUvQKe0i1A;
typedef struct tyObject_Env_rstgendotnim_RstGenerator___diB2NTuAIWY0FO9c5IUJRGg tyObject_Env_rstgendotnim_RstGenerator___diB2NTuAIWY0FO9c5IUJRGg;
typedef struct tySequence__xv3aaFd3JCw8NbmALHiezQ tySequence__xv3aaFd3JCw8NbmALHiezQ;
typedef struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg tyTuple__7q7q3E6Oj24ZNVJb9aonhAg;
typedef struct tyObject_GeneralTokenizer__mzSYRAkR0jQADvmFWo9aZKQ tyObject_GeneralTokenizer__mzSYRAkR0jQADvmFWo9aZKQ;
typedef struct tyObject_TLineInfo__LpCBEHcAwE2yCs4l9cD1BOA tyObject_TLineInfo__LpCBEHcAwE2yCs4l9cD1BOA;
typedef struct tySequence__V9cBl110bSARQ3Xk9bVaXHDw tySequence__V9cBl110bSARQ3Xk9bVaXHDw;
typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
typedef struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA;
typedef struct tyTuple__qsoB9cWzItmjtA8wRSiKBbA tyTuple__qsoB9cWzItmjtA8wRSiKBbA;
typedef struct tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA;
typedef struct tyTuple__UV3llMMYFckfui8YMBuUZA tyTuple__UV3llMMYFckfui8YMBuUZA;
typedef struct tyTuple__Rf49c4BJ4LYwQucz9a7JHOmA tyTuple__Rf49c4BJ4LYwQucz9a7JHOmA;
typedef struct tySequence__MVOolrgzxbiYsd7sgvFfFw tySequence__MVOolrgzxbiYsd7sgvFfFw;
typedef struct tySequence__CJOrWaM0fWekVRTE2AotGw tySequence__CJOrWaM0fWekVRTE2AotGw;
typedef struct tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A;
typedef struct tyObject_Table__myGXmFdFAc6beAdGFLRvEQ tyObject_Table__myGXmFdFAc6beAdGFLRvEQ;
typedef struct tyTuple__oOuAMYA9a4ePg0evn9b5GaUQ tyTuple__oOuAMYA9a4ePg0evn9b5GaUQ;
typedef struct Exception Exception;
typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
typedef struct TSafePoint TSafePoint;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyTuple__sPaDkVPSC0MkcoXCxPH9ccA tyTuple__sPaDkVPSC0MkcoXCxPH9ccA;
typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
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__jIBKr1ejBgsfM33Kxw4j7A kind;
tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
TNimType* base;
TNimNode* node;
void* finalizer;
tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
};
typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
struct TNimNode {
tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
NI offset;
TNimType* typ;
NCSTRING name;
NI len;
TNimNode** sons;
};
struct RootObj {
TNimType* m_type;
};
typedef NU8 tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA;
struct TGenericSeq {
NI len;
NI reserved;
};
struct NimStringDesc {
  TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
typedef struct {
N_NIMCALL_PTR(NimStringDesc*, ClP_0) (NimStringDesc* filename, void* ClE_0);
void* ClE_0;
} tyProc__oFHfEKFsiYTMAy9a42cSiKw;
typedef NU8 tyEnum_MsgKind__j4Az8tPCEtMOVV8Ta9bk9auQ;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* filename, NI line, NI col, tyEnum_MsgKind__j4Az8tPCEtMOVV8Ta9bk9auQ msgKind, NimStringDesc* arg, void* ClE_0);
void* ClE_0;
} tyProc__zVyAuQlxcO3X84ar49cKZSg;
struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
NI counter;
};
struct tyObject_RstFileTable__1rYTAF4X28SkQlz9cTtPDzQ {
tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIdx;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* idxToFilename;
};
typedef NimStringDesc* tyArray__XRjZexeZG0H0Os6ksQhowg[5];
struct tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ {
tySequence__pUxI6Ljo6IKKHXKOZkQ7Og* data;
NI counter;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, NimStringDesc* filename, NimStringDesc* cmd, NI status, NimStringDesc* content, void* ClE_0);
void* ClE_0;
} tyProc__60GIQaCod4Z80PoIKw3WKQ;
typedef NU8 tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ;
struct tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA {
  RootObj Sup;
tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* config;
NI splitAfter;
NI listingCounter;
tySequence__dwIXh8fAQr31bYUekxTtpA* tocPart;
NIM_BOOL hasToc;
NimStringDesc* theIndex;
tyProc__oFHfEKFsiYTMAy9a42cSiKw findFile;
tyProc__zVyAuQlxcO3X84ar49cKZSg msgHandler;
NimStringDesc* outDir;
NimStringDesc* destFile;
tyObject_RstFileTable__1rYTAF4X28SkQlz9cTtPDzQ filenames;
NimStringDesc* filename;
tyArray__XRjZexeZG0H0Os6ksQhowg meta;
NimStringDesc* currentSection;
tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ seenIndexTerms;
NI id;
tyProc__60GIQaCod4Z80PoIKw3WKQ onTestSnippet;
tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ escMode;
};
struct tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A {
tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n;
NimStringDesc* refname;
NimStringDesc* header;
};
struct tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ {
NI Field0;
NimStringDesc* Field1;
NI Field2;
};
struct tyTuple__JfHvHzMrhKkWAUvQKe0i1A {
void* Field0;
tyObject_Env_rstgendotnim_RstGenerator___diB2NTuAIWY0FO9c5IUJRGg* Field1;
};
typedef NU8 tyEnum_StringTableMode__G9c4wVDFIzf0xHmQvxso9a9cQ;
struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg {
  RootObj Sup;
NI counter;
tySequence__xv3aaFd3JCw8NbmALHiezQ* data;
tyEnum_StringTableMode__G9c4wVDFIzf0xHmQvxso9a9cQ mode;
};
struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg {
NimStringDesc* Field0;
NimStringDesc* Field1;
NimStringDesc* Field2;
};
typedef NU8 tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw;
typedef NU8 tyEnum_SourceLanguage__yW5C9bHJV9a9bc7MnoMHmB85g;
typedef NU8 tyEnum_TokenClass__9anxN1z0YaJHlUGz4GuizCA;
struct tyObject_GeneralTokenizer__mzSYRAkR0jQADvmFWo9aZKQ {
  RootObj Sup;
tyEnum_TokenClass__9anxN1z0YaJHlUGz4GuizCA kind;
NI start;
NI length;
NCSTRING buf;
NI pos;
tyEnum_TokenClass__9anxN1z0YaJHlUGz4GuizCA state;
tyEnum_SourceLanguage__yW5C9bHJV9a9bc7MnoMHmB85g lang;
};
typedef NimStringDesc* tyArray__Re75IspeoxXy2oCZHwcRrA[2];
typedef NimStringDesc* tyArray__xIcDBR8ZFHSuvPCVnP2swA[37];
typedef NU8 tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ;
struct tyObject_TLineInfo__LpCBEHcAwE2yCs4l9cD1BOA {
NU16 line;
NI16 col;
NI32 fileIndex;
};
struct tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ {
tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ kind;
union{
struct {NimStringDesc* text;
} _kind_1;
struct {NimStringDesc* labelFmt;
} _kind_2;
struct {NimStringDesc* lineIndent;
} _kind_3;
struct {NimStringDesc* adType;
} _kind_4;
struct {NI level;
} _kind_5;
struct {NI order;
} _kind_6;
struct {tyObject_TLineInfo__LpCBEHcAwE2yCs4l9cD1BOA info;
} _kind_7;
};
NimStringDesc* anchor;
tySequence__V9cBl110bSARQ3Xk9bVaXHDw* sons;
};
struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
NI refcount;
TNimType* typ;
};
struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
void* bottom;
};
struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
NI len;
NI cap;
tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
};
typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
};
typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
tyArray__0aOLqZchNi8nWtMTi8ND8w link;
NI key;
NI upperBound;
NI level;
};
struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
NI Field1;
};
typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
NI len;
tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
};
struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
NI minLargeObj;
NI maxLargeObj;
tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
NU32 flBitmap;
tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
NI currMem;
NI maxMem;
NI freeMem;
NI occ;
NI lastSize;
tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
NIM_BOOL locked;
NIM_BOOL blockChunkSizeIncrease;
NI nextChunkSize;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
};
struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
NI stackScans;
NI cycleCollections;
NI maxThreshold;
NI maxStackSize;
NI maxStackCells;
NI cycleTableSize;
NI64 maxPause;
};
struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
NI counter;
NI max;
tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
};
struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
NI cycleThreshold;
NI zctThreshold;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
NI recGcLock;
tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
NI gcThreadId;
};
typedef NimStringDesc* tyArray__yt5VDPNtUGx9cBkOVakHwdQ[6];
typedef NimStringDesc* tyArray__haiLFy0nBviVTKFGuwztzQ[5];
struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA {
NI a;
NI b;
};
typedef NimStringDesc* tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tyTuple__qsoB9cWzItmjtA8wRSiKBbA {
NIM_CHAR Field0;
NimStringDesc* Field1;
};
typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
typedef NimStringDesc* tyArray__sMpvt1sOxOJ3LFGulnbeMQ[4];
typedef NimStringDesc* tyArray__24KAM9afIUgUaqBaEBB6r9bg[3];
struct tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA {
NIM_BOOL numberLines;
NI startLine;
NimStringDesc* langStr;
tyEnum_SourceLanguage__yW5C9bHJV9a9bc7MnoMHmB85g lang;
NimStringDesc* filename;
NimStringDesc* testCmd;
NI status;
};
typedef N_CLOSURE_PTR(void, TM__vYBWrr780p7faFzauVMtPg_213) (tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, NimStringDesc* filename, NimStringDesc* cmd, NI status, NimStringDesc* content);
struct tyTuple__UV3llMMYFckfui8YMBuUZA {
NimStringDesc* Field0;
NimStringDesc* Field1;
};
typedef NimStringDesc* tyArray__ygbKUFq19aoG3rnUmyV9bLVw[10];
typedef NimStringDesc* tyArray__8ZvwQIddfpj2THRVPsFzIQ[1];
struct tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A {
NimStringDesc* keyword;
NimStringDesc* link;
NimStringDesc* linkTitle;
NimStringDesc* linkDesc;
};
struct tyObject_Table__myGXmFdFAc6beAdGFLRvEQ {
tySequence__MVOolrgzxbiYsd7sgvFfFw* data;
NI counter;
};
struct tyTuple__Rf49c4BJ4LYwQucz9a7JHOmA {
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* Field0;
tySequence__CJOrWaM0fWekVRTE2AotGw* Field1;
tyObject_Table__myGXmFdFAc6beAdGFLRvEQ Field2;
};
struct tyTuple__oOuAMYA9a4ePg0evn9b5GaUQ {
NI Field0;
tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A Field1;
tySequence__CJOrWaM0fWekVRTE2AotGw* Field2;
};
typedef NU8 tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg;
struct Exception {
  RootObj Sup;
Exception* parent;
NCSTRING name;
NimStringDesc* message;
tySequence__uB9b75OUPRENsBAu4AnoePA* trace;
Exception* up;
};
struct TSafePoint {
TSafePoint* prev;
NI status;
jmp_buf context;
};
typedef NIM_CHAR tyArray__dTlC27m9c9aWd5dvuePYanug[256];
typedef NU8 tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg;
typedef tyTuple__UV3llMMYFckfui8YMBuUZA tyArray__0ipey9aZuUA8jy4OAHzODQg[3];
typedef struct {
N_NIMCALL_PTR(NI, ClP_0) (NimStringDesc* x, NimStringDesc* y, void* ClE_0);
void* ClE_0;
} tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA;
typedef NU8 tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA;
typedef N_CLOSURE_PTR(NI, TM__vYBWrr780p7faFzauVMtPg_267) (NimStringDesc* x, NimStringDesc* y, void* ClE_0);
typedef struct {
N_NIMCALL_PTR(NI, ClP_0) (tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* x, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* y, void* ClE_0);
void* ClE_0;
} tyProc__dyWamSxQI9aSIOZWO07sqOA;
typedef N_CLOSURE_PTR(NI, TM__vYBWrr780p7faFzauVMtPg_269) (tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* x, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* y);
typedef N_CLOSURE_PTR(NI, TM__vYBWrr780p7faFzauVMtPg_270) (tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* x, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* y);
typedef N_CLOSURE_PTR(NI, TM__vYBWrr780p7faFzauVMtPg_271) (tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* x, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* y, void* ClE_0);
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
NI Field0;
NimStringDesc* Field1;
NI32 Field2;
};
struct tyTuple__sPaDkVPSC0MkcoXCxPH9ccA {
NimStringDesc* Field0;
NimStringDesc* Field1;
NIM_BOOL Field2;
};
struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
NCSTRING procname;
NI line;
NCSTRING filename;
};
struct tySequence__dwIXh8fAQr31bYUekxTtpA {
  TGenericSeq Sup;
  tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A data[SEQ_DECL_SIZE];
};
struct tySequence__pUxI6Ljo6IKKHXKOZkQ7Og {
  TGenericSeq Sup;
  tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ data[SEQ_DECL_SIZE];
};
struct tySequence__V9cBl110bSARQ3Xk9bVaXHDw {
  TGenericSeq Sup;
  tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* data[SEQ_DECL_SIZE];
};
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  TGenericSeq Sup;
  NimStringDesc* data[SEQ_DECL_SIZE];
};
struct tySequence__CJOrWaM0fWekVRTE2AotGw {
  TGenericSeq Sup;
  tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A data[SEQ_DECL_SIZE];
};
struct tySequence__MVOolrgzxbiYsd7sgvFfFw {
  TGenericSeq Sup;
  tyTuple__oOuAMYA9a4ePg0evn9b5GaUQ data[SEQ_DECL_SIZE];
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  TGenericSeq Sup;
  tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
};
struct tySequence__xv3aaFd3JCw8NbmALHiezQ {
  TGenericSeq Sup;
  tyTuple__sPaDkVPSC0MkcoXCxPH9ccA data[SEQ_DECL_SIZE];
};
struct tySequence__uB9b75OUPRENsBAu4AnoePA {
  TGenericSeq Sup;
  tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];
};
N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
static N_NIMCALL(void, Marker_tySequence__dwIXh8fAQr31bYUekxTtpA)(void* p, NI op);
static N_NIMCALL(void, Marker_tySequence__pUxI6Ljo6IKKHXKOZkQ7Og)(void* p, NI op);
N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
N_LIB_PRIVATE N_NIMCALL(void, genericSeqAssign)(void* dest, void* src, TNimType* mt);
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, nossplitFile)(NimStringDesc* path, tyTuple__7q7q3E6Oj24ZNVJb9aonhAg* Result);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(void, initTable__packagesZdocutilsZrstgen_108)(NI initialSize, tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ* Result);
static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count);
N_LIB_PRIVATE N_NIMCALL(NI, nextPowerOfTwo__pureZmath_176)(NI x);
N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOrDefault__pureZstrtabs_173)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* t, NimStringDesc* key, NimStringDesc* default_0);
N_LIB_PRIVATE N_NIMCALL(NI, nsuParseInt)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NI, nextSplitPoint__packagesZdocutilsZrstgen_224)(NimStringDesc* s, NI start);
static N_INLINE(void, addSplitter__packagesZdocutilsZrstgen_221)(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, NimStringDesc** dest);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
static N_INLINE(void, escChar__packagesZdocutilsZrstgen_216)(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, NimStringDesc** dest, NIM_CHAR c, tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ escMode);
N_LIB_PRIVATE N_NIMCALL(void, addHtmlChar__packagesZdocutilsZrstgen_196)(NimStringDesc** dest, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(void, addTexChar__packagesZdocutilsZrstgen_199)(NimStringDesc** dest, NIM_CHAR c, tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ escMode);
static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(void, renderCodeLang__packagesZdocutilsZrstgen_8232)(NimStringDesc** result, tyEnum_SourceLanguage__yW5C9bHJV9a9bc7MnoMHmB85g lang, NimStringDesc* code, tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target);
N_LIB_PRIVATE N_NIMCALL(void, initGeneralTokenizer__packagesZdocutilsZhighlite_166)(tyObject_GeneralTokenizer__mzSYRAkR0jQADvmFWo9aZKQ* g, NimStringDesc* buf);
N_LIB_PRIVATE N_NIMCALL(void, getNextToken__packagesZdocutilsZhighlite_1760)(tyObject_GeneralTokenizer__mzSYRAkR0jQADvmFWo9aZKQ* g, tyEnum_SourceLanguage__yW5C9bHJV9a9bc7MnoMHmB85g lang);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7773)(NimStringDesc* s, NI first, NI last);
N_LIB_PRIVATE N_NIMCALL(void, dispA__packagesZdocutilsZrstgen_285)(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, NimStringDesc** dest, NimStringDesc* xml, NimStringDesc* tex, NimStringDesc** args, NI argsLen_0);
N_LIB_PRIVATE N_NIMCALL(void, nsuAddf)(NimStringDesc** s, NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, esc__packagesZdocutilsZrstgen_240)(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, NimStringDesc* s, NI splitAfter, tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ escMode);
N_LIB_PRIVATE N_NIMCALL(void, deinitGeneralTokenizer__packagesZdocutilsZhighlite_169)(tyObject_GeneralTokenizer__mzSYRAkR0jQADvmFWo9aZKQ* g);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, quoteIndexColumn__packagesZdocutilsZrstgen_328)(NimStringDesc* text);
N_NIMCALL(NimStringDesc*, rawNewString)(NI cap);
N_LIB_PRIVATE N_NIMCALL(void, insert__system_7500)(NimStringDesc** x, NimStringDesc* item, NI i);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuReplaceStr)(NimStringDesc* s, NimStringDesc* sub, NimStringDesc* by);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, noschangeFileExt)(NimStringDesc* filename, NimStringDesc* ext);
N_LIB_PRIVATE N_NIMCALL(void, renderAux__packagesZdocutilsZrstgen_303)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(NI, len__packagesZdocutilsZrstast_102)(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n);
N_LIB_PRIVATE N_NIMCALL(void, renderRstToOut__packagesZdocutilsZrstgen_299)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(void, renderHeadline__packagesZdocutilsZrstgen_8015)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rstnodeToRefname__packagesZdocutilsZrst_59)(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderRstToText__packagesZdocutilsZrstast_452)(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* node);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, setLengthSeqV2)(TGenericSeq* s, TNimType* typ, NI newLen);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyStringRC1)(NimStringDesc* src);
static N_INLINE(void, nimGCunrefNoCycle)(void* p);
static N_INLINE(void, decRef__system_5345)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
static N_INLINE(void, rtlAddZCT__system_5343)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5294)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5300)(void* usr);
static N_INLINE(void, asgnRef)(void** dest, void* src);
static N_INLINE(void, incRef__system_5338)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___systemZdollars_3)(NI x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimCharToStr)(NIM_CHAR x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosextractFilename)(NimStringDesc* path);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosrelativePath)(NimStringDesc* path, NimStringDesc* base, NIM_CHAR sep);
N_LIB_PRIVATE N_NIMCALL(void, setIndexTerm__packagesZdocutilsZrstgen_344)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, NimStringDesc* htmlFile, NimStringDesc* id, NimStringDesc* term, NimStringDesc* linkTitle, NimStringDesc* linkDesc);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, stripTocHtml__packagesZdocutilsZrstgen_8010)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindChar)(NimStringDesc* s, NIM_CHAR sub, NI start, NI last);
N_LIB_PRIVATE N_NIMCALL(void, nsuDelete)(NimStringDesc** s, NI first, NI last);
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(void, renderOverline__packagesZdocutilsZrstgen_8067)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(void, renderAux__packagesZdocutilsZrstgen_315)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc* html, NimStringDesc* tex, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(void, renderEnumList__packagesZdocutilsZrstgen_8321)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
static N_INLINE(NIM_CHAR*, X5BX5D___system_7391)(NimStringDesc** s, NI i);
static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___pureZunicode_840)(NI a, NI b);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuIsDigitChar)(NIM_CHAR c);
static N_INLINE(NimStringDesc*, X5BX5D___pureZunicode_865)(NimStringDesc* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x);
N_NIMCALL(NimStringDesc*, mnewString)(NI len);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuIsUpperAsciiChar)(NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(void, renderField__packagesZdocutilsZrstgen_8310)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addNodes__packagesZdocutilsZrst_61)(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuStrip)(NimStringDesc* s, NIM_BOOL leading, NIM_BOOL trailing, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars);
N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreStyle)(NimStringDesc* a, NimStringDesc* b);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__systemZassertions_56)(NimStringDesc* msg);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___system_3118)(NF x);
static N_INLINE(NF, toFloat__system_1702)(NI i);
N_LIB_PRIVATE N_NIMCALL(void, renderAdmonition__packagesZdocutilsZrstgen_8419)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(NI, hashString)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuCapitalizeAscii)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, texColumns__packagesZdocutilsZrstgen_8303)(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuRepeatStr)(NimStringDesc* s, NI n);
N_LIB_PRIVATE N_NIMCALL(void, renderHyperlink__packagesZdocutilsZrstgen_8428)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* text, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* link, NimStringDesc** result, NIM_BOOL external);
N_LIB_PRIVATE N_NIMCALL(void, safeProtocol__packagesZdocutilsZrstgen_8094)(NimStringDesc** linkStr);
N_LIB_PRIVATE N_NIMCALL(NI, parseIdent__pureZparseutils_57)(NimStringDesc* s, NimStringDesc** ident, NI start);
static N_INLINE(NI, skip__pureZparseutils_117)(NimStringDesc* s, NimStringDesc* token, NI start);
N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreCase)(NimStringDesc* a, NimStringDesc* b);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ*, lastSon__packagesZdocutilsZrstast_190)(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n);
N_LIB_PRIVATE N_NIMCALL(void, renderImage__packagesZdocutilsZrstgen_8139)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getArgument__packagesZdocutilsZrst_66)(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getFieldValue__packagesZdocutilsZrst_63)(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc* fieldname);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dispF__packagesZdocutilsZrstgen_275)(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, NimStringDesc* xml, NimStringDesc* tex, NimStringDesc** args, NI argsLen_0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuEndsWith)(NimStringDesc* s, NimStringDesc* suffix);
N_LIB_PRIVATE N_NIMCALL(void, renderCode__packagesZdocutilsZrstgen_8242)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(void, parseCodeBlockParams__packagesZdocutilsZrstgen_8185)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA* Result);
N_LIB_PRIVATE N_NIMCALL(void, init__packagesZdocutilsZrstgen_88)(tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA* p);
N_LIB_PRIVATE N_NIMCALL(void, parseCodeBlockField__packagesZdocutilsZrstgen_8181)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA* params);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuToLowerAsciiStr)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NI, getField1Int__packagesZdocutilsZrstgen_8153)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc* fieldName);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getFieldValue__packagesZdocutilsZrst_5232)(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n);
N_LIB_PRIVATE N_NIMCALL(NI, npuParseInt)(NimStringDesc* s, NI* number, NI start);
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_2095)(tyObject_RstFileTable__1rYTAF4X28SkQlz9cTtPDzQ filenames, tyProc__zVyAuQlxcO3X84ar49cKZSg f, tyObject_TLineInfo__LpCBEHcAwE2yCs4l9cD1BOA info, tyEnum_MsgKind__j4Az8tPCEtMOVV8Ta9bk9auQ msgKind, NimStringDesc* arg);
static N_INLINE(NimStringDesc*, X5BX5D___pureZunicode_3215)(NimStringDesc* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x);
static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___stdZenumutils_80)(NI a, NI b);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuUnescape)(NimStringDesc* s, NimStringDesc* prefix, NimStringDesc* suffix);
N_LIB_PRIVATE N_NIMCALL(tyEnum_SourceLanguage__yW5C9bHJV9a9bc7MnoMHmB85g, getSourceLanguage__packagesZdocutilsZhighlite_97)(NimStringDesc* name);
N_LIB_PRIVATE N_NIMCALL(void, buildLinesHtmlTable__packagesZdocutilsZrstgen_8206)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA* params, NimStringDesc* code, NimStringDesc* idStr, tyTuple__UV3llMMYFckfui8YMBuUZA* Result);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
N_LIB_PRIVATE N_NIMCALL(NI, nsuCountLines)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(void, renderContainer__packagesZdocutilsZrstgen_8297)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(void, renderIndexTerm__packagesZdocutilsZrstgen_365)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__packagesZdocutilsZrstgen_410)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ t, NimStringDesc* key);
static N_INLINE(NI, rawGet__packagesZdocutilsZrstgen_417)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ t, NimStringDesc* key, NI* hc);
N_LIB_PRIVATE N_NIMCALL(NI, hash__pureZhashes_279)(NimStringDesc* x);
static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode);
static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___packagesZdocutilsZrstgen_822)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ* t, NimStringDesc* key, NI val);
static N_INLINE(NIM_BOOL, mustRehash__packagesZdocutilsZrstgen_995)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ t);
N_LIB_PRIVATE N_NIMCALL(void, enlarge__packagesZdocutilsZrstgen_1148)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ* t);
N_LIB_PRIVATE N_NIMCALL(void, rawInsert__packagesZdocutilsZrstgen_1448)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ* t, tySequence__pUxI6Ljo6IKKHXKOZkQ7Og** data, NimStringDesc* key, NI val, NI hc, NI h);
static N_INLINE(NI, rawGetKnownHC__packagesZdocutilsZrstgen_1617)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ t, NimStringDesc* key, NI hc);
N_LIB_PRIVATE N_NIMCALL(NI, getOrDefault__packagesZdocutilsZrstgen_718)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ t, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(void, renderSmiley__packagesZdocutilsZrstgen_8149)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(void, renderTocEntry__packagesZdocutilsZrstgen_8121)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A e, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(void, renderTocEntries__packagesZdocutilsZrstgen_8125)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, NI* j, NI lvl, NimStringDesc** result);
N_LIB_PRIVATE N_NIMCALL(void, writeFile__systemZio_470)(NimStringDesc* filename, NimStringDesc* content);
N_LIB_PRIVATE N_NIMCALL(void, readIndexDir__packagesZdocutilsZrstgen_6718)(NimStringDesc* dir, tyTuple__Rf49c4BJ4LYwQucz9a7JHOmA* Result);
N_LIB_PRIVATE N_NIMCALL(void, initTable__packagesZdocutilsZrstgen_6728)(NI initialSize, tyObject_Table__myGXmFdFAc6beAdGFLRvEQ* Result);
static N_NIMCALL(void, Marker_tySequence__CJOrWaM0fWekVRTE2AotGw)(void* p, NI op);
static N_NIMCALL(void, Marker_tySequence__MVOolrgzxbiYsd7sgvFfFw)(void* p, NI op);
static N_INLINE(NimStringDesc*, pop__pureZos_1360)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ** s);
static N_INLINE(NimStringDesc*, slash___pureZos_121)(NimStringDesc* head, NimStringDesc* tail);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosjoinPath)(NimStringDesc* head, NimStringDesc* tail);
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s);
N_LIB_PRIVATE N_NOINLINE(void, raiseOSError__pureZos_405)(NI32 errorCode, NimStringDesc* additionalInfo);
N_LIB_PRIVATE N_NIMCALL(NI32, osLastError__pureZos_408)(void);
static N_INLINE(void, pushSafePoint)(TSafePoint* s);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cstrToNimstr)(NCSTRING str);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosdirExists)(NimStringDesc* dir);
N_LIB_PRIVATE N_NIMCALL(tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg, getSymlinkFileKind__pureZos_1218)(NimStringDesc* path);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
N_LIB_PRIVATE N_NIMCALL(FILE*, open__systemZio_430)(NimStringDesc* filename, tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg mode, NI bufSize);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, readLine__systemZio_238)(FILE* f, NimStringDesc** line);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7785)(NimStringDesc* s, NI first);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDocumentationTitle__packagesZdocutilsZrstgen_2057)(NimStringDesc* hyperlink);
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, nsuSplitChar)(NimStringDesc* s, NIM_CHAR sep, NI maxsplit);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, unquoteIndexColumn__packagesZdocutilsZrstgen_332)(NimStringDesc* text);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, multiReplace__pureZstrutils_1682)(NimStringDesc* s, tyTuple__UV3llMMYFckfui8YMBuUZA* replacements, NI replacementsLen_0);
static N_INLINE(void, popSafePoint)(void);
N_LIB_PRIVATE N_NIMCALL(void, close__systemZio_217)(FILE* f);
N_LIB_PRIVATE N_NIMCALL(void, nimLeaveFinally)(void);
N_LIB_PRIVATE N_NIMCALL(void, reraiseException)(void);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen);
N_LIB_PRIVATE N_NIMCALL(NI, len__packagesZdocutilsZrstgen_5642)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ t);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___packagesZdocutilsZrstgen_6888)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ* t, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* key, tySequence__CJOrWaM0fWekVRTE2AotGw* val);
static N_INLINE(NI, rawGet__packagesZdocutilsZrstgen_6268)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ t, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* key, NI* hc);
N_LIB_PRIVATE N_NIMCALL(NI, hash__packagesZdocutilsZrstgen_1990)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* x);
static N_INLINE(NI, emarkamp___pureZhashes_3)(NI h, NI val);
static N_INLINE(NI, emarkdollar___pureZhashes_18)(NI h);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___packagesZdocutilsZrstgen_6486)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* x, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* y);
static N_INLINE(NIM_BOOL, mustRehash__packagesZdocutilsZrstgen_7061)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ t);
N_LIB_PRIVATE N_NIMCALL(void, enlarge__packagesZdocutilsZrstgen_7214)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ* t);
N_LIB_PRIVATE N_NIMCALL(void, rawInsert__packagesZdocutilsZrstgen_7522)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ* t, tySequence__MVOolrgzxbiYsd7sgvFfFw** data, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* key, tySequence__CJOrWaM0fWekVRTE2AotGw* val, NI hc, NI h);
static N_INLINE(NI, rawGetKnownHC__packagesZdocutilsZrstgen_7691)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ t, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* key, NI hc);
N_LIB_PRIVATE N_NIMCALL(void, sort__sem_1803)(NimStringDesc** a, NI aLen_0, tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(NI, cmp__system_1549)(NimStringDesc* x, NimStringDesc* y);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, generateDocumentationJumps__packagesZdocutilsZrstgen_6581)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ docs);
N_LIB_PRIVATE N_NIMCALL(void, sort__packagesZdocutilsZrstgen_6108)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* a, NI aLen_0, tyProc__dyWamSxQI9aSIOZWO07sqOA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(tySequence__CJOrWaM0fWekVRTE2AotGw*, newSeq__packagesZdocutilsZrstgen_6119)(NI len);
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt__packagesZdocutilsZrstgen_6130)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* a, NI aLen_0, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* b, NI bLen_0, NI lo, NI m, NI hi, tyProc__dyWamSxQI9aSIOZWO07sqOA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
static N_INLINE(NI, star___pureZalgorithm_8)(NI x, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order);
N_LIB_PRIVATE N_NIMCALL(NI, cmp__packagesZdocutilsZrstgen_1986)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* a, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* b);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuJoinSep)(NimStringDesc** a, NI aLen_0, NimStringDesc* sep);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, generateModuleJumps__packagesZdocutilsZrstgen_6702)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* modules);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, prettyLink__packagesZdocutilsZrstgen_85)(NimStringDesc* file);
N_LIB_PRIVATE N_NIMCALL(void, sortIndex__packagesZdocutilsZrstgen_1996)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* a, NI aLen_0);
N_LIB_PRIVATE N_NIMCALL(void, ltminus___packagesZdocutilsZrstgen_1993)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* a, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* b);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, generateSymbolIndex__packagesZdocutilsZrstgen_2036)(tySequence__CJOrWaM0fWekVRTE2AotGw* symbols);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, escapeLink__packagesZdocutilsZrstgen_2021)(NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toHex__pureZstrutils_1792)(NI x, NI len);
extern TNimType NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_;
N_LIB_PRIVATE TNimType NTIrstgenerator__3jlDCj6GoMg9aZfxlJYSfkA_;
N_LIB_PRIVATE TNimType NTIoutputtarget__N1HUNw9bw7B2wG9bU9aDvY8oA_;
extern TNimType NTIstringtableref__n9cmoMXcDs47wYDFGEXuCfw_;
extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
N_LIB_PRIVATE TNimType NTItocentry__SAkUV1sZh55ZCzPTFEuH6A_;
extern TNimType NTIprstnode__atGg6Dddbb7ASNaCLVdS9aA_;
extern TNimType NTIstring__77mFvmsOLKik79ci2hXkHEg_;
N_LIB_PRIVATE TNimType NTIseqLtocentryT__dwIXh8fAQr31bYUekxTtpA_;
extern TNimType NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_;
extern TNimType NTIfindfilehandler__oFHfEKFsiYTMAy9a42cSiKw_;
extern TNimType NTImsghandler__zVyAuQlxcO3X84ar49cKZSg_;
extern TNimType NTIrstfiletable__1rYTAF4X28SkQlz9cTtPDzQ_;
N_LIB_PRIVATE TNimType NTIarrayLmetaenum_stringT__XRjZexeZG0H0Os6ksQhowg_;
N_LIB_PRIVATE TNimType NTItable__i55W8RrwGKsG9cl0sAKxgkQ_;
N_LIB_PRIVATE TNimType NTIkeyvaluepair__sr3s7uVHpu9cEbbDnCSg8yQ_;
N_LIB_PRIVATE TNimType NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_;
N_LIB_PRIVATE TNimType NTIprocLd58varrstgenerator_filename58string_cmd58string_status58int_content58stringTLOclosureOT__60GIQaCod4Z80PoIKw3WKQ_;
extern TNimType NTIpointer__vr5DoT1jILTGdRlYv1OYpw_;
extern TNimType NTIrefobject__HsJiUUcO9cHBdUCi0HwkSTA_;
N_LIB_PRIVATE TNimType NTIescapemode__dkNCmHqexjnwZO5F89buiOQ_;
extern TNimType NTIkeyvaluepairseq__7lEisrXlQEzwtUKW5pzRCw_;
extern TNimType NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_;
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_13, ".nim", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_14, "Module ", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_15, "split.item.toc", 14);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_16, "<wbr />", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_17, "\\-", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_18, "&amp;", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_19, "&lt;", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_20, "&gt;", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_21, "&quot;", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_22, "\\", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_23, "{}", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_24, "\\textasciigrave{}", 17);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_25, "\\textbackslash{}", 16);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_26, "\\%7B", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_27, "\\{", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_28, "\\%7D", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_29, "\\}", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_30, "\\text{]}", 8);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_31, "]", 1);
extern TNimType NTIgeneraltokenizer__mzSYRAkR0jQADvmFWo9aZKQ_;
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_32, "<span class=\"$2\">$1</span>", 26);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_33, "\\span$2{$1}", 11);
extern NIM_CONST tyArray__xIcDBR8ZFHSuvPCVnP2swA tokenClassToStr__packagesZdocutilsZhighlite_68;
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_34, "\\n", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_35, "\\t", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_36, "\012", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_37, "_._", 3);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_38, "..", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_39, "-", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_40, "\012<h$1><a class=\"toc-backref\"$2 href=\"#$5\">$3</a></h$1>", 54);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_41, "\\rsth$4[$6]{$3}$2\012", 18);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_42, " id=\"", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_43, "\"", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_44, "\\label{", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_45, "}\\hypertarget{", 14);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_46, "}{}", 3);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_47, "\012<h$1$2>$3</h$1>", 16);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_48, "\\rsth$4[$5]{$3}$2\012", 18);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_49, "html", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_50, "<h$1$2><center>$3</center></h$1>", 32);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_51, "\\rstov$4[$5]{$3}$2\012", 19);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_52, "<hr$2 />\012", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_53, "\012\012\\vspace{0.6em}\\hrule$2\012", 25);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_54, "<p$2>$1</p>\012", 12);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_55, "\012\012$2\012$1\012\012", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_56, "<ul$2 class=\"simple\">$1</ul>\012", 29);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_57, "\\begin{itemize}\012$2\012$1\\end{itemize}\012", 35);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_58, "<li$2>$1</li>\012", 14);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_59, "\\item $2$1\012", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_60, "(", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_61, "\012%", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_62, "label=", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_63, "\\arabic*", 8);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_64, ",", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_65, "1", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_66, "start=$1", 8);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_67, "[$1$2]", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_68, "\\Alph*", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_69, "\\alph*", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_70, ",start=", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_71, " start=\"$1\"", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_72, "class=\"simple\"", 14);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_74, "class=\"upperalpha simple\"", 25);
static NIM_CONST tyTuple__qsoB9cWzItmjtA8wRSiKBbA TM__vYBWrr780p7faFzauVMtPg_73 = {65,
((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_74)}
;
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_76, "class=\"loweralpha simple\"", 25);
static NIM_CONST tyTuple__qsoB9cWzItmjtA8wRSiKBbA TM__vYBWrr780p7faFzauVMtPg_75 = {97,
((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_76)}
;
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_77, "<ol$2 ", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_78, ">$1</ol>\012", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_79, "\\begin{enumerate}", 17);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_80, "$2$1\\end{enumerate}\012", 20);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_81, "<dl$2 class=\"docutils\">$1</dl>\012", 31);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_82, "\\begin{description}\012$2\012$1\\end{description}\012", 43);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_83, "<dt$2>$1</dt>\012", 14);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_84, "$2\\item[$1]\\  ", 14);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_85, "<dd$2>$1</dd>\012", 14);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_86, "$2\012$1\012", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_87, "<table$2 class=\"docinfo\" frame=\"void\" rules=\"none\"><col class=\"docinfo-name\" /><col class=\"docinfo-content\" /><tbody valign=\"top\">$1</tbody></table>", 148);
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__vYBWrr780p7faFzauVMtPg_88 = {
0x00, 0x3e, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
;
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_89, "author", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_90, "authors", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_91, "version", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_92, "<tr>$1</tr>\012", 12);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_93, "$1", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_94, "<th class=\"docinfo-name\">$1:</th>", 33);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_95, "\\item[$1:]", 10);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_96, "<td>$1</td>", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_97, " $1\012", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_98, "<div$2 class=\"option-list\">$1</div>", 35);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_99, "\\begin{rstoptlist}$2\012$1\\end{rstoptlist}", 39);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_100, " odd", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_101, "<div class=\"option-list-item", 28);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_102, "\">$1</div>\012", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_103, "<div class=\"option-list-label\"><tt><span class=\"option\">$1</span></tt></div>", 76);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_104, "\\item[\\rstcodeitem{\\spanoption{$1}}]", 36);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_105, "<div class=\"option-list-description\">$1</div>", 45);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_106, "rstgen.nim(1272, 14) `false` renderRstToOut", 43);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_107, "<pre$2>$1</pre>\012", 16);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_108, "\012\012$2\\begin{rstpre}\012$1\012\\end{rstpre}\012\012", 36);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_109, "rstgen.nim(1277, 14) `false` renderRstToOut", 43);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_110, "<p$2>$1</p> ", 12);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_111, "\012\012$2\012$1", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_112, "<p$2>$1</p>", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_113, "\012\\vspace{0.5em}$2\012$1\\vspace{0.5em}\012", 35);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_114, "$1<br/>", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_115, "\\noindent $1\012\012", 14);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_116, "<br/>", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_117, "\\vspace{1em}\012", 13);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_118, "em", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_119, "<span style=\"margin-left: ", 26);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_120, "\">$1</span><br/>", 16);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_121, "\\noindent\\hspace{", 17);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_122, "}$1\012\012", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_123, "<blockquote$2><p>$1</p></blockquote>\012", 37);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_124, "\\begin{quote}\012$2\012$1\\end{quote}\012", 31);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_125, "admonition_warning", 18);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_126, "\\large", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_127, "orange", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_128, "hint", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_129, "note", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_130, "tip", 3);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_131, "attention", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_132, "admonition", 10);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_133, "important", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_134, "warning", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_135, "caution", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_136, "danger", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_137, "error", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_138, "admonition-info", 15);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_139, "\\normalsize", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_140, "green", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_141, "admonition-warning", 18);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_142, "admonition-error", 16);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_143, "\\Large", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_144, "red", 3);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_145, "<div class=\"admonition ", 23);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_146, "\">", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_147, "<span$2 class=\"", 15);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_148, "-text\"><b>", 10);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_149, ":</b></span>\012$1</div>\012", 22);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_150, "\012\012\\begin{rstadmonition}[borderline west={0.2em}{0pt}{", 53);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_151, "}]$2\012{", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_152, "\\color{", 7);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_153, "}{\\textbf{", 10);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_154, ":}}} $1\012\\end{rstadmonition}\012", 28);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_155, "<table$2 border=\"1\" class=\"docutils\">$1</table>", 47);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_156, "\012$2\012\\begin{rsttab}{", 19);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_157, "L", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_158, "}\012\\hline\012$1\\end{rsttab}", 23);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_159, " & ", 3);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_160, "\\\\\012\\hline\012", 10);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_161, "<tr>", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_162, "</tr>\012", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_163, "<th>$1</th>", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_164, "\\textbf{$1}", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_165, "<hr class=\"footnote\"><div class=\"footnote-group\">\012$1</div>\012", 59);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_166, "\012\012\\noindent\\rule{0.25\\linewidth}{.4pt}\012\\begin{rstfootnote}\012$1\\end{rstfootnote}\012\012", 80);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_167, "<div$2><div class=\"footnote-label\"><sup><strong><a href=\"#$4\">[$3]</a></strong></sup></div> &ensp; $1\012</div>\012", 109);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_168, "\\item[\\textsuperscript{[$3]}]$2 $1\012", 35);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_169, ":", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_170, "http", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_171, "https", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_172, "ftp", 3);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_173, "<a class=\"reference external\" href=\"$2\">$1</a>", 46);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_174, "\\href{$2}{$1}", 13);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_175, "<a class=\"reference internal\" href=\"#$2\">$1</a>", 47);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_176, "\\hyperlink{$2}{$1} (p.~\\pageref{$2})", 36);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_177, "[", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_178, "<sup><strong><a class=\"reference internal\" href=\"#$2\">$1</a></strong></sup>", 75);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_179, "\\textsuperscript{\\hyperlink{$2}{\\textbf{$1}}}", 45);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_180, "scale", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_181, " scale=\"$1\"", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_182, " scale=$1", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_183, "height", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_184, " height=\"$1\"", 12);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_185, " height=$1", 10);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_186, "width", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_187, " width=\"$1\"", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_188, " width=$1", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_189, "alt", 3);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_190, " alt=\"$1\"", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_191, "align", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_192, " align=\"$1\"", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_193, "[$1]", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_194, ".mp4", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_195, ".ogg", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_196, ".webm", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_197, "      <video$3 src=\"$1\"$2 autoPlay=\'true\' loop=\'true\' muted=\'true\'>\012      Sorry, your browser doesn\'t support embedded videos\012      </video>\012    ", 145);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_198, "<img$3 src=\"$1\"$2/>", 19);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_199, "target", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_200, "$3\\includegraphics$2{$1}", 24);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_201, "number-lines", 12);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_202, "file", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_203, "filename", 8);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_204, "test", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_205, "status", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_206, "exitcode", 8);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_207, "default-language", 16);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_208, "field $1 requires an argument", 29);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_209, "field $1 requires an integer, but \'$2\' was given", 48);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_210, "extra arguments were given to $1: \'$2\'", 38);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_211, "$nim r --backend:$backend --lib:$libpath $docCmd $options", 57);
static NIM_CONST tyProc__60GIQaCod4Z80PoIKw3WKQ TM__vYBWrr780p7faFzauVMtPg_212 = {NIM_NIL,NIM_NIL};
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_214, "doc.listing_start", 17);
extern NIM_CONST tyArray__ygbKUFq19aoG3rnUmyV9bLVw sourceLanguageToStr__packagesZdocutilsZhighlite_66;
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_215, "doc.listing_end", 15);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_216, "<table$1 class=\"line-nums-table\">", 33);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_217, "<tbody><tr><td class=\"blob-line-nums\"><pre class=\"line-nums\">", 61);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_218, "</pre></td><td>", 15);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_219, "</td></tr></tbody></table>", 26);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_220, "doc.listing_button", 18);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_221, "<tt class=\"docutils literal\"><span class=\"pre\">", 47);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_222, "</span></tt>", 12);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_223, "\012\012", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_224, "\\begin{rstpre}\012", 15);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_225, "\012\\end{rstpre}\012\012", 15);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_226, "\\rstcode{", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_227, "}", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_228, "<div>$1</div>", 13);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_229, "<div class=\"$1\">$2</div>", 24);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_230, "$2", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_231, "|$1|", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_232, "Other", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_233, "<tt class=\"docutils literal\"><span class=\"pre $2\">$1</span></tt>", 64);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_234, "\\rstcode{\\span$2{$1}}", 21);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_235, "<sub>$1</sub>", 13);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_236, "\\rstsub{$1}", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_237, "<sup>$1</sup>", 13);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_238, "\\rstsup{$1}", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_239, "<em>$1</em>", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_240, "\\emph{$1}", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_241, "<strong>$1</strong>", 19);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_242, "<strong><em>$1</em></strong>", 28);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_243, "\\textbf{emph{$1}}", 17);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_244, "<span id=\"$1\">$2</span>", 23);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_245, "\\nimindexterm{$1}{$2}", 21);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_246, "<tt class=\"docutils literal\"><span class=\"pre\">$1</span></tt>", 61);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_247, "\\rstcode{$1}", 12);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_248, "<span class=\"target\" id=\"$2\">$1</span>", 38);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_249, "\\label{$2}\\hypertarget{$2}{$1}", 30);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_250, "<img src=\"$1\" width=\"15\"\012        height=\"17\" hspace=\"2\" vspace=\"2\" class=\"smiley\" />", 84);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_251, "\\includegraphics{$1}", 20);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_252, "doc.smiley_format", 17);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_253, "<li><a class=\"reference\" id=\"$1_toc\" href=\"#$1\">$2</a></li>\012", 60);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_254, "\\item\\label{$1_toc} $2\\ref{$1}\012", 31);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_255, "<ul class=\"simple\">$1</ul>", 26);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_256, "\\begin{enumerate}$1\\end{enumerate}", 34);
N_LIB_PRIVATE TNimType NTIkeyvaluepair__oOuAMYA9a4ePg0evn9b5GaUQ_;
N_LIB_PRIVATE TNimType NTIindexentry__fxsh1PMzYjb64GNihAaS4A_;
N_LIB_PRIVATE TNimType NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_;
N_LIB_PRIVATE TNimType NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_;
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_260, ".", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_261, ".idx", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_264, "\011", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_265, "\\\\", 2);
static NIM_CONST tyArray__0ipey9aZuUA8jy4OAHzODQg TM__vYBWrr780p7faFzauVMtPg_263 = {{((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_35),
((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_264)}
,
{((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_34),
((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_36)}
,
{((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_265),
((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_22)}
}
;
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_266, "doc_toc_", 8);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_268, "Documents: ", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_272, "<a href=\"", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_273, "</a>", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_274, ", ", 2);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_275, ".<br/>", 6);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_276, "<p />", 5);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_277, "Modules: ", 9);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_278, "<a href=\"$1.html\">$2</a>", 24);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_279, "<h2>API symbols</h2>\012", 21);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_280, "<dl>", 4);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_281, "%", 1);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_282, "<dt><a name=\"$2\" href=\"#$2\"><span>$1:</span></a></dt><dd><ul class=\"simple\">\012", 77);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_283, "<li><a class=\"reference external\"\012          title=\"$3\" data-doc-search-tag=\"$2\" href=\"$1\">$2</a></li>\012          ", 112);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_284, "<li><a class=\"reference external\"\012          data-doc-search-tag=\"$2\" href=\"$1\">$2</a></li>\012          ", 101);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_285, "</ul></dd>\012", 11);
STRING_LITERAL(TM__vYBWrr780p7faFzauVMtPg_286, "</dl>", 5);
extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5247;
extern TSafePoint* excHandler__system_2565;
extern TSafePoint* excHandler__system_2565;
extern TSafePoint* excHandler__system_2565;
extern TSafePoint* excHandler__system_2565;
static N_NIMCALL(void, Marker_tySequence__dwIXh8fAQr31bYUekxTtpA)(void* p, NI op) {
	tySequence__dwIXh8fAQr31bYUekxTtpA* a;
	NI T1_;
	a = (tySequence__dwIXh8fAQr31bYUekxTtpA*)p;
	T1_ = (NI)0;
	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
	nimGCvisit((void*)a->data[T1_].n, op);
	nimGCvisit((void*)a->data[T1_].refname, op);
	nimGCvisit((void*)a->data[T1_].header, op);
	}
}
static N_NIMCALL(void, Marker_tySequence__pUxI6Ljo6IKKHXKOZkQ7Og)(void* p, NI op) {
	tySequence__pUxI6Ljo6IKKHXKOZkQ7Og* a;
	NI T1_;
	a = (tySequence__pUxI6Ljo6IKKHXKOZkQ7Og*)p;
	T1_ = (NI)0;
	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
	nimGCvisit((void*)a->data[T1_].Field1, op);
	}
}
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);
}
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_1735)(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_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
		goto BeforeRet_;
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
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_1727)(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_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
		(*dest).Sup.len += (*src).Sup.len;
	}
	LA3_: ;
}
static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count) {
	NI result;
	result = (NI)0;
	result = nextPowerOfTwo__pureZmath_176((NI)((NI)((NI)(((NI) (count)) * ((NI) 3)) / ((NI) 2)) + ((NI) 4)));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, initTable__packagesZdocutilsZrstgen_108)(NI initialSize, tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ* Result) {
	NI correctSizeX60gensym0_;
	unsureAsgnRef((void**)&(*Result).data, NIM_NIL);
	(*Result).counter = 0;
	correctSizeX60gensym0_ = slotsNeeded__pureZcollectionsZtables_42(((NI) (initialSize)));
	(*Result).counter = ((NI) 0);
	unsureAsgnRef((void**) (&(*Result).data), (tySequence__pUxI6Ljo6IKKHXKOZkQ7Og*) newSeq((&NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_), ((NI) (correctSizeX60gensym0_))));
}
N_LIB_PRIVATE N_NIMCALL(void, initRstGenerator__packagesZdocutilsZrstgen_90)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* g, tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* config, NimStringDesc* filename, tyProc__oFHfEKFsiYTMAy9a42cSiKw findFile, tyProc__zVyAuQlxcO3X84ar49cKZSg msgHandler, tyObject_RstFileTable__1rYTAF4X28SkQlz9cTtPDzQ filenames) {
	tyTuple__7q7q3E6Oj24ZNVJb9aonhAg fileParts;
	NimStringDesc* s;
	unsureAsgnRef((void**) (&(*g).config), config);
	(*g).target = target;
	unsureAsgnRef((void**) (&(*g).tocPart), NIM_NIL);
	unsureAsgnRef((void**) (&(*g).filename), copyString(filename));
	genericSeqAssign((&(*g).filenames.filenameToIdx.data), filenames.filenameToIdx.data, (&NTIkeyvaluepairseq__7lEisrXlQEzwtUKW5pzRCw_));
	(*g).filenames.filenameToIdx.counter = filenames.filenameToIdx.counter;
	genericSeqAssign((&(*g).filenames.idxToFilename), filenames.idxToFilename, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
	(*g).splitAfter = ((NI) 20);
	unsureAsgnRef((void**) (&(*g).theIndex), ((NimStringDesc*) NIM_NIL));
	unsureAsgnRef((void**) (&(*g).findFile.ClE_0), findFile.ClE_0);
	(*g).findFile.ClP_0 = findFile.ClP_0;
	unsureAsgnRef((void**) (&(*g).currentSection), ((NimStringDesc*) NIM_NIL));
	(*g).id = ((NI) 0);
	(*g).escMode = ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0);
	nimZeroMem((void*)(&fileParts), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
	nossplitFile(filename, (&fileParts));
	{
		NimStringDesc* T5_;
		if (!eqStrings(fileParts.Field2, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_13))) goto LA3_;
		T5_ = NIM_NIL;
		T5_ = rawNewString((fileParts.Field1 ? fileParts.Field1->Sup.len : 0) + 7);
appendString(T5_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_14));
appendString(T5_, fileParts.Field1);
		unsureAsgnRef((void**) (&(*g).currentSection), T5_);
	}
	LA3_: ;
	initTable__packagesZdocutilsZrstgen_108(((NI) 32), (&(*g).seenIndexTerms));
	unsureAsgnRef((void**) (&(*g).msgHandler.ClE_0), msgHandler.ClE_0);
	(*g).msgHandler.ClP_0 = msgHandler.ClP_0;
	s = getOrDefault__pureZstrtabs_173(config, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_15), ((NimStringDesc*) NIM_NIL));
	{
		if (!!(((s ? s->Sup.len : 0) == 0))) goto LA8_;
		(*g).splitAfter = nsuParseInt(s);
	}
	LA8_: ;
	{
		tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw i;
		NI res;
		i = (tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw)0;
		res = ((NI) 0);
		{
			while (1) {
				if (!(res <= ((NI) 4))) goto LA12;
				i = ((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) (res));
				unsureAsgnRef((void**) (&(*g).meta[(i)- 0]), ((NimStringDesc*) NIM_NIL));
				res += ((NI) 1);
			} LA12: ;
		}
	}
}
N_LIB_PRIVATE N_NIMCALL(NI, nextSplitPoint__packagesZdocutilsZrstgen_224)(NimStringDesc* s, NI start) {
	NI result;
{	result = (NI)0;
	result = start;
	{
		while (1) {
			if (!(result < (NI)((s ? s->Sup.len : 0) + ((NI) 0)))) goto LA2;
			switch (((NU8)(s->data[result]))) {
			case 95:
			{
				goto BeforeRet_;
			}
			break;
			case 97 ... 122:
			{
				{
					if (!((NI)(result + ((NI) 1)) < (NI)((s ? s->Sup.len : 0) + ((NI) 0)))) goto LA7_;
					{
						if (!(((NU8)(s->data[(NI)(result + ((NI) 1))])) >= ((NU8)(65)) && ((NU8)(s->data[(NI)(result + ((NI) 1))])) <= ((NU8)(90)))) goto LA11_;
						goto BeforeRet_;
					}
					LA11_: ;
				}
				LA7_: ;
			}
			break;
			default:
			{
			}
			break;
			}
			result += ((NI) 1);
		} LA2: ;
	}
	result -= ((NI) 1);
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, addSplitter__packagesZdocutilsZrstgen_221)(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, NimStringDesc** dest) {
	switch (target) {
	case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
	{
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), 7));
appendString((*dest), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_16));
	}
	break;
	case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
	{
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), 2));
appendString((*dest), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_17));
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(void, addHtmlChar__packagesZdocutilsZrstgen_196)(NimStringDesc** dest, NIM_CHAR c) {
	switch (((NU8)(c))) {
	case 38:
	{
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), 5));
appendString((*dest), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_18));
	}
	break;
	case 60:
	{
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), 4));
appendString((*dest), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_19));
	}
	break;
	case 62:
	{
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), 4));
appendString((*dest), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_20));
	}
	break;
	case 34:
	{
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), 6));
appendString((*dest), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_21));
	}
	break;
	default:
	{
		unsureAsgnRef((void**) (&(*dest)), addChar((*dest), c));
	}
	break;
	}
}
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);
}
N_LIB_PRIVATE N_NIMCALL(void, addTexChar__packagesZdocutilsZrstgen_199)(NimStringDesc** dest, NIM_CHAR c, tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ escMode) {
	switch (((NU8)(c))) {
	case 95:
	case 36:
	case 38:
	case 35:
	case 37:
	{
		NimStringDesc* T2_;
		T2_ = NIM_NIL;
		T2_ = rawNewString(2);
appendString(T2_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_22));
appendChar(T2_, c);
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), (T2_ ? T2_->Sup.len : 0) + 0));
appendString((*dest), T2_);
	}
	break;
	case 126:
	case 94:
	{
		NimStringDesc* T4_;
		T4_ = NIM_NIL;
		T4_ = rawNewString(4);
appendString(T4_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_22));
appendChar(T4_, c);
appendString(T4_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_23));
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), (T4_ ? T4_->Sup.len : 0) + 0));
appendString((*dest), T4_);
	}
	break;
	case 96:
	{
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), 17));
appendString((*dest), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_24));
	}
	break;
	case 92:
	{
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), 16));
appendString((*dest), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_25));
	}
	break;
	case 123:
	{
		NimStringDesc* T8_;
		T8_ = NIM_NIL;
		{
			if (!(escMode == ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 2))) goto LA11_;
			T8_ = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_26));
		}
		goto LA9_;
		LA11_: ;
		{
			T8_ = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_27));
		}
		LA9_: ;
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), (T8_ ? T8_->Sup.len : 0) + 0));
appendString((*dest), T8_);
	}
	break;
	case 125:
	{
		NimStringDesc* T15_;
		T15_ = NIM_NIL;
		{
			if (!(escMode == ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 2))) goto LA18_;
			T15_ = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_28));
		}
		goto LA16_;
		LA18_: ;
		{
			T15_ = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_29));
		}
		LA16_: ;
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), (T15_ ? T15_->Sup.len : 0) + 0));
appendString((*dest), T15_);
	}
	break;
	case 93:
	{
		NimStringDesc* T22_;
		T22_ = NIM_NIL;
		{
			if (!(escMode == ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 1))) goto LA25_;
			T22_ = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_30));
		}
		goto LA23_;
		LA25_: ;
		{
			T22_ = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_31));
		}
		LA23_: ;
		unsureAsgnRef((void**) (&(*dest)), resizeString((*dest), (T22_ ? T22_->Sup.len : 0) + 0));
appendString((*dest), T22_);
	}
	break;
	default:
	{
		unsureAsgnRef((void**) (&(*dest)), addChar((*dest), c));
	}
	break;
	}
}
static N_INLINE(void, escChar__packagesZdocutilsZrstgen_216)(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, NimStringDesc** dest, NIM_CHAR c, tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ escMode) {
	switch (target) {
	case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
	{
		addHtmlChar__packagesZdocutilsZrstgen_196(dest, c);
	}
	break;
	case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
	{
		addTexChar__packagesZdocutilsZrstgen_199(dest, c, escMode);
	}
	break;
	}
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, esc__packagesZdocutilsZrstgen_240)(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, NimStringDesc* s, NI splitAfter, tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ escMode) {
	NimStringDesc* result;
	result = NIM_NIL;
	result = ((NimStringDesc*) NIM_NIL);
	{
		NI partLen;
		NI j;
		if (!(((NI) 0) <= splitAfter)) goto LA3_;
		partLen = ((NI) 0);
		j = ((NI) 0);
		{
			while (1) {
				NI k;
				if (!(j < (s ? s->Sup.len : 0))) goto LA6;
				k = nextSplitPoint__packagesZdocutilsZrstgen_224(s, j);
				partLen = ((NI) 0);
				addSplitter__packagesZdocutilsZrstgen_221(target, (&result));
				{
					NI i;
					NI res;
					i = (NI)0;
					res = j;
					{
						while (1) {
							if (!(res <= k)) goto LA9;
							i = res;
							escChar__packagesZdocutilsZrstgen_216(target, (&result), s->data[i], escMode);
							res += ((NI) 1);
						} LA9: ;
					}
				}
				partLen += (NI)((NI)(k - j) + ((NI) 1));
				j = (NI)(k + ((NI) 1));
			} LA6: ;
		}
	}
	goto LA1_;
	LA3_: ;
	{
		{
			NI i_2;
			NI colontmp_;
			NI res_2;
			i_2 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = (NI)((s ? s->Sup.len : 0) - ((NI) 1));
			res_2 = ((NI) 0);
			{
				while (1) {
					if (!(res_2 <= colontmp_)) goto LA13;
					i_2 = res_2;
					escChar__packagesZdocutilsZrstgen_216(target, (&result), s->data[i_2], escMode);
					res_2 += ((NI) 1);
				} LA13: ;
			}
		}
	}
	LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, dispA__packagesZdocutilsZrstgen_285)(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, NimStringDesc** dest, NimStringDesc* xml, NimStringDesc* tex, NimStringDesc** args, NI argsLen_0) {
	{
		if (!!((target == ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1)))) goto LA3_;
		nsuAddf(dest, xml, args, argsLen_0);
	}
	goto LA1_;
	LA3_: ;
	{
		nsuAddf(dest, tex, args, argsLen_0);
	}
	LA1_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, renderCodeLang__packagesZdocutilsZrstgen_8232)(NimStringDesc** result, tyEnum_SourceLanguage__yW5C9bHJV9a9bc7MnoMHmB85g lang, NimStringDesc* code, tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target) {
	tyObject_GeneralTokenizer__mzSYRAkR0jQADvmFWo9aZKQ g;
	nimZeroMem((void*)(&g), sizeof(tyObject_GeneralTokenizer__mzSYRAkR0jQADvmFWo9aZKQ));
	g.Sup.m_type = (&NTIgeneraltokenizer__mzSYRAkR0jQADvmFWo9aZKQ_);
	initGeneralTokenizer__packagesZdocutilsZhighlite_166((&g), code);
	{
		while (1) {
			getNextToken__packagesZdocutilsZhighlite_1760((&g), lang);
			switch (g.kind) {
			case ((tyEnum_TokenClass__9anxN1z0YaJHlUGz4GuizCA) 0):
			{
				goto LA1;
			}
			break;
			case ((tyEnum_TokenClass__9anxN1z0YaJHlUGz4GuizCA) 1):
			case ((tyEnum_TokenClass__9anxN1z0YaJHlUGz4GuizCA) 2):
			{
				NimStringDesc* T5_;
				T5_ = NIM_NIL;
				T5_ = substr__system_7773(code, g.start, (NI)((NI)(g.length + g.start) - ((NI) 1)));
				unsureAsgnRef((void**) (&(*result)), resizeString((*result), (T5_ ? T5_->Sup.len : 0) + 0));
appendString((*result), T5_);
			}
			break;
			default:
			{
				tyArray__Re75IspeoxXy2oCZHwcRrA T7_;
				NimStringDesc* T8_;
				nimZeroMem((void*)T7_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
				T8_ = NIM_NIL;
				T8_ = substr__system_7773(code, g.start, (NI)((NI)(g.length + g.start) - ((NI) 1)));
				T7_[0] = esc__packagesZdocutilsZrstgen_240(target, T8_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0));
				T7_[1] = copyString(tokenClassToStr__packagesZdocutilsZhighlite_68[(g.kind)- 0]);
				dispA__packagesZdocutilsZrstgen_285(target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_32), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_33), T7_, 2);
			}
			break;
			}
		}
	} LA1: ;
	deinitGeneralTokenizer__packagesZdocutilsZhighlite_169((&g));
}
N_LIB_PRIVATE N_NIMCALL(void, renderNimCode__packagesZdocutilsZrstgen_8238)(NimStringDesc** result, NimStringDesc* code, tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target) {
	renderCodeLang__packagesZdocutilsZrstgen_8232(result, ((tyEnum_SourceLanguage__yW5C9bHJV9a9bc7MnoMHmB85g) 1), code, target);
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, quoteIndexColumn__packagesZdocutilsZrstgen_328)(NimStringDesc* text) {
	NimStringDesc* result;
	result = NIM_NIL;
	result = rawNewString(((NI) ((NI)((text ? text->Sup.len : 0) + ((NI) 3)))));
	{
		NIM_CHAR c;
		NI i;
		NI L;
		c = (NIM_CHAR)0;
		i = ((NI) 0);
		L = (text ? text->Sup.len : 0);
		{
			while (1) {
				if (!(i < L)) goto LA3;
				c = text->data[i];
				switch (((NU8)(c))) {
				case 92:
				{
					result = resizeString(result, 1);
appendString(result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_22));
				}
				break;
				case 10:
				{
					result = resizeString(result, 2);
appendString(result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_34));
				}
				break;
				case 13:
				{
				}
				break;
				case 9:
				{
					result = resizeString(result, 2);
appendString(result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_35));
				}
				break;
				default:
				{
					result = addChar(result, c);
				}
				break;
				}
				i += ((NI) 1);
			} LA3: ;
		}
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setIndexTerm__packagesZdocutilsZrstgen_344)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, NimStringDesc* htmlFile, NimStringDesc* id, NimStringDesc* term, NimStringDesc* linkTitle, NimStringDesc* linkDesc) {
	NimStringDesc* entry;
	NIM_BOOL isTitle;
	entry = copyString(term);
	isTitle = NIM_FALSE;
	entry = addChar(entry, 9);
	entry = resizeString(entry, (htmlFile ? htmlFile->Sup.len : 0) + 0);
appendString(entry, htmlFile);
	{
		if (!(((NI) 0) < (id ? id->Sup.len : 0))) goto LA3_;
		entry = addChar(entry, 35);
		entry = resizeString(entry, (id ? id->Sup.len : 0) + 0);
appendString(entry, id);
	}
	goto LA1_;
	LA3_: ;
	{
		isTitle = NIM_TRUE;
	}
	LA1_: ;
	{
		NIM_BOOL T8_;
		NimStringDesc* T12_;
		NimStringDesc* T13_;
		NimStringDesc* T14_;
		NimStringDesc* T15_;
		T8_ = (NIM_BOOL)0;
		T8_ = (((NI) 0) < (linkTitle ? linkTitle->Sup.len : 0));
		if (T8_) goto LA9_;
		T8_ = (((NI) 0) < (linkDesc ? linkDesc->Sup.len : 0));
		LA9_: ;
		if (!T8_) goto LA10_;
		T12_ = NIM_NIL;
		T13_ = NIM_NIL;
		T13_ = quoteIndexColumn__packagesZdocutilsZrstgen_328(linkTitle);
		T12_ = rawNewString((T13_ ? T13_->Sup.len : 0) + 1);
appendChar(T12_, 9);
appendString(T12_, T13_);
		entry = resizeString(entry, (T12_ ? T12_->Sup.len : 0) + 0);
appendString(entry, T12_);
		T14_ = NIM_NIL;
		T15_ = NIM_NIL;
		T15_ = quoteIndexColumn__packagesZdocutilsZrstgen_328(linkDesc);
		T14_ = rawNewString((T15_ ? T15_->Sup.len : 0) + 1);
appendChar(T14_, 9);
appendString(T14_, T15_);
		entry = resizeString(entry, (T14_ ? T14_->Sup.len : 0) + 0);
appendString(entry, T14_);
	}
	LA10_: ;
	entry = resizeString(entry, 1);
appendString(entry, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_36));
	{
		if (!isTitle) goto LA18_;
		insert__system_7500((&(*d).theIndex), entry, ((NI) 0));
	}
	goto LA16_;
	LA18_: ;
	{
		unsureAsgnRef((void**) (&(*d).theIndex), resizeString((*d).theIndex, (entry ? entry->Sup.len : 0) + 0));
appendString((*d).theIndex, entry);
	}
	LA16_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, prettyLink__packagesZdocutilsZrstgen_85)(NimStringDesc* file) {
	NimStringDesc* result;
	NimStringDesc* T1_;
	result = NIM_NIL;
	T1_ = NIM_NIL;
	T1_ = noschangeFileExt(file, ((NimStringDesc*) NIM_NIL));
	result = nsuReplaceStr(T1_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_37), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_38));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, renderAux__packagesZdocutilsZrstgen_303)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (NI)0;
		T2_ = len__packagesZdocutilsZrstast_102(n);
		colontmp_ = (NI)(T2_ - ((NI) 1));
		res = ((NI) 0);
		{
			while (1) {
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[i], result);
				res += ((NI) 1);
			} LA4: ;
		}
	}
}
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(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_5343)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
	addZCT__system_5294((&gch__system_5247.zct), c);
}
static N_INLINE(void, decRef__system_5345)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* 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_5343(c);
	}
	LA4_: ;
}
static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5300)(void* usr) {
	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
	NI T1_;
	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
	T1_ = (NI)0;
	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
	return result;
}
static N_INLINE(void, nimGCunrefNoCycle)(void* p) {
	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
	T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
	T1_ = usrToCell__system_5300(p);
	decRef__system_5345(T1_);
}
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_5338)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
}
static N_INLINE(void, asgnRef)(void** dest, void* src) {
	{
		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
		if (!!((src == NIM_NIL))) goto LA3_;
		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
		T5_ = usrToCell__system_5300(src);
		incRef__system_5338(T5_);
	}
	LA3_: ;
	{
		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
		if (!!(((*dest) == NIM_NIL))) goto LA8_;
		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
		T10_ = usrToCell__system_5300((*dest));
		decRef__system_5345(T10_);
	}
	LA8_: ;
	(*dest) = src;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, stripTocHtml__packagesZdocutilsZrstgen_8010)(NimStringDesc* s) {
	NimStringDesc* result;
	NI first;
{	result = NIM_NIL;
	result = copyString(s);
	first = nsuFindChar(result, 60, ((NI) 0), ((NI) 0));
	{
		while (1) {
			NI last;
			if (!(((NI) 0) <= first)) goto LA2;
			last = nsuFindChar(result, 62, ((NI) (first)), ((NI) 0));
			{
				if (!(last < ((NI) 0))) goto LA5_;
				goto BeforeRet_;
			}
			LA5_: ;
			nsuDelete((&result), first, last);
			first = nsuFindChar(result, 60, ((NI) (first)), ((NI) 0));
		} LA2: ;
	}
	}BeforeRet_: ;
	return result;
}
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, renderHeadline__packagesZdocutilsZrstgen_8015)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	NimStringDesc* tmp;
	NimStringDesc* sectionPrefix;
	NimStringDesc* refname;
	NimStringDesc* T15_;
	NimStringDesc* T16_;
	NimStringDesc* tocName;
	NimStringDesc* T17_;
	NimStringDesc* htmlFileRelPath;
	NimStringDesc* T52_;
	NimStringDesc* T53_;
	NimStringDesc* T54_;
	tmp = ((NimStringDesc*) NIM_NIL);
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (NI)0;
		T2_ = len__packagesZdocutilsZrstast_102(n);
		colontmp_ = (NI)(T2_ - ((NI) 1));
		res = ((NI) 0);
		{
			while (1) {
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[i], (&tmp));
				res += ((NI) 1);
			} LA4: ;
		}
	}
	unsureAsgnRef((void**) (&(*d).currentSection), copyString(tmp));
	sectionPrefix = ((NimStringDesc*) NIM_NIL);
	{
		NI i_2;
		NI colontmp__2;
		NI T6_;
		NI res_2;
		i_2 = (NI)0;
		colontmp__2 = (NI)0;
		T6_ = (((*d).tocPart ? (*d).tocPart->Sup.len : 0)-1);
		colontmp__2 = T6_;
		res_2 = colontmp__2;
		{
			while (1) {
				tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n2;
				if (!(((NI) 0) <= res_2)) goto LA8;
				i_2 = res_2;
				n2 = (*d).tocPart->data[i_2].n;
				{
					NimStringDesc* T13_;
					NimStringDesc* T14_;
					if (!((*n2)._kind_5.level < (*n)._kind_5.level)) goto LA11_;
					T13_ = NIM_NIL;
					T14_ = NIM_NIL;
					T14_ = rstnodeToRefname__packagesZdocutilsZrst_59(n2);
					T13_ = rawNewString((T14_ ? T14_->Sup.len : 0) + 1);
appendString(T13_, T14_);
appendString(T13_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_39));
					sectionPrefix = T13_;
					goto LA5;
				}
				LA11_: ;
				res_2 -= ((NI) 1);
			} LA8: ;
		}
	} LA5: ;
	T15_ = NIM_NIL;
	T16_ = NIM_NIL;
	T16_ = rstnodeToRefname__packagesZdocutilsZrst_59(n);
	T15_ = rawNewString((sectionPrefix ? sectionPrefix->Sup.len : 0) + (T16_ ? T16_->Sup.len : 0) + 0);
appendString(T15_, sectionPrefix);
appendString(T15_, T16_);
	refname = T15_;
	T17_ = NIM_NIL;
	T17_ = renderRstToText__packagesZdocutilsZrstast_452(n);
	tocName = esc__packagesZdocutilsZrstgen_240((*d).target, T17_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 1));
	{
		NI length;
		NI T22_;
		NimStringDesc* T23_;
		NimStringDesc* T24_;
		tyArray__yt5VDPNtUGx9cBkOVakHwdQ T25_;
		if (!(*d).hasToc) goto LA20_;
		T22_ = ((*d).tocPart ? (*d).tocPart->Sup.len : 0);
		length = T22_;
		unsureAsgnRef((void**) (&(*d).tocPart), (tySequence__dwIXh8fAQr31bYUekxTtpA*) setLengthSeqV2(&((*d).tocPart)->Sup, (&NTIseqLtocentryT__dwIXh8fAQr31bYUekxTtpA_), ((NI) ((NI)(length + ((NI) 1))))));
		T23_ = NIM_NIL;
		T23_ = (*d).tocPart->data[length].refname; (*d).tocPart->data[length].refname = copyStringRC1(refname);
		if (T23_) nimGCunrefNoCycle(T23_);
		asgnRef((void**) (&(*d).tocPart->data[length].n), n);
		T24_ = NIM_NIL;
		T24_ = (*d).tocPart->data[length].header; (*d).tocPart->data[length].header = copyStringRC1(tmp);
		if (T24_) nimGCunrefNoCycle(T24_);
		nimZeroMem((void*)T25_, sizeof(tyArray__yt5VDPNtUGx9cBkOVakHwdQ));
		T25_[0] = dollar___systemZdollars_3((*n)._kind_5.level);
		{
			if (!((refname ? refname->Sup.len : 0) == 0)) goto LA28_;
			T25_[1] = ((NimStringDesc*) NIM_NIL);
		}
		goto LA26_;
		LA28_: ;
		{
			switch ((*d).target) {
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
			{
				NimStringDesc* T32_;
				T32_ = NIM_NIL;
				T32_ = rawNewString((refname ? refname->Sup.len : 0) + 6);
appendString(T32_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_42));
appendString(T32_, refname);
appendString(T32_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43));
				T25_[1] = T32_;
			}
			break;
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
			{
				NimStringDesc* T34_;
				T34_ = NIM_NIL;
				T34_ = rawNewString((refname ? refname->Sup.len : 0) + (refname ? refname->Sup.len : 0) + 24);
appendString(T34_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_44));
appendString(T34_, refname);
appendString(T34_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_45));
appendString(T34_, refname);
appendString(T34_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_46));
				T25_[1] = T34_;
			}
			break;
			}
		}
		LA26_: ;
		T25_[2] = copyString(tmp);
		T25_[3] = nimCharToStr(((NIM_CHAR) (((NI) ((NI)((NI)((*n)._kind_5.level - ((NI) 1)) + ((NI) 65)))))));
		T25_[4] = copyString(refname);
		T25_[5] = copyString(tocName);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_40), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_41), T25_, 6);
	}
	goto LA18_;
	LA20_: ;
	{
		tyArray__haiLFy0nBviVTKFGuwztzQ T36_;
		nimZeroMem((void*)T36_, sizeof(tyArray__haiLFy0nBviVTKFGuwztzQ));
		T36_[0] = dollar___systemZdollars_3((*n)._kind_5.level);
		{
			if (!((refname ? refname->Sup.len : 0) == 0)) goto LA39_;
			T36_[1] = ((NimStringDesc*) NIM_NIL);
		}
		goto LA37_;
		LA39_: ;
		{
			switch ((*d).target) {
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
			{
				NimStringDesc* T43_;
				T43_ = NIM_NIL;
				T43_ = rawNewString((refname ? refname->Sup.len : 0) + 6);
appendString(T43_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_42));
appendString(T43_, refname);
appendString(T43_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43));
				T36_[1] = T43_;
			}
			break;
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
			{
				NimStringDesc* T45_;
				T45_ = NIM_NIL;
				T45_ = rawNewString((refname ? refname->Sup.len : 0) + (refname ? refname->Sup.len : 0) + 24);
appendString(T45_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_44));
appendString(T45_, refname);
appendString(T45_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_45));
appendString(T45_, refname);
appendString(T45_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_46));
				T36_[1] = T45_;
			}
			break;
			}
		}
		LA37_: ;
		T36_[2] = copyString(tmp);
		T36_[3] = nimCharToStr(((NIM_CHAR) (((NI) ((NI)((NI)((*n)._kind_5.level - ((NI) 1)) + ((NI) 65)))))));
		T36_[4] = copyString(tocName);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_47), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_48), T36_, 5);
	}
	LA18_: ;
	{
		NimStringDesc* T50_;
		if (!(((*d).outDir ? (*d).outDir->Sup.len : 0) == ((NI) 0))) goto LA48_;
		T50_ = NIM_NIL;
		T50_ = nosextractFilename((*d).filename);
		htmlFileRelPath = noschangeFileExt(T50_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_49));
	}
	goto LA46_;
	LA48_: ;
	{
		htmlFileRelPath = nosrelativePath((*d).destFile, (*d).outDir, 47);
	}
	LA46_: ;
	T52_ = NIM_NIL;
	T52_ = stripTocHtml__packagesZdocutilsZrstgen_8010(tmp);
	T53_ = NIM_NIL;
	T54_ = NIM_NIL;
	T54_ = spaces__pureZstrutils_1029(((NI) (((((NI) 0) >= (*n)._kind_5.level) ? ((NI) 0) : (*n)._kind_5.level))));
	T53_ = rawNewString((T54_ ? T54_->Sup.len : 0) + (tmp ? tmp->Sup.len : 0) + 0);
appendString(T53_, T54_);
appendString(T53_, tmp);
	setIndexTerm__packagesZdocutilsZrstgen_344(d, htmlFileRelPath, refname, T52_, T53_, ((NimStringDesc*) NIM_NIL));
}
N_LIB_PRIVATE N_NIMCALL(void, renderOverline__packagesZdocutilsZrstgen_8067)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = ((*n)._kind_5.level == ((NI) 0));
		if (!(T3_)) goto LA4_;
		T3_ = (((*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 1))- 0] ? (*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 1))- 0]->Sup.len : 0) == ((NI) 0));
		LA4_: ;
		if (!T3_) goto LA5_;
		{
			NI i;
			NI colontmp_;
			NI T8_;
			NI res;
			i = (NI)0;
			colontmp_ = (NI)0;
			T8_ = (NI)0;
			T8_ = len__packagesZdocutilsZrstast_102(n);
			colontmp_ = (NI)(T8_ - ((NI) 1));
			res = ((NI) 0);
			{
				while (1) {
					if (!(res <= colontmp_)) goto LA10;
					i = res;
					renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[i], (&(*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 1))- 0]));
					res += ((NI) 1);
				} LA10: ;
			}
		}
		unsureAsgnRef((void**) (&(*d).currentSection), copyString((*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 1))- 0]));
	}
	goto LA1_;
	LA5_: ;
	{
		NIM_BOOL T12_;
		T12_ = (NIM_BOOL)0;
		T12_ = ((*n)._kind_5.level == ((NI) 0));
		if (!(T12_)) goto LA13_;
		T12_ = (((*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 2))- 0] ? (*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 2))- 0]->Sup.len : 0) == ((NI) 0));
		LA13_: ;
		if (!T12_) goto LA14_;
		{
			NI i_2;
			NI colontmp__2;
			NI T17_;
			NI res_2;
			i_2 = (NI)0;
			colontmp__2 = (NI)0;
			T17_ = (NI)0;
			T17_ = len__packagesZdocutilsZrstast_102(n);
			colontmp__2 = (NI)(T17_ - ((NI) 1));
			res_2 = ((NI) 0);
			{
				while (1) {
					if (!(res_2 <= colontmp__2)) goto LA19;
					i_2 = res_2;
					renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[i_2], (&(*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 2))- 0]));
					res_2 += ((NI) 1);
				} LA19: ;
			}
		}
		unsureAsgnRef((void**) (&(*d).currentSection), copyString((*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 2))- 0]));
	}
	goto LA1_;
	LA14_: ;
	{
		NimStringDesc* tmp;
		NimStringDesc* tocName;
		NimStringDesc* T25_;
		tyArray__haiLFy0nBviVTKFGuwztzQ T26_;
		tmp = ((NimStringDesc*) NIM_NIL);
		{
			NI i_3;
			NI colontmp__3;
			NI T22_;
			NI res_3;
			i_3 = (NI)0;
			colontmp__3 = (NI)0;
			T22_ = (NI)0;
			T22_ = len__packagesZdocutilsZrstast_102(n);
			colontmp__3 = (NI)(T22_ - ((NI) 1));
			res_3 = ((NI) 0);
			{
				while (1) {
					if (!(res_3 <= colontmp__3)) goto LA24;
					i_3 = res_3;
					renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[i_3], (&tmp));
					res_3 += ((NI) 1);
				} LA24: ;
			}
		}
		unsureAsgnRef((void**) (&(*d).currentSection), copyString(tmp));
		T25_ = NIM_NIL;
		T25_ = renderRstToText__packagesZdocutilsZrstast_452(n);
		tocName = esc__packagesZdocutilsZrstgen_240((*d).target, T25_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 1));
		nimZeroMem((void*)T26_, sizeof(tyArray__haiLFy0nBviVTKFGuwztzQ));
		T26_[0] = dollar___systemZdollars_3((*n)._kind_5.level);
		{
			NimStringDesc* T29_;
			T29_ = NIM_NIL;
			T29_ = rstnodeToRefname__packagesZdocutilsZrst_59(n);
			if (!((T29_ ? T29_->Sup.len : 0) == 0)) goto LA30_;
			T26_[1] = ((NimStringDesc*) NIM_NIL);
		}
		goto LA27_;
		LA30_: ;
		{
			switch ((*d).target) {
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
			{
				NimStringDesc* T34_;
				NimStringDesc* T35_;
				T34_ = NIM_NIL;
				T35_ = NIM_NIL;
				T35_ = rstnodeToRefname__packagesZdocutilsZrst_59(n);
				T34_ = rawNewString((T35_ ? T35_->Sup.len : 0) + 6);
appendString(T34_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_42));
appendString(T34_, T35_);
appendString(T34_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43));
				T26_[1] = T34_;
			}
			break;
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
			{
				NimStringDesc* T37_;
				NimStringDesc* T38_;
				NimStringDesc* T39_;
				T37_ = NIM_NIL;
				T38_ = NIM_NIL;
				T38_ = rstnodeToRefname__packagesZdocutilsZrst_59(n);
				T39_ = NIM_NIL;
				T39_ = rstnodeToRefname__packagesZdocutilsZrst_59(n);
				T37_ = rawNewString((T38_ ? T38_->Sup.len : 0) + (T39_ ? T39_->Sup.len : 0) + 24);
appendString(T37_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_44));
appendString(T37_, T38_);
appendString(T37_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_45));
appendString(T37_, T39_);
appendString(T37_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_46));
				T26_[1] = T37_;
			}
			break;
			}
		}
		LA27_: ;
		T26_[2] = copyString(tmp);
		T26_[3] = nimCharToStr(((NIM_CHAR) (((NI) ((NI)((NI)((*n)._kind_5.level - ((NI) 1)) + ((NI) 65)))))));
		T26_[4] = copyString(tocName);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_50), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_51), T26_, 5);
	}
	LA1_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, renderAux__packagesZdocutilsZrstgen_315)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc* html, NimStringDesc* tex, NimStringDesc** result) {
	NimStringDesc* tmp;
	tmp = ((NimStringDesc*) NIM_NIL);
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (NI)0;
		T2_ = len__packagesZdocutilsZrstast_102(n);
		colontmp_ = (NI)(T2_ - ((NI) 1));
		res = ((NI) 0);
		{
			while (1) {
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[i], (&tmp));
				res += ((NI) 1);
			} LA4: ;
		}
	}
	switch ((*d).target) {
	case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
	{
		tyArray__Re75IspeoxXy2oCZHwcRrA T6_;
		nimZeroMem((void*)T6_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T6_[0] = copyString(tmp);
		{
			if (!(((*n).anchor ? (*n).anchor->Sup.len : 0) == 0)) goto LA9_;
			T6_[1] = ((NimStringDesc*) NIM_NIL);
		}
		goto LA7_;
		LA9_: ;
		{
			switch ((*d).target) {
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
			{
				NimStringDesc* T13_;
				T13_ = NIM_NIL;
				T13_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + 6);
appendString(T13_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_42));
appendString(T13_, (*n).anchor);
appendString(T13_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43));
				T6_[1] = T13_;
			}
			break;
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
			{
				NimStringDesc* T15_;
				T15_ = NIM_NIL;
				T15_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + ((*n).anchor ? (*n).anchor->Sup.len : 0) + 24);
appendString(T15_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_44));
appendString(T15_, (*n).anchor);
appendString(T15_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_45));
appendString(T15_, (*n).anchor);
appendString(T15_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_46));
				T6_[1] = T15_;
			}
			break;
			}
		}
		LA7_: ;
		nsuAddf(result, html, T6_, 2);
	}
	break;
	case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
	{
		tyArray__Re75IspeoxXy2oCZHwcRrA T17_;
		nimZeroMem((void*)T17_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T17_[0] = copyString(tmp);
		{
			if (!(((*n).anchor ? (*n).anchor->Sup.len : 0) == 0)) goto LA20_;
			T17_[1] = ((NimStringDesc*) NIM_NIL);
		}
		goto LA18_;
		LA20_: ;
		{
			switch ((*d).target) {
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
			{
				NimStringDesc* T24_;
				T24_ = NIM_NIL;
				T24_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + 6);
appendString(T24_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_42));
appendString(T24_, (*n).anchor);
appendString(T24_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43));
				T17_[1] = T24_;
			}
			break;
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
			{
				NimStringDesc* T26_;
				T26_ = NIM_NIL;
				T26_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + ((*n).anchor ? (*n).anchor->Sup.len : 0) + 24);
appendString(T26_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_44));
appendString(T26_, (*n).anchor);
appendString(T26_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_45));
appendString(T26_, (*n).anchor);
appendString(T26_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_46));
				T17_[1] = T26_;
			}
			break;
			}
		}
		LA18_: ;
		nsuAddf(result, tex, T17_, 2);
	}
	break;
	}
}
static N_INLINE(NIM_CHAR*, X5BX5D___system_7391)(NimStringDesc** s, NI i) {
	NIM_CHAR* result;
	result = (NIM_CHAR*)0;
	result = (&(*s)->data[(NI)(((*s) ? (*s)->Sup.len : 0) - i)]);
	return result;
}
static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___pureZunicode_840)(NI a, NI b) {
	tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA result;
	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
	result.a = a;
	result.b = b;
	return result;
}
static N_INLINE(NimStringDesc*, X5BX5D___pureZunicode_865)(NimStringDesc* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x) {
	NimStringDesc* result;
	NI a;
	NI L;
	result = NIM_NIL;
	a = x.a;
	L = (NI)((NI)(x.b - a) + ((NI) 1));
	result = mnewString(((NI) (L)));
	{
		NI i;
		NI i_2;
		i = (NI)0;
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < L)) goto LA3;
				i = i_2;
				result->data[i] = s->data[(NI)(i + a)];
				i_2 += ((NI) 1);
			} LA3: ;
		}
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, renderEnumList__packagesZdocutilsZrstgen_8321)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	NimStringDesc* specifier;
	NimStringDesc* specStart;
	NI i1;
	NimStringDesc* pre;
	NI i2;
	NimStringDesc* post;
	tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA enumR;
	NimStringDesc* T88_;
	NimStringDesc* T89_;
	specifier = ((NimStringDesc*) NIM_NIL);
	specStart = ((NimStringDesc*) NIM_NIL);
	i1 = ((NI) 0);
	pre = ((NimStringDesc*) NIM_NIL);
	i2 = (NI)(((*n)._kind_2.labelFmt ? (*n)._kind_2.labelFmt->Sup.len : 0) - ((NI) 1));
	post = ((NimStringDesc*) NIM_NIL);
	{
		if (!((NU8)((*n)._kind_2.labelFmt->data[((NI) 0)]) == (NU8)(40))) goto LA3_;
		i1 = ((NI) 1);
		pre = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_60));
	}
	LA3_: ;
	{
		NIM_BOOL T7_;
		NIM_CHAR* T8_;
		NIM_CHAR* T10_;
		NIM_CHAR* T13_;
		T7_ = (NIM_BOOL)0;
		T8_ = (NIM_CHAR*)0;
		T8_ = X5BX5D___system_7391((&(*n)._kind_2.labelFmt), ((NI) 1));
		T7_ = ((NU8)((*T8_)) == (NU8)(41));
		if (T7_) goto LA9_;
		T10_ = (NIM_CHAR*)0;
		T10_ = X5BX5D___system_7391((&(*n)._kind_2.labelFmt), ((NI) 1));
		T7_ = ((NU8)((*T10_)) == (NU8)(46));
		LA9_: ;
		if (!T7_) goto LA11_;
		i2 = (NI)(((*n)._kind_2.labelFmt ? (*n)._kind_2.labelFmt->Sup.len : 0) - ((NI) 2));
		T13_ = (NIM_CHAR*)0;
		T13_ = X5BX5D___system_7391((&(*n)._kind_2.labelFmt), ((NI) 1));
		post = nimCharToStr((*T13_));
	}
	LA11_: ;
	enumR = dotdot___pureZunicode_840(i1, i2);
	{
		NimStringDesc* T18_;
		if (!((*d).target == ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1))) goto LA16_;
		T18_ = NIM_NIL;
		T18_ = rawNewString(((*n)._kind_2.labelFmt ? (*n)._kind_2.labelFmt->Sup.len : 0) + 3);
appendString(T18_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_61));
appendString(T18_, (*n)._kind_2.labelFmt);
appendString(T18_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_36));
		unsureAsgnRef((void**) (&(*result)), resizeString((*result), (T18_ ? T18_->Sup.len : 0) + 0));
appendString((*result), T18_);
		{
			NIM_BOOL T21_;
			NimStringDesc* labelDef;
			T21_ = (NIM_BOOL)0;
			T21_ = nsuIsDigitChar((*n)._kind_2.labelFmt->data[i1]);
			if (!T21_) goto LA22_;
			labelDef = ((NimStringDesc*) NIM_NIL);
			{
				NIM_BOOL T26_;
				NimStringDesc* T30_;
				T26_ = (NIM_BOOL)0;
				T26_ = !(((pre ? pre->Sup.len : 0) == 0));
				if (T26_) goto LA27_;
				T26_ = !(((post ? post->Sup.len : 0) == 0));
				LA27_: ;
				if (!T26_) goto LA28_;
				T30_ = NIM_NIL;
				T30_ = rawNewString((pre ? pre->Sup.len : 0) + (post ? post->Sup.len : 0) + 15);
appendString(T30_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_62));
appendString(T30_, pre);
appendString(T30_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_63));
appendString(T30_, post);
appendString(T30_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_64));
				labelDef = T30_;
			}
			LA28_: ;
			{
				NimStringDesc* T33_;
				tyArray__nHXaesL0DJZHyVS07ARPRA T36_;
				T33_ = NIM_NIL;
				T33_ = X5BX5D___pureZunicode_865((*n)._kind_2.labelFmt, enumR);
				if (!!(eqStrings(T33_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_65)))) goto LA34_;
				nimZeroMem((void*)T36_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
				T36_[0] = X5BX5D___pureZunicode_865((*n)._kind_2.labelFmt, enumR);
				specStart = nsuFormatOpenArray(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_66), T36_, 1);
			}
			LA34_: ;
			{
				NIM_BOOL T39_;
				tyArray__Re75IspeoxXy2oCZHwcRrA T43_;
				T39_ = (NIM_BOOL)0;
				T39_ = !(((labelDef ? labelDef->Sup.len : 0) == 0));
				if (T39_) goto LA40_;
				T39_ = !(((specStart ? specStart->Sup.len : 0) == 0));
				LA40_: ;
				if (!T39_) goto LA41_;
				nimZeroMem((void*)T43_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
				T43_[0] = copyString(labelDef);
				T43_[1] = copyString(specStart);
				specifier = nsuFormatOpenArray(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_67), T43_, 2);
			}
			LA41_: ;
		}
		goto LA19_;
		LA22_: ;
		{
			tyTuple__qsoB9cWzItmjtA8wRSiKBbA T45_;
			NIM_CHAR first;
			NimStringDesc* labelDef_2;
			tyArray__Re75IspeoxXy2oCZHwcRrA T60_;
			nimZeroMem((void*)(&T45_), sizeof(tyTuple__qsoB9cWzItmjtA8wRSiKBbA));
			{
				NIM_BOOL T48_;
				NimStringDesc* T51_;
				T48_ = (NIM_BOOL)0;
				T48_ = nsuIsUpperAsciiChar((*n)._kind_2.labelFmt->data[i1]);
				if (!T48_) goto LA49_;
				T45_.Field0 = 65;
				T51_ = NIM_NIL;
				T51_ = rawNewString((pre ? pre->Sup.len : 0) + (post ? post->Sup.len : 0) + 12);
appendString(T51_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_62));
appendString(T51_, pre);
appendString(T51_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_68));
appendString(T51_, post);
				T45_.Field1 = T51_;
			}
			goto LA46_;
			LA49_: ;
			{
				NimStringDesc* T53_;
				T45_.Field0 = 97;
				T53_ = NIM_NIL;
				T53_ = rawNewString((pre ? pre->Sup.len : 0) + (post ? post->Sup.len : 0) + 12);
appendString(T53_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_62));
appendString(T53_, pre);
appendString(T53_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_69));
appendString(T53_, post);
				T45_.Field1 = T53_;
			}
			LA46_: ;
			first = (NIM_CHAR)0;
			first = T45_.Field0;
			labelDef_2 = NIM_NIL;
			labelDef_2 = T45_.Field1;
			{
				NimStringDesc* T58_;
				NimStringDesc* T59_;
				if (!!(((NU8)((*n)._kind_2.labelFmt->data[i1]) == (NU8)(first)))) goto LA56_;
				T58_ = NIM_NIL;
				T59_ = NIM_NIL;
				T59_ = dollar___systemZdollars_3((NI)((NI)(((NU8)((*n)._kind_2.labelFmt->data[i1])) - ((NU8)(first))) + ((NI) 1)));
				T58_ = rawNewString((T59_ ? T59_->Sup.len : 0) + 7);
appendString(T58_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_70));
appendString(T58_, T59_);
				specStart = T58_;
			}
			LA56_: ;
			nimZeroMem((void*)T60_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
			T60_[0] = copyString(labelDef_2);
			T60_[1] = copyString(specStart);
			specifier = nsuFormatOpenArray(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_67), T60_, 2);
		}
		LA19_: ;
	}
	goto LA14_;
	LA16_: ;
	{
		{
			NIM_BOOL T64_;
			NimStringDesc* T73_;
			T64_ = (NIM_BOOL)0;
			T64_ = nsuIsDigitChar((*n)._kind_2.labelFmt->data[i1]);
			if (!T64_) goto LA65_;
			{
				NimStringDesc* T69_;
				tyArray__nHXaesL0DJZHyVS07ARPRA T72_;
				T69_ = NIM_NIL;
				T69_ = X5BX5D___pureZunicode_865((*n)._kind_2.labelFmt, enumR);
				if (!!(eqStrings(T69_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_65)))) goto LA70_;
				nimZeroMem((void*)T72_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
				T72_[0] = X5BX5D___pureZunicode_865((*n)._kind_2.labelFmt, enumR);
				specStart = nsuFormatOpenArray(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_71), T72_, 1);
			}
			LA70_: ;
			T73_ = NIM_NIL;
			T73_ = rawNewString((specStart ? specStart->Sup.len : 0) + 14);
appendString(T73_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_72));
appendString(T73_, specStart);
			specifier = T73_;
		}
		goto LA62_;
		LA65_: ;
		{
			tyTuple__qsoB9cWzItmjtA8wRSiKBbA T75_;
			NIM_CHAR first_2;
			NimStringDesc* labelDef_3;
			NimStringDesc* T87_;
			nimZeroMem((void*)(&T75_), sizeof(tyTuple__qsoB9cWzItmjtA8wRSiKBbA));
			{
				NIM_BOOL T78_;
				T78_ = (NIM_BOOL)0;
				T78_ = nsuIsUpperAsciiChar((*n)._kind_2.labelFmt->data[i1]);
				if (!T78_) goto LA79_;
				T75_.Field0 = TM__vYBWrr780p7faFzauVMtPg_73.Field0;
				T75_.Field1 = copyString(TM__vYBWrr780p7faFzauVMtPg_73.Field1);
			}
			goto LA76_;
			LA79_: ;
			{
				T75_.Field0 = TM__vYBWrr780p7faFzauVMtPg_75.Field0;
				unsureAsgnRef((void**) (&T75_.Field1), copyString(TM__vYBWrr780p7faFzauVMtPg_75.Field1));
			}
			LA76_: ;
			first_2 = (NIM_CHAR)0;
			first_2 = T75_.Field0;
			labelDef_3 = NIM_NIL;
			labelDef_3 = copyString(T75_.Field1);
			{
				tyArray__nHXaesL0DJZHyVS07ARPRA T86_;
				if (!!(((NU8)((*n)._kind_2.labelFmt->data[i1]) == (NU8)(first_2)))) goto LA84_;
				nimZeroMem((void*)T86_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
				T86_[0] = dollar___systemZdollars_3((NI)((NI)(((NU8)((*n)._kind_2.labelFmt->data[i1])) - ((NU8)(first_2))) + ((NI) 1)));
				specStart = nsuFormatOpenArray(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_71), T86_, 1);
			}
			LA84_: ;
			T87_ = NIM_NIL;
			T87_ = rawNewString((labelDef_3 ? labelDef_3->Sup.len : 0) + (specStart ? specStart->Sup.len : 0) + 0);
appendString(T87_, labelDef_3);
appendString(T87_, specStart);
			specifier = T87_;
		}
		LA62_: ;
	}
	LA14_: ;
	T88_ = NIM_NIL;
	T88_ = rawNewString((specifier ? specifier->Sup.len : 0) + 15);
appendString(T88_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_77));
appendString(T88_, specifier);
appendString(T88_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_78));
	T89_ = NIM_NIL;
	T89_ = rawNewString((specifier ? specifier->Sup.len : 0) + 37);
appendString(T89_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_79));
appendString(T89_, specifier);
appendString(T89_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_80));
	renderAux__packagesZdocutilsZrstgen_315(d, n, T88_, T89_, result);
}
N_LIB_PRIVATE N_NIMCALL(void, renderField__packagesZdocutilsZrstgen_8310)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	NIM_BOOL b;
	b = NIM_FALSE;
	{
		NimStringDesc* fieldname;
		NimStringDesc* fieldval;
		NimStringDesc* T5_;
		NimStringDesc* T6_;
		if (!((*d).target == ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1))) goto LA3_;
		fieldname = addNodes__packagesZdocutilsZrst_61((*n).sons->data[((NI) 0)]);
		T5_ = NIM_NIL;
		T5_ = addNodes__packagesZdocutilsZrst_61((*n).sons->data[((NI) 1)]);
		T6_ = NIM_NIL;
		T6_ = nsuStrip(T5_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88);
		fieldval = esc__packagesZdocutilsZrstgen_240((*d).target, T6_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0));
		{
			NIM_BOOL T9_;
			NI T10_;
			NI T12_;
			T9_ = (NIM_BOOL)0;
			T10_ = (NI)0;
			T10_ = nsuCmpIgnoreStyle(fieldname, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_89));
			T9_ = (T10_ == ((NI) 0));
			if (T9_) goto LA11_;
			T12_ = (NI)0;
			T12_ = nsuCmpIgnoreStyle(fieldname, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_90));
			T9_ = (T12_ == ((NI) 0));
			LA11_: ;
			if (!T9_) goto LA13_;
			{
				if (!(((*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 3))- 0] ? (*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 3))- 0]->Sup.len : 0) == ((NI) 0))) goto LA17_;
				unsureAsgnRef((void**) (&(*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 3))- 0]), copyString(fieldval));
				b = NIM_TRUE;
			}
			LA17_: ;
		}
		goto LA7_;
		LA13_: ;
		{
			NI T20_;
			T20_ = (NI)0;
			T20_ = nsuCmpIgnoreStyle(fieldname, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_91));
			if (!(T20_ == ((NI) 0))) goto LA21_;
			{
				if (!(((*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 4))- 0] ? (*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 4))- 0]->Sup.len : 0) == ((NI) 0))) goto LA25_;
				unsureAsgnRef((void**) (&(*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 4))- 0]), copyString(fieldval));
				b = NIM_TRUE;
			}
			LA25_: ;
		}
		goto LA7_;
		LA21_: ;
		LA7_: ;
	}
	LA3_: ;
	{
		if (!!(b)) goto LA29_;
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_92), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_93), result);
	}
	LA29_: ;
}
static N_INLINE(NF, toFloat__system_1702)(NI i) {
	NF result;
	result = (NF)0;
	result = ((NF) (i));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, renderAdmonition__packagesZdocutilsZrstgen_8419)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	NimStringDesc* htmlCls;
	NimStringDesc* texSz;
	NimStringDesc* texColor;
	NimStringDesc* txt;
	NimStringDesc* htmlHead;
	NimStringDesc* T10_;
	NimStringDesc* T11_;
	NimStringDesc* T12_;
	htmlCls = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_125));
	texSz = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_126));
	texColor = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_127));
	switch (hashString((*n)._kind_4.adType) & 15) {
	case 0: 
if (eqStrings((*n)._kind_4.adType, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_134))) goto LA2_;
break;
	case 4: 
if (eqStrings((*n)._kind_4.adType, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_137))) goto LA3_;
break;
	case 5: 
if (eqStrings((*n)._kind_4.adType, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_135))) goto LA2_;
break;
	case 7: 
if (eqStrings((*n)._kind_4.adType, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_129))) goto LA1_;
if (eqStrings((*n)._kind_4.adType, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_133))) goto LA2_;
break;
	case 8: 
if (eqStrings((*n)._kind_4.adType, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_130))) goto LA1_;
break;
	case 9: 
if (eqStrings((*n)._kind_4.adType, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_136))) goto LA3_;
break;
	case 10: 
if (eqStrings((*n)._kind_4.adType, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_132))) goto LA2_;
break;
	case 11: 
if (eqStrings((*n)._kind_4.adType, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_128))) goto LA1_;
if (eqStrings((*n)._kind_4.adType, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_131))) goto LA2_;
break;
	}
	goto LA4_;
	LA1_: ;
	{
		htmlCls = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_138));
		texSz = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_139));
		texColor = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_140));
	}
	goto LA5_;
	LA2_: ;
	{
		htmlCls = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_141));
		texSz = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_126));
		texColor = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_127));
	}
	goto LA5_;
	LA3_: ;
	{
		htmlCls = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_142));
		texSz = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_143));
		texColor = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_144));
	}
	goto LA5_;
	LA4_: ;
	{
	}
	LA5_: ;
	txt = nsuCapitalizeAscii((*n)._kind_4.adType);
	T10_ = NIM_NIL;
	T10_ = rawNewString((htmlCls ? htmlCls->Sup.len : 0) + 25);
appendString(T10_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_145));
appendString(T10_, htmlCls);
appendString(T10_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_146));
	htmlHead = T10_;
	T11_ = NIM_NIL;
	T11_ = rawNewString((htmlHead ? htmlHead->Sup.len : 0) + (htmlCls ? htmlCls->Sup.len : 0) + (txt ? txt->Sup.len : 0) + 47);
appendString(T11_, htmlHead);
appendString(T11_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_147));
appendString(T11_, htmlCls);
appendString(T11_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_148));
appendString(T11_, txt);
appendString(T11_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_149));
	T12_ = NIM_NIL;
	T12_ = rawNewString((texColor ? texColor->Sup.len : 0) + (texSz ? texSz->Sup.len : 0) + (texColor ? texColor->Sup.len : 0) + (txt ? txt->Sup.len : 0) + 104);
appendString(T12_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_150));
appendString(T12_, texColor);
appendString(T12_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_151));
appendString(T12_, texSz);
appendString(T12_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_152));
appendString(T12_, texColor);
appendString(T12_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_153));
appendString(T12_, txt);
appendString(T12_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_154));
	renderAux__packagesZdocutilsZrstgen_315(d, n, T11_, T12_, result);
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, texColumns__packagesZdocutilsZrstgen_8303)(tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n) {
	NimStringDesc* result;
	NI nColumns;
	result = NIM_NIL;
	{
		NI T3_;
		T3_ = ((*n).sons ? (*n).sons->Sup.len : 0);
		if (!(((NI) 0) < T3_)) goto LA4_;
		nColumns = len__packagesZdocutilsZrstast_102((*n).sons->data[((NI) 0)]);
	}
	goto LA1_;
	LA4_: ;
	{
		nColumns = ((NI) 1);
	}
	LA1_: ;
	result = nsuRepeatStr(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_157), ((NI) (nColumns)));
	return result;
}
static N_INLINE(NI, skip__pureZparseutils_117)(NimStringDesc* s, NimStringDesc* token, NI start) {
	NI result;
	result = (NI)0;
	result = ((NI) 0);
	{
		while (1) {
			NIM_BOOL T3_;
			NIM_BOOL T4_;
			T3_ = (NIM_BOOL)0;
			T4_ = (NIM_BOOL)0;
			T4_ = ((NI)(start + result) < (s ? s->Sup.len : 0));
			if (!(T4_)) goto LA5_;
			T4_ = (result < (token ? token->Sup.len : 0));
			LA5_: ;
			T3_ = T4_;
			if (!(T3_)) goto LA6_;
			T3_ = ((NU8)(s->data[(NI)(result + start)]) == (NU8)(token->data[result]));
			LA6_: ;
			if (!T3_) goto LA2;
			result += ((NI) 1);
		} LA2: ;
	}
	{
		if (!!((result == (token ? token->Sup.len : 0)))) goto LA9_;
		result = ((NI) 0);
	}
	LA9_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, safeProtocol__packagesZdocutilsZrstgen_8094)(NimStringDesc** linkStr) {
	NimStringDesc* protocol;
	protocol = ((NimStringDesc*) NIM_NIL);
	{
		NimStringDesc* inp;
		NI idx;
		NIM_BOOL res;
		NI resLen;
		inp = (*linkStr);
		idx = ((NI) 0);
		res = NIM_FALSE;
		resLen = parseIdent__pureZparseutils_57(inp, (&protocol), idx);
		{
			NI resLen_2;
			if (!!((resLen == ((NI) 0)))) goto LA5_;
			idx += resLen;
			resLen_2 = skip__pureZparseutils_117(inp, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_169), idx);
			{
				if (!!((resLen_2 == ((NI) 0)))) goto LA9_;
				idx += resLen_2;
				res = NIM_TRUE;
			}
			LA9_: ;
		}
		LA5_: ;
		if (!res) goto LA11_;
		{
			NIM_BOOL T15_;
			NIM_BOOL T16_;
			NI T17_;
			NI T19_;
			NI T21_;
			T15_ = (NIM_BOOL)0;
			T16_ = (NIM_BOOL)0;
			T17_ = (NI)0;
			T17_ = nsuCmpIgnoreCase(protocol, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_170));
			T16_ = (T17_ == ((NI) 0));
			if (T16_) goto LA18_;
			T19_ = (NI)0;
			T19_ = nsuCmpIgnoreCase(protocol, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_171));
			T16_ = (T19_ == ((NI) 0));
			LA18_: ;
			T15_ = T16_;
			if (T15_) goto LA20_;
			T21_ = (NI)0;
			T21_ = nsuCmpIgnoreCase(protocol, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_172));
			T15_ = (T21_ == ((NI) 0));
			LA20_: ;
			if (!T15_) goto LA22_;
		}
		goto LA13_;
		LA22_: ;
		{
			unsureAsgnRef((void**) (&(*linkStr)), ((NimStringDesc*) NIM_NIL));
		}
		LA13_: ;
	}
	LA11_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, renderHyperlink__packagesZdocutilsZrstgen_8428)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* text, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* link, NimStringDesc** result, NIM_BOOL external) {
	NimStringDesc* linkStr;
	NimStringDesc* textStr;
	linkStr = ((NimStringDesc*) NIM_NIL);
	{
		tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ mode;
		mode = (*d).escMode;
		(*d).escMode = ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 2);
		renderRstToOut__packagesZdocutilsZrstgen_299(d, link, (&linkStr));
		(*d).escMode = mode;
	}
	safeProtocol__packagesZdocutilsZrstgen_8094((&linkStr));
	textStr = ((NimStringDesc*) NIM_NIL);
	renderRstToOut__packagesZdocutilsZrstgen_299(d, text, (&textStr));
	{
		tyArray__Re75IspeoxXy2oCZHwcRrA T6_;
		if (!external) goto LA4_;
		nimZeroMem((void*)T6_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T6_[0] = copyString(textStr);
		T6_[1] = copyString(linkStr);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_173), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_174), T6_, 2);
	}
	goto LA2_;
	LA4_: ;
	{
		tyArray__Re75IspeoxXy2oCZHwcRrA T8_;
		nimZeroMem((void*)T8_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T8_[0] = copyString(textStr);
		T8_[1] = copyString(linkStr);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_175), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_176), T8_, 2);
	}
	LA2_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dispF__packagesZdocutilsZrstgen_275)(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA target, NimStringDesc* xml, NimStringDesc* tex, NimStringDesc** args, NI argsLen_0) {
	NimStringDesc* result;
	result = NIM_NIL;
	{
		if (!!((target == ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1)))) goto LA3_;
		result = nsuFormatOpenArray(xml, args, argsLen_0);
	}
	goto LA1_;
	LA3_: ;
	{
		result = nsuFormatOpenArray(tex, args, argsLen_0);
	}
	LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, renderImage__packagesZdocutilsZrstgen_8139)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	NimStringDesc* arg;
	NimStringDesc* options;
	NimStringDesc* s;
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	NimStringDesc* T8_;
	NimStringDesc* T9_;
	NimStringDesc* T15_;
	NimStringDesc* T16_;
	NimStringDesc* T22_;
	NimStringDesc* T23_;
	NimStringDesc* T29_;
	NimStringDesc* T30_;
	NimStringDesc* htmlOut;
	NimStringDesc* target;
	NimStringDesc* T50_;
	NimStringDesc* T51_;
	tyArray__24KAM9afIUgUaqBaEBB6r9bg T57_;
	arg = getArgument__packagesZdocutilsZrst_66(n);
	options = ((NimStringDesc*) NIM_NIL);
	T1_ = NIM_NIL;
	T1_ = getFieldValue__packagesZdocutilsZrst_63(n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_180));
	T2_ = NIM_NIL;
	T2_ = nsuStrip(T1_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88);
	s = esc__packagesZdocutilsZrstgen_240((*d).target, T2_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0));
	{
		tyArray__nHXaesL0DJZHyVS07ARPRA T7_;
		if (!(((NI) 0) < (s ? s->Sup.len : 0))) goto LA5_;
		nimZeroMem((void*)T7_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
		T7_[0] = copyString(s);
		dispA__packagesZdocutilsZrstgen_285((*d).target, (&options), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_181), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_182), T7_, 1);
	}
	LA5_: ;
	T8_ = NIM_NIL;
	T8_ = getFieldValue__packagesZdocutilsZrst_63(n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_183));
	T9_ = NIM_NIL;
	T9_ = nsuStrip(T8_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88);
	s = esc__packagesZdocutilsZrstgen_240((*d).target, T9_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0));
	{
		tyArray__nHXaesL0DJZHyVS07ARPRA T14_;
		if (!(((NI) 0) < (s ? s->Sup.len : 0))) goto LA12_;
		nimZeroMem((void*)T14_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
		T14_[0] = copyString(s);
		dispA__packagesZdocutilsZrstgen_285((*d).target, (&options), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_184), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_185), T14_, 1);
	}
	LA12_: ;
	T15_ = NIM_NIL;
	T15_ = getFieldValue__packagesZdocutilsZrst_63(n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_186));
	T16_ = NIM_NIL;
	T16_ = nsuStrip(T15_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88);
	s = esc__packagesZdocutilsZrstgen_240((*d).target, T16_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0));
	{
		tyArray__nHXaesL0DJZHyVS07ARPRA T21_;
		if (!(((NI) 0) < (s ? s->Sup.len : 0))) goto LA19_;
		nimZeroMem((void*)T21_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
		T21_[0] = copyString(s);
		dispA__packagesZdocutilsZrstgen_285((*d).target, (&options), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_187), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_188), T21_, 1);
	}
	LA19_: ;
	T22_ = NIM_NIL;
	T22_ = getFieldValue__packagesZdocutilsZrst_63(n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_189));
	T23_ = NIM_NIL;
	T23_ = nsuStrip(T22_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88);
	s = esc__packagesZdocutilsZrstgen_240((*d).target, T23_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0));
	{
		tyArray__nHXaesL0DJZHyVS07ARPRA T28_;
		if (!(((NI) 0) < (s ? s->Sup.len : 0))) goto LA26_;
		nimZeroMem((void*)T28_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
		T28_[0] = copyString(s);
		dispA__packagesZdocutilsZrstgen_285((*d).target, (&options), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_190), ((NimStringDesc*) NIM_NIL), T28_, 1);
	}
	LA26_: ;
	T29_ = NIM_NIL;
	T29_ = getFieldValue__packagesZdocutilsZrst_63(n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_191));
	T30_ = NIM_NIL;
	T30_ = nsuStrip(T29_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88);
	s = esc__packagesZdocutilsZrstgen_240((*d).target, T30_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0));
	{
		tyArray__nHXaesL0DJZHyVS07ARPRA T35_;
		if (!(((NI) 0) < (s ? s->Sup.len : 0))) goto LA33_;
		nimZeroMem((void*)T35_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
		T35_[0] = copyString(s);
		dispA__packagesZdocutilsZrstgen_285((*d).target, (&options), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_192), ((NimStringDesc*) NIM_NIL), T35_, 1);
	}
	LA33_: ;
	{
		tyArray__nHXaesL0DJZHyVS07ARPRA T40_;
		if (!(((NI) 0) < (options ? options->Sup.len : 0))) goto LA38_;
		nimZeroMem((void*)T40_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
		T40_[0] = copyString(options);
		options = dispF__packagesZdocutilsZrstgen_275((*d).target, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_93), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_193), T40_, 1);
	}
	LA38_: ;
	htmlOut = ((NimStringDesc*) NIM_NIL);
	{
		NIM_BOOL T43_;
		NIM_BOOL T44_;
		T43_ = (NIM_BOOL)0;
		T44_ = (NIM_BOOL)0;
		T44_ = nsuEndsWith(arg, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_194));
		if (T44_) goto LA45_;
		T44_ = nsuEndsWith(arg, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_195));
		LA45_: ;
		T43_ = T44_;
		if (T43_) goto LA46_;
		T43_ = nsuEndsWith(arg, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_196));
		LA46_: ;
		if (!T43_) goto LA47_;
		htmlOut = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_197));
	}
	goto LA41_;
	LA47_: ;
	{
		htmlOut = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_198));
	}
	LA41_: ;
	T50_ = NIM_NIL;
	T50_ = getFieldValue__packagesZdocutilsZrst_63(n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_199));
	T51_ = NIM_NIL;
	T51_ = nsuStrip(T50_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88);
	target = esc__packagesZdocutilsZrstgen_240((*d).target, T51_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 2));
	safeProtocol__packagesZdocutilsZrstgen_8094((&target));
	{
		NimStringDesc* htmlOutWithLink;
		tyArray__Re75IspeoxXy2oCZHwcRrA T56_;
		if (!(((NI) 0) < (target ? target->Sup.len : 0))) goto LA54_;
		htmlOutWithLink = ((NimStringDesc*) NIM_NIL);
		nimZeroMem((void*)T56_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T56_[0] = copyString(htmlOut);
		T56_[1] = copyString(target);
		dispA__packagesZdocutilsZrstgen_285((*d).target, (&htmlOutWithLink), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_173), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_174), T56_, 2);
		htmlOut = copyString(htmlOutWithLink);
	}
	LA54_: ;
	nimZeroMem((void*)T57_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
	T57_[0] = esc__packagesZdocutilsZrstgen_240((*d).target, arg, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0));
	T57_[1] = copyString(options);
	{
		if (!(((*n).anchor ? (*n).anchor->Sup.len : 0) == 0)) goto LA60_;
		T57_[2] = ((NimStringDesc*) NIM_NIL);
	}
	goto LA58_;
	LA60_: ;
	{
		switch ((*d).target) {
		case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
		{
			NimStringDesc* T64_;
			T64_ = NIM_NIL;
			T64_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + 6);
appendString(T64_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_42));
appendString(T64_, (*n).anchor);
appendString(T64_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43));
			T57_[2] = T64_;
		}
		break;
		case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
		{
			NimStringDesc* T66_;
			T66_ = NIM_NIL;
			T66_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + ((*n).anchor ? (*n).anchor->Sup.len : 0) + 24);
appendString(T66_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_44));
appendString(T66_, (*n).anchor);
appendString(T66_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_45));
appendString(T66_, (*n).anchor);
appendString(T66_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_46));
			T57_[2] = T66_;
		}
		break;
		}
	}
	LA58_: ;
	dispA__packagesZdocutilsZrstgen_285((*d).target, result, htmlOut, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_200), T57_, 3);
	{
		NI T69_;
		T69_ = (NI)0;
		T69_ = len__packagesZdocutilsZrstast_102(n);
		if (!(((NI) 3) <= T69_)) goto LA70_;
		renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[((NI) 2)], result);
	}
	LA70_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, init__packagesZdocutilsZrstgen_88)(tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA* p) {
	(*p).startLine = ((NI) 1);
	(*p).lang = ((tyEnum_SourceLanguage__yW5C9bHJV9a9bc7MnoMHmB85g) 0);
	unsureAsgnRef((void**) (&(*p).langStr), ((NimStringDesc*) NIM_NIL));
}
static N_INLINE(NimStringDesc*, X5BX5D___pureZunicode_3215)(NimStringDesc* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x) {
	NimStringDesc* result;
	NI a;
	NI L;
	result = NIM_NIL;
	a = x.a;
	L = (NI)((NI)((NI)((s ? s->Sup.len : 0) - x.b) - a) + ((NI) 1));
	result = mnewString(((NI) (L)));
	{
		NI i;
		NI i_2;
		i = (NI)0;
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < L)) goto LA3;
				i = i_2;
				result->data[i] = s->data[(NI)(i + a)];
				i_2 += ((NI) 1);
			} LA3: ;
		}
	}
	return result;
}
static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___stdZenumutils_80)(NI a, NI b) {
	tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA result;
	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
	result.a = a;
	result.b = b;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, getField1Int__packagesZdocutilsZrstgen_8153)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc* fieldName) {
	NI result;
	NimStringDesc* value;
	NI number;
	NI nChars;
	result = (NI)0;
	value = getFieldValue__packagesZdocutilsZrst_5232(n);
	number = (NI)0;
	nChars = npuParseInt(value, (&number), ((NI) 0));
	{
		if (!(nChars == ((NI) 0))) goto LA3_;
		{
			tyArray__nHXaesL0DJZHyVS07ARPRA T9_;
			NimStringDesc* T10_;
			if (!((value ? value->Sup.len : 0) == ((NI) 0))) goto LA7_;
			nimZeroMem((void*)T9_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
			T9_[0] = copyString(fieldName);
			T10_ = NIM_NIL;
			T10_ = nsuFormatOpenArray(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_208), T9_, 1);
			rstMessage__packagesZdocutilsZrst_2095((*d).filenames, (*d).msgHandler, (*n)._kind_7.info, ((tyEnum_MsgKind__j4Az8tPCEtMOVV8Ta9bk9auQ) 7), T10_);
		}
		goto LA5_;
		LA7_: ;
		{
			tyArray__Re75IspeoxXy2oCZHwcRrA T12_;
			NimStringDesc* T13_;
			nimZeroMem((void*)T12_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
			T12_[0] = copyString(fieldName);
			T12_[1] = copyString(value);
			T13_ = NIM_NIL;
			T13_ = nsuFormatOpenArray(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_209), T12_, 2);
			rstMessage__packagesZdocutilsZrst_2095((*d).filenames, (*d).msgHandler, (*n)._kind_7.info, ((tyEnum_MsgKind__j4Az8tPCEtMOVV8Ta9bk9auQ) 7), T13_);
		}
		LA5_: ;
	}
	goto LA1_;
	LA3_: ;
	{
		tyArray__Re75IspeoxXy2oCZHwcRrA T17_;
		tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T18_;
		NimStringDesc* T19_;
		if (!(nChars < (value ? value->Sup.len : 0))) goto LA15_;
		nimZeroMem((void*)T17_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T17_[0] = copyString(fieldName);
		T18_ = dotdot___stdZenumutils_80(nChars, ((NI) 1));
		T17_[1] = X5BX5D___pureZunicode_3215(value, T18_);
		T19_ = NIM_NIL;
		T19_ = nsuFormatOpenArray(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_210), T17_, 2);
		rstMessage__packagesZdocutilsZrst_2095((*d).filenames, (*d).msgHandler, (*n)._kind_7.info, ((tyEnum_MsgKind__j4Az8tPCEtMOVV8Ta9bk9auQ) 7), T19_);
	}
	goto LA1_;
	LA15_: ;
	{
		result = number;
	}
	LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, parseCodeBlockField__packagesZdocutilsZrstgen_8181)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA* params) {
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	T1_ = NIM_NIL;
	T1_ = getArgument__packagesZdocutilsZrst_66(n);
	T2_ = NIM_NIL;
	T2_ = nsuToLowerAsciiStr(T1_);
	if (eqStrings(T2_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_201))) goto LA3_;
	if (eqStrings(T2_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_202))) goto LA4_;
	if (eqStrings(T2_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_203))) goto LA4_;
	if (eqStrings(T2_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_204))) goto LA5_;
	if (eqStrings(T2_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_205))) goto LA6_;
	if (eqStrings(T2_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_206))) goto LA6_;
	if (eqStrings(T2_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_207))) goto LA7_;
	goto LA8_;
	LA3_: ;
	{
		(*params).numberLines = NIM_TRUE;
		(*params).startLine = getField1Int__packagesZdocutilsZrstgen_8153(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_201));
	}
	goto LA9_;
	LA4_: ;
	{
		NimStringDesc* T12_;
		T12_ = NIM_NIL;
		T12_ = getFieldValue__packagesZdocutilsZrst_5232(n);
		unsureAsgnRef((void**) (&(*params).filename), nsuStrip(T12_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88));
	}
	goto LA9_;
	LA5_: ;
	{
		NimStringDesc* T14_;
		T14_ = NIM_NIL;
		T14_ = getFieldValue__packagesZdocutilsZrst_5232(n);
		unsureAsgnRef((void**) (&(*params).testCmd), nsuStrip(T14_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88));
		{
			if (!(((*params).testCmd ? (*params).testCmd->Sup.len : 0) == ((NI) 0))) goto LA17_;
			unsureAsgnRef((void**) (&(*params).testCmd), copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_211)));
		}
		goto LA15_;
		LA17_: ;
		{
			unsureAsgnRef((void**) (&(*params).testCmd), nsuUnescape((*params).testCmd, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43)));
		}
		LA15_: ;
	}
	goto LA9_;
	LA6_: ;
	{
		NimStringDesc* T21_;
		T21_ = NIM_NIL;
		T21_ = getArgument__packagesZdocutilsZrst_66(n);
		(*params).status = getField1Int__packagesZdocutilsZrstgen_8153(d, n, T21_);
	}
	goto LA9_;
	LA7_: ;
	{
		NimStringDesc* T23_;
		T23_ = NIM_NIL;
		T23_ = getFieldValue__packagesZdocutilsZrst_5232(n);
		unsureAsgnRef((void**) (&(*params).langStr), nsuStrip(T23_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88));
		(*params).lang = getSourceLanguage__packagesZdocutilsZhighlite_97((*params).langStr);
	}
	goto LA9_;
	LA8_: ;
	{
		NimStringDesc* T25_;
		T25_ = NIM_NIL;
		T25_ = getArgument__packagesZdocutilsZrst_66(n);
		rstMessage__packagesZdocutilsZrst_2095((*d).filenames, (*d).msgHandler, (*n)._kind_7.info, ((tyEnum_MsgKind__j4Az8tPCEtMOVV8Ta9bk9auQ) 13), T25_);
	}
	LA9_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, parseCodeBlockParams__packagesZdocutilsZrstgen_8185)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA* Result) {
	NimStringDesc* T13_;
{	(*Result).numberLines = 0;
	(*Result).startLine = 0;
	unsureAsgnRef((void**)&(*Result).langStr, NIM_NIL);
	(*Result).lang = 0;
	unsureAsgnRef((void**)&(*Result).filename, NIM_NIL);
	unsureAsgnRef((void**)&(*Result).testCmd, NIM_NIL);
	(*Result).status = 0;
	init__packagesZdocutilsZrstgen_88(Result);
	{
		if (!(n == 0)) goto LA3_;
		goto BeforeRet_;
	}
	LA3_: ;
	{
		if (!!(((*n).sons->data[((NI) 1)] == 0))) goto LA7_;
		{
			tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ** son;
			tySequence__V9cBl110bSARQ3Xk9bVaXHDw* colontmp_;
			NI i;
			NI L;
			NI T10_;
			son = (tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ**)0;
			colontmp_ = NIM_NIL;
			colontmp_ = (*(*n).sons->data[((NI) 1)]).sons;
			i = ((NI) 0);
			T10_ = (colontmp_ ? colontmp_->Sup.len : 0);
			L = T10_;
			{
				while (1) {
					if (!(i < L)) goto LA12;
					son = &colontmp_->data[i];
					parseCodeBlockField__packagesZdocutilsZrstgen_8181(d, (*son), Result);
					i += ((NI) 1);
				} LA12: ;
			}
		}
	}
	LA7_: ;
	T13_ = NIM_NIL;
	T13_ = getArgument__packagesZdocutilsZrst_66(n);
	unsureAsgnRef((void**) (&(*Result).langStr), nsuStrip(T13_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88));
	{
		if (!!((((*Result).langStr ? (*Result).langStr->Sup.len : 0) == 0))) goto LA16_;
		(*Result).lang = getSourceLanguage__packagesZdocutilsZhighlite_97((*Result).langStr);
	}
	LA16_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, buildLinesHtmlTable__packagesZdocutilsZrstgen_8206)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA* params, NimStringDesc* code, NimStringDesc* idStr, tyTuple__UV3llMMYFckfui8YMBuUZA* Result) {
	NimStringDesc* id;
	NI codeLines;
	NimStringDesc* T8_;
	NimStringDesc* T9_;
	tyArray__nHXaesL0DJZHyVS07ARPRA T10_;
	NimStringDesc* T11_;
	NI line;
	NimStringDesc* T16_;
	NimStringDesc* T17_;
	tyArray__24KAM9afIUgUaqBaEBB6r9bg T18_;
	NimStringDesc* T19_;
	NimStringDesc* T20_;
	NimStringDesc* T21_;
	NimStringDesc* T22_;
	NimStringDesc* T23_;
	NimStringDesc* T24_;
{	unsureAsgnRef((void**)&(*Result).Field0, NIM_NIL);
	unsureAsgnRef((void**)&(*Result).Field1, NIM_NIL);
	(*d).listingCounter += ((NI) 1);
	id = dollar___systemZdollars_3((*d).listingCounter);
	{
		NimStringDesc* colontmp_;
		NimStringDesc* T5_;
		tyArray__24KAM9afIUgUaqBaEBB6r9bg T6_;
		NimStringDesc* colontmp__2;
		NimStringDesc* T7_;
		if (!!((*params).numberLines)) goto LA3_;
		T5_ = NIM_NIL;
		T5_ = getOrDefault__pureZstrtabs_173((*d).config, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_214), ((NimStringDesc*) NIM_NIL));
		nimZeroMem((void*)T6_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
		T6_[0] = copyString(id);
		T6_[1] = copyString(sourceLanguageToStr__packagesZdocutilsZhighlite_66[((*params).lang)- 0]);
		T6_[2] = copyString(idStr);
		colontmp_ = nsuFormatOpenArray(T5_, T6_, 3);
		T7_ = NIM_NIL;
		T7_ = getOrDefault__pureZstrtabs_173((*d).config, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_215), ((NimStringDesc*) NIM_NIL));
		colontmp__2 = nsuFormatSingleElem(T7_, id);
		unsureAsgnRef((void**) (&(*Result).Field0), copyString(colontmp_));
		unsureAsgnRef((void**) (&(*Result).Field1), copyString(colontmp__2));
		goto BeforeRet_;
	}
	LA3_: ;
	T8_ = NIM_NIL;
	T8_ = nsuStrip(code, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88);
	codeLines = nsuCountLines(T8_);
	T9_ = NIM_NIL;
	nimZeroMem((void*)T10_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
	T10_[0] = copyString(idStr);
	T11_ = NIM_NIL;
	T11_ = nsuFormatOpenArray(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_216), T10_, 1);
	T9_ = rawNewString((T11_ ? T11_->Sup.len : 0) + 61);
appendString(T9_, T11_);
appendString(T9_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_217));
	unsureAsgnRef((void**) (&(*Result).Field0), T9_);
	line = (*params).startLine;
	{
		while (1) {
			NimStringDesc* T14_;
			NimStringDesc* T15_;
			if (!(((NI) 0) < codeLines)) goto LA13;
			T14_ = NIM_NIL;
			T15_ = NIM_NIL;
			T15_ = dollar___systemZdollars_3(line);
			T14_ = rawNewString((T15_ ? T15_->Sup.len : 0) + 1);
appendString(T14_, T15_);
appendString(T14_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_36));
			unsureAsgnRef((void**) (&(*Result).Field0), resizeString((*Result).Field0, (T14_ ? T14_->Sup.len : 0) + 0));
appendString((*Result).Field0, T14_);
			line += ((NI) 1);
			codeLines -= ((NI) 1);
		} LA13: ;
	}
	T16_ = NIM_NIL;
	T17_ = NIM_NIL;
	T17_ = getOrDefault__pureZstrtabs_173((*d).config, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_214), ((NimStringDesc*) NIM_NIL));
	nimZeroMem((void*)T18_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
	T18_[0] = copyString(id);
	T18_[1] = copyString(sourceLanguageToStr__packagesZdocutilsZhighlite_66[((*params).lang)- 0]);
	T18_[2] = copyString(idStr);
	T19_ = NIM_NIL;
	T19_ = nsuFormatOpenArray(T17_, T18_, 3);
	T16_ = rawNewString((T19_ ? T19_->Sup.len : 0) + 15);
appendString(T16_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_218));
appendString(T16_, T19_);
	unsureAsgnRef((void**) (&(*Result).Field0), resizeString((*Result).Field0, (T16_ ? T16_->Sup.len : 0) + 0));
appendString((*Result).Field0, T16_);
	T20_ = NIM_NIL;
	T21_ = NIM_NIL;
	T21_ = getOrDefault__pureZstrtabs_173((*d).config, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_215), ((NimStringDesc*) NIM_NIL));
	T22_ = NIM_NIL;
	T22_ = nsuFormatSingleElem(T21_, id);
	T23_ = NIM_NIL;
	T23_ = getOrDefault__pureZstrtabs_173((*d).config, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_220), ((NimStringDesc*) NIM_NIL));
	T24_ = NIM_NIL;
	T24_ = nsuFormatSingleElem(T23_, id);
	T20_ = rawNewString((T22_ ? T22_->Sup.len : 0) + (T24_ ? T24_->Sup.len : 0) + 26);
appendString(T20_, T22_);
appendString(T20_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_219));
appendString(T20_, T24_);
	unsureAsgnRef((void**) (&(*Result).Field1), T20_);
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, renderCode__packagesZdocutilsZrstgen_8242)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA params;
	tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* m;
	NimStringDesc* blockStart;
	NimStringDesc* blockEnd;
	tyArray__8ZvwQIddfpj2THRVPsFzIQ T44_;
	tyArray__8ZvwQIddfpj2THRVPsFzIQ T57_;
{	nimZeroMem((void*)(&params), sizeof(tyObject_CodeBlockParams__sfxlxgvTVIvKgcvY2mQViA));
	parseCodeBlockParams__packagesZdocutilsZrstgen_8185(d, n, (&params));
	{
		if (!((*n).sons->data[((NI) 2)] == ((tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ*) NIM_NIL))) goto LA3_;
		goto BeforeRet_;
	}
	LA3_: ;
	m = (*(*n).sons->data[((NI) 2)]).sons->data[((NI) 0)];
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = (((NI) 0) < (params.testCmd ? params.testCmd->Sup.len : 0));
		if (!(T7_)) goto LA8_;
		T7_ = !(((*d).onTestSnippet.ClP_0 == TM__vYBWrr780p7faFzauVMtPg_212.ClP_0 && (*d).onTestSnippet.ClE_0 == TM__vYBWrr780p7faFzauVMtPg_212.ClE_0));
		LA8_: ;
		if (!T7_) goto LA9_;
		(*d).onTestSnippet.ClE_0? (*d).onTestSnippet.ClP_0(d, params.filename, params.testCmd, params.status, (*m)._kind_1.text, (*d).onTestSnippet.ClE_0):((TM__vYBWrr780p7faFzauVMtPg_213)((*d).onTestSnippet.ClP_0))(d, params.filename, params.testCmd, params.status, (*m)._kind_1.text);
	}
	LA9_: ;
	blockStart = NIM_NIL;
	blockEnd = NIM_NIL;
	switch ((*d).target) {
	case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
	{
		{
			tyTuple__UV3llMMYFckfui8YMBuUZA _;
			NimStringDesc* T16_;
			if (!((*n).kind == ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 51))) goto LA14_;
			nimZeroMem((void*)(&_), sizeof(tyTuple__UV3llMMYFckfui8YMBuUZA));
			T16_ = NIM_NIL;
			{
				if (!(((*n).anchor ? (*n).anchor->Sup.len : 0) == 0)) goto LA19_;
				T16_ = ((NimStringDesc*) NIM_NIL);
			}
			goto LA17_;
			LA19_: ;
			{
				switch ((*d).target) {
				case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
				{
					NimStringDesc* T23_;
					T23_ = NIM_NIL;
					T23_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + 6);
appendString(T23_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_42));
appendString(T23_, (*n).anchor);
appendString(T23_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43));
					T16_ = T23_;
				}
				break;
				case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
				{
					NimStringDesc* T25_;
					T25_ = NIM_NIL;
					T25_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + ((*n).anchor ? (*n).anchor->Sup.len : 0) + 24);
appendString(T25_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_44));
appendString(T25_, (*n).anchor);
appendString(T25_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_45));
appendString(T25_, (*n).anchor);
appendString(T25_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_46));
					T16_ = T25_;
				}
				break;
				}
			}
			LA17_: ;
			buildLinesHtmlTable__packagesZdocutilsZrstgen_8206(d, (&params), (*m)._kind_1.text, T16_, (&_));
			blockStart = copyString(_.Field0);
			blockEnd = copyString(_.Field1);
		}
		goto LA12_;
		LA14_: ;
		{
			blockStart = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_221));
			blockEnd = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_222));
		}
		LA12_: ;
	}
	break;
	case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
	{
		{
			NimStringDesc* T32_;
			NimStringDesc* T33_;
			if (!((*n).kind == ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 51))) goto LA30_;
			T32_ = NIM_NIL;
			T33_ = NIM_NIL;
			{
				if (!(((*n).anchor ? (*n).anchor->Sup.len : 0) == 0)) goto LA36_;
				T33_ = ((NimStringDesc*) NIM_NIL);
			}
			goto LA34_;
			LA36_: ;
			{
				switch ((*d).target) {
				case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
				{
					NimStringDesc* T40_;
					T40_ = NIM_NIL;
					T40_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + 6);
appendString(T40_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_42));
appendString(T40_, (*n).anchor);
appendString(T40_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43));
					T33_ = T40_;
				}
				break;
				case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
				{
					NimStringDesc* T42_;
					T42_ = NIM_NIL;
					T42_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + ((*n).anchor ? (*n).anchor->Sup.len : 0) + 24);
appendString(T42_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_44));
appendString(T42_, (*n).anchor);
appendString(T42_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_45));
appendString(T42_, (*n).anchor);
appendString(T42_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_46));
					T33_ = T42_;
				}
				break;
				}
			}
			LA34_: ;
			T32_ = rawNewString((T33_ ? T33_->Sup.len : 0) + 17);
appendString(T32_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_223));
appendString(T32_, T33_);
appendString(T32_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_224));
			blockStart = T32_;
			blockEnd = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_225));
		}
		goto LA28_;
		LA30_: ;
		{
			blockStart = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_226));
			blockEnd = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_227));
		}
		LA28_: ;
	}
	break;
	}
	nimZeroMem((void*)T44_, sizeof(tyArray__8ZvwQIddfpj2THRVPsFzIQ));
	dispA__packagesZdocutilsZrstgen_285((*d).target, result, blockStart, blockStart, T44_, 0);
	{
		if (!(params.lang == ((tyEnum_SourceLanguage__yW5C9bHJV9a9bc7MnoMHmB85g) 0))) goto LA47_;
		{
			if (!(((NI) 0) < (params.langStr ? params.langStr->Sup.len : 0))) goto LA51_;
			rstMessage__packagesZdocutilsZrst_2095((*d).filenames, (*d).msgHandler, (*n)._kind_7.info, ((tyEnum_MsgKind__j4Az8tPCEtMOVV8Ta9bk9auQ) 12), params.langStr);
		}
		LA51_: ;
		{
			NIM_CHAR letter;
			NimStringDesc* colontmp_;
			NI i;
			NI L;
			letter = (NIM_CHAR)0;
			colontmp_ = NIM_NIL;
			colontmp_ = (*m)._kind_1.text;
			i = ((NI) 0);
			L = (colontmp_ ? colontmp_->Sup.len : 0);
			{
				while (1) {
					if (!(i < L)) goto LA55;
					letter = colontmp_->data[i];
					escChar__packagesZdocutilsZrstgen_216((*d).target, result, letter, ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0));
					i += ((NI) 1);
				} LA55: ;
			}
		}
	}
	goto LA45_;
	LA47_: ;
	{
		renderCodeLang__packagesZdocutilsZrstgen_8232(result, params.lang, (*m)._kind_1.text, (*d).target);
	}
	LA45_: ;
	nimZeroMem((void*)T57_, sizeof(tyArray__8ZvwQIddfpj2THRVPsFzIQ));
	dispA__packagesZdocutilsZrstgen_285((*d).target, result, blockEnd, blockEnd, T57_, 0);
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, renderContainer__packagesZdocutilsZrstgen_8297)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	NimStringDesc* tmp;
	NimStringDesc* arg;
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	tmp = ((NimStringDesc*) NIM_NIL);
	renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[((NI) 2)], (&tmp));
	T1_ = NIM_NIL;
	T1_ = getArgument__packagesZdocutilsZrst_66(n);
	T2_ = NIM_NIL;
	T2_ = nsuStrip(T1_, NIM_TRUE, NIM_TRUE, TM__vYBWrr780p7faFzauVMtPg_88);
	arg = esc__packagesZdocutilsZrstgen_240((*d).target, T2_, ((NI) -1), ((tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ) 0));
	{
		tyArray__nHXaesL0DJZHyVS07ARPRA T7_;
		if (!((arg ? arg->Sup.len : 0) == 0)) goto LA5_;
		nimZeroMem((void*)T7_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
		T7_[0] = copyString(tmp);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_228), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_93), T7_, 1);
	}
	goto LA3_;
	LA5_: ;
	{
		tyArray__Re75IspeoxXy2oCZHwcRrA T9_;
		nimZeroMem((void*)T9_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T9_[0] = copyString(arg);
		T9_[1] = copyString(tmp);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_229), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_230), T9_, 2);
	}
	LA3_: ;
}
static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = !((hcode == ((NI) 0)));
	return result;
}
static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash) {
	NI result;
	result = (NI)0;
	result = (NI)((NI)(h + ((NI) 1)) & maxHash);
	return result;
}
static N_INLINE(NI, rawGet__packagesZdocutilsZrstgen_417)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ t, NimStringDesc* key, NI* hc) {
	NI result;
	NI h;
	NI T10_;
{	result = (NI)0;
	(*hc) = hash__pureZhashes_279(key);
	{
		if (!((*hc) == ((NI) 0))) goto LA3_;
		(*hc) = ((NI) 314159265);
	}
	LA3_: ;
	{
		NI T7_;
		T7_ = (t.data ? t.data->Sup.len : 0);
		if (!(T7_ == ((NI) 0))) goto LA8_;
		result = ((NI) -1);
		goto BeforeRet_;
	}
	LA8_: ;
	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
	h = (NI)((*hc) & T10_);
	{
		while (1) {
			NIM_BOOL T13_;
			NI T20_;
			T13_ = (NIM_BOOL)0;
			T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
			if (!T13_) goto LA12;
			{
				NIM_BOOL T16_;
				T16_ = (NIM_BOOL)0;
				T16_ = (t.data->data[h].Field0 == (*hc));
				if (!(T16_)) goto LA17_;
				T16_ = eqStrings(t.data->data[h].Field1, key);
				LA17_: ;
				if (!T16_) goto LA18_;
				result = h;
				goto BeforeRet_;
			}
			LA18_: ;
			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
			h = nextTry__pureZcollectionsZtables_34(h, T20_);
		} LA12: ;
	}
	result = (NI)(((NI) -1) - h);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasKey__packagesZdocutilsZrstgen_410)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ t, NimStringDesc* key) {
	NIM_BOOL result;
	NI hc;
	NI T1_;
	result = (NIM_BOOL)0;
	hc = (NI)0;
	T1_ = (NI)0;
	T1_ = rawGet__packagesZdocutilsZrstgen_417(t, key, (&hc));
	result = (((NI) 0) <= T1_);
	return result;
}
static N_INLINE(NIM_BOOL, mustRehash__packagesZdocutilsZrstgen_995)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ t) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NI T2_;
	NI T4_;
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T2_ = (t.data ? t.data->Sup.len : 0);
	T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
	if (T1_) goto LA3_;
	T4_ = (t.data ? t.data->Sup.len : 0);
	T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
	LA3_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, rawInsert__packagesZdocutilsZrstgen_1448)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ* t, tySequence__pUxI6Ljo6IKKHXKOZkQ7Og** data, NimStringDesc* key, NI val, NI hc, NI h) {
	NimStringDesc* T1_;
	T1_ = NIM_NIL;
	T1_ = (*data)->data[h].Field1; (*data)->data[h].Field1 = copyStringRC1(key);
	if (T1_) nimGCunrefNoCycle(T1_);
	(*data)->data[h].Field2 = val;
	(*data)->data[h].Field0 = hc;
}
N_LIB_PRIVATE N_NIMCALL(void, enlarge__packagesZdocutilsZrstgen_1148)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ* t) {
	tySequence__pUxI6Ljo6IKKHXKOZkQ7Og* n;
	NI T1_;
	tySequence__pUxI6Ljo6IKKHXKOZkQ7Og* T2_;
	n = NIM_NIL;
	T1_ = ((*t).data ? (*t).data->Sup.len : 0);
	n = (tySequence__pUxI6Ljo6IKKHXKOZkQ7Og*) newSeq((&NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_), ((NI) ((NI)(T1_ * ((NI) 2)))));
	T2_ = NIM_NIL;
	T2_ = (*t).data;
	unsureAsgnRef((void**) (&(*t).data), n);
	n = T2_;
	{
		NI i;
		NI colontmp_;
		NI T4_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T4_ = ((n ? n->Sup.len : 0)-1);
		colontmp_ = T4_;
		res = ((NI) 0);
		{
			while (1) {
				NI eh;
				if (!(res <= colontmp_)) goto LA6;
				i = res;
				eh = n->data[i].Field0;
				{
					NIM_BOOL T9_;
					NI j;
					NI T12_;
					NimStringDesc* T17_;
					NI T18_;
					T9_ = (NIM_BOOL)0;
					T9_ = isFilled__pureZcollectionsZtables_31(eh);
					if (!T9_) goto LA10_;
					T12_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
					j = (NI)(eh & T12_);
					{
						while (1) {
							NIM_BOOL T15_;
							NI T16_;
							T15_ = (NIM_BOOL)0;
							T15_ = isFilled__pureZcollectionsZtables_31((*t).data->data[j].Field0);
							if (!T15_) goto LA14;
							T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
							j = nextTry__pureZcollectionsZtables_34(j, T16_);
						} LA14: ;
					}
					T17_ = NIM_NIL;
					T17_ = n->data[i].Field1;
					asgnRef((void**) (&n->data[i].Field1), NIM_NIL);
					T18_ = (NI)0;
					T18_ = n->data[i].Field2;
					n->data[i].Field2 = 0;
					rawInsert__packagesZdocutilsZrstgen_1448(t, (&(*t).data), T17_, T18_, eh, j);
				}
				LA10_: ;
				res += ((NI) 1);
			} LA6: ;
		}
	}
}
static N_INLINE(NI, rawGetKnownHC__packagesZdocutilsZrstgen_1617)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ t, NimStringDesc* key, NI hc) {
	NI result;
	NI h;
	NI T6_;
{	result = (NI)0;
	{
		NI T3_;
		T3_ = (t.data ? t.data->Sup.len : 0);
		if (!(T3_ == ((NI) 0))) goto LA4_;
		result = ((NI) -1);
		goto BeforeRet_;
	}
	LA4_: ;
	T6_ = ((t.data ? t.data->Sup.len : 0)-1);
	h = (NI)(hc & T6_);
	{
		while (1) {
			NIM_BOOL T9_;
			NI T16_;
			T9_ = (NIM_BOOL)0;
			T9_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
			if (!T9_) goto LA8;
			{
				NIM_BOOL T12_;
				T12_ = (NIM_BOOL)0;
				T12_ = (t.data->data[h].Field0 == hc);
				if (!(T12_)) goto LA13_;
				T12_ = eqStrings(t.data->data[h].Field1, key);
				LA13_: ;
				if (!T12_) goto LA14_;
				result = h;
				goto BeforeRet_;
			}
			LA14_: ;
			T16_ = ((t.data ? t.data->Sup.len : 0)-1);
			h = nextTry__pureZcollectionsZtables_34(h, T16_);
		} LA8: ;
	}
	result = (NI)(((NI) -1) - h);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___packagesZdocutilsZrstgen_822)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ* t, NimStringDesc* key, NI val) {
	NI hc;
	NI index;
	{
		NI T3_;
		NI correctSizeX60gensym20_;
		T3_ = ((*t).data ? (*t).data->Sup.len : 0);
		if (!(T3_ == ((NI) 0))) goto LA4_;
		correctSizeX60gensym20_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
		(*t).counter = ((NI) 0);
		unsureAsgnRef((void**) (&(*t).data), (tySequence__pUxI6Ljo6IKKHXKOZkQ7Og*) newSeq((&NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_), ((NI) (correctSizeX60gensym20_))));
	}
	LA4_: ;
	hc = (NI)0;
	index = rawGet__packagesZdocutilsZrstgen_417((*t), key, (&hc));
	{
		if (!(((NI) 0) <= index)) goto LA8_;
		(*t).data->data[index].Field2 = val;
	}
	goto LA6_;
	LA8_: ;
	{
		{
			NI T13_;
			NI correctSizeX60gensym23_;
			T13_ = ((*t).data ? (*t).data->Sup.len : 0);
			if (!(T13_ == ((NI) 0))) goto LA14_;
			correctSizeX60gensym23_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
			(*t).counter = ((NI) 0);
			unsureAsgnRef((void**) (&(*t).data), (tySequence__pUxI6Ljo6IKKHXKOZkQ7Og*) newSeq((&NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_), ((NI) (correctSizeX60gensym23_))));
		}
		LA14_: ;
		{
			NIM_BOOL T18_;
			T18_ = (NIM_BOOL)0;
			T18_ = mustRehash__packagesZdocutilsZrstgen_995((*t));
			if (!T18_) goto LA19_;
			enlarge__packagesZdocutilsZrstgen_1148(t);
			index = rawGetKnownHC__packagesZdocutilsZrstgen_1617((*t), key, hc);
		}
		LA19_: ;
		index = (NI)(((NI) -1) - index);
		rawInsert__packagesZdocutilsZrstgen_1448(t, (&(*t).data), key, val, hc, index);
		(*t).counter += ((NI) 1);
	}
	LA6_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, getOrDefault__packagesZdocutilsZrstgen_718)(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ t, NimStringDesc* key) {
	NI result;
	NI hcX60gensym17_;
	NI indexX60gensym17_;
	result = (NI)0;
	hcX60gensym17_ = (NI)0;
	indexX60gensym17_ = rawGet__packagesZdocutilsZrstgen_417(t, key, (&hcX60gensym17_));
	{
		if (!(((NI) 0) <= indexX60gensym17_)) goto LA3_;
		result = t.data->data[indexX60gensym17_].Field2;
	}
	LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, renderIndexTerm__packagesZdocutilsZrstgen_365)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	NimStringDesc* refname;
	NimStringDesc* id;
	NimStringDesc* T8_;
	NI T9_;
	NimStringDesc* T10_;
	NimStringDesc* term;
	NimStringDesc* T11_;
	NimStringDesc* T12_;
	tyArray__Re75IspeoxXy2oCZHwcRrA T13_;
	refname = rstnodeToRefname__packagesZdocutilsZrst_59(n);
	{
		NIM_BOOL T3_;
		NI T6_;
		T3_ = (NIM_BOOL)0;
		T3_ = hasKey__packagesZdocutilsZrstgen_410((*d).seenIndexTerms, refname);
		if (!T3_) goto LA4_;
		T6_ = (NI)0;
		T6_ = getOrDefault__packagesZdocutilsZrstgen_718((*d).seenIndexTerms, refname);
		X5BX5Deq___packagesZdocutilsZrstgen_822((&(*d).seenIndexTerms), refname, (NI)(T6_ + ((NI) 1)));
	}
	goto LA1_;
	LA4_: ;
	{
		X5BX5Deq___packagesZdocutilsZrstgen_822((&(*d).seenIndexTerms), refname, ((NI) 1));
	}
	LA1_: ;
	T8_ = NIM_NIL;
	T9_ = (NI)0;
	T9_ = getOrDefault__packagesZdocutilsZrstgen_718((*d).seenIndexTerms, refname);
	T10_ = NIM_NIL;
	T10_ = dollar___systemZdollars_3(T9_);
	T8_ = rawNewString((refname ? refname->Sup.len : 0) + (T10_ ? T10_->Sup.len : 0) + 1);
appendString(T8_, refname);
appendChar(T8_, 95);
appendString(T8_, T10_);
	id = T8_;
	term = ((NimStringDesc*) NIM_NIL);
	renderAux__packagesZdocutilsZrstgen_303(d, n, (&term));
	T11_ = NIM_NIL;
	T11_ = nosextractFilename((*d).filename);
	T12_ = NIM_NIL;
	T12_ = noschangeFileExt(T11_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_49));
	setIndexTerm__packagesZdocutilsZrstgen_344(d, T12_, id, term, (*d).currentSection, ((NimStringDesc*) NIM_NIL));
	nimZeroMem((void*)T13_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
	T13_[0] = copyString(id);
	T13_[1] = copyString(term);
	dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_244), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_245), T13_, 2);
}
N_LIB_PRIVATE N_NIMCALL(void, renderSmiley__packagesZdocutilsZrstgen_8149)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
	tyArray__nHXaesL0DJZHyVS07ARPRA T1_;
	NimStringDesc* T2_;
	nimZeroMem((void*)T1_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
	T2_ = NIM_NIL;
	T2_ = getOrDefault__pureZstrtabs_173((*d).config, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_252), ((NimStringDesc*) NIM_NIL));
	T1_[0] = nsuFormatSingleElem(T2_, (*n)._kind_1.text);
	dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_250), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_251), T1_, 1);
}
N_LIB_PRIVATE N_NIMCALL(void, renderRstToOut__packagesZdocutilsZrstgen_299)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* n, NimStringDesc** result) {
{	{
		if (!(n == ((tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ*) NIM_NIL))) goto LA3_;
		goto BeforeRet_;
	}
	LA3_: ;
	switch ((*n).kind) {
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 0):
	{
		renderAux__packagesZdocutilsZrstgen_303(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 1):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 3):
	{
		renderHeadline__packagesZdocutilsZrstgen_8015(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 2):
	{
		renderOverline__packagesZdocutilsZrstgen_8067(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 4):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_52), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_53), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 5):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_54), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_55), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 6):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_56), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_57), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 7):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 9):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_58), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_59), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 8):
	{
		renderEnumList__packagesZdocutilsZrstgen_8321(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 10):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_81), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_82), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 11):
	{
		renderAux__packagesZdocutilsZrstgen_303(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 12):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_83), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_84), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 13):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_85), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_86), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 14):
	{
		NimStringDesc* tmp;
		tmp = ((NimStringDesc*) NIM_NIL);
		{
			NI i;
			NI colontmp_;
			NI T19_;
			NI res;
			i = (NI)0;
			colontmp_ = (NI)0;
			T19_ = (NI)0;
			T19_ = len__packagesZdocutilsZrstast_102(n);
			colontmp_ = (NI)(T19_ - ((NI) 1));
			res = ((NI) 0);
			{
				while (1) {
					if (!(res <= colontmp_)) goto LA21;
					i = res;
					renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[i], (&tmp));
					res += ((NI) 1);
				} LA21: ;
			}
		}
		{
			tyArray__Re75IspeoxXy2oCZHwcRrA T26_;
			if (!!(((tmp ? tmp->Sup.len : 0) == ((NI) 0)))) goto LA24_;
			nimZeroMem((void*)T26_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
			T26_[0] = copyString(tmp);
			{
				if (!(((*n).anchor ? (*n).anchor->Sup.len : 0) == 0)) goto LA29_;
				T26_[1] = ((NimStringDesc*) NIM_NIL);
			}
			goto LA27_;
			LA29_: ;
			{
				switch ((*d).target) {
				case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
				{
					NimStringDesc* T33_;
					T33_ = NIM_NIL;
					T33_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + 6);
appendString(T33_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_42));
appendString(T33_, (*n).anchor);
appendString(T33_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43));
					T26_[1] = T33_;
				}
				break;
				case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
				{
					NimStringDesc* T35_;
					T35_ = NIM_NIL;
					T35_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + ((*n).anchor ? (*n).anchor->Sup.len : 0) + 24);
appendString(T35_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_44));
appendString(T35_, (*n).anchor);
appendString(T35_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_45));
appendString(T35_, (*n).anchor);
appendString(T35_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_46));
					T26_[1] = T35_;
				}
				break;
				}
			}
			LA27_: ;
			dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_87), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_82), T26_, 2);
		}
		LA24_: ;
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 15):
	{
		renderField__packagesZdocutilsZrstgen_8310(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 16):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_94), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_95), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 17):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_96), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_97), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 56):
	{
		renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[((NI) 2)], result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 18):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_98), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_99), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 19):
	{
		NimStringDesc* addclass;
		NimStringDesc* T47_;
		{
			if (!((NI)((*n)._kind_6.order % ((NI) 2)) == ((NI) 1))) goto LA44_;
			addclass = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_100));
		}
		goto LA42_;
		LA44_: ;
		{
			addclass = ((NimStringDesc*) NIM_NIL);
		}
		LA42_: ;
		T47_ = NIM_NIL;
		T47_ = rawNewString((addclass ? addclass->Sup.len : 0) + 39);
appendString(T47_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_101));
appendString(T47_, addclass);
appendString(T47_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_102));
		renderAux__packagesZdocutilsZrstgen_315(d, n, T47_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_93), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 20):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_103), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_104), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 24):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_105), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_97), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 21):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 22):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 23):
	{
		{
			if (!NIM_TRUE) goto LA53_;
			failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_106));
		}
		LA53_: ;
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 25):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_107), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_108), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 26):
	{
		{
			if (!NIM_TRUE) goto LA59_;
			failedAssertImpl__systemZassertions_56(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_109));
		}
		LA59_: ;
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 27):
	{
		{
			NIM_BOOL T64_;
			NI T65_;
			T64_ = (NIM_BOOL)0;
			T65_ = ((*n).sons ? (*n).sons->Sup.len : 0);
			T64_ = (T65_ == ((NI) 1));
			if (!(T64_)) goto LA66_;
			T64_ = eqStrings((*(*n).sons->data[((NI) 0)])._kind_3.lineIndent, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_36));
			LA66_: ;
			if (!T64_) goto LA67_;
			renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_110), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_111), result);
		}
		goto LA62_;
		LA67_: ;
		{
			renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_112), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_113), result);
		}
		LA62_: ;
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 28):
	{
		{
			if (!(((*n)._kind_3.lineIndent ? (*n)._kind_3.lineIndent->Sup.len : 0) == ((NI) 0))) goto LA73_;
			renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_114), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_115), result);
		}
		goto LA71_;
		LA73_: ;
		{
			if (!eqStrings((*n)._kind_3.lineIndent, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_36))) goto LA76_;
			renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_116), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_117), result);
		}
		goto LA71_;
		LA76_: ;
		{
			NimStringDesc* indent;
			NimStringDesc* T79_;
			NF T80_;
			NimStringDesc* T81_;
			NimStringDesc* T82_;
			NimStringDesc* T83_;
			T79_ = NIM_NIL;
			T80_ = (NF)0;
			T80_ = toFloat__system_1702((NI)(((*n)._kind_3.lineIndent ? (*n)._kind_3.lineIndent->Sup.len : 0) - ((NI) 1)));
			T81_ = NIM_NIL;
			T81_ = dollar___system_3118(((NF)(0.5) * (NF)(T80_)));
			T79_ = rawNewString((T81_ ? T81_->Sup.len : 0) + 2);
appendString(T79_, T81_);
appendString(T79_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_118));
			indent = T79_;
			T82_ = NIM_NIL;
			T82_ = rawNewString((indent ? indent->Sup.len : 0) + 42);
appendString(T82_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_119));
appendString(T82_, indent);
appendString(T82_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_120));
			T83_ = NIM_NIL;
			T83_ = rawNewString((indent ? indent->Sup.len : 0) + 22);
appendString(T83_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_121));
appendString(T83_, indent);
appendString(T83_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_122));
			renderAux__packagesZdocutilsZrstgen_315(d, n, T82_, T83_, result);
		}
		LA71_: ;
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 29):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_123), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_124), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 52):
	{
		renderAdmonition__packagesZdocutilsZrstgen_8419(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 30):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 31):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 32):
	{
		NimStringDesc* T87_;
		NimStringDesc* T88_;
		T87_ = NIM_NIL;
		T88_ = NIM_NIL;
		T88_ = texColumns__packagesZdocutilsZrstgen_8303(n);
		T87_ = rawNewString((T88_ ? T88_->Sup.len : 0) + 42);
appendString(T87_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_156));
appendString(T87_, T88_);
appendString(T87_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_158));
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_155), T87_, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 33):
	{
		{
			NI T92_;
			T92_ = (NI)0;
			T92_ = len__packagesZdocutilsZrstast_102(n);
			if (!(((NI) 1) <= T92_)) goto LA93_;
			{
				if (!((*d).target == ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1))) goto LA97_;
				renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[((NI) 0)], result);
				{
					NI i_2;
					NI colontmp__2;
					NI T100_;
					NI res_2;
					i_2 = (NI)0;
					colontmp__2 = (NI)0;
					T100_ = (NI)0;
					T100_ = len__packagesZdocutilsZrstast_102(n);
					colontmp__2 = (NI)(T100_ - ((NI) 1));
					res_2 = ((NI) 1);
					{
						while (1) {
							if (!(res_2 <= colontmp__2)) goto LA102;
							i_2 = res_2;
							unsureAsgnRef((void**) (&(*result)), resizeString((*result), 3));
appendString((*result), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_159));
							renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[i_2], result);
							res_2 += ((NI) 1);
						} LA102: ;
					}
				}
				unsureAsgnRef((void**) (&(*result)), resizeString((*result), 10));
appendString((*result), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_160));
			}
			goto LA95_;
			LA97_: ;
			{
				unsureAsgnRef((void**) (&(*result)), resizeString((*result), 4));
appendString((*result), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_161));
				renderAux__packagesZdocutilsZrstgen_303(d, n, result);
				unsureAsgnRef((void**) (&(*result)), resizeString((*result), 6));
appendString((*result), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_162));
			}
			LA95_: ;
		}
		LA93_: ;
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 35):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_96), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_93), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 34):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_163), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_164), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 38):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_165), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_166), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 36):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 37):
	{
		NimStringDesc* mark;
		NimStringDesc* body;
		tyArray__sMpvt1sOxOJ3LFGulnbeMQ T108_;
		mark = ((NimStringDesc*) NIM_NIL);
		renderAux__packagesZdocutilsZrstgen_303(d, (*n).sons->data[((NI) 0)], (&mark));
		body = ((NimStringDesc*) NIM_NIL);
		renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[((NI) 1)], (&body));
		nimZeroMem((void*)T108_, sizeof(tyArray__sMpvt1sOxOJ3LFGulnbeMQ));
		T108_[0] = copyString(body);
		{
			if (!(((*n).anchor ? (*n).anchor->Sup.len : 0) == 0)) goto LA111_;
			T108_[1] = ((NimStringDesc*) NIM_NIL);
		}
		goto LA109_;
		LA111_: ;
		{
			switch ((*d).target) {
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 0):
			{
				NimStringDesc* T115_;
				T115_ = NIM_NIL;
				T115_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + 6);
appendString(T115_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_42));
appendString(T115_, (*n).anchor);
appendString(T115_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_43));
				T108_[1] = T115_;
			}
			break;
			case ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1):
			{
				NimStringDesc* T117_;
				T117_ = NIM_NIL;
				T117_ = rawNewString(((*n).anchor ? (*n).anchor->Sup.len : 0) + ((*n).anchor ? (*n).anchor->Sup.len : 0) + 24);
appendString(T117_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_44));
appendString(T117_, (*n).anchor);
appendString(T117_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_45));
appendString(T117_, (*n).anchor);
appendString(T117_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_46));
				T108_[1] = T117_;
			}
			break;
			}
		}
		LA109_: ;
		T108_[2] = copyString(mark);
		T108_[3] = copyString((*n).anchor);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_167), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_168), T108_, 4);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 41):
	{
		renderHyperlink__packagesZdocutilsZrstgen_8428(d, (*n).sons->data[((NI) 0)], (*n).sons->data[((NI) 0)], result, NIM_FALSE);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 39):
	{
		renderHyperlink__packagesZdocutilsZrstgen_8428(d, (*n).sons->data[((NI) 0)], (*n).sons->data[((NI) 0)], result, NIM_TRUE);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 42):
	{
		renderHyperlink__packagesZdocutilsZrstgen_8428(d, (*n).sons->data[((NI) 0)], (*n).sons->data[((NI) 1)], result, NIM_FALSE);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 40):
	{
		renderHyperlink__packagesZdocutilsZrstgen_8428(d, (*n).sons->data[((NI) 0)], (*n).sons->data[((NI) 1)], result, NIM_TRUE);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 43):
	{
		NimStringDesc* tmp_2;
		tyArray__Re75IspeoxXy2oCZHwcRrA T123_;
		tmp_2 = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_177));
		renderAux__packagesZdocutilsZrstgen_303(d, (*n).sons->data[((NI) 0)], (&tmp_2));
		tmp_2 = resizeString(tmp_2, 1);
appendString(tmp_2, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_31));
		nimZeroMem((void*)T123_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T123_[0] = copyString(tmp_2);
		T123_[1] = copyString((*(*n).sons->data[((NI) 1)])._kind_1.text);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_178), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_179), T123_, 2);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 45):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 46):
	{
		renderAux__packagesZdocutilsZrstgen_303(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 53):
	{
		{
			NIM_BOOL T128_;
			tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* T130_;
			tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* T133_;
			NimStringDesc* T134_;
			T128_ = (NIM_BOOL)0;
			T128_ = !(((*d).target == ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1)));
			if (!(T128_)) goto LA129_;
			T130_ = NIM_NIL;
			T130_ = lastSon__packagesZdocutilsZrstast_190(n);
			T128_ = !((T130_ == 0));
			LA129_: ;
			if (!T128_) goto LA131_;
			T133_ = NIM_NIL;
			T133_ = lastSon__packagesZdocutilsZrstast_190(n);
			T134_ = NIM_NIL;
			T134_ = addNodes__packagesZdocutilsZrst_61(T133_);
			unsureAsgnRef((void**) (&(*result)), resizeString((*result), (T134_ ? T134_->Sup.len : 0) + 0));
appendString((*result), T134_);
		}
		LA131_: ;
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 54):
	{
		{
			NIM_BOOL T138_;
			tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* T140_;
			tyObject_RstNode__22EYjMYlm9cWcheQxrewdHQ* T143_;
			NimStringDesc* T144_;
			T138_ = (NIM_BOOL)0;
			T138_ = ((*d).target == ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1));
			if (!(T138_)) goto LA139_;
			T140_ = NIM_NIL;
			T140_ = lastSon__packagesZdocutilsZrstast_190(n);
			T138_ = !((T140_ == 0));
			LA139_: ;
			if (!T138_) goto LA141_;
			T143_ = NIM_NIL;
			T143_ = lastSon__packagesZdocutilsZrstast_190(n);
			T144_ = NIM_NIL;
			T144_ = addNodes__packagesZdocutilsZrst_61(T143_);
			unsureAsgnRef((void**) (&(*result)), resizeString((*result), (T144_ ? T144_->Sup.len : 0) + 0));
appendString((*result), T144_);
		}
		LA141_: ;
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 49):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 50):
	{
		renderImage__packagesZdocutilsZrstgen_8139(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 51):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 58):
	{
		renderCode__packagesZdocutilsZrstgen_8242(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 55):
	{
		renderContainer__packagesZdocutilsZrstgen_8297(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 70):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 57):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_231), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_231), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 44):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) NIM_NIL), ((NimStringDesc*) NIM_NIL), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 60):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 59):
	{
		NimStringDesc* tmp0;
		NimStringDesc* tmp1;
		NimStringDesc* class_1;
		tmp0 = ((NimStringDesc*) NIM_NIL);
		tmp1 = ((NimStringDesc*) NIM_NIL);
		renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[((NI) 0)], (&tmp0));
		renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[((NI) 1)], (&tmp1));
		class_1 = copyString(tmp1);
		{
			NIM_BOOL T153_;
			T153_ = (NIM_BOOL)0;
			T153_ = ((*d).target == ((tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA) 1));
			if (!(T153_)) goto LA154_;
			T153_ = ((*n).kind == ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 60));
			LA154_: ;
			if (!T153_) goto LA155_;
			class_1 = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_232));
		}
		LA155_: ;
		{
			tyArray__Re75IspeoxXy2oCZHwcRrA T161_;
			if (!((*n).kind == ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 59))) goto LA159_;
			nimZeroMem((void*)T161_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
			T161_[0] = copyString(tmp0);
			T161_[1] = copyString(class_1);
			dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_233), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_234), T161_, 2);
		}
		goto LA157_;
		LA159_: ;
		{
			tyArray__Re75IspeoxXy2oCZHwcRrA T163_;
			nimZeroMem((void*)T163_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
			T163_[0] = copyString(tmp0);
			T163_[1] = copyString(class_1);
			dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_32), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_33), T163_, 2);
		}
		LA157_: ;
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 61):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_235), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_236), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 62):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_237), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_238), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 64):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_239), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_240), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 65):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_241), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_164), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 66):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_242), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_243), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 63):
	{
		renderIndexTerm__packagesZdocutilsZrstgen_365(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 68):
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 67):
	{
		renderAux__packagesZdocutilsZrstgen_315(d, n, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_246), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_247), result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 69):
	{
		NimStringDesc* tmp_3;
		tyArray__Re75IspeoxXy2oCZHwcRrA T172_;
		tmp_3 = ((NimStringDesc*) NIM_NIL);
		renderAux__packagesZdocutilsZrstgen_303(d, n, (&tmp_3));
		nimZeroMem((void*)T172_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
		T172_[0] = copyString(tmp_3);
		T172_[1] = rstnodeToRefname__packagesZdocutilsZrst_59(n);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_248), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_249), T172_, 2);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 71):
	{
		renderSmiley__packagesZdocutilsZrstgen_8149(d, n, result);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 73):
	{
		NimStringDesc* T175_;
		T175_ = NIM_NIL;
		T175_ = esc__packagesZdocutilsZrstgen_240((*d).target, (*n)._kind_1.text, ((NI) -1), (*d).escMode);
		unsureAsgnRef((void**) (&(*result)), resizeString((*result), (T175_ ? T175_->Sup.len : 0) + 0));
appendString((*result), T175_);
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 48):
	{
		(*d).hasToc = NIM_TRUE;
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 72):
	{
	}
	break;
	case ((tyEnum_RstNodeKind__DNoJcMFu9cjq4EGXsLl82CQ) 47):
	{
		unsureAsgnRef((void**) (&(*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 1))- 0]), ((NimStringDesc*) NIM_NIL));
		renderRstToOut__packagesZdocutilsZrstgen_299(d, (*n).sons->data[((NI) 0)], (&(*d).meta[(((tyEnum_MetaEnum__16JvqO8FV2pHk38DriGcsw) 1))- 0]));
	}
	break;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, renderTocEntry__packagesZdocutilsZrstgen_8121)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A e, NimStringDesc** result) {
	tyArray__Re75IspeoxXy2oCZHwcRrA T1_;
	nimZeroMem((void*)T1_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
	T1_[0] = copyString(e.refname);
	T1_[1] = copyString(e.header);
	dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_253), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_254), T1_, 2);
}
N_LIB_PRIVATE N_NIMCALL(void, renderTocEntries__packagesZdocutilsZrstgen_8125)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* d, NI* j, NI lvl, NimStringDesc** result) {
	NimStringDesc* tmp;
	tmp = ((NimStringDesc*) NIM_NIL);
	{
		while (1) {
			NI T3_;
			NI a;
			T3_ = (((*d).tocPart ? (*d).tocPart->Sup.len : 0)-1);
			if (!((*j) <= T3_)) goto LA2;
			a = ((*(*d).tocPart->data[(*j)].n)._kind_5.level > 0? ((*(*d).tocPart->data[(*j)].n)._kind_5.level) : -((*(*d).tocPart->data[(*j)].n)._kind_5.level));
			{
				if (!(a == lvl)) goto LA6_;
				renderTocEntry__packagesZdocutilsZrstgen_8121(d, (*d).tocPart->data[(*j)], (&tmp));
				(*j) += ((NI) 1);
			}
			goto LA4_;
			LA6_: ;
			{
				if (!(lvl < a)) goto LA9_;
				renderTocEntries__packagesZdocutilsZrstgen_8125(d, j, a, (&tmp));
			}
			goto LA4_;
			LA9_: ;
			{
				goto LA1;
			}
			LA4_: ;
		} LA2: ;
	} LA1: ;
	{
		tyArray__nHXaesL0DJZHyVS07ARPRA T16_;
		if (!(((NI) 1) < lvl)) goto LA14_;
		nimZeroMem((void*)T16_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
		T16_[0] = copyString(tmp);
		dispA__packagesZdocutilsZrstgen_285((*d).target, result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_255), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_256), T16_, 1);
	}
	goto LA12_;
	LA14_: ;
	{
		unsureAsgnRef((void**) (&(*result)), resizeString((*result), (tmp ? tmp->Sup.len : 0) + 0));
appendString((*result), tmp);
	}
	LA12_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, writeIndexFile__packagesZdocutilsZrstgen_193)(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA* g, NimStringDesc* outfile) {
	{
		if (!(((NI) 0) < ((*g).theIndex ? (*g).theIndex->Sup.len : 0))) goto LA3_;
		writeFile__systemZio_470(outfile, (*g).theIndex);
	}
	LA3_: ;
}
static N_NIMCALL(void, Marker_tySequence__CJOrWaM0fWekVRTE2AotGw)(void* p, NI op) {
	tySequence__CJOrWaM0fWekVRTE2AotGw* a;
	NI T1_;
	a = (tySequence__CJOrWaM0fWekVRTE2AotGw*)p;
	T1_ = (NI)0;
	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
	nimGCvisit((void*)a->data[T1_].keyword, op);
	nimGCvisit((void*)a->data[T1_].link, op);
	nimGCvisit((void*)a->data[T1_].linkTitle, op);
	nimGCvisit((void*)a->data[T1_].linkDesc, op);
	}
}
static N_NIMCALL(void, Marker_tySequence__MVOolrgzxbiYsd7sgvFfFw)(void* p, NI op) {
	tySequence__MVOolrgzxbiYsd7sgvFfFw* a;
	NI T1_;
	a = (tySequence__MVOolrgzxbiYsd7sgvFfFw*)p;
	T1_ = (NI)0;
	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
	nimGCvisit((void*)a->data[T1_].Field1.keyword, op);
	nimGCvisit((void*)a->data[T1_].Field1.link, op);
	nimGCvisit((void*)a->data[T1_].Field1.linkTitle, op);
	nimGCvisit((void*)a->data[T1_].Field1.linkDesc, op);
	nimGCvisit((void*)a->data[T1_].Field2, op);
	}
}
N_LIB_PRIVATE N_NIMCALL(void, initTable__packagesZdocutilsZrstgen_6728)(NI initialSize, tyObject_Table__myGXmFdFAc6beAdGFLRvEQ* Result) {
	NI correctSizeX60gensym81_;
	unsureAsgnRef((void**)&(*Result).data, NIM_NIL);
	(*Result).counter = 0;
	correctSizeX60gensym81_ = slotsNeeded__pureZcollectionsZtables_42(((NI) (initialSize)));
	(*Result).counter = ((NI) 0);
	unsureAsgnRef((void**) (&(*Result).data), (tySequence__MVOolrgzxbiYsd7sgvFfFw*) newSeq((&NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_), ((NI) (correctSizeX60gensym81_))));
}
static N_INLINE(NimStringDesc*, pop__pureZos_1360)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ** s) {
	NimStringDesc* result;
	NI L;
	NI T1_;
	result = NIM_NIL;
	T1_ = ((*s) ? (*s)->Sup.len : 0);
	L = (NI)(T1_ - ((NI) 1));
	result = copyString((*s)->data[L]);
	unsureAsgnRef((void**) (&(*s)), (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) setLengthSeqV2(&((*s))->Sup, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_), ((NI) (L))));
	return result;
}
static N_INLINE(NimStringDesc*, slash___pureZos_121)(NimStringDesc* head, NimStringDesc* tail) {
	NimStringDesc* result;
	result = NIM_NIL;
	result = nosjoinPath(head, tail);
	return result;
}
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s) {
	NCSTRING result;
	result = (NCSTRING)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (s == ((NimStringDesc*) NIM_NIL));
		if (T3_) goto LA4_;
		T3_ = ((*s).Sup.len == ((NI) 0));
		LA4_: ;
		if (!T3_) goto LA5_;
		result = "";
	}
	goto LA1_;
	LA5_: ;
	{
		result = ((NCSTRING) ((*s).data));
	}
	LA1_: ;
	return result;
}
static N_INLINE(void, pushSafePoint)(TSafePoint* s) {
	(*s).prev = excHandler__system_2565;
	excHandler__system_2565 = s;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDocumentationTitle__packagesZdocutilsZrstgen_2057)(NimStringDesc* hyperlink) {
	NIM_BOOL result;
	NI T1_;
	result = (NIM_BOOL)0;
	T1_ = (NI)0;
	T1_ = nsuFindChar(hyperlink, 35, ((NI) 0), ((NI) 0));
	result = (T1_ < ((NI) 0));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, unquoteIndexColumn__packagesZdocutilsZrstgen_332)(NimStringDesc* text) {
	NimStringDesc* result;
	result = NIM_NIL;
	result = multiReplace__pureZstrutils_1682(text, TM__vYBWrr780p7faFzauVMtPg_263, 3);
	return result;
}
static N_INLINE(void, popSafePoint)(void) {
	excHandler__system_2565 = (*excHandler__system_2565).prev;
}
N_LIB_PRIVATE N_NIMCALL(NI, len__packagesZdocutilsZrstgen_5642)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ t) {
	NI result;
	result = (NI)0;
	result = t.counter;
	return result;
}
static N_INLINE(NI, emarkamp___pureZhashes_3)(NI h, NI val) {
	NI result;
	NU h_2;
	NU val_2;
	NU res;
	result = (NI)0;
	h_2 = ((NU) (h));
	val_2 = ((NU) (val));
	res = (NU)((NU64)(h_2) + (NU64)(val_2));
	res = (NU)((NU64)(res) + (NU64)((NU)((NU64)(res) << (NU64)(((NI) 10)))));
	res = (NU)(res ^ (NU)((NU64)(res) >> (NU64)(((NI) 6))));
	result = ((NI) (res));
	return result;
}
static N_INLINE(NI, emarkdollar___pureZhashes_18)(NI h) {
	NI result;
	NU h_2;
	NU res;
	result = (NI)0;
	h_2 = ((NU) (h));
	res = (NU)((NU64)(h_2) + (NU64)((NU)((NU64)(h_2) << (NU64)(((NI) 3)))));
	res = (NU)(res ^ (NU)((NU64)(res) >> (NU64)(((NI) 11))));
	res = (NU)((NU64)(res) + (NU64)((NU)((NU64)(res) << (NU64)(((NI) 15)))));
	result = ((NI) (res));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, hash__packagesZdocutilsZrstgen_1990)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* x) {
	NI result;
	NI T1_;
	NI T2_;
	NI T3_;
	NI T4_;
	result = (NI)0;
	T1_ = (NI)0;
	T1_ = hash__pureZhashes_279((*x).keyword);
	T2_ = (NI)0;
	T2_ = hash__pureZhashes_279((*x).link);
	result = emarkamp___pureZhashes_3(T1_, T2_);
	T3_ = (NI)0;
	T3_ = hash__pureZhashes_279((*x).linkTitle);
	result = emarkamp___pureZhashes_3(result, T3_);
	T4_ = (NI)0;
	T4_ = hash__pureZhashes_279((*x).linkDesc);
	result = emarkamp___pureZhashes_3(result, T4_);
	result = emarkdollar___pureZhashes_18(result);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___packagesZdocutilsZrstgen_6486)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* x, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* y) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		if (!!(eqStrings((*x).keyword, (*y).keyword))) goto LA3_;
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	LA3_: ;
	{
		if (!!(eqStrings((*x).link, (*y).link))) goto LA7_;
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	LA7_: ;
	{
		if (!!(eqStrings((*x).linkTitle, (*y).linkTitle))) goto LA11_;
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	LA11_: ;
	{
		if (!!(eqStrings((*x).linkDesc, (*y).linkDesc))) goto LA15_;
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	LA15_: ;
	result = NIM_TRUE;
	goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, rawGet__packagesZdocutilsZrstgen_6268)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ t, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* key, NI* hc) {
	NI result;
	NI h;
	NI T10_;
{	result = (NI)0;
	(*hc) = hash__packagesZdocutilsZrstgen_1990(key);
	{
		if (!((*hc) == ((NI) 0))) goto LA3_;
		(*hc) = ((NI) 314159265);
	}
	LA3_: ;
	{
		NI T7_;
		T7_ = (t.data ? t.data->Sup.len : 0);
		if (!(T7_ == ((NI) 0))) goto LA8_;
		result = ((NI) -1);
		goto BeforeRet_;
	}
	LA8_: ;
	T10_ = ((t.data ? t.data->Sup.len : 0)-1);
	h = (NI)((*hc) & T10_);
	{
		while (1) {
			NIM_BOOL T13_;
			NI T20_;
			T13_ = (NIM_BOOL)0;
			T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
			if (!T13_) goto LA12;
			{
				NIM_BOOL T16_;
				T16_ = (NIM_BOOL)0;
				T16_ = (t.data->data[h].Field0 == (*hc));
				if (!(T16_)) goto LA17_;
				T16_ = eqeq___packagesZdocutilsZrstgen_6486((&t.data->data[h].Field1), key);
				LA17_: ;
				if (!T16_) goto LA18_;
				result = h;
				goto BeforeRet_;
			}
			LA18_: ;
			T20_ = ((t.data ? t.data->Sup.len : 0)-1);
			h = nextTry__pureZcollectionsZtables_34(h, T20_);
		} LA12: ;
	}
	result = (NI)(((NI) -1) - h);
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, mustRehash__packagesZdocutilsZrstgen_7061)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ t) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NI T2_;
	NI T4_;
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T2_ = (t.data ? t.data->Sup.len : 0);
	T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
	if (T1_) goto LA3_;
	T4_ = (t.data ? t.data->Sup.len : 0);
	T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
	LA3_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, rawInsert__packagesZdocutilsZrstgen_7522)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ* t, tySequence__MVOolrgzxbiYsd7sgvFfFw** data, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* key, tySequence__CJOrWaM0fWekVRTE2AotGw* val, NI hc, NI h) {
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
	NimStringDesc* T4_;
	T1_ = NIM_NIL;
	T1_ = (*data)->data[h].Field1.keyword; (*data)->data[h].Field1.keyword = copyStringRC1((*key).keyword);
	if (T1_) nimGCunrefNoCycle(T1_);
	T2_ = NIM_NIL;
	T2_ = (*data)->data[h].Field1.link; (*data)->data[h].Field1.link = copyStringRC1((*key).link);
	if (T2_) nimGCunrefNoCycle(T2_);
	T3_ = NIM_NIL;
	T3_ = (*data)->data[h].Field1.linkTitle; (*data)->data[h].Field1.linkTitle = copyStringRC1((*key).linkTitle);
	if (T3_) nimGCunrefNoCycle(T3_);
	T4_ = NIM_NIL;
	T4_ = (*data)->data[h].Field1.linkDesc; (*data)->data[h].Field1.linkDesc = copyStringRC1((*key).linkDesc);
	if (T4_) nimGCunrefNoCycle(T4_);
	genericSeqAssign((&(*data)->data[h].Field2), val, (&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_));
	(*data)->data[h].Field0 = hc;
}
N_LIB_PRIVATE N_NIMCALL(void, enlarge__packagesZdocutilsZrstgen_7214)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ* t) {
	tySequence__MVOolrgzxbiYsd7sgvFfFw* n;
	NI T1_;
	tySequence__MVOolrgzxbiYsd7sgvFfFw* T2_;
	n = NIM_NIL;
	T1_ = ((*t).data ? (*t).data->Sup.len : 0);
	n = (tySequence__MVOolrgzxbiYsd7sgvFfFw*) newSeq((&NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_), ((NI) ((NI)(T1_ * ((NI) 2)))));
	T2_ = NIM_NIL;
	T2_ = (*t).data;
	unsureAsgnRef((void**) (&(*t).data), n);
	n = T2_;
	{
		NI i;
		NI colontmp_;
		NI T4_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T4_ = ((n ? n->Sup.len : 0)-1);
		colontmp_ = T4_;
		res = ((NI) 0);
		{
			while (1) {
				NI eh;
				if (!(res <= colontmp_)) goto LA6;
				i = res;
				eh = n->data[i].Field0;
				{
					NIM_BOOL T9_;
					NI j;
					NI T12_;
					tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A T17_;
					tySequence__CJOrWaM0fWekVRTE2AotGw* T18_;
					T9_ = (NIM_BOOL)0;
					T9_ = isFilled__pureZcollectionsZtables_31(eh);
					if (!T9_) goto LA10_;
					T12_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
					j = (NI)(eh & T12_);
					{
						while (1) {
							NIM_BOOL T15_;
							NI T16_;
							T15_ = (NIM_BOOL)0;
							T15_ = isFilled__pureZcollectionsZtables_31((*t).data->data[j].Field0);
							if (!T15_) goto LA14;
							T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
							j = nextTry__pureZcollectionsZtables_34(j, T16_);
						} LA14: ;
					}
					nimZeroMem((void*)(&T17_), sizeof(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A));
					T17_.keyword = n->data[i].Field1.keyword;
					T17_.link = n->data[i].Field1.link;
					T17_.linkTitle = n->data[i].Field1.linkTitle;
					T17_.linkDesc = n->data[i].Field1.linkDesc;
					unsureAsgnRef((void**)&n->data[i].Field1.keyword, NIM_NIL);
					unsureAsgnRef((void**)&n->data[i].Field1.link, NIM_NIL);
					unsureAsgnRef((void**)&n->data[i].Field1.linkTitle, NIM_NIL);
					unsureAsgnRef((void**)&n->data[i].Field1.linkDesc, NIM_NIL);
					T18_ = NIM_NIL;
					T18_ = n->data[i].Field2;
					asgnRef((void**) (&n->data[i].Field2), NIM_NIL);
					rawInsert__packagesZdocutilsZrstgen_7522(t, (&(*t).data), (&T17_), T18_, eh, j);
				}
				LA10_: ;
				res += ((NI) 1);
			} LA6: ;
		}
	}
}
static N_INLINE(NI, rawGetKnownHC__packagesZdocutilsZrstgen_7691)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ t, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* key, NI hc) {
	NI result;
	NI h;
	NI T6_;
{	result = (NI)0;
	{
		NI T3_;
		T3_ = (t.data ? t.data->Sup.len : 0);
		if (!(T3_ == ((NI) 0))) goto LA4_;
		result = ((NI) -1);
		goto BeforeRet_;
	}
	LA4_: ;
	T6_ = ((t.data ? t.data->Sup.len : 0)-1);
	h = (NI)(hc & T6_);
	{
		while (1) {
			NIM_BOOL T9_;
			NI T16_;
			T9_ = (NIM_BOOL)0;
			T9_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
			if (!T9_) goto LA8;
			{
				NIM_BOOL T12_;
				T12_ = (NIM_BOOL)0;
				T12_ = (t.data->data[h].Field0 == hc);
				if (!(T12_)) goto LA13_;
				T12_ = eqeq___packagesZdocutilsZrstgen_6486((&t.data->data[h].Field1), key);
				LA13_: ;
				if (!T12_) goto LA14_;
				result = h;
				goto BeforeRet_;
			}
			LA14_: ;
			T16_ = ((t.data ? t.data->Sup.len : 0)-1);
			h = nextTry__pureZcollectionsZtables_34(h, T16_);
		} LA8: ;
	}
	result = (NI)(((NI) -1) - h);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___packagesZdocutilsZrstgen_6888)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ* t, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* key, tySequence__CJOrWaM0fWekVRTE2AotGw* val) {
	NI hc;
	NI index;
	{
		NI T3_;
		NI correctSizeX60gensym91_;
		T3_ = ((*t).data ? (*t).data->Sup.len : 0);
		if (!(T3_ == ((NI) 0))) goto LA4_;
		correctSizeX60gensym91_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
		(*t).counter = ((NI) 0);
		unsureAsgnRef((void**) (&(*t).data), (tySequence__MVOolrgzxbiYsd7sgvFfFw*) newSeq((&NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_), ((NI) (correctSizeX60gensym91_))));
	}
	LA4_: ;
	hc = (NI)0;
	index = rawGet__packagesZdocutilsZrstgen_6268((*t), key, (&hc));
	{
		if (!(((NI) 0) <= index)) goto LA8_;
		genericSeqAssign((&(*t).data->data[index].Field2), val, (&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_));
	}
	goto LA6_;
	LA8_: ;
	{
		{
			NI T13_;
			NI correctSizeX60gensym94_;
			T13_ = ((*t).data ? (*t).data->Sup.len : 0);
			if (!(T13_ == ((NI) 0))) goto LA14_;
			correctSizeX60gensym94_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
			(*t).counter = ((NI) 0);
			unsureAsgnRef((void**) (&(*t).data), (tySequence__MVOolrgzxbiYsd7sgvFfFw*) newSeq((&NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_), ((NI) (correctSizeX60gensym94_))));
		}
		LA14_: ;
		{
			NIM_BOOL T18_;
			T18_ = (NIM_BOOL)0;
			T18_ = mustRehash__packagesZdocutilsZrstgen_7061((*t));
			if (!T18_) goto LA19_;
			enlarge__packagesZdocutilsZrstgen_7214(t);
			index = rawGetKnownHC__packagesZdocutilsZrstgen_7691((*t), key, hc);
		}
		LA19_: ;
		index = (NI)(((NI) -1) - index);
		rawInsert__packagesZdocutilsZrstgen_7522(t, (&(*t).data), key, val, hc, index);
		(*t).counter += ((NI) 1);
	}
	LA6_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, readIndexDir__packagesZdocutilsZrstgen_6718)(NimStringDesc* dir, tyTuple__Rf49c4BJ4LYwQucz9a7JHOmA* Result) {
	NI L;
	tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA T143_;
	unsureAsgnRef((void**)&(*Result).Field0, NIM_NIL);
	unsureAsgnRef((void**)&(*Result).Field1, NIM_NIL);
	unsureAsgnRef((void**)&(*Result).Field2.data, NIM_NIL);
	(*Result).Field2.counter = 0;
	unsureAsgnRef((void**) (&(*Result).Field0), NIM_NIL);
	initTable__packagesZdocutilsZrstgen_6728(((NI) 32), (&(*Result).Field2));
	unsureAsgnRef((void**) (&(*Result).Field1), (tySequence__CJOrWaM0fWekVRTE2AotGw*) newSeq((&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_), ((NI) 15000)));
	unsureAsgnRef((void**) (&(*Result).Field1), (tySequence__CJOrWaM0fWekVRTE2AotGw*) setLengthSeqV2(&((*Result).Field1)->Sup, (&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_), ((NI) 0)));
	L = ((NI) 0);
	{
		NimStringDesc* path;
		tySequence__sM4lkSb7zS6F7OVMvW9cffQ* stack;
		NIM_BOOL checkDir;
		path = NIM_NIL;
		stack = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) newSeq((&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_), 1);
		asgnRef((void**) (&stack->data[0]), ((NimStringDesc*) NIM_NIL));
		checkDir = NIM_FALSE;
		{
			while (1) {
				NI T4_;
				NimStringDesc* d;
				T4_ = (stack ? stack->Sup.len : 0);
				if (!(((NI) 0) < T4_)) goto LA3;
				d = pop__pureZos_1360((&stack));
				{
					tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg k;
					NimStringDesc* p;
					NimStringDesc* colontmp_;
					DIR* d_2;
					k = (tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg)0;
					p = NIM_NIL;
					colontmp_ = NIM_NIL;
					colontmp_ = slash___pureZos_121(dir, d);
					d_2 = opendir(nimToCStringConv(colontmp_));
					{
						if (!(d_2 == ((DIR*) NIM_NIL))) goto LA8_;
						{
							NI32 T14_;
							if (!checkDir) goto LA12_;
							T14_ = (NI32)0;
							T14_ = osLastError__pureZos_408();
							raiseOSError__pureZos_405(T14_, colontmp_);
						}
						LA12_: ;
					}
					goto LA6_;
					LA8_: ;
					{
						TSafePoint TM__vYBWrr780p7faFzauVMtPg_259;
						pushSafePoint(&TM__vYBWrr780p7faFzauVMtPg_259);
						TM__vYBWrr780p7faFzauVMtPg_259.status = setjmp(TM__vYBWrr780p7faFzauVMtPg_259.context);
						if (TM__vYBWrr780p7faFzauVMtPg_259.status == 0) {
						{
							while (1) {
								{
									struct dirent* x;
									NimStringDesc* y;
									x = readdir(d_2);
									{
										if (!(x == ((struct dirent*) NIM_NIL))) goto LA21_;
										goto LA16;
									}
									LA21_: ;
									y = cstrToNimstr(((NCSTRING) ((*x).d_name)));
									{
										NIM_BOOL T25_;
										struct stat s;
										NimStringDesc* path_2;
										tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg k_2;
										NimStringDesc* rel;
										T25_ = (NIM_BOOL)0;
										T25_ = !(eqStrings(y, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_260)));
										if (!(T25_)) goto LA26_;
										T25_ = !(eqStrings(y, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_38)));
										LA26_: ;
										if (!T25_) goto LA27_;
										nimZeroMem((void*)(&s), sizeof(struct stat));
										path_2 = slash___pureZos_121(colontmp_, y);
										{
											if (!NIM_FALSE) goto LA31_;
											y = copyString(path_2);
										}
										LA31_: ;
										k_2 = ((tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg) 0);
										switch ((*x).d_type) {
										case ((NI) 4):
										{
											k_2 = ((tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg) 2);
										}
										break;
										case ((NI) 10):
										{
											{
												NIM_BOOL T37_;
												T37_ = (NIM_BOOL)0;
												T37_ = nosdirExists(path_2);
												if (!T37_) goto LA38_;
												k_2 = ((tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg) 3);
											}
											goto LA35_;
											LA38_: ;
											{
												k_2 = ((tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg) 1);
											}
											LA35_: ;
										}
										break;
										case ((NI) 0):
										{
											{
												int T44_;
												T44_ = (int)0;
												T44_ = lstat(nimToCStringConv(path_2), (&s));
												if (!(T44_ < ((NI32) 0))) goto LA45_;
												goto LA18;
											}
											goto LA42_;
											LA45_: ;
											{
												NIM_BOOL T48_;
												T48_ = (NIM_BOOL)0;
												T48_ = S_ISDIR(s.st_mode);
												if (!T48_) goto LA49_;
												k_2 = ((tyEnum_PathComponent__9c1SIU9cO1wHcl09b703A9cDrg) 2);
											}
											goto LA42_;
											LA49_: ;
											{
												NIM_BOOL T52_;
												T52_ = (NIM_BOOL)0;
												T52_ = S_ISLNK(s.st_mode);
												if (!T52_) goto LA53_;
												k_2 = getSymlinkFileKind__pureZos_1218(path_2);
											}
											goto LA42_;
											LA53_: ;
											LA42_: ;
										}
										break;
										default:
										{
										}
										break;
										}
										k = k_2;
										p = y;
										rel = slash___pureZos_121(d, p);
										{
											NIM_BOOL T58_;
											NI T62_;
											NimStringDesc* T63_;
											T58_ = (NIM_BOOL)0;
											T58_ = ((12 &((NU8)1<<((NU)(k)&7U)))!=0);
											if (!(T58_)) goto LA59_;
											T58_ = ((4 &((NU8)1<<((NU)(k)&7U)))!=0);
											LA59_: ;
											if (!T58_) goto LA60_;
											stack = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(stack), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
											T62_ = stack->Sup.len++;
											T63_ = NIM_NIL;
											T63_ = stack->data[T62_]; stack->data[T62_] = copyStringRC1(rel);
											if (T63_) nimGCunrefNoCycle(T63_);
										}
										LA60_: ;
										{
											if (!((1 &((NU8)1<<((NU)(k)&7U)))!=0)) goto LA66_;
											{
												if (!NIM_FALSE) goto LA70_;
												path = rel;
											}
											goto LA68_;
											LA70_: ;
											{
												path = slash___pureZos_121(dir, rel);
											}
											LA68_: ;
											{
												NIM_BOOL T75_;
												tySequence__CJOrWaM0fWekVRTE2AotGw* fileEntries;
												tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A title;
												NI f;
												T75_ = (NIM_BOOL)0;
												T75_ = nsuEndsWith(path, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_261));
												if (!T75_) goto LA76_;
												fileEntries = NIM_NIL;
												nimZeroMem((void*)(&title), sizeof(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A));
												f = ((NI) 0);
												fileEntries = (tySequence__CJOrWaM0fWekVRTE2AotGw*) newSeq((&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_), ((NI) 500));
												fileEntries = (tySequence__CJOrWaM0fWekVRTE2AotGw*) setLengthSeqV2(&(fileEntries)->Sup, (&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_), ((NI) 0));
												{
													NimStringDesc* line;
													FILE* f_2;
													TSafePoint TM__vYBWrr780p7faFzauVMtPg_262;
													NimStringDesc* res;
													line = NIM_NIL;
													f_2 = open__systemZio_430(path, ((tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg) 0), ((NI) 8000));
													pushSafePoint(&TM__vYBWrr780p7faFzauVMtPg_262);
													TM__vYBWrr780p7faFzauVMtPg_262.status = setjmp(TM__vYBWrr780p7faFzauVMtPg_262.context);
													if (TM__vYBWrr780p7faFzauVMtPg_262.status == 0) {
													res = rawNewString(((NI) 80));
													{
														while (1) {
															NIM_BOOL T81_;
															T81_ = (NIM_BOOL)0;
															T81_ = readLine__systemZio_238(f_2, (&res));
															if (!T81_) goto LA80;
															line = res;
															{
																NI s_2;
																s_2 = nsuFindChar(line, 9, ((NI) 0), ((NI) 0));
																{
																	if (!(s_2 < ((NI) 0))) goto LA85_;
																	goto LA82;
																}
																LA85_: ;
																fileEntries = (tySequence__CJOrWaM0fWekVRTE2AotGw*) setLengthSeqV2(&(fileEntries)->Sup, (&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_), ((NI) ((NI)(f + ((NI) 1)))));
																asgnRef((void**) (&fileEntries->data[f].keyword), substr__system_7773(line, ((NI) 0), (NI)(s_2 - ((NI) 1))));
																asgnRef((void**) (&fileEntries->data[f].link), substr__system_7785(line, (NI)(s_2 + ((NI) 1))));
																{
																	NIM_BOOL T89_;
																	T89_ = (NIM_BOOL)0;
																	T89_ = ((title.keyword ? title.keyword->Sup.len : 0) == ((NI) 0));
																	if (!(T89_)) goto LA90_;
																	T89_ = isDocumentationTitle__packagesZdocutilsZrstgen_2057(fileEntries->data[f].link);
																	LA90_: ;
																	if (!T89_) goto LA91_;
																	title.keyword = copyString(fileEntries->data[f].keyword);
																	title.link = copyString(fileEntries->data[f].link);
																}
																LA91_: ;
																{
																	NI T95_;
																	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCols;
																	NimStringDesc* T98_;
																	T95_ = (NI)0;
																	T95_ = nsuFindChar(fileEntries->data[f].link, 9, ((NI) 0), ((NI) 0));
																	if (!(((NI) 0) < T95_)) goto LA96_;
																	extraCols = nsuSplitChar(fileEntries->data[f].link, 9, ((NI) -1));
																	T98_ = NIM_NIL;
																	T98_ = fileEntries->data[f].link; fileEntries->data[f].link = copyStringRC1(extraCols->data[((NI) 0)]);
																	if (T98_) nimGCunrefNoCycle(T98_);
																	asgnRef((void**) (&fileEntries->data[f].linkTitle), unquoteIndexColumn__packagesZdocutilsZrstgen_332(extraCols->data[((NI) 1)]));
																	asgnRef((void**) (&fileEntries->data[f].linkDesc), unquoteIndexColumn__packagesZdocutilsZrstgen_332(extraCols->data[((NI) 2)]));
																}
																goto LA93_;
																LA96_: ;
																{
																	asgnRef((void**) (&fileEntries->data[f].linkTitle), ((NimStringDesc*) NIM_NIL));
																	asgnRef((void**) (&fileEntries->data[f].linkDesc), ((NimStringDesc*) NIM_NIL));
																}
																LA93_: ;
																f += ((NI) 1);
															} LA82: ;
														} LA80: ;
													}
													popSafePoint();
													}
													else {
														popSafePoint();
													}
													{
														close__systemZio_217(f_2);
														if (TM__vYBWrr780p7faFzauVMtPg_262.status != 0) nimLeaveFinally();
													}
													if (TM__vYBWrr780p7faFzauVMtPg_262.status != 0) reraiseException();
												}
												{
													if (!((title.keyword ? title.keyword->Sup.len : 0) == ((NI) 0))) goto LA104_;
													{
														NI i;
														NI i_2;
														i = (NI)0;
														i_2 = ((NI) 0);
														{
															while (1) {
																if (!(i_2 < f)) goto LA108;
																i = i_2;
																{
																	NimStringDesc* toc;
																	NimStringDesc* T116_;
																	NimStringDesc* T117_;
																	NimStringDesc* T118_;
																	NimStringDesc* T119_;
																	toc = fileEntries->data[i].linkTitle;
																	{
																		NIM_BOOL T112_;
																		T112_ = (NIM_BOOL)0;
																		T112_ = (((NI) 0) < (toc ? toc->Sup.len : 0));
																		if (!(T112_)) goto LA113_;
																		T112_ = ((NU8)(toc->data[((NI) 0)]) == (NU8)(32));
																		LA113_: ;
																		if (!T112_) goto LA114_;
																		goto LA109;
																	}
																	LA114_: ;
																	unsureAsgnRef((void**) (&(*Result).Field1), (tySequence__CJOrWaM0fWekVRTE2AotGw*) setLengthSeqV2(&((*Result).Field1)->Sup, (&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_), ((NI) ((NI)(L + ((NI) 1))))));
																	T116_ = NIM_NIL;
																	T116_ = (*Result).Field1->data[L].keyword; (*Result).Field1->data[L].keyword = copyStringRC1(fileEntries->data[i].keyword);
																	if (T116_) nimGCunrefNoCycle(T116_);
																	T117_ = NIM_NIL;
																	T117_ = (*Result).Field1->data[L].link; (*Result).Field1->data[L].link = copyStringRC1(fileEntries->data[i].link);
																	if (T117_) nimGCunrefNoCycle(T117_);
																	T118_ = NIM_NIL;
																	T118_ = (*Result).Field1->data[L].linkTitle; (*Result).Field1->data[L].linkTitle = copyStringRC1(fileEntries->data[i].linkTitle);
																	if (T118_) nimGCunrefNoCycle(T118_);
																	T119_ = NIM_NIL;
																	T119_ = (*Result).Field1->data[L].linkDesc; (*Result).Field1->data[L].linkDesc = copyStringRC1(fileEntries->data[i].linkDesc);
																	if (T119_) nimGCunrefNoCycle(T119_);
																	L += ((NI) 1);
																} LA109: ;
																i_2 += ((NI) 1);
															} LA108: ;
														}
													}
													{
														NI T122_;
														NimStringDesc* x_2;
														NI i_3;
														T122_ = (fileEntries ? fileEntries->Sup.len : 0);
														if (!(((NI) 0) < T122_)) goto LA123_;
														x_2 = copyString(fileEntries->data[((NI) 0)].link);
														i_3 = nsuFindChar(x_2, 35, ((NI) 0), ((NI) 0));
														{
															if (!(((NI) 0) < i_3)) goto LA127_;
															x_2 = setLengthStr(x_2, ((NI) (i_3)));
														}
														LA127_: ;
														{
															NimStringDesc* T133_;
															NI T134_;
															NimStringDesc* T135_;
															if (!!((i_3 == ((NI) 0)))) goto LA131_;
															T133_ = NIM_NIL;
															T133_ = noschangeFileExt(x_2, ((NimStringDesc*) NIM_NIL));
															unsureAsgnRef((void**) (&(*Result).Field0), (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)((*Result).Field0), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_)));
															T134_ = (*Result).Field0->Sup.len++;
															T135_ = NIM_NIL;
															T135_ = (*Result).Field0->data[T134_]; (*Result).Field0->data[T134_] = copyStringRC1(T133_);
															if (T135_) nimGCunrefNoCycle(T135_);
														}
														LA131_: ;
													}
													LA123_: ;
												}
												goto LA102_;
												LA104_: ;
												{
													NimStringDesc* T137_;
													NI T138_;
													NimStringDesc* T139_;
													T137_ = NIM_NIL;
													T138_ = (NI)0;
													T138_ = len__packagesZdocutilsZrstgen_5642((*Result).Field2);
													T139_ = NIM_NIL;
													T139_ = dollar___systemZdollars_3(T138_);
													T137_ = rawNewString((T139_ ? T139_->Sup.len : 0) + 8);
appendString(T137_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_266));
appendString(T137_, T139_);
													title.linkTitle = T137_;
													X5BX5Deq___packagesZdocutilsZrstgen_6888((&(*Result).Field2), (&title), fileEntries);
												}
												LA102_: ;
											}
											LA76_: ;
										}
										LA66_: ;
									}
									LA27_: ;
								} LA18: ;
							}
						} LA16: ;
						popSafePoint();
						}
						else {
							popSafePoint();
						}
						{
							int T142_;
							T142_ = (int)0;
							T142_ = closedir(d_2);
							(void)(T142_);
							if (TM__vYBWrr780p7faFzauVMtPg_259.status != 0) nimLeaveFinally();
						}
						if (TM__vYBWrr780p7faFzauVMtPg_259.status != 0) reraiseException();
					}
					LA6_: ;
				}
				checkDir = NIM_FALSE;
			} LA3: ;
		}
	}
	nimZeroMem((void*)(&T143_), sizeof(tyProc__3pmh9bG9bLpdxUjFu9cDtbZaA));
	T143_.ClP_0 = ((TM__vYBWrr780p7faFzauVMtPg_267) (cmp__system_1549)); T143_.ClE_0 = NIM_NIL;
	sort__sem_1803((*Result).Field0->data, ((*Result).Field0 ? (*Result).Field0->Sup.len : 0), T143_, ((tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA) 1));
}
N_LIB_PRIVATE N_NIMCALL(tySequence__CJOrWaM0fWekVRTE2AotGw*, newSeq__packagesZdocutilsZrstgen_6119)(NI len) {
	tySequence__CJOrWaM0fWekVRTE2AotGw* result;
	result = NIM_NIL;
	result = (tySequence__CJOrWaM0fWekVRTE2AotGw*) newSeq((&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_), len);
	return result;
}
static N_INLINE(NI, star___pureZalgorithm_8)(NI x, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
	NI result;
	NI y;
	result = (NI)0;
	y = (NI)(order - ((NI) 1));
	result = (NI)((NI)(x ^ y) - y);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, mergeAlt__packagesZdocutilsZrstgen_6130)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* a, NI aLen_0, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* b, NI bLen_0, NI lo, NI m, NI hi, tyProc__dyWamSxQI9aSIOZWO07sqOA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
	NI j;
	NI bb;
	NI i;
	NI k;
{	{
		NI T3_;
		NI T4_;
		T3_ = (NI)0;
		T3_ = cmp.ClE_0? cmp.ClP_0((&a[m]), (&a[(NI)(m + ((NI) 1))]), cmp.ClE_0):((TM__vYBWrr780p7faFzauVMtPg_269)(cmp.ClP_0))((&a[m]), (&a[(NI)(m + ((NI) 1))]));
		T4_ = (NI)0;
		T4_ = star___pureZalgorithm_8(T3_, order);
		if (!(T4_ <= ((NI) 0))) goto LA5_;
		goto BeforeRet_;
	}
	LA5_: ;
	j = lo;
	bb = ((NI) 0);
	{
		while (1) {
			if (!(j <= m)) goto LA8;
			unsureAsgnRef((void**) (&b[bb].keyword), a[j].keyword);
			unsureAsgnRef((void**) (&b[bb].link), a[j].link);
			unsureAsgnRef((void**) (&b[bb].linkTitle), a[j].linkTitle);
			unsureAsgnRef((void**) (&b[bb].linkDesc), a[j].linkDesc);
			bb += ((NI) 1);
			j += ((NI) 1);
		} LA8: ;
	}
	i = ((NI) 0);
	k = lo;
	{
		while (1) {
			NIM_BOOL T11_;
			T11_ = (NIM_BOOL)0;
			T11_ = (k < j);
			if (!(T11_)) goto LA12_;
			T11_ = (j <= hi);
			LA12_: ;
			if (!T11_) goto LA10;
			{
				NI T15_;
				NI T16_;
				T15_ = (NI)0;
				T15_ = cmp.ClE_0? cmp.ClP_0((&b[i]), (&a[j]), cmp.ClE_0):((TM__vYBWrr780p7faFzauVMtPg_270)(cmp.ClP_0))((&b[i]), (&a[j]));
				T16_ = (NI)0;
				T16_ = star___pureZalgorithm_8(T15_, order);
				if (!(T16_ <= ((NI) 0))) goto LA17_;
				unsureAsgnRef((void**) (&a[k].keyword), b[i].keyword);
				unsureAsgnRef((void**) (&a[k].link), b[i].link);
				unsureAsgnRef((void**) (&a[k].linkTitle), b[i].linkTitle);
				unsureAsgnRef((void**) (&a[k].linkDesc), b[i].linkDesc);
				i += ((NI) 1);
			}
			goto LA13_;
			LA17_: ;
			{
				unsureAsgnRef((void**) (&a[k].keyword), a[j].keyword);
				unsureAsgnRef((void**) (&a[k].link), a[j].link);
				unsureAsgnRef((void**) (&a[k].linkTitle), a[j].linkTitle);
				unsureAsgnRef((void**) (&a[k].linkDesc), a[j].linkDesc);
				j += ((NI) 1);
			}
			LA13_: ;
			k += ((NI) 1);
		} LA10: ;
	}
	{
		while (1) {
			if (!(k < j)) goto LA21;
			unsureAsgnRef((void**) (&a[k].keyword), b[i].keyword);
			unsureAsgnRef((void**) (&a[k].link), b[i].link);
			unsureAsgnRef((void**) (&a[k].linkTitle), b[i].linkTitle);
			unsureAsgnRef((void**) (&a[k].linkDesc), b[i].linkDesc);
			k += ((NI) 1);
			i += ((NI) 1);
		} LA21: ;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, sort__packagesZdocutilsZrstgen_6108)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* a, NI aLen_0, tyProc__dyWamSxQI9aSIOZWO07sqOA cmp, tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA order) {
	NI n;
	tySequence__CJOrWaM0fWekVRTE2AotGw* b;
	NI s;
	n = aLen_0;
	b = newSeq__packagesZdocutilsZrstgen_6119(((NI) ((NI)(n / ((NI) 2)))));
	s = ((NI) 1);
	{
		while (1) {
			NI m;
			if (!(s < n)) goto LA2;
			m = (NI)((NI)(n - ((NI) 1)) - s);
			{
				while (1) {
					if (!(((NI) 0) <= m)) goto LA4;
					mergeAlt__packagesZdocutilsZrstgen_6130(a, aLen_0, b->data, (b ? b->Sup.len : 0), (((NI)((NI)(m - s) + ((NI) 1)) >= ((NI) 0)) ? (NI)((NI)(m - s) + ((NI) 1)) : ((NI) 0)), m, (NI)(m + s), cmp, order);
					m -= (NI)(s * ((NI) 2));
				} LA4: ;
			}
			s = (NI)(s * ((NI) 2));
		} LA2: ;
	}
}
N_LIB_PRIVATE N_NIMCALL(NI, cmp__packagesZdocutilsZrstgen_1986)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* a, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* b) {
	NI result;
	result = (NI)0;
	result = nsuCmpIgnoreStyle((*a).keyword, (*b).keyword);
	{
		if (!(result == ((NI) 0))) goto LA3_;
		result = nsuCmpIgnoreStyle((*a).link, (*b).link);
	}
	LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, generateDocumentationJumps__packagesZdocutilsZrstgen_6581)(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ docs) {
	NimStringDesc* result;
	tySequence__CJOrWaM0fWekVRTE2AotGw* titles;
	tySequence__CJOrWaM0fWekVRTE2AotGw* resultX60gensym80_;
	tyProc__dyWamSxQI9aSIOZWO07sqOA T16_;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* chunks;
	NimStringDesc* T24_;
	NimStringDesc* T25_;
	result = NIM_NIL;
	result = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_268));
	resultX60gensym80_ = NIM_NIL;
	{
		tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* xX60gensym80_;
		NI L;
		xX60gensym80_ = (tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A*)0;
		L = len__packagesZdocutilsZrstgen_5642(docs);
		{
			NI h;
			NI colontmp_;
			NI T3_;
			NI res;
			h = (NI)0;
			colontmp_ = (NI)0;
			T3_ = ((docs.data ? docs.data->Sup.len : 0)-1);
			colontmp_ = T3_;
			res = ((NI) 0);
			{
				while (1) {
					if (!(res <= colontmp_)) goto LA5;
					h = res;
					{
						NIM_BOOL T8_;
						NI T11_;
						NimStringDesc* T12_;
						NimStringDesc* T13_;
						NimStringDesc* T14_;
						NimStringDesc* T15_;
						T8_ = (NIM_BOOL)0;
						T8_ = isFilled__pureZcollectionsZtables_31(docs.data->data[h].Field0);
						if (!T8_) goto LA9_;
						xX60gensym80_ = (&docs.data->data[h].Field1);
						resultX60gensym80_ = (tySequence__CJOrWaM0fWekVRTE2AotGw*) incrSeqV3((TGenericSeq*)(resultX60gensym80_), (&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_));
						T11_ = resultX60gensym80_->Sup.len++;
						T12_ = NIM_NIL;
						T12_ = resultX60gensym80_->data[T11_].keyword; resultX60gensym80_->data[T11_].keyword = copyStringRC1((*xX60gensym80_).keyword);
						if (T12_) nimGCunrefNoCycle(T12_);
						T13_ = NIM_NIL;
						T13_ = resultX60gensym80_->data[T11_].link; resultX60gensym80_->data[T11_].link = copyStringRC1((*xX60gensym80_).link);
						if (T13_) nimGCunrefNoCycle(T13_);
						T14_ = NIM_NIL;
						T14_ = resultX60gensym80_->data[T11_].linkTitle; resultX60gensym80_->data[T11_].linkTitle = copyStringRC1((*xX60gensym80_).linkTitle);
						if (T14_) nimGCunrefNoCycle(T14_);
						T15_ = NIM_NIL;
						T15_ = resultX60gensym80_->data[T11_].linkDesc; resultX60gensym80_->data[T11_].linkDesc = copyStringRC1((*xX60gensym80_).linkDesc);
						if (T15_) nimGCunrefNoCycle(T15_);
					}
					LA9_: ;
					res += ((NI) 1);
				} LA5: ;
			}
		}
	}
	genericSeqAssign((&titles), resultX60gensym80_, (&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_));
	nimZeroMem((void*)(&T16_), sizeof(tyProc__dyWamSxQI9aSIOZWO07sqOA));
	T16_.ClP_0 = ((TM__vYBWrr780p7faFzauVMtPg_271) (cmp__packagesZdocutilsZrstgen_1986)); T16_.ClE_0 = NIM_NIL;
	sort__packagesZdocutilsZrstgen_6108(titles->data, (titles ? titles->Sup.len : 0), T16_, ((tyEnum_SortOrder__8iBc6wlNqBa9cju9cUAhUAxA) 1));
	chunks = NIM_NIL;
	{
		tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* title;
		NI i;
		NI L_2;
		NI T18_;
		title = (tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A*)0;
		i = ((NI) 0);
		T18_ = (titles ? titles->Sup.len : 0);
		L_2 = T18_;
		{
			while (1) {
				NimStringDesc* T21_;
				NI T22_;
				NimStringDesc* T23_;
				if (!(i < L_2)) goto LA20;
				title = (&titles->data[i]);
				T21_ = NIM_NIL;
				T21_ = rawNewString(((*title).link ? (*title).link->Sup.len : 0) + ((*title).keyword ? (*title).keyword->Sup.len : 0) + 15);
appendString(T21_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_272));
appendString(T21_, (*title).link);
appendString(T21_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_146));
appendString(T21_, (*title).keyword);
appendString(T21_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_273));
				chunks = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(chunks), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
				T22_ = chunks->Sup.len++;
				T23_ = NIM_NIL;
				T23_ = chunks->data[T22_]; chunks->data[T22_] = copyStringRC1(T21_);
				if (T23_) nimGCunrefNoCycle(T23_);
				i += ((NI) 1);
			} LA20: ;
		}
	}
	T24_ = NIM_NIL;
	T25_ = NIM_NIL;
	T25_ = nsuJoinSep(chunks->data, (chunks ? chunks->Sup.len : 0), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_274));
	T24_ = rawNewString((T25_ ? T25_->Sup.len : 0) + 6);
appendString(T24_, T25_);
appendString(T24_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_275));
	result = resizeString(result, (T24_ ? T24_->Sup.len : 0) + 0);
appendString(result, T24_);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, generateModuleJumps__packagesZdocutilsZrstgen_6702)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* modules) {
	NimStringDesc* result;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* chunks;
	NimStringDesc* T9_;
	NimStringDesc* T10_;
	result = NIM_NIL;
	result = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_277));
	chunks = NIM_NIL;
	{
		NimStringDesc** name;
		NI i;
		NI L;
		NI T2_;
		name = (NimStringDesc**)0;
		i = ((NI) 0);
		T2_ = (modules ? modules->Sup.len : 0);
		L = T2_;
		{
			while (1) {
				tyArray__Re75IspeoxXy2oCZHwcRrA T5_;
				NimStringDesc* T6_;
				NI T7_;
				NimStringDesc* T8_;
				if (!(i < L)) goto LA4;
				name = (&modules->data[i]);
				nimZeroMem((void*)T5_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
				T5_[0] = copyString((*name));
				T5_[1] = prettyLink__packagesZdocutilsZrstgen_85((*name));
				T6_ = NIM_NIL;
				T6_ = nsuFormatOpenArray(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_278), T5_, 2);
				chunks = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV3((TGenericSeq*)(chunks), (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
				T7_ = chunks->Sup.len++;
				T8_ = NIM_NIL;
				T8_ = chunks->data[T7_]; chunks->data[T7_] = copyStringRC1(T6_);
				if (T8_) nimGCunrefNoCycle(T8_);
				i += ((NI) 1);
			} LA4: ;
		}
	}
	T9_ = NIM_NIL;
	T10_ = NIM_NIL;
	T10_ = nsuJoinSep(chunks->data, (chunks ? chunks->Sup.len : 0), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_274));
	T9_ = rawNewString((T10_ ? T10_->Sup.len : 0) + 6);
appendString(T9_, T10_);
appendString(T9_, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_275));
	result = resizeString(result, (T9_ ? T9_->Sup.len : 0) + 0);
appendString(result, T9_);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, ltminus___packagesZdocutilsZrstgen_1993)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* a, tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* b) {
	unsureAsgnRef((void**) (&(*a).keyword), (*b).keyword);
	unsureAsgnRef((void**) (&(*a).link), (*b).link);
	unsureAsgnRef((void**) (&(*a).linkTitle), (*b).linkTitle);
	unsureAsgnRef((void**) (&(*a).linkDesc), (*b).linkDesc);
}
N_LIB_PRIVATE N_NIMCALL(void, sortIndex__packagesZdocutilsZrstgen_1996)(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A* a, NI aLen_0) {
	NI n;
	NI h;
	n = aLen_0;
	h = ((NI) 1);
	{
		while (1) {
			h = (NI)((NI)(((NI) 3) * h) + ((NI) 1));
			{
				if (!(n < h)) goto LA5_;
				goto LA1;
			}
			LA5_: ;
		}
	} LA1: ;
	{
		while (1) {
			h = (NI)(h / ((NI) 3));
			{
				NI i;
				NI colontmp_;
				NI res;
				i = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = (NI)(n - ((NI) 1));
				res = h;
				{
					while (1) {
						tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A v;
						NI j;
						if (!(res <= colontmp_)) goto LA11;
						i = res;
						nimZeroMem((void*)(&v), sizeof(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A));
						ltminus___packagesZdocutilsZrstgen_1993((&v), (&a[i]));
						j = i;
						{
							while (1) {
								NI T14_;
								T14_ = (NI)0;
								T14_ = cmp__packagesZdocutilsZrstgen_1986((&a[(NI)(j - h)]), (&v));
								if (!(((NI) 0) <= T14_)) goto LA13;
								ltminus___packagesZdocutilsZrstgen_1993((&a[j]), (&a[(NI)(j - h)]));
								j = (NI)(j - h);
								{
									if (!(j < h)) goto LA17_;
									goto LA12;
								}
								LA17_: ;
							} LA13: ;
						} LA12: ;
						ltminus___packagesZdocutilsZrstgen_1993((&a[j]), (&v));
						res += ((NI) 1);
					} LA11: ;
				}
			}
			{
				if (!(h == ((NI) 1))) goto LA21_;
				goto LA7;
			}
			LA21_: ;
		}
	} LA7: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, escapeLink__packagesZdocutilsZrstgen_2021)(NimStringDesc* s) {
	NimStringDesc* result;
	result = NIM_NIL;
	result = rawNewString(((NI) ((NI)((s ? s->Sup.len : 0) + (NI)((NI64)((s ? s->Sup.len : 0)) >> (NU64)(((NI) 2)))))));
	{
		NIM_CHAR c;
		NI i;
		NI L;
		c = (NIM_CHAR)0;
		i = ((NI) 0);
		L = (s ? s->Sup.len : 0);
		{
			while (1) {
				if (!(i < L)) goto LA3;
				c = s->data[i];
				switch (((NU8)(c))) {
				case 97 ... 122:
				case 65 ... 90:
				case 48 ... 57:
				case 45:
				case 46:
				case 95:
				case 126:
				{
					result = addChar(result, c);
				}
				break;
				case 35:
				case 47:
				{
					result = addChar(result, c);
				}
				break;
				default:
				{
					NimStringDesc* T7_;
					result = resizeString(result, 1);
appendString(result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_281));
					T7_ = NIM_NIL;
					T7_ = toHex__pureZstrutils_1792(((NU8)(c)), ((NI) 2));
					result = resizeString(result, (T7_ ? T7_->Sup.len : 0) + 0);
appendString(result, T7_);
				}
				break;
				}
				i += ((NI) 1);
			} LA3: ;
		}
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, generateSymbolIndex__packagesZdocutilsZrstgen_2036)(tySequence__CJOrWaM0fWekVRTE2AotGw* symbols) {
	NimStringDesc* result;
	NI i;
	result = NIM_NIL;
	result = copyString(((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_280));
	i = ((NI) 0);
	{
		while (1) {
			NI T3_;
			NimStringDesc* keyword;
			NimStringDesc* cleanedKeyword;
			tyArray__Re75IspeoxXy2oCZHwcRrA T4_;
			NI j;
			T3_ = (symbols ? symbols->Sup.len : 0);
			if (!(i < T3_)) goto LA2;
			keyword = symbols->data[i].keyword;
			cleanedKeyword = escapeLink__packagesZdocutilsZrstgen_2021(keyword);
			nimZeroMem((void*)T4_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
			T4_[0] = copyString(keyword);
			T4_[1] = copyString(cleanedKeyword);
			nsuAddf((&result), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_282), T4_, 2);
			j = i;
			{
				while (1) {
					NIM_BOOL T7_;
					NI T8_;
					NimStringDesc* url;
					NimStringDesc* text;
					NimStringDesc* desc;
					T7_ = (NIM_BOOL)0;
					T8_ = (symbols ? symbols->Sup.len : 0);
					T7_ = (j < T8_);
					if (!(T7_)) goto LA9_;
					T7_ = eqStrings(keyword, symbols->data[j].keyword);
					LA9_: ;
					if (!T7_) goto LA6;
					url = escapeLink__packagesZdocutilsZrstgen_2021(symbols->data[j].link);
					{
						if (!(((NI) 0) < (symbols->data[j].linkTitle ? symbols->data[j].linkTitle->Sup.len : 0))) goto LA12_;
						text = symbols->data[j].linkTitle;
					}
					goto LA10_;
					LA12_: ;
					{
						text = url;
					}
					LA10_: ;
					{
						if (!(((NI) 0) < (symbols->data[j].linkDesc ? symbols->data[j].linkDesc->Sup.len : 0))) goto LA17_;
						desc = symbols->data[j].linkDesc;
					}
					goto LA15_;
					LA17_: ;
					{
						desc = ((NimStringDesc*) NIM_NIL);
					}
					LA15_: ;
					{
						tyArray__24KAM9afIUgUaqBaEBB6r9bg T24_;
						if (!(((NI) 0) < (desc ? desc->Sup.len : 0))) goto LA22_;
						nimZeroMem((void*)T24_, sizeof(tyArray__24KAM9afIUgUaqBaEBB6r9bg));
						T24_[0] = copyString(url);
						T24_[1] = copyString(text);
						T24_[2] = copyString(desc);
						nsuAddf((&result), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_283), T24_, 3);
					}
					goto LA20_;
					LA22_: ;
					{
						tyArray__Re75IspeoxXy2oCZHwcRrA T26_;
						nimZeroMem((void*)T26_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
						T26_[0] = copyString(url);
						T26_[1] = copyString(text);
						nsuAddf((&result), ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_284), T26_, 2);
					}
					LA20_: ;
					j += ((NI) 1);
				} LA6: ;
			}
			result = resizeString(result, 11);
appendString(result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_285));
			i = j;
		} LA2: ;
	}
	result = resizeString(result, 5);
appendString(result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_286));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, mergeIndexes__packagesZdocutilsZrstgen_7941)(NimStringDesc* dir) {
	NimStringDesc* result;
	tyTuple__Rf49c4BJ4LYwQucz9a7JHOmA T1_;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* modules;
	tySequence__CJOrWaM0fWekVRTE2AotGw* symbols;
	tyObject_Table__myGXmFdFAc6beAdGFLRvEQ docs;
	result = NIM_NIL;
	nimZeroMem((void*)(&T1_), sizeof(tyTuple__Rf49c4BJ4LYwQucz9a7JHOmA));
	readIndexDir__packagesZdocutilsZrstgen_6718(dir, (&T1_));
	modules = NIM_NIL;
	genericSeqAssign((&modules), T1_.Field0, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
	symbols = NIM_NIL;
	genericSeqAssign((&symbols), T1_.Field1, (&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_));
	nimZeroMem((void*)(&docs), sizeof(tyObject_Table__myGXmFdFAc6beAdGFLRvEQ));
	genericSeqAssign((&docs.data), T1_.Field2.data, (&NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_));
	docs.counter = T1_.Field2.counter;
	result = ((NimStringDesc*) NIM_NIL);
	{
		NI T4_;
		NimStringDesc* T7_;
		T4_ = (NI)0;
		T4_ = len__packagesZdocutilsZrstgen_5642(docs);
		if (!(((NI) 0) < T4_)) goto LA5_;
		T7_ = NIM_NIL;
		T7_ = generateDocumentationJumps__packagesZdocutilsZrstgen_6581(docs);
		result = resizeString(result, (T7_ ? T7_->Sup.len : 0) + 0);
appendString(result, T7_);
		result = resizeString(result, 5);
appendString(result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_276));
	}
	LA5_: ;
	{
		NI T10_;
		NimStringDesc* T13_;
		T10_ = (modules ? modules->Sup.len : 0);
		if (!(((NI) 0) < T10_)) goto LA11_;
		T13_ = NIM_NIL;
		T13_ = generateModuleJumps__packagesZdocutilsZrstgen_6702(modules);
		result = resizeString(result, (T13_ ? T13_->Sup.len : 0) + 0);
appendString(result, T13_);
		result = resizeString(result, 5);
appendString(result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_276));
	}
	LA11_: ;
	{
		NI T16_;
		NimStringDesc* T19_;
		T16_ = (symbols ? symbols->Sup.len : 0);
		if (!(((NI) 0) < T16_)) goto LA17_;
		sortIndex__packagesZdocutilsZrstgen_1996(symbols->data, (symbols ? symbols->Sup.len : 0));
		result = resizeString(result, 21);
appendString(result, ((NimStringDesc*) &TM__vYBWrr780p7faFzauVMtPg_279));
		T19_ = NIM_NIL;
		T19_ = generateSymbolIndex__packagesZdocutilsZrstgen_2036(symbols);
		result = resizeString(result, (T19_ ? T19_->Sup.len : 0) + 0);
appendString(result, T19_);
	}
	LA17_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, stdlib_rstgenDatInit000)(void) {
static TNimNode* TM__vYBWrr780p7faFzauVMtPg_2_19[19];
static TNimNode* TM__vYBWrr780p7faFzauVMtPg_3_2[2];
NI TM__vYBWrr780p7faFzauVMtPg_5;
static char* NIM_CONST TM__vYBWrr780p7faFzauVMtPg_4[2] = {
"outHtml", 
"outLatex"};
static TNimNode* TM__vYBWrr780p7faFzauVMtPg_6_3[3];
static TNimNode* TM__vYBWrr780p7faFzauVMtPg_7_2[2];
static TNimNode* TM__vYBWrr780p7faFzauVMtPg_8_3[3];
static TNimNode* TM__vYBWrr780p7faFzauVMtPg_9_2[2];
static TNimNode* TM__vYBWrr780p7faFzauVMtPg_10_3[3];
NI TM__vYBWrr780p7faFzauVMtPg_12;
static char* NIM_CONST TM__vYBWrr780p7faFzauVMtPg_11[3] = {
"emText", 
"emOption", 
"emUrl"};
static TNimNode* TM__vYBWrr780p7faFzauVMtPg_257_3[3];
static TNimNode* TM__vYBWrr780p7faFzauVMtPg_258_4[4];
static TNimNode TM__vYBWrr780p7faFzauVMtPg_0[50];
NTIrstgenerator__3jlDCj6GoMg9aZfxlJYSfkA_.size = sizeof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA);
NTIrstgenerator__3jlDCj6GoMg9aZfxlJYSfkA_.align = NIM_ALIGNOF(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA);
NTIrstgenerator__3jlDCj6GoMg9aZfxlJYSfkA_.kind = 17;
NTIrstgenerator__3jlDCj6GoMg9aZfxlJYSfkA_.base = (&NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_);
TM__vYBWrr780p7faFzauVMtPg_2_19[0] = &TM__vYBWrr780p7faFzauVMtPg_0[1];
NTIoutputtarget__N1HUNw9bw7B2wG9bU9aDvY8oA_.size = sizeof(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA);
NTIoutputtarget__N1HUNw9bw7B2wG9bU9aDvY8oA_.align = NIM_ALIGNOF(tyEnum_OutputTarget__N1HUNw9bw7B2wG9bU9aDvY8oA);
NTIoutputtarget__N1HUNw9bw7B2wG9bU9aDvY8oA_.kind = 14;
NTIoutputtarget__N1HUNw9bw7B2wG9bU9aDvY8oA_.base = 0;
NTIoutputtarget__N1HUNw9bw7B2wG9bU9aDvY8oA_.flags = 3;
for (TM__vYBWrr780p7faFzauVMtPg_5 = 0; TM__vYBWrr780p7faFzauVMtPg_5 < 2; TM__vYBWrr780p7faFzauVMtPg_5++) {
TM__vYBWrr780p7faFzauVMtPg_0[TM__vYBWrr780p7faFzauVMtPg_5+2].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[TM__vYBWrr780p7faFzauVMtPg_5+2].offset = TM__vYBWrr780p7faFzauVMtPg_5;
TM__vYBWrr780p7faFzauVMtPg_0[TM__vYBWrr780p7faFzauVMtPg_5+2].name = TM__vYBWrr780p7faFzauVMtPg_4[TM__vYBWrr780p7faFzauVMtPg_5];
TM__vYBWrr780p7faFzauVMtPg_3_2[TM__vYBWrr780p7faFzauVMtPg_5] = &TM__vYBWrr780p7faFzauVMtPg_0[TM__vYBWrr780p7faFzauVMtPg_5+2];
}
TM__vYBWrr780p7faFzauVMtPg_0[4].len = 2; TM__vYBWrr780p7faFzauVMtPg_0[4].kind = 2; TM__vYBWrr780p7faFzauVMtPg_0[4].sons = &TM__vYBWrr780p7faFzauVMtPg_3_2[0];
NTIoutputtarget__N1HUNw9bw7B2wG9bU9aDvY8oA_.node = &TM__vYBWrr780p7faFzauVMtPg_0[4];
TM__vYBWrr780p7faFzauVMtPg_0[1].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[1].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, target);
TM__vYBWrr780p7faFzauVMtPg_0[1].typ = (&NTIoutputtarget__N1HUNw9bw7B2wG9bU9aDvY8oA_);
TM__vYBWrr780p7faFzauVMtPg_0[1].name = "target";
TM__vYBWrr780p7faFzauVMtPg_2_19[1] = &TM__vYBWrr780p7faFzauVMtPg_0[5];
TM__vYBWrr780p7faFzauVMtPg_0[5].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[5].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, config);
TM__vYBWrr780p7faFzauVMtPg_0[5].typ = (&NTIstringtableref__n9cmoMXcDs47wYDFGEXuCfw_);
TM__vYBWrr780p7faFzauVMtPg_0[5].name = "config";
TM__vYBWrr780p7faFzauVMtPg_2_19[2] = &TM__vYBWrr780p7faFzauVMtPg_0[6];
TM__vYBWrr780p7faFzauVMtPg_0[6].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[6].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, splitAfter);
TM__vYBWrr780p7faFzauVMtPg_0[6].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__vYBWrr780p7faFzauVMtPg_0[6].name = "splitAfter";
TM__vYBWrr780p7faFzauVMtPg_2_19[3] = &TM__vYBWrr780p7faFzauVMtPg_0[7];
TM__vYBWrr780p7faFzauVMtPg_0[7].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[7].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, listingCounter);
TM__vYBWrr780p7faFzauVMtPg_0[7].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__vYBWrr780p7faFzauVMtPg_0[7].name = "listingCounter";
TM__vYBWrr780p7faFzauVMtPg_2_19[4] = &TM__vYBWrr780p7faFzauVMtPg_0[8];
NTItocentry__SAkUV1sZh55ZCzPTFEuH6A_.size = sizeof(tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A);
NTItocentry__SAkUV1sZh55ZCzPTFEuH6A_.align = NIM_ALIGNOF(tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A);
NTItocentry__SAkUV1sZh55ZCzPTFEuH6A_.kind = 18;
NTItocentry__SAkUV1sZh55ZCzPTFEuH6A_.base = 0;
TM__vYBWrr780p7faFzauVMtPg_6_3[0] = &TM__vYBWrr780p7faFzauVMtPg_0[10];
TM__vYBWrr780p7faFzauVMtPg_0[10].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[10].offset = offsetof(tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A, n);
TM__vYBWrr780p7faFzauVMtPg_0[10].typ = (&NTIprstnode__atGg6Dddbb7ASNaCLVdS9aA_);
TM__vYBWrr780p7faFzauVMtPg_0[10].name = "n";
TM__vYBWrr780p7faFzauVMtPg_6_3[1] = &TM__vYBWrr780p7faFzauVMtPg_0[11];
TM__vYBWrr780p7faFzauVMtPg_0[11].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[11].offset = offsetof(tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A, refname);
TM__vYBWrr780p7faFzauVMtPg_0[11].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[11].name = "refname";
TM__vYBWrr780p7faFzauVMtPg_6_3[2] = &TM__vYBWrr780p7faFzauVMtPg_0[12];
TM__vYBWrr780p7faFzauVMtPg_0[12].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[12].offset = offsetof(tyObject_TocEntry__SAkUV1sZh55ZCzPTFEuH6A, header);
TM__vYBWrr780p7faFzauVMtPg_0[12].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[12].name = "header";
TM__vYBWrr780p7faFzauVMtPg_0[9].len = 3; TM__vYBWrr780p7faFzauVMtPg_0[9].kind = 2; TM__vYBWrr780p7faFzauVMtPg_0[9].sons = &TM__vYBWrr780p7faFzauVMtPg_6_3[0];
NTItocentry__SAkUV1sZh55ZCzPTFEuH6A_.node = &TM__vYBWrr780p7faFzauVMtPg_0[9];
NTIseqLtocentryT__dwIXh8fAQr31bYUekxTtpA_.size = sizeof(tySequence__dwIXh8fAQr31bYUekxTtpA*);
NTIseqLtocentryT__dwIXh8fAQr31bYUekxTtpA_.align = NIM_ALIGNOF(tySequence__dwIXh8fAQr31bYUekxTtpA*);
NTIseqLtocentryT__dwIXh8fAQr31bYUekxTtpA_.kind = 24;
NTIseqLtocentryT__dwIXh8fAQr31bYUekxTtpA_.base = (&NTItocentry__SAkUV1sZh55ZCzPTFEuH6A_);
NTIseqLtocentryT__dwIXh8fAQr31bYUekxTtpA_.marker = Marker_tySequence__dwIXh8fAQr31bYUekxTtpA;
TM__vYBWrr780p7faFzauVMtPg_0[8].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[8].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, tocPart);
TM__vYBWrr780p7faFzauVMtPg_0[8].typ = (&NTIseqLtocentryT__dwIXh8fAQr31bYUekxTtpA_);
TM__vYBWrr780p7faFzauVMtPg_0[8].name = "tocPart";
TM__vYBWrr780p7faFzauVMtPg_2_19[5] = &TM__vYBWrr780p7faFzauVMtPg_0[13];
TM__vYBWrr780p7faFzauVMtPg_0[13].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[13].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, hasToc);
TM__vYBWrr780p7faFzauVMtPg_0[13].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_);
TM__vYBWrr780p7faFzauVMtPg_0[13].name = "hasToc";
TM__vYBWrr780p7faFzauVMtPg_2_19[6] = &TM__vYBWrr780p7faFzauVMtPg_0[14];
TM__vYBWrr780p7faFzauVMtPg_0[14].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[14].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, theIndex);
TM__vYBWrr780p7faFzauVMtPg_0[14].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[14].name = "theIndex";
TM__vYBWrr780p7faFzauVMtPg_2_19[7] = &TM__vYBWrr780p7faFzauVMtPg_0[15];
TM__vYBWrr780p7faFzauVMtPg_0[15].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[15].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, findFile);
TM__vYBWrr780p7faFzauVMtPg_0[15].typ = (&NTIfindfilehandler__oFHfEKFsiYTMAy9a42cSiKw_);
TM__vYBWrr780p7faFzauVMtPg_0[15].name = "findFile";
TM__vYBWrr780p7faFzauVMtPg_2_19[8] = &TM__vYBWrr780p7faFzauVMtPg_0[16];
TM__vYBWrr780p7faFzauVMtPg_0[16].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[16].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, msgHandler);
TM__vYBWrr780p7faFzauVMtPg_0[16].typ = (&NTImsghandler__zVyAuQlxcO3X84ar49cKZSg_);
TM__vYBWrr780p7faFzauVMtPg_0[16].name = "msgHandler";
TM__vYBWrr780p7faFzauVMtPg_2_19[9] = &TM__vYBWrr780p7faFzauVMtPg_0[17];
TM__vYBWrr780p7faFzauVMtPg_0[17].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[17].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, outDir);
TM__vYBWrr780p7faFzauVMtPg_0[17].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[17].name = "outDir";
TM__vYBWrr780p7faFzauVMtPg_2_19[10] = &TM__vYBWrr780p7faFzauVMtPg_0[18];
TM__vYBWrr780p7faFzauVMtPg_0[18].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[18].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, destFile);
TM__vYBWrr780p7faFzauVMtPg_0[18].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[18].name = "destFile";
TM__vYBWrr780p7faFzauVMtPg_2_19[11] = &TM__vYBWrr780p7faFzauVMtPg_0[19];
TM__vYBWrr780p7faFzauVMtPg_0[19].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[19].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, filenames);
TM__vYBWrr780p7faFzauVMtPg_0[19].typ = (&NTIrstfiletable__1rYTAF4X28SkQlz9cTtPDzQ_);
TM__vYBWrr780p7faFzauVMtPg_0[19].name = "filenames";
TM__vYBWrr780p7faFzauVMtPg_2_19[12] = &TM__vYBWrr780p7faFzauVMtPg_0[20];
TM__vYBWrr780p7faFzauVMtPg_0[20].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[20].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, filename);
TM__vYBWrr780p7faFzauVMtPg_0[20].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[20].name = "filename";
TM__vYBWrr780p7faFzauVMtPg_2_19[13] = &TM__vYBWrr780p7faFzauVMtPg_0[21];
NTIarrayLmetaenum_stringT__XRjZexeZG0H0Os6ksQhowg_.size = sizeof(tyArray__XRjZexeZG0H0Os6ksQhowg);
NTIarrayLmetaenum_stringT__XRjZexeZG0H0Os6ksQhowg_.align = NIM_ALIGNOF(tyArray__XRjZexeZG0H0Os6ksQhowg);
NTIarrayLmetaenum_stringT__XRjZexeZG0H0Os6ksQhowg_.kind = 16;
NTIarrayLmetaenum_stringT__XRjZexeZG0H0Os6ksQhowg_.base = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[21].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[21].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, meta);
TM__vYBWrr780p7faFzauVMtPg_0[21].typ = (&NTIarrayLmetaenum_stringT__XRjZexeZG0H0Os6ksQhowg_);
TM__vYBWrr780p7faFzauVMtPg_0[21].name = "meta";
TM__vYBWrr780p7faFzauVMtPg_2_19[14] = &TM__vYBWrr780p7faFzauVMtPg_0[22];
TM__vYBWrr780p7faFzauVMtPg_0[22].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[22].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, currentSection);
TM__vYBWrr780p7faFzauVMtPg_0[22].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[22].name = "currentSection";
TM__vYBWrr780p7faFzauVMtPg_2_19[15] = &TM__vYBWrr780p7faFzauVMtPg_0[23];
NTItable__i55W8RrwGKsG9cl0sAKxgkQ_.size = sizeof(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ);
NTItable__i55W8RrwGKsG9cl0sAKxgkQ_.align = NIM_ALIGNOF(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ);
NTItable__i55W8RrwGKsG9cl0sAKxgkQ_.kind = 18;
NTItable__i55W8RrwGKsG9cl0sAKxgkQ_.base = 0;
TM__vYBWrr780p7faFzauVMtPg_7_2[0] = &TM__vYBWrr780p7faFzauVMtPg_0[25];
NTIkeyvaluepair__sr3s7uVHpu9cEbbDnCSg8yQ_.size = sizeof(tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ);
NTIkeyvaluepair__sr3s7uVHpu9cEbbDnCSg8yQ_.align = NIM_ALIGNOF(tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ);
NTIkeyvaluepair__sr3s7uVHpu9cEbbDnCSg8yQ_.kind = 18;
NTIkeyvaluepair__sr3s7uVHpu9cEbbDnCSg8yQ_.base = 0;
TM__vYBWrr780p7faFzauVMtPg_8_3[0] = &TM__vYBWrr780p7faFzauVMtPg_0[27];
TM__vYBWrr780p7faFzauVMtPg_0[27].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[27].offset = offsetof(tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ, Field0);
TM__vYBWrr780p7faFzauVMtPg_0[27].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__vYBWrr780p7faFzauVMtPg_0[27].name = "Field0";
TM__vYBWrr780p7faFzauVMtPg_8_3[1] = &TM__vYBWrr780p7faFzauVMtPg_0[28];
TM__vYBWrr780p7faFzauVMtPg_0[28].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[28].offset = offsetof(tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ, Field1);
TM__vYBWrr780p7faFzauVMtPg_0[28].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[28].name = "Field1";
TM__vYBWrr780p7faFzauVMtPg_8_3[2] = &TM__vYBWrr780p7faFzauVMtPg_0[29];
TM__vYBWrr780p7faFzauVMtPg_0[29].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[29].offset = offsetof(tyTuple__sr3s7uVHpu9cEbbDnCSg8yQ, Field2);
TM__vYBWrr780p7faFzauVMtPg_0[29].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__vYBWrr780p7faFzauVMtPg_0[29].name = "Field2";
TM__vYBWrr780p7faFzauVMtPg_0[26].len = 3; TM__vYBWrr780p7faFzauVMtPg_0[26].kind = 2; TM__vYBWrr780p7faFzauVMtPg_0[26].sons = &TM__vYBWrr780p7faFzauVMtPg_8_3[0];
NTIkeyvaluepair__sr3s7uVHpu9cEbbDnCSg8yQ_.node = &TM__vYBWrr780p7faFzauVMtPg_0[26];
NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_.size = sizeof(tySequence__pUxI6Ljo6IKKHXKOZkQ7Og*);
NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_.align = NIM_ALIGNOF(tySequence__pUxI6Ljo6IKKHXKOZkQ7Og*);
NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_.kind = 24;
NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_.base = (&NTIkeyvaluepair__sr3s7uVHpu9cEbbDnCSg8yQ_);
NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_.marker = Marker_tySequence__pUxI6Ljo6IKKHXKOZkQ7Og;
TM__vYBWrr780p7faFzauVMtPg_0[25].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[25].offset = offsetof(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ, data);
TM__vYBWrr780p7faFzauVMtPg_0[25].typ = (&NTIkeyvaluepairseq__pUxI6Ljo6IKKHXKOZkQ7Og_);
TM__vYBWrr780p7faFzauVMtPg_0[25].name = "data";
TM__vYBWrr780p7faFzauVMtPg_7_2[1] = &TM__vYBWrr780p7faFzauVMtPg_0[30];
TM__vYBWrr780p7faFzauVMtPg_0[30].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[30].offset = offsetof(tyObject_Table__i55W8RrwGKsG9cl0sAKxgkQ, counter);
TM__vYBWrr780p7faFzauVMtPg_0[30].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__vYBWrr780p7faFzauVMtPg_0[30].name = "counter";
TM__vYBWrr780p7faFzauVMtPg_0[24].len = 2; TM__vYBWrr780p7faFzauVMtPg_0[24].kind = 2; TM__vYBWrr780p7faFzauVMtPg_0[24].sons = &TM__vYBWrr780p7faFzauVMtPg_7_2[0];
NTItable__i55W8RrwGKsG9cl0sAKxgkQ_.node = &TM__vYBWrr780p7faFzauVMtPg_0[24];
TM__vYBWrr780p7faFzauVMtPg_0[23].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[23].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, seenIndexTerms);
TM__vYBWrr780p7faFzauVMtPg_0[23].typ = (&NTItable__i55W8RrwGKsG9cl0sAKxgkQ_);
TM__vYBWrr780p7faFzauVMtPg_0[23].name = "seenIndexTerms";
TM__vYBWrr780p7faFzauVMtPg_2_19[16] = &TM__vYBWrr780p7faFzauVMtPg_0[31];
TM__vYBWrr780p7faFzauVMtPg_0[31].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[31].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, id);
TM__vYBWrr780p7faFzauVMtPg_0[31].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__vYBWrr780p7faFzauVMtPg_0[31].name = "id";
TM__vYBWrr780p7faFzauVMtPg_2_19[17] = &TM__vYBWrr780p7faFzauVMtPg_0[32];
NTIprocLd58varrstgenerator_filename58string_cmd58string_status58int_content58stringTLOclosureOT__60GIQaCod4Z80PoIKw3WKQ_.size = sizeof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A);
NTIprocLd58varrstgenerator_filename58string_cmd58string_status58int_content58stringTLOclosureOT__60GIQaCod4Z80PoIKw3WKQ_.align = NIM_ALIGNOF(tyTuple__JfHvHzMrhKkWAUvQKe0i1A);
NTIprocLd58varrstgenerator_filename58string_cmd58string_status58int_content58stringTLOclosureOT__60GIQaCod4Z80PoIKw3WKQ_.kind = 18;
NTIprocLd58varrstgenerator_filename58string_cmd58string_status58int_content58stringTLOclosureOT__60GIQaCod4Z80PoIKw3WKQ_.base = 0;
TM__vYBWrr780p7faFzauVMtPg_9_2[0] = &TM__vYBWrr780p7faFzauVMtPg_0[34];
TM__vYBWrr780p7faFzauVMtPg_0[34].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[34].offset = offsetof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A, Field0);
TM__vYBWrr780p7faFzauVMtPg_0[34].typ = (&NTIpointer__vr5DoT1jILTGdRlYv1OYpw_);
TM__vYBWrr780p7faFzauVMtPg_0[34].name = "Field0";
TM__vYBWrr780p7faFzauVMtPg_9_2[1] = &TM__vYBWrr780p7faFzauVMtPg_0[35];
TM__vYBWrr780p7faFzauVMtPg_0[35].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[35].offset = offsetof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A, Field1);
TM__vYBWrr780p7faFzauVMtPg_0[35].typ = (&NTIrefobject__HsJiUUcO9cHBdUCi0HwkSTA_);
TM__vYBWrr780p7faFzauVMtPg_0[35].name = "Field1";
TM__vYBWrr780p7faFzauVMtPg_0[33].len = 2; TM__vYBWrr780p7faFzauVMtPg_0[33].kind = 2; TM__vYBWrr780p7faFzauVMtPg_0[33].sons = &TM__vYBWrr780p7faFzauVMtPg_9_2[0];
NTIprocLd58varrstgenerator_filename58string_cmd58string_status58int_content58stringTLOclosureOT__60GIQaCod4Z80PoIKw3WKQ_.node = &TM__vYBWrr780p7faFzauVMtPg_0[33];
TM__vYBWrr780p7faFzauVMtPg_0[32].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[32].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, onTestSnippet);
TM__vYBWrr780p7faFzauVMtPg_0[32].typ = (&NTIprocLd58varrstgenerator_filename58string_cmd58string_status58int_content58stringTLOclosureOT__60GIQaCod4Z80PoIKw3WKQ_);
TM__vYBWrr780p7faFzauVMtPg_0[32].name = "onTestSnippet";
TM__vYBWrr780p7faFzauVMtPg_2_19[18] = &TM__vYBWrr780p7faFzauVMtPg_0[36];
NTIescapemode__dkNCmHqexjnwZO5F89buiOQ_.size = sizeof(tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ);
NTIescapemode__dkNCmHqexjnwZO5F89buiOQ_.align = NIM_ALIGNOF(tyEnum_EscapeMode__dkNCmHqexjnwZO5F89buiOQ);
NTIescapemode__dkNCmHqexjnwZO5F89buiOQ_.kind = 14;
NTIescapemode__dkNCmHqexjnwZO5F89buiOQ_.base = 0;
NTIescapemode__dkNCmHqexjnwZO5F89buiOQ_.flags = 3;
for (TM__vYBWrr780p7faFzauVMtPg_12 = 0; TM__vYBWrr780p7faFzauVMtPg_12 < 3; TM__vYBWrr780p7faFzauVMtPg_12++) {
TM__vYBWrr780p7faFzauVMtPg_0[TM__vYBWrr780p7faFzauVMtPg_12+37].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[TM__vYBWrr780p7faFzauVMtPg_12+37].offset = TM__vYBWrr780p7faFzauVMtPg_12;
TM__vYBWrr780p7faFzauVMtPg_0[TM__vYBWrr780p7faFzauVMtPg_12+37].name = TM__vYBWrr780p7faFzauVMtPg_11[TM__vYBWrr780p7faFzauVMtPg_12];
TM__vYBWrr780p7faFzauVMtPg_10_3[TM__vYBWrr780p7faFzauVMtPg_12] = &TM__vYBWrr780p7faFzauVMtPg_0[TM__vYBWrr780p7faFzauVMtPg_12+37];
}
TM__vYBWrr780p7faFzauVMtPg_0[40].len = 3; TM__vYBWrr780p7faFzauVMtPg_0[40].kind = 2; TM__vYBWrr780p7faFzauVMtPg_0[40].sons = &TM__vYBWrr780p7faFzauVMtPg_10_3[0];
NTIescapemode__dkNCmHqexjnwZO5F89buiOQ_.node = &TM__vYBWrr780p7faFzauVMtPg_0[40];
TM__vYBWrr780p7faFzauVMtPg_0[36].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[36].offset = offsetof(tyObject_RstGenerator__3jlDCj6GoMg9aZfxlJYSfkA, escMode);
TM__vYBWrr780p7faFzauVMtPg_0[36].typ = (&NTIescapemode__dkNCmHqexjnwZO5F89buiOQ_);
TM__vYBWrr780p7faFzauVMtPg_0[36].name = "escMode";
TM__vYBWrr780p7faFzauVMtPg_0[0].len = 19; TM__vYBWrr780p7faFzauVMtPg_0[0].kind = 2; TM__vYBWrr780p7faFzauVMtPg_0[0].sons = &TM__vYBWrr780p7faFzauVMtPg_2_19[0];
NTIrstgenerator__3jlDCj6GoMg9aZfxlJYSfkA_.node = &TM__vYBWrr780p7faFzauVMtPg_0[0];
NTIkeyvaluepair__oOuAMYA9a4ePg0evn9b5GaUQ_.size = sizeof(tyTuple__oOuAMYA9a4ePg0evn9b5GaUQ);
NTIkeyvaluepair__oOuAMYA9a4ePg0evn9b5GaUQ_.align = NIM_ALIGNOF(tyTuple__oOuAMYA9a4ePg0evn9b5GaUQ);
NTIkeyvaluepair__oOuAMYA9a4ePg0evn9b5GaUQ_.kind = 18;
NTIkeyvaluepair__oOuAMYA9a4ePg0evn9b5GaUQ_.base = 0;
TM__vYBWrr780p7faFzauVMtPg_257_3[0] = &TM__vYBWrr780p7faFzauVMtPg_0[42];
TM__vYBWrr780p7faFzauVMtPg_0[42].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[42].offset = offsetof(tyTuple__oOuAMYA9a4ePg0evn9b5GaUQ, Field0);
TM__vYBWrr780p7faFzauVMtPg_0[42].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
TM__vYBWrr780p7faFzauVMtPg_0[42].name = "Field0";
TM__vYBWrr780p7faFzauVMtPg_257_3[1] = &TM__vYBWrr780p7faFzauVMtPg_0[43];
NTIindexentry__fxsh1PMzYjb64GNihAaS4A_.size = sizeof(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A);
NTIindexentry__fxsh1PMzYjb64GNihAaS4A_.align = NIM_ALIGNOF(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A);
NTIindexentry__fxsh1PMzYjb64GNihAaS4A_.kind = 18;
NTIindexentry__fxsh1PMzYjb64GNihAaS4A_.base = 0;
TM__vYBWrr780p7faFzauVMtPg_258_4[0] = &TM__vYBWrr780p7faFzauVMtPg_0[45];
TM__vYBWrr780p7faFzauVMtPg_0[45].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[45].offset = offsetof(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A, keyword);
TM__vYBWrr780p7faFzauVMtPg_0[45].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[45].name = "keyword";
TM__vYBWrr780p7faFzauVMtPg_258_4[1] = &TM__vYBWrr780p7faFzauVMtPg_0[46];
TM__vYBWrr780p7faFzauVMtPg_0[46].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[46].offset = offsetof(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A, link);
TM__vYBWrr780p7faFzauVMtPg_0[46].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[46].name = "link";
TM__vYBWrr780p7faFzauVMtPg_258_4[2] = &TM__vYBWrr780p7faFzauVMtPg_0[47];
TM__vYBWrr780p7faFzauVMtPg_0[47].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[47].offset = offsetof(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A, linkTitle);
TM__vYBWrr780p7faFzauVMtPg_0[47].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[47].name = "linkTitle";
TM__vYBWrr780p7faFzauVMtPg_258_4[3] = &TM__vYBWrr780p7faFzauVMtPg_0[48];
TM__vYBWrr780p7faFzauVMtPg_0[48].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[48].offset = offsetof(tyObject_IndexEntry__fxsh1PMzYjb64GNihAaS4A, linkDesc);
TM__vYBWrr780p7faFzauVMtPg_0[48].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
TM__vYBWrr780p7faFzauVMtPg_0[48].name = "linkDesc";
TM__vYBWrr780p7faFzauVMtPg_0[44].len = 4; TM__vYBWrr780p7faFzauVMtPg_0[44].kind = 2; TM__vYBWrr780p7faFzauVMtPg_0[44].sons = &TM__vYBWrr780p7faFzauVMtPg_258_4[0];
NTIindexentry__fxsh1PMzYjb64GNihAaS4A_.node = &TM__vYBWrr780p7faFzauVMtPg_0[44];
TM__vYBWrr780p7faFzauVMtPg_0[43].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[43].offset = offsetof(tyTuple__oOuAMYA9a4ePg0evn9b5GaUQ, Field1);
TM__vYBWrr780p7faFzauVMtPg_0[43].typ = (&NTIindexentry__fxsh1PMzYjb64GNihAaS4A_);
TM__vYBWrr780p7faFzauVMtPg_0[43].name = "Field1";
TM__vYBWrr780p7faFzauVMtPg_257_3[2] = &TM__vYBWrr780p7faFzauVMtPg_0[49];
NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_.size = sizeof(tySequence__CJOrWaM0fWekVRTE2AotGw*);
NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_.align = NIM_ALIGNOF(tySequence__CJOrWaM0fWekVRTE2AotGw*);
NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_.kind = 24;
NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_.base = (&NTIindexentry__fxsh1PMzYjb64GNihAaS4A_);
NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_.marker = Marker_tySequence__CJOrWaM0fWekVRTE2AotGw;
TM__vYBWrr780p7faFzauVMtPg_0[49].kind = 1;
TM__vYBWrr780p7faFzauVMtPg_0[49].offset = offsetof(tyTuple__oOuAMYA9a4ePg0evn9b5GaUQ, Field2);
TM__vYBWrr780p7faFzauVMtPg_0[49].typ = (&NTIseqLindexentryT__CJOrWaM0fWekVRTE2AotGw_);
TM__vYBWrr780p7faFzauVMtPg_0[49].name = "Field2";
TM__vYBWrr780p7faFzauVMtPg_0[41].len = 3; TM__vYBWrr780p7faFzauVMtPg_0[41].kind = 2; TM__vYBWrr780p7faFzauVMtPg_0[41].sons = &TM__vYBWrr780p7faFzauVMtPg_257_3[0];
NTIkeyvaluepair__oOuAMYA9a4ePg0evn9b5GaUQ_.node = &TM__vYBWrr780p7faFzauVMtPg_0[41];
NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_.size = sizeof(tySequence__MVOolrgzxbiYsd7sgvFfFw*);
NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_.align = NIM_ALIGNOF(tySequence__MVOolrgzxbiYsd7sgvFfFw*);
NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_.kind = 24;
NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_.base = (&NTIkeyvaluepair__oOuAMYA9a4ePg0evn9b5GaUQ_);
NTIkeyvaluepairseq__MVOolrgzxbiYsd7sgvFfFw_.marker = Marker_tySequence__MVOolrgzxbiYsd7sgvFfFw;
}

