/* Generated by Nim Compiler v2.2.10 */
#define NIM_INTBITS 64

#include "nimbase.h"
#include <string.h>
#include <stdio.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA;
typedef struct tySequence__mQLVW9aAdq9aAi9aGNi0iC9chg tySequence__mQLVW9aAdq9aAi9aGNi0iC9chg;
typedef struct tySequence__mQLVW9aAdq9aAi9aGNi0iC9chg_Content tySequence__mQLVW9aAdq9aAi9aGNi0iC9chg_Content;
typedef struct tySequence__qagWYy9b8OIJNg9bWhIaAjyw tySequence__qagWYy9b8OIJNg9bWhIaAjyw;
typedef struct tySequence__qagWYy9b8OIJNg9bWhIaAjyw_Content tySequence__qagWYy9b8OIJNg9bWhIaAjyw_Content;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tySequence__vz9c2digtAnM8l0FZWLUAGg tySequence__vz9c2digtAnM8l0FZWLUAGg;
typedef struct tySequence__vz9c2digtAnM8l0FZWLUAGg_Content tySequence__vz9c2digtAnM8l0FZWLUAGg_Content;
typedef struct tyObject_Table__bzy14J3py7GGCrkIhTsFXw tyObject_Table__bzy14J3py7GGCrkIhTsFXw;
typedef struct tySequence__O9a9cp2XDKWshwC0UDgFP6Pw tySequence__O9a9cp2XDKWshwC0UDgFP6Pw;
typedef struct tySequence__O9a9cp2XDKWshwC0UDgFP6Pw_Content tySequence__O9a9cp2XDKWshwC0UDgFP6Pw_Content;
typedef struct tySequence__jK2T9bFw5BWKL8ZZ854oXZg tySequence__jK2T9bFw5BWKL8ZZ854oXZg;
typedef struct tySequence__jK2T9bFw5BWKL8ZZ854oXZg_Content tySequence__jK2T9bFw5BWKL8ZZ854oXZg_Content;
typedef struct tySequence__vdmFdgox3dhDOMkkFi9ayfg tySequence__vdmFdgox3dhDOMkkFi9ayfg;
typedef struct tySequence__vdmFdgox3dhDOMkkFi9ayfg_Content tySequence__vdmFdgox3dhDOMkkFi9ayfg_Content;
typedef struct tyTuple__UV3llMMYFckfui8YMBuUZA tyTuple__UV3llMMYFckfui8YMBuUZA;
typedef struct tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg;
typedef struct tyObject_Table__5Vw74FRHMT0Qc2FBvLMNBQ tyObject_Table__5Vw74FRHMT0Qc2FBvLMNBQ;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_Content;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content;
typedef struct tySequence__LqZapiAqCFeXPQZdoIAUew tySequence__LqZapiAqCFeXPQZdoIAUew;
typedef struct tySequence__LqZapiAqCFeXPQZdoIAUew_Content tySequence__LqZapiAqCFeXPQZdoIAUew_Content;
typedef struct tyObject_Table__KmtoFP03CxvNyT9cF9cS2OGA tyObject_Table__KmtoFP03CxvNyT9cF9cS2OGA;
typedef struct tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A;
typedef struct tyTuple__4Ywt2LYBMs9aMJ09cL7digow tyTuple__4Ywt2LYBMs9aMJ09cL7digow;
typedef struct tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA;
typedef struct tySequence__ib5UTyrs9aC6K60sNqKElQA tySequence__ib5UTyrs9aC6K60sNqKElQA;
typedef struct tySequence__ib5UTyrs9aC6K60sNqKElQA_Content tySequence__ib5UTyrs9aC6K60sNqKElQA_Content;
typedef struct tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA;
typedef struct tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA;
typedef struct tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw;
typedef struct tySequence__4eQHGndY6XBYpFOH09apV8Q tySequence__4eQHGndY6XBYpFOH09apV8Q;
typedef struct tySequence__4eQHGndY6XBYpFOH09apV8Q_Content tySequence__4eQHGndY6XBYpFOH09apV8Q_Content;
typedef struct tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A;
typedef struct tyObject_LevelInfo__KZjTutWfS3RhxSg89cxkiqQ tyObject_LevelInfo__KZjTutWfS3RhxSg89cxkiqQ;
typedef struct tyObject_GcEnv__HccVszwojlCZRN46BE9cG8w tyObject_GcEnv__HccVszwojlCZRN46BE9cG8w;
typedef struct tyObject_CellSeq__gW9aeWLFbrNaeUKXqxYBXhg tyObject_CellSeq__gW9aeWLFbrNaeUKXqxYBXhg;
typedef struct tyTuple__N4J9cV4JZGem3ljqqj5rT0Q tyTuple__N4J9cV4JZGem3ljqqj5rT0Q;
typedef struct tyObject_CellSeq__IHvIqxITv1yMjJj8lwLrhg tyObject_CellSeq__IHvIqxITv1yMjJj8lwLrhg;
typedef struct tyTuple__DTRsWi2kgTewbhN2TT5mbA tyTuple__DTRsWi2kgTewbhN2TT5mbA;
typedef struct tyObject_EParseError__417XwHiegT8um61EkJF9bxA tyObject_EParseError__417XwHiegT8um61EkJF9bxA;
typedef struct tyObject_ValueError__S29bKZF4TUS33IR7ZXb7fFA tyObject_ValueError__S29bKZF4TUS33IR7ZXb7fFA;
typedef struct tyObject_CatchableError__TCF9b1Y9b2ct0xPZvZnaY7gg tyObject_CatchableError__TCF9b1Y9b2ct0xPZvZnaY7gg;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct tySequence__S89cE01OvNjsN9c71FKsSrqQ tySequence__S89cE01OvNjsN9c71FKsSrqQ;
typedef struct tySequence__S89cE01OvNjsN9c71FKsSrqQ_Content tySequence__S89cE01OvNjsN9c71FKsSrqQ_Content;
typedef struct tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg;
typedef struct tySequence__Ygtgme9cSsBUPbXwOprm43Q tySequence__Ygtgme9cSsBUPbXwOprm43Q;
typedef struct tySequence__Ygtgme9cSsBUPbXwOprm43Q_Content tySequence__Ygtgme9cSsBUPbXwOprm43Q_Content;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g tySequence__qwqHTkRvwhrRyENtudHQ7g;
typedef struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content tySequence__qwqHTkRvwhrRyENtudHQ7g_Content;
typedef struct tySequence__7kOUUrKwg6xKu7wOGcJDlQ tySequence__7kOUUrKwg6xKu7wOGcJDlQ;
typedef struct tySequence__7kOUUrKwg6xKu7wOGcJDlQ_Content tySequence__7kOUUrKwg6xKu7wOGcJDlQ_Content;
typedef struct tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg;
typedef struct tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg;
typedef struct tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyTuple__XOVT24GHXwqiEj5GCsEGCA tyTuple__XOVT24GHXwqiEj5GCsEGCA;
typedef struct tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA;
typedef struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg tyTuple__7q7q3E6Oj24ZNVJb9aonhAg;
typedef struct tyTuple__7EQdxYuaZDgtungG7UmspQ tyTuple__7EQdxYuaZDgtungG7UmspQ;
typedef struct tySequence__lBgZ7a89beZGYPl8PiANMTA tySequence__lBgZ7a89beZGYPl8PiANMTA;
typedef struct tySequence__lBgZ7a89beZGYPl8PiANMTA_Content tySequence__lBgZ7a89beZGYPl8PiANMTA_Content;
typedef struct tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ;
typedef struct tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA;
typedef struct tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA;
typedef struct tyObject_NimRawSeq__Tvl1urqmI1tXqzkHPbWVJQ tyObject_NimRawSeq__Tvl1urqmI1tXqzkHPbWVJQ;
typedef struct tySequence__g9cc9ce4njfC9a8r1mQEl8mIg tySequence__g9cc9ce4njfC9a8r1mQEl8mIg;
typedef struct tySequence__g9cc9ce4njfC9a8r1mQEl8mIg_Content tySequence__g9cc9ce4njfC9a8r1mQEl8mIg_Content;
typedef struct tyObject_ColSpec__Pj5Kd9cksSnFDEYTQgs0HeQ tyObject_ColSpec__Pj5Kd9cksSnFDEYTQgs0HeQ;
typedef struct tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg;
typedef struct tySequence__8Np6tlClE5az1CyqZdN19bQ tySequence__8Np6tlClE5az1CyqZdN19bQ;
typedef struct tySequence__8Np6tlClE5az1CyqZdN19bQ_Content tySequence__8Np6tlClE5az1CyqZdN19bQ_Content;
typedef struct tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ;
typedef struct tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ;
typedef struct tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA;
typedef struct tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog;
typedef struct tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig;
typedef struct tyTuple__zRV1q8K3MINNVxW2Z9aU7Ng tyTuple__zRV1q8K3MINNVxW2Z9aU7Ng;
typedef struct tySequence__36jA1xDCIBAS29cySYLQ7kQ tySequence__36jA1xDCIBAS29cySYLQ7kQ;
typedef struct tySequence__36jA1xDCIBAS29cySYLQ7kQ_Content tySequence__36jA1xDCIBAS29cySYLQ7kQ_Content;
typedef struct tyObject_IndexEntry__r4FGmtl4yhJtHvFotaeMmQ tyObject_IndexEntry__r4FGmtl4yhJtHvFotaeMmQ;
typedef struct tyTuple__mBPo6SdWuL2NLQ9aX5t1kTg tyTuple__mBPo6SdWuL2NLQ9aX5t1kTg;
typedef struct tySequence__ElKBSoViSyNazy7qD89atSA tySequence__ElKBSoViSyNazy7qD89atSA;
typedef struct tySequence__ElKBSoViSyNazy7qD89atSA_Content tySequence__ElKBSoViSyNazy7qD89atSA_Content;
typedef struct tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw;
typedef struct tyObject_Table__N9c3CcsmyVBdM9bJn2kzIHNQ tyObject_Table__N9c3CcsmyVBdM9bJn2kzIHNQ;
typedef struct tySequence__pdOdj3OjB4RCTgPEeNVJ9bQ tySequence__pdOdj3OjB4RCTgPEeNVJ9bQ;
typedef struct tySequence__pdOdj3OjB4RCTgPEeNVJ9bQ_Content tySequence__pdOdj3OjB4RCTgPEeNVJ9bQ_Content;
typedef struct tyTuple__fgn415DvsSyiHk3o9aIYr0w tyTuple__fgn415DvsSyiHk3o9aIYr0w;
typedef struct tyTuple__qu9bB9c0GkBBtltgCSAk9aq0A tyTuple__qu9bB9c0GkBBtltgCSAk9aq0A;
typedef struct tyTuple__Na59bk2YQTCLBWTLyeMrWdA tyTuple__Na59bk2YQTCLBWTLyeMrWdA;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyObject_StackTraceEntry__RcJz5RXFIYjIseutvVFICA tyObject_StackTraceEntry__RcJz5RXFIYjIseutvVFICA;
struct TNimTypeV2 {
	void* destructor;
	NI size;
	NI16 align;
	NI16 depth;
	NU32* display;
	void* traceImpl;
	void* typeInfoV1;
	NI flags;
	void* vTable[SEQ_DECL_SIZE];
};
struct tySequence__mQLVW9aAdq9aAi9aGNi0iC9chg {
  NI len; tySequence__mQLVW9aAdq9aAi9aGNi0iC9chg_Content* p;
};
typedef NU8 tySet_tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg;
struct tySequence__qagWYy9b8OIJNg9bWhIaAjyw {
  NI len; tySequence__qagWYy9b8OIJNg9bWhIaAjyw_Content* p;
};
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
typedef NU8 tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w;
struct tySequence__vz9c2digtAnM8l0FZWLUAGg {
  NI len; tySequence__vz9c2digtAnM8l0FZWLUAGg_Content* p;
};
struct tySequence__O9a9cp2XDKWshwC0UDgFP6Pw {
  NI len; tySequence__O9a9cp2XDKWshwC0UDgFP6Pw_Content* p;
};
struct tyObject_Table__bzy14J3py7GGCrkIhTsFXw {
	tySequence__O9a9cp2XDKWshwC0UDgFP6Pw data;
	NI counter;
};
struct tySequence__jK2T9bFw5BWKL8ZZ854oXZg {
  NI len; tySequence__jK2T9bFw5BWKL8ZZ854oXZg_Content* p;
};
struct tySequence__vdmFdgox3dhDOMkkFi9ayfg {
  NI len; tySequence__vdmFdgox3dhDOMkkFi9ayfg_Content* p;
};
typedef NU8 tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4, void* ClE_0);
void* ClE_0;
} tyProc__lsy8uLKFmavBA17NQuqO5g;
typedef struct {
N_NIMCALL_PTR(NimStringV2, ClP_0) (NimStringV2 filename_p0, void* ClE_0);
void* ClE_0;
} tyProc__oFHfEKFsiYTMAy9a42cSiKw;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringV2 targetRelPath_p0, tyTuple__UV3llMMYFckfui8YMBuUZA* Result, void* ClE_0);
void* ClE_0;
} tyProc__lYMtBEH0vEMRzoDaCw5CJg;
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
struct tyObject_Table__5Vw74FRHMT0Qc2FBvLMNBQ {
	tySequence__7lEisrXlQEzwtUKW5pzRCw data;
	NI counter;
};
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
struct tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg {
	tyObject_Table__5Vw74FRHMT0Qc2FBvLMNBQ filenameToIdx;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ idxToFilename;
};
struct tySequence__LqZapiAqCFeXPQZdoIAUew {
  NI len; tySequence__LqZapiAqCFeXPQZdoIAUew_Content* p;
};
struct tyObject_Table__KmtoFP03CxvNyT9cF9cS2OGA {
	tySequence__mQLVW9aAdq9aAi9aGNi0iC9chg data;
	NI counter;
};
struct tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA {
	tySet_tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg options;
	tySequence__qagWYy9b8OIJNg9bWhIaAjyw hLevels;
	NI hTitleCnt;
	NI hCurLevel;
	NimStringV2 currRole;
	tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w currRoleKind;
	tySequence__vz9c2digtAnM8l0FZWLUAGg subs;
	tySequence__vz9c2digtAnM8l0FZWLUAGg refs;
	tyObject_Table__bzy14J3py7GGCrkIhTsFXw anchors;
	tySequence__jK2T9bFw5BWKL8ZZ854oXZg lineFootnoteNum;
	tySequence__jK2T9bFw5BWKL8ZZ854oXZg lineFootnoteNumRef;
	NI currFootnoteNumRef;
	tySequence__jK2T9bFw5BWKL8ZZ854oXZg lineFootnoteSym;
	tySequence__jK2T9bFw5BWKL8ZZ854oXZg lineFootnoteSymRef;
	NI currFootnoteSymRef;
	tySequence__vdmFdgox3dhDOMkkFi9ayfg footnotes;
	tyProc__lsy8uLKFmavBA17NQuqO5g msgHandler;
	tyProc__oFHfEKFsiYTMAy9a42cSiKw findFile;
	tyProc__lYMtBEH0vEMRzoDaCw5CJg findRefFile;
	tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg filenames;
	NI32 currFileIdx;
	tySequence__LqZapiAqCFeXPQZdoIAUew tocPart;
	NIM_BOOL hasToc;
	tyObject_Table__KmtoFP03CxvNyT9cF9cS2OGA idxImports;
	NIM_BOOL nimFileImported;
};
struct tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A {
	NI rc;
	NI rootIdx;
};
typedef NU8 tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g;
struct tyTuple__4Ywt2LYBMs9aMJ09cL7digow {
	tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g Field0;
	NI Field1;
	NI Field2;
	NI Field3;
	NimStringV2 Field4;
};
struct tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA {
	NU16 line;
	NI16 col;
	NI32 fileIndex;
};
struct tySequence__ib5UTyrs9aC6K60sNqKElQA {
  NI len; tySequence__ib5UTyrs9aC6K60sNqKElQA_Content* p;
};
typedef NU8 tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q;
typedef NU8 tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ;
struct tySequence__4eQHGndY6XBYpFOH09apV8Q {
  NI len; tySequence__4eQHGndY6XBYpFOH09apV8Q_Content* p;
};
struct tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw {
	NimStringV2 symKind;
	NimStringV2 symTypeKind;
	NimStringV2 name;
	NimStringV2 generics;
	NIM_BOOL isGroup;
	NIM_BOOL parametersProvided;
	tySequence__4eQHGndY6XBYpFOH09apV8Q parameters;
	NimStringV2 outType;
};
struct tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA {
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info;
	NI priority;
	tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q kind;
union{
	struct {
	tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ anchorType;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* target;
} _kind_1;
	struct {
	tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ anchorTypeExt;
	NimStringV2 refnameExt;
} _kind_2;
	struct {
	NI32 module;
	NimStringV2 tooltip;
	tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw langSym;
	NimStringV2 refname;
	NIM_BOOL external;
} _kind_3;
};
};
struct tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA {
	tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w kind;
union{
	struct {
	NimStringV2 text;
} _kind_1;
	struct {
	NimStringV2 labelFmt;
} _kind_2;
	struct {
	NimStringV2 lineIndent;
} _kind_3;
	struct {
	NimStringV2 adType;
} _kind_4;
	struct {
	NI level;
} _kind_5;
	struct {
	NI order;
} _kind_6;
	struct {
	NI quotationDepth;
} _kind_7;
	struct {
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info;
} _kind_8;
	struct {
	NimStringV2 tooltip;
} _kind_9;
	struct {
	NI colCount;
} _kind_10;
	struct {
	NIM_BOOL endsHeader;
} _kind_11;
	struct {
	NI span;
} _kind_12;
};
	NimStringV2 anchor;
	tySequence__LqZapiAqCFeXPQZdoIAUew sons;
};
typedef NU8 tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw;
struct tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A {
	tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw kind;
	NimStringV2 key;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* value;
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info;
};
struct tyObject_LevelInfo__KZjTutWfS3RhxSg89cxkiqQ {
	NIM_CHAR symbol;
	NIM_BOOL hasOverline;
	NI line;
	NIM_BOOL hasPeers;
};
struct tyObject_CellSeq__gW9aeWLFbrNaeUKXqxYBXhg {
	NI len;
	NI cap;
	tyTuple__N4J9cV4JZGem3ljqqj5rT0Q* d;
};
struct tyObject_CellSeq__IHvIqxITv1yMjJj8lwLrhg {
	NI len;
	NI cap;
	tyTuple__DTRsWi2kgTewbhN2TT5mbA* d;
};
struct tyObject_GcEnv__HccVszwojlCZRN46BE9cG8w {
	tyObject_CellSeq__gW9aeWLFbrNaeUKXqxYBXhg traceStack;
	tyObject_CellSeq__IHvIqxITv1yMjJj8lwLrhg toFree;
	NI freed;
	NI touched;
	NI edges;
	NI rcSum;
	NIM_BOOL keepThreshold;
};
struct tyTuple__N4J9cV4JZGem3ljqqj5rT0Q {
	void** Field0;
	TNimTypeV2* Field1;
};
typedef NU8 tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg;
typedef NU8 tyEnum_SourceLanguage__19c0ssteZ7RkUhs6XPCRBNA;
typedef NU8 tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA;
typedef NimStringV2 tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ[2];
struct RootObj {
	TNimTypeV2* m_type;
};
struct tySequence__S89cE01OvNjsN9c71FKsSrqQ {
  NI len; tySequence__S89cE01OvNjsN9c71FKsSrqQ_Content* p;
};
struct Exception {
	RootObj Sup;
	Exception* parent;
	NCSTRING name;
	NimStringV2 message;
	tySequence__S89cE01OvNjsN9c71FKsSrqQ trace;
	Exception* up;
};
struct tyObject_CatchableError__TCF9b1Y9b2ct0xPZvZnaY7gg {
	Exception Sup;
};
struct tyObject_ValueError__S29bKZF4TUS33IR7ZXb7fFA {
	tyObject_CatchableError__TCF9b1Y9b2ct0xPZvZnaY7gg Sup;
};
struct tyObject_EParseError__417XwHiegT8um61EkJF9bxA {
	tyObject_ValueError__S29bKZF4TUS33IR7ZXb7fFA Sup;
};
typedef NimStringV2 tyArray__YgExxhfgKcesA5EOUj1MOA[1];
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_90) (NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4, void* ClE_0);
typedef N_CLOSURE_PTR(NimStringV2, TM__6mNpeIAN05DnDNzb9b3611A_93) (NimStringV2 filename_p0, void* ClE_0);
struct tyTuple__UV3llMMYFckfui8YMBuUZA {
	NimStringV2 Field0;
	NimStringV2 Field1;
};
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_95) (NimStringV2 targetRelPath_p0, tyTuple__UV3llMMYFckfui8YMBuUZA* Result, void* ClE_0);
struct tySequence__Ygtgme9cSsBUPbXwOprm43Q {
  NI len; tySequence__Ygtgme9cSsBUPbXwOprm43Q_Content* p;
};
struct tySequence__qwqHTkRvwhrRyENtudHQ7g {
  NI len; tySequence__qwqHTkRvwhrRyENtudHQ7g_Content* p;
};
struct tySequence__7kOUUrKwg6xKu7wOGcJDlQ {
  NI len; tySequence__7kOUUrKwg6xKu7wOGcJDlQ_Content* p;
};
struct tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg {
	RootObj Sup;
	NI idx;
	tySequence__Ygtgme9cSsBUPbXwOprm43Q tok;
	tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s;
	tySequence__qwqHTkRvwhrRyENtudHQ7g indentStack;
	NI line;
	NI col;
	tySequence__7kOUUrKwg6xKu7wOGcJDlQ curAnchors;
};
struct tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg {
	NimStringV2 alias;
	NimStringV2 anchor;
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info;
};
typedef NU8 tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw;
struct tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg {
	tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw kind;
	NI ival;
	NimStringV2 symbol;
	NI line;
	NI col;
};
struct tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw {
	RootObj Sup;
	NCSTRING buf;
	NI bufpos;
	NI line;
	NI col;
	NI baseIndent;
	NIM_BOOL adornmentLine;
	NIM_BOOL escapeNext;
};
typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_124) (NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4);
typedef NimStringV2 tyArray__dyW7vpmfeTYw8kX3EXuaJA[3];
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_137) (NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4);
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
	NimStringV2 Field0;
	NI Field1;
	NI Field2;
};
struct tyTuple__XOVT24GHXwqiEj5GCsEGCA {
	NimStringV2 Field0;
	NI Field1;
};
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_201) (NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4);
typedef NimStringV2 tyArray__z9cAtaKXVtQ2xtAG27z4jNg[20];
typedef NU8 tySet_tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA;
typedef N_NIMCALL_PTR(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, tyProc__8Zd0E1yWTzZDu9cMv4ASRug) (tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
typedef NU8 tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA;
typedef NimStringV2 tyArray__Seu7uK9aaOSN0BK3EAjjSHw[4];
struct tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA {
	NI a;
	NI b;
};
struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg {
	NimStringV2 Field0;
	NimStringV2 Field1;
	NimStringV2 Field2;
};
typedef N_CLOSURE_PTR(NimStringV2, TM__6mNpeIAN05DnDNzb9b3611A_357) (NimStringV2 filename_p0);
struct tyTuple__7EQdxYuaZDgtungG7UmspQ {
	tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g Field0;
	NI Field1;
};
struct tySequence__lBgZ7a89beZGYPl8PiANMTA {
  NI len; tySequence__lBgZ7a89beZGYPl8PiANMTA_Content* p;
};
typedef tyTuple__UV3llMMYFckfui8YMBuUZA tyArray__teJL2cDtQ9cpyIJGWjjJB0A[34];
typedef NimStringV2 tyArray__awn6UrBeChh9cVy9ccoluuYg[5];
struct tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ {
	NIM_BOOL used;
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA fromInfo;
	NimStringV2 idxPath;
	NimStringV2 linkRelPath;
	NimStringV2 title;
};
struct tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA {
	RootObj Sup;
	NI w0;
	NI col1;
};
typedef NimStringV2 tyArray__A2YC0h9cZydgH7zGAndH9bLg[6];
typedef NI tyArray__kwH07lKnsR9bj3o9bSnruElQ[6];
typedef struct {
N_NIMCALL_PTR(NIM_BOOL, ClP_0) (tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL report_p1, void* ClE_0);
void* ClE_0;
} tyProc__41mbVqfuwmrepo9bnzM9cgIw;
typedef N_CLOSURE_PTR(NIM_BOOL, TM__6mNpeIAN05DnDNzb9b3611A_586) (tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL report_p1);
typedef N_CLOSURE_PTR(NIM_BOOL, TM__6mNpeIAN05DnDNzb9b3611A_596) (tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL report_p1);
struct tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA {
	RootObj Sup;
	tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg p0;
};
struct tyObject_NimRawSeq__Tvl1urqmI1tXqzkHPbWVJQ {
	NI len;
	void* p;
};
typedef struct {
N_NIMCALL_PTR(NimStringV2, ClP_0) (NI l_p0, void* ClE_0);
void* ClE_0;
} tyProc__oybrFf5HprJ7Qzy6JCxzgw;
typedef N_CLOSURE_PTR(NimStringV2, TM__6mNpeIAN05DnDNzb9b3611A_621) (NI l_p0);
typedef N_CLOSURE_PTR(NimStringV2, TM__6mNpeIAN05DnDNzb9b3611A_627) (NI l_p0);
struct tySequence__g9cc9ce4njfC9a8r1mQEl8mIg {
  NI len; tySequence__g9cc9ce4njfC9a8r1mQEl8mIg_Content* p;
};
struct tyObject_ColSpec__Pj5Kd9cksSnFDEYTQgs0HeQ {
	NI start;
	NI stop;
};
struct tySequence__8Np6tlClE5az1CyqZdN19bQ {
  NI len; tySequence__8Np6tlClE5az1CyqZdN19bQ_Content* p;
};
struct tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg {
	RootObj Sup;
	tySequence__8Np6tlClE5az1CyqZdN19bQ row0;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* a1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* b2;
	tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg q3;
};
struct tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ {
	NI Field0;
	NI Field1;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w cellKind_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result_p2, void* ClE_0);
void* ClE_0;
} tyProc__vhSXlNTSZBtRYzM7XoxQUA;
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_656) (tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w cellKind_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result_p2);
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_662) (tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w cellKind_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result_p2);
typedef NU8 tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w;
struct tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ {
	RootObj Sup;
	tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s0;
};
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_680) (NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4);
typedef struct {
N_NIMCALL_PTR(NimStringV2, ClP_0) (tySequence__jK2T9bFw5BWKL8ZZ854oXZg locations_p0, void* ClE_0);
void* ClE_0;
} tyProc__C2lBZACRol4T3mX0xDY7Eg;
typedef N_CLOSURE_PTR(NimStringV2, TM__6mNpeIAN05DnDNzb9b3611A_689) (tySequence__jK2T9bFw5BWKL8ZZ854oXZg locations_p0);
typedef N_CLOSURE_PTR(NimStringV2, TM__6mNpeIAN05DnDNzb9b3611A_690) (tySequence__jK2T9bFw5BWKL8ZZ854oXZg locations_p0);
typedef N_CLOSURE_PTR(NimStringV2, TM__6mNpeIAN05DnDNzb9b3611A_694) (tySequence__jK2T9bFw5BWKL8ZZ854oXZg locations_p0);
typedef N_CLOSURE_PTR(NimStringV2, TM__6mNpeIAN05DnDNzb9b3611A_695) (tySequence__jK2T9bFw5BWKL8ZZ854oXZg locations_p0);
struct tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA {
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* head;
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* tail;
};
typedef NU8 tyEnum_SortOrder__wt7l6Gbd8C9c61b6I621QeA;
struct tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog {
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* next;
	tyTuple__4Ywt2LYBMs9aMJ09cL7digow value;
};
struct tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig {
	NI a;
	NI b;
};
typedef NimStringV2 tyArray__pFSozBY2rI0SvOa84b9cs3g[9];
struct tyTuple__zRV1q8K3MINNVxW2Z9aU7Ng {
	NI Field0;
	NimStringV2 Field1;
	tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ Field2;
};
struct tySequence__36jA1xDCIBAS29cySYLQ7kQ {
  NI len; tySequence__36jA1xDCIBAS29cySYLQ7kQ_Content* p;
};
typedef NU8 tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ;
struct tyObject_IndexEntry__r4FGmtl4yhJtHvFotaeMmQ {
	tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ kind;
	NimStringV2 keyword;
	NimStringV2 link;
	NimStringV2 linkTitle;
	NimStringV2 linkDesc;
	NI line;
	NimStringV2 module;
	NimStringV2 aux;
};
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_710) (NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4);
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_715) (NimStringV2 targetRelPath_p0, tyTuple__UV3llMMYFckfui8YMBuUZA* Result);
struct tyTuple__mBPo6SdWuL2NLQ9aX5t1kTg {
	tySequence__36jA1xDCIBAS29cySYLQ7kQ Field0;
	tyObject_IndexEntry__r4FGmtl4yhJtHvFotaeMmQ Field1;
};
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_716) (NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4);
typedef N_CLOSURE_PTR(void, TM__6mNpeIAN05DnDNzb9b3611A_718) (NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4);
struct tySequence__ElKBSoViSyNazy7qD89atSA {
  NI len; tySequence__ElKBSoViSyNazy7qD89atSA_Content* p;
};
typedef NU8 tyEnum_AnchorRule__2EJ03fugiw0bGfuZoUTntQ;
struct tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw {
	tyEnum_AnchorRule__2EJ03fugiw0bGfuZoUTntQ ar;
	NI priority;
	NimStringV2 tooltip;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* target;
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info;
	NimStringV2 externFilename;
	NIM_BOOL isTitle;
};
struct tySequence__pdOdj3OjB4RCTgPEeNVJ9bQ {
  NI len; tySequence__pdOdj3OjB4RCTgPEeNVJ9bQ_Content* p;
};
struct tyObject_Table__N9c3CcsmyVBdM9bJn2kzIHNQ {
	tySequence__pdOdj3OjB4RCTgPEeNVJ9bQ data;
	NI counter;
};
struct tyTuple__fgn415DvsSyiHk3o9aIYr0w {
	NI Field0;
	tyTuple__UV3llMMYFckfui8YMBuUZA Field1;
	tySequence__ib5UTyrs9aC6K60sNqKElQA Field2;
};
typedef struct {
N_NIMCALL_PTR(NI, ClP_0) (tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* x_p0, tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* y_p1, void* ClE_0);
void* ClE_0;
} tyProc__7dBieSzuUwU9acqXqFfvHMg;
typedef N_CLOSURE_PTR(NI, TM__6mNpeIAN05DnDNzb9b3611A_757) (tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* x_p0, tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* y_p1, void* ClE_0);
struct tyTuple__qu9bB9c0GkBBtltgCSAk9aq0A {
	NimStringV2 Field0;
	tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ Field1;
};
struct tySequence__mQLVW9aAdq9aAi9aGNi0iC9chg_Content { NI cap; tyTuple__zRV1q8K3MINNVxW2Z9aU7Ng data[SEQ_DECL_SIZE]; };
struct tySequence__qagWYy9b8OIJNg9bWhIaAjyw_Content { NI cap; tyObject_LevelInfo__KZjTutWfS3RhxSg89cxkiqQ data[SEQ_DECL_SIZE]; };
struct tySequence__vz9c2digtAnM8l0FZWLUAGg_Content { NI cap; tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A data[SEQ_DECL_SIZE]; };
struct tyTuple__Na59bk2YQTCLBWTLyeMrWdA {
	NI Field0;
	NimStringV2 Field1;
	tySequence__ib5UTyrs9aC6K60sNqKElQA Field2;
};
struct tySequence__O9a9cp2XDKWshwC0UDgFP6Pw_Content { NI cap; tyTuple__Na59bk2YQTCLBWTLyeMrWdA data[SEQ_DECL_SIZE]; };
struct tySequence__jK2T9bFw5BWKL8ZZ854oXZg_Content { NI cap; tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA data[SEQ_DECL_SIZE]; };
struct tySequence__vdmFdgox3dhDOMkkFi9ayfg_Content { NI cap; tyTuple__4Ywt2LYBMs9aMJ09cL7digow data[SEQ_DECL_SIZE]; };
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
	NI Field0;
	NimStringV2 Field1;
	NI32 Field2;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content { NI cap; tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE]; };
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE]; };
struct tySequence__LqZapiAqCFeXPQZdoIAUew_Content { NI cap; tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* data[SEQ_DECL_SIZE]; };
struct tySequence__ib5UTyrs9aC6K60sNqKElQA_Content { NI cap; tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA data[SEQ_DECL_SIZE]; };
struct tySequence__4eQHGndY6XBYpFOH09apV8Q_Content { NI cap; tyTuple__UV3llMMYFckfui8YMBuUZA data[SEQ_DECL_SIZE]; };
struct tyObject_StackTraceEntry__RcJz5RXFIYjIseutvVFICA {
	NCSTRING procname;
	NI line;
	NCSTRING filename;
};
struct tySequence__S89cE01OvNjsN9c71FKsSrqQ_Content { NI cap; tyObject_StackTraceEntry__RcJz5RXFIYjIseutvVFICA data[SEQ_DECL_SIZE]; };
struct tySequence__Ygtgme9cSsBUPbXwOprm43Q_Content { NI cap; tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg data[SEQ_DECL_SIZE]; };
struct tySequence__qwqHTkRvwhrRyENtudHQ7g_Content { NI cap; NI data[SEQ_DECL_SIZE]; };
struct tySequence__7kOUUrKwg6xKu7wOGcJDlQ_Content { NI cap; tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg data[SEQ_DECL_SIZE]; };
struct tySequence__lBgZ7a89beZGYPl8PiANMTA_Content { NI cap; NIM_CHAR data[SEQ_DECL_SIZE]; };
struct tySequence__g9cc9ce4njfC9a8r1mQEl8mIg_Content { NI cap; tyObject_ColSpec__Pj5Kd9cksSnFDEYTQgs0HeQ data[SEQ_DECL_SIZE]; };
struct tySequence__8Np6tlClE5az1CyqZdN19bQ_Content { NI cap; tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ data[SEQ_DECL_SIZE]; };
struct tySequence__36jA1xDCIBAS29cySYLQ7kQ_Content { NI cap; tyObject_IndexEntry__r4FGmtl4yhJtHvFotaeMmQ data[SEQ_DECL_SIZE]; };
struct tySequence__ElKBSoViSyNazy7qD89atSA_Content { NI cap; tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw data[SEQ_DECL_SIZE]; };
struct tySequence__pdOdj3OjB4RCTgPEeNVJ9bQ_Content { NI cap; tyTuple__fgn415DvsSyiHk3o9aIYr0w data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u17773)(void* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2567)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u3536)(tySequence__mQLVW9aAdq9aAi9aGNi0iC9chg dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrstast_u152)(tySequence__LqZapiAqCFeXPQZdoIAUew dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u5506)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u1172)(tySequence__7lEisrXlQEzwtUKW5pzRCw dest_p0);
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicDyn)(void* p_p0);
static N_INLINE(NI, minuspercent___system_u805)(NI x_p0, NI y_p1);
N_LIB_PRIVATE N_NOINLINE(void, rememberCycle__system_u3497)(NIM_BOOL isDestroyAction_p0, tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* s_p1, TNimTypeV2* desc_p2);
N_LIB_PRIVATE N_NIMCALL(void, nimDestroyAndDispose)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u3372)(tySequence__vdmFdgox3dhDOMkkFi9ayfg dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u2691)(NimStringV2 dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, alignedDealloc)(void* p_p0, NI align_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u3264)(tySequence__jK2T9bFw5BWKL8ZZ854oXZg dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2856)(tySequence__O9a9cp2XDKWshwC0UDgFP6Pw dest_p0);
static N_INLINE(NIM_BOOL, nimDecRefIsLastDyn)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, unregisterCycle__system_u3127)(tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* s_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrstast_u173)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZenvvars_u82)(tySequence__4eQHGndY6XBYpFOH09apV8Q dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2693)(tySequence__vz9c2digtAnM8l0FZWLUAGg dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2586)(tySequence__qagWYy9b8OIJNg9bWhIaAjyw dest_p0);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u2579)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* dest_p0, void* env_p1);
static N_INLINE(void, nimTraceRefDyn)(void* q_p0, void* env_p1);
static N_INLINE(void, add__system_u3018)(tyObject_CellSeq__gW9aeWLFbrNaeUKXqxYBXhg* s_p0, void** c_p1, TNimTypeV2* t_p2);
N_LIB_PRIVATE N_NIMCALL(void, resize__system_u3026)(tyObject_CellSeq__gW9aeWLFbrNaeUKXqxYBXhg* s_p0);
static N_INLINE(NI, pluspercent___system_u785)(NI x_p0, NI y_p1);
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p_p0, TNimTypeV2* desc_p1);
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1);
static N_INLINE(void, nimSetMem__system_u2172)(void* a_p0, int v_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, defaultRole__packagesZdocutilsZrst_u841)(tySet_tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg options_p0);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObj)(NI size_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, eqdup___system_u2697)(NimStringV2 src_p0);
N_LIB_PRIVATE N_NIMCALL(tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w, whichRoleAux__packagesZdocutilsZrst_u849)(NimStringV2 sym_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuToLowerAsciiStr)(NimStringV2 s_p0);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1);
static N_INLINE(NIM_BOOL, equalMem__system_u1750)(void* a_p0, void* b_p1, NI size_p2);
static N_INLINE(int, nimCmpMem)(void* a_p0, void* b_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(NI, hashString)(NimStringV2 s_p0);
N_LIB_PRIVATE N_NIMCALL(tyEnum_SourceLanguage__19c0ssteZ7RkUhs6XPCRBNA, getSourceLanguage__packagesZdocutilsZhighlite_u72)(NimStringV2 name_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u2468)(tyProc__lsy8uLKFmavBA17NQuqO5g* dest_p0, tyProc__lsy8uLKFmavBA17NQuqO5g src_p1, NIM_BOOL cyclic_p2);
static N_INLINE(void, nimIncRefCyclic)(void* p_p0, NIM_BOOL cyclic_p1);
static N_INLINE(void, nimMarkCyclic)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u2462)(tyProc__lsy8uLKFmavBA17NQuqO5g* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, defaultMsgHandler__packagesZdocutilsZrst_u746)(NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgkind_p3, NimStringV2 arg_p4);
N_LIB_PRIVATE N_NIMCALL(tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA, whichMsgClass__packagesZdocutilsZrst_u608)(tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g k_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, symbolName__packagesZdocutilsZrst_u611)(tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g a_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatSingleElem)(NimStringV2 formatstr_p0, NimStringV2 a_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___packagesZdocutilsZrst_u58)(tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g e_p0);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2);
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s_p0, NI addLen_p1);
static N_INLINE(void, addInt__stdZprivateZdigitsutils_u204)(NimStringV2* result_p0, NI x_p1);
N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_u187)(NimStringV2* result_p0, NI64 x_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatOpenArray)(NimStringV2 formatstr_p0, NimStringV2* a_p1, NI a_p1Len_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___packagesZdocutilsZrst_u35)(tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA e_p0);
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u17802)(void* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u777)(tyObject_EParseError__417XwHiegT8um61EkJF9bxA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u3699)(tySequence__S89cE01OvNjsN9c71FKsSrqQ dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u789)(tyObject_EParseError__417XwHiegT8um61EkJF9bxA* dest_p0, void* env_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___system_u2688)(NimStringV2* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e_p0, NCSTRING ename_p1, NCSTRING procname_p2, NCSTRING filename_p3, NI line_p4);
static N_INLINE(void, writeLine__msgs_u470)(FILE* f_p0, NimStringV2* x_p1, NI x_p1Len_0);
N_LIB_PRIVATE N_NIMCALL(void, write__stdZsyncio_u254)(FILE* f_p0, NimStringV2 s_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___pureZunicode_u3788)(tyProc__oFHfEKFsiYTMAy9a42cSiKw* dest_p0, tyProc__oFHfEKFsiYTMAy9a42cSiKw src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___pureZunicode_u3782)(tyProc__oFHfEKFsiYTMAy9a42cSiKw* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, defaultFindFile__packagesZdocutilsZrst_u835)(NimStringV2 filename_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosfileExists)(NimStringV2 filename_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u2694)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u2519)(tyProc__lYMtBEH0vEMRzoDaCw5CJg* dest_p0, tyProc__lYMtBEH0vEMRzoDaCw5CJg src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u2513)(tyProc__lYMtBEH0vEMRzoDaCw5CJg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, defaultFindRefFile__packagesZdocutilsZrst_u838)(NimStringV2 filename_p0, tyTuple__UV3llMMYFckfui8YMBuUZA* Result);
N_LIB_PRIVATE N_NIMCALL(void, setCurrFilename__packagesZdocutilsZrst_u2402)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 file1_p1);
N_LIB_PRIVATE N_NIMCALL(NI32, addFilename__packagesZdocutilsZrst_u863)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 file1_p1);
N_LIB_PRIVATE N_NIMCALL(NI, len__packagesZdocutilsZrst_u857)(tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg* filenames_p0);
N_LIB_PRIVATE N_NIMCALL(NI32, getOrDefault__packagesZdocutilsZrst_u930)(tyObject_Table__5Vw74FRHMT0Qc2FBvLMNBQ t_p0, NimStringV2 key_p1, NI32 def_p2);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___packagesZdocutilsZrst_u1421)(tyObject_Table__5Vw74FRHMT0Qc2FBvLMNBQ* t_p0, NimStringV2 key_p1, NI32 val_p2);
N_LIB_PRIVATE N_NIMCALL(void, add__stdZenumutils_u71)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* x_p0, NimStringV2 y_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2516)(tyProc__lYMtBEH0vEMRzoDaCw5CJg dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZunicode_u3785)(tyProc__oFHfEKFsiYTMAy9a42cSiKw dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2465)(tyProc__lsy8uLKFmavBA17NQuqO5g dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u1175)(tySequence__7lEisrXlQEzwtUKW5pzRCw* dest_p0, tySequence__7lEisrXlQEzwtUKW5pzRCw src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u5509)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* dest_p0, tySequence__sM4lkSb7zS6F7OVMvW9cffQ src_p1);
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u17809)(void* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u12486)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u5790)(tySequence__7kOUUrKwg6xKu7wOGcJDlQ dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZosproc_u474)(tySequence__qwqHTkRvwhrRyENtudHQ7g dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u3922)(tySequence__Ygtgme9cSsBUPbXwOprm43Q dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u12498)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* dest_p0, void* env_p1);
static N_INLINE(void, nimTraceRef)(void* q_p0, TNimTypeV2* desc_p1, void* env_p2);
N_LIB_PRIVATE N_NIMCALL(void, initParser__packagesZdocutilsZrst_u3908)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* sharedState_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___pureZosproc_u483)(tySequence__qwqHTkRvwhrRyENtudHQ7g* dest_p0, tySequence__qwqHTkRvwhrRyENtudHQ7g src_p1);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap_p0, NI elemSize_p1, NI elemAlign_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u3931)(tySequence__Ygtgme9cSsBUPbXwOprm43Q* dest_p0, tySequence__Ygtgme9cSsBUPbXwOprm43Q src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u3744)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA** dest_p0, tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(void, getTokens__packagesZdocutilsZrst_u276)(NimStringV2 buffer_p0, tySequence__Ygtgme9cSsBUPbXwOprm43Q* tokens_p1);
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringV2 s_p0);
N_LIB_PRIVATE N_NIMCALL(void, setLen__packagesZdocutilsZrst_u295)(tySequence__Ygtgme9cSsBUPbXwOprm43Q* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(void, rawGetTok__packagesZdocutilsZrst_u258)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* tok_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___system_u2700)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NIMCALL(void, getThing__packagesZdocutilsZrst_u117)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* tok_p1, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw s_p2);
static N_INLINE(void, nimAddCharV1)(NimStringV2* s_p0, NIM_CHAR c_p1);
N_LIB_PRIVATE N_NIMCALL(void, getIndent__packagesZdocutilsZrst_u250)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* tok_p1);
N_LIB_PRIVATE N_NIMCALL(NI, getIndentAux__packagesZdocutilsZrst_u215)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, NI start_p1);
static N_INLINE(NimStringV2, spaces__pureZstrutils_u1139)(NI n_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuRepeatChar)(NIM_CHAR c_p0, NI count_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isCurrentLineAdornment__packagesZdocutilsZrst_u155)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0);
N_LIB_PRIVATE N_NIMCALL(void, getPunctAdornment__packagesZdocutilsZrst_u177)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* tok_p1);
N_LIB_PRIVATE N_NIMCALL(void, getBracket__packagesZdocutilsZrst_u202)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* tok_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDoc__packagesZdocutilsZrst_u12316)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseSectionWrapper__packagesZdocutilsZrst_u11643)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, newRstNode__packagesZdocutilsZrstast_u121)(tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w kind_p0, tySequence__LqZapiAqCFeXPQZdoIAUew sons_p1, NimStringV2 anchor_p2);
N_LIB_PRIVATE N_NIMCALL(void, parseSection__packagesZdocutilsZrst_u11589)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result_p1);
N_LIB_PRIVATE N_NIMCALL(NI, currInd__packagesZdocutilsZrst_u3883)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrstast_u463)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* son_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseLiteralBlock__packagesZdocutilsZrst_u11743)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, newRstNodeA__packagesZdocutilsZrst_u9983)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w kind_p1);
N_LIB_PRIVATE N_NIMCALL(void, addAnchorRst__packagesZdocutilsZrst_u4220)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 name_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* target_p2, tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ anchorType_p3);
N_LIB_PRIVATE N_NIMCALL(NI, internalRefPriority__packagesZdocutilsZrst_u4204)(tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ k_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrst_u5551)(tySequence__ib5UTyrs9aC6K60sNqKElQA* x_p0, tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* y_p1);
N_LIB_PRIVATE N_NIMCALL(tySequence__ib5UTyrs9aC6K60sNqKElQA*, mgetOrPut__packagesZdocutilsZrst_u4332)(tyObject_Table__bzy14J3py7GGCrkIhTsFXw* t_p0, NimStringV2 key_p1, tySequence__ib5UTyrs9aC6K60sNqKElQA val_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2877)(tySequence__ib5UTyrs9aC6K60sNqKElQA dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, setLen__packagesZdocutilsZrst_u2899)(tySequence__ib5UTyrs9aC6K60sNqKElQA* s_p0, NI newlen_p1);
static N_INLINE(void, nimIncRef)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(tySequence__4eQHGndY6XBYpFOH09apV8Q, eqdup___stdZenvvars_u88)(tySequence__4eQHGndY6XBYpFOH09apV8Q src_p0);
N_LIB_PRIVATE N_NIMCALL(tySequence__ib5UTyrs9aC6K60sNqKElQA, newSeq__packagesZdocutilsZrst_u4268)(NI len_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, eqdup___packagesZdocutilsZrstast_u291)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* src_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA, eqdup___packagesZdocutilsZrstast_u388)(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA src_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA, prevLineInfo__packagesZdocutilsZrst_u4111)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA, lineInfo__packagesZdocutilsZrst_u4104)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI iTok_p1);
N_LIB_PRIVATE N_NIMCALL(void, setLen__packagesZdocutilsZrst_u5653)(tySequence__7kOUUrKwg6xKu7wOGcJDlQ* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, newRstLeaf__packagesZdocutilsZrstast_u454)(NimStringV2 s_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrstast_u285)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, pushInd__packagesZdocutilsZrst_u3889)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI ind_p1);
N_LIB_PRIVATE N_NIMCALL(void, add__varpartitions_u1538)(tySequence__qwqHTkRvwhrRyENtudHQ7g* x_p0, NI y_p1);
N_LIB_PRIVATE N_NIMCALL(void, popInd__packagesZdocutilsZrst_u3896)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, setLen__pureZosproc_u403)(tySequence__qwqHTkRvwhrRyENtudHQ7g* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w, whichSection__packagesZdocutilsZrst_u12198)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMarkdownCodeBlock__packagesZdocutilsZrst_u11437)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMarkdownCodeBlock__packagesZdocutilsZrst_u11419)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI idx_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isRst__packagesZdocutilsZrst_u3831)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, match__packagesZdocutilsZrst_u10249)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI start_p1, NimStringV2 expr_p2);
N_LIB_PRIVATE N_NIMCALL(NI, getRefnameIdx__packagesZdocutilsZrst_u10002)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI startIdx_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, validRefnamePunct__packagesZdocutilsZrst_u9995)(NimStringV2 x_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, allCharsInSet__pureZstrutils_u1502)(NimStringV2 s_p0, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw theSet_p1);
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3820)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, currFilename__packagesZdocutilsZrst_u2422)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getFilename__packagesZdocutilsZrst_u2405)(tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg* filenames_p0, NI32 fid_p1);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__stdZassertions_u79)(NimStringV2 msg_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_u9)(NI xX60gensym0__p0);
N_LIB_PRIVATE N_NIMCALL(NI, curLine__packagesZdocutilsZrst_u3775)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isLineBlock__packagesZdocutilsZrst_u12041)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
static N_INLINE(NI, tokenAfterNewline__packagesZdocutilsZrst_u11606)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NI, tokenAfterNewline__packagesZdocutilsZrst_u11592)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI start_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMarkdownBlockQuote__packagesZdocutilsZrst_u12045)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isAdornmentHeadline__packagesZdocutilsZrst_u11950)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI adornmentIdx_p1);
static N_INLINE(NIM_BOOL, contains__stdZenumutils_u51)(NimStringV2* a_p0, NI a_p0Len_0, NimStringV2 item_p1);
static N_INLINE(NI, find__stdZenumutils_u56)(NimStringV2* a_p0, NI a_p0Len_0, NimStringV2 item_p1);
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3783)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p1, NimStringV2 arg_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMarkdownHeadline__packagesZdocutilsZrst_u12169)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMarkdownHeadlinePattern__packagesZdocutilsZrst_u12165)(NimStringV2 s_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, predNL__packagesZdocutilsZrst_u12093)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, findPipe__packagesZdocutilsZrst_u12184)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI start_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMd__packagesZdocutilsZrst_u3838)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMdFootnoteName__packagesZdocutilsZrst_u11392)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL reference_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isOptionList__packagesZdocutilsZrst_u12162)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefList__packagesZdocutilsZrst_u12100)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMdDefListItem__packagesZdocutilsZrst_u12156)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI idx_p1);
N_LIB_PRIVATE N_NIMCALL(NI, skipNewlines__packagesZdocutilsZrst_u12118)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI j_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMdRelInd__packagesZdocutilsZrst_u12138)(NI outerInd_p0, NI nestedInd_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMdDefBody__packagesZdocutilsZrst_u12142)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI j_p1, NI termCol_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrstast_u294)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** dest_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseBulletList__packagesZdocutilsZrst_u13521)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseLineBlock__packagesZdocutilsZrst_u12280)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMarkdownBlockQuote__packagesZdocutilsZrst_u12533)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, getQuoteSymbol__packagesZdocutilsZrst_u12318)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI idx_p1, tyTuple__kN8up2W6YKc5YA9avn5mV5w* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMarkdownQuoteSegment__packagesZdocutilsZrst_u12365)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 curSym_p1, NI col_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___msgs_u1579)(tyTuple__kN8up2W6YKc5YA9avn5mV5w* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrst_u12388)(tySequence__Ygtgme9cSsBUPbXwOprm43Q* x_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* y_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZrst_u345)(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* src_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* Result);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDotDot__packagesZdocutilsZrst_u11741)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getDirective__packagesZdocutilsZrst_u11521)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyTuple__XOVT24GHXwqiEj5GCsEGCA, getRefname__packagesZdocutilsZrst_u10029)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI startIdx_p1);
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3813)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p1, NimStringV2 arg_p2, NI line_p3, NI col_p4);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZosproc_u2034)(tyTuple__XOVT24GHXwqiEj5GCsEGCA dest_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, selectDir__packagesZdocutilsZrst_u15430)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 d_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u342)(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* dest_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* src_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirAdmonition__packagesZdocutilsZrst_u14105)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 d_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDirective__packagesZdocutilsZrst_u14034)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w k_p1, tySet_tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA flags_p2, tyProc__8Zd0E1yWTzZDu9cMv4ASRug contentParser_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDirective__packagesZdocutilsZrst_u13979)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w k_p1, tySet_tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA flags_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA, lineInfo__packagesZdocutilsZrst_u4108)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, newLeaf__packagesZdocutilsZrst_u9992)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, parseLine__packagesZdocutilsZrst_u11583)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1);
N_LIB_PRIVATE N_NIMCALL(void, parseInline__packagesZdocutilsZrst_u11440)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInlineMarkupStart__packagesZdocutilsZrst_u10187)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 markup_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inlineRstStart__packagesZdocutilsZrst_u10172)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, rstRuleSurround__packagesZdocutilsZrst_u10160)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inlineMarkdownStart__packagesZdocutilsZrst_u10165)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, parseUntil__packagesZdocutilsZrst_u10894)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1, NimStringV2 postfix_p2, NIM_BOOL interpretBackslash_p3);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInlineMarkupEnd__packagesZdocutilsZrst_u10097)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 markup_p1, NIM_BOOL exact_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuEndsWith)(NimStringV2 s_p0, NimStringV2 suffix_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inlineRstEnd__packagesZdocutilsZrst_u10082)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inlineMarkdownEnd__packagesZdocutilsZrst_u10075)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
static N_INLINE(NimStringV2, X5BX5D___pureZstrutils_u1286)(NimStringV2 s_p0, tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA x_p1);
N_NIMCALL(NimStringV2, mnewString)(NI len_p0);
static N_INLINE(void, nimPrepareStrMutationV2)(NimStringV2* s_p0);
N_LIB_PRIVATE N_NIMCALL(void, nimPrepareStrMutationImpl__system_u2430)(NimStringV2* s_p0);
static N_INLINE(tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA, dotdot___stdZstrbasics_u49)(NI a_p0, NI b_p1);
N_LIB_PRIVATE N_NIMCALL(void, setLen__packagesZdocutilsZrstast_u241)(tySequence__LqZapiAqCFeXPQZdoIAUew* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(void, parseBackslash__packagesZdocutilsZrst_u10861)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rstnodeToRefname__packagesZdocutilsZrst_u78)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, rstnodeToRefnameAux__packagesZdocutilsZrst_u4022)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0, NimStringV2* r_p1, NIM_BOOL* b_p2);
N_LIB_PRIVATE N_NIMCALL(NI, len__packagesZdocutilsZrstast_u114)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, linkName__packagesZdocutilsZrst_u4019)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, addNodes__packagesZdocutilsZrst_u80)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0);
N_LIB_PRIVATE N_NIMCALL(void, addNodesAux__packagesZdocutilsZrst_u4000)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0, NimStringV2* result_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMarkdownCodeblock__packagesZdocutilsZrst_u11099)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMarkdownCodeblockFields__packagesZdocutilsZrst_u10987)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, mayLoadFile__packagesZdocutilsZrst_u11070)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** result_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuStrip)(NimStringV2 s_p0, NIM_BOOL leading_p1, NIM_BOOL trailing_p2, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars_p3);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getFieldValue__packagesZdocutilsZrst_u82)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0, NimStringV2 fieldname_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrstast_u288)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** dest_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* src_p1);
N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreStyle)(NimStringV2 a_p0, NimStringV2 b_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u339)(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, findRelativeFile__packagesZdocutilsZrst_u3778)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 filename_p1);
static N_INLINE(NimStringV2, slash___stdZprivateZospaths2_u91)(NimStringV2 head_p0, NimStringV2 tail_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosjoinPath)(NimStringV2 head_p0, NimStringV2 tail_p1);
N_LIB_PRIVATE N_NIMCALL(void, nossplitFile)(NimStringV2 path_p0, tyTuple__7q7q3E6Oj24ZNVJb9aonhAg* Result);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZos_u200)(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, readFile__stdZsyncio_u527)(NimStringV2 filename_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrstast_u282)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** dest_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuRepeatStr)(NimStringV2 s_p0, NI n_p1);
N_LIB_PRIVATE N_NIMCALL(void, defaultCodeLangNim__packagesZdocutilsZrst_u11085)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** result_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, newRstNode__packagesZdocutilsZrstast_u370)(tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w kind_p0, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p1, tySequence__LqZapiAqCFeXPQZdoIAUew sons_p2);
N_LIB_PRIVATE N_NIMCALL(tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w, whichRole__packagesZdocutilsZrst_u10377)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 sym_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, toInlineCode__packagesZdocutilsZrst_u10385)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0, NimStringV2 language_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, toOtherRole__packagesZdocutilsZrst_u10404)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w kind_p1, NimStringV2 roleName_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parsePostfix__packagesZdocutilsZrst_u10457)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrstast_u155)(tySequence__LqZapiAqCFeXPQZdoIAUew* dest_p0, tySequence__LqZapiAqCFeXPQZdoIAUew src_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, fixupEmbeddedRef__packagesZdocutilsZrst_u10349)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* a_p2, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* b_p3);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, safeProtocol__packagesZdocutilsZrst_u10329)(NimStringV2* linkStr_p0);
N_LIB_PRIVATE N_NIMCALL(NI, parseIdent__pureZparseutils_u903)(NimStringV2 s_p0, NimStringV2* ident_p1, NI start_p2);
static N_INLINE(NI, skip__pureZparseutils_u921)(NimStringV2 s_p0, NimStringV2 token_p1, NI start_p2);
static N_INLINE(NI, skip__pureZparseutils_u145)(NIM_CHAR* s_p0, NI s_p0Len_0, NIM_CHAR* token_p1, NI token_p1Len_0);
N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreCase)(NimStringV2 a_p0, NimStringV2 b_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrstast_u161)(tySequence__LqZapiAqCFeXPQZdoIAUew* dest_p0, tySequence__LqZapiAqCFeXPQZdoIAUew src_p1);
N_LIB_PRIVATE N_NIMCALL(void, setRef__packagesZdocutilsZrst_u4147)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 key_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* value_p2, tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw refType_p3);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrst_u4127)(tySequence__vz9c2digtAnM8l0FZWLUAGg* x_p0, tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A* y_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, finalizeInterpreted__packagesZdocutilsZrst_u10463)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* node_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w newKind_p1, tySequence__LqZapiAqCFeXPQZdoIAUew newSons_p2, NimStringV2 roleName_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseFootnoteName__packagesZdocutilsZrst_u11415)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL reference_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMdFootnoteName__packagesZdocutilsZrst_u11401)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL reference_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseRstFootnoteName__packagesZdocutilsZrst_u11356)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL reference_p1);
N_LIB_PRIVATE N_NIMCALL(tyTuple__7EQdxYuaZDgtungG7UmspQ, getFootnoteType__packagesZdocutilsZrst_u11352)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* label_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMd__packagesZdocutilsZrst_u3845)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0);
N_LIB_PRIVATE N_NIMCALL(tyTuple__7EQdxYuaZDgtungG7UmspQ, getMdFootnoteType__packagesZdocutilsZrst_u11349)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* label_p0);
N_LIB_PRIVATE N_NIMCALL(NI, nsuParseInt)(NimStringV2 s_p0);
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2);
static N_INLINE(Exception*, nimBorrowCurrentException)(void);
static N_INLINE(void, popCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u3661)(Exception** dest_p0, Exception* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(tyTuple__7EQdxYuaZDgtungG7UmspQ, getRstFootnoteType__packagesZdocutilsZrst_u11308)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* label_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrst_u8213)(tySequence__jK2T9bFw5BWKL8ZZ854oXZg* x_p0, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA y_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, parseMarkdownLink__packagesZdocutilsZrst_u11165)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1);
N_LIB_PRIVATE N_NIMCALL(void, setLen__pureZosproc_u1391)(tySequence__lBgZ7a89beZGYPl8PiANMTA* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZosproc_u1371)(tySequence__lBgZ7a89beZGYPl8PiANMTA dest_p0);
static N_INLINE(NIM_BOOL, checkParen__packagesZdocutilsZrst_u10729)(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* token_p0, tySequence__lBgZ7a89beZGYPl8PiANMTA* parensStack_p1);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrst_u10742)(tySequence__lBgZ7a89beZGYPl8PiANMTA* x_p0, NIM_CHAR y_p1);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrstast_u486)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p0, NimStringV2 s_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseSmiley__packagesZdocutilsZrst_u10556)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___stdZprivateZospaths2_u309)(tyTuple__UV3llMMYFckfui8YMBuUZA* dest_p0, tyTuple__UV3llMMYFckfui8YMBuUZA* src_p1);
N_LIB_PRIVATE N_NIMCALL(NI, matchVerbatim__packagesZdocutilsZrst_u10537)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI start_p1, NimStringV2 expr_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuContinuesWith)(NimStringV2 s_p0, NimStringV2 substr_p1, NI start_p2);
N_LIB_PRIVATE N_NIMCALL(void, parseWordOrRef__packagesZdocutilsZrst_u10815)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isUrl__packagesZdocutilsZrst_u10667)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI i_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseUrl__packagesZdocutilsZrst_u10779)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseFields__packagesZdocutilsZrst_u11666)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseField__packagesZdocutilsZrst_u11650)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NI, getWrappableIndent__packagesZdocutilsZrst_u11609)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, parseBlockContent__packagesZdocutilsZrst_u11632)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** father_p1, tyProc__8Zd0E1yWTzZDu9cMv4ASRug contentParser_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, indFollows__packagesZdocutilsZrst_u11625)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirCodeBlock__packagesZdocutilsZrst_u14080)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL nimExtension_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirContainer__packagesZdocutilsZrst_u14084)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirContents__packagesZdocutilsZrst_u14099)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirDefaultRole__packagesZdocutilsZrst_u14109)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirFigure__packagesZdocutilsZrst_u14093)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirImage__packagesZdocutilsZrst_u14090)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirImportdoc__packagesZdocutilsZrst_u14142)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ, nsuSplitCharSet)(NimStringV2 s_p0, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw seps_p1, NI maxsplit_p2);
N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___packagesZdocutilsZrst_u14203)(tyObject_Table__KmtoFP03CxvNyT9cF9cS2OGA* t_p0, NimStringV2 key_p1, tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* val_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rmSpaces__packagesZdocutilsZrst_u14160)(NimStringV2 s_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuJoinSep)(NimStringV2* a_p0, NI a_p0Len_0, NimStringV2 sep_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirInclude__packagesZdocutilsZrst_u14047)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindStr)(NimStringV2 s_p0, NimStringV2 sub_p1, NI start_p2, NI last_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirIndex__packagesZdocutilsZrst_u14102)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirRaw__packagesZdocutilsZrst_u14135)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, dirRawAux__packagesZdocutilsZrst_u14127)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** result_p1, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w kind_p2, tyProc__8Zd0E1yWTzZDu9cMv4ASRug contentParser_p3);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDirBody__packagesZdocutilsZrst_u14043)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyProc__8Zd0E1yWTzZDu9cMv4ASRug contentParser_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirRole__packagesZdocutilsZrst_u14119)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirTitle__packagesZdocutilsZrst_u14096)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, getReferenceName__packagesZdocutilsZrst_u10039)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 endStr_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, untilEol__packagesZdocutilsZrst_u10054)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrst_u15535)(tySequence__7kOUUrKwg6xKu7wOGcJDlQ* x_p0, tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg* y_p1);
N_LIB_PRIVATE N_NIMCALL(void, expect__packagesZdocutilsZrst_u10067)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 tok_p1);
N_LIB_PRIVATE N_NIMCALL(void, setSub__packagesZdocutilsZrst_u4114)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 key_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* value_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseFootnote__packagesZdocutilsZrst_u13848)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, prefix__packagesZdocutilsZrst_u13845)(tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g ftnType_p0);
N_LIB_PRIVATE N_NIMCALL(void, addFootnoteNumManual__packagesZdocutilsZrst_u8129)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI num_p1);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrst_u8152)(tySequence__vdmFdgox3dhDOMkkFi9ayfg* x_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow* y_p1);
N_LIB_PRIVATE N_NIMCALL(void, addFootnoteNumAuto__packagesZdocutilsZrst_u8210)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 label_p1);
N_LIB_PRIVATE N_NIMCALL(void, addFootnoteSymAuto__packagesZdocutilsZrst_u8248)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseComment__packagesZdocutilsZrst_u11549)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI col_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseEnumList__packagesZdocutilsZrst_u13660)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_CLOSURE(NIM_BOOL, checkAfterNewline__packagesZdocutilsZrst_u13763)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL report_p1, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuDedent)(NimStringV2 s_p0, NI count_p1);
N_LIB_PRIVATE N_NIMCALL(NI, indentation__pureZstrutils_u1338)(NimStringV2 s_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18163)(tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18137)(tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__pureZstrutils_u1833)(NimStringV2 s_p0, NimStringV2 sub_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nimCharToStr)(NIM_CHAR x_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDefinitionList__packagesZdocutilsZrst_u13623)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMdDefinitionList__packagesZdocutilsZrst_u13608)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, skipNewlines__packagesZdocutilsZrst_u12135)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NI, getMdBlockIndent__packagesZdocutilsZrst_u11617)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseTransition__packagesZdocutilsZrst_u13495)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseHeadline__packagesZdocutilsZrst_u12614)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, parseUntilNewline__packagesZdocutilsZrst_u11586)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1);
N_LIB_PRIVATE N_NIMCALL(NI, getLevel__packagesZdocutilsZrst_u11826)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_CHAR c_p1, NIM_BOOL hasOverline_p2);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrst_u11899)(tySequence__qagWYy9b8OIJNg9bWhIaAjyw* x_p0, tyObject_LevelInfo__KZjTutWfS3RhxSg89cxkiqQ y_p1);
N_LIB_PRIVATE N_NIMCALL(void, checkHeadingHierarchy__packagesZdocutilsZrst_u12602)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI lvl_p1);
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u18357)(void* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18260)(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u18272)(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA* dest_p0, void* env_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u12489)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* dest_p0, tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u3925)(tySequence__Ygtgme9cSsBUPbXwOprm43Q* dest_p0, tySequence__Ygtgme9cSsBUPbXwOprm43Q src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___pureZosproc_u477)(tySequence__qwqHTkRvwhrRyENtudHQ7g* dest_p0, tySequence__qwqHTkRvwhrRyENtudHQ7g src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u5793)(tySequence__7kOUUrKwg6xKu7wOGcJDlQ* dest_p0, tySequence__7kOUUrKwg6xKu7wOGcJDlQ src_p1);
static N_INLINE(NIM_BOOL, sameSeqPayload)(void* x_p0, void* y_p1);
N_LIB_PRIVATE N_CLOSURE(NimStringV2, descr__packagesZdocutilsZrst_u12605)(NI l_p0, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18310)(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrstast_u466)(tySequence__LqZapiAqCFeXPQZdoIAUew* x_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* y_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseOverline__packagesZdocutilsZrst_u12653)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseSimpleTable__packagesZdocutilsZrst_u13267)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NI, getColumns__packagesZdocutilsZrst_u12777)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg* cols_p1, NI startIdx_p2);
N_LIB_PRIVATE N_NIMCALL(void, setLen__packagesZdocutilsZrst_u12788)(tySequence__g9cc9ce4njfC9a8r1mQEl8mIg* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(NI, tokStart__packagesZdocutilsZrst_u12763)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI idx_p1);
N_LIB_PRIVATE N_NIMCALL(NI, tokEnd__packagesZdocutilsZrst_u12770)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI idx_p1);
N_LIB_PRIVATE N_NIMCALL(void, checkColumns__packagesZdocutilsZrst_u12891)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg cols_p1);
N_LIB_PRIVATE N_NIMCALL(void, stopOrWarn__packagesZdocutilsZrst_u3852)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g errorType_p1, NimStringV2 arg_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isPureRst__packagesZdocutilsZrst_u3824)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, stopOrWarn__packagesZdocutilsZrst_u3876)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g errorType_p1, NimStringV2 arg_p2, NI line_p3, NI col_p4);
static N_INLINE(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA**, X5BX5D___packagesZdocutilsZrst_u13287)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** s_p0, NI s_p0Len_0, NI i_p1);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObjUninit)(NI size_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(tySequence__LqZapiAqCFeXPQZdoIAUew, eqdup___packagesZdocutilsZrstast_u158)(tySequence__LqZapiAqCFeXPQZdoIAUew src_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseSimpleTableRow__packagesZdocutilsZrst_u12981)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg cols_p1, NIM_CHAR colChar_p2);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___packagesZdocutilsZrst_u12993)(tySequence__g9cc9ce4njfC9a8r1mQEl8mIg x_p0, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg y_p1);
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ, newSeq__stdZsyncio_u571)(NI len_p0);
N_LIB_PRIVATE N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g, getSpans__packagesZdocutilsZrst_u12933)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI nextLine_p1, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg cols_p2, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg unitedCols_p3);
N_LIB_PRIVATE N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g, newSeq__pureZosproc_u390)(NI len_p0);
N_LIB_PRIVATE N_NIMCALL(NI, tokEnd__packagesZdocutilsZrst_u12774)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(NI, tokStart__packagesZdocutilsZrst_u12767)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u13233)(tySequence__g9cc9ce4njfC9a8r1mQEl8mIg dest_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMarkdownTable__packagesZdocutilsZrst_u13428)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u18562)(void* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18461)(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___types_u1571)(tySequence__8Np6tlClE5az1CyqZdN19bQ dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u18473)(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg* dest_p0, void* env_p1);
N_LIB_PRIVATE N_CLOSURE(void, parseRow__packagesZdocutilsZrst_u13435)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w cellKind_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result_p2, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___types_u1580)(tySequence__8Np6tlClE5az1CyqZdN19bQ* dest_p0, tySequence__8Np6tlClE5az1CyqZdN19bQ src_p1);
N_LIB_PRIVATE N_NIMCALL(tySequence__8Np6tlClE5az1CyqZdN19bQ, readTableRow__packagesZdocutilsZrst_u13334)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrst_u13356)(tySequence__8Np6tlClE5az1CyqZdN19bQ* x_p0, tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ y_p1);
N_LIB_PRIVATE N_NIMCALL(void, setLen__packagesZdocutilsZrst_u13445)(tySequence__8Np6tlClE5az1CyqZdN19bQ* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getColContents__packagesZdocutilsZrst_u13390)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ colLim_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isValidDelimiterRow__packagesZdocutilsZrst_u13399)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI colNum_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuStartsWith)(NimStringV2 s_p0, NimStringV2 prefix_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18527)(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseOptionList__packagesZdocutilsZrst_u13549)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, parseParagraph__packagesZdocutilsZrst_u12570)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result_p1);
N_LIB_PRIVATE N_NIMCALL(void, addIfNotNil__packagesZdocutilsZrstast_u493)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* son_p1);
N_LIB_PRIVATE N_NIMCALL(tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w, whichRstLiteralBlock__packagesZdocutilsZrst_u12048)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseRstLiteralBlock__packagesZdocutilsZrst_u11817)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w kind_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseQuotedLiteralBlock__packagesZdocutilsZrst_u11780)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0);
N_LIB_PRIVATE N_NIMCALL(tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w, sonKind__packagesZdocutilsZrst_u13893)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p0, NI i_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZdochelpers_u165)(tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw* src_p0, tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw* Result);
N_LIB_PRIVATE N_NIMCALL(void, countTitles__packagesZdocutilsZrst_u11922)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1);
N_LIB_PRIVATE N_NIMCALL(void, fixHeadlines__packagesZdocutilsZrst_u12693)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0);
N_LIB_PRIVATE N_NIMCALL(void, orderFootnotes__packagesZdocutilsZrst_u8261)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0);
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u18777)(void* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18666)(tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u18678)(tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ* dest_p0, void* env_p1);
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3788)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p1, NimStringV2 arg_p2);
N_LIB_PRIVATE N_CLOSURE(NimStringV2, listFootnotes__packagesZdocutilsZrst_u8263)(tySequence__jK2T9bFw5BWKL8ZZ854oXZg locations_p0, void* ClE_0);
static N_INLINE(NimStringV2*, X5BX5D___cgen_u3675)(NimStringV2* s_p0, NI s_p0Len_0, NI i_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_u44)(NU16 xX60gensym7__p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZrst_u3444)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* src_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow* Result);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u3369)(tySequence__vdmFdgox3dhDOMkkFi9ayfg* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, sort__packagesZdocutilsZrst_u8367)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* a_p0, NI a_p0Len_0, tyEnum_SortOrder__wt7l6Gbd8C9c61b6I621QeA order_p1);
N_LIB_PRIVATE N_NIMCALL(void, initSinglyLinkedList__packagesZdocutilsZrst_u8692)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* Result);
N_LIB_PRIVATE N_NIMCALL(void, append__packagesZdocutilsZrst_u8715)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* a_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow* b_p1);
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u18784)(void* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u8840)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* dest_p0, void* env_p1);
static N_INLINE(void, prepend__packagesZdocutilsZrst_u9159)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* L_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow* value_p1);
static N_INLINE(void, prepend__packagesZdocutilsZrst_u9209)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* L_p0, tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* n_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u8811)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog** dest_p0, tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* src_p1, NIM_BOOL cyclic_p2);
N_LIB_PRIVATE N_NIMCALL(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*, newSinglyLinkedNode__packagesZdocutilsZrst_u8798)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* value_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u8808)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* dest_p0);
N_LIB_PRIVATE N_NIMCALL(tySequence__vdmFdgox3dhDOMkkFi9ayfg, X5BX5D___packagesZdocutilsZrst_u9265)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* s_p0, NI s_p0Len_0, tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig x_p1);
static N_INLINE(tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig, dotdot___stdZenumutils_u106)(NI a_p0, NI b_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*, newSinglyLinkedNode__packagesZdocutilsZrst_u9336)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* value_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u8819)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog** dest_p0, tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u8805)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog** dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, append__packagesZdocutilsZrst_u9401)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* a_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow* b_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u3447)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* dest_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u3435)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u3438)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u9629)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u3381)(tySequence__vdmFdgox3dhDOMkkFi9ayfg* dest_p0, tySequence__vdmFdgox3dhDOMkkFi9ayfg src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18707)(tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NI, len__packagesZdocutilsZrst_u16315)(tyObject_Table__KmtoFP03CxvNyT9cF9cS2OGA t_p0);
static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_u32)(NI hcode_p0);
N_LIB_PRIVATE N_NIMCALL(void, loadIdxFile__packagesZdocutilsZrst_u15616)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA** s_p0, NimStringV2 origFilename_p1);
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3806)(tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg* filenames_p0, tyProc__lsy8uLKFmavBA17NQuqO5g f_p1, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4);
N_LIB_PRIVATE N_NIMCALL(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ*, X5BX5D___packagesZdocutilsZrst_u15736)(tyObject_Table__KmtoFP03CxvNyT9cF9cS2OGA* t_p0, NimStringV2 key_p1);
N_LIB_PRIVATE N_NIMCALL(void, parseIdxFile__packagesZdocutilsZrstidx_u113)(NimStringV2 path_p0, tyTuple__mBPo6SdWuL2NLQ9aX5t1kTg* Result);
static N_INLINE(Exception*, getCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZparseutils_u367)(tyObject_ValueError__S29bKZF4TUS33IR7ZXb7fFA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, extractLinkEnd__packagesZdocutilsZrst_u15592)(NimStringV2 x_p0);
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindChar)(NimStringV2 s_p0, NIM_CHAR sub_p1, NI start_p2, NI last_p3);
N_LIB_PRIVATE N_NIMCALL(NI, nsuRFindChar)(NimStringV2 s_p0, NIM_CHAR sub_p1, NI start_p2, NI last_p3);
static N_INLINE(NimStringV2, X5BX5D___pureZstrutils_u1314)(NimStringV2 s_p0, tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig x_p1);
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3800)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 filename_p1, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p2, NimStringV2 arg_p3);
N_LIB_PRIVATE N_NIMCALL(void, addAnchorExtRst__packagesZdocutilsZrst_u5846)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA** s_p0, NimStringV2 key_p1, NimStringV2 refn_p2, tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ anchorType_p3, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p4);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___packagesZdocutilsZrstidx_u13)(tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ e_p0);
N_LIB_PRIVATE N_NIMCALL(tySequence__LqZapiAqCFeXPQZdoIAUew, newSeq__packagesZdocutilsZrst_u16126)(NI len_p0);
N_LIB_PRIVATE N_NIMCALL(void, toLangSymbol__packagesZdocutilsZdochelpers_u188)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* linkText_p0, tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw* Result);
N_LIB_PRIVATE N_NIMCALL(void, langSymbolGroup__packagesZdocutilsZdochelpers_u145)(NimStringV2 kind_p0, NimStringV2 name_p1, tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw* Result);
N_LIB_PRIVATE N_NIMCALL(void, addAnchorNim__packagesZdocutilsZrst_u5936)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA** s_p0, NIM_BOOL external_p1, NimStringV2 refn_p2, NimStringV2 tooltip_p3, tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw* langSym_p4, NI priority_p5, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p6, NI32 module_p7);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZdochelpers_u159)(tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrstidx_u281)(tySequence__36jA1xDCIBAS29cySYLQ7kQ dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZprivateZospaths2_u306)(tyTuple__UV3llMMYFckfui8YMBuUZA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(NI, findSub__packagesZdocutilsZrst_u4059)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getEnv__stdZenvvars_u16)(NimStringV2 key_p0, NimStringV2 default_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, resolveLink__packagesZdocutilsZrst_u16496)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1);
N_LIB_PRIVATE N_NIMCALL(tySequence__vz9c2digtAnM8l0FZWLUAGg, findRef__packagesZdocutilsZrst_u4184)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 key_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZrst_u2766)(tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A* src_p0, tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A* Result);
N_LIB_PRIVATE N_NIMCALL(void, add__packagesZdocutilsZrst_u16561)(tySequence__ElKBSoViSyNazy7qD89atSA* x_p0, tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* y_p1);
N_LIB_PRIVATE N_NIMCALL(NI, refPriority__packagesZdocutilsZrst_u4201)(tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw k_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___packagesZdocutilsZrst_u482)(tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw e_p0);
N_LIB_PRIVATE N_NIMCALL(tySequence__ib5UTyrs9aC6K60sNqKElQA, findMainAnchorRst__packagesZdocutilsZrst_u8021)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 linkText_p1, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p2);
N_LIB_PRIVATE N_NIMCALL(tySequence__ib5UTyrs9aC6K60sNqKElQA, getOrDefault__packagesZdocutilsZrst_u6115)(tyObject_Table__bzy14J3py7GGCrkIhTsFXw t_p0, NimStringV2 key_p1, tySequence__ib5UTyrs9aC6K60sNqKElQA def_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___stdZenvvars_u85)(tySequence__4eQHGndY6XBYpFOH09apV8Q* dest_p0, tySequence__4eQHGndY6XBYpFOH09apV8Q src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZrst_u2988)(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* src_p0, tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* Result);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getFilename__packagesZdocutilsZrst_u2414)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* subst_p1);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDocumentationTitle__packagesZdocutilsZrstidx_u24)(NimStringV2 hyperlink_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___packagesZdocutilsZrst_u500)(tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ e_p0);
N_LIB_PRIVATE N_NIMCALL(tySequence__ib5UTyrs9aC6K60sNqKElQA, findMainAnchorNim__packagesZdocutilsZrst_u6027)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* signature_p1, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u7984)(tyObject_Table__N9c3CcsmyVBdM9bJn2kzIHNQ dest_p0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, match__packagesZdocutilsZdochelpers_u649)(tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw* generated_p0, tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw* docLink_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getModule__packagesZdocutilsZrst_u2418)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* subst_p1);
N_LIB_PRIVATE N_NIMCALL(tySequence__ib5UTyrs9aC6K60sNqKElQA*, mgetOrPut__packagesZdocutilsZrst_u6296)(tyObject_Table__N9c3CcsmyVBdM9bJn2kzIHNQ* t_p0, tyTuple__UV3llMMYFckfui8YMBuUZA* key_p1, tySequence__ib5UTyrs9aC6K60sNqKElQA val_p2);
N_LIB_PRIVATE N_NIMCALL(NI, len__packagesZdocutilsZrst_u7718)(tyObject_Table__N9c3CcsmyVBdM9bJn2kzIHNQ t_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___stdZprivateZospaths2_u315)(tyTuple__UV3llMMYFckfui8YMBuUZA* dest_p0, tyTuple__UV3llMMYFckfui8YMBuUZA* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdup___stdZprivateZospaths2_u312)(tyTuple__UV3llMMYFckfui8YMBuUZA* src_p0, tyTuple__UV3llMMYFckfui8YMBuUZA* Result);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u2880)(tySequence__ib5UTyrs9aC6K60sNqKElQA* dest_p0, tySequence__ib5UTyrs9aC6K60sNqKElQA src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u2979)(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, sort__packagesZdocutilsZrst_u16751)(tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* a_p0, NI a_p0Len_0, tyProc__7dBieSzuUwU9acqXqFfvHMg cmp_p1, tyEnum_SortOrder__wt7l6Gbd8C9c61b6I621QeA order_p2);
N_LIB_PRIVATE N_NIMCALL(NI, cmp__packagesZdocutilsZrst_u16514)(tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* x_p0, tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* y_p1);
N_LIB_PRIVATE N_NIMCALL(NI, cmp__system_u8244)(NI x_p0, NI y_p1);
N_LIB_PRIVATE N_NIMCALL(NI, cmp__packagesZdocutilsZrst_u16522)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* x_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* y_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, noschangeFileExt)(NimStringV2 filename_p0, NimStringV2 ext_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosextractFilename)(NimStringV2 path_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_u19)(NI16 xX60gensym2__p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u16929)(tySequence__ElKBSoViSyNazy7qD89atSA dest_p0);
N_LIB_PRIVATE N_NIMCALL(NI, getFootnoteNum__packagesZdocutilsZrst_u9959)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 label_p1);
N_LIB_PRIVATE N_NIMCALL(NI, getFootnoteNum__packagesZdocutilsZrst_u9967)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NI order_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getAutoSymbol__packagesZdocutilsZrst_u9975)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NI order_p1);
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, resolveSubs__packagesZdocutilsZrst_u17344)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZrst_u15032)(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* src_p0, tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* Result);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u15035)(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* dest_p0, tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* src_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u15026)(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* dest_p0);
N_LIB_PRIVATE TNimTypeV2 NTIv2__6YauuaWEZeOKzNYK3p1vqA_;
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_3 = { 3 | NIM_STRLIT_FLAG, "nim" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_4 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_3};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_5 = { 7 | NIM_STRLIT_FLAG, "literal" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_6 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_5};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_7 = { 3 | NIM_STRLIT_FLAG, "idx" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_8 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_7};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_9 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_5};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_10 = { 6 | NIM_STRLIT_FLAG, "strong" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_11 = {6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_10};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__6mNpeIAN05DnDNzb9b3611A_12 = { 8 | NIM_STRLIT_FLAG, "emphasis" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_13 = {8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_12};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_14 = { 3 | NIM_STRLIT_FLAG, "sub" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_15 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_14};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_16 = { 9 | NIM_STRLIT_FLAG, "subscript" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_17 = {9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_16};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_18 = { 3 | NIM_STRLIT_FLAG, "sup" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_19 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_18};
static const struct {
  NI cap; NIM_CHAR data[11+1];
} TM__6mNpeIAN05DnDNzb9b3611A_20 = { 11 | NIM_STRLIT_FLAG, "superscript" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_21 = {11, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_20};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_22 = { 4 | NIM_STRLIT_FLAG, "code" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_23 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_22};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_24 = { 7 | NIM_STRLIT_FLAG, "program" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_25 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_24};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_26 = { 6 | NIM_STRLIT_FLAG, "option" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_27 = {6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_26};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_28 = { 3 | NIM_STRLIT_FLAG, "tok" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_29 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_28};
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__6mNpeIAN05DnDNzb9b3611A_30 = { 16 | NIM_STRLIT_FLAG, "cannot open \'$1\'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_31 = {16, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_30};
static const struct {
  NI cap; NIM_CHAR data[13+1];
} TM__6mNpeIAN05DnDNzb9b3611A_32 = { 13 | NIM_STRLIT_FLAG, "\'$1\' expected" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_33 = {13, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_32};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_34 = { 2 | NIM_STRLIT_FLAG, "$1" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_35 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_34};
static const struct {
  NI cap; NIM_CHAR data[29+1];
} TM__6mNpeIAN05DnDNzb9b3611A_36 = { 29 | NIM_STRLIT_FLAG, "grid table is not implemented" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_37 = {29, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_36};
static const struct {
  NI cap; NIM_CHAR data[43+1];
} TM__6mNpeIAN05DnDNzb9b3611A_38 = { 43 | NIM_STRLIT_FLAG, "illformed delimiter row of a Markdown table" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_39 = {43, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_38};
static const struct {
  NI cap; NIM_CHAR data[19+1];
} TM__6mNpeIAN05DnDNzb9b3611A_40 = { 19 | NIM_STRLIT_FLAG, "Illformed table: $1" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_41 = {19, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_40};
static const struct {
  NI cap; NIM_CHAR data[23+1];
} TM__6mNpeIAN05DnDNzb9b3611A_42 = { 23 | NIM_STRLIT_FLAG, "new section expected $1" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_43 = {23, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_42};
static const struct {
  NI cap; NIM_CHAR data[19+1];
} TM__6mNpeIAN05DnDNzb9b3611A_44 = { 19 | NIM_STRLIT_FLAG, "general parse error" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_45 = {19, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_44};
static const struct {
  NI cap; NIM_CHAR data[23+1];
} TM__6mNpeIAN05DnDNzb9b3611A_46 = { 23 | NIM_STRLIT_FLAG, "invalid directive: \'$1\'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_47 = {23, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_46};
static const struct {
  NI cap; NIM_CHAR data[17+1];
} TM__6mNpeIAN05DnDNzb9b3611A_48 = { 17 | NIM_STRLIT_FLAG, "invalid field: $1" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_49 = {17, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_48};
static const struct {
  NI cap; NIM_CHAR data[50+1];
} TM__6mNpeIAN05DnDNzb9b3611A_50 = { 50 | NIM_STRLIT_FLAG, "mismatch in number of footnotes and their refs: $1" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_51 = {50, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_50};
static const struct {
  NI cap; NIM_CHAR data[26+1];
} TM__6mNpeIAN05DnDNzb9b3611A_52 = { 26 | NIM_STRLIT_FLAG, "redefinition of label \'$1\'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_53 = {26, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_52};
static const struct {
  NI cap; NIM_CHAR data[25+1];
} TM__6mNpeIAN05DnDNzb9b3611A_54 = { 25 | NIM_STRLIT_FLAG, "unknown substitution \'$1\'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_55 = {25, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_54};
static const struct {
  NI cap; NIM_CHAR data[21+1];
} TM__6mNpeIAN05DnDNzb9b3611A_56 = { 21 | NIM_STRLIT_FLAG, "ambiguous doc link $1" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_57 = {21, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_56};
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__6mNpeIAN05DnDNzb9b3611A_58 = { 16 | NIM_STRLIT_FLAG, "broken link \'$1\'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_59 = {16, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_58};
static const struct {
  NI cap; NIM_CHAR data[27+1];
} TM__6mNpeIAN05DnDNzb9b3611A_60 = { 27 | NIM_STRLIT_FLAG, "language \'$1\' not supported" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_61 = {27, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_60};
static const struct {
  NI cap; NIM_CHAR data[24+1];
} TM__6mNpeIAN05DnDNzb9b3611A_62 = { 24 | NIM_STRLIT_FLAG, "field \'$1\' not supported" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_63 = {24, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_62};
static const struct {
  NI cap; NIM_CHAR data[13+1];
} TM__6mNpeIAN05DnDNzb9b3611A_64 = { 13 | NIM_STRLIT_FLAG, "RST style: $1" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_65 = {13, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_64};
static const struct {
  NI cap; NIM_CHAR data[30+1];
} TM__6mNpeIAN05DnDNzb9b3611A_66 = { 30 | NIM_STRLIT_FLAG, "importdoc for \'$1\' is not used" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_67 = {30, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_66};
static const struct {
  NI cap; NIM_CHAR data[24+1];
} TM__6mNpeIAN05DnDNzb9b3611A_68 = { 24 | NIM_STRLIT_FLAG, "disabled directive: \'$1\'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_69 = {24, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_68};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__6mNpeIAN05DnDNzb9b3611A_70 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_71 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_70};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_72 = { 1 | NIM_STRLIT_FLAG, "(" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_73 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_72};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_74 = { 2 | NIM_STRLIT_FLAG, ", " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_75 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_74};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_76 = { 1 | NIM_STRLIT_FLAG, ")" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_77 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_76};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_78 = { 7 | NIM_STRLIT_FLAG, " $1: $2" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_79 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_78};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_80 = { 4 | NIM_STRLIT_FLAG, "Hint" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_81 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_80};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_82 = { 7 | NIM_STRLIT_FLAG, "Warning" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_83 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_82};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_84 = { 5 | NIM_STRLIT_FLAG, "Error" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_85 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_84};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_86 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_70};
N_LIB_PRIVATE TNimTypeV2 NTIv2__417XwHiegT8um61EkJF9bxA_;
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_88 = { 1 | NIM_STRLIT_FLAG, "\012" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_89 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_88};
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__6mNpeIAN05DnDNzb9b3611A_91 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_92 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_94 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
N_LIB_PRIVATE TNimTypeV2 NTIv2__ZlacgQ8A2qzdbC1x2g4Gkg_;
N_LIB_PRIVATE TNimTypeV2 NTIv2__kffhi1T9cBRAzPlmKYxhbfw_;
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_98 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__6mNpeIAN05DnDNzb9b3611A_99 = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x03,
0xfe, 0xff, 0xff, 0x07, 0xfe, 0xff, 0xff, 0x07,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
;
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__6mNpeIAN05DnDNzb9b3611A_100 = {
0x00, 0x02, 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}
;
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_101 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_88};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_102 = { 1 | NIM_STRLIT_FLAG, "\\" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_103 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_102};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_104 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_105 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_106 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_107 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_108 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_88};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_109 = { 2 | NIM_STRLIT_FLAG, "::" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_110 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_109};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_111 = { 2 | NIM_STRLIT_FLAG, ".." };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_112 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_111};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_113 = { 1 | NIM_STRLIT_FLAG, "#" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_114 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_113};
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__6mNpeIAN05DnDNzb9b3611A_115 = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x03,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
;
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_116 = { 2 | NIM_STRLIT_FLAG, "iI" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_117 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_116};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_118 = { 3 | NIM_STRLIT_FLAG, "+a+" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_119 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_118};
static const struct {
  NI cap; NIM_CHAR data[60+1];
} TM__6mNpeIAN05DnDNzb9b3611A_120 = { 60 | NIM_STRLIT_FLAG, "rst.nim(519, 11) `0 <= fid.int and fid.int < filenames.len` " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_121 = {60, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_120};
static const struct {
  NI cap; NIM_CHAR data[36+1];
} TM__6mNpeIAN05DnDNzb9b3611A_122 = { 36 | NIM_STRLIT_FLAG, "incorrect FileIndex $1 (range 0..$2)" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_123 = {36, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_122};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_125 = { 2 | NIM_STRLIT_FLAG, " a" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_126 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_125};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_127 = { 1 | NIM_STRLIT_FLAG, "|" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_128 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_129 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_130 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_88};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_131 = { 1 | NIM_STRLIT_FLAG, "i" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_132 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_131};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_133 = { 1 | NIM_STRLIT_FLAG, "I" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_134 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_133};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_136 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[60+1];
} TM__6mNpeIAN05DnDNzb9b3611A_138 = { 60 | NIM_STRLIT_FLAG, "indentation of heading text allowed only for overline titles" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_139 = {60, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_138};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_140 = { 12 | NIM_STRLIT_FLAG, "(underline \'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_141 = {12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_140};
static const struct {
  NI cap; NIM_CHAR data[15+1];
} TM__6mNpeIAN05DnDNzb9b3611A_142 = { 15 | NIM_STRLIT_FLAG, "\' is too short)" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_143 = {15, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_142};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_144 = {12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_140};
static const struct {
  NI cap; NIM_CHAR data[27+1];
} TM__6mNpeIAN05DnDNzb9b3611A_145 = { 27 | NIM_STRLIT_FLAG, "\' does not match overline \'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_146 = {27, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_145};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_147 = { 2 | NIM_STRLIT_FLAG, "\')" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_148 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_147};
static const struct {
  NI cap; NIM_CHAR data[11+1];
} TM__6mNpeIAN05DnDNzb9b3611A_149 = { 11 | NIM_STRLIT_FLAG, "(overline \'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_150 = {11, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_149};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_151 = {15, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_142};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_152 = { 3 | NIM_STRLIT_FLAG, "| w" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_153 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_152};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_154 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_155 = { 1 | NIM_STRLIT_FLAG, "[" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_156 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_155};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_157 = { 1 | NIM_STRLIT_FLAG, "^" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_158 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_157};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_159 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_160 = { 2 | NIM_STRLIT_FLAG, "aI" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_161 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_160};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_163 = { 1 | NIM_STRLIT_FLAG, "+" };
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_164 = { 1 | NIM_STRLIT_FLAG, "*" };
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_165 = { 1 | NIM_STRLIT_FLAG, "-" };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_166 = { 4 | NIM_STRLIT_FLAG, ":w:E" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_167 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_166};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_168 = { 4 | NIM_STRLIT_FLAG, "(e) " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_169 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_168};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_170 = { 3 | NIM_STRLIT_FLAG, "e) " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_171 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_170};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_172 = { 3 | NIM_STRLIT_FLAG, "e. " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_173 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_172};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_174 = { 2 | NIM_STRLIT_FLAG, "-w" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_175 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_174};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_176 = { 3 | NIM_STRLIT_FLAG, "--w" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_177 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_176};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_178 = { 2 | NIM_STRLIT_FLAG, "/w" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_179 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_178};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_180 = { 3 | NIM_STRLIT_FLAG, "//w" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_181 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_180};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_182 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_109};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_183 = { 1 | NIM_STRLIT_FLAG, ":" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_184 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_185 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_160};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_186 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_170};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_187 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_172};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_188 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_189 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_190 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_88};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_191 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_192 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_193 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[55+1];
} TM__6mNpeIAN05DnDNzb9b3611A_194 = { 55 | NIM_STRLIT_FLAG, "two or more quoted lines are followed by unquoted line " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_195 = {55, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_194};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_196 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_197 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_109};
static const struct {
  NI cap; NIM_CHAR data[47+1];
} TM__6mNpeIAN05DnDNzb9b3611A_198 = { 47 | NIM_STRLIT_FLAG, "whitespace or newline expected after directive " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_199 = {47, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_198};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_200 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const struct {
  NI cap; NIM_CHAR data[42+1];
} TM__6mNpeIAN05DnDNzb9b3611A_202 = { 42 | NIM_STRLIT_FLAG, "double colon :: may be missing at end of \'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_203 = {42, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_202};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_204 = { 1 | NIM_STRLIT_FLAG, "\'" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_205 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_204};
static const struct {
  NI cap; NIM_CHAR data[46+1];
} TM__6mNpeIAN05DnDNzb9b3611A_206 = { 46 | NIM_STRLIT_FLAG, "too many colons for a directive (should be ::)" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_207 = {46, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_206};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_208 = { 5 | NIM_STRLIT_FLAG, "image" };
static const struct {
  NI cap; NIM_CHAR data[10+1];
} TM__6mNpeIAN05DnDNzb9b3611A_209 = { 10 | NIM_STRLIT_FLAG, "code-block" };
static const struct {
  NI cap; NIM_CHAR data[10+1];
} TM__6mNpeIAN05DnDNzb9b3611A_210 = { 10 | NIM_STRLIT_FLAG, "admonition" };
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_211 = { 9 | NIM_STRLIT_FLAG, "attention" };
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_212 = { 7 | NIM_STRLIT_FLAG, "caution" };
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_213 = { 9 | NIM_STRLIT_FLAG, "container" };
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__6mNpeIAN05DnDNzb9b3611A_214 = { 8 | NIM_STRLIT_FLAG, "contents" };
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_215 = { 6 | NIM_STRLIT_FLAG, "danger" };
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_216 = { 12 | NIM_STRLIT_FLAG, "default-role" };
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_217 = { 5 | NIM_STRLIT_FLAG, "error" };
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_218 = { 6 | NIM_STRLIT_FLAG, "figure" };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_219 = { 4 | NIM_STRLIT_FLAG, "hint" };
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_220 = { 9 | NIM_STRLIT_FLAG, "important" };
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_221 = { 5 | NIM_STRLIT_FLAG, "index" };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_222 = { 4 | NIM_STRLIT_FLAG, "note" };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_223 = { 4 | NIM_STRLIT_FLAG, "role" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_224 = { 3 | NIM_STRLIT_FLAG, "tip" };
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_225 = { 5 | NIM_STRLIT_FLAG, "title" };
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_226 = { 7 | NIM_STRLIT_FLAG, "warning" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_227 = {10, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_210};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_228 = {9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_211};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_229 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_212};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_230 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_22};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_231 = {10, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_209};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_232 = {9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_213};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_233 = {8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_214};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_234 = {6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_215};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_235 = {12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_216};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_236 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_217};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_237 = {6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_218};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_238 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_219};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_239 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_208};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_240 = {9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_220};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_241 = { 9 | NIM_STRLIT_FLAG, "importdoc" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_242 = {9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_241};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_243 = { 7 | NIM_STRLIT_FLAG, "include" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_244 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_243};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_245 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_221};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_246 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_222};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_247 = { 3 | NIM_STRLIT_FLAG, "raw" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_248 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_247};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_249 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_223};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_250 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_224};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_251 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_225};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_252 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_226};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_253 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_254 = { 2 | NIM_STRLIT_FLAG, "_`" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_255 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_254};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_256 = { 1 | NIM_STRLIT_FLAG, "_" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_257 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_256};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_258 = { 1 | NIM_STRLIT_FLAG, "`" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_259 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_261 = { 2 | NIM_STRLIT_FLAG, "__" };
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__6mNpeIAN05DnDNzb9b3611A_262 = {
0x00, 0x00, 0x00, 0x00, 0x84, 0xa1, 0x00, 0x14,
0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
;
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_263 = { 3 | NIM_STRLIT_FLAG, "***" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_264 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_263};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_265 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_266 = { 2 | NIM_STRLIT_FLAG, "``" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_267 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_266};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_268 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_269 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__6mNpeIAN05DnDNzb9b3611A_271 = {
0x00, 0x00, 0x00, 0x00, 0x86, 0xf2, 0x00, 0xcc,
0x00, 0x00, 0x00, 0xb0, 0x00, 0x00, 0x00, 0x20,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
;
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_272 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_266};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_273 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_274 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_275 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_276 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_102};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_277 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_102};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_278 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_102};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_279 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_102};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_280 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_281 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_282 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_102};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_283 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_102};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_284 = { 1 | NIM_STRLIT_FLAG, " " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_285 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_284};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_286 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_284};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_287 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_263};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_288 = { 2 | NIM_STRLIT_FLAG, "**" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_289 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_288};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_290 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_291 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_288};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_292 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_164};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_293 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_294 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_164};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_295 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_254};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_296 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_297 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_298 = { 6 | NIM_STRLIT_FLAG, "dollar" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_299 = {6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_298};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_300 = { 7 | NIM_STRLIT_FLAG, "percent" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_301 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_300};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_302 = { 3 | NIM_STRLIT_FLAG, "amp" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_303 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_302};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_304 = { 4 | NIM_STRLIT_FLAG, "roof" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_305 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_304};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_306 = { 5 | NIM_STRLIT_FLAG, "emark" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_307 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_306};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_308 = { 5 | NIM_STRLIT_FLAG, "qmark" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_309 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_308};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_310 = { 4 | NIM_STRLIT_FLAG, "star" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_311 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_310};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_312 = { 4 | NIM_STRLIT_FLAG, "plus" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_313 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_312};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_314 = { 5 | NIM_STRLIT_FLAG, "minus" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_315 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_314};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_316 = { 5 | NIM_STRLIT_FLAG, "slash" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_317 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_316};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_318 = { 9 | NIM_STRLIT_FLAG, "backslash" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_319 = {9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_318};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_320 = { 2 | NIM_STRLIT_FLAG, "eq" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_321 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_320};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_322 = { 2 | NIM_STRLIT_FLAG, "lt" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_323 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_322};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_324 = { 2 | NIM_STRLIT_FLAG, "gt" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_325 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_324};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_326 = { 5 | NIM_STRLIT_FLAG, "tilde" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_327 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_326};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_328 = { 5 | NIM_STRLIT_FLAG, "colon" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_329 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_328};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_330 = { 3 | NIM_STRLIT_FLAG, "dot" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_331 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_330};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_332 = { 2 | NIM_STRLIT_FLAG, "at" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_333 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_332};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_334 = { 3 | NIM_STRLIT_FLAG, "bar" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_335 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_334};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_336 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_337 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_338 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_339 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_340 = { 1 | NIM_STRLIT_FLAG, "=" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_341 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_340};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_342 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_343 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_344 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_340};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_345 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_346 = { 1 | NIM_STRLIT_FLAG, "\"" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_347 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_346};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_348 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_346};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_349 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_346};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_350 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_346};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_351 = { 2 | NIM_STRLIT_FLAG, "\001\001" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_352 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_351};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_353 = { 4 | NIM_STRLIT_FLAG, "file" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_354 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_353};
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__6mNpeIAN05DnDNzb9b3611A_355 = {
0x00, 0x3e, 0x00, 0x00, 0x05, 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}
;
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_356 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_353};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_358 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_359 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[23+1];
} TM__6mNpeIAN05DnDNzb9b3611A_360 = { 23 | NIM_STRLIT_FLAG, "$1 (started at line $2)" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_361 = {23, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_360};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_362 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_88};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_363 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_284};
static const struct {
  NI cap; NIM_CHAR data[48+1];
} TM__6mNpeIAN05DnDNzb9b3611A_364 = { 48 | NIM_STRLIT_FLAG, "unexpected de-indentation in Markdown code block" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_365 = {48, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_364};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_366 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_367 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_368 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_369 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__6mNpeIAN05DnDNzb9b3611A_370 = { 16 | NIM_STRLIT_FLAG, "default-language" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_371 = {16, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_370};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_372 = { 3 | NIM_STRLIT_FLAG, "Nim" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_373 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_372};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_374 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_266};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_375 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_376 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_266};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_377 = { 3 | NIM_STRLIT_FLAG, ":w:" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_378 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_377};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_379 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_380 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_381 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_382 = { 3 | NIM_STRLIT_FLAG, "cpp" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_383 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_382};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_384 = { 3 | NIM_STRLIT_FLAG, "c++" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_385 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_384};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_386 = { 6 | NIM_STRLIT_FLAG, "csharp" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_387 = {6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_386};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_388 = { 2 | NIM_STRLIT_FLAG, "c#" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_389 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_388};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_390 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_391 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_392 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_393 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_394 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_395 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_396 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_256};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_397 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_261};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_398 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_399 = { 1 | NIM_STRLIT_FLAG, ">" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_400 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_399};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_401 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_402 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_403 = { 1 | NIM_STRLIT_FLAG, "<" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_404 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_403};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_405 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_406 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_407 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_408 = { 4 | NIM_STRLIT_FLAG, "http" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_409 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_408};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_410 = { 5 | NIM_STRLIT_FLAG, "https" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_411 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_410};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_412 = { 3 | NIM_STRLIT_FLAG, "ftp" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_413 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_412};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_414 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_415 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_416 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_377};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_417 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_418 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_419 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_420 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_155};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_421 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_155};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_422 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_423 = { 1 | NIM_STRLIT_FLAG, "]" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_424 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_423};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_425 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_426 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_155};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_427 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_428 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_423};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_429 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_113};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_430 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_164};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_431 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_256};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_432 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_423};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_433 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_434 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_113};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_435 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_164};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_436 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_155};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_437 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_155};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_438 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_439 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_423};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_440 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_284};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_441 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_72};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_442 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_443 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_76};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_444 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_284};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_445 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_446 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_447 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_155};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_448 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_449 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_423};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_450 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_284};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_451 = { 2 | NIM_STRLIT_FLAG, ":D" };
static const struct {
  NI cap; NIM_CHAR data[14+1];
} TM__6mNpeIAN05DnDNzb9b3611A_452 = { 14 | NIM_STRLIT_FLAG, "icon_e_biggrin" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_453 = { 3 | NIM_STRLIT_FLAG, ":-D" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_454 = { 2 | NIM_STRLIT_FLAG, ":)" };
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_455 = { 12 | NIM_STRLIT_FLAG, "icon_e_smile" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_456 = { 3 | NIM_STRLIT_FLAG, ":-)" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_457 = { 2 | NIM_STRLIT_FLAG, ";)" };
static const struct {
  NI cap; NIM_CHAR data[11+1];
} TM__6mNpeIAN05DnDNzb9b3611A_458 = { 11 | NIM_STRLIT_FLAG, "icon_e_wink" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_459 = { 3 | NIM_STRLIT_FLAG, ";-)" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_460 = { 2 | NIM_STRLIT_FLAG, ":(" };
static const struct {
  NI cap; NIM_CHAR data[10+1];
} TM__6mNpeIAN05DnDNzb9b3611A_461 = { 10 | NIM_STRLIT_FLAG, "icon_e_sad" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_462 = { 3 | NIM_STRLIT_FLAG, ":-(" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_463 = { 2 | NIM_STRLIT_FLAG, ":o" };
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__6mNpeIAN05DnDNzb9b3611A_464 = { 16 | NIM_STRLIT_FLAG, "icon_e_surprised" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_465 = { 3 | NIM_STRLIT_FLAG, ":-o" };
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_466 = { 7 | NIM_STRLIT_FLAG, ":shock:" };
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__6mNpeIAN05DnDNzb9b3611A_467 = { 8 | NIM_STRLIT_FLAG, "icon_eek" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_468 = { 2 | NIM_STRLIT_FLAG, ":\?" };
static const struct {
  NI cap; NIM_CHAR data[15+1];
} TM__6mNpeIAN05DnDNzb9b3611A_469 = { 15 | NIM_STRLIT_FLAG, "icon_e_confused" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_470 = { 3 | NIM_STRLIT_FLAG, ":-\?" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_471 = { 3 | NIM_STRLIT_FLAG, ":-/" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_472 = { 3 | NIM_STRLIT_FLAG, "8-)" };
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_473 = { 9 | NIM_STRLIT_FLAG, "icon_cool" };
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_474 = { 5 | NIM_STRLIT_FLAG, ":lol:" };
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__6mNpeIAN05DnDNzb9b3611A_475 = { 8 | NIM_STRLIT_FLAG, "icon_lol" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_476 = { 2 | NIM_STRLIT_FLAG, ":x" };
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__6mNpeIAN05DnDNzb9b3611A_477 = { 8 | NIM_STRLIT_FLAG, "icon_mad" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_478 = { 3 | NIM_STRLIT_FLAG, ":-x" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_479 = { 2 | NIM_STRLIT_FLAG, ":P" };
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_480 = { 9 | NIM_STRLIT_FLAG, "icon_razz" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_481 = { 3 | NIM_STRLIT_FLAG, ":-P" };
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_482 = { 6 | NIM_STRLIT_FLAG, ":oops:" };
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_483 = { 12 | NIM_STRLIT_FLAG, "icon_redface" };
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_484 = { 5 | NIM_STRLIT_FLAG, ":cry:" };
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__6mNpeIAN05DnDNzb9b3611A_485 = { 8 | NIM_STRLIT_FLAG, "icon_cry" };
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_486 = { 6 | NIM_STRLIT_FLAG, ":evil:" };
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_487 = { 9 | NIM_STRLIT_FLAG, "icon_evil" };
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_488 = { 9 | NIM_STRLIT_FLAG, ":twisted:" };
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_489 = { 12 | NIM_STRLIT_FLAG, "icon_twisted" };
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_490 = { 6 | NIM_STRLIT_FLAG, ":roll:" };
static const struct {
  NI cap; NIM_CHAR data[13+1];
} TM__6mNpeIAN05DnDNzb9b3611A_491 = { 13 | NIM_STRLIT_FLAG, "icon_rolleyes" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_492 = { 3 | NIM_STRLIT_FLAG, ":!:" };
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_493 = { 12 | NIM_STRLIT_FLAG, "icon_exclaim" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_494 = { 3 | NIM_STRLIT_FLAG, ":\?:" };
static const struct {
  NI cap; NIM_CHAR data[13+1];
} TM__6mNpeIAN05DnDNzb9b3611A_495 = { 13 | NIM_STRLIT_FLAG, "icon_question" };
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_496 = { 6 | NIM_STRLIT_FLAG, ":idea:" };
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_497 = { 9 | NIM_STRLIT_FLAG, "icon_idea" };
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_498 = { 7 | NIM_STRLIT_FLAG, ":arrow:" };
static const struct {
  NI cap; NIM_CHAR data[10+1];
} TM__6mNpeIAN05DnDNzb9b3611A_499 = { 10 | NIM_STRLIT_FLAG, "icon_arrow" };
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_500 = { 2 | NIM_STRLIT_FLAG, ":|" };
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_501 = { 12 | NIM_STRLIT_FLAG, "icon_neutral" };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_502 = { 3 | NIM_STRLIT_FLAG, ":-|" };
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_503 = { 9 | NIM_STRLIT_FLAG, ":mrgreen:" };
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_504 = { 12 | NIM_STRLIT_FLAG, "icon_mrgreen" };
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_505 = { 6 | NIM_STRLIT_FLAG, ":geek:" };
static const struct {
  NI cap; NIM_CHAR data[11+1];
} TM__6mNpeIAN05DnDNzb9b3611A_506 = { 11 | NIM_STRLIT_FLAG, "icon_e_geek" };
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_507 = { 7 | NIM_STRLIT_FLAG, ":ugeek:" };
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_508 = { 12 | NIM_STRLIT_FLAG, "icon_e_ugeek" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_509 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_510 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_511 = { 2 | NIM_STRLIT_FLAG, "//" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_512 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_511};
static const struct {
  NI cap; NIM_CHAR data[6+1];
} TM__6mNpeIAN05DnDNzb9b3611A_514 = { 6 | NIM_STRLIT_FLAG, "telnet" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_515 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_516 = { 1 | NIM_STRLIT_FLAG, "/" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_517 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_516};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_518 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_519 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_256};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_520 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_521 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_522 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_523 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_524 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_525 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_526 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__6mNpeIAN05DnDNzb9b3611A_527 = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 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}
;
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__6mNpeIAN05DnDNzb9b3611A_528 = {
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}
;
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_529 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_530 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_5};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_531 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[11+1];
} TM__6mNpeIAN05DnDNzb9b3611A_532 = { 11 | NIM_STRLIT_FLAG, "start-after" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_533 = {11, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_532};
static const struct {
  NI cap; NIM_CHAR data[10+1];
} TM__6mNpeIAN05DnDNzb9b3611A_534 = { 10 | NIM_STRLIT_FLAG, "end-before" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_535 = {10, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_534};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_536 = { 4 | NIM_STRLIT_FLAG, "html" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_537 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_536};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_538 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_353};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_539 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_540 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[5+1];
} TM__6mNpeIAN05DnDNzb9b3611A_541 = { 5 | NIM_STRLIT_FLAG, "latex" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_542 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_541};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__6mNpeIAN05DnDNzb9b3611A_543 = { 8 | NIM_STRLIT_FLAG, "language" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_544 = {8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_543};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_545 = { 2 | NIM_STRLIT_FLAG, " _" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_546 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_545};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_547 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_548 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_549 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_550 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_551 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_258};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_552 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_553 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_554 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_555 = { 2 | NIM_STRLIT_FLAG, " |" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_556 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_555};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_557 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const struct {
  NI cap; NIM_CHAR data[7+1];
} TM__6mNpeIAN05DnDNzb9b3611A_558 = { 7 | NIM_STRLIT_FLAG, "replace" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_559 = {7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_558};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_560 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_109};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_561 = {5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_208};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_562 = { 2 | NIM_STRLIT_FLAG, " [" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_563 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_562};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_564 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_565 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_566 = { 9 | NIM_STRLIT_FLAG, "footnote-" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_567 = {9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_566};
static const struct {
  NI cap; NIM_CHAR data[13+1];
} TM__6mNpeIAN05DnDNzb9b3611A_568 = { 13 | NIM_STRLIT_FLAG, "footnoteauto-" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_569 = {13, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_568};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_570 = {9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_566};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_571 = { 12 | NIM_STRLIT_FLAG, "footnotesym-" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_572 = {12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_571};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_573 = { 9 | NIM_STRLIT_FLAG, "citation-" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_574 = {9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_573};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_575 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
N_LIB_PRIVATE TNimTypeV2 NTIv2__hdAGM0wB8YhDoPChO9cTzvA_;
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_577 = { 4 | NIM_STRLIT_FLAG, "(n) " };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_578 = { 3 | NIM_STRLIT_FLAG, "n) " };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_579 = { 3 | NIM_STRLIT_FLAG, "n. " };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_580 = { 4 | NIM_STRLIT_FLAG, "(x) " };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_581 = { 3 | NIM_STRLIT_FLAG, "x) " };
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_582 = { 3 | NIM_STRLIT_FLAG, "x. " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_583 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_88};
static const struct {
  NI cap; NIM_CHAR data[321+1];
} TM__6mNpeIAN05DnDNzb9b3611A_584 = { 321 | NIM_STRLIT_FLAG, "          not enough indentation on line $2\012            (should be at column $3 if it\'s a continuation of enum. list),\012          or no blank line after line $1 (if it should be the next paragraph),\012          or no escaping \\ at the beginning of line $1\012            (if lines $1..$2 are a normal paragraph, not enum. list)" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_585 = {321, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_584};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_587 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_113};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_588 = { 1 | NIM_STRLIT_FLAG, "1" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_589 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_588};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_590 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_113};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_591 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_592 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_113};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_593 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_113};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_594 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_588};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_595 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_597 = { 1 | NIM_STRLIT_FLAG, "n" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_598 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_597};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_599 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_113};
static const struct {
  NI cap; NIM_CHAR data[14+1];
} TM__6mNpeIAN05DnDNzb9b3611A_600 = { 14 | NIM_STRLIT_FLAG, "(syntax error)" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_601 = {14, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_600};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_602 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_109};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_603 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_604 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_109};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_605 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_606 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_607 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_109};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_608 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_609 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_610 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_611 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_612 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
N_LIB_PRIVATE TNimTypeV2 NTIv2__D9cyh4GuH9bOx7S1iB2gJxvA_;
static const struct {
  NI cap; NIM_CHAR data[29+1];
} TM__6mNpeIAN05DnDNzb9b3611A_615 = { 29 | NIM_STRLIT_FLAG, "(section level inconsistent: " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_616 = {29, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_615};
static const struct {
  NI cap; NIM_CHAR data[9+1];
} TM__6mNpeIAN05DnDNzb9b3611A_617 = { 9 | NIM_STRLIT_FLAG, "overline " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_618 = {9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_617};
static const struct {
  NI cap; NIM_CHAR data[10+1];
} TM__6mNpeIAN05DnDNzb9b3611A_619 = { 10 | NIM_STRLIT_FLAG, "underline " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_620 = {10, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_619};
static const struct {
  NI cap; NIM_CHAR data[92+1];
} TM__6mNpeIAN05DnDNzb9b3611A_622 = { 92 | NIM_STRLIT_FLAG, " unexpectedly found, while the following intermediate section level(s) are missing on lines " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_623 = {92, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_622};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_624 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_111};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_625 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_626 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_284};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_628 = { 1 | NIM_STRLIT_FLAG, "," };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_629 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_628};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_630 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_76};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_631 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_632 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_284};
static const struct {
  NI cap; NIM_CHAR data[54+1];
} TM__6mNpeIAN05DnDNzb9b3611A_633 = { 54 | NIM_STRLIT_FLAG, "only tables with `=` columns specification are allowed" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_634 = {54, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_633};
static const struct {
  NI cap; NIM_CHAR data[49+1];
} TM__6mNpeIAN05DnDNzb9b3611A_635 = { 49 | NIM_STRLIT_FLAG, "end of table column #$1 should end at position $2" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_636 = {49, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_635};
static const struct {
  NI cap; NIM_CHAR data[31+1];
} TM__6mNpeIAN05DnDNzb9b3611A_637 = { 31 | NIM_STRLIT_FLAG, "extraneous column specification" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_638 = {31, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_637};
static const struct {
  NI cap; NIM_CHAR data[23+1];
} TM__6mNpeIAN05DnDNzb9b3611A_639 = { 23 | NIM_STRLIT_FLAG, "no enough table columns" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_640 = {23, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_639};
static const struct {
  NI cap; NIM_CHAR data[52+1];
} TM__6mNpeIAN05DnDNzb9b3611A_641 = { 52 | NIM_STRLIT_FLAG, "spanning underline does not match main table columns" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_642 = {52, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_641};
static const struct {
  NI cap; NIM_CHAR data[44+1];
} TM__6mNpeIAN05DnDNzb9b3611A_643 = { 44 | NIM_STRLIT_FLAG, "this word crosses table column from the left" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_644 = {44, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_643};
static const struct {
  NI cap; NIM_CHAR data[45+1];
} TM__6mNpeIAN05DnDNzb9b3611A_645 = { 45 | NIM_STRLIT_FLAG, "this word crosses table column from the right" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_646 = {45, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_645};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_647 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_648 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
N_LIB_PRIVATE TNimTypeV2 NTIv2__mZ2FcrC2SOzDbCAWtWUGrg_;
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_651 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_652 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_653 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_102};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_654 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_655 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_657 = { 2 | NIM_STRLIT_FLAG, "--" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_658 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_657};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_659 = { 2 | NIM_STRLIT_FLAG, ":-" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_660 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_659};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_661 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_663 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_664 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_665 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_666 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_180};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_667 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_284};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_668 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_109};
static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__6mNpeIAN05DnDNzb9b3611A_669 = {
0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0x00, 0xfc,
0x01, 0x00, 0x00, 0xf8, 0x01, 0x00, 0x00, 0x78,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
;
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_670 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_671 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_672 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_88};
static const struct {
  NI cap; NIM_CHAR data[37+1];
} TM__6mNpeIAN05DnDNzb9b3611A_673 = { 37 | NIM_STRLIT_FLAG, "no newline after quoted literal block" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_674 = {37, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_673};
static const struct {
  NI cap; NIM_CHAR data[46+1];
} TM__6mNpeIAN05DnDNzb9b3611A_675 = { 46 | NIM_STRLIT_FLAG, "unexpected indentation in quoted literal block" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_676 = {46, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_675};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_677 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_678 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_165};
N_LIB_PRIVATE TNimTypeV2 NTIv2__4unMVq6uP9bSXW6xlS0qVIQ_;
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__6mNpeIAN05DnDNzb9b3611A_681 = { 8 | NIM_STRLIT_FLAG, "$1 != $2" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_682 = {8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_681};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_683 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_183};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_684 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[8+1];
} TM__6mNpeIAN05DnDNzb9b3611A_685 = { 8 | NIM_STRLIT_FLAG, " (lines " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_686 = {8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_685};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_687 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_74};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_688 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_76};
static const struct {
  NI cap; NIM_CHAR data[28+1];
} TM__6mNpeIAN05DnDNzb9b3611A_691 = { 28 | NIM_STRLIT_FLAG, " for auto-numbered footnotes" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_692 = {28, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_691};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_693 = {8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_681};
static const struct {
  NI cap; NIM_CHAR data[26+1];
} TM__6mNpeIAN05DnDNzb9b3611A_696 = { 26 | NIM_STRLIT_FLAG, " for auto-symbol footnotes" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_697 = {26, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_696};
N_LIB_PRIVATE TNimTypeV2 NTIv2__o5pWeTm9csUUSGBf9b9btbCog_;
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_699 = { 1 | NIM_STRLIT_FLAG, "~" };
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_700 = { 1 | NIM_STRLIT_FLAG, "$" };
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_701 = { 1 | NIM_STRLIT_FLAG, "@" };
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_702 = { 1 | NIM_STRLIT_FLAG, "%" };
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__6mNpeIAN05DnDNzb9b3611A_703 = { 1 | NIM_STRLIT_FLAG, "&" };
static const struct {
  NI cap; NIM_CHAR data[50+1];
} TM__6mNpeIAN05DnDNzb9b3611A_704 = { 50 | NIM_STRLIT_FLAG, "rst.nim(3585, 3) `roSandboxDisabled in s.options` " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_705 = {50, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_704};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_707 = { 3 | NIM_STRLIT_FLAG, ".md" };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_708 = { 4 | NIM_STRLIT_FLAG, ".rst" };
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_709 = { 4 | NIM_STRLIT_FLAG, ".nim" };
static const struct {
  NI cap; NIM_CHAR data[19+1];
} TM__6mNpeIAN05DnDNzb9b3611A_711 = { 19 | NIM_STRLIT_FLAG, ": unknown extension" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_712 = {19, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_711};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_713 = { 4 | NIM_STRLIT_FLAG, ".idx" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_714 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_713};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_717 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_709};
static const struct {
  NI cap; NIM_CHAR data[43+1];
} TM__6mNpeIAN05DnDNzb9b3611A_719 = { 43 | NIM_STRLIT_FLAG, "markupTitle in supposedly .nim-derived file" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_720 = {43, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_719};
static const struct {
  NI cap; NIM_CHAR data[34+1];
} TM__6mNpeIAN05DnDNzb9b3611A_722 = { 34 | NIM_STRLIT_FLAG, " in supposedly markup-derived file" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_723 = {34, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_722};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_724 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[58+1];
} TM__6mNpeIAN05DnDNzb9b3611A_725 = { 58 | NIM_STRLIT_FLAG, "rst.nim(3646, 3) `s.idxImports[origFilename].title != \"\"` " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_726 = {58, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_725};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_727 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_728 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_729 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_72};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_730 = { 12 | NIM_STRLIT_FLAG, "substitution" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_731 = {12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_730};
static const struct {
  NI cap; NIM_CHAR data[15+1];
} TM__6mNpeIAN05DnDNzb9b3611A_732 = { 15 | NIM_STRLIT_FLAG, "hyperlink alias" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_733 = {15, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_732};
static const struct {
  NI cap; NIM_CHAR data[36+1];
} TM__6mNpeIAN05DnDNzb9b3611A_734 = { 36 | NIM_STRLIT_FLAG, "implicitly-generated hyperlink alias" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_735 = {36, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_734};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_736 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_70};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_737 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_76};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_738 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_516};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_739 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_740 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_72};
static const struct {
  NI cap; NIM_CHAR data[23+1];
} TM__6mNpeIAN05DnDNzb9b3611A_741 = { 23 | NIM_STRLIT_FLAG, "manual directive anchor" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_742 = {23, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_741};
static const struct {
  NI cap; NIM_CHAR data[20+1];
} TM__6mNpeIAN05DnDNzb9b3611A_743 = { 20 | NIM_STRLIT_FLAG, "manual inline anchor" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_744 = {20, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_743};
static const struct {
  NI cap; NIM_CHAR data[15+1];
} TM__6mNpeIAN05DnDNzb9b3611A_745 = { 15 | NIM_STRLIT_FLAG, "footnote anchor" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_746 = {15, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_745};
static const struct {
  NI cap; NIM_CHAR data[36+1];
} TM__6mNpeIAN05DnDNzb9b3611A_747 = { 36 | NIM_STRLIT_FLAG, "implicitly-generated headline anchor" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_748 = {36, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_747};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_749 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_70};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_750 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_76};
static const struct {
  NI cap; NIM_CHAR data[30+1];
} TM__6mNpeIAN05DnDNzb9b3611A_751 = { 30 | NIM_STRLIT_FLAG, "rst.nim(913, 17) `foundGroup` " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_752 = {30, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_751};
static const struct {
  NI cap; NIM_CHAR data[51+1];
} TM__6mNpeIAN05DnDNzb9b3611A_753 = { 51 | NIM_STRLIT_FLAG, "docgen has not generated the group for $1 (file $2)" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_754 = {51, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_753};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_755 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_516};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_756 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_758 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_759 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[2+1];
} TM__6mNpeIAN05DnDNzb9b3611A_760 = { 2 | NIM_STRLIT_FLAG, ": " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_761 = {2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_760};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_762 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[4+1];
} TM__6mNpeIAN05DnDNzb9b3611A_763 = { 4 | NIM_STRLIT_FLAG, "    " };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_764 = {4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_763};
static const struct {
  NI cap; NIM_CHAR data[12+1];
} TM__6mNpeIAN05DnDNzb9b3611A_765 = { 12 | NIM_STRLIT_FLAG, "($1, $2): $3" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_766 = {12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_765};
static const struct {
  NI cap; NIM_CHAR data[16+1];
} TM__6mNpeIAN05DnDNzb9b3611A_767 = { 16 | NIM_STRLIT_FLAG, "`$1`\012  clash:\012$2" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_768 = {16, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_767};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_769 = {1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_88};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_770 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const struct {
  NI cap; NIM_CHAR data[3+1];
} TM__6mNpeIAN05DnDNzb9b3611A_771 = { 3 | NIM_STRLIT_FLAG, "\?\?\?" };
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_772 = {3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_771};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_773 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_774 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_775 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_776 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static const NimStringV2 TM__6mNpeIAN05DnDNzb9b3611A_777 = {0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91};
static NIM_CONST tyArray__dyW7vpmfeTYw8kX3EXuaJA TM__6mNpeIAN05DnDNzb9b3611A_135 = {{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_109},
{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_111},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127}}
;
static NIM_CONST tyArray__dyW7vpmfeTYw8kX3EXuaJA TM__6mNpeIAN05DnDNzb9b3611A_162 = {{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_163},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_164},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_165}}
;
N_LIB_PRIVATE NIM_CONST tyArray__z9cAtaKXVtQ2xtAG27z4jNg SandboxDirAllowlist__packagesZdocutilsZrst_u90 = {{5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_208},
{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_22},
{10, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_209},
{10, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_210},
{9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_211},
{7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_212},
{9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_213},
{8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_214},
{6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_215},
{12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_216},
{5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_217},
{6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_218},
{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_219},
{9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_220},
{5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_221},
{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_222},
{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_223},
{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_224},
{5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_225},
{7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_226}}
;
static NIM_CONST tyArray__Seu7uK9aaOSN0BK3EAjjSHw TM__6mNpeIAN05DnDNzb9b3611A_260 = {{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_256},
{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_261},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_155},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_127}}
;
static NIM_CONST tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ TM__6mNpeIAN05DnDNzb9b3611A_270 = {{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_256},
{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_261}}
;
N_LIB_PRIVATE NIM_CONST tyArray__teJL2cDtQ9cpyIJGWjjJB0A Smilies__packagesZdocutilsZrst_u89 = {{{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_451},
{14, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_452}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_453},
{14, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_452}}
,
{{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_454},
{12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_455}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_456},
{12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_455}}
,
{{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_457},
{11, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_458}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_459},
{11, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_458}}
,
{{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_460},
{10, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_461}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_462},
{10, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_461}}
,
{{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_463},
{16, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_464}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_465},
{16, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_464}}
,
{{7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_466},
{8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_467}}
,
{{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_468},
{15, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_469}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_470},
{15, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_469}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_471},
{15, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_469}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_472},
{9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_473}}
,
{{5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_474},
{8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_475}}
,
{{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_476},
{8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_477}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_478},
{8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_477}}
,
{{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_479},
{9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_480}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_481},
{9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_480}}
,
{{6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_482},
{12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_483}}
,
{{5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_484},
{8, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_485}}
,
{{6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_486},
{9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_487}}
,
{{9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_488},
{12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_489}}
,
{{6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_490},
{13, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_491}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_492},
{12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_493}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_494},
{13, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_495}}
,
{{6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_496},
{9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_497}}
,
{{7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_498},
{10, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_499}}
,
{{2, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_500},
{12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_501}}
,
{{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_502},
{12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_501}}
,
{{9, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_503},
{12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_504}}
,
{{6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_505},
{11, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_506}}
,
{{7, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_507},
{12, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_508}}
}
;
static NIM_CONST tyArray__awn6UrBeChh9cVy9ccoluuYg TM__6mNpeIAN05DnDNzb9b3611A_513 = {{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_408},
{5, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_410},
{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_412},
{6, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_514},
{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_353}}
;
N_LIB_PRIVATE NIM_CONST tyArray__A2YC0h9cZydgH7zGAndH9bLg wildcards__packagesZdocutilsZrst_u13663 = {{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_577},
{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_578},
{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_579},
{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_580},
{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_581},
{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_582}}
;
N_LIB_PRIVATE NIM_CONST tyArray__kwH07lKnsR9bj3o9bSnruElQ wildToken__packagesZdocutilsZrst_u13664 = {((NI)4),
((NI)3),
((NI)3),
((NI)4),
((NI)3),
((NI)3)}
;
N_LIB_PRIVATE NIM_CONST tyArray__kwH07lKnsR9bj3o9bSnruElQ wildIndex__packagesZdocutilsZrst_u13665 = {((NI)1),
((NI)0),
((NI)0),
((NI)1),
((NI)0),
((NI)0)}
;
static NIM_CONST tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA TM__6mNpeIAN05DnDNzb9b3611A_613 = {{(&NTIv2__D9cyh4GuH9bOx7S1iB2gJxvA_)}, {{(&NTIv2__ZlacgQ8A2qzdbC1x2g4Gkg_)}, 0, {0, NIM_NIL}, NIM_NIL, {0, NIM_NIL}, 0, 0, {0, NIM_NIL}}}
;
static NIM_CONST tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg TM__6mNpeIAN05DnDNzb9b3611A_649 = {{(&NTIv2__mZ2FcrC2SOzDbCAWtWUGrg_)}, {0, NIM_NIL}, NIM_NIL, NIM_NIL, {{(&NTIv2__ZlacgQ8A2qzdbC1x2g4Gkg_)}, 0, {0, NIM_NIL}, NIM_NIL, {0, NIM_NIL}, 0, 0, {0, NIM_NIL}}}
;
N_LIB_PRIVATE NIM_CONST tyArray__pFSozBY2rI0SvOa84b9cs3g footnoteAutoSymbols__packagesZdocutilsZrst_u9803 = {{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_164},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_157},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_163},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_340},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_699},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_700},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_701},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_702},
{1, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_703}}
;
static NIM_CONST tyArray__Seu7uK9aaOSN0BK3EAjjSHw TM__6mNpeIAN05DnDNzb9b3611A_706 = {{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_707},
{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_708},
{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_709},
{0, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_91}}
;
static NIM_CONST tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ TM__6mNpeIAN05DnDNzb9b3611A_721 = {{3, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_707},
{4, (NimStrPayload*)&TM__6mNpeIAN05DnDNzb9b3611A_708}}
;
extern NIM_BOOL nimInErrorMode__system_u4143;
static NIM_CONST NU32 TM__6mNpeIAN05DnDNzb9b3611A_2[1] = {2259597568};
N_LIB_PRIVATE TNimTypeV2 NTIv2__6YauuaWEZeOKzNYK3p1vqA_ = {.destructor = (void*)rttiDestroy__packagesZdocutilsZrst_u17773, .size = sizeof(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA), .align = (NI16) NIM_ALIGNOF(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA), .depth = 0, .display = TM__6mNpeIAN05DnDNzb9b3611A_2, .traceImpl = (void*)eqtrace___packagesZdocutilsZrst_u2579, .flags = 0};
static NIM_CONST NU32 TM__6mNpeIAN05DnDNzb9b3611A_87[5] = {3701606400, 1285336064, 561960192, 1871340544, 1591197696};
N_LIB_PRIVATE TNimTypeV2 NTIv2__417XwHiegT8um61EkJF9bxA_ = {.destructor = (void*)rttiDestroy__packagesZdocutilsZrst_u17802, .size = sizeof(tyObject_EParseError__417XwHiegT8um61EkJF9bxA), .align = (NI16) NIM_ALIGNOF(tyObject_EParseError__417XwHiegT8um61EkJF9bxA), .depth = 4, .display = TM__6mNpeIAN05DnDNzb9b3611A_87, .traceImpl = (void*)eqtrace___packagesZdocutilsZrst_u789, .flags = 0};
static NIM_CONST NU32 TM__6mNpeIAN05DnDNzb9b3611A_96[2] = {3701606400, 1453097216};
N_LIB_PRIVATE TNimTypeV2 NTIv2__ZlacgQ8A2qzdbC1x2g4Gkg_ = {.destructor = (void*)rttiDestroy__packagesZdocutilsZrst_u17809, .size = sizeof(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg), .align = (NI16) NIM_ALIGNOF(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg), .depth = 1, .display = TM__6mNpeIAN05DnDNzb9b3611A_96, .traceImpl = (void*)eqtrace___packagesZdocutilsZrst_u12498, .flags = 0};
static NIM_CONST NU32 TM__6mNpeIAN05DnDNzb9b3611A_97[2] = {3701606400, 4158753536};
N_LIB_PRIVATE TNimTypeV2 NTIv2__kffhi1T9cBRAzPlmKYxhbfw_ = {.destructor = (void*)NIM_NIL, .size = sizeof(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw), .align = (NI16) NIM_ALIGNOF(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw), .depth = 1, .display = TM__6mNpeIAN05DnDNzb9b3611A_97, .traceImpl = (void*)NIM_NIL, .flags = 0};
extern Exception* currException__system_u3628;
static NIM_CONST NU32 TM__6mNpeIAN05DnDNzb9b3611A_576[2] = {3701606400, 3490067200};
N_LIB_PRIVATE TNimTypeV2 NTIv2__hdAGM0wB8YhDoPChO9cTzvA_ = {.destructor = (void*)NIM_NIL, .size = sizeof(tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA), .align = (NI16) NIM_ALIGNOF(tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA), .depth = 1, .display = TM__6mNpeIAN05DnDNzb9b3611A_576, .traceImpl = (void*)NIM_NIL, .flags = 0};
static NIM_CONST NU32 TM__6mNpeIAN05DnDNzb9b3611A_614[2] = {3701606400, 4238467072};
N_LIB_PRIVATE TNimTypeV2 NTIv2__D9cyh4GuH9bOx7S1iB2gJxvA_ = {.destructor = (void*)rttiDestroy__packagesZdocutilsZrst_u18357, .size = sizeof(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA), .align = (NI16) NIM_ALIGNOF(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA), .depth = 1, .display = TM__6mNpeIAN05DnDNzb9b3611A_614, .traceImpl = (void*)eqtrace___packagesZdocutilsZrst_u18272, .flags = 0};
static NIM_CONST NU32 TM__6mNpeIAN05DnDNzb9b3611A_650[2] = {3701606400, 2642768384};
N_LIB_PRIVATE TNimTypeV2 NTIv2__mZ2FcrC2SOzDbCAWtWUGrg_ = {.destructor = (void*)rttiDestroy__packagesZdocutilsZrst_u18562, .size = sizeof(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg), .align = (NI16) NIM_ALIGNOF(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg), .depth = 1, .display = TM__6mNpeIAN05DnDNzb9b3611A_650, .traceImpl = (void*)eqtrace___packagesZdocutilsZrst_u18473, .flags = 0};
static NIM_CONST NU32 TM__6mNpeIAN05DnDNzb9b3611A_679[2] = {3701606400, 3922482688};
N_LIB_PRIVATE TNimTypeV2 NTIv2__4unMVq6uP9bSXW6xlS0qVIQ_ = {.destructor = (void*)rttiDestroy__packagesZdocutilsZrst_u18777, .size = sizeof(tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ), .align = (NI16) NIM_ALIGNOF(tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ), .depth = 1, .display = TM__6mNpeIAN05DnDNzb9b3611A_679, .traceImpl = (void*)eqtrace___packagesZdocutilsZrst_u18678, .flags = 0};
static NIM_CONST NU32 TM__6mNpeIAN05DnDNzb9b3611A_698[1] = {2589358336};
N_LIB_PRIVATE TNimTypeV2 NTIv2__o5pWeTm9csUUSGBf9b9btbCog_ = {.destructor = (void*)rttiDestroy__packagesZdocutilsZrst_u18784, .size = sizeof(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog), .align = (NI16) NIM_ALIGNOF(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog), .depth = 0, .display = TM__6mNpeIAN05DnDNzb9b3611A_698, .traceImpl = (void*)eqtrace___packagesZdocutilsZrst_u8840, .flags = 0};
static N_INLINE(NI, minuspercent___system_u805)(NI x_p0, NI y_p1) {
	NI result;
	result = ((NI) ((NU)((NU64)(((NU) (x_p0))) - (NU64)(((NU) (y_p1))))));
	return result;
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicDyn)(void* p_p0) {
	NIM_BOOL result;
	result = NIM_FALSE;
	{
		tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* cell_1;
		NI T5_;
		if (!!((p_p0 == NIM_NIL))) goto LA3_;
		T5_ = (NI)0;
		T5_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
		cell_1 = ((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T5_));
		{
			if (!((NI)((*cell_1).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
			result = NIM_TRUE;
		}
		goto LA6_;
LA8_: ;
		{
			(*cell_1).rc = minuspercent___system_u805((*cell_1).rc, ((NI)16));
		}
LA6_: ;
		rememberCycle__system_u3497(result, cell_1, (*((TNimTypeV2**) (p_p0))));
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u3372)(tySequence__vdmFdgox3dhDOMkkFi9ayfg dest_p0) {
	NI colontmp_;
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T3_;
			T3_ = dest_p0.len;
			if (!(colontmp_ < T3_)) goto LA2;
			eqdestroy___system_u2691(dest_p0.p->data[colontmp_].Field4);
			colontmp_ += ((NI)1);
		} LA2: ;
	}
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(tyTuple__4Ywt2LYBMs9aMJ09cL7digow));
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u3264)(tySequence__jK2T9bFw5BWKL8ZZ854oXZg dest_p0) {
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
}
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastDyn)(void* p_p0) {
	NIM_BOOL result;
	result = NIM_FALSE;
	{
		tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* cell_1;
		NI T5_;
		if (!!((p_p0 == NIM_NIL))) goto LA3_;
		T5_ = (NI)0;
		T5_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
		cell_1 = ((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T5_));
		{
			if (!((NI)((*cell_1).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
			result = NIM_TRUE;
		}
		goto LA6_;
LA8_: ;
		{
			(*cell_1).rc = minuspercent___system_u805((*cell_1).rc, ((NI)16));
		}
LA6_: ;
		{
			if (!result) goto LA13_;
			{
				if (!(((NI)0) < (*cell_1).rootIdx)) goto LA17_;
				unregisterCycle__system_u3127(cell_1);
			}
LA17_: ;
		}
LA13_: ;
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2877)(tySequence__ib5UTyrs9aC6K60sNqKElQA dest_p0) {
	NI colontmp_;
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T3_;
			T3_ = dest_p0.len;
			if (!(colontmp_ < T3_)) goto LA2;
			switch (dest_p0.p->data[colontmp_].kind) {
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0):
			{
				{
					NIM_BOOL T7_;
					T7_ = (NIM_BOOL)0;
					T7_ = nimDecRefIsLastDyn(dest_p0.p->data[colontmp_]._kind_1.target);
					if (!T7_) goto LA8_;
					eqdestroy___packagesZdocutilsZrstast_u173((&(*dest_p0.p->data[colontmp_]._kind_1.target)));
					nimRawDispose(dest_p0.p->data[colontmp_]._kind_1.target, ((NI)8));
				}
LA8_: ;
			}
			break;
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)1):
			{
				eqdestroy___system_u2691(dest_p0.p->data[colontmp_]._kind_2.refnameExt);
			}
			break;
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2):
			{
				eqdestroy___system_u2691(dest_p0.p->data[colontmp_]._kind_3.refname);
				eqdestroy___system_u2691(dest_p0.p->data[colontmp_]._kind_3.langSym.outType);
				eqdestroy___stdZenvvars_u82(dest_p0.p->data[colontmp_]._kind_3.langSym.parameters);
				eqdestroy___system_u2691(dest_p0.p->data[colontmp_]._kind_3.langSym.generics);
				eqdestroy___system_u2691(dest_p0.p->data[colontmp_]._kind_3.langSym.name);
				eqdestroy___system_u2691(dest_p0.p->data[colontmp_]._kind_3.langSym.symTypeKind);
				eqdestroy___system_u2691(dest_p0.p->data[colontmp_]._kind_3.langSym.symKind);
				eqdestroy___system_u2691(dest_p0.p->data[colontmp_]._kind_3.tooltip);
			}
			break;
			default: __builtin_unreachable();
			}
			colontmp_ += ((NI)1);
		} LA2: ;
	}
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2693)(tySequence__vz9c2digtAnM8l0FZWLUAGg dest_p0) {
	NI colontmp_;
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T3_;
			T3_ = dest_p0.len;
			if (!(colontmp_ < T3_)) goto LA2;
			{
				NIM_BOOL T6_;
				T6_ = (NIM_BOOL)0;
				T6_ = nimDecRefIsLastDyn(dest_p0.p->data[colontmp_].value);
				if (!T6_) goto LA7_;
				eqdestroy___packagesZdocutilsZrstast_u173((&(*dest_p0.p->data[colontmp_].value)));
				nimRawDispose(dest_p0.p->data[colontmp_].value, ((NI)8));
			}
LA7_: ;
			eqdestroy___system_u2691(dest_p0.p->data[colontmp_].key);
			colontmp_ += ((NI)1);
		} LA2: ;
	}
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A));
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2586)(tySequence__qagWYy9b8OIJNg9bWhIaAjyw dest_p0) {
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(tyObject_LevelInfo__KZjTutWfS3RhxSg89cxkiqQ));
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2567)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* dest_p0) {
	eqdestroy___packagesZdocutilsZrst_u3536((*dest_p0).idxImports.data);
	eqdestroy___packagesZdocutilsZrstast_u152((*dest_p0).tocPart);
	eqdestroy___system_u5506((*dest_p0).filenames.idxToFilename);
	eqdestroy___packagesZdocutilsZrst_u1172((*dest_p0).filenames.filenameToIdx.data);
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicDyn((*dest_p0).findRefFile.ClE_0);
		if (!T3_) goto LA4_;
		nimDestroyAndDispose((*dest_p0).findRefFile.ClE_0);
	}
LA4_: ;
	{
		NIM_BOOL T8_;
		T8_ = (NIM_BOOL)0;
		T8_ = nimDecRefIsLastCyclicDyn((*dest_p0).findFile.ClE_0);
		if (!T8_) goto LA9_;
		nimDestroyAndDispose((*dest_p0).findFile.ClE_0);
	}
LA9_: ;
	{
		NIM_BOOL T13_;
		T13_ = (NIM_BOOL)0;
		T13_ = nimDecRefIsLastCyclicDyn((*dest_p0).msgHandler.ClE_0);
		if (!T13_) goto LA14_;
		nimDestroyAndDispose((*dest_p0).msgHandler.ClE_0);
	}
LA14_: ;
	eqdestroy___packagesZdocutilsZrst_u3372((*dest_p0).footnotes);
	eqdestroy___packagesZdocutilsZrst_u3264((*dest_p0).lineFootnoteSymRef);
	eqdestroy___packagesZdocutilsZrst_u3264((*dest_p0).lineFootnoteSym);
	eqdestroy___packagesZdocutilsZrst_u3264((*dest_p0).lineFootnoteNumRef);
	eqdestroy___packagesZdocutilsZrst_u3264((*dest_p0).lineFootnoteNum);
	eqdestroy___packagesZdocutilsZrst_u2856((*dest_p0).anchors.data);
	eqdestroy___packagesZdocutilsZrst_u2693((*dest_p0).refs);
	eqdestroy___packagesZdocutilsZrst_u2693((*dest_p0).subs);
	eqdestroy___system_u2691((*dest_p0).currRole);
	eqdestroy___packagesZdocutilsZrst_u2586((*dest_p0).hLevels);
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4143);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u17773)(void* dest_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqdestroy___packagesZdocutilsZrst_u2567((&(*((tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA*) (dest_p0)))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(NI, pluspercent___system_u785)(NI x_p0, NI y_p1) {
	NI result;
	result = ((NI) ((NU)((NU64)(((NU) (x_p0))) + (NU64)(((NU) (y_p1))))));
	return result;
}
static N_INLINE(void, add__system_u3018)(tyObject_CellSeq__gW9aeWLFbrNaeUKXqxYBXhg* s_p0, void** c_p1, TNimTypeV2* t_p2) {
	void** colontmp_;
	TNimTypeV2* colontmp__2;
	{
		if (!((*s_p0).cap <= (*s_p0).len)) goto LA3_;
		resize__system_u3026(s_p0);
	}
LA3_: ;
	colontmp_ = c_p1;
	colontmp__2 = t_p2;
	(*s_p0).d[(*s_p0).len].Field0 = colontmp_;
	(*s_p0).d[(*s_p0).len].Field1 = colontmp__2;
	(*s_p0).len = pluspercent___system_u785((*s_p0).len, ((NI)1));
}
static N_INLINE(void, nimTraceRefDyn)(void* q_p0, void* env_p1) {
	void** p_1;
	p_1 = ((void**) (q_p0));
	{
		tyObject_GcEnv__HccVszwojlCZRN46BE9cG8w* j_1;
		if (!!(((*p_1) == NIM_NIL))) goto LA3_;
		j_1 = ((tyObject_GcEnv__HccVszwojlCZRN46BE9cG8w*) (env_p1));
		add__system_u3018((&(*j_1).traceStack), p_1, (*((TNimTypeV2**) ((*p_1)))));
	}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u2579)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* dest_p0, void* env_p1) {
	nimTraceRefDyn((&(*dest_p0).msgHandler.ClE_0), env_p1);
	nimTraceRefDyn((&(*dest_p0).findFile.ClE_0), env_p1);
	nimTraceRefDyn((&(*dest_p0).findRefFile.ClE_0), env_p1);
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p_p0, TNimTypeV2* desc_p1) {
	NIM_BOOL result;
	result = NIM_FALSE;
	{
		tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* cell_1;
		NI T5_;
		if (!!((p_p0 == NIM_NIL))) goto LA3_;
		T5_ = (NI)0;
		T5_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
		cell_1 = ((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T5_));
		{
			if (!((NI)((*cell_1).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
			result = NIM_TRUE;
		}
		goto LA6_;
LA8_: ;
		{
			(*cell_1).rc = minuspercent___system_u805((*cell_1).rc, ((NI)16));
		}
LA6_: ;
		rememberCycle__system_u3497(result, cell_1, desc_p1);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u3752)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA** dest_p0, tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* src_p1) {
	tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmp_ = (*dest_p0);
	(*dest_p0) = src_p1;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(colontmp_, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u2567((&(*colontmp_)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nimRawDispose(colontmp_, ((NI)8));
	}
LA4_: ;
	}BeforeRet_: ;
}
static N_INLINE(void, nimSetMem__system_u2172)(void* a_p0, int v_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a_p0, v_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1) {
	nimSetMem__system_u2172(p_p0, ((int)0), size_p1);
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, defaultRole__packagesZdocutilsZrst_u841)(tySet_tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg options_p0) {
	NimStringV2 result;
	NimStringV2 T1_;
	T1_.len = 0; T1_.p = NIM_NIL;
	{
		if (!((options_p0 &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)4)))&7U)))!=0)) goto LA4_;
		result = TM__6mNpeIAN05DnDNzb9b3611A_4;
	}
	goto LA2_;
LA4_: ;
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_6;
	}
LA2_: ;
	return result;
}
static N_INLINE(int, nimCmpMem)(void* a_p0, void* b_p1, NI size_p2) {
	int result;
	result = memcmp(a_p0, b_p1, ((size_t) (size_p2)));
	return result;
}
static N_INLINE(NIM_BOOL, equalMem__system_u1750)(void* a_p0, void* b_p1, NI size_p2) {
	NIM_BOOL result;
	int T1_;
	T1_ = (int)0;
	T1_ = nimCmpMem(a_p0, b_p1, size_p2);
	result = (T1_ == ((NI32)0));
	return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a_p0, NimStringV2 b_p1) {
	NIM_BOOL result;
	NI alen_1;
	NI blen_1;
{	result = NIM_FALSE;
	alen_1 = a_p0.len;
	blen_1 = b_p1.len;
	{
		if (!(alen_1 == blen_1)) goto LA3_;
		{
			if (!(alen_1 == ((NI)0))) goto LA7_;
			result = NIM_TRUE;
			goto BeforeRet_;
		}
LA7_: ;
		result = equalMem__system_u1750(((void*) ((&a_p0.p->data[((NI)0)]))), ((void*) ((&b_p1.p->data[((NI)0)]))), (alen_1));
		goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w, whichRoleAux__packagesZdocutilsZrst_u849)(NimStringV2 sym_p0) {
	tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w result;
	NimStringV2 r_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
	r_1.len = 0; r_1.p = NIM_NIL;
	r_1 = nsuToLowerAsciiStr(sym_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	switch (hashString(r_1) & 15) {
	case 0: 
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_25)) goto LA8_;
break;
	case 1: 
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_13)) goto LA4_;
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_17)) goto LA5_;
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_21)) goto LA6_;
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_27)) goto LA8_;
break;
	case 4: 
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_11)) goto LA3_;
break;
	case 8: 
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_9)) goto LA2_;
break;
	case 9: 
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_29)) goto LA8_;
break;
	case 10: 
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_15)) goto LA5_;
break;
	case 12: 
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_19)) goto LA6_;
break;
	case 13: 
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_8)) goto LA1_;
break;
	case 15: 
if (eqStrings(r_1, TM__6mNpeIAN05DnDNzb9b3611A_23)) goto LA7_;
break;
	}
	goto LA9_;
	LA1_: ;
	{
		result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)67);
	}
	goto LA10_;
	LA2_: ;
	{
		result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)72);
	}
	goto LA10_;
	LA3_: ;
	{
		result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)69);
	}
	goto LA10_;
	LA4_: ;
	{
		result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)68);
	}
	goto LA10_;
	LA5_: ;
	{
		result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)65);
	}
	goto LA10_;
	LA6_: ;
	{
		result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)66);
	}
	goto LA10_;
	LA7_: ;
	{
		result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)72);
	}
	goto LA10_;
	LA8_: ;
	{
		result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)63);
	}
	goto LA10_;
	LA9_: ;
	{
		{
			tyEnum_SourceLanguage__19c0ssteZ7RkUhs6XPCRBNA T22_;
			T22_ = (tyEnum_SourceLanguage__19c0ssteZ7RkUhs6XPCRBNA)0;
			T22_ = getSourceLanguage__packagesZdocutilsZhighlite_u72(r_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!!((T22_ == ((tyEnum_SourceLanguage__19c0ssteZ7RkUhs6XPCRBNA)0)))) goto LA23_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)62);
		}
		goto LA20_;
LA23_: ;
		{
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)64);
		}
LA20_: ;
	}
LA10_: ;
	eqdestroy___system_u2691(r_1);
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimIncRefCyclic)(void* p_p0, NIM_BOOL cyclic_p1) {
	tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* h_1;
	NI T1_;
	T1_ = (NI)0;
	T1_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
	h_1 = ((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T1_));
	(*h_1).rc = pluspercent___system_u785((*h_1).rc, ((NI)16));
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u2468)(tyProc__lsy8uLKFmavBA17NQuqO5g* dest_p0, tyProc__lsy8uLKFmavBA17NQuqO5g src_p1, NIM_BOOL cyclic_p2) {
	void* colontmp_;
	colontmp_ = (*dest_p0).ClE_0;
	{
		if (!src_p1.ClE_0) goto LA3_;
		nimIncRefCyclic(src_p1.ClE_0, cyclic_p2);
	}
LA3_: ;
	(*dest_p0).ClE_0 = src_p1.ClE_0;
	(*dest_p0).ClP_0 = src_p1.ClP_0;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = nimDecRefIsLastCyclicDyn(colontmp_);
		if (!T7_) goto LA8_;
		nimDestroyAndDispose(colontmp_);
	}
LA8_: ;
}
static N_INLINE(void, nimMarkCyclic)(void* p_p0) {
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u2462)(tyProc__lsy8uLKFmavBA17NQuqO5g* dest_p0) {
	nimZeroMem((void*)(&(*dest_p0)), sizeof(tyProc__lsy8uLKFmavBA17NQuqO5g));
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA, whichMsgClass__packagesZdocutilsZrst_u608)(tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g k_p0) {
	tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA result;
	NimStringV2 colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA)0;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD_ = symbolName__packagesZdocutilsZrst_u611(k_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	switch (((NU8)(colontmpD_.p->data[((NI)1)]))) {
	case 101:
	case 69:
	{
		result = ((tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA)2);
	}
	break;
	case 119:
	case 87:
	{
		result = ((tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA)1);
	}
	break;
	case 104:
	case 72:
	{
		result = ((tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA)0);
	}
	break;
	default:
	{
	}
	break;
	}
	eqdestroy___system_u2691(colontmpD_);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___packagesZdocutilsZrst_u58)(tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g e_p0) {
	NimStringV2 result;
	switch (e_p0) {
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)0):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_31;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)1):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_33;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)2):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_35;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)3):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_37;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)4):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_39;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)5):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_41;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)6):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_43;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)7):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_45;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)8):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_47;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)9):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_49;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)10):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_51;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)11):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_53;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)12):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_55;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)13):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_57;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)14):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_59;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)15):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_61;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)16):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_63;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_65;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)18):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_67;
	}
	break;
	case ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)19):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_69;
	}
	break;
	default:
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_71;
	}
	break;
	}
	return result;
}
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest_p0, source_p1, ((size_t) (size_p2)));
}
static N_INLINE(void, copyMem__system_u1742)(void* dest_p0, void* source_p1, NI size_p2) {
	nimCopyMem(dest_p0, source_p1, size_p2);
}
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1) {
	{
		if (!(((NI)0) < src_p1.len)) goto LA3_;
		copyMem__system_u1742(((void*) ((&(*(*dest_p0).p).data[(*dest_p0).len]))), ((void*) ((&(*src_p1.p).data[((NI)0)]))), (src_p1.len));
		(*dest_p0).len += src_p1.len;
		(*(*dest_p0).p).data[(*dest_p0).len] = 0;
	}
LA3_: ;
}
static N_INLINE(void, addInt__stdZprivateZdigitsutils_u204)(NimStringV2* result_p0, NI x_p1) {
	addInt__stdZprivateZdigitsutils_u187(result_p0, ((NI64) (x_p1)));
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___packagesZdocutilsZrst_u35)(tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA e_p0) {
	NimStringV2 result;
	switch (e_p0) {
	case ((tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA)0):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_81;
	}
	break;
	case ((tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA)1):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_83;
	}
	break;
	case ((tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA)2):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_85;
	}
	break;
	default:
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_86;
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u777)(tyObject_EParseError__417XwHiegT8um61EkJF9bxA* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicDyn((*dest_p0).Sup.Sup.Sup.up);
		if (!T3_) goto LA4_;
		nimDestroyAndDispose((*dest_p0).Sup.Sup.Sup.up);
	}
LA4_: ;
	eqdestroy___system_u3699((*dest_p0).Sup.Sup.Sup.trace);
	eqdestroy___system_u2691((*dest_p0).Sup.Sup.Sup.message);
	{
		NIM_BOOL T8_;
		T8_ = (NIM_BOOL)0;
		T8_ = nimDecRefIsLastCyclicDyn((*dest_p0).Sup.Sup.Sup.parent);
		if (!T8_) goto LA9_;
		nimDestroyAndDispose((*dest_p0).Sup.Sup.Sup.parent);
	}
LA9_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u17802)(void* dest_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqdestroy___packagesZdocutilsZrst_u777((&(*((tyObject_EParseError__417XwHiegT8um61EkJF9bxA*) (dest_p0)))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u789)(tyObject_EParseError__417XwHiegT8um61EkJF9bxA* dest_p0, void* env_p1) {
	nimTraceRefDyn(&(*dest_p0).Sup.Sup.Sup.parent, env_p1);
	nimTraceRefDyn(&(*dest_p0).Sup.Sup.Sup.up, env_p1);
}
static N_INLINE(void, writeLine__msgs_u470)(FILE* f_p0, NimStringV2* x_p1, NI x_p1Len_0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NimStringV2* i_1;
		NI i_2;
		i_1 = (NimStringV2*)0;
		i_2 = ((NI)0);
		{
			while (1) {
				if (!(i_2 < x_p1Len_0)) goto LA3;
				i_1 = (&x_p1[i_2]);
				write__stdZsyncio_u254(f_p0, (*i_1));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				i_2 += ((NI)1);
			} LA3: ;
		}
	}
	write__stdZsyncio_u254(f_p0, TM__6mNpeIAN05DnDNzb9b3611A_89);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, defaultMsgHandler__packagesZdocutilsZrst_u746)(NimStringV2 filename_p0, NI line_p1, NI col_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgkind_p3, NimStringV2 arg_p4) {
	NimStringV2 a_1;
	NimStringV2 colontmpD_;
	NimStringV2 message_1;
	NimStringV2 colontmpD__2;
	NimStringV2 colontmpD__3;
	tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA mc_1;
	tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ T10_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	a_1.len = 0; a_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	message_1.len = 0; message_1.p = NIM_NIL;
	colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
	colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
	mc_1 = whichMsgClass__packagesZdocutilsZrst_u608(msgkind_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = dollar___packagesZdocutilsZrst_u58(msgkind_p3);
	a_1 = nsuFormatSingleElem(colontmpD_, arg_p4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	prepareAdd((&message_1), filename_p0.len + 0);
appendString((&message_1), filename_p0);
	{
		if (!(((NI)0) < line_p1)) goto LA4_;
		prepareAdd((&message_1), 1);
appendString((&message_1), TM__6mNpeIAN05DnDNzb9b3611A_73);
		addInt__stdZprivateZdigitsutils_u204((&message_1), line_p1);
		{
			if (!(((NI)0) < (NI)(col_p2 + ((NI)1)))) goto LA8_;
			prepareAdd((&message_1), 2);
appendString((&message_1), TM__6mNpeIAN05DnDNzb9b3611A_75);
			addInt__stdZprivateZdigitsutils_u204((&message_1), (NI)(col_p2 + ((NI)1)));
		}
LA8_: ;
		prepareAdd((&message_1), 1);
appendString((&message_1), TM__6mNpeIAN05DnDNzb9b3611A_77);
	}
LA4_: ;
	colontmpD__2 = dollar___packagesZdocutilsZrst_u35(mc_1);
	T10_[0] = colontmpD__2;
	T10_[1] = a_1;
	colontmpD__3 = nsuFormatOpenArray(TM__6mNpeIAN05DnDNzb9b3611A_79, T10_, 2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	prepareAdd((&message_1), colontmpD__3.len + 0);
appendString((&message_1), colontmpD__3);
	{
		tyObject_EParseError__417XwHiegT8um61EkJF9bxA* T15_;
		NimStringV2 blitTmp_1;
		if (!(mc_1 == ((tyEnum_MsgClass__n9ca9cM20fZgCJnzACrVYWGA)2))) goto LA13_;
		T15_ = NIM_NIL;
		T15_ = (tyObject_EParseError__417XwHiegT8um61EkJF9bxA*) nimNewObj(sizeof(tyObject_EParseError__417XwHiegT8um61EkJF9bxA), NIM_ALIGNOF(tyObject_EParseError__417XwHiegT8um61EkJF9bxA));
		(*T15_).Sup.Sup.Sup.Sup.m_type = (&NTIv2__417XwHiegT8um61EkJF9bxA_);
		(*T15_).Sup.Sup.Sup.name = "EParseError";
		blitTmp_1 = message_1;
		eqwasMoved___system_u2688((&message_1));
		(*T15_).Sup.Sup.Sup.message = blitTmp_1;
		(*T15_).Sup.Sup.Sup.parent = ((Exception*) NIM_NIL);
		raiseExceptionEx((Exception*)T15_, "EParseError", "defaultMsgHandler", "rst.nim", 474);
goto LA1_;
	}
	goto LA11_;
LA13_: ;
	{
		tyArray__YgExxhfgKcesA5EOUj1MOA T17_;
		T17_[0] = message_1;
		writeLine__msgs_u470(stdout, T17_, 1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA11_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD__3);
		eqdestroy___system_u2691(colontmpD__2);
		eqdestroy___system_u2691(message_1);
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___system_u2691(a_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, defaultFindFile__packagesZdocutilsZrst_u835)(NimStringV2 filename_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nosfileExists(filename_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		eqcopy___system_u2694((&result), filename_p0);
	}
	goto LA1_;
LA4_: ;
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_92;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u2519)(tyProc__lYMtBEH0vEMRzoDaCw5CJg* dest_p0, tyProc__lYMtBEH0vEMRzoDaCw5CJg src_p1, NIM_BOOL cyclic_p2) {
	void* colontmp_;
	colontmp_ = (*dest_p0).ClE_0;
	{
		if (!src_p1.ClE_0) goto LA3_;
		nimIncRefCyclic(src_p1.ClE_0, cyclic_p2);
	}
LA3_: ;
	(*dest_p0).ClE_0 = src_p1.ClE_0;
	(*dest_p0).ClP_0 = src_p1.ClP_0;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = nimDecRefIsLastCyclicDyn(colontmp_);
		if (!T7_) goto LA8_;
		nimDestroyAndDispose(colontmp_);
	}
LA8_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u2513)(tyProc__lYMtBEH0vEMRzoDaCw5CJg* dest_p0) {
	nimZeroMem((void*)(&(*dest_p0)), sizeof(tyProc__lYMtBEH0vEMRzoDaCw5CJg));
}
N_LIB_PRIVATE N_NIMCALL(void, defaultFindRefFile__packagesZdocutilsZrst_u838)(NimStringV2 filename_p0, tyTuple__UV3llMMYFckfui8YMBuUZA* Result) {
	NimStringV2 colontmp_;
	NimStringV2 colontmp__2;
	NimStringV2 blitTmp_1;
	NimStringV2 blitTmp_2;
	colontmp_.len = 0; colontmp_.p = NIM_NIL;
	colontmp__2.len = 0; colontmp__2.p = NIM_NIL;
	eqcopy___system_u2694((&colontmp_), filename_p0);
	colontmp__2 = TM__6mNpeIAN05DnDNzb9b3611A_94;
	blitTmp_1 = colontmp_;
	(*Result).Field0 = blitTmp_1;
	blitTmp_2 = colontmp__2;
	(*Result).Field1 = blitTmp_2;
}
N_LIB_PRIVATE N_NIMCALL(NI, len__packagesZdocutilsZrst_u857)(tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg* filenames_p0) {
	NI result;
	NI T1_;
	T1_ = (*filenames_p0).idxToFilename.len;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI32, addFilename__packagesZdocutilsZrst_u863)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 file1_p1) {
	NI32 result;
	NI32 nextIdx_1;
	NI T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI32)0;
	T1_ = (NI)0;
	T1_ = len__packagesZdocutilsZrst_u857((&(*s_p0).filenames));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	nextIdx_1 = ((NI32) (T1_));
	result = getOrDefault__packagesZdocutilsZrst_u930((*s_p0).filenames.filenameToIdx, file1_p1, nextIdx_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NimStringV2 colontmpD_;
		if (!(result == nextIdx_1)) goto LA4_;
		X5BX5Deq___packagesZdocutilsZrst_u1421((&(*s_p0).filenames.filenameToIdx), file1_p1, result);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		colontmpD_ = eqdup___system_u2697(file1_p1);
		add__stdZenumutils_u71((&(*s_p0).filenames.idxToFilename), colontmpD_);
	}
LA4_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setCurrFilename__packagesZdocutilsZrst_u2402)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 file1_p1) {
	NI32 T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (NI32)0;
	T1_ = addFilename__packagesZdocutilsZrst_u863(s_p0, file1_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*s_p0).currFileIdx = T1_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2516)(tyProc__lYMtBEH0vEMRzoDaCw5CJg dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicDyn(dest_p0.ClE_0);
		if (!T3_) goto LA4_;
		nimDestroyAndDispose(dest_p0.ClE_0);
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2465)(tyProc__lsy8uLKFmavBA17NQuqO5g dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicDyn(dest_p0.ClE_0);
		if (!T3_) goto LA4_;
		nimDestroyAndDispose(dest_p0.ClE_0);
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA*, newRstSharedState__packagesZdocutilsZrst_u2425)(tySet_tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg options_p0, NimStringV2 filename_p1, tyProc__oFHfEKFsiYTMAy9a42cSiKw findFile_p2, tyProc__lYMtBEH0vEMRzoDaCw5CJg findRefFile_p3, tyProc__lsy8uLKFmavBA17NQuqO5g msgHandler_p4, NIM_BOOL hasToc_p5) {
	tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* result;
	NimStringV2 r_1;
	NimStringV2 colontmpD_;
	tyProc__lsy8uLKFmavBA17NQuqO5g colontmpD__2;
	tyProc__lsy8uLKFmavBA17NQuqO5g colontmpD__3;
	tyProc__oFHfEKFsiYTMAy9a42cSiKw colontmpD__4;
	tyProc__oFHfEKFsiYTMAy9a42cSiKw colontmpD__5;
	tyProc__lYMtBEH0vEMRzoDaCw5CJg colontmpD__6;
	tyProc__lYMtBEH0vEMRzoDaCw5CJg colontmpD__7;
	tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	r_1.len = 0; r_1.p = NIM_NIL;
	nimZeroMem((void*)(&colontmpD__2), sizeof(tyProc__lsy8uLKFmavBA17NQuqO5g));
	nimZeroMem((void*)(&colontmpD__3), sizeof(tyProc__lsy8uLKFmavBA17NQuqO5g));
	nimZeroMem((void*)(&colontmpD__4), sizeof(tyProc__oFHfEKFsiYTMAy9a42cSiKw));
	nimZeroMem((void*)(&colontmpD__5), sizeof(tyProc__oFHfEKFsiYTMAy9a42cSiKw));
	nimZeroMem((void*)(&colontmpD__6), sizeof(tyProc__lYMtBEH0vEMRzoDaCw5CJg));
	nimZeroMem((void*)(&colontmpD__7), sizeof(tyProc__lYMtBEH0vEMRzoDaCw5CJg));
	r_1 = defaultRole__packagesZdocutilsZrst_u841(options_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = NIM_NIL;
	T1_ = (tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA*) nimNewObj(sizeof(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA), NIM_ALIGNOF(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA));
	colontmpD_ = eqdup___system_u2697(r_1);
	(*T1_).currRole = colontmpD_;
	(*T1_).currRoleKind = whichRoleAux__packagesZdocutilsZrst_u849(r_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*T1_).options = options_p0;
	{
		tyProc__lsy8uLKFmavBA17NQuqO5g blitTmp_1;
		if (!!((msgHandler_p4.ClP_0 == 0))) goto LA4_;
		eqcopy___packagesZdocutilsZrst_u2468((&colontmpD__2), msgHandler_p4, NIM_FALSE);
		nimZeroMem((void*)(&blitTmp_1), sizeof(tyProc__lsy8uLKFmavBA17NQuqO5g));
		blitTmp_1.ClE_0 = colontmpD__2.ClE_0;
		blitTmp_1.ClP_0 = colontmpD__2.ClP_0;
		nimMarkCyclic(colontmpD__2.ClE_0);
		eqwasMoved___packagesZdocutilsZrst_u2462((&colontmpD__2));
		(*T1_).msgHandler.ClE_0 = blitTmp_1.ClE_0;
		(*T1_).msgHandler.ClP_0 = blitTmp_1.ClP_0;
	}
	goto LA2_;
LA4_: ;
	{
		tyProc__lsy8uLKFmavBA17NQuqO5g T7_;
		tyProc__lsy8uLKFmavBA17NQuqO5g blitTmp_2;
		nimZeroMem((void*)(&T7_), sizeof(tyProc__lsy8uLKFmavBA17NQuqO5g));
		T7_.ClP_0 = ((TM__6mNpeIAN05DnDNzb9b3611A_90) (defaultMsgHandler__packagesZdocutilsZrst_u746)); T7_.ClE_0 = NIM_NIL;
		colontmpD__3.ClE_0 = T7_.ClE_0;
		colontmpD__3.ClP_0 = T7_.ClP_0;
		nimZeroMem((void*)(&blitTmp_2), sizeof(tyProc__lsy8uLKFmavBA17NQuqO5g));
		blitTmp_2.ClE_0 = colontmpD__3.ClE_0;
		blitTmp_2.ClP_0 = colontmpD__3.ClP_0;
		nimMarkCyclic(colontmpD__3.ClE_0);
		eqwasMoved___packagesZdocutilsZrst_u2462((&colontmpD__3));
		(*T1_).msgHandler.ClE_0 = blitTmp_2.ClE_0;
		(*T1_).msgHandler.ClP_0 = blitTmp_2.ClP_0;
	}
LA2_: ;
	{
		tyProc__oFHfEKFsiYTMAy9a42cSiKw blitTmp_3;
		if (!!((findFile_p2.ClP_0 == 0))) goto LA10_;
		eqcopy___pureZunicode_u3788((&colontmpD__4), findFile_p2, NIM_FALSE);
		nimZeroMem((void*)(&blitTmp_3), sizeof(tyProc__oFHfEKFsiYTMAy9a42cSiKw));
		blitTmp_3.ClE_0 = colontmpD__4.ClE_0;
		blitTmp_3.ClP_0 = colontmpD__4.ClP_0;
		nimMarkCyclic(colontmpD__4.ClE_0);
		eqwasMoved___pureZunicode_u3782((&colontmpD__4));
		(*T1_).findFile.ClE_0 = blitTmp_3.ClE_0;
		(*T1_).findFile.ClP_0 = blitTmp_3.ClP_0;
	}
	goto LA8_;
LA10_: ;
	{
		tyProc__oFHfEKFsiYTMAy9a42cSiKw T13_;
		tyProc__oFHfEKFsiYTMAy9a42cSiKw blitTmp_4;
		nimZeroMem((void*)(&T13_), sizeof(tyProc__oFHfEKFsiYTMAy9a42cSiKw));
		T13_.ClP_0 = ((TM__6mNpeIAN05DnDNzb9b3611A_93) (defaultFindFile__packagesZdocutilsZrst_u835)); T13_.ClE_0 = NIM_NIL;
		colontmpD__5.ClE_0 = T13_.ClE_0;
		colontmpD__5.ClP_0 = T13_.ClP_0;
		nimZeroMem((void*)(&blitTmp_4), sizeof(tyProc__oFHfEKFsiYTMAy9a42cSiKw));
		blitTmp_4.ClE_0 = colontmpD__5.ClE_0;
		blitTmp_4.ClP_0 = colontmpD__5.ClP_0;
		nimMarkCyclic(colontmpD__5.ClE_0);
		eqwasMoved___pureZunicode_u3782((&colontmpD__5));
		(*T1_).findFile.ClE_0 = blitTmp_4.ClE_0;
		(*T1_).findFile.ClP_0 = blitTmp_4.ClP_0;
	}
LA8_: ;
	{
		tyProc__lYMtBEH0vEMRzoDaCw5CJg blitTmp_5;
		if (!!((findRefFile_p3.ClP_0 == 0))) goto LA16_;
		eqcopy___packagesZdocutilsZrst_u2519((&colontmpD__6), findRefFile_p3, NIM_FALSE);
		nimZeroMem((void*)(&blitTmp_5), sizeof(tyProc__lYMtBEH0vEMRzoDaCw5CJg));
		blitTmp_5.ClE_0 = colontmpD__6.ClE_0;
		blitTmp_5.ClP_0 = colontmpD__6.ClP_0;
		nimMarkCyclic(colontmpD__6.ClE_0);
		eqwasMoved___packagesZdocutilsZrst_u2513((&colontmpD__6));
		(*T1_).findRefFile.ClE_0 = blitTmp_5.ClE_0;
		(*T1_).findRefFile.ClP_0 = blitTmp_5.ClP_0;
	}
	goto LA14_;
LA16_: ;
	{
		tyProc__lYMtBEH0vEMRzoDaCw5CJg T19_;
		tyProc__lYMtBEH0vEMRzoDaCw5CJg blitTmp_6;
		nimZeroMem((void*)(&T19_), sizeof(tyProc__lYMtBEH0vEMRzoDaCw5CJg));
		T19_.ClP_0 = ((TM__6mNpeIAN05DnDNzb9b3611A_95) (defaultFindRefFile__packagesZdocutilsZrst_u838)); T19_.ClE_0 = NIM_NIL;
		colontmpD__7.ClE_0 = T19_.ClE_0;
		colontmpD__7.ClP_0 = T19_.ClP_0;
		nimZeroMem((void*)(&blitTmp_6), sizeof(tyProc__lYMtBEH0vEMRzoDaCw5CJg));
		blitTmp_6.ClE_0 = colontmpD__7.ClE_0;
		blitTmp_6.ClP_0 = colontmpD__7.ClP_0;
		nimMarkCyclic(colontmpD__7.ClE_0);
		eqwasMoved___packagesZdocutilsZrst_u2513((&colontmpD__7));
		(*T1_).findRefFile.ClE_0 = blitTmp_6.ClE_0;
		(*T1_).findRefFile.ClP_0 = blitTmp_6.ClP_0;
	}
LA14_: ;
	(*T1_).hasToc = hasToc_p5;
	result = T1_;
	setCurrFilename__packagesZdocutilsZrst_u2402(result, filename_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrst_u2516(colontmpD__7);
	eqdestroy___packagesZdocutilsZrst_u2516(colontmpD__6);
	eqdestroy___pureZunicode_u3785(colontmpD__5);
	eqdestroy___pureZunicode_u3785(colontmpD__4);
	eqdestroy___packagesZdocutilsZrst_u2465(colontmpD__3);
	eqdestroy___packagesZdocutilsZrst_u2465(colontmpD__2);
	eqdestroy___system_u2691(r_1);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u3741)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(dest_p0, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u2567((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u17756)(tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg* dest_p0, tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg* src_p1) {
	eqcopy___packagesZdocutilsZrst_u1175((&(*dest_p0).filenameToIdx.data), (*src_p1).filenameToIdx.data);
	(*dest_p0).filenameToIdx.counter = (*src_p1).filenameToIdx.counter;
	eqcopy___system_u5509((&(*dest_p0).idxToFilename), (*src_p1).idxToFilename);
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u17753)(tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg* dest_p0) {
	eqdestroy___system_u5506((*dest_p0).idxToFilename);
	eqdestroy___packagesZdocutilsZrst_u1172((*dest_p0).filenameToIdx.data);
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u5790)(tySequence__7kOUUrKwg6xKu7wOGcJDlQ dest_p0) {
	NI colontmp_;
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T3_;
			T3_ = dest_p0.len;
			if (!(colontmp_ < T3_)) goto LA2;
			eqdestroy___system_u2691(dest_p0.p->data[colontmp_].anchor);
			eqdestroy___system_u2691(dest_p0.p->data[colontmp_].alias);
			colontmp_ += ((NI)1);
		} LA2: ;
	}
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg));
}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u12486)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* dest_p0) {
	eqdestroy___packagesZdocutilsZrst_u5790((*dest_p0).curAnchors);
	eqdestroy___pureZosproc_u474((*dest_p0).indentStack);
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic((*dest_p0).s, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u2567((&(*(*dest_p0).s)));
		nimRawDispose((*dest_p0).s, ((NI)8));
	}
LA4_: ;
	eqdestroy___packagesZdocutilsZrst_u3922((*dest_p0).tok);
}
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u17809)(void* dest_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqdestroy___packagesZdocutilsZrst_u12486((&(*((tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg*) (dest_p0)))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(void, nimTraceRef)(void* q_p0, TNimTypeV2* desc_p1, void* env_p2) {
	void** p_1;
	p_1 = ((void**) (q_p0));
	{
		tyObject_GcEnv__HccVszwojlCZRN46BE9cG8w* j_1;
		if (!!(((*p_1) == NIM_NIL))) goto LA3_;
		j_1 = ((tyObject_GcEnv__HccVszwojlCZRN46BE9cG8w*) (env_p2));
		add__system_u3018((&(*j_1).traceStack), p_1, desc_p1);
	}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u12498)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* dest_p0, void* env_p1) {
	nimTraceRef(&(*dest_p0).s, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))), env_p1);
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u3744)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA** dest_p0, tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* src_p1, NIM_BOOL cyclic_p2) {
	tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmp_ = (*dest_p0);
	{
		if (!src_p1) goto LA3_;
		nimIncRefCyclic(src_p1, cyclic_p2);
	}
LA3_: ;
	(*dest_p0) = src_p1;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = nimDecRefIsLastCyclicStatic(colontmp_, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))));
		if (!T7_) goto LA8_;
		eqdestroy___packagesZdocutilsZrst_u2567((&(*colontmp_)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nimRawDispose(colontmp_, ((NI)8));
	}
LA8_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, initParser__packagesZdocutilsZrst_u3908)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* sharedState_p1) {
	tySequence__qwqHTkRvwhrRyENtudHQ7g T1_;
	tySequence__Ygtgme9cSsBUPbXwOprm43Q T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_.len = 0; T1_.p = NIM_NIL;
	T1_.len = 1; T1_.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(1, sizeof(NI), NIM_ALIGNOF(NI));
	T1_.p->data[0] = ((NI)0);
	eqsink___pureZosproc_u483((&(*p_p0).indentStack), T1_);
	T2_.len = 0; T2_.p = NIM_NIL;
	T2_.len = 0; T2_.p = (tySequence__Ygtgme9cSsBUPbXwOprm43Q_Content*) newSeqPayload(0, sizeof(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg), NIM_ALIGNOF(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg));
	eqsink___packagesZdocutilsZrst_u3931((&(*p_p0).tok), T2_);
	(*p_p0).idx = ((NI)0);
	(*p_p0).col = ((NI)0);
	(*p_p0).line = ((NI)1);
	eqcopy___packagesZdocutilsZrst_u3744(&(*p_p0).s, sharedState_p1, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringV2 s_p0) {
	NCSTRING result;
	{
		if (!(s_p0.len == ((NI)0))) goto LA3_;
		result = "";
	}
	goto LA1_;
LA3_: ;
	{
		result = ((NCSTRING) ((*s_p0.p).data));
	}
LA1_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u339)(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* dest_p0) {
	eqdestroy___system_u2691((*dest_p0).symbol);
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u336)(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* dest_p0) {
	(*dest_p0).kind = 0;
	(*dest_p0).ival = 0;
	(*dest_p0).symbol.len = 0; (*dest_p0).symbol.p = NIM_NIL;
	(*dest_p0).line = 0;
	(*dest_p0).col = 0;
}
static N_INLINE(void, nimAddCharV1)(NimStringV2* s_p0, NIM_CHAR c_p1) {
	prepareAdd(s_p0, ((NI)1));
	(*(*s_p0).p).data[(*s_p0).len] = c_p1;
	(*s_p0).len += ((NI)1);
	(*(*s_p0).p).data[(*s_p0).len] = 0;
}
N_LIB_PRIVATE N_NIMCALL(void, getThing__packagesZdocutilsZrst_u117)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* tok_p1, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw s_p2) {
	NI pos_1;
	(*tok_p1).kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3);
	(*tok_p1).line = (*L_p0).line;
	(*tok_p1).col = (*L_p0).col;
	pos_1 = (*L_p0).bufpos;
	{
		while (1) {
			nimAddCharV1((&(*tok_p1).symbol), (*L_p0).buf[pos_1]);
			pos_1 += ((NI)1);
			{
				if (!!(((s_p2[(NU)((((NU8)((*L_p0).buf[pos_1]))))>>3] &(1U<<((NU)((((NU8)((*L_p0).buf[pos_1]))))&7U)))!=0))) goto LA5_;
				goto LA1;
			}
LA5_: ;
		}
	} LA1: ;
	(*L_p0).col += (NI)(pos_1 - (*L_p0).bufpos);
	(*L_p0).bufpos = pos_1;
}
N_LIB_PRIVATE N_NIMCALL(NI, getIndentAux__packagesZdocutilsZrst_u215)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, NI start_p1) {
	NI result;
	NI pos_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	pos_1 = start_p1;
	{
		if (!((NU8)((*L_p0).buf[pos_1]) == (NU8)(13))) goto LA3_;
		{
			if (!((NU8)((*L_p0).buf[(NI)(pos_1 + ((NI)1))]) == (NU8)(10))) goto LA7_;
			pos_1 += ((NI)2);
		}
		goto LA5_;
LA7_: ;
		{
			pos_1 += ((NI)1);
		}
LA5_: ;
	}
	goto LA1_;
LA3_: ;
	{
		if (!((NU8)((*L_p0).buf[pos_1]) == (NU8)(10))) goto LA11_;
		pos_1 += ((NI)1);
	}
	goto LA1_;
LA11_: ;
LA1_: ;
	{
		while (1) {
			switch (((NU8)((*L_p0).buf[pos_1]))) {
			case 32:
			case 11:
			case 12:
			{
				pos_1 += ((NI)1);
				result += ((NI)1);
			}
			break;
			case 9:
			{
				pos_1 += ((NI)1);
				result = (NI)((NI)(result - (NI)(result % ((NI)8))) + ((NI)8));
			}
			break;
			default:
			{
				goto LA13;
			}
			break;
			}
		}
	} LA13: ;
	{
		if (!((NU8)((*L_p0).buf[pos_1]) == (NU8)(0))) goto LA20_;
		result = ((NI)0);
	}
	goto LA18_;
LA20_: ;
	{
		NIM_BOOL T23_;
		T23_ = (NIM_BOOL)0;
		T23_ = ((NU8)((*L_p0).buf[pos_1]) == (NU8)(10));
		if (T23_) goto LA24_;
		T23_ = ((NU8)((*L_p0).buf[pos_1]) == (NU8)(13));
LA24_: ;
		if (!T23_) goto LA25_;
		result = getIndentAux__packagesZdocutilsZrst_u215(L_p0, pos_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA18_;
LA25_: ;
LA18_: ;
	(*L_p0).bufpos = pos_1;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NimStringV2, spaces__pureZstrutils_u1139)(NI n_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = nsuRepeatChar(32, n_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, getIndent__packagesZdocutilsZrst_u250)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* tok_p1) {
	NimStringV2 colontmpD_;
	NI T1_;
	NimStringV2 T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	(*tok_p1).col = ((NI)0);
	(*tok_p1).kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1);
	T1_ = (NI)0;
	T1_ = getIndentAux__packagesZdocutilsZrst_u215(L_p0, (*L_p0).bufpos);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*tok_p1).ival = T1_;
	(*L_p0).line += ((NI)1);
	(*tok_p1).line = (*L_p0).line;
	(*L_p0).col = (*tok_p1).ival;
	(*tok_p1).ival = (((NI)((*tok_p1).ival - (*L_p0).baseIndent) >= ((NI)0)) ? (NI)((*tok_p1).ival - (*L_p0).baseIndent) : ((NI)0));
	T2_.len = 0; T2_.p = NIM_NIL;
	colontmpD_ = spaces__pureZstrutils_u1139(((*tok_p1).ival));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_ = rawNewString(colontmpD_.len + 1);
appendString((&T2_), TM__6mNpeIAN05DnDNzb9b3611A_101);
appendString((&T2_), colontmpD_);
	eqsink___system_u2700((&(*tok_p1).symbol), T2_);
	eqdestroy___system_u2691(colontmpD_);
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isCurrentLineAdornment__packagesZdocutilsZrst_u155)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0) {
	NIM_BOOL result;
	NI pos_1;
	NIM_CHAR c_1;
{	pos_1 = (*L_p0).bufpos;
	c_1 = (*L_p0).buf[pos_1];
	{
		while (1) {
			pos_1 += ((NI)1);
			{
				if (!(((NU8)((*L_p0).buf[pos_1])) == ((NU8)(13)) || ((NU8)((*L_p0).buf[pos_1])) == ((NU8)(10)) || ((NU8)((*L_p0).buf[pos_1])) == ((NU8)(0)))) goto LA5_;
				goto LA1;
			}
LA5_: ;
			{
				if (!((NU8)(c_1) == (NU8)(43))) goto LA9_;
				{
					if (!!((((NU8)((*L_p0).buf[pos_1])) == ((NU8)(45)) || ((NU8)((*L_p0).buf[pos_1])) == ((NU8)(61)) || ((NU8)((*L_p0).buf[pos_1])) == ((NU8)(43))))) goto LA13_;
					result = NIM_FALSE;
					goto BeforeRet_;
				}
LA13_: ;
			}
			goto LA7_;
LA9_: ;
			{
				{
					if (!!((((NU8)((*L_p0).buf[pos_1])) == ((NU8)(c_1)) || ((NU8)((*L_p0).buf[pos_1])) == ((NU8)(32)) || ((NU8)((*L_p0).buf[pos_1])) == ((NU8)(9)) || ((NU8)((*L_p0).buf[pos_1])) == ((NU8)(11)) || ((NU8)((*L_p0).buf[pos_1])) == ((NU8)(12))))) goto LA18_;
					result = NIM_FALSE;
					goto BeforeRet_;
				}
LA18_: ;
			}
LA7_: ;
		}
	} LA1: ;
	result = NIM_TRUE;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, getPunctAdornment__packagesZdocutilsZrst_u177)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* tok_p1) {
	NI pos_1;
	NIM_CHAR c_1;
	{
		if (!(*L_p0).adornmentLine) goto LA3_;
		(*tok_p1).kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4);
	}
	goto LA1_;
LA3_: ;
	{
		(*tok_p1).kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5);
	}
LA1_: ;
	(*tok_p1).line = (*L_p0).line;
	(*tok_p1).col = (*L_p0).col;
	pos_1 = (*L_p0).bufpos;
	c_1 = (*L_p0).buf[pos_1];
	{
		NIM_BOOL T8_;
		NIM_BOOL T10_;
		T8_ = (NIM_BOOL)0;
		T8_ = !((*L_p0).escapeNext);
		if (!(T8_)) goto LA9_;
		T10_ = (NIM_BOOL)0;
		T10_ = !(((NU8)(c_1) == (NU8)(92)));
		if (T10_) goto LA11_;
		T10_ = (*L_p0).adornmentLine;
LA11_: ;
		T8_ = T10_;
LA9_: ;
		if (!T8_) goto LA12_;
		{
			while (1) {
				nimAddCharV1((&(*tok_p1).symbol), (*L_p0).buf[pos_1]);
				pos_1 += ((NI)1);
				{
					if (!!(((NU8)((*L_p0).buf[pos_1]) == (NU8)(c_1)))) goto LA18_;
					goto LA14;
				}
LA18_: ;
			}
		} LA14: ;
	}
	goto LA6_;
LA12_: ;
	{
		if (!(*L_p0).escapeNext) goto LA21_;
		nimAddCharV1((&(*tok_p1).symbol), (*L_p0).buf[pos_1]);
		pos_1 += ((NI)1);
	}
	goto LA6_;
LA21_: ;
	{
		nimAddCharV1((&(*tok_p1).symbol), 92);
		pos_1 += ((NI)1);
		(*L_p0).escapeNext = NIM_TRUE;
	}
LA6_: ;
	(*L_p0).col += (NI)(pos_1 - (*L_p0).bufpos);
	(*L_p0).bufpos = pos_1;
	{
		if (!eqStrings((*tok_p1).symbol, TM__6mNpeIAN05DnDNzb9b3611A_103)) goto LA26_;
		(*tok_p1).kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5);
	}
LA26_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, getBracket__packagesZdocutilsZrst_u202)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* tok_p1) {
	(*tok_p1).kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5);
	(*tok_p1).line = (*L_p0).line;
	(*tok_p1).col = (*L_p0).col;
	nimAddCharV1((&(*tok_p1).symbol), (*L_p0).buf[(*L_p0).bufpos]);
	(*L_p0).col += ((NI)1);
	(*L_p0).bufpos += ((NI)1);
}
N_LIB_PRIVATE N_NIMCALL(void, rawGetTok__packagesZdocutilsZrst_u258)(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw* L_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* tok_p1) {
	NIM_CHAR c_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqsink___system_u2700((&(*tok_p1).symbol), TM__6mNpeIAN05DnDNzb9b3611A_98);
	(*tok_p1).ival = ((NI)0);
	{
		if (!((*L_p0).col == ((NI)0))) goto LA3_;
		(*L_p0).adornmentLine = NIM_FALSE;
	}
LA3_: ;
	c_1 = (*L_p0).buf[(*L_p0).bufpos];
	switch (((NU8)(c_1))) {
	case 97 ... 122:
	case 65 ... 90:
	case 128 ... 255:
	case 48 ... 57:
	{
		getThing__packagesZdocutilsZrst_u117(L_p0, tok_p1, TM__6mNpeIAN05DnDNzb9b3611A_99);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case 32:
	case 9:
	case 11:
	case 12:
	{
		getThing__packagesZdocutilsZrst_u117(L_p0, tok_p1, TM__6mNpeIAN05DnDNzb9b3611A_100);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*tok_p1).kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2);
		{
			if (!(((NU8)((*L_p0).buf[(*L_p0).bufpos])) == ((NU8)(13)) || ((NU8)((*L_p0).buf[(*L_p0).bufpos])) == ((NU8)(10)))) goto LA9_;
			rawGetTok__packagesZdocutilsZrst_u258(L_p0, tok_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA9_: ;
	}
	break;
	case 13:
	case 10:
	{
		getIndent__packagesZdocutilsZrst_u250(L_p0, tok_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*L_p0).adornmentLine = NIM_FALSE;
	}
	break;
	case 33:
	case 34:
	case 35:
	case 36:
	case 37:
	case 38:
	case 39:
	case 42:
	case 43:
	case 44:
	case 45:
	case 46:
	case 47:
	case 58:
	case 59:
	case 60:
	case 61:
	case 62:
	case 63:
	case 64:
	case 92:
	case 94:
	case 95:
	case 96:
	case 124:
	case 126:
	{
		{
			NIM_BOOL T17_;
			if (!((*L_p0).col == ((NI)0))) goto LA15_;
			T17_ = (NIM_BOOL)0;
			T17_ = isCurrentLineAdornment__packagesZdocutilsZrst_u155(L_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*L_p0).adornmentLine = T17_;
		}
LA15_: ;
		getPunctAdornment__packagesZdocutilsZrst_u177(L_p0, tok_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case 40:
	case 41:
	case 91:
	case 93:
	case 123:
	case 125:
	{
		getBracket__packagesZdocutilsZrst_u202(L_p0, tok_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	default:
	{
		(*tok_p1).line = (*L_p0).line;
		(*tok_p1).col = (*L_p0).col;
		{
			if (!((NU8)(c_1) == (NU8)(0))) goto LA22_;
			(*tok_p1).kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0);
		}
		goto LA20_;
LA22_: ;
		{
			(*tok_p1).kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6);
			nimAddCharV1((&(*tok_p1).symbol), c_1);
			(*L_p0).bufpos += ((NI)1);
			(*L_p0).col += ((NI)1);
		}
LA20_: ;
	}
	break;
	}
	(*tok_p1).col = (((NI)((*tok_p1).col - (*L_p0).baseIndent) >= ((NI)0)) ? (NI)((*tok_p1).col - (*L_p0).baseIndent) : ((NI)0));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, getTokens__packagesZdocutilsZrst_u276)(NimStringV2 buffer_p0, tySequence__Ygtgme9cSsBUPbXwOprm43Q* tokens_p1) {
	tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw L_1;
	NI length_1;
	NI T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&L_1), sizeof(tyObject_Lexer__kffhi1T9cBRAzPlmKYxhbfw));
	L_1.Sup.m_type = (&NTIv2__kffhi1T9cBRAzPlmKYxhbfw_);
	T1_ = (*tokens_p1).len;
	length_1 = T1_;
	L_1.buf = nimToCStringConv(buffer_p0);
	L_1.line = ((NI)0);
	{
		NIM_BOOL T4_;
		NIM_BOOL T5_;
		T4_ = (NIM_BOOL)0;
		T5_ = (NIM_BOOL)0;
		T5_ = ((NU8)(L_1.buf[((NI)0)]) == (NU8)(239));
		if (!(T5_)) goto LA6_;
		T5_ = ((NU8)(L_1.buf[((NI)1)]) == (NU8)(187));
LA6_: ;
		T4_ = T5_;
		if (!(T4_)) goto LA7_;
		T4_ = ((NU8)(L_1.buf[((NI)2)]) == (NU8)(191));
LA7_: ;
		if (!T4_) goto LA8_;
		L_1.bufpos += ((NI)3);
	}
LA8_: ;
	{
		while (1) {
			NIM_BOOL toEscape_1;
			length_1 += ((NI)1);
			setLen__packagesZdocutilsZrst_u295((&(*tokens_p1)), (length_1));
			toEscape_1 = L_1.escapeNext;
			rawGetTok__packagesZdocutilsZrst_u258((&L_1), (&(*tokens_p1).p->data[(NI)(length_1 - ((NI)1))]));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			{
				if (!toEscape_1) goto LA14_;
				L_1.escapeNext = NIM_FALSE;
			}
LA14_: ;
			{
				if (!((*tokens_p1).p->data[(NI)(length_1 - ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0))) goto LA18_;
				goto LA10;
			}
LA18_: ;
		}
	} LA10: ;
	{
		if (!((*tokens_p1).p->data[((NI)0)].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA22_;
		(*tokens_p1).p->data[((NI)0)].ival = (*tokens_p1).p->data[((NI)0)].symbol.len;
		(*tokens_p1).p->data[((NI)0)].kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1);
	}
LA22_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, currInd__packagesZdocutilsZrst_u3883)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NI result;
	NI T1_;
	T1_ = ((*p_p0).indentStack.len-1);
	result = (*p_p0).indentStack.p->data[T1_];
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, internalRefPriority__packagesZdocutilsZrst_u4204)(tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ k_p0) {
	NI result;
	switch (k_p0) {
	case ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)0):
	{
		result = ((NI)6);
	}
	break;
	case ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)1):
	{
		result = ((NI)5);
	}
	break;
	case ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)2):
	{
		result = ((NI)4);
	}
	break;
	case ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)3):
	{
		result = ((NI)3);
	}
	break;
	default: __builtin_unreachable();
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u2886)(tySequence__ib5UTyrs9aC6K60sNqKElQA* dest_p0, tySequence__ib5UTyrs9aC6K60sNqKElQA src_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	if ((*dest_p0).p != src_p1.p) {	eqdestroy___packagesZdocutilsZrst_u2877((*dest_p0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
(*dest_p0).len = src_p1.len; (*dest_p0).p = src_p1.p;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u2874)(tySequence__ib5UTyrs9aC6K60sNqKElQA* dest_p0) {
	(*dest_p0).len = 0; (*dest_p0).p = NIM_NIL;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u2982)(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* dest_p0) {
	switch ((*dest_p0).kind) {
	case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0):
	{
		{
			NIM_BOOL T4_;
			T4_ = (NIM_BOOL)0;
			T4_ = nimDecRefIsLastDyn((*dest_p0)._kind_1.target);
			if (!T4_) goto LA5_;
			eqdestroy___packagesZdocutilsZrstast_u173((&(*(*dest_p0)._kind_1.target)));
			nimRawDispose((*dest_p0)._kind_1.target, ((NI)8));
		}
LA5_: ;
	}
	break;
	case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)1):
	{
		eqdestroy___system_u2691((*dest_p0)._kind_2.refnameExt);
	}
	break;
	case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2):
	{
		eqdestroy___system_u2691((*dest_p0)._kind_3.refname);
		eqdestroy___system_u2691((*dest_p0)._kind_3.langSym.outType);
		eqdestroy___stdZenvvars_u82((*dest_p0)._kind_3.langSym.parameters);
		eqdestroy___system_u2691((*dest_p0)._kind_3.langSym.generics);
		eqdestroy___system_u2691((*dest_p0)._kind_3.langSym.name);
		eqdestroy___system_u2691((*dest_p0)._kind_3.langSym.symTypeKind);
		eqdestroy___system_u2691((*dest_p0)._kind_3.langSym.symKind);
		eqdestroy___system_u2691((*dest_p0)._kind_3.tooltip);
	}
	break;
	default: __builtin_unreachable();
	}
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u2979)(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* dest_p0) {
	(*dest_p0).info.line = 0;
	(*dest_p0).info.col = 0;
	(*dest_p0).info.fileIndex = 0;
	(*dest_p0).priority = 0;
	(*dest_p0).kind = 0;
	switch ((*dest_p0).kind) {
	case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0):
	{
		(*dest_p0)._kind_1.anchorType = 0;
		(*dest_p0)._kind_1.target = 0;
	}
	break;
	case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)1):
	{
		(*dest_p0)._kind_2.anchorTypeExt = 0;
		(*dest_p0)._kind_2.refnameExt.len = 0; (*dest_p0)._kind_2.refnameExt.p = NIM_NIL;
	}
	break;
	case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2):
	{
		(*dest_p0)._kind_3.module = 0;
		(*dest_p0)._kind_3.tooltip.len = 0; (*dest_p0)._kind_3.tooltip.p = NIM_NIL;
		(*dest_p0)._kind_3.langSym.symKind.len = 0; (*dest_p0)._kind_3.langSym.symKind.p = NIM_NIL;
		(*dest_p0)._kind_3.langSym.symTypeKind.len = 0; (*dest_p0)._kind_3.langSym.symTypeKind.p = NIM_NIL;
		(*dest_p0)._kind_3.langSym.name.len = 0; (*dest_p0)._kind_3.langSym.name.p = NIM_NIL;
		(*dest_p0)._kind_3.langSym.generics.len = 0; (*dest_p0)._kind_3.langSym.generics.p = NIM_NIL;
		(*dest_p0)._kind_3.langSym.isGroup = 0;
		(*dest_p0)._kind_3.langSym.parametersProvided = 0;
		(*dest_p0)._kind_3.langSym.parameters.len = 0; (*dest_p0)._kind_3.langSym.parameters.p = NIM_NIL;
		(*dest_p0)._kind_3.langSym.outType.len = 0; (*dest_p0)._kind_3.langSym.outType.p = NIM_NIL;
		(*dest_p0)._kind_3.refname.len = 0; (*dest_p0)._kind_3.refname.p = NIM_NIL;
		(*dest_p0)._kind_3.external = 0;
	}
	break;
	default: __builtin_unreachable();
	}
}
static N_INLINE(void, nimIncRef)(void* p_p0) {
	NI T1_;
	NI T2_;
	T1_ = (NI)0;
	T1_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
	T2_ = (NI)0;
	T2_ = minuspercent___system_u805(((NI) (ptrdiff_t) (p_p0)), ((NI)16));
	(*((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T1_))).rc = pluspercent___system_u785((*((tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A*) (T2_))).rc, ((NI)16));
}
N_LIB_PRIVATE N_NIMCALL(tySequence__ib5UTyrs9aC6K60sNqKElQA, eqdup___packagesZdocutilsZrst_u2883)(tySequence__ib5UTyrs9aC6K60sNqKElQA src_p0) {
	tySequence__ib5UTyrs9aC6K60sNqKElQA result;
	NI T1_;
	NI colontmp_;
	result.len = 0; result.p = NIM_NIL;
	T1_ = src_p0.len;
	setLen__packagesZdocutilsZrst_u2899((&result), T1_);
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T4_;
			T4_ = result.len;
			if (!(colontmp_ < T4_)) goto LA3;
			result.p->data[colontmp_].info.line = src_p0.p->data[colontmp_].info.line;
			result.p->data[colontmp_].info.col = src_p0.p->data[colontmp_].info.col;
			result.p->data[colontmp_].info.fileIndex = src_p0.p->data[colontmp_].info.fileIndex;
			result.p->data[colontmp_].priority = src_p0.p->data[colontmp_].priority;
			result.p->data[colontmp_].kind = src_p0.p->data[colontmp_].kind;
			switch (result.p->data[colontmp_].kind) {
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0):
			{
				result.p->data[colontmp_]._kind_1.anchorType = src_p0.p->data[colontmp_]._kind_1.anchorType;
				result.p->data[colontmp_]._kind_1.target = src_p0.p->data[colontmp_]._kind_1.target;
				{
					if (!src_p0.p->data[colontmp_]._kind_1.target) goto LA8_;
					nimIncRef(src_p0.p->data[colontmp_]._kind_1.target);
				}
LA8_: ;
			}
			break;
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)1):
			{
				result.p->data[colontmp_]._kind_2.anchorTypeExt = src_p0.p->data[colontmp_]._kind_2.anchorTypeExt;
				result.p->data[colontmp_]._kind_2.refnameExt = eqdup___system_u2697(src_p0.p->data[colontmp_]._kind_2.refnameExt);
			}
			break;
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2):
			{
				result.p->data[colontmp_]._kind_3.module = src_p0.p->data[colontmp_]._kind_3.module;
				result.p->data[colontmp_]._kind_3.tooltip = eqdup___system_u2697(src_p0.p->data[colontmp_]._kind_3.tooltip);
				result.p->data[colontmp_]._kind_3.langSym.symKind = eqdup___system_u2697(src_p0.p->data[colontmp_]._kind_3.langSym.symKind);
				result.p->data[colontmp_]._kind_3.langSym.symTypeKind = eqdup___system_u2697(src_p0.p->data[colontmp_]._kind_3.langSym.symTypeKind);
				result.p->data[colontmp_]._kind_3.langSym.name = eqdup___system_u2697(src_p0.p->data[colontmp_]._kind_3.langSym.name);
				result.p->data[colontmp_]._kind_3.langSym.generics = eqdup___system_u2697(src_p0.p->data[colontmp_]._kind_3.langSym.generics);
				result.p->data[colontmp_]._kind_3.langSym.isGroup = src_p0.p->data[colontmp_]._kind_3.langSym.isGroup;
				result.p->data[colontmp_]._kind_3.langSym.parametersProvided = src_p0.p->data[colontmp_]._kind_3.langSym.parametersProvided;
				result.p->data[colontmp_]._kind_3.langSym.parameters = eqdup___stdZenvvars_u88(src_p0.p->data[colontmp_]._kind_3.langSym.parameters);
				result.p->data[colontmp_]._kind_3.langSym.outType = eqdup___system_u2697(src_p0.p->data[colontmp_]._kind_3.langSym.outType);
				result.p->data[colontmp_]._kind_3.refname = eqdup___system_u2697(src_p0.p->data[colontmp_]._kind_3.refname);
				result.p->data[colontmp_]._kind_3.external = src_p0.p->data[colontmp_]._kind_3.external;
			}
			break;
			default: __builtin_unreachable();
			}
			colontmp_ += ((NI)1);
		} LA3: ;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA, lineInfo__packagesZdocutilsZrst_u4104)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI iTok_p1) {
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA result;
	nimZeroMem((void*)(&result), sizeof(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
	result.col = ((NI16) ((NI)((*p_p0).col + (*p_p0).tok.p->data[iTok_p1].col)));
	result.line = ((NU16) ((NI)((*p_p0).line + (*p_p0).tok.p->data[iTok_p1].line)));
	result.fileIndex = (*(*p_p0).s).currFileIdx;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA, prevLineInfo__packagesZdocutilsZrst_u4111)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&result), sizeof(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
	result = lineInfo__packagesZdocutilsZrst_u4104(p_p0, (NI)((*p_p0).idx - ((NI)1)));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u5697)(tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg* dest_p0) {
	eqdestroy___system_u2691((*dest_p0).anchor);
	eqdestroy___system_u2691((*dest_p0).alias);
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u5694)(tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg* dest_p0) {
	(*dest_p0).alias.len = 0; (*dest_p0).alias.p = NIM_NIL;
	(*dest_p0).anchor.len = 0; (*dest_p0).anchor.p = NIM_NIL;
	(*dest_p0).info.line = 0;
	(*dest_p0).info.col = 0;
	(*dest_p0).info.fileIndex = 0;
}
N_LIB_PRIVATE N_NIMCALL(void, addAnchorRst__packagesZdocutilsZrst_u4220)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 name_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* target_p2, tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ anchorType_p3) {
	NI prio_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	prio_1 = internalRefPriority__packagesZdocutilsZrst_u4204(anchorType_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg* a_1;
		NI i_1;
		NI L_1;
		NI T2_;
		a_1 = (tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg*)0;
		i_1 = ((NI)0);
		T2_ = (*p_p0).curAnchors.len;
		L_1 = T2_;
		{
			while (1) {
				tySequence__ib5UTyrs9aC6K60sNqKElQA colontmpD_;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
				tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA colontmpD__3;
				tySequence__ib5UTyrs9aC6K60sNqKElQA* T5_;
				tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA T6_;
				if (!(i_1 < L_1)) goto LA4;
				colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
				a_1 = (&(*p_p0).curAnchors.p->data[i_1]);
				colontmpD_ = newSeq__packagesZdocutilsZrst_u4268(((NI)0));
				T5_ = (tySequence__ib5UTyrs9aC6K60sNqKElQA*)0;
				T5_ = mgetOrPut__packagesZdocutilsZrst_u4332((&(*(*p_p0).s).anchors), (*a_1).alias, colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				nimZeroMem((void*)(&T6_), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
				T6_.kind = ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0);
				colontmpD__2 = eqdup___packagesZdocutilsZrstast_u291(target_p2);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				T6_._kind_1.target = colontmpD__2;
				T6_.priority = prio_1;
				colontmpD__3 = eqdup___packagesZdocutilsZrstast_u388((*a_1).info);
				T6_.info = colontmpD__3;
				T6_._kind_1.anchorType = ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)0);
				add__packagesZdocutilsZrst_u5551((&(*T5_)), (&T6_));
				i_1 += ((NI)1);
				eqdestroy___packagesZdocutilsZrst_u2877(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA4: ;
		}
	}
	{
		tySequence__ib5UTyrs9aC6K60sNqKElQA colontmpD__4;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__5;
		tySequence__ib5UTyrs9aC6K60sNqKElQA* T11_;
		tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA T12_;
		if (!!((name_p1.len == 0))) goto LA9_;
		colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
		colontmpD__4 = newSeq__packagesZdocutilsZrst_u4268(((NI)0));
		T11_ = (tySequence__ib5UTyrs9aC6K60sNqKElQA*)0;
		T11_ = mgetOrPut__packagesZdocutilsZrst_u4332((&(*(*p_p0).s).anchors), name_p1, colontmpD__4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nimZeroMem((void*)(&T12_), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
		T12_.kind = ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0);
		colontmpD__5 = eqdup___packagesZdocutilsZrstast_u291(target_p2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T12_._kind_1.target = colontmpD__5;
		T12_.priority = prio_1;
		T12_.info = prevLineInfo__packagesZdocutilsZrst_u4111((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T12_._kind_1.anchorType = anchorType_p3;
		add__packagesZdocutilsZrst_u5551((&(*T11_)), (&T12_));
		eqdestroy___packagesZdocutilsZrst_u2877(colontmpD__4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA9_: ;
	setLen__packagesZdocutilsZrst_u5653((&(*p_p0).curAnchors), ((NI)0));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, newRstNodeA__packagesZdocutilsZrst_u9983)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w kind_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tySequence__LqZapiAqCFeXPQZdoIAUew T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_.len = 0; T1_.p = NIM_NIL;
	T1_.len = 0; T1_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	result = newRstNode__packagesZdocutilsZrstast_u121(kind_p1, T1_, TM__6mNpeIAN05DnDNzb9b3611A_105);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI T4_;
		T4_ = (*p_p0).curAnchors.len;
		if (!(((NI)0) < T4_)) goto LA5_;
		eqcopy___system_u2694((&(*result).anchor), (*p_p0).curAnchors.p->data[((NI)0)].anchor);
		addAnchorRst__packagesZdocutilsZrst_u4220(p_p0, TM__6mNpeIAN05DnDNzb9b3611A_106, result, ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA5_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseLiteralBlock__packagesZdocutilsZrst_u11743)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	n_1 = NIM_NIL;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)26));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	n_1 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_107);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI indent_1;
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA4_;
		indent_1 = (*p_p0).tok.p->data[(*p_p0).idx].ival;
		{
			while (1) {
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA7;
				(*p_p0).idx += ((NI)1);
			} LA7: ;
		}
		{
			while (1) {
				switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
				case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0):
				{
					goto LA8;
				}
				break;
				case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1):
				{
					{
						if (!((*p_p0).tok.p->data[(*p_p0).idx].ival < indent_1)) goto LA14_;
						goto LA8;
					}
					goto LA12_;
LA14_: ;
					{
						NimStringV2 colontmpD_;
						colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
						prepareAdd((&(*n_1)._kind_1.text), 1);
appendString((&(*n_1)._kind_1.text), TM__6mNpeIAN05DnDNzb9b3611A_108);
						colontmpD_ = spaces__pureZstrutils_u1139(((NI)((*p_p0).tok.p->data[(*p_p0).idx].ival - indent_1)));
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						prepareAdd((&(*n_1)._kind_1.text), colontmpD_.len + 0);
appendString((&(*n_1)._kind_1.text), colontmpD_);
						(*p_p0).idx += ((NI)1);
						eqdestroy___system_u2691(colontmpD_);
					}
LA12_: ;
				}
				break;
				default:
				{
					prepareAdd((&(*n_1)._kind_1.text), (*p_p0).tok.p->data[(*p_p0).idx].symbol.len + 0);
appendString((&(*n_1)._kind_1.text), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
					(*p_p0).idx += ((NI)1);
				}
				break;
				}
			}
		} LA8: ;
	}
	goto LA2_;
LA4_: ;
	{
		{
			while (1) {
				if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA20;
				prepareAdd((&(*n_1)._kind_1.text), (*p_p0).tok.p->data[(*p_p0).idx].symbol.len + 0);
appendString((&(*n_1)._kind_1.text), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
				(*p_p0).idx += ((NI)1);
			} LA20: ;
		}
	}
LA2_: ;
	add__packagesZdocutilsZrstast_u463(result, n_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrstast_u285(n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, pushInd__packagesZdocutilsZrst_u3889)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI ind_p1) {
	add__varpartitions_u1538((&(*p_p0).indentStack), ind_p1);
}
N_LIB_PRIVATE N_NIMCALL(void, popInd__packagesZdocutilsZrst_u3896)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	{
		NI T3_;
		NI T6_;
		T3_ = (*p_p0).indentStack.len;
		if (!(((NI)1) < T3_)) goto LA4_;
		T6_ = (*p_p0).indentStack.len;
		setLen__pureZosproc_u403((&(*p_p0).indentStack), ((NI)(T6_ - ((NI)1))));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMarkdownCodeBlock__packagesZdocutilsZrst_u11419)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI idx_p1) {
	NIM_BOOL result;
	tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg tok_1;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
	NIM_BOOL T3_;
	NIM_BOOL T6_;
	NIM_BOOL T8_;
	nimZeroMem((void*)(&tok_1), sizeof(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg));
	tok_1 = (*p_p0).tok.p->data[idx_p1];
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T3_ = (NIM_BOOL)0;
	T3_ = (((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)2)))&7U)))!=0);
	if (!(T3_)) goto LA4_;
	T3_ = (tok_1.kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5) || tok_1.kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4));
LA4_: ;
	T2_ = T3_;
	if (!(T2_)) goto LA5_;
	T6_ = (NIM_BOOL)0;
	T6_ = ((NU8)(tok_1.symbol.p->data[((NI)0)]) == (NU8)(96));
	if (T6_) goto LA7_;
	T8_ = (NIM_BOOL)0;
	T8_ = (((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)3)))&7U)))!=0);
	if (!(T8_)) goto LA9_;
	T8_ = ((NU8)(tok_1.symbol.p->data[((NI)0)]) == (NU8)(126));
LA9_: ;
	T6_ = T8_;
LA7_: ;
	T2_ = T6_;
LA5_: ;
	T1_ = T2_;
	if (!(T1_)) goto LA10_;
	T1_ = (((NI)3) <= tok_1.symbol.len);
LA10_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMarkdownCodeBlock__packagesZdocutilsZrst_u11437)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	result = isMarkdownCodeBlock__packagesZdocutilsZrst_u11419(p_p0, (*p_p0).idx);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isRst__packagesZdocutilsZrst_u3831)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	result = !((((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)3)))&7U)))!=0));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, validRefnamePunct__packagesZdocutilsZrst_u9995)(NimStringV2 x_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	T1_ = (NIM_BOOL)0;
	T1_ = (x_p0.len == ((NI)1));
	if (!(T1_)) goto LA2_;
	T1_ = (((NU8)(x_p0.p->data[((NI)0)])) == ((NU8)(45)) || ((NU8)(x_p0.p->data[((NI)0)])) == ((NU8)(95)) || ((NU8)(x_p0.p->data[((NI)0)])) == ((NU8)(46)) || ((NU8)(x_p0.p->data[((NI)0)])) == ((NU8)(58)) || ((NU8)(x_p0.p->data[((NI)0)])) == ((NU8)(43)));
LA2_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, getRefnameIdx__packagesZdocutilsZrst_u10002)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI startIdx_p1) {
	NI result;
	NI j_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	j_1 = startIdx_p1;
	{
		if (!((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3))) goto LA3_;
		j_1 += ((NI)1);
		{
			while (1) {
				NIM_BOOL T7_;
				NIM_BOOL T8_;
				T7_ = (NIM_BOOL)0;
				T8_ = (NIM_BOOL)0;
				T8_ = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5));
				if (!(T8_)) goto LA9_;
				T8_ = validRefnamePunct__packagesZdocutilsZrst_u9995((*p_p0).tok.p->data[j_1].symbol);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA9_: ;
				T7_ = T8_;
				if (!(T7_)) goto LA10_;
				T7_ = ((*p_p0).tok.p->data[(NI)(j_1 + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3));
LA10_: ;
				if (!T7_) goto LA6;
				j_1 += ((NI)2);
			} LA6: ;
		}
	}
LA3_: ;
	result = (NI)(j_1 - ((NI)1));
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, match__packagesZdocutilsZrst_u10249)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI start_p1, NimStringV2 expr_p2) {
	NIM_BOOL result;
	NI i_1;
	NI j_1;
	NI last_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	i_1 = ((NI)0);
	j_1 = start_p1;
	last_1 = (NI)(expr_p2.len - ((NI)1));
	{
		while (1) {
			if (!(i_1 <= last_1)) goto LA2;
			switch (((NU8)(expr_p2.p->data[i_1]))) {
			case 119:
			{
				NI lastIdx_1;
				lastIdx_1 = getRefnameIdx__packagesZdocutilsZrst_u10002(p_p0, j_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				result = (j_1 <= lastIdx_1);
				{
					if (!result) goto LA6_;
					j_1 = lastIdx_1;
				}
LA6_: ;
			}
			break;
			case 32:
			{
				result = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2));
			}
			break;
			case 105:
			{
				result = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
			}
			break;
			case 73:
			{
				result = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0));
			}
			break;
			case 112:
			{
				result = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5));
			}
			break;
			case 97:
			{
				result = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4));
			}
			break;
			case 111:
			{
				result = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6));
			}
			break;
			case 84:
			{
				result = NIM_TRUE;
			}
			break;
			case 69:
			{
				result = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0) || (*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2) || (*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
			}
			break;
			case 101:
			case 120:
			case 110:
			{
				NIM_BOOL T17_;
				T17_ = (NIM_BOOL)0;
				T17_ = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3));
				if (T17_) goto LA18_;
				T17_ = eqStrings((*p_p0).tok.p->data[j_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_114);
LA18_: ;
				result = T17_;
				{
					if (!result) goto LA21_;
					switch (((NU8)((*p_p0).tok.p->data[j_1].symbol.p->data[((NI)0)]))) {
					case 35:
					{
						result = NIM_TRUE;
					}
					break;
					case 97 ... 122:
					case 65 ... 90:
					{
						NIM_BOOL T25_;
						T25_ = (NIM_BOOL)0;
						T25_ = (((NU8)(expr_p2.p->data[i_1])) == ((NU8)(101)) || ((NU8)(expr_p2.p->data[i_1])) == ((NU8)(120)));
						if (!(T25_)) goto LA26_;
						T25_ = ((*p_p0).tok.p->data[j_1].symbol.len == ((NI)1));
LA26_: ;
						result = T25_;
					}
					break;
					case 48 ... 57:
					{
						NIM_BOOL T28_;
						T28_ = (NIM_BOOL)0;
						T28_ = (((NU8)(expr_p2.p->data[i_1])) == ((NU8)(101)) || ((NU8)(expr_p2.p->data[i_1])) == ((NU8)(110)));
						if (!(T28_)) goto LA29_;
						T28_ = allCharsInSet__pureZstrutils_u1502((*p_p0).tok.p->data[j_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_115);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA29_: ;
						result = T28_;
					}
					break;
					default:
					{
						result = NIM_FALSE;
					}
					break;
					}
				}
LA21_: ;
			}
			break;
			default:
			{
				NIM_CHAR c_1;
				NI length_1;
				NIM_BOOL T36_;
				NIM_BOOL T37_;
				c_1 = expr_p2.p->data[i_1];
				length_1 = ((NI)0);
				{
					while (1) {
						NIM_BOOL T34_;
						T34_ = (NIM_BOOL)0;
						T34_ = (i_1 <= last_1);
						if (!(T34_)) goto LA35_;
						T34_ = ((NU8)(expr_p2.p->data[i_1]) == (NU8)(c_1));
LA35_: ;
						if (!T34_) goto LA33;
						i_1 += ((NI)1);
						length_1 += ((NI)1);
					} LA33: ;
				}
				i_1 -= ((NI)1);
				T36_ = (NIM_BOOL)0;
				T37_ = (NIM_BOOL)0;
				T37_ = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5) || (*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4));
				if (!(T37_)) goto LA38_;
				T37_ = ((*p_p0).tok.p->data[j_1].symbol.len == length_1);
LA38_: ;
				T36_ = T37_;
				if (!(T36_)) goto LA39_;
				T36_ = ((NU8)((*p_p0).tok.p->data[j_1].symbol.p->data[((NI)0)]) == (NU8)(c_1));
LA39_: ;
				result = T36_;
			}
			break;
			}
			{
				if (!!(result)) goto LA42_;
				goto BeforeRet_;
			}
LA42_: ;
			j_1 += ((NI)1);
			i_1 += ((NI)1);
		} LA2: ;
	}
	result = NIM_TRUE;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getFilename__packagesZdocutilsZrst_u2405)(tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg* filenames_p0, NI32 fid_p1) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	{
		NIM_BOOL T3_;
		NI T5_;
		NimStringV2 colontmpD_;
		NimStringV2 colontmpD__2;
		NimStringV2 colontmpD__3;
		NimStringV2 colontmpD__4;
		NimStringV2 T9_;
		tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ T10_;
		NI T11_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI)0) <= ((NI) (fid_p1)));
		if (!(T3_)) goto LA4_;
		T5_ = (NI)0;
		T5_ = len__packagesZdocutilsZrst_u857(filenames_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T3_ = (((NI) (fid_p1)) < T5_);
LA4_: ;
		if (!!(T3_)) goto LA6_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
		colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
		T9_.len = 0; T9_.p = NIM_NIL;
		colontmpD_ = dollar___systemZdollars_u9(((NI) (fid_p1)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		T10_[0] = colontmpD_;
		T11_ = (NI)0;
		T11_ = len__packagesZdocutilsZrst_u857(filenames_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		colontmpD__2 = dollar___systemZdollars_u9((NI)(T11_ - ((NI)1)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		T10_[1] = colontmpD__2;
		colontmpD__3 = nsuFormatOpenArray(TM__6mNpeIAN05DnDNzb9b3611A_123, T10_, 2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		T9_ = rawNewString(colontmpD__3.len + 60);
appendString((&T9_), TM__6mNpeIAN05DnDNzb9b3611A_121);
appendString((&T9_), colontmpD__3);
		colontmpD__4 = T9_;
		failedAssertImpl__stdZassertions_u79(colontmpD__4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		{
			LA8_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__4);
			eqdestroy___system_u2691(colontmpD__3);
			eqdestroy___system_u2691(colontmpD__2);
			eqdestroy___system_u2691(colontmpD_);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA6_: ;
	eqcopy___system_u2694((&result), (*filenames_p0).idxToFilename.p->data[((NI) (fid_p1))]);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, currFilename__packagesZdocutilsZrst_u2422)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = getFilename__packagesZdocutilsZrst_u2405((&(*s_p0).filenames), (*s_p0).currFileIdx);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, curLine__packagesZdocutilsZrst_u3775)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NI result;
	result = (NI)((*p_p0).line + (*p_p0).tok.p->data[(*p_p0).idx].line);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3820)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p1) {
	NimStringV2 colontmpD_;
	NI T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD_ = currFilename__packagesZdocutilsZrst_u2422((*p_p0).s);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T2_ = (NI)0;
	T2_ = curLine__packagesZdocutilsZrst_u3775(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*(*p_p0).s).msgHandler.ClE_0? (*(*p_p0).s).msgHandler.ClP_0(colontmpD_, T2_, (NI)((*p_p0).col + (*p_p0).tok.p->data[(*p_p0).idx].col), msgKind_p1, (*p_p0).tok.p->data[(*p_p0).idx].symbol, (*(*p_p0).s).msgHandler.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_124)((*(*p_p0).s).msgHandler.ClP_0))(colontmpD_, T2_, (NI)((*p_p0).col + (*p_p0).tok.p->data[(*p_p0).idx].col), msgKind_p1, (*p_p0).tok.p->data[(*p_p0).idx].symbol);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, tokenAfterNewline__packagesZdocutilsZrst_u11592)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI start_p1) {
	NI result;
	result = start_p1;
	{
		while (1) {
			switch ((*p_p0).tok.p->data[result].kind) {
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0):
			{
				goto LA1;
			}
			break;
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1):
			{
				result += ((NI)1);
				goto LA1;
			}
			break;
			default:
			{
				result += ((NI)1);
			}
			break;
			}
		}
	} LA1: ;
	return result;
}
static N_INLINE(NI, tokenAfterNewline__packagesZdocutilsZrst_u11606)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	result = tokenAfterNewline__packagesZdocutilsZrst_u11592(p_p0, (*p_p0).idx);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isLineBlock__packagesZdocutilsZrst_u12041)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	NI j_1;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
	NIM_BOOL T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	j_1 = tokenAfterNewline__packagesZdocutilsZrst_u11606(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T3_ = (NIM_BOOL)0;
	T3_ = ((*p_p0).tok.p->data[(*p_p0).idx].col == (*p_p0).tok.p->data[j_1].col);
	if (!(T3_)) goto LA4_;
	T3_ = eqStrings((*p_p0).tok.p->data[j_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_129);
LA4_: ;
	T2_ = T3_;
	if (T2_) goto LA5_;
	T2_ = ((*p_p0).tok.p->data[(*p_p0).idx].col < (*p_p0).tok.p->data[j_1].col);
LA5_: ;
	T1_ = T2_;
	if (T1_) goto LA6_;
	T1_ = eqStrings((*p_p0).tok.p->data[j_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_130);
LA6_: ;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMarkdownBlockQuote__packagesZdocutilsZrst_u12045)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	result = ((NU8)((*p_p0).tok.p->data[(*p_p0).idx].symbol.p->data[((NI)0)]) == (NU8)(62));
	return result;
}
static N_INLINE(NI, find__stdZenumutils_u56)(NimStringV2* a_p0, NI a_p0Len_0, NimStringV2 item_p1) {
	NI result;
{	result = ((NI)0);
	{
		NimStringV2* i_1;
		NI i_2;
		i_1 = (NimStringV2*)0;
		i_2 = ((NI)0);
		{
			while (1) {
				if (!(i_2 < a_p0Len_0)) goto LA3;
				i_1 = (&a_p0[i_2]);
				{
					if (!eqStrings((*i_1), item_p1)) goto LA6_;
					goto BeforeRet_;
				}
LA6_: ;
				result += ((NI)1);
				i_2 += ((NI)1);
			} LA3: ;
		}
	}
	result = ((NI)-1);
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, contains__stdZenumutils_u51)(NimStringV2* a_p0, NI a_p0Len_0, NimStringV2 item_p1) {
	NIM_BOOL result;
	NI T1_;
{	T1_ = (NI)0;
	T1_ = find__stdZenumutils_u56(a_p0, a_p0Len_0, item_p1);
	result = (((NI)0) <= T1_);
	goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3783)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p1, NimStringV2 arg_p2) {
	NimStringV2 colontmpD_;
	NI T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD_ = currFilename__packagesZdocutilsZrst_u2422((*p_p0).s);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T2_ = (NI)0;
	T2_ = curLine__packagesZdocutilsZrst_u3775(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*(*p_p0).s).msgHandler.ClE_0? (*(*p_p0).s).msgHandler.ClP_0(colontmpD_, T2_, (NI)((*p_p0).col + (*p_p0).tok.p->data[(*p_p0).idx].col), msgKind_p1, arg_p2, (*(*p_p0).s).msgHandler.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_137)((*(*p_p0).s).msgHandler.ClP_0))(colontmpD_, T2_, (NI)((*p_p0).col + (*p_p0).tok.p->data[(*p_p0).idx].col), msgKind_p1, arg_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isAdornmentHeadline__packagesZdocutilsZrst_u11950)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI adornmentIdx_p1) {
	NIM_BOOL result;
	NimStringV2 failure_1;
	NI headlineLen_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	failure_1.len = 0; failure_1.p = NIM_NIL;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = contains__stdZenumutils_u51(TM__6mNpeIAN05DnDNzb9b3611A_135, 3, (*p_p0).tok.p->data[adornmentIdx_p1].symbol);
		if (!T4_) goto LA5_;
		result = NIM_FALSE;
		eqdestroy___system_u2691(failure_1);
		goto BeforeRet_;
	}
LA5_: ;
	{
		NIM_BOOL T9_;
		T9_ = (NIM_BOOL)0;
		T9_ = isMarkdownCodeBlock__packagesZdocutilsZrst_u11419(p_p0, adornmentIdx_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T9_) goto LA10_;
		result = NIM_FALSE;
		eqdestroy___system_u2691(failure_1);
		goto BeforeRet_;
	}
LA10_: ;
	headlineLen_1 = ((NI)0);
	failure_1 = TM__6mNpeIAN05DnDNzb9b3611A_136;
	{
		NIM_BOOL T27_;
		if (!((*p_p0).idx < adornmentIdx_p1)) goto LA14_;
		{
			if (!(((NI)0) < (*p_p0).idx)) goto LA18_;
			headlineLen_1 = (NI)((*p_p0).tok.p->data[(*p_p0).idx].col - (*p_p0).tok.p->data[adornmentIdx_p1].col);
		}
LA18_: ;
		{
			if (!(((NI)0) < headlineLen_1)) goto LA22_;
			rstMessage__packagesZdocutilsZrst_u3783(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17), TM__6mNpeIAN05DnDNzb9b3611A_139);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA22_: ;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = (NI)(adornmentIdx_p1 - ((NI)1));
			i_2 = (*p_p0).idx;
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA26;
					i_1 = i_2;
					headlineLen_1 += (*p_p0).tok.p->data[i_1].symbol.len;
					i_2 += ((NI)1);
				} LA26: ;
			}
		}
		T27_ = (NIM_BOOL)0;
		T27_ = (headlineLen_1 <= (*p_p0).tok.p->data[adornmentIdx_p1].symbol.len);
		if (!(T27_)) goto LA28_;
		T27_ = !((headlineLen_1 == ((NI)0)));
LA28_: ;
		result = T27_;
		{
			NimStringV2 T33_;
			if (!!(result)) goto LA31_;
			T33_.len = 0; T33_.p = NIM_NIL;
			T33_ = rawNewString((*p_p0).tok.p->data[adornmentIdx_p1].symbol.len + 27);
appendString((&T33_), TM__6mNpeIAN05DnDNzb9b3611A_141);
appendString((&T33_), (*p_p0).tok.p->data[adornmentIdx_p1].symbol);
appendString((&T33_), TM__6mNpeIAN05DnDNzb9b3611A_143);
			eqsink___system_u2700((&failure_1), T33_);
		}
LA31_: ;
	}
	goto LA12_;
LA14_: ;
	{
		NI i_3;
		i_3 = (NI)((*p_p0).idx + ((NI)2));
		headlineLen_1 = (NI)((*p_p0).tok.p->data[i_3].col - (*p_p0).tok.p->data[adornmentIdx_p1].col);
		{
			while (1) {
				if (!!(((*p_p0).tok.p->data[i_3].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0) || (*p_p0).tok.p->data[i_3].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1)))) goto LA36;
				headlineLen_1 += (*p_p0).tok.p->data[i_3].symbol.len;
				i_3 += ((NI)1);
			} LA36: ;
		}
		{
			NIM_BOOL T39_;
			NIM_BOOL T40_;
			NIM_BOOL T45_;
			T39_ = (NIM_BOOL)0;
			T40_ = (NIM_BOOL)0;
			T40_ = ((*p_p0).tok.p->data[i_3].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
			if (!(T40_)) goto LA41_;
			T40_ = ((*p_p0).tok.p->data[(NI)(i_3 + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4));
LA41_: ;
			T39_ = T40_;
			if (!(T39_)) goto LA42_;
			T39_ = ((NU8)((*p_p0).tok.p->data[(NI)(i_3 + ((NI)1))].symbol.p->data[((NI)0)]) == (NU8)((*p_p0).tok.p->data[adornmentIdx_p1].symbol.p->data[((NI)0)]));
LA42_: ;
			if (!T39_) goto LA43_;
			T45_ = (NIM_BOOL)0;
			T45_ = (headlineLen_1 <= (*p_p0).tok.p->data[adornmentIdx_p1].symbol.len);
			if (!(T45_)) goto LA46_;
			T45_ = !((headlineLen_1 == ((NI)0)));
LA46_: ;
			result = T45_;
			{
				if (!result) goto LA49_;
				result = eqStrings((*p_p0).tok.p->data[(NI)(i_3 + ((NI)1))].symbol, (*p_p0).tok.p->data[adornmentIdx_p1].symbol);
				{
					NimStringV2 T55_;
					if (!!(result)) goto LA53_;
					T55_.len = 0; T55_.p = NIM_NIL;
					T55_ = rawNewString((*p_p0).tok.p->data[(NI)(i_3 + ((NI)1))].symbol.len + (*p_p0).tok.p->data[adornmentIdx_p1].symbol.len + 41);
appendString((&T55_), TM__6mNpeIAN05DnDNzb9b3611A_144);
appendString((&T55_), (*p_p0).tok.p->data[(NI)(i_3 + ((NI)1))].symbol);
appendString((&T55_), TM__6mNpeIAN05DnDNzb9b3611A_146);
appendString((&T55_), (*p_p0).tok.p->data[adornmentIdx_p1].symbol);
appendString((&T55_), TM__6mNpeIAN05DnDNzb9b3611A_148);
					eqsink___system_u2700((&failure_1), T55_);
				}
LA53_: ;
			}
			goto LA47_;
LA49_: ;
			{
				NimStringV2 T57_;
				T57_.len = 0; T57_.p = NIM_NIL;
				T57_ = rawNewString((*p_p0).tok.p->data[adornmentIdx_p1].symbol.len + 26);
appendString((&T57_), TM__6mNpeIAN05DnDNzb9b3611A_150);
appendString((&T57_), (*p_p0).tok.p->data[adornmentIdx_p1].symbol);
appendString((&T57_), TM__6mNpeIAN05DnDNzb9b3611A_151);
				eqsink___system_u2700((&failure_1), T57_);
			}
LA47_: ;
		}
		goto LA37_;
LA43_: ;
		{
			result = NIM_FALSE;
			eqdestroy___system_u2691(failure_1);
			goto BeforeRet_;
		}
LA37_: ;
	}
LA12_: ;
	{
		if (!!(result)) goto LA61_;
		rstMessage__packagesZdocutilsZrst_u3783(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)6), failure_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA61_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(failure_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMarkdownHeadlinePattern__packagesZdocutilsZrst_u12165)(NimStringV2 s_p0) {
	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI)1) <= s_p0.len);
		if (!(T3_)) goto LA4_;
		T3_ = (s_p0.len <= ((NI)6));
LA4_: ;
		if (!T3_) goto LA5_;
		{
			NIM_CHAR c_1;
			NI i_1;
			NI L_1;
			c_1 = (NIM_CHAR)0;
			i_1 = ((NI)0);
			L_1 = s_p0.len;
			{
				while (1) {
					if (!(i_1 < L_1)) goto LA9;
					c_1 = s_p0.p->data[i_1];
					{
						if (!!(((NU8)(c_1) == (NU8)(35)))) goto LA12_;
						result = NIM_FALSE;
						goto BeforeRet_;
					}
LA12_: ;
					i_1 += ((NI)1);
				} LA9: ;
			}
		}
		result = NIM_TRUE;
	}
LA5_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMarkdownHeadline__packagesZdocutilsZrst_u12169)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	{
		if (!(((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)2)))&7U)))!=0)) goto LA3_;
		{
			NIM_BOOL T7_;
			T7_ = (NIM_BOOL)0;
			T7_ = isMarkdownHeadlinePattern__packagesZdocutilsZrst_u12165((*p_p0).tok.p->data[(*p_p0).idx].symbol);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T7_)) goto LA8_;
			T7_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2));
LA8_: ;
			if (!T7_) goto LA9_;
			{
				if (!((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)2))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)2))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)2))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5))) goto LA13_;
				result = NIM_TRUE;
			}
LA13_: ;
		}
LA9_: ;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, predNL__packagesZdocutilsZrst_u12093)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_TRUE;
	{
		NIM_BOOL T5_;
		NI T7_;
		if (!(((NI)0) < (*p_p0).idx)) goto LA3_;
		T5_ = (NIM_BOOL)0;
		T5_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
		if (!(T5_)) goto LA6_;
		T7_ = (NI)0;
		T7_ = currInd__packagesZdocutilsZrst_u3883(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T5_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].ival == T7_);
LA6_: ;
		result = T5_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, findPipe__packagesZdocutilsZrst_u12184)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI start_p1) {
	NIM_BOOL result;
	NI i_1;
{	result = (NIM_BOOL)0;
	i_1 = start_p1;
	{
		while (1) {
			{
				if (!eqStrings((*p_p0).tok.p->data[i_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_154)) goto LA5_;
				result = NIM_TRUE;
				goto BeforeRet_;
			}
LA5_: ;
			{
				if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0))) goto LA9_;
				result = NIM_FALSE;
				goto BeforeRet_;
			}
LA9_: ;
			i_1 += ((NI)1);
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMd__packagesZdocutilsZrst_u3838)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	result = (((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)3)))&7U)))!=0);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMdFootnoteName__packagesZdocutilsZrst_u11392)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL reference_p1) {
	NIM_BOOL result;
	NI j_1;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
	j_1 = (*p_p0).idx;
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T2_ = eqStrings((*p_p0).tok.p->data[j_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_156);
	if (!(T2_)) goto LA3_;
	T2_ = eqStrings((*p_p0).tok.p->data[(NI)(j_1 + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_158);
LA3_: ;
	T1_ = T2_;
	if (!(T1_)) goto LA4_;
	T1_ = ((*p_p0).tok.p->data[(NI)(j_1 + ((NI)2))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3));
LA4_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isOptionList__packagesZdocutilsZrst_u12162)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
	NIM_BOOL T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T3_ = (NIM_BOOL)0;
	T3_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_175);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	if (T3_) goto LA4_;
	T3_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_177);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA4_: ;
	T2_ = T3_;
	if (T2_) goto LA5_;
	T2_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_179);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA5_: ;
	T1_ = T2_;
	if (T1_) goto LA6_;
	T1_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_181);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA6_: ;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefList__packagesZdocutilsZrst_u12100)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	NI j_1;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	j_1 = tokenAfterNewline__packagesZdocutilsZrst_u11606(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T2_ = ((*p_p0).tok.p->data[(*p_p0).idx].col < (*p_p0).tok.p->data[j_1].col);
	if (!(T2_)) goto LA3_;
	T2_ = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3) || (*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6) || (*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5));
LA3_: ;
	T1_ = T2_;
	if (!(T1_)) goto LA4_;
	T1_ = !(eqStrings((*p_p0).tok.p->data[(NI)(j_1 - ((NI)2))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_182));
LA4_: ;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, skipNewlines__packagesZdocutilsZrst_u12118)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI j_p1) {
	NI result;
	result = j_p1;
	{
		while (1) {
			NIM_BOOL T3_;
			T3_ = (NIM_BOOL)0;
			T3_ = !(((*p_p0).tok.p->data[result].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)));
			if (!(T3_)) goto LA4_;
			T3_ = ((*p_p0).tok.p->data[result].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA4_: ;
			if (!T3_) goto LA2;
			result += ((NI)1);
		} LA2: ;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMdRelInd__packagesZdocutilsZrst_u12138)(NI outerInd_p0, NI nestedInd_p1) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	T1_ = (NIM_BOOL)0;
	T1_ = (outerInd_p0 <= nestedInd_p1);
	if (!(T1_)) goto LA2_;
	T1_ = (nestedInd_p1 <= (NI)(outerInd_p0 + ((NI)3)));
LA2_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMdDefBody__packagesZdocutilsZrst_u12142)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI j_p1, NI termCol_p2) {
	NIM_BOOL result;
	NI defCol_1;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
	NIM_BOOL T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	defCol_1 = (*p_p0).tok.p->data[j_p1].col;
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T3_ = (NIM_BOOL)0;
	T3_ = eqStrings((*p_p0).tok.p->data[j_p1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_184);
	if (!(T3_)) goto LA4_;
	T3_ = isMdRelInd__packagesZdocutilsZrst_u12138(termCol_p2, defCol_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA4_: ;
	T2_ = T3_;
	if (!(T2_)) goto LA5_;
	T2_ = ((*p_p0).tok.p->data[(NI)(j_p1 + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2));
LA5_: ;
	T1_ = T2_;
	if (!(T1_)) goto LA6_;
	T1_ = ((*p_p0).tok.p->data[(NI)(j_p1 + ((NI)2))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3) || (*p_p0).tok.p->data[(NI)(j_p1 + ((NI)2))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6) || (*p_p0).tok.p->data[(NI)(j_p1 + ((NI)2))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5));
LA6_: ;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMdDefListItem__packagesZdocutilsZrst_u12156)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI idx_p1) {
	NIM_BOOL result;
	NI j_1;
	NI termCol_1;
	NIM_BOOL T1_;
	NI T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	j_1 = tokenAfterNewline__packagesZdocutilsZrst_u11592(p_p0, idx_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	j_1 = skipNewlines__packagesZdocutilsZrst_u12118(p_p0, j_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	termCol_1 = (*p_p0).tok.p->data[j_1].col;
	T1_ = (NIM_BOOL)0;
	T2_ = (NI)0;
	T2_ = currInd__packagesZdocutilsZrst_u3883(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = isMdRelInd__packagesZdocutilsZrst_u12138(T2_, termCol_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	if (!(T1_)) goto LA3_;
	T1_ = isMdDefBody__packagesZdocutilsZrst_u12142(p_p0, j_1, termCol_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA3_: ;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w, whichSection__packagesZdocutilsZrst_u12198)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
	{
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5))) goto LA3_;
		{
			NIM_BOOL T7_;
			T7_ = (NIM_BOOL)0;
			T7_ = isMarkdownCodeBlock__packagesZdocutilsZrst_u11437(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T7_) goto LA8_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)55);
			goto BeforeRet_;
		}
		goto LA5_;
LA8_: ;
		{
			NIM_BOOL T11_;
			T11_ = (NIM_BOOL)0;
			T11_ = isRst__packagesZdocutilsZrst_u3831(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T11_)) goto LA12_;
			T11_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_110);
LA12_: ;
			if (!T11_) goto LA13_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)26);
			goto BeforeRet_;
		}
		goto LA5_;
LA13_: ;
		{
			NIM_BOOL T16_;
			T16_ = (NIM_BOOL)0;
			T16_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_112);
			if (!(T16_)) goto LA17_;
			T16_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA17_: ;
			if (!T16_) goto LA18_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)48);
			goto BeforeRet_;
		}
		goto LA5_;
LA18_: ;
LA5_: ;
	}
LA3_: ;
	switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
	case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4):
	{
		{
			NIM_BOOL T23_;
			T23_ = (NIM_BOOL)0;
			T23_ = match__packagesZdocutilsZrst_u10249(p_p0, (NI)((*p_p0).idx + ((NI)1)), TM__6mNpeIAN05DnDNzb9b3611A_117);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T23_)) goto LA24_;
			T23_ = (((NI)4) <= (*p_p0).tok.p->data[(*p_p0).idx].symbol.len);
LA24_: ;
			if (!T23_) goto LA25_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)4);
		}
		goto LA21_;
LA25_: ;
		{
			NIM_BOOL T28_;
			T28_ = (NIM_BOOL)0;
			T28_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_119);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T28_) goto LA29_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)33);
			rstMessage__packagesZdocutilsZrst_u3820(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)3));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA21_;
LA29_: ;
		{
			NIM_BOOL T32_;
			T32_ = (NIM_BOOL)0;
			T32_ = match__packagesZdocutilsZrst_u10249(p_p0, (NI)((*p_p0).idx + ((NI)1)), TM__6mNpeIAN05DnDNzb9b3611A_126);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T32_) goto LA33_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)32);
		}
		goto LA21_;
LA33_: ;
		{
			NIM_BOOL T36_;
			T36_ = (NIM_BOOL)0;
			T36_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_128);
			if (!(T36_)) goto LA37_;
			T36_ = isLineBlock__packagesZdocutilsZrst_u12041(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA37_: ;
			if (!T36_) goto LA38_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)29);
		}
		goto LA21_;
LA38_: ;
		{
			NIM_BOOL T41_;
			T41_ = (NIM_BOOL)0;
			T41_ = (((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)2)))&7U)))!=0);
			if (!(T41_)) goto LA42_;
			T41_ = isMarkdownBlockQuote__packagesZdocutilsZrst_u12045(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA42_: ;
			if (!T41_) goto LA43_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)27);
		}
		goto LA21_;
LA43_: ;
		{
			NIM_BOOL T46_;
			NIM_BOOL T47_;
			NIM_BOOL T49_;
			T46_ = (NIM_BOOL)0;
			T47_ = (NIM_BOOL)0;
			T47_ = match__packagesZdocutilsZrst_u10249(p_p0, (NI)((*p_p0).idx + ((NI)1)), TM__6mNpeIAN05DnDNzb9b3611A_132);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T47_)) goto LA48_;
			T49_ = (NIM_BOOL)0;
			T49_ = match__packagesZdocutilsZrst_u10249(p_p0, (NI)((*p_p0).idx + ((NI)2)), TM__6mNpeIAN05DnDNzb9b3611A_134);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			T47_ = !(T49_);
LA48_: ;
			T46_ = T47_;
			if (!(T46_)) goto LA50_;
			T46_ = isAdornmentHeadline__packagesZdocutilsZrst_u11950(p_p0, (*p_p0).idx);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA50_: ;
			if (!T46_) goto LA51_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)2);
		}
		goto LA21_;
LA51_: ;
		{
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)5);
		}
LA21_: ;
	}
	break;
	case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5):
	{
		{
			NIM_BOOL T57_;
			T57_ = (NIM_BOOL)0;
			T57_ = isMarkdownHeadline__packagesZdocutilsZrst_u12169(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T57_) goto LA58_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)3);
		}
		goto LA55_;
LA58_: ;
		{
			NIM_BOOL T61_;
			NIM_BOOL T62_;
			NIM_BOOL T63_;
			T61_ = (NIM_BOOL)0;
			T62_ = (NIM_BOOL)0;
			T63_ = (NIM_BOOL)0;
			T63_ = (((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)2)))&7U)))!=0);
			if (!(T63_)) goto LA64_;
			T63_ = predNL__packagesZdocutilsZrst_u12093(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA64_: ;
			T62_ = T63_;
			if (!(T62_)) goto LA65_;
			T62_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_153);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA65_: ;
			T61_ = T62_;
			if (!(T61_)) goto LA66_;
			T61_ = findPipe__packagesZdocutilsZrst_u12184(p_p0, (NI)((*p_p0).idx + ((NI)3)));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA66_: ;
			if (!T61_) goto LA67_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)34);
		}
		goto LA55_;
LA67_: ;
		{
			NIM_BOOL T70_;
			T70_ = (NIM_BOOL)0;
			T70_ = isMd__packagesZdocutilsZrst_u3838(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T70_)) goto LA71_;
			T70_ = isMdFootnoteName__packagesZdocutilsZrst_u11392(p_p0, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA71_: ;
			if (!T70_) goto LA72_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)38);
		}
		goto LA55_;
LA72_: ;
		{
			NIM_BOOL T75_;
			T75_ = (NIM_BOOL)0;
			T75_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_159);
			if (!(T75_)) goto LA76_;
			T75_ = isLineBlock__packagesZdocutilsZrst_u12041(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA76_: ;
			if (!T75_) goto LA77_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)29);
		}
		goto LA55_;
LA77_: ;
		{
			NIM_BOOL T80_;
			T80_ = (NIM_BOOL)0;
			T80_ = (((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)2)))&7U)))!=0);
			if (!(T80_)) goto LA81_;
			T80_ = isMarkdownBlockQuote__packagesZdocutilsZrst_u12045(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA81_: ;
			if (!T80_) goto LA82_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)27);
		}
		goto LA55_;
LA82_: ;
		{
			NIM_BOOL T85_;
			NI T86_;
			NI T88_;
			T85_ = (NIM_BOOL)0;
			T86_ = (NI)0;
			T86_ = tokenAfterNewline__packagesZdocutilsZrst_u11606(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			T85_ = match__packagesZdocutilsZrst_u10249(p_p0, T86_, TM__6mNpeIAN05DnDNzb9b3611A_161);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T85_)) goto LA87_;
			T88_ = (NI)0;
			T88_ = tokenAfterNewline__packagesZdocutilsZrst_u11606(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			T85_ = isAdornmentHeadline__packagesZdocutilsZrst_u11950(p_p0, T88_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA87_: ;
			if (!T85_) goto LA89_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)1);
		}
		goto LA55_;
LA89_: ;
		{
			NIM_BOOL T92_;
			T92_ = (NIM_BOOL)0;
			T92_ = contains__stdZenumutils_u51(TM__6mNpeIAN05DnDNzb9b3611A_162, 3, (*p_p0).tok.p->data[(*p_p0).idx].symbol);
			if (!(T92_)) goto LA93_;
			T92_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2));
LA93_: ;
			if (!T92_) goto LA94_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)6);
		}
		goto LA55_;
LA94_: ;
		{
			NIM_BOOL T97_;
			T97_ = (NIM_BOOL)0;
			T97_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_167);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T97_) goto LA98_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)15);
		}
		goto LA55_;
LA98_: ;
		{
			NIM_BOOL T101_;
			NIM_BOOL T102_;
			T101_ = (NIM_BOOL)0;
			T102_ = (NIM_BOOL)0;
			T102_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_169);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (T102_) goto LA103_;
			T102_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_171);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA103_: ;
			T101_ = T102_;
			if (T101_) goto LA104_;
			T101_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_173);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA104_: ;
			if (!T101_) goto LA105_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)8);
		}
		goto LA55_;
LA105_: ;
		{
			NIM_BOOL T108_;
			T108_ = (NIM_BOOL)0;
			T108_ = isOptionList__packagesZdocutilsZrst_u12162(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T108_) goto LA109_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)19);
		}
		goto LA55_;
LA109_: ;
		{
			NIM_BOOL T112_;
			T112_ = (NIM_BOOL)0;
			T112_ = isRst__packagesZdocutilsZrst_u3831(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T112_)) goto LA113_;
			T112_ = isDefList__packagesZdocutilsZrst_u12100(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA113_: ;
			if (!T112_) goto LA114_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)10);
		}
		goto LA55_;
LA114_: ;
		{
			NIM_BOOL T117_;
			T117_ = (NIM_BOOL)0;
			T117_ = isMd__packagesZdocutilsZrst_u3838(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T117_)) goto LA118_;
			T117_ = isMdDefListItem__packagesZdocutilsZrst_u12156(p_p0, (*p_p0).idx);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA118_: ;
			if (!T117_) goto LA119_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)11);
		}
		goto LA55_;
LA119_: ;
		{
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)5);
		}
LA55_: ;
	}
	break;
	case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3):
	case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6):
	case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2):
	{
		NI tokIdx_1;
		tokIdx_1 = tokenAfterNewline__packagesZdocutilsZrst_u11606(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NIM_BOOL T125_;
			T125_ = (NIM_BOOL)0;
			T125_ = match__packagesZdocutilsZrst_u10249(p_p0, tokIdx_1, TM__6mNpeIAN05DnDNzb9b3611A_185);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T125_) goto LA126_;
			{
				NIM_BOOL T130_;
				T130_ = (NIM_BOOL)0;
				T130_ = isAdornmentHeadline__packagesZdocutilsZrst_u11950(p_p0, tokIdx_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				if (!T130_) goto LA131_;
				result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)1);
			}
			goto LA128_;
LA131_: ;
			{
				result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)5);
			}
LA128_: ;
		}
		goto LA123_;
LA126_: ;
		{
			NIM_BOOL T135_;
			T135_ = (NIM_BOOL)0;
			T135_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_186);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (T135_) goto LA136_;
			T135_ = match__packagesZdocutilsZrst_u10249(p_p0, (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_187);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA136_: ;
			if (!T135_) goto LA137_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)8);
		}
		goto LA123_;
LA137_: ;
		{
			NIM_BOOL T140_;
			T140_ = (NIM_BOOL)0;
			T140_ = isRst__packagesZdocutilsZrst_u3831(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T140_)) goto LA141_;
			T140_ = isDefList__packagesZdocutilsZrst_u12100(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA141_: ;
			if (!T140_) goto LA142_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)10);
		}
		goto LA123_;
LA142_: ;
		{
			NIM_BOOL T145_;
			T145_ = (NIM_BOOL)0;
			T145_ = isMd__packagesZdocutilsZrst_u3838(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T145_)) goto LA146_;
			T145_ = isMdDefListItem__packagesZdocutilsZrst_u12156(p_p0, (*p_p0).idx);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA146_: ;
			if (!T145_) goto LA147_;
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)11);
		}
		goto LA123_;
LA147_: ;
		{
			result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)5);
		}
LA123_: ;
	}
	break;
	default:
	{
		result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)77);
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseBulletList__packagesZdocutilsZrst_u13521)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL oldNimErrFin9_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	{
		NimStringV2 bullet_1;
		NI col_1;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T6_;
		if (!((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA3_;
		bullet_1.len = 0; bullet_1.p = NIM_NIL;
		eqcopy___system_u2694((&bullet_1), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
		col_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
		T6_ = NIM_NIL;
		T6_ = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)6));
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T6_); goto LA5_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T6_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		pushInd__packagesZdocutilsZrst_u3889(p_p0, (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)2))].col);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		(*p_p0).idx += ((NI)2);
		{
			while (1) {
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* item_1;
				tySequence__LqZapiAqCFeXPQZdoIAUew T10_;
				item_1 = NIM_NIL;
				T10_.len = 0; T10_.p = NIM_NIL;
				T10_.len = 0; T10_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				item_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)7), T10_, TM__6mNpeIAN05DnDNzb9b3611A_188);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				parseSection__packagesZdocutilsZrst_u11589(p_p0, item_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				add__packagesZdocutilsZrstast_u463(result, item_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				{
					NIM_BOOL T13_;
					NIM_BOOL T14_;
					NIM_BOOL T15_;
					T13_ = (NIM_BOOL)0;
					T14_ = (NIM_BOOL)0;
					T15_ = (NIM_BOOL)0;
					T15_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
					if (!(T15_)) goto LA16_;
					T15_ = ((*p_p0).tok.p->data[(*p_p0).idx].ival == col_1);
LA16_: ;
					T14_ = T15_;
					if (!(T14_)) goto LA17_;
					T14_ = eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, bullet_1);
LA17_: ;
					T13_ = T14_;
					if (!(T13_)) goto LA18_;
					T13_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)2))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2));
LA18_: ;
					if (!T13_) goto LA19_;
					(*p_p0).idx += ((NI)3);
				}
				goto LA11_;
LA19_: ;
				{
					eqdestroy___packagesZdocutilsZrstast_u285(item_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
					goto LA7;
				}
LA11_: ;
				{
					LA9_:;
				}
				{
					oldNimErrFin9_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(item_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
					*nimErr_ = oldNimErrFin9_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
			}
		} LA7: ;
		popInd__packagesZdocutilsZrst_u3896(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		{
			LA5_:;
		}
		{
			eqdestroy___system_u2691(bullet_1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseLineBlock__packagesZdocutilsZrst_u12280)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL oldNimErrFin8_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	{
		NI col_1;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T5_;
		if (!((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA3_;
		col_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
		T5_ = NIM_NIL;
		T5_ = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)29));
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T5_); goto BeforeRet_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T5_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			while (1) {
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* item_1;
				tySequence__LqZapiAqCFeXPQZdoIAUew T9_;
				item_1 = NIM_NIL;
				T9_.len = 0; T9_.p = NIM_NIL;
				T9_.len = 0; T9_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				item_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)30), T9_, TM__6mNpeIAN05DnDNzb9b3611A_189);
				if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
				{
					if (!((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA12_;
					{
						if (!(((NI)1) < (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol.len)) goto LA16_;
						eqcopy___system_u2694((&(*item_1)._kind_3.lineIndent), (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol);
					}
LA16_: ;
					(*p_p0).idx += ((NI)2);
					pushInd__packagesZdocutilsZrst_u3889(p_p0, (*p_p0).tok.p->data[(*p_p0).idx].col);
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					parseSection__packagesZdocutilsZrst_u11589(p_p0, item_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					popInd__packagesZdocutilsZrst_u3896(p_p0);
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
				}
				goto LA10_;
LA12_: ;
				{
					eqsink___system_u2700((&(*item_1)._kind_3.lineIndent), TM__6mNpeIAN05DnDNzb9b3611A_190);
					(*p_p0).idx += ((NI)1);
				}
LA10_: ;
				add__packagesZdocutilsZrstast_u463(result, item_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
				{
					NIM_BOOL T21_;
					NIM_BOOL T22_;
					NIM_BOOL T23_;
					T21_ = (NIM_BOOL)0;
					T22_ = (NIM_BOOL)0;
					T23_ = (NIM_BOOL)0;
					T23_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
					if (!(T23_)) goto LA24_;
					T23_ = ((*p_p0).tok.p->data[(*p_p0).idx].ival == col_1);
LA24_: ;
					T22_ = T23_;
					if (!(T22_)) goto LA25_;
					T22_ = eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_191);
LA25_: ;
					T21_ = T22_;
					if (!(T21_)) goto LA26_;
					T21_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)2))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)2))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA26_: ;
					if (!T21_) goto LA27_;
					(*p_p0).idx += ((NI)1);
				}
				goto LA19_;
LA27_: ;
				{
					eqdestroy___packagesZdocutilsZrstast_u285(item_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto LA6;
				}
LA19_: ;
				{
					LA8_:;
				}
				{
					oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(item_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin8_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
		} LA6: ;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, getQuoteSymbol__packagesZdocutilsZrst_u12318)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI idx_p1, tyTuple__kN8up2W6YKc5YA9avn5mV5w* Result) {
	NimStringV2 colontmp_;
	NI colontmp__2;
	NI colontmp__3;
	NimStringV2 blitTmp_1;
	NI i_1;
	colontmp_.len = 0; colontmp_.p = NIM_NIL;
	colontmp_ = TM__6mNpeIAN05DnDNzb9b3611A_192;
	colontmp__2 = ((NI)0);
	colontmp__3 = ((NI)0);
	blitTmp_1 = colontmp_;
	(*Result).Field0 = blitTmp_1;
	(*Result).Field1 = colontmp__2;
	(*Result).Field2 = colontmp__3;
	i_1 = idx_p1;
	prepareAdd((&(*Result).Field0), (*p_p0).tok.p->data[i_1].symbol.len + 0);
appendString((&(*Result).Field0), (*p_p0).tok.p->data[i_1].symbol);
	(*Result).Field1 += (*p_p0).tok.p->data[i_1].symbol.len;
	(*Result).Field2 += ((NI)1);
	i_1 += ((NI)1);
	{
		while (1) {
			NIM_BOOL T3_;
			NIM_BOOL T4_;
			NIM_BOOL T5_;
			NI T7_;
			T3_ = (NIM_BOOL)0;
			T4_ = (NIM_BOOL)0;
			T5_ = (NIM_BOOL)0;
			T5_ = ((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2));
			if (!(T5_)) goto LA6_;
			T7_ = (*p_p0).tok.len;
			T5_ = ((NI)(i_1 + ((NI)1)) < T7_);
LA6_: ;
			T4_ = T5_;
			if (!(T4_)) goto LA8_;
			T4_ = ((*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5));
LA8_: ;
			T3_ = T4_;
			if (!(T3_)) goto LA9_;
			T3_ = ((NU8)((*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].symbol.p->data[((NI)0)]) == (NU8)(62));
LA9_: ;
			if (!T3_) goto LA2;
			prepareAdd((&(*Result).Field0), (*p_p0).tok.p->data[i_1].symbol.len + 0);
appendString((&(*Result).Field0), (*p_p0).tok.p->data[i_1].symbol);
			prepareAdd((&(*Result).Field0), (*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].symbol.len + 0);
appendString((&(*Result).Field0), (*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].symbol);
			(*Result).Field1 += (*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].symbol.len;
			(*Result).Field2 += ((NI)2);
			i_1 += ((NI)2);
		} LA2: ;
	}
}
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZrst_u345)(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* src_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* Result) {
	nimZeroMem((void*)Result, sizeof(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg));
	(*Result).kind = (*src_p0).kind;
	(*Result).ival = (*src_p0).ival;
	(*Result).symbol = eqdup___system_u2697((*src_p0).symbol);
	(*Result).line = (*src_p0).line;
	(*Result).col = (*src_p0).col;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMarkdownQuoteSegment__packagesZdocutilsZrst_u12365)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 curSym_p1, NI col_p2) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg q_1;
	NI minCol_1;
	tySequence__qwqHTkRvwhrRyENtudHQ7g T52_;
	NI j_2;
	NI T53_;
	tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg T56_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	nimZeroMem((void*)(&q_1), sizeof(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg));
	q_1.Sup.m_type = (&NTIv2__ZlacgQ8A2qzdbC1x2g4Gkg_);
	initParser__packagesZdocutilsZrst_u3908((&q_1), (*p_p0).s);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	q_1.col = (*p_p0).col;
	q_1.line = (*p_p0).line;
	minCol_1 = ((NI)IL64(9223372036854775807));
	{
		while (1) {
			switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0):
			{
				goto LA2;
			}
			break;
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1):
			{
				{
					if (!((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0))) goto LA8_;
					goto LA2;
				}
				goto LA6_;
LA8_: ;
				{
					{
						tyTuple__kN8up2W6YKc5YA9avn5mV5w tmpTuple_1;
						NimStringV2 quoteSym_1;
						NI quoteTokens_1;
						if (!((NU8)((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol.p->data[((NI)0)]) == (NU8)(62))) goto LA13_;
						nimZeroMem((void*)(&tmpTuple_1), sizeof(tyTuple__kN8up2W6YKc5YA9avn5mV5w));
						quoteSym_1.len = 0; quoteSym_1.p = NIM_NIL;
						getQuoteSymbol__packagesZdocutilsZrst_u12318((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)), (&tmpTuple_1));
						if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
						quoteSym_1 = tmpTuple_1.Field0;
						eqwasMoved___system_u2688((&tmpTuple_1.Field0));
						quoteTokens_1 = tmpTuple_1.Field2;
						{
							tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg colontmpD_;
							NI iTok_1;
							NI ival_1;
							NI j_1;
							NI T35_;
							if (!eqStrings(quoteSym_1, curSym_p1)) goto LA18_;
							iTok_1 = tokenAfterNewline__packagesZdocutilsZrst_u11592((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)));
							if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
							{
								NIM_BOOL T22_;
								NimStringV2 colontmpD__2;
								NimStringV2 colontmpD__3;
								NimStringV2 T27_;
								NI T28_;
								T22_ = (NIM_BOOL)0;
								T22_ = !(((*p_p0).tok.p->data[iTok_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0) || (*p_p0).tok.p->data[iTok_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1)));
								if (!(T22_)) goto LA23_;
								T22_ = !(((NU8)((*p_p0).tok.p->data[iTok_1].symbol.p->data[((NI)0)]) == (NU8)(62)));
LA23_: ;
								if (!T22_) goto LA24_;
								colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
								colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
								T27_.len = 0; T27_.p = NIM_NIL;
								T28_ = (NI)0;
								T28_ = curLine__packagesZdocutilsZrst_u3775((&(*p_p0)));
								if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
								colontmpD__2 = dollar___systemZdollars_u9((NI)(T28_ + ((NI)1)));
								if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
								T27_ = rawNewString(colontmpD__2.len + 55);
appendString((&T27_), TM__6mNpeIAN05DnDNzb9b3611A_195);
appendString((&T27_), colontmpD__2);
								colontmpD__3 = T27_;
								rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17), colontmpD__3);
								if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
								eqdestroy___system_u2691(colontmpD__3);
								eqdestroy___system_u2691(colontmpD__2);
								eqdestroy___system_u2691(quoteSym_1);
								eqdestroy___msgs_u1579((&tmpTuple_1));
								goto LA2;
								{
									LA26_:;
								}
								{
									eqdestroy___system_u2691(colontmpD__3);
									eqdestroy___system_u2691(colontmpD__2);
								}
								if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
							}
LA24_: ;
							eqdup___packagesZdocutilsZrst_u345((&(*p_p0).tok.p->data[(*p_p0).idx]), (&colontmpD_));
							add__packagesZdocutilsZrst_u12388((&q_1.tok), (&colontmpD_));
							ival_1 = (NI)((*p_p0).tok.p->data[(*p_p0).idx].ival + quoteSym_1.len);
							(*p_p0).idx += (NI)(((NI)1) + quoteTokens_1);
							{
								if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA33_;
								ival_1 += (*p_p0).tok.p->data[(*p_p0).idx].symbol.len;
								(*p_p0).idx += ((NI)1);
							}
LA33_: ;
							T35_ = q_1.tok.len;
							j_1 = (NI)(T35_ - ((NI)1));
							{
								while (1) {
									NIM_BOOL T38_;
									T38_ = (NIM_BOOL)0;
									T38_ = (((NI)0) <= j_1);
									if (!(T38_)) goto LA39_;
									T38_ = (q_1.tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA39_: ;
									if (!T38_) goto LA37;
									q_1.tok.p->data[j_1].ival = ival_1;
									j_1 -= ((NI)1);
								} LA37: ;
							}
						}
						goto LA16_;
LA18_: ;
						{
							eqdestroy___system_u2691(quoteSym_1);
							eqdestroy___msgs_u1579((&tmpTuple_1));
							goto LA2;
						}
LA16_: ;
						{
							LA15_:;
						}
						{
							eqdestroy___system_u2691(quoteSym_1);
							eqdestroy___msgs_u1579((&tmpTuple_1));
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					}
					goto LA11_;
LA13_: ;
					{
						if (!((*p_p0).tok.p->data[(*p_p0).idx].ival < col_p2)) goto LA44_;
						goto LA2;
					}
					goto LA11_;
LA44_: ;
					{
						tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg colontmpD__4;
						eqdup___packagesZdocutilsZrst_u345((&(*p_p0).tok.p->data[(*p_p0).idx]), (&colontmpD__4));
						add__packagesZdocutilsZrst_u12388((&q_1.tok), (&colontmpD__4));
						(*p_p0).idx += ((NI)1);
					}
LA11_: ;
				}
LA6_: ;
			}
			break;
			default:
			{
				tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg colontmpD__5;
				{
					if (!((*p_p0).tok.p->data[(*p_p0).idx].col < minCol_1)) goto LA50_;
					minCol_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
				}
LA50_: ;
				eqdup___packagesZdocutilsZrst_u345((&(*p_p0).tok.p->data[(*p_p0).idx]), (&colontmpD__5));
				add__packagesZdocutilsZrst_u12388((&q_1.tok), (&colontmpD__5));
				(*p_p0).idx += ((NI)1);
			}
			break;
			}
		}
	} LA2: ;
	T52_.len = 0; T52_.p = NIM_NIL;
	T52_.len = 1; T52_.p = (tySequence__qwqHTkRvwhrRyENtudHQ7g_Content*) newSeqPayload(1, sizeof(NI), NIM_ALIGNOF(NI));
	T52_.p->data[0] = minCol_1;
	eqsink___pureZosproc_u483((&q_1.indentStack), T52_);
	T53_ = q_1.tok.len;
	j_2 = (NI)(T53_ - ((NI)1));
	{
		while (1) {
			if (!(q_1.tok.p->data[j_2].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA55;
			j_2 -= ((NI)1);
		} LA55: ;
	}
	setLen__packagesZdocutilsZrst_u295((&q_1.tok), ((NI)(j_2 + ((NI)1))));
	nimZeroMem((void*)(&T56_), sizeof(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg));
	T56_.kind = ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0);
	T56_.line = (*p_p0).tok.p->data[(*p_p0).idx].line;
	add__packagesZdocutilsZrst_u12388((&q_1.tok), (&T56_));
	result = parseDoc__packagesZdocutilsZrst_u12316((&q_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrst_u12486((&q_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMarkdownBlockQuote__packagesZdocutilsZrst_u12533)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyTuple__kN8up2W6YKc5YA9avn5mV5w tmpTuple_1;
	NimStringV2 curSym_1;
	NI quotationDepth_1;
	NI quoteTokens_1;
	NI col_1;
NIM_BOOL oldNimErrFin4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	nimZeroMem((void*)(&tmpTuple_1), sizeof(tyTuple__kN8up2W6YKc5YA9avn5mV5w));
	curSym_1.len = 0; curSym_1.p = NIM_NIL;
	getQuoteSymbol__packagesZdocutilsZrst_u12318((&(*p_p0)), (*p_p0).idx, (&tmpTuple_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	curSym_1 = tmpTuple_1.Field0;
	eqwasMoved___system_u2688((&tmpTuple_1.Field0));
	quotationDepth_1 = tmpTuple_1.Field1;
	quoteTokens_1 = tmpTuple_1.Field2;
	col_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)27));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*p_p0).idx += quoteTokens_1;
	{
		while (1) {
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* item_1;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
			tySequence__LqZapiAqCFeXPQZdoIAUew T5_;
			item_1 = NIM_NIL;
			colontmpD_ = NIM_NIL;
			T5_.len = 0; T5_.p = NIM_NIL;
			T5_.len = 0; T5_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			item_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)28), T5_, TM__6mNpeIAN05DnDNzb9b3611A_193);
			if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
			(*item_1)._kind_7.quotationDepth = quotationDepth_1;
			{
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA8_;
				(*p_p0).idx += ((NI)1);
			}
LA8_: ;
			colontmpD_ = parseMarkdownQuoteSegment__packagesZdocutilsZrst_u12365(p_p0, curSym_1, col_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
			add__packagesZdocutilsZrstast_u463(item_1, colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
			add__packagesZdocutilsZrstast_u463(result, item_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
			{
				NIM_BOOL T12_;
				NIM_BOOL T13_;
				NIM_BOOL T14_;
				tyTuple__kN8up2W6YKc5YA9avn5mV5w tmpTupleAsgn;
				T12_ = (NIM_BOOL)0;
				T13_ = (NIM_BOOL)0;
				T14_ = (NIM_BOOL)0;
				T14_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
				if (!(T14_)) goto LA15_;
				T14_ = ((*p_p0).tok.p->data[(*p_p0).idx].ival == col_1);
LA15_: ;
				T13_ = T14_;
				if (!(T13_)) goto LA16_;
				T13_ = !(((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)));
LA16_: ;
				T12_ = T13_;
				if (!(T12_)) goto LA17_;
				T12_ = ((NU8)((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol.p->data[((NI)0)]) == (NU8)(62));
LA17_: ;
				if (!T12_) goto LA18_;
				nimZeroMem((void*)(&tmpTupleAsgn), sizeof(tyTuple__kN8up2W6YKc5YA9avn5mV5w));
				nimZeroMem((void*)(&tmpTupleAsgn), sizeof(tyTuple__kN8up2W6YKc5YA9avn5mV5w));
				getQuoteSymbol__packagesZdocutilsZrst_u12318((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)), (&tmpTupleAsgn));
				if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
				eqsink___system_u2700((&curSym_1), tmpTupleAsgn.Field0);
				quotationDepth_1 = tmpTupleAsgn.Field1;
				quoteTokens_1 = tmpTupleAsgn.Field2;
				(*p_p0).idx += (NI)(((NI)1) + quoteTokens_1);
			}
			goto LA10_;
LA18_: ;
			{
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___packagesZdocutilsZrstast_u285(item_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				goto LA2;
			}
LA10_: ;
			{
				LA4_:;
			}
			{
				oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___packagesZdocutilsZrstast_u285(item_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin4_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
	} LA2: ;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(curSym_1);
		eqdestroy___msgs_u1579((&tmpTuple_1));
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyTuple__XOVT24GHXwqiEj5GCsEGCA, getRefname__packagesZdocutilsZrst_u10029)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI startIdx_p1) {
	tyTuple__XOVT24GHXwqiEj5GCsEGCA result;
	NI lastIdx_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&result), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
	lastIdx_1 = getRefnameIdx__packagesZdocutilsZrst_u10002(p_p0, startIdx_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result.Field1 = lastIdx_1;
	{
		NI j_1;
		NI res_1;
		j_1 = (NI)0;
		res_1 = startIdx_p1;
		{
			while (1) {
				if (!(res_1 <= lastIdx_1)) goto LA3;
				j_1 = ((NI) (res_1));
				prepareAdd((&result.Field0), (*p_p0).tok.p->data[j_1].symbol.len + 0);
appendString((&result.Field0), (*p_p0).tok.p->data[j_1].symbol);
				res_1 += ((NI)1);
			} LA3: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3813)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p1, NimStringV2 arg_p2, NI line_p3, NI col_p4) {
	NimStringV2 colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD_ = currFilename__packagesZdocutilsZrst_u2422((*p_p0).s);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*(*p_p0).s).msgHandler.ClE_0? (*(*p_p0).s).msgHandler.ClP_0(colontmpD_, (NI)((*p_p0).line + line_p3), (NI)((*p_p0).col + col_p4), msgKind_p1, arg_p2, (*(*p_p0).s).msgHandler.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_201)((*(*p_p0).s).msgHandler.ClP_0))(colontmpD_, (NI)((*p_p0).line + line_p3), (NI)((*p_p0).col + col_p4), msgKind_p1, arg_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getDirective__packagesZdocutilsZrst_u11521)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = TM__6mNpeIAN05DnDNzb9b3611A_196;
	{
		tyTuple__XOVT24GHXwqiEj5GCsEGCA tmpTuple_1;
		NimStringV2 name_1;
		NI lastIdx_1;
		NI afterIdx_1;
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA3_;
		nimZeroMem((void*)(&tmpTuple_1), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
		name_1.len = 0; name_1.p = NIM_NIL;
		tmpTuple_1 = getRefname__packagesZdocutilsZrst_u10029((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
		name_1 = tmpTuple_1.Field0;
		eqwasMoved___system_u2688((&tmpTuple_1.Field0));
		lastIdx_1 = tmpTuple_1.Field1;
		afterIdx_1 = (NI)(lastIdx_1 + ((NI)1));
		{
			if (!(((NI)0) < name_1.len)) goto LA8_;
			{
				NimStringV2 T25_;
				if (!eqStrings((*p_p0).tok.p->data[afterIdx_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_197)) goto LA12_;
				eqcopy___system_u2694((&result), name_1);
				(*p_p0).idx = (NI)(afterIdx_1 + ((NI)1));
				{
					if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA16_;
					(*p_p0).idx += ((NI)1);
				}
				goto LA14_;
LA16_: ;
				{
					NimStringV2 colontmpD_;
					NimStringV2 T22_;
					if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1)))) goto LA19_;
					colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
					T22_.len = 0; T22_.p = NIM_NIL;
					T22_ = rawNewString(name_1.len + 47);
appendString((&T22_), TM__6mNpeIAN05DnDNzb9b3611A_199);
appendString((&T22_), name_1);
					colontmpD_ = T22_;
					rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17), colontmpD_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
					{
						LA21_:;
					}
					{
						eqdestroy___system_u2691(colontmpD_);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
				}
				goto LA14_;
LA19_: ;
LA14_: ;
				T25_.len = 0; T25_.p = NIM_NIL;
				T25_ = nsuToLowerAsciiStr(result);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T25_); goto LA5_;}
				eqsink___system_u2700((&result), T25_);
			}
			goto LA10_;
LA12_: ;
			{
				NimStringV2 colontmpD__2;
				NimStringV2 T30_;
				if (!eqStrings((*p_p0).tok.p->data[afterIdx_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_200)) goto LA27_;
				colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
				T30_.len = 0; T30_.p = NIM_NIL;
				T30_ = rawNewString(name_1.len + 43);
appendString((&T30_), TM__6mNpeIAN05DnDNzb9b3611A_203);
appendString((&T30_), name_1);
appendString((&T30_), TM__6mNpeIAN05DnDNzb9b3611A_205);
				colontmpD__2 = T30_;
				rstMessage__packagesZdocutilsZrst_u3813((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17), colontmpD__2, (*p_p0).tok.p->data[afterIdx_1].line, (*p_p0).tok.p->data[afterIdx_1].col);
				if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
				{
					LA29_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__2);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
			}
			goto LA10_;
LA27_: ;
			{
				NIM_BOOL T34_;
				T34_ = (NIM_BOOL)0;
				T34_ = ((*p_p0).tok.p->data[afterIdx_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5));
				if (!(T34_)) goto LA35_;
				T34_ = ((NU8)((*p_p0).tok.p->data[afterIdx_1].symbol.p->data[((NI)0)]) == (NU8)(58));
LA35_: ;
				if (!T34_) goto LA36_;
				rstMessage__packagesZdocutilsZrst_u3813((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17), TM__6mNpeIAN05DnDNzb9b3611A_207, (*p_p0).tok.p->data[afterIdx_1].line, (*p_p0).tok.p->data[afterIdx_1].col);
				if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
			}
			goto LA10_;
LA36_: ;
LA10_: ;
		}
LA8_: ;
		{
			LA5_:;
		}
		{
			eqdestroy___system_u2691(name_1);
			eqdestroy___pureZosproc_u2034(tmpTuple_1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u342)(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* dest_p0, tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* src_p1) {
	(*dest_p0).kind = (*src_p1).kind;
	(*dest_p0).ival = (*src_p1).ival;
	eqcopy___system_u2694((&(*dest_p0).symbol), (*src_p1).symbol);
	(*dest_p0).line = (*src_p1).line;
	(*dest_p0).col = (*src_p1).col;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA, lineInfo__packagesZdocutilsZrst_u4108)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&result), sizeof(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
	result = lineInfo__packagesZdocutilsZrst_u4104(p_p0, (*p_p0).idx);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, newLeaf__packagesZdocutilsZrst_u9992)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = newRstLeaf__packagesZdocutilsZrstast_u454((*p_p0).tok.p->data[(*p_p0).idx].symbol);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, rstRuleSurround__packagesZdocutilsZrst_u10160)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	result = NIM_TRUE;
	{
		NIM_CHAR d_1;
		NIM_CHAR c_1;
		if (!(((NI)0) < (*p_p0).idx)) goto LA3_;
		d_1 = (NIM_CHAR)0;
		c_1 = (*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].symbol.p->data[((NI)0)];
		switch (((NU8)(c_1))) {
		case 39:
		case 34:
		{
			d_1 = c_1;
		}
		break;
		case 40:
		{
			d_1 = 41;
		}
		break;
		case 91:
		{
			d_1 = 93;
		}
		break;
		case 123:
		{
			d_1 = 125;
		}
		break;
		case 60:
		{
			d_1 = 62;
		}
		break;
		default:
		{
			d_1 = 0;
		}
		break;
		}
		{
			if (!!(((NU8)(d_1) == (NU8)(0)))) goto LA13_;
			result = !(((NU8)((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol.p->data[((NI)0)]) == (NU8)(d_1)));
		}
LA13_: ;
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inlineRstStart__packagesZdocutilsZrst_u10172)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T2_ = ((*p_p0).idx == ((NI)0));
	if (T2_) goto LA3_;
	T2_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2));
LA3_: ;
	T1_ = T2_;
	if (T1_) goto LA4_;
	T1_ = ((TM__6mNpeIAN05DnDNzb9b3611A_262[(NU)((((NU8)((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].symbol.p->data[((NI)0)]))))>>3] &(1U<<((NU)((((NU8)((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].symbol.p->data[((NI)0)]))))&7U)))!=0);
LA4_: ;
	result = T1_;
	{
		if (!!(result)) goto LA7_;
		goto BeforeRet_;
	}
LA7_: ;
	result = !(((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)));
	{
		if (!!(result)) goto LA11_;
		goto BeforeRet_;
	}
LA11_: ;
	result = rstRuleSurround__packagesZdocutilsZrst_u10160(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inlineMarkdownStart__packagesZdocutilsZrst_u10165)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = !(((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)));
	{
		if (!!(result)) goto LA3_;
		goto BeforeRet_;
	}
LA3_: ;
	result = rstRuleSurround__packagesZdocutilsZrst_u10160(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInlineMarkupStart__packagesZdocutilsZrst_u10187)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 markup_p1) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		if (!!(eqStrings(markup_p1, TM__6mNpeIAN05DnDNzb9b3611A_255))) goto LA3_;
		result = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, markup_p1);
	}
	goto LA1_;
LA3_: ;
	{
		NIM_BOOL T6_;
		T6_ = (NIM_BOOL)0;
		T6_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_257);
		if (!(T6_)) goto LA7_;
		T6_ = eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_259);
LA7_: ;
		result = T6_;
	}
LA1_: ;
	{
		if (!!(result)) goto LA10_;
		goto BeforeRet_;
	}
LA10_: ;
	{
		NIM_BOOL T14_;
		T14_ = (NIM_BOOL)0;
		T14_ = contains__stdZenumutils_u51(TM__6mNpeIAN05DnDNzb9b3611A_260, 4, markup_p1);
		if (!T14_) goto LA15_;
		result = inlineRstStart__packagesZdocutilsZrst_u10172(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA12_;
LA15_: ;
	{
		{
			if (!(((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)3)))&7U)))!=0)) goto LA20_;
			result = inlineMarkdownStart__packagesZdocutilsZrst_u10165(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA18_;
LA20_: ;
		{
			result = inlineRstStart__packagesZdocutilsZrst_u10172(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA18_: ;
	}
LA12_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inlineRstEnd__packagesZdocutilsZrst_u10082)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	NIM_BOOL T5_;
{	result = !(((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2)));
	{
		if (!!(result)) goto LA3_;
		goto BeforeRet_;
	}
LA3_: ;
	T5_ = (NIM_BOOL)0;
	T5_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0));
	if (T5_) goto LA6_;
	T5_ = ((TM__6mNpeIAN05DnDNzb9b3611A_271[(NU)((((NU8)((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol.p->data[((NI)0)]))))>>3] &(1U<<((NU)((((NU8)((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol.p->data[((NI)0)]))))&7U)))!=0);
LA6_: ;
	result = T5_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, inlineMarkdownEnd__packagesZdocutilsZrst_u10075)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	result = !(((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2)));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isInlineMarkupEnd__packagesZdocutilsZrst_u10097)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 markup_p1, NIM_BOOL exact_p2) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	{
		if (!exact_p2) goto LA3_;
		result = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, markup_p1);
	}
	goto LA1_;
LA3_: ;
	{
		result = nsuEndsWith((*p_p0).tok.p->data[(*p_p0).idx].symbol, markup_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NIM_BOOL T8_;
			NIM_BOOL T12_;
			T8_ = (NIM_BOOL)0;
			T8_ = !(result);
			if (!(T8_)) goto LA9_;
			T8_ = eqStrings(markup_p1, TM__6mNpeIAN05DnDNzb9b3611A_267);
LA9_: ;
			if (!T8_) goto LA10_;
			T12_ = (NIM_BOOL)0;
			T12_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_268);
			if (!(T12_)) goto LA13_;
			T12_ = eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_269);
LA13_: ;
			result = T12_;
		}
LA10_: ;
	}
LA1_: ;
	{
		if (!!(result)) goto LA16_;
		goto BeforeRet_;
	}
LA16_: ;
	{
		NIM_BOOL T20_;
		T20_ = (NIM_BOOL)0;
		T20_ = contains__stdZenumutils_u51(TM__6mNpeIAN05DnDNzb9b3611A_270, 2, markup_p1);
		if (!T20_) goto LA21_;
		result = inlineRstEnd__packagesZdocutilsZrst_u10082(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA18_;
LA21_: ;
	{
		{
			if (!(((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)3)))&7U)))!=0)) goto LA26_;
			result = inlineMarkdownEnd__packagesZdocutilsZrst_u10075(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA24_;
LA26_: ;
		{
			result = inlineRstEnd__packagesZdocutilsZrst_u10082(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA24_: ;
	}
LA18_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimPrepareStrMutationV2)(NimStringV2* s_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = !(((*s_p0).p == ((NimStrPayload*) NIM_NIL)));
		if (!(T3_)) goto LA4_;
		T3_ = ((NI)((*(*s_p0).p).cap & ((NI)IL64(4611686018427387904))) == ((NI)IL64(4611686018427387904)));
LA4_: ;
		if (!T3_) goto LA5_;
		nimPrepareStrMutationImpl__system_u2430(s_p0);
	}
LA5_: ;
}
static N_INLINE(NimStringV2, X5BX5D___pureZstrutils_u1286)(NimStringV2 s_p0, tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA x_p1) {
	NimStringV2 result;
	NI a_1;
	NI L_1;
	result.len = 0; result.p = NIM_NIL;
	a_1 = x_p1.a;
	L_1 = (NI)((NI)(x_p1.b - a_1) + ((NI)1));
	result = mnewString((L_1));
	{
		NI i_1;
		NI i_2;
		i_1 = (NI)0;
		i_2 = ((NI)0);
		{
			while (1) {
				if (!(i_2 < L_1)) goto LA3;
				i_1 = i_2;
				nimPrepareStrMutationV2((&result));
				result.p->data[i_1] = s_p0.p->data[(NI)(i_1 + a_1)];
				i_2 += ((NI)1);
			} LA3: ;
		}
	}
	return result;
}
static N_INLINE(tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA, dotdot___stdZstrbasics_u49)(NI a_p0, NI b_p1) {
	tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA result;
	result.a = a_p0;
	result.b = b_p1;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, parseBackslash__packagesZdocutilsZrst_u10861)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		if (!eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_283)) goto LA3_;
		(*p_p0).idx += ((NI)1);
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
			if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2)))) goto LA7_;
			colontmpD_ = NIM_NIL;
			colontmpD_ = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			add__packagesZdocutilsZrstast_u463(father_p1, colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA7_: ;
		{
			if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA11_;
			(*p_p0).idx += ((NI)1);
		}
LA11_: ;
	}
	goto LA1_;
LA3_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
		colontmpD__2 = NIM_NIL;
		colontmpD__2 = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*p_p0).idx += ((NI)1);
		eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, parseUntil__packagesZdocutilsZrst_u10894)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1, NimStringV2 postfix_p2, NIM_BOOL interpretBackslash_p3) {
	NI line_1;
	NI col_1;
NIM_BOOL oldNimErrFin48_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	line_1 = (*p_p0).tok.p->data[(*p_p0).idx].line;
	col_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
	(*p_p0).idx += ((NI)1);
	{
		while (1) {
			switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5):
			{
				{
					NIM_BOOL T6_;
					NI l_1;
					T6_ = (NIM_BOOL)0;
					T6_ = isInlineMarkupEnd__packagesZdocutilsZrst_u10097((&(*p_p0)), postfix_p2, NIM_FALSE);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					if (!T6_) goto LA7_;
					l_1 = (*p_p0).tok.p->data[(*p_p0).idx].symbol.len;
					{
						NimStringV2 colontmpD_;
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
						tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA T13_;
						if (!(postfix_p2.len < l_1)) goto LA11_;
						colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
						colontmpD__2 = NIM_NIL;
						T13_ = dotdot___stdZstrbasics_u49(((NI)0), (NI)((NI)(l_1 - postfix_p2.len) - ((NI)1)));
						colontmpD_ = X5BX5D___pureZstrutils_u1286((*p_p0).tok.p->data[(*p_p0).idx].symbol, T13_);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						colontmpD__2 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__2);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						eqdestroy___system_u2691(colontmpD_);
					}
					goto LA9_;
LA11_: ;
					{
						NIM_BOOL T15_;
						NIM_BOOL T16_;
						NI T21_;
						T15_ = (NIM_BOOL)0;
						T16_ = (NIM_BOOL)0;
						T16_ = eqStrings(postfix_p2, TM__6mNpeIAN05DnDNzb9b3611A_272);
						if (!(T16_)) goto LA17_;
						T16_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_273);
LA17_: ;
						T15_ = T16_;
						if (!(T15_)) goto LA18_;
						T15_ = eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_274);
LA18_: ;
						if (!T15_) goto LA19_;
						T21_ = (*father_p1).sons.len;
						setLen__packagesZdocutilsZrstast_u241((&(*father_p1).sons), ((NI)(T21_ - ((NI)1))));
					}
					goto LA9_;
LA19_: ;
LA9_: ;
					(*p_p0).idx += ((NI)1);
					goto LA1;
				}
				goto LA4_;
LA7_: ;
				{
					{
						if (!eqStrings(postfix_p2, TM__6mNpeIAN05DnDNzb9b3611A_275)) goto LA25_;
						{
							if (!eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_276)) goto LA29_;
							{
								tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
								tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__4;
								if (!eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_277)) goto LA33_;
								colontmpD__3 = NIM_NIL;
								colontmpD__4 = NIM_NIL;
								colontmpD__3 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_278);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__3);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								colontmpD__4 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_279);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__4);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								(*p_p0).idx += ((NI)2);
								eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							}
							goto LA31_;
LA33_: ;
							{
								tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__5;
								if (!eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_280)) goto LA36_;
								colontmpD__5 = NIM_NIL;
								colontmpD__5 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_281);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__5);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								(*p_p0).idx += ((NI)2);
								eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__5);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							}
							goto LA31_;
LA36_: ;
							{
								tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__6;
								colontmpD__6 = NIM_NIL;
								colontmpD__6 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_282);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__6);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								(*p_p0).idx += ((NI)1);
								eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__6);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							}
LA31_: ;
						}
						goto LA27_;
LA29_: ;
						{
							tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__7;
							colontmpD__7 = NIM_NIL;
							colontmpD__7 = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__7);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							(*p_p0).idx += ((NI)1);
							eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__7);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						}
LA27_: ;
					}
					goto LA23_;
LA25_: ;
					{
						{
							if (!interpretBackslash_p3) goto LA43_;
							parseBackslash__packagesZdocutilsZrst_u10861(p_p0, father_p1);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						}
						goto LA41_;
LA43_: ;
						{
							tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__8;
							colontmpD__8 = NIM_NIL;
							colontmpD__8 = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__8);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							(*p_p0).idx += ((NI)1);
							eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__8);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						}
LA41_: ;
					}
LA23_: ;
				}
LA4_: ;
			}
			break;
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__9;
				colontmpD__9 = NIM_NIL;
				colontmpD__9 = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__9);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				(*p_p0).idx += ((NI)1);
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__9);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			break;
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__10;
				colontmpD__10 = NIM_NIL;
				colontmpD__10 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_285);
				if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
				add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__10);
				if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
				(*p_p0).idx += ((NI)1);
				{
					if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA51_;
					rstMessage__packagesZdocutilsZrst_u3813((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)1), postfix_p2, line_1, col_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__10);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto LA1;
				}
LA51_: ;
				{
					LA48_:;
				}
				{
					oldNimErrFin48_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__10);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin48_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			break;
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__11;
				colontmpD__11 = NIM_NIL;
				colontmpD__11 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_286);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__11);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				(*p_p0).idx += ((NI)1);
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__11);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			break;
			default:
			{
				rstMessage__packagesZdocutilsZrst_u3813((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)1), postfix_p2, line_1, col_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			break;
			}
		}
	} LA1: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, rstnodeToRefnameAux__packagesZdocutilsZrst_u4022)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0, NimStringV2* r_p1, NIM_BOOL* b_p2) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		if (!(n_p0 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL))) goto LA3_;
		goto BeforeRet_;
	}
LA3_: ;
	{
		if (!((*n_p0).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)77))) goto LA7_;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = (*n_p0)._kind_1.text.len;
			i_2 = ((NI)0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA11;
					i_1 = i_2;
					switch (((NU8)((*n_p0)._kind_1.text.p->data[i_1]))) {
					case 48 ... 57:
					{
						{
							if (!(*b_p2)) goto LA15_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA15_: ;
						{
							if (!((*r_p1).len == ((NI)0))) goto LA19_;
							nimAddCharV1((&(*r_p1)), 90);
						}
LA19_: ;
						nimAddCharV1((&(*r_p1)), (*n_p0)._kind_1.text.p->data[i_1]);
					}
					break;
					case 97 ... 122:
					case 128 ... 255:
					{
						{
							if (!(*b_p2)) goto LA24_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA24_: ;
						nimAddCharV1((&(*r_p1)), (*n_p0)._kind_1.text.p->data[i_1]);
					}
					break;
					case 65 ... 90:
					{
						{
							if (!(*b_p2)) goto LA29_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA29_: ;
						nimAddCharV1((&(*r_p1)), ((NIM_CHAR) (((NI)((NI)(((NU8)((*n_p0)._kind_1.text.p->data[i_1])) - ((NI)65)) + ((NI)97))))));
					}
					break;
					case 36:
					{
						{
							if (!(*b_p2)) goto LA34_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA34_: ;
						prepareAdd((&(*r_p1)), 6);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_299);
					}
					break;
					case 37:
					{
						{
							if (!(*b_p2)) goto LA39_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA39_: ;
						prepareAdd((&(*r_p1)), 7);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_301);
					}
					break;
					case 38:
					{
						{
							if (!(*b_p2)) goto LA44_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA44_: ;
						prepareAdd((&(*r_p1)), 3);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_303);
					}
					break;
					case 94:
					{
						{
							if (!(*b_p2)) goto LA49_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA49_: ;
						prepareAdd((&(*r_p1)), 4);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_305);
					}
					break;
					case 33:
					{
						{
							if (!(*b_p2)) goto LA54_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA54_: ;
						prepareAdd((&(*r_p1)), 5);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_307);
					}
					break;
					case 63:
					{
						{
							if (!(*b_p2)) goto LA59_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA59_: ;
						prepareAdd((&(*r_p1)), 5);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_309);
					}
					break;
					case 42:
					{
						{
							if (!(*b_p2)) goto LA64_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA64_: ;
						prepareAdd((&(*r_p1)), 4);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_311);
					}
					break;
					case 43:
					{
						{
							if (!(*b_p2)) goto LA69_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA69_: ;
						prepareAdd((&(*r_p1)), 4);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_313);
					}
					break;
					case 45:
					{
						{
							if (!(*b_p2)) goto LA74_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA74_: ;
						prepareAdd((&(*r_p1)), 5);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_315);
					}
					break;
					case 47:
					{
						{
							if (!(*b_p2)) goto LA79_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA79_: ;
						prepareAdd((&(*r_p1)), 5);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_317);
					}
					break;
					case 92:
					{
						{
							if (!(*b_p2)) goto LA84_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA84_: ;
						prepareAdd((&(*r_p1)), 9);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_319);
					}
					break;
					case 61:
					{
						{
							if (!(*b_p2)) goto LA89_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA89_: ;
						prepareAdd((&(*r_p1)), 2);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_321);
					}
					break;
					case 60:
					{
						{
							if (!(*b_p2)) goto LA94_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA94_: ;
						prepareAdd((&(*r_p1)), 2);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_323);
					}
					break;
					case 62:
					{
						{
							if (!(*b_p2)) goto LA99_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA99_: ;
						prepareAdd((&(*r_p1)), 2);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_325);
					}
					break;
					case 126:
					{
						{
							if (!(*b_p2)) goto LA104_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA104_: ;
						prepareAdd((&(*r_p1)), 5);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_327);
					}
					break;
					case 58:
					{
						{
							if (!(*b_p2)) goto LA109_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA109_: ;
						prepareAdd((&(*r_p1)), 5);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_329);
					}
					break;
					case 46:
					{
						{
							if (!(*b_p2)) goto LA114_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA114_: ;
						prepareAdd((&(*r_p1)), 3);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_331);
					}
					break;
					case 64:
					{
						{
							if (!(*b_p2)) goto LA119_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA119_: ;
						prepareAdd((&(*r_p1)), 2);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_333);
					}
					break;
					case 124:
					{
						{
							if (!(*b_p2)) goto LA124_;
							nimAddCharV1((&(*r_p1)), 45);
							(*b_p2) = NIM_FALSE;
						}
LA124_: ;
						prepareAdd((&(*r_p1)), 3);
appendString((&(*r_p1)), TM__6mNpeIAN05DnDNzb9b3611A_335);
					}
					break;
					default:
					{
						{
							if (!(((NI)0) < (*r_p1).len)) goto LA129_;
							(*b_p2) = NIM_TRUE;
						}
LA129_: ;
					}
					break;
					}
					i_2 += ((NI)1);
				} LA11: ;
			}
		}
	}
	goto LA5_;
LA7_: ;
	{
		{
			NI i_3;
			NI colontmp__2;
			NI i_4;
			i_3 = (NI)0;
			colontmp__2 = (NI)0;
			colontmp__2 = len__packagesZdocutilsZrstast_u114(n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_4 = ((NI)0);
			{
				while (1) {
					if (!(i_4 < colontmp__2)) goto LA134;
					i_3 = i_4;
					rstnodeToRefnameAux__packagesZdocutilsZrst_u4022((*n_p0).sons.p->data[i_3], r_p1, b_p2);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					i_4 += ((NI)1);
				} LA134: ;
			}
		}
	}
LA5_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rstnodeToRefname__packagesZdocutilsZrst_u78)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0) {
	NimStringV2 result;
	NIM_BOOL b_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	b_1 = NIM_FALSE;
	rstnodeToRefnameAux__packagesZdocutilsZrst_u4022(n_p0, (&result), (&b_1));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addNodesAux__packagesZdocutilsZrst_u4000)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0, NimStringV2* result_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		if (!(n_p0 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL))) goto LA3_;
		goto BeforeRet_;
	}
LA3_: ;
	{
		if (!((*n_p0).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)77))) goto LA7_;
		prepareAdd((&(*result_p1)), (*n_p0)._kind_1.text.len + 0);
appendString((&(*result_p1)), (*n_p0)._kind_1.text);
	}
	goto LA5_;
LA7_: ;
	{
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__packagesZdocutilsZrstast_u114(n_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_2 = ((NI)0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA12;
					i_1 = i_2;
					addNodesAux__packagesZdocutilsZrst_u4000((*n_p0).sons.p->data[i_1], result_p1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					i_2 += ((NI)1);
				} LA12: ;
			}
		}
	}
LA5_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, addNodes__packagesZdocutilsZrst_u80)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	addNodesAux__packagesZdocutilsZrst_u4000(n_p0, (&result));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, linkName__packagesZdocutilsZrst_u4019)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0) {
	NimStringV2 result;
	NimStringV2 colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD_ = addNodes__packagesZdocutilsZrst_u80(n_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = nsuToLowerAsciiStr(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___system_u2691(colontmpD_);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMarkdownCodeblockFields__packagesZdocutilsZrst_u10987)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL oldNimErrFin30_;
NIM_BOOL oldNimErrFin14_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA3_;
		result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	}
	goto LA1_;
LA3_: ;
	{
		tySequence__LqZapiAqCFeXPQZdoIAUew T6_;
		T6_.len = 0; T6_.p = NIM_NIL;
		T6_.len = 0; T6_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)15), T6_, TM__6mNpeIAN05DnDNzb9b3611A_337);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	{
		while (1) {
			if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA8;
			{
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA11_;
				(*p_p0).idx += ((NI)1);
			}
			goto LA9_;
LA11_: ;
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* field_1;
				NimStringV2 fieldName_1;
				tySequence__LqZapiAqCFeXPQZdoIAUew colontmpD_;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* fieldBody_1;
				tySequence__LqZapiAqCFeXPQZdoIAUew T15_;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T20_;
				tySequence__LqZapiAqCFeXPQZdoIAUew T25_;
				field_1 = NIM_NIL;
				fieldName_1.len = 0; fieldName_1.p = NIM_NIL;
				colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
				colontmpD__2 = NIM_NIL;
				fieldBody_1 = NIM_NIL;
				T15_.len = 0; T15_.p = NIM_NIL;
				T15_.len = 0; T15_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				field_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)16), T15_, TM__6mNpeIAN05DnDNzb9b3611A_338);
				if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
				fieldName_1 = TM__6mNpeIAN05DnDNzb9b3611A_339;
				{
					while (1) {
						NIM_BOOL T18_;
						T18_ = (NIM_BOOL)0;
						T18_ = !(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)));
						if (!(T18_)) goto LA19_;
						T18_ = !(eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_341));
LA19_: ;
						if (!T18_) goto LA17;
						prepareAdd((&fieldName_1), (*p_p0).tok.p->data[(*p_p0).idx].symbol.len + 0);
appendString((&fieldName_1), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
						(*p_p0).idx += ((NI)1);
					} LA17: ;
				}
				colontmpD_.len = 1; colontmpD_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(1, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				T20_ = NIM_NIL;
				T20_ = newRstLeaf__packagesZdocutilsZrstast_u454(fieldName_1);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T20_); goto LA14_;}
				colontmpD_.p->data[0] = T20_;
				colontmpD__2 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)17), colontmpD_, TM__6mNpeIAN05DnDNzb9b3611A_342);
				if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
				add__packagesZdocutilsZrstast_u463(field_1, colontmpD__2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
				{
					if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA23_;
					(*p_p0).idx += ((NI)1);
				}
LA23_: ;
				T25_.len = 0; T25_.p = NIM_NIL;
				T25_.len = 0; T25_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				fieldBody_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)18), T25_, TM__6mNpeIAN05DnDNzb9b3611A_343);
				if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
				{
					NimStringV2 fieldValue_1;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
					if (!eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_344)) goto LA28_;
					fieldValue_1.len = 0; fieldValue_1.p = NIM_NIL;
					colontmpD__3 = NIM_NIL;
					(*p_p0).idx += ((NI)1);
					{
						if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA33_;
						(*p_p0).idx += ((NI)1);
					}
LA33_: ;
					fieldValue_1 = TM__6mNpeIAN05DnDNzb9b3611A_345;
					{
						if (!eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_347)) goto LA37_;
						{
							while (1) {
								prepareAdd((&fieldValue_1), (*p_p0).tok.p->data[(*p_p0).idx].symbol.len + 0);
appendString((&fieldValue_1), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
								(*p_p0).idx += ((NI)1);
								{
									if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0))) goto LA43_;
									rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)1), TM__6mNpeIAN05DnDNzb9b3611A_348);
									if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
								}
								goto LA41_;
LA43_: ;
								{
									if (!eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_349)) goto LA46_;
									prepareAdd((&fieldValue_1), 1);
appendString((&fieldValue_1), TM__6mNpeIAN05DnDNzb9b3611A_350);
									(*p_p0).idx += ((NI)1);
									goto LA39;
								}
								goto LA41_;
LA46_: ;
LA41_: ;
							}
						} LA39: ;
					}
					goto LA35_;
LA37_: ;
					{
						{
							while (1) {
								if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA50;
								prepareAdd((&fieldValue_1), (*p_p0).tok.p->data[(*p_p0).idx].symbol.len + 0);
appendString((&fieldValue_1), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
								(*p_p0).idx += ((NI)1);
							} LA50: ;
						}
					}
LA35_: ;
					colontmpD__3 = newRstLeaf__packagesZdocutilsZrstast_u454(fieldValue_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
					add__packagesZdocutilsZrstast_u463(fieldBody_1, colontmpD__3);
					if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
					{
						LA30_:;
					}
					{
						oldNimErrFin30_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
						eqdestroy___system_u2691(fieldValue_1);
						*nimErr_ = oldNimErrFin30_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
				}
LA28_: ;
				add__packagesZdocutilsZrstast_u463(field_1, fieldBody_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
				add__packagesZdocutilsZrstast_u463(result, field_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
				{
					LA14_:;
				}
				{
					oldNimErrFin14_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(fieldBody_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___packagesZdocutilsZrstast_u152(colontmpD_);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___system_u2691(fieldName_1);
					eqdestroy___packagesZdocutilsZrstast_u285(field_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin14_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA9_: ;
		} LA8: ;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getFieldValue__packagesZdocutilsZrst_u82)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0, NimStringV2 fieldname_p1) {
	NimStringV2 result;
NIM_BOOL oldNimErrFin12_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	{
		if (!((*n_p0).sons.p->data[((NI)1)] == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL))) goto LA3_;
		goto BeforeRet_;
	}
LA3_: ;
	{
		if (!!(((*(*n_p0).sons.p->data[((NI)1)]).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)15)))) goto LA7_;
		goto BeforeRet_;
	}
LA7_: ;
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = len__packagesZdocutilsZrstast_u114((*n_p0).sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		i_2 = ((NI)0);
		{
			while (1) {
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* f_1;
				NimStringV2 colontmpD_;
				if (!(i_2 < colontmp_)) goto LA11;
				f_1 = NIM_NIL;
				colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
				i_1 = i_2;
				eqcopy___packagesZdocutilsZrstast_u288(&f_1, (*(*n_p0).sons.p->data[((NI)1)]).sons.p->data[i_1]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
				{
					NI T15_;
					NimStringV2 T18_;
					colontmpD_ = addNodes__packagesZdocutilsZrst_u80((*f_1).sons.p->data[((NI)0)]);
					if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
					T15_ = (NI)0;
					T15_ = nsuCmpIgnoreStyle(colontmpD_, fieldname_p1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
					if (!(T15_ == ((NI)0))) goto LA16_;
					T18_.len = 0; T18_.p = NIM_NIL;
					T18_ = addNodes__packagesZdocutilsZrst_u80((*f_1).sons.p->data[((NI)1)]);
					if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T18_); goto LA12_;}
					eqsink___system_u2700((&result), T18_);
					{
						if (!(result.len == 0)) goto LA21_;
						eqsink___system_u2700((&result), TM__6mNpeIAN05DnDNzb9b3611A_352);
					}
LA21_: ;
					eqdestroy___system_u2691(colontmpD_);
					eqdestroy___packagesZdocutilsZrstast_u285(f_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto BeforeRet_;
				}
LA16_: ;
				i_2 += ((NI)1);
				{
					LA12_:;
				}
				{
					oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___system_u2691(colontmpD_);
					eqdestroy___packagesZdocutilsZrstast_u285(f_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin12_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA11: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NimStringV2, slash___stdZprivateZospaths2_u91)(NimStringV2 head_p0, NimStringV2 tail_p1) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = nosjoinPath(head_p0, tail_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, findRelativeFile__packagesZdocutilsZrst_u3778)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 filename_p1) {
	NimStringV2 result;
	NimStringV2 colontmpD_;
	tyTuple__7q7q3E6Oj24ZNVJb9aonhAg colontmpD__2;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	nimZeroMem((void*)(&colontmpD__2), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
	colontmpD_ = currFilename__packagesZdocutilsZrst_u2422((*p_p0).s);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	nossplitFile(colontmpD_, (&colontmpD__2));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	result = slash___stdZprivateZospaths2_u91(colontmpD__2.Field0, filename_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		NimStringV2 T7_;
		T4_ = (NIM_BOOL)0;
		T4_ = nosfileExists(result);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!(T4_)) goto LA5_;
		T7_.len = 0; T7_.p = NIM_NIL;
		T7_ = (*(*p_p0).s).findFile.ClE_0? (*(*p_p0).s).findFile.ClP_0(filename_p1, (*(*p_p0).s).findFile.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_357)((*(*p_p0).s).findFile.ClP_0))(filename_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqsink___system_u2700((&result), T7_);
	}
LA5_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___pureZos_u200((&colontmpD__2));
		eqdestroy___system_u2691(colontmpD_);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, mayLoadFile__packagesZdocutilsZrst_u11070)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** result_p1) {
	NimStringV2 filename_1;
	NimStringV2 colontmpD_;
NIM_BOOL oldNimErrFin6_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	filename_1.len = 0; filename_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD_ = getFieldValue__packagesZdocutilsZrst_u82((*result_p1), TM__6mNpeIAN05DnDNzb9b3611A_354);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	filename_1 = nsuStrip(colontmpD_, NIM_TRUE, NIM_TRUE, TM__6mNpeIAN05DnDNzb9b3611A_355);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NimStringV2 path_1;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_1;
		NimStringV2 colontmpD__2;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
		tySequence__LqZapiAqCFeXPQZdoIAUew T18_;
		if (!!((filename_1.len == 0))) goto LA4_;
		path_1.len = 0; path_1.p = NIM_NIL;
		n_1 = NIM_NIL;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		colontmpD__3 = NIM_NIL;
		{
			tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg tok_1;
			if (!!((((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)5)))&7U)))!=0))) goto LA9_;
			nimZeroMem((void*)(&tok_1), sizeof(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg));
			eqcopy___packagesZdocutilsZrst_u342((&tok_1), (&(*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)2))]));
			rstMessage__packagesZdocutilsZrst_u3813(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)19), TM__6mNpeIAN05DnDNzb9b3611A_356, tok_1.line, tok_1.col);
			if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			{
				LA11_:;
			}
			{
				eqdestroy___packagesZdocutilsZrst_u339((&tok_1));
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		}
LA9_: ;
		path_1 = findRelativeFile__packagesZdocutilsZrst_u3778(p_p0, filename_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		{
			if (!(path_1.len == 0)) goto LA16_;
			rstMessage__packagesZdocutilsZrst_u3783(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)0), filename_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		}
LA16_: ;
		T18_.len = 0; T18_.p = NIM_NIL;
		T18_.len = 0; T18_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		n_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)26), T18_, TM__6mNpeIAN05DnDNzb9b3611A_358);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		colontmpD__2 = readFile__stdZsyncio_u527(path_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		colontmpD__3 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		add__packagesZdocutilsZrstast_u463(n_1, colontmpD__3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		eqsink___packagesZdocutilsZrstast_u294(&(*(*result_p1)).sons.p->data[((NI)2)], n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		eqwasMoved___packagesZdocutilsZrstast_u282(&n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		{
			LA6_:;
		}
		{
			oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___system_u2691(colontmpD__2);
			eqdestroy___packagesZdocutilsZrstast_u285(n_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___system_u2691(path_1);
			*nimErr_ = oldNimErrFin6_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA4_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___system_u2691(filename_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, defaultCodeLangNim__packagesZdocutilsZrst_u11085)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** result_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* extraNode_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__4;
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T7_;
	tySequence__LqZapiAqCFeXPQZdoIAUew T8_;
	tySequence__LqZapiAqCFeXPQZdoIAUew T9_;
	tySequence__LqZapiAqCFeXPQZdoIAUew T10_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	extraNode_1 = NIM_NIL;
	colontmpD_ = NIM_NIL;
	colontmpD__2 = NIM_NIL;
	colontmpD__3 = NIM_NIL;
	colontmpD__4 = NIM_NIL;
	{
		tySequence__LqZapiAqCFeXPQZdoIAUew T5_;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T6_;
		if (!((*(*result_p1)).sons.p->data[((NI)1)] == 0)) goto LA3_;
		T5_.len = 0; T5_.p = NIM_NIL;
		T5_.len = 0; T5_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		T6_ = NIM_NIL;
		T6_ = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)15), T5_, TM__6mNpeIAN05DnDNzb9b3611A_367);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T6_); goto BeforeRet_;}
		eqsink___packagesZdocutilsZrstast_u294(&(*(*result_p1)).sons.p->data[((NI)1)], T6_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	T7_ = lineInfo__packagesZdocutilsZrst_u4108(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T8_.len = 0; T8_.p = NIM_NIL;
	T8_.len = 0; T8_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	extraNode_1 = newRstNode__packagesZdocutilsZrstast_u370(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)16), T7_, T8_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T9_.len = 0; T9_.p = NIM_NIL;
	T9_.len = 0; T9_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	colontmpD_ = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)17), T9_, TM__6mNpeIAN05DnDNzb9b3611A_368);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrstast_u463(extraNode_1, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T10_.len = 0; T10_.p = NIM_NIL;
	T10_.len = 0; T10_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	colontmpD__2 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)18), T10_, TM__6mNpeIAN05DnDNzb9b3611A_369);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrstast_u463(extraNode_1, colontmpD__2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	colontmpD__3 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_371);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrstast_u463((*extraNode_1).sons.p->data[((NI)0)], colontmpD__3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	colontmpD__4 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_373);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrstast_u463((*extraNode_1).sons.p->data[((NI)1)], colontmpD__4);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrstast_u463((*(*result_p1)).sons.p->data[((NI)1)], extraNode_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrstast_u285(extraNode_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMarkdownCodeblock__packagesZdocutilsZrst_u11099)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	NimStringV2 baseSym_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* args_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_1;
	NI line_1;
	NI baseCol_1;
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T2_;
	tySequence__LqZapiAqCFeXPQZdoIAUew T3_;
NIM_BOOL oldNimErrFin8_;
	NIM_BOOL isFirstLine_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	baseSym_1.len = 0; baseSym_1.p = NIM_NIL;
	args_1 = NIM_NIL;
	n_1 = NIM_NIL;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)55));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	setLen__packagesZdocutilsZrstast_u241((&(*result).sons), ((NI)3));
	line_1 = curLine__packagesZdocutilsZrst_u3775((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	baseCol_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
	eqcopy___system_u2694((&baseSym_1), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
	(*p_p0).idx += ((NI)1);
	nimZeroMem((void*)(&T2_), sizeof(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
	T2_ = lineInfo__packagesZdocutilsZrst_u4108((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*result)._kind_8.info = T2_;
	T3_.len = 0; T3_.p = NIM_NIL;
	T3_.len = 0; T3_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	args_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)49), T3_, TM__6mNpeIAN05DnDNzb9b3611A_336);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T9_;
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3))) goto LA6_;
		colontmpD_ = NIM_NIL;
		colontmpD_ = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		add__packagesZdocutilsZrstast_u463(args_1, colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		(*p_p0).idx += ((NI)1);
		T9_ = NIM_NIL;
		T9_ = parseMarkdownCodeblockFields__packagesZdocutilsZrst_u10987(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T9_); goto LA8_;}
		eqsink___packagesZdocutilsZrstast_u294(&(*result).sons.p->data[((NI)1)], T9_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		mayLoadFile__packagesZdocutilsZrst_u11070((&(*p_p0)), &result);
		if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
		{
			LA8_:;
		}
		{
			oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin8_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA4_;
LA6_: ;
	{
		eqsink___packagesZdocutilsZrstast_u294(&args_1, ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA4_: ;
	n_1 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_359);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	isFirstLine_1 = NIM_TRUE;
	{
		while (1) {
			{
				NimStringV2 colontmpD__2;
				NimStringV2 colontmpD__3;
				tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ T20_;
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0))) goto LA17_;
				colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
				colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
				T20_[0] = baseSym_1;
				colontmpD__2 = dollar___systemZdollars_u9(line_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
				T20_[1] = colontmpD__2;
				colontmpD__3 = nsuFormatOpenArray(TM__6mNpeIAN05DnDNzb9b3611A_361, T20_, 2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
				rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)2), colontmpD__3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
				eqdestroy___system_u2691(colontmpD__3);
				eqdestroy___system_u2691(colontmpD__2);
				goto LA13;
				{
					LA19_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__3);
					eqdestroy___system_u2691(colontmpD__2);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
			goto LA15_;
LA17_: ;
			{
				NIM_BOOL T24_;
				NIM_BOOL T25_;
				T24_ = (NIM_BOOL)0;
				T25_ = (NIM_BOOL)0;
				T25_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4));
				if (!(T25_)) goto LA26_;
				T25_ = ((NU8)((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol.p->data[((NI)0)]) == (NU8)(baseSym_1.p->data[((NI)0)]));
LA26_: ;
				T24_ = T25_;
				if (!(T24_)) goto LA27_;
				T24_ = (baseSym_1.len <= (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol.len);
LA27_: ;
				if (!T24_) goto LA28_;
				(*p_p0).idx += ((NI)2);
				goto LA13;
			}
			goto LA15_;
LA28_: ;
			{
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA31_;
				{
					if (!!(isFirstLine_1)) goto LA35_;
					prepareAdd((&(*n_1)._kind_1.text), 1);
appendString((&(*n_1)._kind_1.text), TM__6mNpeIAN05DnDNzb9b3611A_362);
				}
LA35_: ;
				{
					NimStringV2 colontmpD__4;
					if (!(baseCol_1 < (*p_p0).tok.p->data[(*p_p0).idx].ival)) goto LA39_;
					colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
					colontmpD__4 = nsuRepeatStr(TM__6mNpeIAN05DnDNzb9b3611A_363, ((NI)((*p_p0).tok.p->data[(*p_p0).idx].ival - baseCol_1)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					prepareAdd((&(*n_1)._kind_1.text), colontmpD__4.len + 0);
appendString((&(*n_1)._kind_1.text), colontmpD__4);
					eqdestroy___system_u2691(colontmpD__4);
				}
				goto LA37_;
LA39_: ;
				{
					if (!((*p_p0).tok.p->data[(*p_p0).idx].ival < baseCol_1)) goto LA42_;
					rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17), TM__6mNpeIAN05DnDNzb9b3611A_365);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				}
				goto LA37_;
LA42_: ;
LA37_: ;
				(*p_p0).idx += ((NI)1);
			}
			goto LA15_;
LA31_: ;
			{
				prepareAdd((&(*n_1)._kind_1.text), (*p_p0).tok.p->data[(*p_p0).idx].symbol.len + 0);
appendString((&(*n_1)._kind_1.text), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
				(*p_p0).idx += ((NI)1);
			}
LA15_: ;
			isFirstLine_1 = NIM_FALSE;
		}
	} LA13: ;
	eqsink___packagesZdocutilsZrstast_u294(&(*result).sons.p->data[((NI)0)], args_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqwasMoved___packagesZdocutilsZrstast_u282(&args_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* lb_1;
		tySequence__LqZapiAqCFeXPQZdoIAUew T49_;
		if (!((*result).sons.p->data[((NI)2)] == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL))) goto LA47_;
		lb_1 = NIM_NIL;
		T49_.len = 0; T49_.p = NIM_NIL;
		T49_.len = 0; T49_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		lb_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)26), T49_, TM__6mNpeIAN05DnDNzb9b3611A_366);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		add__packagesZdocutilsZrstast_u463(lb_1, n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqsink___packagesZdocutilsZrstast_u294(&(*result).sons.p->data[((NI)2)], lb_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA47_: ;
	{
		NIM_BOOL T52_;
		T52_ = (NIM_BOOL)0;
		T52_ = ((*result).sons.p->data[((NI)0)] == 0);
		if (!(T52_)) goto LA53_;
		T52_ = (((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)4)))&7U)))!=0);
LA53_: ;
		if (!T52_) goto LA54_;
		defaultCodeLangNim__packagesZdocutilsZrst_u11085((&(*p_p0)), &result);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA54_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrstast_u285(n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZrstast_u285(args_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___system_u2691(baseSym_1);
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w, whichRole__packagesZdocutilsZrst_u10377)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 sym_p1) {
	tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
	result = whichRoleAux__packagesZdocutilsZrst_u849(sym_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!(result == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)64))) goto LA3_;
		rstMessage__packagesZdocutilsZrst_u3783(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)15), sym_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, toInlineCode__packagesZdocutilsZrst_u10385)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0, NimStringV2 language_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* args_1;
	NimStringV2 lang_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* lb_1;
	NimStringV2 s_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
	tySequence__LqZapiAqCFeXPQZdoIAUew T1_;
	tySequence__LqZapiAqCFeXPQZdoIAUew T2_;
	tySequence__LqZapiAqCFeXPQZdoIAUew T10_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	args_1 = NIM_NIL;
	lang_1.len = 0; lang_1.p = NIM_NIL;
	colontmpD_ = NIM_NIL;
	lb_1 = NIM_NIL;
	s_1.len = 0; s_1.p = NIM_NIL;
	colontmpD__2 = NIM_NIL;
	T1_.len = 0; T1_.p = NIM_NIL;
	T1_.len = 0; T1_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	result = newRstNode__packagesZdocutilsZrstast_u370(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)62), (*n_p0)._kind_8.info, T1_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T2_.len = 0; T2_.p = NIM_NIL;
	T2_.len = 0; T2_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	args_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)49), T2_, TM__6mNpeIAN05DnDNzb9b3611A_381);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	lang_1 = language_p1;
	{
		if (!eqStrings(language_p1, TM__6mNpeIAN05DnDNzb9b3611A_383)) goto LA5_;
		lang_1 = TM__6mNpeIAN05DnDNzb9b3611A_385;
	}
	goto LA3_;
LA5_: ;
	{
		if (!eqStrings(language_p1, TM__6mNpeIAN05DnDNzb9b3611A_387)) goto LA8_;
		lang_1 = TM__6mNpeIAN05DnDNzb9b3611A_389;
	}
	goto LA3_;
LA8_: ;
LA3_: ;
	colontmpD_ = newRstLeaf__packagesZdocutilsZrstast_u454(lang_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrstast_u463(args_1, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrstast_u463(result, args_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrstast_u463(result, ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T10_.len = 0; T10_.p = NIM_NIL;
	T10_.len = 0; T10_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	lb_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)26), T10_, TM__6mNpeIAN05DnDNzb9b3611A_390);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** i_1;
		NI i_2;
		NI L_1;
		NI T12_;
		i_1 = (tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA**)0;
		i_2 = ((NI)0);
		T12_ = (*n_p0).sons.len;
		L_1 = T12_;
		{
			while (1) {
				if (!(i_2 < L_1)) goto LA14;
				i_1 = &(*n_p0).sons.p->data[i_2];
				prepareAdd((&s_1), (*(*i_1))._kind_1.text.len + 0);
appendString((&s_1), (*(*i_1))._kind_1.text);
				i_2 += ((NI)1);
			} LA14: ;
		}
	}
	colontmpD__2 = newRstLeaf__packagesZdocutilsZrstast_u454(s_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrstast_u463(lb_1, colontmpD__2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrstast_u463(result, lb_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___system_u2691(s_1);
	eqdestroy___packagesZdocutilsZrstast_u285(lb_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrstast_u285(args_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, toOtherRole__packagesZdocutilsZrst_u10404)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w kind_p1, NimStringV2 roleName_p2) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* newN_1;
	tySequence__LqZapiAqCFeXPQZdoIAUew newSons_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* blitTmp_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	newN_1 = NIM_NIL;
	newSons_1.len = 0; newSons_1.p = NIM_NIL;
	newN_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), (*n_p0).sons, TM__6mNpeIAN05DnDNzb9b3611A_392);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	newSons_1.len = 2; newSons_1.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(2, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	blitTmp_1 = newN_1;
	newSons_1.p->data[0] = blitTmp_1;
	T1_ = NIM_NIL;
	T1_ = newRstLeaf__packagesZdocutilsZrstast_u454(roleName_p2);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T1_); goto BeforeRet_;}
	newSons_1.p->data[1] = T1_;
	result = newRstNode__packagesZdocutilsZrstast_u121(kind_p1, newSons_1, TM__6mNpeIAN05DnDNzb9b3611A_393);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrstast_u152(newSons_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, skip__pureZparseutils_u145)(NIM_CHAR* s_p0, NI s_p0Len_0, NIM_CHAR* token_p1, NI token_p1Len_0) {
	NI result;
	result = ((NI)0);
	{
		while (1) {
			NIM_BOOL T3_;
			NIM_BOOL T4_;
			T3_ = (NIM_BOOL)0;
			T4_ = (NIM_BOOL)0;
			T4_ = (result < s_p0Len_0);
			if (!(T4_)) goto LA5_;
			T4_ = (result < token_p1Len_0);
LA5_: ;
			T3_ = T4_;
			if (!(T3_)) goto LA6_;
			T3_ = ((NU8)(s_p0[result]) == (NU8)(token_p1[result]));
LA6_: ;
			if (!T3_) goto LA2;
			result += ((NI)1);
		} LA2: ;
	}
	{
		if (!!((result == token_p1Len_0))) goto LA9_;
		result = ((NI)0);
	}
LA9_: ;
	return result;
}
static N_INLINE(NI, skip__pureZparseutils_u921)(NimStringV2 s_p0, NimStringV2 token_p1, NI start_p2) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	result = skip__pureZparseutils_u145((((s_p0).p) ? ((NIM_CHAR*)s_p0.p->data+(start_p2)) : NIM_NIL), ((s_p0.len-1))-(start_p2)+1, ((token_p1).p) ? (token_p1.p->data) : NIM_NIL, token_p1.len);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, safeProtocol__packagesZdocutilsZrst_u10329)(NimStringV2* linkStr_p0) {
	NimStringV2 result;
	NimStringV2 inp_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	inp_1.len = 0; inp_1.p = NIM_NIL;
	result = TM__6mNpeIAN05DnDNzb9b3611A_406;
	{
		NI idx_1;
		NIM_BOOL res_1;
		NI resLen_1;
		eqcopy___system_u2694((&inp_1), (*linkStr_p0));
		idx_1 = ((NI)0);
		res_1 = NIM_FALSE;
		resLen_1 = parseIdent__pureZparseutils_u903(inp_1, (&result), idx_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NI resLen_2;
			if (!!((resLen_1 == ((NI)0)))) goto LA5_;
			idx_1 += resLen_1;
			resLen_2 = skip__pureZparseutils_u921(inp_1, TM__6mNpeIAN05DnDNzb9b3611A_407, idx_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			{
				if (!!((resLen_2 == ((NI)0)))) goto LA9_;
				idx_1 += resLen_2;
				res_1 = NIM_TRUE;
			}
LA9_: ;
		}
LA5_: ;
		if (!res_1) 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(result, TM__6mNpeIAN05DnDNzb9b3611A_409);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			T16_ = (T17_ == ((NI)0));
			if (T16_) goto LA18_;
			T19_ = (NI)0;
			T19_ = nsuCmpIgnoreCase(result, TM__6mNpeIAN05DnDNzb9b3611A_411);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			T16_ = (T19_ == ((NI)0));
LA18_: ;
			T15_ = T16_;
			if (T15_) goto LA20_;
			T21_ = (NI)0;
			T21_ = nsuCmpIgnoreCase(result, TM__6mNpeIAN05DnDNzb9b3611A_413);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			T15_ = (T21_ == ((NI)0));
LA20_: ;
			if (!T15_) goto LA22_;
		}
		goto LA13_;
LA22_: ;
		{
			eqsink___system_u2700((&(*linkStr_p0)), TM__6mNpeIAN05DnDNzb9b3611A_414);
		}
LA13_: ;
	}
LA11_: ;
	eqdestroy___system_u2691(inp_1);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, fixupEmbeddedRef__packagesZdocutilsZrst_u10349)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* a_p2, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* b_p3) {
	NIM_BOOL result;
	NI colontmpD_;
	NI colontmpD__2;
	NimStringV2 linkStr_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
	NI sep_1;
	NI incr_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	colontmpD_ = (NI)0;
	colontmpD__2 = (NI)0;
	linkStr_1.len = 0; linkStr_1.p = NIM_NIL;
	colontmpD__3 = NIM_NIL;
	sep_1 = ((NI)-1);
	{
		NI i_1;
		NI colontmp_;
		NI T3_;
		NI res_1;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		T3_ = (NI)0;
		T3_ = len__packagesZdocutilsZrstast_u114(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmp_ = (NI)(T3_ - ((NI)2));
		res_1 = colontmp_;
		{
			while (1) {
				if (!(((NI)0) <= res_1)) goto LA5;
				i_1 = ((NI) (res_1));
				{
					if (!eqStrings((*(*n_p1).sons.p->data[i_1])._kind_1.text, TM__6mNpeIAN05DnDNzb9b3611A_404)) goto LA8_;
					sep_1 = i_1;
					goto LA2;
				}
LA8_: ;
				res_1 -= ((NI)1);
			} LA5: ;
		}
	} LA2: ;
	{
		NIM_BOOL T12_;
		T12_ = (NIM_BOOL)0;
		T12_ = (((NI)0) < sep_1);
		if (!(T12_)) goto LA13_;
		T12_ = ((NU8)((*(*n_p1).sons.p->data[(NI)(sep_1 - ((NI)1))])._kind_1.text.p->data[((NI)0)]) == (NU8)(32));
LA13_: ;
		if (!T12_) goto LA14_;
		colontmpD_ = ((NI)2);
		incr_1 = colontmpD_;
	}
	goto LA10_;
LA14_: ;
	{
		colontmpD__2 = ((NI)1);
		incr_1 = colontmpD__2;
	}
LA10_: ;
	{
		NI i_2;
		NI colontmp__2;
		NI res_2;
		i_2 = (NI)0;
		colontmp__2 = (NI)0;
		colontmp__2 = (NI)(sep_1 - incr_1);
		res_2 = ((NI)0);
		{
			while (1) {
				if (!(res_2 <= colontmp__2)) goto LA19;
				i_2 = ((NI) (res_2));
				add__packagesZdocutilsZrstast_u463(a_p2, (*n_p1).sons.p->data[i_2]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				res_2 += ((NI)1);
			} LA19: ;
		}
	}
	linkStr_1 = TM__6mNpeIAN05DnDNzb9b3611A_405;
	{
		NI i_3;
		NI colontmp__3;
		NI colontmp__4;
		NI T21_;
		NI res_3;
		i_3 = (NI)0;
		colontmp__3 = (NI)0;
		colontmp__4 = (NI)0;
		colontmp__3 = (NI)(sep_1 + ((NI)1));
		T21_ = (NI)0;
		T21_ = len__packagesZdocutilsZrstast_u114(n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		colontmp__4 = (NI)(T21_ - ((NI)2));
		res_3 = colontmp__3;
		{
			while (1) {
				NimStringV2 colontmpD__4;
				if (!(res_3 <= colontmp__4)) goto LA23;
				colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
				i_3 = ((NI) (res_3));
				colontmpD__4 = addNodes__packagesZdocutilsZrst_u80((*n_p1).sons.p->data[i_3]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				prepareAdd((&linkStr_1), colontmpD__4.len + 0);
appendString((&linkStr_1), colontmpD__4);
				res_3 += ((NI)1);
				eqdestroy___system_u2691(colontmpD__4);
			} LA23: ;
		}
	}
	{
		NimStringV2 protocol_1;
		if (!!((linkStr_1.len == 0))) goto LA26_;
		protocol_1.len = 0; protocol_1.p = NIM_NIL;
		protocol_1 = safeProtocol__packagesZdocutilsZrst_u10329((&linkStr_1));
		if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
		result = !((linkStr_1.len == 0));
		{
			if (!!(result)) goto LA31_;
			rstMessage__packagesZdocutilsZrst_u3813((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)14), protocol_1, (*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)3))].line, (*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)3))].col);
			if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
		}
LA31_: ;
		{
			LA28_:;
		}
		{
			eqdestroy___system_u2691(protocol_1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA26_: ;
	colontmpD__3 = newRstLeaf__packagesZdocutilsZrstast_u454(linkStr_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__packagesZdocutilsZrstast_u463(b_p3, colontmpD__3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___system_u2691(linkStr_1);
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setRef__packagesZdocutilsZrst_u4147)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 key_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* value_p2, tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw refType_p3) {
	NimStringV2 colontmpD_;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
	NI length_1;
	NI T1_;
	tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A T16_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (*(*p_p0).s).refs.len;
	length_1 = T1_;
	{
		NI i_1;
		NI i_2;
		i_1 = (NI)0;
		i_2 = ((NI)0);
		{
			while (1) {
				if (!(i_2 < length_1)) goto LA4;
				i_1 = i_2;
				{
					NimStringV2 colontmpD__3;
					NimStringV2 colontmpD__4;
					if (!eqStrings(key_p1, (*(*p_p0).s).refs.p->data[i_1].key)) goto LA7_;
					colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
					colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
					{
						colontmpD__3 = addNodes__packagesZdocutilsZrst_u80((*(*p_p0).s).refs.p->data[i_1].value);
						if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
						colontmpD__4 = addNodes__packagesZdocutilsZrst_u80(value_p2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
						if (!!(eqStrings(colontmpD__3, colontmpD__4))) goto LA12_;
						rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)11), key_p1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					}
LA12_: ;
					eqcopy___packagesZdocutilsZrstast_u288(&(*(*p_p0).s).refs.p->data[i_1].value, value_p2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					eqdestroy___system_u2691(colontmpD__4);
					eqdestroy___system_u2691(colontmpD__3);
					goto BeforeRet_;
					{
						LA9_:;
					}
					{
						eqdestroy___system_u2691(colontmpD__4);
						eqdestroy___system_u2691(colontmpD__3);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
LA7_: ;
				i_2 += ((NI)1);
			} LA4: ;
		}
	}
	nimZeroMem((void*)(&T16_), sizeof(tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A));
	T16_.kind = refType_p3;
	colontmpD_ = eqdup___system_u2697(key_p1);
	T16_.key = colontmpD_;
	colontmpD__2 = eqdup___packagesZdocutilsZrstast_u291(value_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T16_.value = colontmpD__2;
	T16_.info = prevLineInfo__packagesZdocutilsZrst_u4111((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrst_u4127((&(*(*p_p0).s).refs), (&T16_));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, finalizeInterpreted__packagesZdocutilsZrst_u10463)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* node_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w newKind_p1, tySequence__LqZapiAqCFeXPQZdoIAUew newSons_p2, NimStringV2 roleName_p3) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		if (!(newKind_p1 == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)64) || newKind_p1 == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)63))) goto LA3_;
		result = toOtherRole__packagesZdocutilsZrst_u10404(node_p0, newKind_p1, roleName_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA3_: ;
	{
		if (!(newKind_p1 == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)62))) goto LA6_;
		result = toInlineCode__packagesZdocutilsZrst_u10385(node_p0, roleName_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA6_: ;
	{
		result = newRstNode__packagesZdocutilsZrstast_u121(newKind_p1, newSons_p2, TM__6mNpeIAN05DnDNzb9b3611A_417);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parsePostfix__packagesZdocutilsZrst_u10457)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tySequence__LqZapiAqCFeXPQZdoIAUew newSons_1;
	tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w newKind_1;
NIM_BOOL oldNimErrFin14_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	newSons_1.len = 0; newSons_1.p = NIM_NIL;
	newKind_1 = (*n_p1).kind;
	eqcopy___packagesZdocutilsZrstast_u155((&newSons_1), (*n_p1).sons);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = isInlineMarkupEnd__packagesZdocutilsZrst_u10097((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_396, NIM_TRUE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (T4_) goto LA5_;
		T4_ = isInlineMarkupEnd__packagesZdocutilsZrst_u10097((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_397, NIM_TRUE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA5_: ;
		if (!T4_) goto LA6_;
		(*p_p0).idx += ((NI)1);
		{
			NIM_BOOL T10_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* a_1;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* b_1;
			tySequence__LqZapiAqCFeXPQZdoIAUew T15_;
			tySequence__LqZapiAqCFeXPQZdoIAUew T16_;
			T10_ = (NIM_BOOL)0;
			T10_ = eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)2))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_398);
			if (!(T10_)) goto LA11_;
			T10_ = eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)3))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_400);
LA11_: ;
			if (!T10_) goto LA12_;
			a_1 = NIM_NIL;
			b_1 = NIM_NIL;
			T15_.len = 0; T15_.p = NIM_NIL;
			T15_.len = 0; T15_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			a_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T15_, TM__6mNpeIAN05DnDNzb9b3611A_401);
			if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
			T16_.len = 0; T16_.p = NIM_NIL;
			T16_.len = 0; T16_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			b_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T16_, TM__6mNpeIAN05DnDNzb9b3611A_402);
			if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
			{
				NIM_BOOL T19_;
				T19_ = (NIM_BOOL)0;
				T19_ = fixupEmbeddedRef__packagesZdocutilsZrst_u10349(p_p0, n_p1, a_1, b_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
				if (!T19_) goto LA20_;
				{
					NI T24_;
					tySequence__LqZapiAqCFeXPQZdoIAUew T27_;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* blitTmp_1;
					T24_ = (NI)0;
					T24_ = len__packagesZdocutilsZrstast_u114(a_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
					if (!(T24_ == ((NI)0))) goto LA25_;
					newKind_1 = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)41);
					T27_.len = 0; T27_.p = NIM_NIL;
					T27_.len = 1; T27_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(1, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
					blitTmp_1 = b_1;
					eqwasMoved___packagesZdocutilsZrstast_u282(&b_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
					T27_.p->data[0] = blitTmp_1;
					eqsink___packagesZdocutilsZrstast_u161((&newSons_1), T27_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
				}
				goto LA22_;
LA25_: ;
				{
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
					NimStringV2 colontmpD__3;
					tySequence__LqZapiAqCFeXPQZdoIAUew T30_;
					colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
					newKind_1 = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)42);
					T30_.len = 0; T30_.p = NIM_NIL;
					T30_.len = 2; T30_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(2, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
					colontmpD_ = eqdup___packagesZdocutilsZrstast_u291(a_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
					T30_.p->data[0] = colontmpD_;
					colontmpD__2 = eqdup___packagesZdocutilsZrstast_u291(b_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
					T30_.p->data[1] = colontmpD__2;
					eqsink___packagesZdocutilsZrstast_u161((&newSons_1), T30_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
					colontmpD__3 = rstnodeToRefname__packagesZdocutilsZrst_u78(a_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
					setRef__packagesZdocutilsZrst_u4147(p_p0, colontmpD__3, b_1, ((tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw)2));
					if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
					{
						LA29_:;
					}
					{
						eqdestroy___system_u2691(colontmpD__3);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
				}
LA22_: ;
			}
			goto LA17_;
LA20_: ;
			{
				newKind_1 = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0);
				eqcopy___packagesZdocutilsZrstast_u155((&newSons_1), (*n_p1).sons);
				if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
			}
LA17_: ;
			result = newRstNode__packagesZdocutilsZrstast_u121(newKind_1, newSons_1, TM__6mNpeIAN05DnDNzb9b3611A_415);
			if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
			{
				LA14_:;
			}
			{
				oldNimErrFin14_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(b_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___packagesZdocutilsZrstast_u285(a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin14_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA8_;
LA12_: ;
		{
			newKind_1 = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)43);
			result = newRstNode__packagesZdocutilsZrstast_u370(newKind_1, (*n_p1)._kind_8.info, newSons_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA8_: ;
	}
	goto LA2_;
LA6_: ;
	{
		NIM_BOOL T38_;
		tyTuple__XOVT24GHXwqiEj5GCsEGCA tmpTuple_1;
		NimStringV2 roleName_1;
		NI lastIdx_1;
		T38_ = (NIM_BOOL)0;
		T38_ = match__packagesZdocutilsZrst_u10249((&(*p_p0)), (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_416);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T38_) goto LA39_;
		nimZeroMem((void*)(&tmpTuple_1), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
		roleName_1.len = 0; roleName_1.p = NIM_NIL;
		tmpTuple_1 = getRefname__packagesZdocutilsZrst_u10029((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
		roleName_1 = tmpTuple_1.Field0;
		eqwasMoved___system_u2688((&tmpTuple_1.Field0));
		lastIdx_1 = tmpTuple_1.Field1;
		newKind_1 = whichRole__packagesZdocutilsZrst_u10377((&(*p_p0)), roleName_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
		result = finalizeInterpreted__packagesZdocutilsZrst_u10463(n_p1, newKind_1, newSons_1, roleName_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
		(*p_p0).idx = (NI)(lastIdx_1 + ((NI)2));
		{
			LA41_:;
		}
		{
			eqdestroy___system_u2691(roleName_1);
			eqdestroy___pureZosproc_u2034(tmpTuple_1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA39_: ;
	{
		result = finalizeInterpreted__packagesZdocutilsZrst_u10463(n_p1, (*(*p_p0).s).currRoleKind, newSons_1, (*(*p_p0).s).currRole);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrstast_u152(newSons_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMdFootnoteName__packagesZdocutilsZrst_u11401)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL reference_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		NIM_BOOL T3_;
		tySequence__LqZapiAqCFeXPQZdoIAUew T6_;
		NI j_1;
		T3_ = (NIM_BOOL)0;
		T3_ = isMdFootnoteName__packagesZdocutilsZrst_u11392((&(*p_p0)), reference_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		T6_.len = 0; T6_.p = NIM_NIL;
		T6_.len = 0; T6_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T6_, TM__6mNpeIAN05DnDNzb9b3611A_422);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		j_1 = (NI)((*p_p0).idx + ((NI)2));
		{
			while (1) {
				NIM_BOOL T9_;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
				T9_ = (NIM_BOOL)0;
				T9_ = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3) || (*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6));
				if (T9_) goto LA10_;
				T9_ = validRefnamePunct__packagesZdocutilsZrst_u9995((*p_p0).tok.p->data[j_1].symbol);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA10_: ;
				if (!T9_) goto LA8;
				colontmpD_ = NIM_NIL;
				colontmpD_ = newRstLeaf__packagesZdocutilsZrstast_u454((*p_p0).tok.p->data[j_1].symbol);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				add__packagesZdocutilsZrstast_u463(result, colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				j_1 += ((NI)1);
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA8: ;
		}
		{
			if (!(j_1 == (NI)((*p_p0).idx + ((NI)2)))) goto LA13_;
			result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
			goto BeforeRet_;
		}
LA13_: ;
		{
			if (!eqStrings((*p_p0).tok.p->data[j_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_424)) goto LA17_;
			{
				if (!reference_p1) goto LA21_;
				(*p_p0).idx = (NI)(j_1 + ((NI)1));
			}
			goto LA19_;
LA21_: ;
			{
				{
					if (!eqStrings((*p_p0).tok.p->data[(NI)(j_1 + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_425)) goto LA26_;
					(*p_p0).idx = (NI)(j_1 + ((NI)2));
				}
				goto LA24_;
LA26_: ;
				{
					eqsink___packagesZdocutilsZrstast_u294(&result, ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
LA24_: ;
			}
LA19_: ;
		}
		goto LA15_;
LA17_: ;
		{
			eqsink___packagesZdocutilsZrstast_u294(&result, ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA15_: ;
	}
	goto LA1_;
LA4_: ;
	{
		result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseRstFootnoteName__packagesZdocutilsZrst_u11356)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL reference_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	NI i_1;
	tySequence__LqZapiAqCFeXPQZdoIAUew T1_;
NIM_BOOL oldNimErrFin4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	i_1 = (NI)((*p_p0).idx + ((NI)1));
	T1_.len = 0; T1_.p = NIM_NIL;
	T1_.len = 0; T1_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T1_, TM__6mNpeIAN05DnDNzb9b3611A_427);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		while (1) {
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
			colontmpD_ = NIM_NIL;
			{
				if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0) || (*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA7_;
				result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto BeforeRet_;
			}
LA7_: ;
			{
				if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5))) goto LA11_;
				if (eqStrings((*p_p0).tok.p->data[i_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_428)) goto LA13_;
				if (eqStrings((*p_p0).tok.p->data[i_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_429)) goto LA14_;
				if (eqStrings((*p_p0).tok.p->data[i_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_430)) goto LA15_;
				goto LA16_;
				LA13_: ;
				{
					{
						NIM_BOOL T21_;
						NIM_BOOL T23_;
						NIM_BOOL T25_;
						T21_ = (NIM_BOOL)0;
						T21_ = ((NI)((*p_p0).idx + ((NI)1)) < i_1);
						if (!(T21_)) goto LA22_;
						T23_ = (NIM_BOOL)0;
						T23_ = !(reference_p1);
						if (T23_) goto LA24_;
						T25_ = (NIM_BOOL)0;
						T25_ = ((*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5));
						if (!(T25_)) goto LA26_;
						T25_ = eqStrings((*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_431);
LA26_: ;
						T23_ = T25_;
LA24_: ;
						T21_ = T23_;
LA22_: ;
						if (!T21_) goto LA27_;
						i_1 += ((NI)1);
						{
							if (!reference_p1) goto LA31_;
							i_1 += ((NI)1);
						}
LA31_: ;
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto LA2;
					}
					goto LA19_;
LA27_: ;
					{
						result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA19_: ;
				}
				goto LA17_;
				LA14_: ;
				{
					{
						if (!!((i_1 == (NI)((*p_p0).idx + ((NI)1))))) goto LA37_;
						result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA37_: ;
				}
				goto LA17_;
				LA15_: ;
				{
					{
						NIM_BOOL T42_;
						NIM_BOOL T43_;
						T42_ = (NIM_BOOL)0;
						T43_ = (NIM_BOOL)0;
						T43_ = !((i_1 == (NI)((*p_p0).idx + ((NI)1))));
						if (!(T43_)) goto LA44_;
						T43_ = !(((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5)));
LA44_: ;
						T42_ = T43_;
						if (!(T42_)) goto LA45_;
						T42_ = !(eqStrings((*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_432));
LA45_: ;
						if (!T42_) goto LA46_;
						result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA46_: ;
				}
				goto LA17_;
				LA16_: ;
				{
					{
						NIM_BOOL T51_;
						T51_ = (NIM_BOOL)0;
						T51_ = validRefnamePunct__packagesZdocutilsZrst_u9995((*p_p0).tok.p->data[i_1].symbol);
						if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
						if (!!(T51_)) goto LA52_;
						result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA52_: ;
				}
LA17_: ;
			}
LA11_: ;
			colontmpD_ = newRstLeaf__packagesZdocutilsZrstast_u454((*p_p0).tok.p->data[i_1].symbol);
			if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
			add__packagesZdocutilsZrstast_u463(result, colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
			i_1 += ((NI)1);
			{
				LA4_:;
			}
			{
				oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin4_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	} LA2: ;
	(*p_p0).idx = i_1;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseFootnoteName__packagesZdocutilsZrst_u11415)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL reference_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = NIM_NIL;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = isMd__packagesZdocutilsZrst_u3838((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T4_) goto LA5_;
		result = parseMdFootnoteName__packagesZdocutilsZrst_u11401(p_p0, reference_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA2_;
LA5_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T8_;
		T8_ = NIM_NIL;
		{
			NIM_BOOL T11_;
			T11_ = (NIM_BOOL)0;
			T11_ = isInlineMarkupStart__packagesZdocutilsZrst_u10187((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_426);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T11_) goto LA12_;
			result = parseRstFootnoteName__packagesZdocutilsZrst_u11356(p_p0, reference_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA9_;
LA12_: ;
		{
			result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
		}
LA9_: ;
	}
LA2_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isMd__packagesZdocutilsZrst_u3845)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0) {
	NIM_BOOL result;
	result = (((*s_p0).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)3)))&7U)))!=0);
	return result;
}
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source_p0, NI16 targetDepth_p1, NU32 token_p2) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	T1_ = (NIM_BOOL)0;
	T1_ = (targetDepth_p1 <= (*source_p0).depth);
	if (!(T1_)) goto LA2_;
	T1_ = ((*source_p0).display[targetDepth_p1] == token_p2);
LA2_: ;
	result = T1_;
	return result;
}
static N_INLINE(Exception*, nimBorrowCurrentException)(void) {
	Exception* result;
	result = currException__system_u3628;
	return result;
}
static N_INLINE(void, popCurrentException)(void) {
	eqcopy___system_u3661(&currException__system_u3628, (*currException__system_u3628).up, NIM_FALSE);
}
N_LIB_PRIVATE N_NIMCALL(tyTuple__7EQdxYuaZDgtungG7UmspQ, getMdFootnoteType__packagesZdocutilsZrst_u11349)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* label_p0) {
	tyTuple__7EQdxYuaZDgtungG7UmspQ result;
	tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g colontmp_;
	NI colontmp__2;
	NI T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&result), sizeof(tyTuple__7EQdxYuaZDgtungG7UmspQ));
	colontmp_ = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)0);
	T2_ = (NI)0;
	T2_ = nsuParseInt((*(*label_p0).sons.p->data[((NI)0)])._kind_1.text);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmp__2 = T2_;
	result.Field0 = colontmp_;
	result.Field1 = colontmp__2;
	if (NIM_UNLIKELY(*nimErr_)) {
		LA1_:;
		if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1871340544)) {
			tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g colontmp__3;
			NI colontmp__4;
			*nimErr_ = NIM_FALSE;
			colontmp__3 = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)2);
			colontmp__4 = ((NI)-1);
			result.Field0 = colontmp__3;
			result.Field1 = colontmp__4;
			popCurrentException();
			LA4_:;
		}
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyTuple__7EQdxYuaZDgtungG7UmspQ, getRstFootnoteType__packagesZdocutilsZrst_u11308)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* label_p0) {
	tyTuple__7EQdxYuaZDgtungG7UmspQ result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&result), sizeof(tyTuple__7EQdxYuaZDgtungG7UmspQ));
	{
		NIM_BOOL T3_;
		NIM_BOOL T4_;
		NI T5_;
		T3_ = (NIM_BOOL)0;
		T4_ = (NIM_BOOL)0;
		T5_ = (*label_p0).sons.len;
		T4_ = (((NI)1) <= T5_);
		if (!(T4_)) goto LA6_;
		T4_ = ((*(*label_p0).sons.p->data[((NI)0)]).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)77));
LA6_: ;
		T3_ = T4_;
		if (!(T3_)) goto LA7_;
		T3_ = eqStrings((*(*label_p0).sons.p->data[((NI)0)])._kind_1.text, TM__6mNpeIAN05DnDNzb9b3611A_434);
LA7_: ;
		if (!T3_) goto LA8_;
		{
			NI T12_;
			tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g colontmp_;
			NI colontmp__2;
			T12_ = (*label_p0).sons.len;
			if (!(T12_ == ((NI)1))) goto LA13_;
			colontmp_ = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)1);
			colontmp__2 = ((NI)-1);
			result.Field0 = colontmp_;
			result.Field1 = colontmp__2;
		}
		goto LA10_;
LA13_: ;
		{
			tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g colontmp__3;
			NI colontmp__4;
			colontmp__3 = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)2);
			colontmp__4 = ((NI)-1);
			result.Field0 = colontmp__3;
			result.Field1 = colontmp__4;
		}
LA10_: ;
	}
	goto LA1_;
LA8_: ;
	{
		NIM_BOOL T17_;
		NIM_BOOL T18_;
		NI T19_;
		tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g colontmp__5;
		NI colontmp__6;
		T17_ = (NIM_BOOL)0;
		T18_ = (NIM_BOOL)0;
		T19_ = (NI)0;
		T19_ = len__packagesZdocutilsZrstast_u114(label_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T18_ = (T19_ == ((NI)1));
		if (!(T18_)) goto LA20_;
		T18_ = ((*(*label_p0).sons.p->data[((NI)0)]).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)77));
LA20_: ;
		T17_ = T18_;
		if (!(T17_)) goto LA21_;
		T17_ = eqStrings((*(*label_p0).sons.p->data[((NI)0)])._kind_1.text, TM__6mNpeIAN05DnDNzb9b3611A_435);
LA21_: ;
		if (!T17_) goto LA22_;
		colontmp__5 = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)3);
		colontmp__6 = ((NI)-1);
		result.Field0 = colontmp__5;
		result.Field1 = colontmp__6;
	}
	goto LA1_;
LA22_: ;
	{
		NIM_BOOL T25_;
		NI T26_;
		tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g colontmp__7;
		NI colontmp__8;
		NI T31_;
		T25_ = (NIM_BOOL)0;
		T26_ = (NI)0;
		T26_ = len__packagesZdocutilsZrstast_u114(label_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T25_ = (T26_ == ((NI)1));
		if (!(T25_)) goto LA27_;
		T25_ = ((*(*label_p0).sons.p->data[((NI)0)]).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)77));
LA27_: ;
		if (!T25_) goto LA28_;
		colontmp__7 = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)0);
		T31_ = (NI)0;
		T31_ = nsuParseInt((*(*label_p0).sons.p->data[((NI)0)])._kind_1.text);
		if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
		colontmp__8 = T31_;
		result.Field0 = colontmp__7;
		result.Field1 = colontmp__8;
		if (NIM_UNLIKELY(*nimErr_)) {
			LA30_:;
			if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1871340544)) {
				tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g colontmp__9;
				NI colontmp__10;
				*nimErr_ = NIM_FALSE;
				colontmp__9 = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)4);
				colontmp__10 = ((NI)-1);
				result.Field0 = colontmp__9;
				result.Field1 = colontmp__10;
				popCurrentException();
				LA33_:;
			}
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA28_: ;
	{
		tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g colontmp__11;
		NI colontmp__12;
		colontmp__11 = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)4);
		colontmp__12 = ((NI)-1);
		result.Field0 = colontmp__11;
		result.Field1 = colontmp__12;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyTuple__7EQdxYuaZDgtungG7UmspQ, getFootnoteType__packagesZdocutilsZrst_u11352)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* label_p1) {
	tyTuple__7EQdxYuaZDgtungG7UmspQ result;
	tyTuple__7EQdxYuaZDgtungG7UmspQ colontmpD_;
	tyTuple__7EQdxYuaZDgtungG7UmspQ colontmpD__2;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&result), sizeof(tyTuple__7EQdxYuaZDgtungG7UmspQ));
	nimZeroMem((void*)(&colontmpD_), sizeof(tyTuple__7EQdxYuaZDgtungG7UmspQ));
	nimZeroMem((void*)(&colontmpD__2), sizeof(tyTuple__7EQdxYuaZDgtungG7UmspQ));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = isMd__packagesZdocutilsZrst_u3845(s_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		colontmpD_ = getMdFootnoteType__packagesZdocutilsZrst_u11349(label_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		result = colontmpD_;
	}
	goto LA1_;
LA4_: ;
	{
		colontmpD__2 = getRstFootnoteType__packagesZdocutilsZrst_u11308(label_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		result = colontmpD__2;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, checkParen__packagesZdocutilsZrst_u10729)(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg* token_p0, tySequence__lBgZ7a89beZGYPl8PiANMTA* parensStack_p1) {
	NIM_BOOL result;
	result = NIM_FALSE;
	{
		NIM_CHAR c_1;
		if (!((*token_p0).kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5))) goto LA3_;
		c_1 = (*token_p0).symbol.p->data[((NI)0)];
		{
			if (!(((NU8)(c_1)) == ((NU8)(40)) || ((NU8)(c_1)) == ((NU8)(91)) || ((NU8)(c_1)) == ((NU8)(123)))) goto LA7_;
			add__packagesZdocutilsZrst_u10742((&(*parensStack_p1)), c_1);
		}
		goto LA5_;
LA7_: ;
		{
			if (!(((NU8)(c_1)) == ((NU8)(41)) || ((NU8)(c_1)) == ((NU8)(93)) || ((NU8)(c_1)) == ((NU8)(125)))) goto LA10_;
			{
				NI i_1;
				NI colontmp_;
				NI T13_;
				NI res_1;
				i_1 = (NI)0;
				colontmp_ = (NI)0;
				T13_ = (*parensStack_p1).len;
				colontmp_ = (NI)(T13_ - ((NI)1));
				res_1 = colontmp_;
				{
					while (1) {
						if (!(((NI)0) <= res_1)) goto LA15;
						i_1 = ((NI) (res_1));
						{
							NIM_BOOL T18_;
							NIM_BOOL T19_;
							NIM_BOOL T20_;
							NIM_BOOL T23_;
							NIM_BOOL T26_;
							T18_ = (NIM_BOOL)0;
							T19_ = (NIM_BOOL)0;
							T20_ = (NIM_BOOL)0;
							T20_ = ((NU8)((*parensStack_p1).p->data[i_1]) == (NU8)(40));
							if (!(T20_)) goto LA21_;
							T20_ = ((NU8)(c_1) == (NU8)(41));
LA21_: ;
							T19_ = T20_;
							if (T19_) goto LA22_;
							T23_ = (NIM_BOOL)0;
							T23_ = ((NU8)((*parensStack_p1).p->data[i_1]) == (NU8)(91));
							if (!(T23_)) goto LA24_;
							T23_ = ((NU8)(c_1) == (NU8)(93));
LA24_: ;
							T19_ = T23_;
LA22_: ;
							T18_ = T19_;
							if (T18_) goto LA25_;
							T26_ = (NIM_BOOL)0;
							T26_ = ((NU8)((*parensStack_p1).p->data[i_1]) == (NU8)(123));
							if (!(T26_)) goto LA27_;
							T26_ = ((NU8)(c_1) == (NU8)(125));
LA27_: ;
							T18_ = T26_;
LA25_: ;
							if (!T18_) goto LA28_;
							setLen__pureZosproc_u1391((&(*parensStack_p1)), (i_1));
							result = NIM_TRUE;
							goto LA12;
						}
LA28_: ;
						res_1 -= ((NI)1);
					} LA15: ;
				}
			} LA12: ;
		}
		goto LA5_;
LA10_: ;
LA5_: ;
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, parseMarkdownLink__packagesZdocutilsZrst_u11165)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1) {
	NIM_BOOL result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* desc_1;
	tySequence__lBgZ7a89beZGYPl8PiANMTA parensStack_1;
	tySequence__LqZapiAqCFeXPQZdoIAUew T2_;
	NI i_1;
NIM_BOOL oldNimErrFin5_;
NIM_BOOL oldNimErrFin83_;
NIM_BOOL oldNimErrFin79_;
NIM_BOOL oldNimErrFin73_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	desc_1 = NIM_NIL;
	parensStack_1.len = 0; parensStack_1.p = NIM_NIL;
	T2_.len = 0; T2_.p = NIM_NIL;
	T2_.len = 0; T2_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	desc_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T2_, TM__6mNpeIAN05DnDNzb9b3611A_438);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	i_1 = (*p_p0).idx;
	setLen__pureZosproc_u1391((&parensStack_1), ((NI)0));
	i_1 += ((NI)1);
	{
		while (1) {
			NimStringV2 symbolX60gensym275__1;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
			NIM_BOOL isClosingX60gensym275__1;
			NimStringV2 T22_;
			symbolX60gensym275__1.len = 0; symbolX60gensym275__1.p = NIM_NIL;
			colontmpD_ = NIM_NIL;
			{
				if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0))) goto LA8_;
				result = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___system_u2691(symbolX60gensym275__1);
				eqdestroy___pureZosproc_u1371(parensStack_1);
				eqdestroy___packagesZdocutilsZrstast_u285(desc_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto BeforeRet_;
			}
LA8_: ;
			{
				NIM_BOOL T12_;
				T12_ = (NIM_BOOL)0;
				T12_ = ((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
				if (!(T12_)) goto LA13_;
				T12_ = ((*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA13_: ;
				if (!T12_) goto LA14_;
				result = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___system_u2691(symbolX60gensym275__1);
				eqdestroy___pureZosproc_u1371(parensStack_1);
				eqdestroy___packagesZdocutilsZrstast_u285(desc_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto BeforeRet_;
			}
LA14_: ;
			isClosingX60gensym275__1 = checkParen__packagesZdocutilsZrst_u10729((&(*p_p0).tok.p->data[i_1]), (&parensStack_1));
			if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
			{
				NIM_BOOL T18_;
				T18_ = (NIM_BOOL)0;
				T18_ = eqStrings((*p_p0).tok.p->data[i_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_439);
				if (!(T18_)) goto LA19_;
				T18_ = !(isClosingX60gensym275__1);
LA19_: ;
				if (!T18_) goto LA20_;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___system_u2691(symbolX60gensym275__1);
				goto LA3;
			}
LA20_: ;
			T22_.len = 0; T22_.p = NIM_NIL;
			{
				if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA25_;
				symbolX60gensym275__1 = TM__6mNpeIAN05DnDNzb9b3611A_440;
			}
			goto LA23_;
LA25_: ;
			{
				eqcopy___system_u2694((&symbolX60gensym275__1), (*p_p0).tok.p->data[i_1].symbol);
			}
LA23_: ;
			colontmpD_ = newRstLeaf__packagesZdocutilsZrstast_u454(symbolX60gensym275__1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
			add__packagesZdocutilsZrstast_u463(desc_1, colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
			i_1 += ((NI)1);
			{
				LA5_:;
			}
			{
				oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___system_u2691(symbolX60gensym275__1);
				*nimErr_ = oldNimErrFin5_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
	} LA3: ;
	i_1 += ((NI)1);
	{
		NimStringV2 link_1;
		NimStringV2 protocol_1;
		NI linkIdx_1;
		if (!eqStrings((*p_p0).tok.p->data[i_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_441)) goto LA32_;
		link_1.len = 0; link_1.p = NIM_NIL;
		protocol_1.len = 0; protocol_1.p = NIM_NIL;
		link_1 = TM__6mNpeIAN05DnDNzb9b3611A_442;
		linkIdx_1 = (NI)(i_1 + ((NI)1));
		setLen__pureZosproc_u1391((&parensStack_1), ((NI)0));
		i_1 += ((NI)1);
		{
			while (1) {
				NimStringV2 symbolX60gensym277__1;
				NIM_BOOL isClosingX60gensym277__1;
				NimStringV2 T54_;
				symbolX60gensym277__1.len = 0; symbolX60gensym277__1.p = NIM_NIL;
				{
					if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0))) goto LA40_;
					result = NIM_FALSE;
					eqdestroy___system_u2691(symbolX60gensym277__1);
					eqdestroy___system_u2691(protocol_1);
					eqdestroy___system_u2691(link_1);
					eqdestroy___pureZosproc_u1371(parensStack_1);
					eqdestroy___packagesZdocutilsZrstast_u285(desc_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto BeforeRet_;
				}
LA40_: ;
				{
					NIM_BOOL T44_;
					T44_ = (NIM_BOOL)0;
					T44_ = ((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
					if (!(T44_)) goto LA45_;
					T44_ = ((*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA45_: ;
					if (!T44_) goto LA46_;
					result = NIM_FALSE;
					eqdestroy___system_u2691(symbolX60gensym277__1);
					eqdestroy___system_u2691(protocol_1);
					eqdestroy___system_u2691(link_1);
					eqdestroy___pureZosproc_u1371(parensStack_1);
					eqdestroy___packagesZdocutilsZrstast_u285(desc_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto BeforeRet_;
				}
LA46_: ;
				isClosingX60gensym277__1 = checkParen__packagesZdocutilsZrst_u10729((&(*p_p0).tok.p->data[i_1]), (&parensStack_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA37_;
				{
					NIM_BOOL T50_;
					T50_ = (NIM_BOOL)0;
					T50_ = eqStrings((*p_p0).tok.p->data[i_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_443);
					if (!(T50_)) goto LA51_;
					T50_ = !(isClosingX60gensym277__1);
LA51_: ;
					if (!T50_) goto LA52_;
					eqdestroy___system_u2691(symbolX60gensym277__1);
					goto LA35;
				}
LA52_: ;
				T54_.len = 0; T54_.p = NIM_NIL;
				{
					if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA57_;
					symbolX60gensym277__1 = TM__6mNpeIAN05DnDNzb9b3611A_444;
				}
				goto LA55_;
LA57_: ;
				{
					eqcopy___system_u2694((&symbolX60gensym277__1), (*p_p0).tok.p->data[i_1].symbol);
				}
LA55_: ;
				prepareAdd((&link_1), symbolX60gensym277__1.len + 0);
appendString((&link_1), symbolX60gensym277__1);
				i_1 += ((NI)1);
				{
					LA37_:;
				}
				{
					eqdestroy___system_u2691(symbolX60gensym277__1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			}
		} LA35: ;
		i_1 += ((NI)1);
		protocol_1 = safeProtocol__packagesZdocutilsZrst_u10329((&link_1));
		if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		{
			if (!(link_1.len == 0)) goto LA64_;
			result = NIM_FALSE;
			rstMessage__packagesZdocutilsZrst_u3813((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)14), protocol_1, (*p_p0).tok.p->data[linkIdx_1].line, (*p_p0).tok.p->data[linkIdx_1].col);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		}
		goto LA62_;
LA64_: ;
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* child_1;
			NimStringV2 colontmpD__2;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
			tySequence__LqZapiAqCFeXPQZdoIAUew T67_;
			child_1 = NIM_NIL;
			colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
			colontmpD__3 = NIM_NIL;
			T67_.len = 0; T67_.p = NIM_NIL;
			T67_.len = 0; T67_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			child_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)42), T67_, TM__6mNpeIAN05DnDNzb9b3611A_445);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__2 = addNodes__packagesZdocutilsZrst_u80(desc_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__3 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(child_1, colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u486(child_1, link_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(father_p1, child_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			(*p_p0).idx = i_1;
			result = NIM_TRUE;
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			eqdestroy___system_u2691(colontmpD__2);
			eqdestroy___packagesZdocutilsZrstast_u285(child_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		}
LA62_: ;
		{
			LA34_:;
		}
		{
			eqdestroy___system_u2691(protocol_1);
			eqdestroy___system_u2691(link_1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA30_;
LA32_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_1;
		tySequence__LqZapiAqCFeXPQZdoIAUew T74_;
		if (!(((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)3)))&7U)))!=0)) goto LA71_;
		n_1 = NIM_NIL;
		T74_.len = 0; T74_.p = NIM_NIL;
		T74_.len = 0; T74_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		n_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)44), T74_, TM__6mNpeIAN05DnDNzb9b3611A_446);
		if (NIM_UNLIKELY(*nimErr_)) goto LA73_;
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* link_2;
			tySequence__LqZapiAqCFeXPQZdoIAUew T80_;
			NI targetIdx_1;
			if (!eqStrings((*p_p0).tok.p->data[i_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_447)) goto LA77_;
			link_2 = NIM_NIL;
			T80_.len = 0; T80_.p = NIM_NIL;
			T80_.len = 0; T80_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			link_2 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T80_, TM__6mNpeIAN05DnDNzb9b3611A_448);
			if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
			targetIdx_1 = (NI)(i_1 + ((NI)1));
			setLen__pureZosproc_u1391((&parensStack_1), ((NI)0));
			i_1 += ((NI)1);
			{
				while (1) {
					NimStringV2 symbolX60gensym280__1;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__4;
					NIM_BOOL isClosingX60gensym280__1;
					NimStringV2 T100_;
					symbolX60gensym280__1.len = 0; symbolX60gensym280__1.p = NIM_NIL;
					colontmpD__4 = NIM_NIL;
					{
						if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0))) goto LA86_;
						result = NIM_FALSE;
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
						eqdestroy___system_u2691(symbolX60gensym280__1);
						eqdestroy___packagesZdocutilsZrstast_u285(link_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA73_;
						eqdestroy___packagesZdocutilsZrstast_u285(n_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___pureZosproc_u1371(parensStack_1);
						eqdestroy___packagesZdocutilsZrstast_u285(desc_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA86_: ;
					{
						NIM_BOOL T90_;
						T90_ = (NIM_BOOL)0;
						T90_ = ((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
						if (!(T90_)) goto LA91_;
						T90_ = ((*p_p0).tok.p->data[(NI)(i_1 + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA91_: ;
						if (!T90_) goto LA92_;
						result = NIM_FALSE;
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
						eqdestroy___system_u2691(symbolX60gensym280__1);
						eqdestroy___packagesZdocutilsZrstast_u285(link_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA73_;
						eqdestroy___packagesZdocutilsZrstast_u285(n_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						eqdestroy___pureZosproc_u1371(parensStack_1);
						eqdestroy___packagesZdocutilsZrstast_u285(desc_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA92_: ;
					isClosingX60gensym280__1 = checkParen__packagesZdocutilsZrst_u10729((&(*p_p0).tok.p->data[i_1]), (&parensStack_1));
					if (NIM_UNLIKELY(*nimErr_)) goto LA83_;
					{
						NIM_BOOL T96_;
						T96_ = (NIM_BOOL)0;
						T96_ = eqStrings((*p_p0).tok.p->data[i_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_449);
						if (!(T96_)) goto LA97_;
						T96_ = !(isClosingX60gensym280__1);
LA97_: ;
						if (!T96_) goto LA98_;
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
						eqdestroy___system_u2691(symbolX60gensym280__1);
						goto LA81;
					}
LA98_: ;
					T100_.len = 0; T100_.p = NIM_NIL;
					{
						if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA103_;
						symbolX60gensym280__1 = TM__6mNpeIAN05DnDNzb9b3611A_450;
					}
					goto LA101_;
LA103_: ;
					{
						eqcopy___system_u2694((&symbolX60gensym280__1), (*p_p0).tok.p->data[i_1].symbol);
					}
LA101_: ;
					colontmpD__4 = newRstLeaf__packagesZdocutilsZrstast_u454(symbolX60gensym280__1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA83_;
					add__packagesZdocutilsZrstast_u463(link_2, colontmpD__4);
					if (NIM_UNLIKELY(*nimErr_)) goto LA83_;
					i_1 += ((NI)1);
					{
						LA83_:;
					}
					{
						oldNimErrFin83_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
						eqdestroy___system_u2691(symbolX60gensym280__1);
						*nimErr_ = oldNimErrFin83_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
				}
			} LA81: ;
			i_1 += ((NI)1);
			add__packagesZdocutilsZrstast_u463(n_1, desc_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
			{
				NI T110_;
				tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T113_;
				T110_ = (NI)0;
				T110_ = len__packagesZdocutilsZrstast_u114(link_2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
				if (!!((T110_ == ((NI)0)))) goto LA111_;
				add__packagesZdocutilsZrstast_u463(n_1, link_2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
				nimZeroMem((void*)(&T113_), sizeof(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
				T113_ = lineInfo__packagesZdocutilsZrst_u4104((&(*p_p0)), targetIdx_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
				(*n_1)._kind_8.info = T113_;
			}
			goto LA108_;
LA111_: ;
			{
				tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T115_;
				add__packagesZdocutilsZrstast_u463(n_1, desc_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
				nimZeroMem((void*)(&T115_), sizeof(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
				T115_ = lineInfo__packagesZdocutilsZrst_u4104((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA79_;
				(*n_1)._kind_8.info = T115_;
			}
LA108_: ;
			{
				LA79_:;
			}
			{
				oldNimErrFin79_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(link_2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA73_;
				*nimErr_ = oldNimErrFin79_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA73_;
		}
		goto LA75_;
LA77_: ;
		{
			tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T119_;
			add__packagesZdocutilsZrstast_u463(n_1, desc_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA73_;
			add__packagesZdocutilsZrstast_u463(n_1, desc_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA73_;
			nimZeroMem((void*)(&T119_), sizeof(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
			T119_ = lineInfo__packagesZdocutilsZrst_u4104((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA73_;
			(*n_1)._kind_8.info = T119_;
		}
LA75_: ;
		add__packagesZdocutilsZrstast_u463(father_p1, n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA73_;
		(*p_p0).idx = i_1;
		result = NIM_TRUE;
		{
			LA73_:;
		}
		{
			oldNimErrFin73_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrstast_u285(n_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin73_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA30_;
LA71_: ;
	{
		result = NIM_FALSE;
	}
LA30_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___pureZosproc_u1371(parensStack_1);
		eqdestroy___packagesZdocutilsZrstast_u285(desc_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, matchVerbatim__packagesZdocutilsZrst_u10537)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI start_p1, NimStringV2 expr_p2) {
	NI result;
	NI j_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = start_p1;
	j_1 = ((NI)0);
	{
		while (1) {
			NIM_BOOL T3_;
			NIM_BOOL T4_;
			NI T6_;
			T3_ = (NIM_BOOL)0;
			T4_ = (NIM_BOOL)0;
			T4_ = (j_1 < expr_p2.len);
			if (!(T4_)) goto LA5_;
			T6_ = (*p_p0).tok.len;
			T4_ = (result < T6_);
LA5_: ;
			T3_ = T4_;
			if (!(T3_)) goto LA7_;
			T3_ = nsuContinuesWith(expr_p2, (*p_p0).tok.p->data[result].symbol, (j_1));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA7_: ;
			if (!T3_) goto LA2;
			j_1 += (*p_p0).tok.p->data[result].symbol.len;
			result += ((NI)1);
		} LA2: ;
	}
	{
		if (!(j_1 < expr_p2.len)) goto LA10_;
		result = ((NI)0);
	}
LA10_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseSmiley__packagesZdocutilsZrst_u10556)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		if (!!((((NU8)((*p_p0).tok.p->data[(*p_p0).idx].symbol.p->data[((NI)0)])) == ((NU8)(58)) || ((NU8)((*p_p0).tok.p->data[(*p_p0).idx].symbol.p->data[((NI)0)])) == ((NU8)(59)) || ((NU8)((*p_p0).tok.p->data[(*p_p0).idx].symbol.p->data[((NI)0)])) == ((NU8)(56))))) goto LA3_;
		goto BeforeRet_;
	}
LA3_: ;
	{
		NimStringV2 key_1;
		NimStringV2 val_1;
		NI i_1;
		key_1.len = 0; key_1.p = NIM_NIL;
		val_1.len = 0; val_1.p = NIM_NIL;
		i_1 = ((NI)0);
		{
			while (1) {
				tyTuple__UV3llMMYFckfui8YMBuUZA colontmp_;
				NI m_1;
				nimZeroMem((void*)(&colontmp_), sizeof(tyTuple__UV3llMMYFckfui8YMBuUZA));
				nimZeroMem((void*)(&colontmp_), sizeof(tyTuple__UV3llMMYFckfui8YMBuUZA));
				eqcopy___stdZprivateZospaths2_u309((&colontmp_), (&Smilies__packagesZdocutilsZrst_u89[(i_1)- 0]));
				eqsink___system_u2700((&key_1), colontmp_.Field0);
				eqsink___system_u2700((&val_1), colontmp_.Field1);
				m_1 = matchVerbatim__packagesZdocutilsZrst_u10537((&(*p_p0)), (*p_p0).idx, key_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
				{
					tySequence__LqZapiAqCFeXPQZdoIAUew T13_;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T14_;
					if (!(((NI)0) < m_1)) goto LA11_;
					(*p_p0).idx = m_1;
					T13_.len = 0; T13_.p = NIM_NIL;
					T13_.len = 0; T13_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
					T14_ = NIM_NIL;
					T14_ = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)75), T13_, TM__6mNpeIAN05DnDNzb9b3611A_509);
					if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T14_); goto LA6_;}
					eqsink___packagesZdocutilsZrstast_u294(&result, T14_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					eqsink___system_u2700((&(*result)._kind_1.text), val_1);
					eqwasMoved___system_u2688((&val_1));
					eqdestroy___system_u2691(val_1);
					eqdestroy___system_u2691(key_1);
					goto BeforeRet_;
				}
LA11_: ;
				{
					if (!(((NI)33) <= i_1)) goto LA17_;
					goto LA7;
				}
LA17_: ;
				i_1 += ((NI)1);
			}
		} LA7: ;
		{
			LA6_:;
		}
		{
			eqdestroy___system_u2691(val_1);
			eqdestroy___system_u2691(key_1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isUrl__packagesZdocutilsZrst_u10667)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI i_p1) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NIM_BOOL T2_;
	NIM_BOOL T3_;
	T1_ = (NIM_BOOL)0;
	T2_ = (NIM_BOOL)0;
	T3_ = (NIM_BOOL)0;
	T3_ = eqStrings((*p_p0).tok.p->data[(NI)(i_p1 + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_510);
	if (!(T3_)) goto LA4_;
	T3_ = eqStrings((*p_p0).tok.p->data[(NI)(i_p1 + ((NI)2))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_512);
LA4_: ;
	T2_ = T3_;
	if (!(T2_)) goto LA5_;
	T2_ = ((*p_p0).tok.p->data[(NI)(i_p1 + ((NI)3))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3));
LA5_: ;
	T1_ = T2_;
	if (!(T1_)) goto LA6_;
	T1_ = contains__stdZenumutils_u51(TM__6mNpeIAN05DnDNzb9b3611A_513, 5, (*p_p0).tok.p->data[i_p1].symbol);
LA6_: ;
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseUrl__packagesZdocutilsZrst_u10779)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tySequence__lBgZ7a89beZGYPl8PiANMTA parensStack_1;
	NimStringV2 s_1;
	tySequence__LqZapiAqCFeXPQZdoIAUew T1_;
	NI lastIdx_1;
	NI closedParenIdx_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	parensStack_1.len = 0; parensStack_1.p = NIM_NIL;
	s_1.len = 0; s_1.p = NIM_NIL;
	T1_.len = 0; T1_.p = NIM_NIL;
	T1_.len = 0; T1_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)41), T1_, TM__6mNpeIAN05DnDNzb9b3611A_515);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	lastIdx_1 = (*p_p0).idx;
	closedParenIdx_1 = (NI)((*p_p0).idx - ((NI)1));
	{
		while (1) {
			NIM_BOOL isClosing_1;
			if (!((*p_p0).tok.p->data[lastIdx_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3) || (*p_p0).tok.p->data[lastIdx_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5) || (*p_p0).tok.p->data[lastIdx_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6))) goto LA3;
			isClosing_1 = checkParen__packagesZdocutilsZrst_u10729((&(*p_p0).tok.p->data[lastIdx_1]), (&parensStack_1));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			{
				if (!isClosing_1) goto LA6_;
				closedParenIdx_1 = lastIdx_1;
			}
LA6_: ;
			lastIdx_1 += ((NI)1);
		} LA3: ;
	}
	lastIdx_1 -= ((NI)1);
	{
		while (1) {
			NIM_BOOL T10_;
			NIM_BOOL T11_;
			T10_ = (NIM_BOOL)0;
			T11_ = (NIM_BOOL)0;
			T11_ = (closedParenIdx_1 < lastIdx_1);
			if (!(T11_)) goto LA12_;
			T11_ = ((*p_p0).tok.p->data[lastIdx_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5));
LA12_: ;
			T10_ = T11_;
			if (!(T10_)) goto LA13_;
			T10_ = !(eqStrings((*p_p0).tok.p->data[lastIdx_1].symbol, TM__6mNpeIAN05DnDNzb9b3611A_517));
LA13_: ;
			if (!T10_) goto LA9;
			lastIdx_1 -= ((NI)1);
		} LA9: ;
	}
	s_1 = TM__6mNpeIAN05DnDNzb9b3611A_518;
	{
		NI i_1;
		NI res_1;
		i_1 = (NI)0;
		res_1 = (*p_p0).idx;
		{
			while (1) {
				if (!(res_1 <= lastIdx_1)) goto LA16;
				i_1 = ((NI) (res_1));
				prepareAdd((&s_1), (*p_p0).tok.p->data[i_1].symbol.len + 0);
appendString((&s_1), (*p_p0).tok.p->data[i_1].symbol);
				res_1 += ((NI)1);
			} LA16: ;
		}
	}
	add__packagesZdocutilsZrstast_u486(result, s_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*p_p0).idx = (NI)(lastIdx_1 + ((NI)1));
	eqdestroy___system_u2691(s_1);
	eqdestroy___pureZosproc_u1371(parensStack_1);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, parseWordOrRef__packagesZdocutilsZrst_u10815)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1) {
NIM_BOOL oldNimErrFin10_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
		if (!!(((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5)))) goto LA3_;
		colontmpD_ = NIM_NIL;
		colontmpD_ = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		add__packagesZdocutilsZrstast_u463(father_p1, colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(*p_p0).idx += ((NI)1);
		eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA3_: ;
	{
		NIM_BOOL T6_;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
		T6_ = (NIM_BOOL)0;
		T6_ = isUrl__packagesZdocutilsZrst_u10667((&(*p_p0)), (*p_p0).idx);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T6_) goto LA7_;
		colontmpD__2 = NIM_NIL;
		colontmpD__2 = parseUrl__packagesZdocutilsZrst_u10779(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA7_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* reference_1;
		NI saveIdx_1;
		reference_1 = NIM_NIL;
		saveIdx_1 = (*p_p0).idx;
		reference_1 = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
		(*p_p0).idx += ((NI)1);
		{
			while (1) {
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5))) goto LA12;
				{
					if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5))) goto LA15_;
					{
						NIM_BOOL T19_;
						tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T22_;
						tySequence__LqZapiAqCFeXPQZdoIAUew T23_;
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T24_;
						T19_ = (NIM_BOOL)0;
						T19_ = isInlineMarkupEnd__packagesZdocutilsZrst_u10097((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_519, NIM_TRUE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
						if (!T19_) goto LA20_;
						T22_ = lineInfo__packagesZdocutilsZrst_u4104((&(*p_p0)), saveIdx_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
						T23_.len = 0; T23_.p = NIM_NIL;
						T23_.len = 0; T23_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
						T24_ = NIM_NIL;
						T24_ = newRstNode__packagesZdocutilsZrstast_u370(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)43), T22_, T23_);
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T24_); goto LA10_;}
						eqsink___packagesZdocutilsZrstast_u294(&reference_1, T24_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
						goto LA11;
					}
LA20_: ;
					{
						NIM_BOOL T27_;
						T27_ = (NIM_BOOL)0;
						T27_ = validRefnamePunct__packagesZdocutilsZrst_u9995((*p_p0).tok.p->data[(*p_p0).idx].symbol);
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
						if (!!(T27_)) goto LA28_;
						goto LA11;
					}
LA28_: ;
				}
LA15_: ;
				(*p_p0).idx += ((NI)1);
			} LA12: ;
		} LA11: ;
		{
			if (!!((reference_1 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL)))) goto LA32_;
			{
				NI i_1;
				NI colontmp_;
				NI res_1;
				i_1 = (NI)0;
				colontmp_ = (NI)0;
				colontmp_ = (NI)((*p_p0).idx - ((NI)1));
				res_1 = saveIdx_1;
				{
					while (1) {
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
						if (!(res_1 <= colontmp_)) goto LA36;
						colontmpD__3 = NIM_NIL;
						i_1 = ((NI) (res_1));
						colontmpD__3 = newRstLeaf__packagesZdocutilsZrstast_u454((*p_p0).tok.p->data[i_1].symbol);
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
						add__packagesZdocutilsZrstast_u463(reference_1, colontmpD__3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
						res_1 += ((NI)1);
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
					} LA36: ;
				}
			}
			add__packagesZdocutilsZrstast_u463(father_p1, reference_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
			(*p_p0).idx += ((NI)1);
		}
		goto LA30_;
LA32_: ;
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__4;
			colontmpD__4 = NIM_NIL;
			colontmpD__4 = newRstLeaf__packagesZdocutilsZrstast_u454((*p_p0).tok.p->data[saveIdx_1].symbol);
			if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
			add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
			(*p_p0).idx = (NI)(saveIdx_1 + ((NI)1));
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
		}
LA30_: ;
		{
			LA10_:;
		}
		{
			oldNimErrFin10_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrstast_u285(reference_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			*nimErr_ = oldNimErrFin10_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, parseInline__packagesZdocutilsZrst_u11440)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_1;
	NI saveIdx_1;
NIM_BOOL oldNimErrFin8_;
NIM_BOOL oldNimErrFin16_;
NIM_BOOL oldNimErrFin24_;
NIM_BOOL oldNimErrFin32_;
NIM_BOOL oldNimErrFin41_;
NIM_BOOL oldNimErrFin48_;
NIM_BOOL oldNimErrFin57_;
NIM_BOOL oldNimErrFin75_;
NIM_BOOL oldNimErrFin85_;
NIM_BOOL oldNimErrFin118_;
NIM_BOOL oldNimErrFin130_;
NIM_BOOL oldNimErrFin144_;
NIM_BOOL oldNimErrFin151_;
NIM_BOOL oldNimErrFin138_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	n_1 = NIM_NIL;
	saveIdx_1 = (*p_p0).idx;
	switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
	case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5):
	{
		{
			NIM_BOOL T5_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_2;
			tySequence__LqZapiAqCFeXPQZdoIAUew T9_;
			T5_ = (NIM_BOOL)0;
			T5_ = isInlineMarkupStart__packagesZdocutilsZrst_u10187((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_264);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!T5_) goto LA6_;
			n_2 = NIM_NIL;
			T9_.len = 0; T9_.p = NIM_NIL;
			T9_.len = 0; T9_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			n_2 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)70), T9_, TM__6mNpeIAN05DnDNzb9b3611A_265);
			if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
			parseUntil__packagesZdocutilsZrst_u10894(p_p0, n_2, TM__6mNpeIAN05DnDNzb9b3611A_287, NIM_TRUE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
			add__packagesZdocutilsZrstast_u463(father_p1, n_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
			{
				LA8_:;
			}
			{
				oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(n_2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin8_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA3_;
LA6_: ;
		{
			NIM_BOOL T13_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_3;
			tySequence__LqZapiAqCFeXPQZdoIAUew T17_;
			T13_ = (NIM_BOOL)0;
			T13_ = isInlineMarkupStart__packagesZdocutilsZrst_u10187((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_289);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!T13_) goto LA14_;
			n_3 = NIM_NIL;
			T17_.len = 0; T17_.p = NIM_NIL;
			T17_.len = 0; T17_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			n_3 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)69), T17_, TM__6mNpeIAN05DnDNzb9b3611A_290);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			parseUntil__packagesZdocutilsZrst_u10894(p_p0, n_3, TM__6mNpeIAN05DnDNzb9b3611A_291, NIM_TRUE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			add__packagesZdocutilsZrstast_u463(father_p1, n_3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
			{
				LA16_:;
			}
			{
				oldNimErrFin16_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(n_3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin16_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA3_;
LA14_: ;
		{
			NIM_BOOL T21_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_4;
			tySequence__LqZapiAqCFeXPQZdoIAUew T25_;
			T21_ = (NIM_BOOL)0;
			T21_ = isInlineMarkupStart__packagesZdocutilsZrst_u10187((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_292);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!T21_) goto LA22_;
			n_4 = NIM_NIL;
			T25_.len = 0; T25_.p = NIM_NIL;
			T25_.len = 0; T25_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			n_4 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)68), T25_, TM__6mNpeIAN05DnDNzb9b3611A_293);
			if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
			parseUntil__packagesZdocutilsZrst_u10894(p_p0, n_4, TM__6mNpeIAN05DnDNzb9b3611A_294, NIM_TRUE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
			add__packagesZdocutilsZrstast_u463(father_p1, n_4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
			{
				LA24_:;
			}
			{
				oldNimErrFin24_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(n_4);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin24_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA3_;
LA22_: ;
		{
			NIM_BOOL T29_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_5;
			NimStringV2 colontmpD_;
			tySequence__LqZapiAqCFeXPQZdoIAUew T33_;
			NimStringV2 T34_;
			T29_ = (NIM_BOOL)0;
			T29_ = isInlineMarkupStart__packagesZdocutilsZrst_u10187((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_295);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!T29_) goto LA30_;
			n_5 = NIM_NIL;
			colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
			T33_.len = 0; T33_.p = NIM_NIL;
			T33_.len = 0; T33_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			n_5 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)73), T33_, TM__6mNpeIAN05DnDNzb9b3611A_296);
			if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			(*p_p0).idx += ((NI)1);
			parseUntil__packagesZdocutilsZrst_u10894(p_p0, n_5, TM__6mNpeIAN05DnDNzb9b3611A_297, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			T34_.len = 0; T34_.p = NIM_NIL;
			T34_ = rstnodeToRefname__packagesZdocutilsZrst_u78(n_5);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T34_); goto LA32_;}
			eqsink___system_u2700((&(*n_5).anchor), T34_);
			colontmpD_ = linkName__packagesZdocutilsZrst_u4019(n_5);
			if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			addAnchorRst__packagesZdocutilsZrst_u4220(p_p0, colontmpD_, n_5, ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)1));
			if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			add__packagesZdocutilsZrstast_u463(father_p1, n_5);
			if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			{
				LA32_:;
			}
			{
				oldNimErrFin32_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___system_u2691(colontmpD_);
				eqdestroy___packagesZdocutilsZrstast_u285(n_5);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin32_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA3_;
LA30_: ;
		{
			NIM_BOOL T38_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
			T38_ = (NIM_BOOL)0;
			T38_ = isMarkdownCodeBlock__packagesZdocutilsZrst_u11437((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!T38_) goto LA39_;
			colontmpD__2 = NIM_NIL;
			colontmpD__2 = parseMarkdownCodeblock__packagesZdocutilsZrst_u11099(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
			add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
			{
				LA41_:;
			}
			{
				oldNimErrFin41_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin41_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA3_;
LA39_: ;
		{
			NIM_BOOL T45_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_6;
			tySequence__LqZapiAqCFeXPQZdoIAUew T49_;
			T45_ = (NIM_BOOL)0;
			T45_ = isInlineMarkupStart__packagesZdocutilsZrst_u10187((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_374);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!T45_) goto LA46_;
			n_6 = NIM_NIL;
			T49_.len = 0; T49_.p = NIM_NIL;
			T49_.len = 0; T49_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			n_6 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)72), T49_, TM__6mNpeIAN05DnDNzb9b3611A_375);
			if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
			parseUntil__packagesZdocutilsZrst_u10894(p_p0, n_6, TM__6mNpeIAN05DnDNzb9b3611A_376, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
			add__packagesZdocutilsZrstast_u463(father_p1, n_6);
			if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
			{
				LA48_:;
			}
			{
				oldNimErrFin48_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(n_6);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin48_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA3_;
LA46_: ;
		{
			NIM_BOOL T53_;
			NI lastIdx_1;
			tyTuple__XOVT24GHXwqiEj5GCsEGCA tmpTuple_1;
			NimStringV2 roleName_1;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_7;
			tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w k_1;
			tySequence__LqZapiAqCFeXPQZdoIAUew T58_;
			T53_ = (NIM_BOOL)0;
			T53_ = match__packagesZdocutilsZrst_u10249((&(*p_p0)), (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_378);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!(T53_)) goto LA54_;
			lastIdx_1 = getRefnameIdx__packagesZdocutilsZrst_u10002((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			T53_ = eqStrings((*p_p0).tok.p->data[(NI)(lastIdx_1 + ((NI)2))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_379);
LA54_: ;
			if (!T53_) goto LA55_;
			nimZeroMem((void*)(&tmpTuple_1), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
			roleName_1.len = 0; roleName_1.p = NIM_NIL;
			n_7 = NIM_NIL;
			tmpTuple_1 = getRefname__packagesZdocutilsZrst_u10029((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
			roleName_1 = tmpTuple_1.Field0;
			eqwasMoved___system_u2688((&tmpTuple_1.Field0));
			k_1 = whichRole__packagesZdocutilsZrst_u10377((&(*p_p0)), roleName_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
			T58_.len = 0; T58_.p = NIM_NIL;
			T58_.len = 0; T58_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			n_7 = newRstNode__packagesZdocutilsZrstast_u121(k_1, T58_, TM__6mNpeIAN05DnDNzb9b3611A_380);
			if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
			(*p_p0).idx = (NI)(lastIdx_1 + ((NI)2));
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T63_;
				if (!(k_1 == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)62))) goto LA61_;
				T63_ = NIM_NIL;
				T63_ = toInlineCode__packagesZdocutilsZrst_u10385(n_7, roleName_1);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T63_); goto LA57_;}
				eqsink___packagesZdocutilsZrstast_u294(&n_7, T63_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
			}
LA61_: ;
			parseUntil__packagesZdocutilsZrst_u10894(p_p0, n_7, TM__6mNpeIAN05DnDNzb9b3611A_391, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T68_;
				if (!(k_1 == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)64) || k_1 == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)63))) goto LA66_;
				T68_ = NIM_NIL;
				T68_ = toOtherRole__packagesZdocutilsZrst_u10404(n_7, k_1, roleName_1);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T68_); goto LA57_;}
				eqsink___packagesZdocutilsZrstast_u294(&n_7, T68_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
			}
LA66_: ;
			add__packagesZdocutilsZrstast_u463(father_p1, n_7);
			if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
			{
				LA57_:;
			}
			{
				oldNimErrFin57_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(n_7);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___system_u2691(roleName_1);
				eqdestroy___pureZosproc_u2034(tmpTuple_1);
				*nimErr_ = oldNimErrFin57_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA3_;
LA55_: ;
		{
			NIM_BOOL T72_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_8;
			tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T76_;
			tySequence__LqZapiAqCFeXPQZdoIAUew T77_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T78_;
			T72_ = (NIM_BOOL)0;
			T72_ = isInlineMarkupStart__packagesZdocutilsZrst_u10187((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_394);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!T72_) goto LA73_;
			n_8 = NIM_NIL;
			T76_ = lineInfo__packagesZdocutilsZrst_u4104((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA75_;
			T77_.len = 0; T77_.p = NIM_NIL;
			T77_.len = 0; T77_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			n_8 = newRstNode__packagesZdocutilsZrstast_u370(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)71), T76_, T77_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA75_;
			parseUntil__packagesZdocutilsZrst_u10894(p_p0, n_8, TM__6mNpeIAN05DnDNzb9b3611A_395, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA75_;
			T78_ = NIM_NIL;
			T78_ = parsePostfix__packagesZdocutilsZrst_u10457(p_p0, n_8);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T78_); goto LA75_;}
			eqsink___packagesZdocutilsZrstast_u294(&n_8, T78_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA75_;
			add__packagesZdocutilsZrstast_u463(father_p1, n_8);
			if (NIM_UNLIKELY(*nimErr_)) goto LA75_;
			{
				LA75_:;
			}
			{
				oldNimErrFin75_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(n_8);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin75_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA3_;
LA73_: ;
		{
			NIM_BOOL T82_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_9;
			tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T86_;
			tySequence__LqZapiAqCFeXPQZdoIAUew T87_;
			T82_ = (NIM_BOOL)0;
			T82_ = isInlineMarkupStart__packagesZdocutilsZrst_u10187((&(*p_p0)), TM__6mNpeIAN05DnDNzb9b3611A_418);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!T82_) goto LA83_;
			n_9 = NIM_NIL;
			T86_ = lineInfo__packagesZdocutilsZrst_u4104((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA85_;
			T87_.len = 0; T87_.p = NIM_NIL;
			T87_.len = 0; T87_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			n_9 = newRstNode__packagesZdocutilsZrstast_u370(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)74), T86_, T87_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA85_;
			parseUntil__packagesZdocutilsZrst_u10894(p_p0, n_9, TM__6mNpeIAN05DnDNzb9b3611A_419, NIM_FALSE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA85_;
			add__packagesZdocutilsZrstast_u463(father_p1, n_9);
			if (NIM_UNLIKELY(*nimErr_)) goto LA85_;
			{
				LA85_:;
			}
			{
				oldNimErrFin85_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(n_9);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin85_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA3_;
LA83_: ;
		{
			NIM_BOOL T91_;
			NIM_BOOL T92_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* nn_1;
			tySequence__LqZapiAqCFeXPQZdoIAUew T97_;
			tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T98_;
			tyTuple__7EQdxYuaZDgtungG7UmspQ tmpTuple_2;
			tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g fnType_1;
			T91_ = (NIM_BOOL)0;
			T92_ = (NIM_BOOL)0;
			T92_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_420);
			if (!(T92_)) goto LA93_;
			T92_ = !(eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_421));
LA93_: ;
			T91_ = T92_;
			if (!(T91_)) goto LA94_;
			n_1 = parseFootnoteName__packagesZdocutilsZrst_u11415(p_p0, NIM_TRUE);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			T91_ = !((n_1 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL)));
LA94_: ;
			if (!T91_) goto LA95_;
			nn_1 = NIM_NIL;
			T97_.len = 0; T97_.p = NIM_NIL;
			T97_.len = 0; T97_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			nn_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)46), T97_, TM__6mNpeIAN05DnDNzb9b3611A_433);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			nimZeroMem((void*)(&T98_), sizeof(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
			T98_ = lineInfo__packagesZdocutilsZrst_u4104((&(*p_p0)), (NI)(saveIdx_1 + ((NI)1)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			(*nn_1)._kind_8.info = T98_;
			add__packagesZdocutilsZrstast_u463(nn_1, n_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			tmpTuple_2 = getFootnoteType__packagesZdocutilsZrst_u11352((*p_p0).s, n_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			fnType_1 = tmpTuple_2.Field0;
			switch (fnType_1) {
			case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)3):
			{
				tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T100_;
				T100_ = lineInfo__packagesZdocutilsZrst_u4108((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				add__packagesZdocutilsZrst_u8213((&(*(*p_p0).s).lineFootnoteSymRef), T100_);
			}
			break;
			case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)1):
			{
				tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T102_;
				T102_ = lineInfo__packagesZdocutilsZrst_u4108((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				add__packagesZdocutilsZrst_u8213((&(*(*p_p0).s).lineFootnoteNumRef), T102_);
			}
			break;
			default:
			{
			}
			break;
			}
			add__packagesZdocutilsZrstast_u463(father_p1, nn_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___packagesZdocutilsZrstast_u285(nn_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA3_;
LA95_: ;
		{
			NIM_BOOL T105_;
			NIM_BOOL T106_;
			NIM_BOOL T107_;
			T105_ = (NIM_BOOL)0;
			T106_ = (NIM_BOOL)0;
			T107_ = (NIM_BOOL)0;
			T107_ = (((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)2)))&7U)))!=0);
			if (!(T107_)) goto LA108_;
			T107_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_436);
LA108_: ;
			T106_ = T107_;
			if (!(T106_)) goto LA109_;
			T106_ = !(eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_437));
LA109_: ;
			T105_ = T106_;
			if (!(T105_)) goto LA110_;
			T105_ = parseMarkdownLink__packagesZdocutilsZrst_u11165(p_p0, father_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA110_: ;
			if (!T105_) goto LA111_;
		}
		goto LA3_;
LA111_: ;
		{
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_10;
				if (!(((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)0)))&7U)))!=0)) goto LA116_;
				n_10 = NIM_NIL;
				n_10 = parseSmiley__packagesZdocutilsZrst_u10556(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA118_;
				{
					if (!!((n_10 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL)))) goto LA121_;
					add__packagesZdocutilsZrstast_u463(father_p1, n_10);
					if (NIM_UNLIKELY(*nimErr_)) goto LA118_;
					eqdestroy___packagesZdocutilsZrstast_u285(n_10);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___packagesZdocutilsZrstast_u285(n_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto BeforeRet_;
				}
LA121_: ;
				{
					LA118_:;
				}
				{
					oldNimErrFin118_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(n_10);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					*nimErr_ = oldNimErrFin118_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
LA116_: ;
			parseBackslash__packagesZdocutilsZrst_u10861(p_p0, father_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA3_: ;
	}
	break;
	case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3):
	{
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_11;
			if (!(((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)0)))&7U)))!=0)) goto LA128_;
			n_11 = NIM_NIL;
			n_11 = parseSmiley__packagesZdocutilsZrst_u10556(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA130_;
			{
				if (!!((n_11 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL)))) goto LA133_;
				add__packagesZdocutilsZrstast_u463(father_p1, n_11);
				if (NIM_UNLIKELY(*nimErr_)) goto LA130_;
				eqdestroy___packagesZdocutilsZrstast_u285(n_11);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___packagesZdocutilsZrstast_u285(n_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto BeforeRet_;
			}
LA133_: ;
			{
				LA130_:;
			}
			{
				oldNimErrFin130_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(n_11);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin130_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA128_: ;
		parseWordOrRef__packagesZdocutilsZrst_u10815(p_p0, father_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4):
	case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6):
	case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2):
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
		colontmpD__3 = NIM_NIL;
		{
			NIM_BOOL T141_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__4;
			T141_ = (NIM_BOOL)0;
			T141_ = isMarkdownCodeBlock__packagesZdocutilsZrst_u11437((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA138_;
			if (!T141_) goto LA142_;
			colontmpD__4 = NIM_NIL;
			colontmpD__4 = parseMarkdownCodeblock__packagesZdocutilsZrst_u11099(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA144_;
			add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA144_;
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA138_;
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___packagesZdocutilsZrstast_u285(n_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			goto BeforeRet_;
			{
				LA144_:;
			}
			{
				oldNimErrFin144_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
				if (NIM_UNLIKELY(*nimErr_)) goto LA138_;
				*nimErr_ = oldNimErrFin144_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA138_;
		}
LA142_: ;
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_12;
			if (!(((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)0)))&7U)))!=0)) goto LA149_;
			n_12 = NIM_NIL;
			n_12 = parseSmiley__packagesZdocutilsZrst_u10556(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA151_;
			{
				if (!!((n_12 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL)))) goto LA154_;
				add__packagesZdocutilsZrstast_u463(father_p1, n_12);
				if (NIM_UNLIKELY(*nimErr_)) goto LA151_;
				eqdestroy___packagesZdocutilsZrstast_u285(n_12);
				if (NIM_UNLIKELY(*nimErr_)) goto LA138_;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___packagesZdocutilsZrstast_u285(n_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto BeforeRet_;
			}
LA154_: ;
			{
				LA151_:;
			}
			{
				oldNimErrFin151_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(n_12);
				if (NIM_UNLIKELY(*nimErr_)) goto LA138_;
				*nimErr_ = oldNimErrFin151_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA138_;
		}
LA149_: ;
		colontmpD__3 = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA138_;
		add__packagesZdocutilsZrstast_u463(father_p1, colontmpD__3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA138_;
		(*p_p0).idx += ((NI)1);
		{
			LA138_:;
		}
		{
			oldNimErrFin138_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin138_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	default:
	{
	}
	break;
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrstast_u285(n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, parseLine__packagesZdocutilsZrst_u11583)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		while (1) {
			switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5):
			{
				parseInline__packagesZdocutilsZrst_u11440(p_p0, father_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			break;
			default:
			{
				goto LA1;
			}
			break;
			}
		}
	} LA1: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, getWrappableIndent__packagesZdocutilsZrst_u11609)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	{
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA3_;
		result = (*p_p0).tok.p->data[(*p_p0).idx].ival;
	}
	goto LA1_;
LA3_: ;
	{
		NI nextIndent_1;
		NI T6_;
		T6_ = (NI)0;
		T6_ = tokenAfterNewline__packagesZdocutilsZrst_u11606(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nextIndent_1 = (*p_p0).tok.p->data[(NI)(T6_ - ((NI)1))].ival;
		{
			NI T9_;
			T9_ = (NI)0;
			T9_ = currInd__packagesZdocutilsZrst_u3883(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(nextIndent_1 <= T9_)) goto LA10_;
			result = (*p_p0).tok.p->data[(*p_p0).idx].col;
		}
		goto LA7_;
LA10_: ;
		{
			if (!((*p_p0).tok.p->data[(*p_p0).idx].col <= nextIndent_1)) goto LA13_;
			result = (*p_p0).tok.p->data[(*p_p0).idx].col;
		}
		goto LA7_;
LA13_: ;
		{
			result = nextIndent_1;
		}
LA7_: ;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseField__packagesZdocutilsZrst_u11650)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* fieldname_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* fieldbody_1;
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T2_;
	tySequence__LqZapiAqCFeXPQZdoIAUew T3_;
	NI col_1;
	tySequence__LqZapiAqCFeXPQZdoIAUew T4_;
	tySequence__LqZapiAqCFeXPQZdoIAUew T5_;
	NI indent_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	fieldname_1 = NIM_NIL;
	fieldbody_1 = NIM_NIL;
	T2_ = lineInfo__packagesZdocutilsZrst_u4108((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T3_.len = 0; T3_.p = NIM_NIL;
	T3_.len = 0; T3_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	result = newRstNode__packagesZdocutilsZrstast_u370(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)16), T2_, T3_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	col_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
	T4_.len = 0; T4_.p = NIM_NIL;
	T4_.len = 0; T4_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	fieldname_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)17), T4_, TM__6mNpeIAN05DnDNzb9b3611A_523);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	parseUntil__packagesZdocutilsZrst_u10894(p_p0, fieldname_1, TM__6mNpeIAN05DnDNzb9b3611A_524, NIM_FALSE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T5_.len = 0; T5_.p = NIM_NIL;
	T5_.len = 0; T5_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	fieldbody_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)18), T5_, TM__6mNpeIAN05DnDNzb9b3611A_525);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA8_;
		(*p_p0).idx += ((NI)1);
	}
LA8_: ;
	indent_1 = getWrappableIndent__packagesZdocutilsZrst_u11609((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!(col_1 < indent_1)) goto LA12_;
		pushInd__packagesZdocutilsZrst_u3889(p_p0, indent_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		parseSection__packagesZdocutilsZrst_u11589(p_p0, fieldbody_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		popInd__packagesZdocutilsZrst_u3896(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA12_: ;
	add__packagesZdocutilsZrstast_u463(result, fieldname_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__packagesZdocutilsZrstast_u463(result, fieldbody_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrstast_u285(fieldbody_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZrstast_u285(fieldname_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseFields__packagesZdocutilsZrst_u11666)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	NIM_BOOL atStart_1;
	NIM_BOOL T1_;
NIM_BOOL oldNimErrFin23_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	T1_ = (NIM_BOOL)0;
	T1_ = ((*p_p0).idx == ((NI)0));
	if (!(T1_)) goto LA2_;
	T1_ = eqStrings((*p_p0).tok.p->data[((NI)0)].symbol, TM__6mNpeIAN05DnDNzb9b3611A_521);
LA2_: ;
	atStart_1 = T1_;
	{
		NIM_BOOL T5_;
		NIM_BOOL T6_;
		NI colontmpD_;
		NI colontmpD__2;
		NI col_1;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T16_;
		T5_ = (NIM_BOOL)0;
		T6_ = (NIM_BOOL)0;
		T6_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
		if (!(T6_)) goto LA7_;
		T6_ = eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_522);
LA7_: ;
		T5_ = T6_;
		if (T5_) goto LA8_;
		T5_ = atStart_1;
LA8_: ;
		if (!T5_) goto LA9_;
		colontmpD_ = (NI)0;
		colontmpD__2 = (NI)0;
		{
			if (!atStart_1) goto LA13_;
			colontmpD_ = (*p_p0).tok.p->data[(*p_p0).idx].col;
			col_1 = colontmpD_;
		}
		goto LA11_;
LA13_: ;
		{
			colontmpD__2 = (*p_p0).tok.p->data[(*p_p0).idx].ival;
			col_1 = colontmpD__2;
		}
LA11_: ;
		T16_ = NIM_NIL;
		T16_ = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)15));
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T16_); goto BeforeRet_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T16_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			if (!!(atStart_1)) goto LA19_;
			(*p_p0).idx += ((NI)1);
		}
LA19_: ;
		{
			while (1) {
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
				colontmpD__3 = NIM_NIL;
				colontmpD__3 = parseField__packagesZdocutilsZrst_u11650(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
				add__packagesZdocutilsZrstast_u463(result, colontmpD__3);
				if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
				{
					NIM_BOOL T26_;
					NIM_BOOL T27_;
					T26_ = (NIM_BOOL)0;
					T27_ = (NIM_BOOL)0;
					T27_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
					if (!(T27_)) goto LA28_;
					T27_ = ((*p_p0).tok.p->data[(*p_p0).idx].ival == col_1);
LA28_: ;
					T26_ = T27_;
					if (!(T26_)) goto LA29_;
					T26_ = eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_526);
LA29_: ;
					if (!T26_) goto LA30_;
					(*p_p0).idx += ((NI)1);
				}
				goto LA24_;
LA30_: ;
				{
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto LA21;
				}
LA24_: ;
				{
					LA23_:;
				}
				{
					oldNimErrFin23_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin23_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
		} LA21: ;
	}
LA9_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDirective__packagesZdocutilsZrst_u13979)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w k_p1, tySet_tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA flags_p2) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* args_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* options_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	args_1 = NIM_NIL;
	options_1 = NIM_NIL;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, k_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T6_;
		if (!(k_p1 == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)55))) goto LA4_;
		nimZeroMem((void*)(&T6_), sizeof(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
		T6_ = lineInfo__packagesZdocutilsZrst_u4108((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*result)._kind_8.info = T6_;
	}
LA4_: ;
	args_1 = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	options_1 = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	{
		tySequence__LqZapiAqCFeXPQZdoIAUew T11_;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T12_;
		if (!((flags_p2 &((NU8)1<<((NU)((((tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA)0)))&7U)))!=0)) goto LA9_;
		T11_.len = 0; T11_.p = NIM_NIL;
		T11_.len = 0; T11_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		T12_ = NIM_NIL;
		T12_ = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)49), T11_, TM__6mNpeIAN05DnDNzb9b3611A_253);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T12_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&args_1, T12_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			if (!((flags_p2 &((NU8)1<<((NU)((((tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA)2)))&7U)))!=0)) goto LA15_;
			{
				while (1) {
					switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
					case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3):
					case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6):
					case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5):
					case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4):
					{
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
						colontmpD_ = NIM_NIL;
						colontmpD_ = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						add__packagesZdocutilsZrstast_u463(args_1, colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						(*p_p0).idx += ((NI)1);
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					}
					break;
					default:
					{
						goto LA17;
					}
					break;
					}
				}
			} LA17: ;
		}
		goto LA13_;
LA15_: ;
		{
			if (!((flags_p2 &((NU8)1<<((NU)((((tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA)3)))&7U)))!=0)) goto LA22_;
			{
				while (1) {
					if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA25;
					(*p_p0).idx += ((NI)1);
				} LA25: ;
			}
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3))) goto LA28_;
				colontmpD__2 = NIM_NIL;
				colontmpD__2 = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				add__packagesZdocutilsZrstast_u463(args_1, colontmpD__2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				(*p_p0).idx += ((NI)1);
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
			goto LA26_;
LA28_: ;
			{
				eqsink___packagesZdocutilsZrstast_u294(&args_1, ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
LA26_: ;
		}
		goto LA13_;
LA22_: ;
		{
			parseLine__packagesZdocutilsZrst_u11583(p_p0, args_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA13_: ;
	}
LA9_: ;
	add__packagesZdocutilsZrstast_u463(result, args_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!((flags_p2 &((NU8)1<<((NU)((((tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA)1)))&7U)))!=0)) goto LA34_;
		{
			NIM_BOOL T38_;
			NIM_BOOL T39_;
			NI T41_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T45_;
			T38_ = (NIM_BOOL)0;
			T39_ = (NIM_BOOL)0;
			T39_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
			if (!(T39_)) goto LA40_;
			T41_ = (NI)0;
			T41_ = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			T39_ = (T41_ < (*p_p0).tok.p->data[(*p_p0).idx].ival);
LA40_: ;
			T38_ = T39_;
			if (!(T38_)) goto LA42_;
			T38_ = eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_520);
LA42_: ;
			if (!T38_) goto LA43_;
			pushInd__packagesZdocutilsZrst_u3889(p_p0, (*p_p0).tok.p->data[(*p_p0).idx].ival);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			T45_ = NIM_NIL;
			T45_ = parseFields__packagesZdocutilsZrst_u11666(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T45_); goto LA1_;}
			eqsink___packagesZdocutilsZrstast_u294(&options_1, T45_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			popInd__packagesZdocutilsZrst_u3896(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA43_: ;
	}
LA34_: ;
	add__packagesZdocutilsZrstast_u463(result, options_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrstast_u285(options_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZrstast_u285(args_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, indFollows__packagesZdocutilsZrst_u11625)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NI T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T1_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
	if (!(T1_)) goto LA2_;
	T3_ = (NI)0;
	T3_ = currInd__packagesZdocutilsZrst_u3883(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = (T3_ < (*p_p0).tok.p->data[(*p_p0).idx].ival);
LA2_: ;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, parseBlockContent__packagesZdocutilsZrst_u11632)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** father_p1, tyProc__8Zd0E1yWTzZDu9cMv4ASRug contentParser_p2) {
	NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	{
		NIM_BOOL T3_;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* content_1;
		NI blockIndent_1;
		T3_ = (NIM_BOOL)0;
		T3_ = !(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1)));
		if (T3_) goto LA4_;
		T3_ = indFollows__packagesZdocutilsZrst_u11625((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA4_: ;
		if (!T3_) goto LA5_;
		content_1 = NIM_NIL;
		blockIndent_1 = getWrappableIndent__packagesZdocutilsZrst_u11609((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		pushInd__packagesZdocutilsZrst_u3889(p_p0, blockIndent_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		content_1 = contentParser_p2(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		popInd__packagesZdocutilsZrst_u3896(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		add__packagesZdocutilsZrstast_u463((*father_p1), content_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		result = NIM_TRUE;
		eqdestroy___packagesZdocutilsZrstast_u285(content_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA5_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDirective__packagesZdocutilsZrst_u14034)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w k_p1, tySet_tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA flags_p2, tyProc__8Zd0E1yWTzZDu9cMv4ASRug contentParser_p3) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseDirective__packagesZdocutilsZrst_u13979(p_p0, k_p1, flags_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = !((contentParser_p3 == 0));
		if (!(T3_)) goto LA4_;
		T3_ = parseBlockContent__packagesZdocutilsZrst_u11632(p_p0, &result, contentParser_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA4_: ;
		if (!T3_) goto LA5_;
	}
	goto LA1_;
LA5_: ;
	{
		add__packagesZdocutilsZrstast_u463(result, ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirAdmonition__packagesZdocutilsZrst_u14105)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 d_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tySet_tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = 0;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)56), T1_, parseSectionWrapper__packagesZdocutilsZrst_u11643);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqcopy___system_u2694((&(*result)._kind_4.adType), d_p1);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirCodeBlock__packagesZdocutilsZrst_u14080)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL nimExtension_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)55), 3, parseLiteralBlock__packagesZdocutilsZrst_u11743);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	mayLoadFile__packagesZdocutilsZrst_u11070((&(*p_p0)), &result);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!nimExtension_p1) goto LA3_;
		defaultCodeLangNim__packagesZdocutilsZrst_u11085((&(*p_p0)), &result);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirContainer__packagesZdocutilsZrst_u14084)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)59), 1, parseSectionWrapper__packagesZdocutilsZrst_u11643);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirContents__packagesZdocutilsZrst_u14099)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)52), 1, NIM_NIL);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*(*p_p0).s).hasToc = NIM_TRUE;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirDefaultRole__packagesZdocutilsZrst_u14109)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w T8_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)76), 1, NIM_NIL);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI T3_;
		NimStringV2 T6_;
		T3_ = (NI)0;
		T3_ = len__packagesZdocutilsZrstast_u114((*result).sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(T3_ == ((NI)0))) goto LA4_;
		T6_.len = 0; T6_.p = NIM_NIL;
		T6_ = defaultRole__packagesZdocutilsZrst_u841((*(*p_p0).s).options);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T6_); goto BeforeRet_;}
		eqsink___system_u2700((&(*(*p_p0).s).currRole), T6_);
	}
	goto LA1_;
LA4_: ;
	{
		eqcopy___system_u2694((&(*(*p_p0).s).currRole), (*(*(*result).sons.p->data[((NI)0)]).sons.p->data[((NI)0)])._kind_1.text);
	}
LA1_: ;
	T8_ = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
	T8_ = whichRole__packagesZdocutilsZrst_u10377((&(*p_p0)), (*(*p_p0).s).currRole);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*(*p_p0).s).currRoleKind = T8_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirFigure__packagesZdocutilsZrst_u14093)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)54), 7, parseSectionWrapper__packagesZdocutilsZrst_u11643);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirImage__packagesZdocutilsZrst_u14090)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)53), 7, NIM_NIL);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u15035)(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* dest_p0, tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* src_p1) {
	(*dest_p0).used = (*src_p1).used;
	(*dest_p0).fromInfo.line = (*src_p1).fromInfo.line;
	(*dest_p0).fromInfo.col = (*src_p1).fromInfo.col;
	(*dest_p0).fromInfo.fileIndex = (*src_p1).fromInfo.fileIndex;
	if ((*dest_p0).idxPath.p != (*src_p1).idxPath.p) {	eqdestroy___system_u2691((*dest_p0).idxPath);
	}
(*dest_p0).idxPath.len = (*src_p1).idxPath.len; (*dest_p0).idxPath.p = (*src_p1).idxPath.p;
	if ((*dest_p0).linkRelPath.p != (*src_p1).linkRelPath.p) {	eqdestroy___system_u2691((*dest_p0).linkRelPath);
	}
(*dest_p0).linkRelPath.len = (*src_p1).linkRelPath.len; (*dest_p0).linkRelPath.p = (*src_p1).linkRelPath.p;
	if ((*dest_p0).title.p != (*src_p1).title.p) {	eqdestroy___system_u2691((*dest_p0).title);
	}
(*dest_p0).title.len = (*src_p1).title.len; (*dest_p0).title.p = (*src_p1).title.p;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u15023)(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* dest_p0) {
	(*dest_p0).used = 0;
	(*dest_p0).fromInfo.line = 0;
	(*dest_p0).fromInfo.col = 0;
	(*dest_p0).fromInfo.fileIndex = 0;
	(*dest_p0).idxPath.len = 0; (*dest_p0).idxPath.p = NIM_NIL;
	(*dest_p0).linkRelPath.len = 0; (*dest_p0).linkRelPath.p = NIM_NIL;
	(*dest_p0).title.len = 0; (*dest_p0).title.p = NIM_NIL;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rmSpaces__packagesZdocutilsZrst_u14160)(NimStringV2 s_p0) {
	NimStringV2 result;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD_ = nsuSplitCharSet(s_p0, TM__6mNpeIAN05DnDNzb9b3611A_528, ((NI)-1));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = nsuJoinSep(((colontmpD_).p) ? (colontmpD_.p->data) : NIM_NIL, colontmpD_.len, TM__6mNpeIAN05DnDNzb9b3611A_529);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___system_u5506(colontmpD_);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirImportdoc__packagesZdocutilsZrst_u14142)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ filenames_1;
	tySet_tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	filenames_1.len = 0; filenames_1.p = NIM_NIL;
	T2_ = 0;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)48), T2_, parseLiteralBlock__packagesZdocutilsZrst_u11743);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	filenames_1 = nsuSplitCharSet((*(*(*result).sons.p->data[((NI)2)]).sons.p->data[((NI)0)])._kind_1.text, TM__6mNpeIAN05DnDNzb9b3611A_527, ((NI)-1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NimStringV2* origFilename_1;
		NI i_1;
		NI L_1;
		NI T4_;
		origFilename_1 = (NimStringV2*)0;
		i_1 = ((NI)0);
		T4_ = filenames_1.len;
		L_1 = T4_;
		{
			while (1) {
				NimStringV2 colontmpD_;
				tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ T7_;
				if (!(i_1 < L_1)) goto LA6;
				colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
				origFilename_1 = (&filenames_1.p->data[i_1]);
				colontmpD_ = rmSpaces__packagesZdocutilsZrst_u14160((*origFilename_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				nimZeroMem((void*)(&T7_), sizeof(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ));
				T7_.fromInfo = lineInfo__packagesZdocutilsZrst_u4108((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				X5BX5Deq___packagesZdocutilsZrst_u14203((&(*(*p_p0).s).idxImports), colontmpD_, (&T7_));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				i_1 += ((NI)1);
				eqdestroy___system_u2691(colontmpD_);
			} LA6: ;
		}
	}
	{
		LA1_:;
	}
	{
		eqdestroy___system_u5506(filenames_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirInclude__packagesZdocutilsZrst_u14047)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_1;
	NimStringV2 filename_1;
	NimStringV2 colontmpD_;
	NimStringV2 path_1;
NIM_BOOL oldNimErrFin12_;
NIM_BOOL oldNimErrFin18_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	n_1 = NIM_NIL;
	filename_1.len = 0; filename_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	path_1.len = 0; path_1.p = NIM_NIL;
	result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	n_1 = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)48), 7, NIM_NIL);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = addNodes__packagesZdocutilsZrst_u80((*n_1).sons.p->data[((NI)0)]);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	filename_1 = nsuStrip(colontmpD_, NIM_TRUE, NIM_TRUE, TM__6mNpeIAN05DnDNzb9b3611A_528);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	path_1 = findRelativeFile__packagesZdocutilsZrst_u3778((&(*p_p0)), filename_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!(path_1.len == 0)) goto LA4_;
		rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)0), filename_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA4_: ;
	{
		NimStringV2 colontmpD__2;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		{
			NimStringV2 colontmpD__3;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__4;
			tySequence__LqZapiAqCFeXPQZdoIAUew T13_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T14_;
			colontmpD__2 = getFieldValue__packagesZdocutilsZrst_u82(n_1, TM__6mNpeIAN05DnDNzb9b3611A_530);
			if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
			if (!!((colontmpD__2.len == 0))) goto LA10_;
			colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
			colontmpD__4 = NIM_NIL;
			T13_.len = 0; T13_.p = NIM_NIL;
			T13_.len = 0; T13_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			T14_ = NIM_NIL;
			T14_ = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)26), T13_, TM__6mNpeIAN05DnDNzb9b3611A_531);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T14_); goto LA12_;}
			eqsink___packagesZdocutilsZrstast_u294(&result, T14_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
			colontmpD__3 = readFile__stdZsyncio_u527(path_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
			colontmpD__4 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
			add__packagesZdocutilsZrstast_u463(result, colontmpD__4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
			{
				LA12_:;
			}
			{
				oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
				if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
				eqdestroy___system_u2691(colontmpD__3);
				*nimErr_ = oldNimErrFin12_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		}
		goto LA8_;
LA10_: ;
		{
			NimStringV2 inputString_1;
			NI colontmpD__5;
			NI colontmpD__6;
			tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg q_1;
			NimStringV2 colontmpD__7;
			NI startPosition_1;
			NI endPosition_1;
			NI32 saveFileIdx_1;
			tyObject_HSlice__OAVyDXS0QPw7LdXClfU2hA T41_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T42_;
			inputString_1.len = 0; inputString_1.p = NIM_NIL;
			colontmpD__5 = (NI)0;
			colontmpD__6 = (NI)0;
			nimZeroMem((void*)(&q_1), sizeof(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg));
			q_1.Sup.m_type = (&NTIv2__ZlacgQ8A2qzdbC1x2g4Gkg_);
			colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
			inputString_1 = readFile__stdZsyncio_u527(path_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			{
				NimStringV2 searchFor_1;
				NimStringV2 colontmpD__8;
				NI colontmpD__9;
				NI colontmpD__10;
				searchFor_1.len = 0; searchFor_1.p = NIM_NIL;
				colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
				colontmpD__9 = (NI)0;
				colontmpD__10 = (NI)0;
				colontmpD__8 = getFieldValue__packagesZdocutilsZrst_u82(n_1, TM__6mNpeIAN05DnDNzb9b3611A_533);
				if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
				searchFor_1 = nsuStrip(colontmpD__8, NIM_TRUE, NIM_TRUE, TM__6mNpeIAN05DnDNzb9b3611A_528);
				if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
				{
					NI colontmpD__11;
					NI colontmpD__12;
					NI pos_1;
					if (!!((searchFor_1.len == 0))) goto LA22_;
					colontmpD__11 = (NI)0;
					colontmpD__12 = (NI)0;
					pos_1 = nsuFindStr(inputString_1, searchFor_1, ((NI)0), ((NI)-1));
					if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
					{
						if (!!((pos_1 == ((NI)-1)))) goto LA26_;
						colontmpD__11 = (NI)(pos_1 + searchFor_1.len);
						colontmpD__9 = colontmpD__11;
					}
					goto LA24_;
LA26_: ;
					{
						colontmpD__12 = ((NI)0);
						colontmpD__9 = colontmpD__12;
					}
LA24_: ;
					colontmpD__5 = colontmpD__9;
				}
				goto LA20_;
LA22_: ;
				{
					colontmpD__10 = ((NI)0);
					colontmpD__5 = colontmpD__10;
				}
LA20_: ;
				eqdestroy___system_u2691(colontmpD__8);
				eqdestroy___system_u2691(searchFor_1);
				startPosition_1 = colontmpD__5;
			}
			{
				NimStringV2 searchFor_2;
				NimStringV2 colontmpD__13;
				NI colontmpD__14;
				NI colontmpD__15;
				searchFor_2.len = 0; searchFor_2.p = NIM_NIL;
				colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
				colontmpD__14 = (NI)0;
				colontmpD__15 = (NI)0;
				colontmpD__13 = getFieldValue__packagesZdocutilsZrst_u82(n_1, TM__6mNpeIAN05DnDNzb9b3611A_535);
				if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
				searchFor_2 = nsuStrip(colontmpD__13, NIM_TRUE, NIM_TRUE, TM__6mNpeIAN05DnDNzb9b3611A_528);
				if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
				{
					NI colontmpD__16;
					NI colontmpD__17;
					NI pos_2;
					if (!!((searchFor_2.len == 0))) goto LA33_;
					colontmpD__16 = (NI)0;
					colontmpD__17 = (NI)0;
					pos_2 = nsuFindStr(inputString_1, searchFor_2, (startPosition_1), ((NI)-1));
					if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
					{
						if (!!((pos_2 == ((NI)-1)))) goto LA37_;
						colontmpD__16 = (NI)(pos_2 - ((NI)1));
						colontmpD__14 = colontmpD__16;
					}
					goto LA35_;
LA37_: ;
					{
						colontmpD__17 = ((NI)0);
						colontmpD__14 = colontmpD__17;
					}
LA35_: ;
					colontmpD__6 = colontmpD__14;
				}
				goto LA31_;
LA33_: ;
				{
					colontmpD__15 = (NI)(inputString_1.len - ((NI)1));
					colontmpD__6 = colontmpD__15;
				}
LA31_: ;
				eqdestroy___system_u2691(colontmpD__13);
				eqdestroy___system_u2691(searchFor_2);
				endPosition_1 = colontmpD__6;
			}
			initParser__packagesZdocutilsZrst_u3908((&q_1), (*p_p0).s);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			saveFileIdx_1 = (*(*p_p0).s).currFileIdx;
			setCurrFilename__packagesZdocutilsZrst_u2402((*p_p0).s, path_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			T41_ = dotdot___stdZstrbasics_u49(startPosition_1, endPosition_1);
			colontmpD__7 = X5BX5D___pureZstrutils_u1286(inputString_1, T41_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			getTokens__packagesZdocutilsZrst_u276(colontmpD__7, (&q_1.tok));
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			T42_ = NIM_NIL;
			T42_ = parseDoc__packagesZdocutilsZrst_u12316((&q_1));
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T42_); goto LA18_;}
			eqsink___packagesZdocutilsZrstast_u294(&result, T42_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			(*(*p_p0).s).currFileIdx = saveFileIdx_1;
			{
				LA18_:;
			}
			{
				oldNimErrFin18_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___system_u2691(colontmpD__7);
				eqdestroy___packagesZdocutilsZrst_u12486((&q_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
				eqdestroy___system_u2691(inputString_1);
				*nimErr_ = oldNimErrFin18_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		}
LA8_: ;
		{
			LA7_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__2);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___system_u2691(path_1);
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___system_u2691(filename_1);
		eqdestroy___packagesZdocutilsZrstast_u285(n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirIndex__packagesZdocutilsZrst_u14102)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tySet_tyEnum_DirFlag__WGNDXzQMSLpbZ84vefOCDA T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_ = 0;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)60), T1_, parseSectionWrapper__packagesZdocutilsZrst_u11643);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDirBody__packagesZdocutilsZrst_u14043)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyProc__8Zd0E1yWTzZDu9cMv4ASRug contentParser_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = indFollows__packagesZdocutilsZrst_u11625((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		pushInd__packagesZdocutilsZrst_u3889(p_p0, (*p_p0).tok.p->data[(*p_p0).idx].ival);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		result = contentParser_p1(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		popInd__packagesZdocutilsZrst_u3896(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA4_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, dirRawAux__packagesZdocutilsZrst_u14127)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** result_p1, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w kind_p2, tyProc__8Zd0E1yWTzZDu9cMv4ASRug contentParser_p3) {
	NimStringV2 filename_1;
NIM_BOOL oldNimErrFin12_;
NIM_BOOL oldNimErrFin20_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	filename_1.len = 0; filename_1.p = NIM_NIL;
	filename_1 = getFieldValue__packagesZdocutilsZrst_u82((*result_p1), TM__6mNpeIAN05DnDNzb9b3611A_538);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NimStringV2 path_1;
		if (!(((NI)0) < filename_1.len)) goto LA4_;
		path_1.len = 0; path_1.p = NIM_NIL;
		path_1 = findRelativeFile__packagesZdocutilsZrst_u3778((&(*p_p0)), filename_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		{
			if (!(path_1.len == ((NI)0))) goto LA9_;
			rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)0), filename_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		}
		goto LA7_;
LA9_: ;
		{
			NimStringV2 f_1;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
			tySequence__LqZapiAqCFeXPQZdoIAUew T13_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T14_;
			f_1.len = 0; f_1.p = NIM_NIL;
			colontmpD_ = NIM_NIL;
			f_1 = readFile__stdZsyncio_u527(path_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
			T13_.len = 0; T13_.p = NIM_NIL;
			T13_.len = 0; T13_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			T14_ = NIM_NIL;
			T14_ = newRstNode__packagesZdocutilsZrstast_u121(kind_p2, T13_, TM__6mNpeIAN05DnDNzb9b3611A_539);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T14_); goto LA12_;}
			eqsink___packagesZdocutilsZrstast_u294(&(*result_p1), T14_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
			colontmpD_ = newRstLeaf__packagesZdocutilsZrstast_u454(f_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
			add__packagesZdocutilsZrstast_u463((*result_p1), colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
			{
				LA12_:;
			}
			{
				oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
				eqdestroy___system_u2691(f_1);
				*nimErr_ = oldNimErrFin12_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
		}
LA7_: ;
		{
			LA6_:;
		}
		{
			eqdestroy___system_u2691(path_1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA4_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T21_;
		colontmpD__2 = NIM_NIL;
		T21_ = NIM_NIL;
		T21_ = newRstNode__packagesZdocutilsZrstast_u121(kind_p2, (*(*result_p1)).sons, TM__6mNpeIAN05DnDNzb9b3611A_540);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T21_); goto LA20_;}
		eqsink___packagesZdocutilsZrstast_u294(&(*result_p1), T21_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		colontmpD__2 = parseDirBody__packagesZdocutilsZrst_u14043(p_p0, contentParser_p3);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		add__packagesZdocutilsZrstast_u463((*result_p1), colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
		{
			LA20_:;
		}
		{
			oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin20_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(filename_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirRaw__packagesZdocutilsZrst_u14135)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseDirective__packagesZdocutilsZrst_u13979(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)48), 11);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!!(((*result).sons.p->data[((NI)0)] == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL)))) goto LA3_;
		{
			NI T7_;
			T7_ = (NI)0;
			T7_ = nsuCmpIgnoreCase((*(*(*result).sons.p->data[((NI)0)]).sons.p->data[((NI)0)])._kind_1.text, TM__6mNpeIAN05DnDNzb9b3611A_537);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T7_ == ((NI)0))) goto LA8_;
			dirRawAux__packagesZdocutilsZrst_u14127(p_p0, &result, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)57), parseLiteralBlock__packagesZdocutilsZrst_u11743);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA5_;
LA8_: ;
		{
			NI T11_;
			T11_ = (NI)0;
			T11_ = nsuCmpIgnoreCase((*(*(*result).sons.p->data[((NI)0)]).sons.p->data[((NI)0)])._kind_1.text, TM__6mNpeIAN05DnDNzb9b3611A_542);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T11_ == ((NI)0))) goto LA12_;
			dirRawAux__packagesZdocutilsZrst_u14127(p_p0, &result, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)58), parseLiteralBlock__packagesZdocutilsZrst_u11743);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA5_;
LA12_: ;
		{
			rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)8), (*(*(*result).sons.p->data[((NI)0)]).sons.p->data[((NI)0)])._kind_1.text);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA5_: ;
	}
	goto LA1_;
LA3_: ;
	{
		dirRawAux__packagesZdocutilsZrst_u14127(p_p0, &result, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)50), parseSectionWrapper__packagesZdocutilsZrst_u11643);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirRole__packagesZdocutilsZrst_u14119)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	NimStringV2 lang_1;
	NimStringV2 colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	lang_1.len = 0; lang_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)48), 3, NIM_NIL);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = getFieldValue__packagesZdocutilsZrst_u82(result, TM__6mNpeIAN05DnDNzb9b3611A_544);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	lang_1 = nsuStrip(colontmpD_, NIM_TRUE, NIM_TRUE, TM__6mNpeIAN05DnDNzb9b3611A_528);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T4_;
		tyEnum_SourceLanguage__19c0ssteZ7RkUhs6XPCRBNA T6_;
		T4_ = (NIM_BOOL)0;
		T4_ = !((lang_1.len == 0));
		if (!(T4_)) goto LA5_;
		T6_ = (tyEnum_SourceLanguage__19c0ssteZ7RkUhs6XPCRBNA)0;
		T6_ = getSourceLanguage__packagesZdocutilsZhighlite_u72(lang_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T4_ = (T6_ == ((tyEnum_SourceLanguage__19c0ssteZ7RkUhs6XPCRBNA)0));
LA5_: ;
		if (!T4_) goto LA7_;
		rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)15), lang_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA7_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___system_u2691(lang_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, dirTitle__packagesZdocutilsZrst_u14096)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseDirective__packagesZdocutilsZrst_u14034(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)51), 1, NIM_NIL);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, selectDir__packagesZdocutilsZrst_u15430)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 d_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg tok_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	nimZeroMem((void*)(&tok_1), sizeof(tyObject_Token__HwlbnU8nwBNhIh4LCAOeTg));
	result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	eqcopy___packagesZdocutilsZrst_u342((&tok_1), (&(*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)2))]));
	{
		if (!!((((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)5)))&7U)))!=0))) goto LA4_;
		{
			NIM_BOOL T8_;
			T8_ = (NIM_BOOL)0;
			T8_ = contains__stdZenumutils_u51(SandboxDirAllowlist__packagesZdocutilsZrst_u90, 20, d_p1);
			if (!!(T8_)) goto LA9_;
			rstMessage__packagesZdocutilsZrst_u3813((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)19), d_p1, tok_1.line, tok_1.col);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA9_: ;
	}
LA4_: ;
	switch (hashString(d_p1) & 31) {
	case 4: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_236)) goto LA18_;
break;
	case 5: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_229)) goto LA11_;
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_251)) goto LA30_;
break;
	case 7: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_239)) goto LA21_;
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_240)) goto LA22_;
break;
	case 8: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_250)) goto LA29_;
break;
	case 9: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_245)) goto LA25_;
break;
	case 10: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_227)) goto LA11_;
break;
	case 11: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_228)) goto LA11_;
break;
	case 13: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_242)) goto LA23_;
break;
	case 15: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_230)) goto LA12_;
break;
	case 16: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_244)) goto LA24_;
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_252)) goto LA31_;
break;
	case 17: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_231)) goto LA13_;
break;
	case 20: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_232)) goto LA14_;
break;
	case 23: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_246)) goto LA26_;
break;
	case 24: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_237)) goto LA19_;
break;
	case 25: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_234)) goto LA16_;
break;
	case 27: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_238)) goto LA20_;
break;
	case 28: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_233)) goto LA15_;
break;
	case 29: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_235)) goto LA17_;
break;
	case 30: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_249)) goto LA28_;
break;
	case 31: 
if (eqStrings(d_p1, TM__6mNpeIAN05DnDNzb9b3611A_248)) goto LA27_;
break;
	}
	goto LA32_;
	LA11_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T35_;
		T35_ = NIM_NIL;
		T35_ = dirAdmonition__packagesZdocutilsZrst_u14105(p_p0, d_p1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T35_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T35_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA12_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T37_;
		T37_ = NIM_NIL;
		T37_ = dirCodeBlock__packagesZdocutilsZrst_u14080(p_p0, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T37_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T37_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA13_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T39_;
		T39_ = NIM_NIL;
		T39_ = dirCodeBlock__packagesZdocutilsZrst_u14080(p_p0, NIM_TRUE);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T39_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T39_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA14_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T41_;
		T41_ = NIM_NIL;
		T41_ = dirContainer__packagesZdocutilsZrst_u14084(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T41_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T41_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA15_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T43_;
		T43_ = NIM_NIL;
		T43_ = dirContents__packagesZdocutilsZrst_u14099(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T43_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T43_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA16_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T45_;
		T45_ = NIM_NIL;
		T45_ = dirAdmonition__packagesZdocutilsZrst_u14105(p_p0, d_p1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T45_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T45_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA17_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T47_;
		T47_ = NIM_NIL;
		T47_ = dirDefaultRole__packagesZdocutilsZrst_u14109(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T47_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T47_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA18_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T49_;
		T49_ = NIM_NIL;
		T49_ = dirAdmonition__packagesZdocutilsZrst_u14105(p_p0, d_p1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T49_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T49_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA19_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T51_;
		T51_ = NIM_NIL;
		T51_ = dirFigure__packagesZdocutilsZrst_u14093(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T51_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T51_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA20_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T53_;
		T53_ = NIM_NIL;
		T53_ = dirAdmonition__packagesZdocutilsZrst_u14105(p_p0, d_p1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T53_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T53_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA21_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T55_;
		T55_ = NIM_NIL;
		T55_ = dirImage__packagesZdocutilsZrst_u14090(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T55_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T55_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA22_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T57_;
		T57_ = NIM_NIL;
		T57_ = dirAdmonition__packagesZdocutilsZrst_u14105(p_p0, d_p1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T57_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T57_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA23_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T59_;
		T59_ = NIM_NIL;
		T59_ = dirImportdoc__packagesZdocutilsZrst_u14142(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T59_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T59_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA24_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T61_;
		T61_ = NIM_NIL;
		T61_ = dirInclude__packagesZdocutilsZrst_u14047(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T61_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T61_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA25_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T63_;
		T63_ = NIM_NIL;
		T63_ = dirIndex__packagesZdocutilsZrst_u14102(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T63_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T63_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA26_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T65_;
		T65_ = NIM_NIL;
		T65_ = dirAdmonition__packagesZdocutilsZrst_u14105(p_p0, d_p1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T65_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T65_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA27_: ;
	{
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T71_;
			if (!(((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)1)))&7U)))!=0)) goto LA69_;
			T71_ = NIM_NIL;
			T71_ = dirRaw__packagesZdocutilsZrst_u14135(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T71_); goto LA1_;}
			eqsink___packagesZdocutilsZrstast_u294(&result, T71_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
		goto LA67_;
LA69_: ;
		{
			rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)8), d_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
LA67_: ;
	}
	goto LA33_;
	LA28_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T74_;
		T74_ = NIM_NIL;
		T74_ = dirRole__packagesZdocutilsZrst_u14119(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T74_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T74_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA29_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T76_;
		T76_ = NIM_NIL;
		T76_ = dirAdmonition__packagesZdocutilsZrst_u14105(p_p0, d_p1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T76_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T76_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA30_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T78_;
		T78_ = NIM_NIL;
		T78_ = dirTitle__packagesZdocutilsZrst_u14096(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T78_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T78_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA31_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T80_;
		T80_ = NIM_NIL;
		T80_ = dirAdmonition__packagesZdocutilsZrst_u14105(p_p0, d_p1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T80_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T80_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA33_;
	LA32_: ;
	{
		rstMessage__packagesZdocutilsZrst_u3813((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)8), d_p1, tok_1.line, tok_1.col);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA33_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___packagesZdocutilsZrst_u339((&tok_1));
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, getReferenceName__packagesZdocutilsZrst_u10039)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 endStr_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* res_1;
	tySequence__LqZapiAqCFeXPQZdoIAUew T2_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	res_1 = NIM_NIL;
	T2_.len = 0; T2_.p = NIM_NIL;
	T2_.len = 0; T2_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	res_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T2_, TM__6mNpeIAN05DnDNzb9b3611A_550);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		while (1) {
			switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
				colontmpD_ = NIM_NIL;
				colontmpD_ = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				add__packagesZdocutilsZrstast_u463(res_1, colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			}
			break;
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5):
			{
				{
					if (!eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, endStr_p1)) goto LA9_;
					(*p_p0).idx += ((NI)1);
					goto LA3;
				}
				goto LA7_;
LA9_: ;
				{
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
					colontmpD__2 = NIM_NIL;
					colontmpD__2 = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					add__packagesZdocutilsZrstast_u463(res_1, colontmpD__2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				}
LA7_: ;
			}
			break;
			default:
			{
				rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)1), endStr_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				goto LA3;
			}
			break;
			}
			(*p_p0).idx += ((NI)1);
		}
	} LA3: ;
	result = res_1;
	eqwasMoved___packagesZdocutilsZrstast_u282(&res_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrstast_u285(res_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, untilEol__packagesZdocutilsZrst_u10054)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tySequence__LqZapiAqCFeXPQZdoIAUew T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_.len = 0; T1_.p = NIM_NIL;
	T1_.len = 0; T1_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T1_, TM__6mNpeIAN05DnDNzb9b3611A_554);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		while (1) {
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
			if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA3;
			colontmpD_ = NIM_NIL;
			colontmpD_ = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			add__packagesZdocutilsZrstast_u463(result, colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*p_p0).idx += ((NI)1);
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		} LA3: ;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, expect__packagesZdocutilsZrst_u10067)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 tok_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		if (!eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, tok_p1)) goto LA3_;
		(*p_p0).idx += ((NI)1);
	}
	goto LA1_;
LA3_: ;
	{
		rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)1), tok_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, setSub__packagesZdocutilsZrst_u4114)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 key_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* value_p2) {
	NimStringV2 colontmpD_;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
	NI length_1;
	NI T1_;
	tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A T9_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (*(*p_p0).s).subs.len;
	length_1 = T1_;
	{
		NI i_1;
		NI i_2;
		i_1 = (NI)0;
		i_2 = ((NI)0);
		{
			while (1) {
				if (!(i_2 < length_1)) goto LA4;
				i_1 = i_2;
				{
					if (!eqStrings(key_p1, (*(*p_p0).s).subs.p->data[i_1].key)) goto LA7_;
					eqcopy___packagesZdocutilsZrstast_u288(&(*(*p_p0).s).subs.p->data[i_1].value, value_p2);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto BeforeRet_;
				}
LA7_: ;
				i_2 += ((NI)1);
			} LA4: ;
		}
	}
	nimZeroMem((void*)(&T9_), sizeof(tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A));
	nimZeroMem((void*)(&T9_), sizeof(tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A));
	colontmpD_ = eqdup___system_u2697(key_p1);
	T9_.key = colontmpD_;
	colontmpD__2 = eqdup___packagesZdocutilsZrstast_u291(value_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T9_.value = colontmpD__2;
	T9_.info = prevLineInfo__packagesZdocutilsZrst_u4111((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrst_u4127((&(*(*p_p0).s).subs), (&T9_));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, prefix__packagesZdocutilsZrst_u13845)(tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g ftnType_p0) {
	NimStringV2 result;
	switch (ftnType_p0) {
	case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)0):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_567;
	}
	break;
	case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)1):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_569;
	}
	break;
	case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)2):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_570;
	}
	break;
	case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)3):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_572;
	}
	break;
	case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)4):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_574;
	}
	break;
	default: __builtin_unreachable();
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addFootnoteNumManual__packagesZdocutilsZrst_u8129)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI num_p1) {
	tyTuple__4Ywt2LYBMs9aMJ09cL7digow T12_;
	NimStringV2 T13_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		tyTuple__4Ywt2LYBMs9aMJ09cL7digow* fnote_1;
		NI i_1;
		NI L_1;
		NI T2_;
		fnote_1 = (tyTuple__4Ywt2LYBMs9aMJ09cL7digow*)0;
		i_1 = ((NI)0);
		T2_ = (*(*p_p0).s).footnotes.len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				fnote_1 = (&(*(*p_p0).s).footnotes.p->data[i_1]);
				{
					NimStringV2 colontmpD_;
					if (!((*fnote_1).Field1 == num_p1)) goto LA7_;
					colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
					colontmpD_ = dollar___systemZdollars_u9(num_p1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)11), colontmpD_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					eqdestroy___system_u2691(colontmpD_);
					goto BeforeRet_;
					{
						LA9_:;
					}
					{
						eqdestroy___system_u2691(colontmpD_);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
LA7_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	T12_.Field0 = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)0);
	T12_.Field1 = num_p1;
	T12_.Field2 = ((NI)-1);
	T12_.Field3 = ((NI)-1);
	T13_.len = 0; T13_.p = NIM_NIL;
	T13_ = dollar___systemZdollars_u9(num_p1);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T13_); goto BeforeRet_;}
	T12_.Field4 = T13_;
	add__packagesZdocutilsZrst_u8152((&(*(*p_p0).s).footnotes), (&T12_));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addFootnoteNumAuto__packagesZdocutilsZrst_u8210)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NimStringV2 label_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NimStringV2 colontmpD_;
		tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T5_;
		tyTuple__4Ywt2LYBMs9aMJ09cL7digow T6_;
		NI T7_;
		if (!(label_p1.len == 0)) goto LA3_;
		T5_ = lineInfo__packagesZdocutilsZrst_u4108((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		add__packagesZdocutilsZrst_u8213((&(*(*p_p0).s).lineFootnoteNum), T5_);
		T6_.Field0 = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)1);
		T6_.Field1 = ((NI)-1);
		T7_ = (*(*p_p0).s).lineFootnoteNum.len;
		T6_.Field2 = T7_;
		T6_.Field3 = ((NI)-1);
		colontmpD_ = eqdup___system_u2697(label_p1);
		T6_.Field4 = colontmpD_;
		add__packagesZdocutilsZrst_u8152((&(*(*p_p0).s).footnotes), (&T6_));
	}
	goto LA1_;
LA3_: ;
	{
		NimStringV2 colontmpD__2;
		tyTuple__4Ywt2LYBMs9aMJ09cL7digow T17_;
		{
			tyTuple__4Ywt2LYBMs9aMJ09cL7digow* fnote_1;
			NI i_1;
			NI L_1;
			NI T10_;
			fnote_1 = (tyTuple__4Ywt2LYBMs9aMJ09cL7digow*)0;
			i_1 = ((NI)0);
			T10_ = (*(*p_p0).s).footnotes.len;
			L_1 = T10_;
			{
				while (1) {
					if (!(i_1 < L_1)) goto LA12;
					fnote_1 = (&(*(*p_p0).s).footnotes.p->data[i_1]);
					{
						if (!eqStrings((*fnote_1).Field4, label_p1)) goto LA15_;
						rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)11), label_p1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto BeforeRet_;
					}
LA15_: ;
					i_1 += ((NI)1);
				} LA12: ;
			}
		}
		T17_.Field0 = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)2);
		T17_.Field1 = ((NI)-1);
		T17_.Field2 = ((NI)-1);
		T17_.Field3 = ((NI)-1);
		colontmpD__2 = eqdup___system_u2697(label_p1);
		T17_.Field4 = colontmpD__2;
		add__packagesZdocutilsZrst_u8152((&(*(*p_p0).s).footnotes), (&T17_));
	}
LA1_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addFootnoteSymAuto__packagesZdocutilsZrst_u8248)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA T1_;
	tyTuple__4Ywt2LYBMs9aMJ09cL7digow T2_;
	NI T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = lineInfo__packagesZdocutilsZrst_u4108((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	add__packagesZdocutilsZrst_u8213((&(*(*p_p0).s).lineFootnoteSym), T1_);
	T2_.Field0 = ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)3);
	T2_.Field1 = ((NI)-1);
	T2_.Field2 = ((NI)-1);
	T3_ = (*(*p_p0).s).lineFootnoteSym.len;
	T2_.Field3 = T3_;
	T2_.Field4 = TM__6mNpeIAN05DnDNzb9b3611A_575;
	add__packagesZdocutilsZrst_u8152((&(*(*p_p0).s).footnotes), (&T2_));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseFootnote__packagesZdocutilsZrst_u13848)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* label_1;
	NimStringV2 name_1;
	NimStringV2 anchor_1;
	tySequence__LqZapiAqCFeXPQZdoIAUew T16_;
	tyTuple__7EQdxYuaZDgtungG7UmspQ tmpTuple_1;
	tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g fnType_1;
	NI i_1;
	NIM_BOOL T37_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	label_1 = NIM_NIL;
	name_1.len = 0; name_1.p = NIM_NIL;
	anchor_1.len = 0; anchor_1.p = NIM_NIL;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = isRst__packagesZdocutilsZrst_u3831((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T4_) goto LA5_;
		(*p_p0).idx += ((NI)1);
	}
LA5_: ;
	label_1 = parseFootnoteName__packagesZdocutilsZrst_u11415(p_p0, NIM_FALSE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		if (!(label_1 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL))) goto LA9_;
		{
			NIM_BOOL T13_;
			T13_ = (NIM_BOOL)0;
			T13_ = isRst__packagesZdocutilsZrst_u3831((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!T13_) goto LA14_;
			(*p_p0).idx -= ((NI)1);
		}
LA14_: ;
		result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
		eqdestroy___system_u2691(anchor_1);
		eqdestroy___system_u2691(name_1);
		eqdestroy___packagesZdocutilsZrstast_u285(label_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		goto BeforeRet_;
	}
LA9_: ;
	T16_.len = 0; T16_.p = NIM_NIL;
	T16_.len = 0; T16_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)38), T16_, TM__6mNpeIAN05DnDNzb9b3611A_564);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__packagesZdocutilsZrstast_u463(result, label_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	tmpTuple_1 = getFootnoteType__packagesZdocutilsZrst_u11352((*p_p0).s, label_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	fnType_1 = tmpTuple_1.Field0;
	i_1 = tmpTuple_1.Field1;
	name_1 = TM__6mNpeIAN05DnDNzb9b3611A_565;
	anchor_1 = prefix__packagesZdocutilsZrst_u13845(fnType_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	switch (fnType_1) {
	case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)0):
	{
		NimStringV2 colontmpD_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		addFootnoteNumManual__packagesZdocutilsZrst_u8129(p_p0, i_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
		colontmpD_ = dollar___systemZdollars_u9(i_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
		prepareAdd((&anchor_1), colontmpD_.len + 0);
appendString((&anchor_1), colontmpD_);
		{
			LA18_:;
		}
		{
			eqdestroy___system_u2691(colontmpD_);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	break;
	case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)1):
	case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)2):
	{
		NimStringV2 T22_;
		T22_.len = 0; T22_.p = NIM_NIL;
		T22_ = rstnodeToRefname__packagesZdocutilsZrst_u78(label_1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T22_); goto LA1_;}
		eqsink___system_u2700((&name_1), T22_);
		addFootnoteNumAuto__packagesZdocutilsZrst_u8210(p_p0, name_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			if (!(fnType_1 == ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)2))) goto LA25_;
			prepareAdd((&anchor_1), name_1.len + 0);
appendString((&anchor_1), name_1);
		}
		goto LA23_;
LA25_: ;
		{
			NimStringV2 colontmpD__2;
			NI T28_;
			colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
			T28_ = (*(*p_p0).s).lineFootnoteNum.len;
			(*result)._kind_6.order = T28_;
			colontmpD__2 = dollar___systemZdollars_u9((*result)._kind_6.order);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			prepareAdd((&anchor_1), colontmpD__2.len + 0);
appendString((&anchor_1), colontmpD__2);
			eqdestroy___system_u2691(colontmpD__2);
		}
LA23_: ;
	}
	break;
	case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)3):
	{
		NimStringV2 colontmpD__3;
		NI T30_;
		NI T31_;
		colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
		addFootnoteSymAuto__packagesZdocutilsZrst_u8248(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T30_ = (*(*p_p0).s).lineFootnoteSym.len;
		(*result)._kind_6.order = T30_;
		T31_ = (*(*p_p0).s).lineFootnoteSym.len;
		colontmpD__3 = dollar___systemZdollars_u9(T31_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		prepareAdd((&anchor_1), colontmpD__3.len + 0);
appendString((&anchor_1), colontmpD__3);
		eqdestroy___system_u2691(colontmpD__3);
	}
	break;
	case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)4):
	{
		NimStringV2 colontmpD__4;
		colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
		colontmpD__4 = rstnodeToRefname__packagesZdocutilsZrst_u78(label_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		prepareAdd((&anchor_1), colontmpD__4.len + 0);
appendString((&anchor_1), colontmpD__4);
		eqdestroy___system_u2691(colontmpD__4);
	}
	break;
	default: __builtin_unreachable();
	}
	addAnchorRst__packagesZdocutilsZrst_u4220(p_p0, anchor_1, result, ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)2));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqsink___system_u2700((&(*result).anchor), anchor_1);
	eqwasMoved___system_u2688((&anchor_1));
	{
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA35_;
		(*p_p0).idx += ((NI)1);
	}
LA35_: ;
	T37_ = (NIM_BOOL)0;
	T37_ = parseBlockContent__packagesZdocutilsZrst_u11632(p_p0, &result, parseSectionWrapper__packagesZdocutilsZrst_u11643);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(void)(T37_);
	{
		NI T40_;
		T40_ = (NI)0;
		T40_ = len__packagesZdocutilsZrstast_u114(result);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!(T40_ < ((NI)2))) goto LA41_;
		add__packagesZdocutilsZrstast_u463(result, ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA41_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___system_u2691(anchor_1);
		eqdestroy___system_u2691(name_1);
		eqdestroy___packagesZdocutilsZrstast_u285(label_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseComment__packagesZdocutilsZrst_u11549)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI col_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = !(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)));
		if (!(T3_)) goto LA4_;
		T3_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA4_: ;
		if (!T3_) goto LA5_;
		(*p_p0).idx += ((NI)1);
	}
	goto LA1_;
LA5_: ;
	{
		{
			while (1) {
				if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA9;
				{
					NIM_BOOL T12_;
					NIM_BOOL T13_;
					NIM_BOOL T16_;
					T12_ = (NIM_BOOL)0;
					T13_ = (NIM_BOOL)0;
					T13_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
					if (!(T13_)) goto LA14_;
					T13_ = (col_p1 < (*p_p0).tok.p->data[(*p_p0).idx].ival);
LA14_: ;
					T12_ = T13_;
					if (T12_) goto LA15_;
					T16_ = (NIM_BOOL)0;
					T16_ = !(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1)));
					if (!(T16_)) goto LA17_;
					T16_ = (col_p1 < (*p_p0).tok.p->data[(*p_p0).idx].col);
LA17_: ;
					T12_ = T16_;
LA15_: ;
					if (!T12_) goto LA18_;
					(*p_p0).idx += ((NI)1);
				}
				goto LA10_;
LA18_: ;
				{
					goto LA8;
				}
LA10_: ;
			} LA9: ;
		} LA8: ;
	}
LA1_: ;
	result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDotDot__packagesZdocutilsZrst_u11741)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_1;
	NimStringV2 d_1;
	NI col_1;
NIM_BOOL oldNimErrFin11_;
NIM_BOOL oldNimErrFin45_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	n_1 = NIM_NIL;
	d_1.len = 0; d_1.p = NIM_NIL;
	result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	col_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
	(*p_p0).idx += ((NI)1);
	d_1 = getDirective__packagesZdocutilsZrst_u11521(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T6_;
		if (!!((d_1.len == 0))) goto LA4_;
		pushInd__packagesZdocutilsZrst_u3889(p_p0, col_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T6_ = NIM_NIL;
		T6_ = selectDir__packagesZdocutilsZrst_u15430(p_p0, d_1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T6_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T6_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		popInd__packagesZdocutilsZrst_u3896(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA4_: ;
	{
		NIM_BOOL T8_;
		NimStringV2 ending_1;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* a_1;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* b_1;
		T8_ = (NIM_BOOL)0;
		T8_ = match__packagesZdocutilsZrst_u10249((&(*p_p0)), (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_546);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T8_) goto LA9_;
		ending_1.len = 0; ending_1.p = NIM_NIL;
		a_1 = NIM_NIL;
		b_1 = NIM_NIL;
		(*p_p0).idx += ((NI)2);
		ending_1 = TM__6mNpeIAN05DnDNzb9b3611A_547;
		{
			if (!eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_548)) goto LA14_;
			(*p_p0).idx += ((NI)1);
			ending_1 = TM__6mNpeIAN05DnDNzb9b3611A_549;
		}
LA14_: ;
		a_1 = getReferenceName__packagesZdocutilsZrst_u10039(p_p0, ending_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		{
			if (!eqStrings(ending_1, TM__6mNpeIAN05DnDNzb9b3611A_551)) goto LA18_;
			{
				if (!eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_552)) goto LA22_;
				(*p_p0).idx += ((NI)1);
			}
			goto LA20_;
LA22_: ;
			{
				rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)1), TM__6mNpeIAN05DnDNzb9b3611A_553);
				if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			}
LA20_: ;
		}
LA18_: ;
		{
			if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA27_;
			(*p_p0).idx += ((NI)1);
		}
LA27_: ;
		b_1 = untilEol__packagesZdocutilsZrst_u10054(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		{
			NI T31_;
			tyObject_ManualAnchor__9c44pyIS9bU9azHBLM69b4CmQg T34_;
			T31_ = (NI)0;
			T31_ = len__packagesZdocutilsZrstast_u114(b_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			if (!(T31_ == ((NI)0))) goto LA32_;
			T34_.alias = linkName__packagesZdocutilsZrst_u4019(a_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			T34_.anchor = rstnodeToRefname__packagesZdocutilsZrst_u78(a_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			T34_.info = prevLineInfo__packagesZdocutilsZrst_u4111((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			add__packagesZdocutilsZrst_u15535((&(*p_p0).curAnchors), (&T34_));
		}
		goto LA29_;
LA32_: ;
		{
			NimStringV2 colontmpD_;
			colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
			colontmpD_ = rstnodeToRefname__packagesZdocutilsZrst_u78(a_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
			setRef__packagesZdocutilsZrst_u4147(p_p0, colontmpD_, b_1, ((tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw)1));
			if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
			{
				LA36_:;
			}
			{
				eqdestroy___system_u2691(colontmpD_);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
		}
LA29_: ;
		{
			LA11_:;
		}
		{
			oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrstast_u285(b_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___packagesZdocutilsZrstast_u285(a_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin11_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA9_: ;
	{
		NIM_BOOL T42_;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* a_2;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* b_2;
		NimStringV2 colontmpD__2;
		T42_ = (NIM_BOOL)0;
		T42_ = match__packagesZdocutilsZrst_u10249((&(*p_p0)), (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_556);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T42_) goto LA43_;
		a_2 = NIM_NIL;
		b_2 = NIM_NIL;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		(*p_p0).idx += ((NI)2);
		a_2 = getReferenceName__packagesZdocutilsZrst_u10039(p_p0, TM__6mNpeIAN05DnDNzb9b3611A_557);
		if (NIM_UNLIKELY(*nimErr_)) goto LA45_;
		{
			if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA48_;
			(*p_p0).idx += ((NI)1);
		}
LA48_: ;
		{
			NI T52_;
			T52_ = (NI)0;
			T52_ = nsuCmpIgnoreStyle((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_559);
			if (NIM_UNLIKELY(*nimErr_)) goto LA45_;
			if (!(T52_ == ((NI)0))) goto LA53_;
			(*p_p0).idx += ((NI)1);
			expect__packagesZdocutilsZrst_u10067(p_p0, TM__6mNpeIAN05DnDNzb9b3611A_560);
			if (NIM_UNLIKELY(*nimErr_)) goto LA45_;
			b_2 = untilEol__packagesZdocutilsZrst_u10054(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA45_;
		}
		goto LA50_;
LA53_: ;
		{
			NI T56_;
			T56_ = (NI)0;
			T56_ = nsuCmpIgnoreStyle((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_561);
			if (NIM_UNLIKELY(*nimErr_)) goto LA45_;
			if (!(T56_ == ((NI)0))) goto LA57_;
			(*p_p0).idx += ((NI)1);
			b_2 = dirImage__packagesZdocutilsZrst_u14090(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA45_;
		}
		goto LA50_;
LA57_: ;
		{
			rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)8), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
			if (NIM_UNLIKELY(*nimErr_)) goto LA45_;
		}
LA50_: ;
		colontmpD__2 = addNodes__packagesZdocutilsZrst_u80(a_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA45_;
		setSub__packagesZdocutilsZrst_u4114(p_p0, colontmpD__2, b_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA45_;
		{
			LA45_:;
		}
		{
			oldNimErrFin45_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___system_u2691(colontmpD__2);
			eqdestroy___packagesZdocutilsZrstast_u285(b_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___packagesZdocutilsZrstast_u285(a_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin45_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA43_: ;
	{
		NIM_BOOL T63_;
		T63_ = (NIM_BOOL)0;
		T63_ = match__packagesZdocutilsZrst_u10249((&(*p_p0)), (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_563);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!(T63_)) goto LA64_;
		n_1 = parseFootnote__packagesZdocutilsZrst_u13848(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		T63_ = !((n_1 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL)));
LA64_: ;
		if (!T63_) goto LA65_;
		eqsink___packagesZdocutilsZrstast_u294(&result, n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqwasMoved___packagesZdocutilsZrstast_u282(&n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA65_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T68_;
		T68_ = NIM_NIL;
		T68_ = parseComment__packagesZdocutilsZrst_u11549(p_p0, col_1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T68_); goto LA1_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T68_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___system_u2691(d_1);
		eqdestroy___packagesZdocutilsZrstast_u285(n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_CLOSURE(NIM_BOOL, checkAfterNewline__packagesZdocutilsZrst_u13763)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_BOOL report_p1, void* ClE_0) {
	NIM_BOOL result;
	tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA* colonenvP__1;
	NI j_1;
	NI requiredIndent_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	colonenvP__1 = (tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA*) ClE_0;
	j_1 = tokenAfterNewline__packagesZdocutilsZrst_u11592(p_p0, (NI)((*p_p0).idx + ((NI)1)));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	requiredIndent_1 = (*p_p0).tok.p->data[(NI)((*p_p0).idx + wildToken__packagesZdocutilsZrst_u13664[((*colonenvP__1).w0)- 0])].col;
	{
		NIM_BOOL T3_;
		NIM_BOOL T4_;
		NIM_BOOL T7_;
		NIM_BOOL T9_;
		NIM_BOOL T11_;
		T3_ = (NIM_BOOL)0;
		T4_ = (NIM_BOOL)0;
		T4_ = !(((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)));
		if (!(T4_)) goto LA5_;
		T4_ = ((*p_p0).tok.p->data[j_1].col < requiredIndent_1);
LA5_: ;
		T3_ = T4_;
		if (!(T3_)) goto LA6_;
		T7_ = (NIM_BOOL)0;
		T7_ = ((*colonenvP__1).col1 < (*p_p0).tok.p->data[j_1].col);
		if (T7_) goto LA8_;
		T9_ = (NIM_BOOL)0;
		T9_ = ((*p_p0).tok.p->data[j_1].col == (*colonenvP__1).col1);
		if (!(T9_)) goto LA10_;
		T11_ = (NIM_BOOL)0;
		T11_ = match__packagesZdocutilsZrst_u10249(p_p0, j_1, wildcards__packagesZdocutilsZrst_u13663[((*colonenvP__1).w0)- 0]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T9_ = !(T11_);
LA10_: ;
		T7_ = T9_;
LA8_: ;
		T3_ = T7_;
LA6_: ;
		if (!T3_) goto LA12_;
		{
			NimStringV2 msg_1;
			NimStringV2 colontmp__1;
			NimStringV2 colontmpD_;
			NimStringV2 colontmpD__2;
			NimStringV2 colontmpD__3;
			NimStringV2 colontmpD__4;
			NimStringV2 colontmpD__5;
			NI n_1;
			NimStringV2 T19_;
			NI T20_;
			NI c_1;
			tyArray__dyW7vpmfeTYw8kX3EXuaJA T21_;
			if (!report_p1) goto LA16_;
			msg_1.len = 0; msg_1.p = NIM_NIL;
			colontmp__1.len = 0; colontmp__1.p = NIM_NIL;
			colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
			colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
			colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
			colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
			colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
			n_1 = (NI)((*p_p0).line + (*p_p0).tok.p->data[j_1].line);
			T19_.len = 0; T19_.p = NIM_NIL;
			colontmp__1 = TM__6mNpeIAN05DnDNzb9b3611A_585;
			T20_ = (NI)0;
			T20_ = indentation__pureZstrutils_u1338(colontmp__1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			colontmpD_ = nsuDedent(colontmp__1, T20_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			T19_ = rawNewString(colontmpD_.len + 1);
appendString((&T19_), TM__6mNpeIAN05DnDNzb9b3611A_583);
appendString((&T19_), colontmpD_);
			msg_1 = T19_;
			c_1 = (NI)((NI)((*p_p0).col + requiredIndent_1) + ((NI)1));
			colontmpD__2 = dollar___systemZdollars_u9((NI)(n_1 - ((NI)1)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			T21_[0] = colontmpD__2;
			colontmpD__3 = dollar___systemZdollars_u9(n_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			T21_[1] = colontmpD__3;
			colontmpD__4 = dollar___systemZdollars_u9(c_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			T21_[2] = colontmpD__4;
			colontmpD__5 = nsuFormatOpenArray(msg_1, T21_, 3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			rstMessage__packagesZdocutilsZrst_u3813(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17), colontmpD__5, (*p_p0).tok.p->data[j_1].line, (*p_p0).tok.p->data[j_1].col);
			if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
			{
				LA18_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__5);
				eqdestroy___system_u2691(colontmpD__4);
				eqdestroy___system_u2691(colontmpD__3);
				eqdestroy___system_u2691(colontmpD__2);
				eqdestroy___system_u2691(colontmpD_);
				eqdestroy___system_u2691(msg_1);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA16_: ;
		result = NIM_FALSE;
	}
	goto LA1_;
LA12_: ;
	{
		result = NIM_TRUE;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18137)(tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA* dest_p0) {
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18163)(tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(dest_p0, ((TNimTypeV2*) ((&NTIv2__hdAGM0wB8YhDoPChO9cTzvA_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u18137((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseEnumList__packagesZdocutilsZrst_u13660)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA* colonenv__1;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ autoEnums_1;
	NimStringV2 prevAE_1;
	NimStringV2 prevEnum_1;
	tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA* T2_;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ T16_;
	NI curEnum_1;
NIM_BOOL oldNimErrFin32_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	colonenv__1 = NIM_NIL;
	autoEnums_1.len = 0; autoEnums_1.p = NIM_NIL;
	prevAE_1.len = 0; prevAE_1.p = NIM_NIL;
	prevEnum_1.len = 0; prevEnum_1.p = NIM_NIL;
	T2_ = NIM_NIL;
	T2_ = (tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA*) nimNewObj(sizeof(tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA), NIM_ALIGNOF(tyObject_Env_rstdotnim_parseEnumList___hdAGM0wB8YhDoPChO9cTzvA));
	(*T2_).Sup.m_type = (&NTIv2__hdAGM0wB8YhDoPChO9cTzvA_);
	colonenv__1 = T2_;
	(*colonenv__1).col1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
	(*colonenv__1).w0 = ((NI)0);
	{
		while (1) {
			if (!((*colonenv__1).w0 < ((NI)6))) goto LA4;
			{
				NIM_BOOL T7_;
				T7_ = (NIM_BOOL)0;
				T7_ = match__packagesZdocutilsZrst_u10249((&(*p_p0)), (*p_p0).idx, wildcards__packagesZdocutilsZrst_u13663[((*colonenv__1).w0)- 0]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				if (!T7_) goto LA8_;
				goto LA3;
			}
LA8_: ;
			(*colonenv__1).w0 += ((NI)1);
		} LA4: ;
	} LA3: ;
	{
		tyProc__41mbVqfuwmrepo9bnzM9cgIw T12_;
		NIM_BOOL T13_;
		nimZeroMem((void*)(&T12_), sizeof(tyProc__41mbVqfuwmrepo9bnzM9cgIw));
		T12_.ClP_0 = checkAfterNewline__packagesZdocutilsZrst_u13763; T12_.ClE_0 = colonenv__1;
		T13_ = (NIM_BOOL)0;
		T13_ = T12_.ClE_0? T12_.ClP_0((&(*p_p0)), NIM_TRUE, T12_.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_586)(T12_.ClP_0))((&(*p_p0)), NIM_TRUE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!(T13_)) goto LA14_;
		result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
		eqdestroy___system_u2691(prevEnum_1);
		eqdestroy___system_u2691(prevAE_1);
		eqdestroy___system_u5506(autoEnums_1);
		eqdestroy___packagesZdocutilsZrst_u18163(colonenv__1);
		goto BeforeRet_;
	}
LA14_: ;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)8));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T16_.len = 0; T16_.p = NIM_NIL;
	{
		if (!(((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)2)))&7U)))!=0)) goto LA19_;
		autoEnums_1.len = 2; autoEnums_1.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(2, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
		autoEnums_1.p->data[0] = TM__6mNpeIAN05DnDNzb9b3611A_587;
		autoEnums_1.p->data[1] = TM__6mNpeIAN05DnDNzb9b3611A_589;
	}
	goto LA17_;
LA19_: ;
	{
		autoEnums_1.len = 1; autoEnums_1.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(1, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
		autoEnums_1.p->data[0] = TM__6mNpeIAN05DnDNzb9b3611A_590;
	}
LA17_: ;
	prevAE_1 = TM__6mNpeIAN05DnDNzb9b3611A_591;
	curEnum_1 = ((NI)1);
	{
		NI i_1;
		NI colontmp_;
		NI i_2;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = (NI)(wildToken__packagesZdocutilsZrst_u13664[((*colonenv__1).w0)- 0] - ((NI)1));
		i_2 = ((NI)0);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA24;
				i_1 = i_2;
				{
					if (!eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + i_1)].symbol, TM__6mNpeIAN05DnDNzb9b3611A_592)) goto LA27_;
					eqsink___system_u2700((&prevAE_1), TM__6mNpeIAN05DnDNzb9b3611A_593);
					prepareAdd((&(*result)._kind_2.labelFmt), 1);
appendString((&(*result)._kind_2.labelFmt), TM__6mNpeIAN05DnDNzb9b3611A_594);
				}
				goto LA25_;
LA27_: ;
				{
					prepareAdd((&(*result)._kind_2.labelFmt), (*p_p0).tok.p->data[(NI)((*p_p0).idx + i_1)].symbol.len + 0);
appendString((&(*result)._kind_2.labelFmt), (*p_p0).tok.p->data[(NI)((*p_p0).idx + i_1)].symbol);
				}
LA25_: ;
				i_2 += ((NI)1);
			} LA24: ;
		}
	}
	eqcopy___system_u2694((&prevEnum_1), (*p_p0).tok.p->data[(NI)((*p_p0).idx + wildIndex__packagesZdocutilsZrst_u13665[((*colonenv__1).w0)- 0])].symbol);
	(*p_p0).idx += wildToken__packagesZdocutilsZrst_u13664[((*colonenv__1).w0)- 0];
	{
		while (1) {
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* item_1;
			tySequence__LqZapiAqCFeXPQZdoIAUew T33_;
			item_1 = NIM_NIL;
			T33_.len = 0; T33_.p = NIM_NIL;
			T33_.len = 0; T33_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			item_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)9), T33_, TM__6mNpeIAN05DnDNzb9b3611A_595);
			if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			pushInd__packagesZdocutilsZrst_u3889(p_p0, (*p_p0).tok.p->data[(*p_p0).idx].col);
			if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			parseSection__packagesZdocutilsZrst_u11589(p_p0, item_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			popInd__packagesZdocutilsZrst_u3896(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			add__packagesZdocutilsZrstast_u463(result, item_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			{
				NIM_BOOL T36_;
				NIM_BOOL T37_;
				NimStringV2 enumerator_1;
				T36_ = (NIM_BOOL)0;
				T37_ = (NIM_BOOL)0;
				T37_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
				if (!(T37_)) goto LA38_;
				T37_ = ((*p_p0).tok.p->data[(*p_p0).idx].ival == (*colonenv__1).col1);
LA38_: ;
				T36_ = T37_;
				if (!(T36_)) goto LA39_;
				T36_ = match__packagesZdocutilsZrst_u10249((&(*p_p0)), (NI)((*p_p0).idx + ((NI)1)), wildcards__packagesZdocutilsZrst_u13663[((*colonenv__1).w0)- 0]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
LA39_: ;
				if (!T36_) goto LA40_;
				enumerator_1.len = 0; enumerator_1.p = NIM_NIL;
				{
					tyProc__41mbVqfuwmrepo9bnzM9cgIw T45_;
					NIM_BOOL T46_;
					nimZeroMem((void*)(&T45_), sizeof(tyProc__41mbVqfuwmrepo9bnzM9cgIw));
					T45_.ClP_0 = checkAfterNewline__packagesZdocutilsZrst_u13763; T45_.ClE_0 = colonenv__1;
					T46_ = (NIM_BOOL)0;
					T46_ = T45_.ClE_0? T45_.ClP_0((&(*p_p0)), NIM_FALSE, T45_.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_596)(T45_.ClP_0))((&(*p_p0)), NIM_FALSE);
					if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
					if (!!(T46_)) goto LA47_;
					eqdestroy___system_u2691(enumerator_1);
					eqdestroy___packagesZdocutilsZrstast_u285(item_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					goto LA30;
				}
LA47_: ;
				eqcopy___system_u2694((&enumerator_1), (*p_p0).tok.p->data[(NI)((NI)((*p_p0).idx + ((NI)1)) + wildIndex__packagesZdocutilsZrst_u13665[((*colonenv__1).w0)- 0])].symbol);
				{
					NIM_BOOL T51_;
					NI colontmpD_;
					NI colontmpD__2;
					NI prevEnumI_1;
					NI T56_;
					T51_ = (NIM_BOOL)0;
					T51_ = contains__pureZstrutils_u1833(wildcards__packagesZdocutilsZrst_u13663[((*colonenv__1).w0)- 0], TM__6mNpeIAN05DnDNzb9b3611A_598);
					if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
					if (!T51_) goto LA52_;
					colontmpD_ = (NI)0;
					colontmpD__2 = (NI)0;
					T56_ = (NI)0;
					T56_ = nsuParseInt(prevEnum_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
					colontmpD_ = T56_;
					prevEnumI_1 = colontmpD_;
					{
						LA55_:;
					}
					{
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
					if (NIM_UNLIKELY(*nimErr_)) {
						LA54_:;
						if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1871340544)) {
							*nimErr_ = NIM_FALSE;
							colontmpD__2 = ((NI)1);
							prevEnumI_1 = colontmpD__2;
							popCurrentException();
							LA60_:;
						}
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
					{
						NIM_BOOL T64_;
						T64_ = (NIM_BOOL)0;
						T64_ = contains__stdZenumutils_u51(((autoEnums_1).p) ? (autoEnums_1.p->data) : NIM_NIL, autoEnums_1.len, enumerator_1);
						if (!T64_) goto LA65_;
						{
							NIM_BOOL T69_;
							T69_ = (NIM_BOOL)0;
							T69_ = !((prevAE_1.len == 0));
							if (!(T69_)) goto LA70_;
							T69_ = !(eqStrings(enumerator_1, prevAE_1));
LA70_: ;
							if (!T69_) goto LA71_;
							eqdestroy___system_u2691(enumerator_1);
							eqdestroy___packagesZdocutilsZrstast_u285(item_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							goto LA30;
						}
LA71_: ;
						eqcopy___system_u2694((&prevAE_1), enumerator_1);
						curEnum_1 = (NI)(prevEnumI_1 + ((NI)1));
					}
					goto LA62_;
LA65_: ;
					{
						NI T75_;
						NI T76_;
						T75_ = (NI)0;
						T76_ = (NI)0;
						T76_ = nsuParseInt(enumerator_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
						curEnum_1 = T76_;
						if (NIM_UNLIKELY(*nimErr_)) {
							LA74_:;
							if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1871340544)) {
								*nimErr_ = NIM_FALSE;
								curEnum_1 = ((NI)1);
								popCurrentException();
								LA78_:;
							}
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
					}
LA62_: ;
					{
						if (!!(((NI)(curEnum_1 - prevEnumI_1) == ((NI)1)))) goto LA82_;
						eqdestroy___system_u2691(enumerator_1);
						eqdestroy___packagesZdocutilsZrstast_u285(item_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						goto LA30;
					}
LA82_: ;
					eqsink___system_u2700((&prevEnum_1), enumerator_1);
					eqwasMoved___system_u2688((&enumerator_1));
				}
				goto LA49_;
LA52_: ;
				{
					NI prevEnumI_2;
					NimStringV2 T94_;
					prevEnumI_2 = ((NU8)(prevEnum_1.p->data[((NI)0)]));
					{
						if (!eqStrings(enumerator_1, TM__6mNpeIAN05DnDNzb9b3611A_599)) goto LA87_;
						curEnum_1 = (NI)(prevEnumI_2 + ((NI)1));
					}
					goto LA85_;
LA87_: ;
					{
						curEnum_1 = ((NU8)(enumerator_1.p->data[((NI)0)]));
					}
LA85_: ;
					{
						if (!!(((NI)(curEnum_1 - prevEnumI_2) == ((NI)1)))) goto LA92_;
						eqdestroy___system_u2691(enumerator_1);
						eqdestroy___packagesZdocutilsZrstast_u285(item_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						goto LA30;
					}
LA92_: ;
					T94_.len = 0; T94_.p = NIM_NIL;
					T94_ = nimCharToStr(((NIM_CHAR) ((curEnum_1))));
					eqsink___system_u2700((&prevEnum_1), T94_);
				}
LA49_: ;
				(*p_p0).idx += (NI)(((NI)1) + wildToken__packagesZdocutilsZrst_u13664[((*colonenv__1).w0)- 0]);
				{
					LA42_:;
				}
				{
					eqdestroy___system_u2691(enumerator_1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
			}
			goto LA34_;
LA40_: ;
			{
				eqdestroy___packagesZdocutilsZrstast_u285(item_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				goto LA30;
			}
LA34_: ;
			{
				LA32_:;
			}
			{
				oldNimErrFin32_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(item_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin32_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
	} LA30: ;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(prevEnum_1);
		eqdestroy___system_u2691(prevAE_1);
		eqdestroy___system_u5506(autoEnums_1);
		eqdestroy___packagesZdocutilsZrst_u18163(colonenv__1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDefinitionList__packagesZdocutilsZrst_u13623)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	NI j_1;
	NI T1_;
NIM_BOOL oldNimErrFin34_;
NIM_BOOL oldNimErrFin16_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
	T1_ = (NI)0;
	T1_ = tokenAfterNewline__packagesZdocutilsZrst_u11606((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	j_1 = (NI)(T1_ - ((NI)1));
	{
		NIM_BOOL T4_;
		NIM_BOOL T5_;
		NIM_BOOL T6_;
		NI T9_;
		NI col_1;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T13_;
		T4_ = (NIM_BOOL)0;
		T5_ = (NIM_BOOL)0;
		T6_ = (NIM_BOOL)0;
		T6_ = (((NI)1) <= j_1);
		if (!(T6_)) goto LA7_;
		T6_ = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA7_: ;
		T5_ = T6_;
		if (!(T5_)) goto LA8_;
		T9_ = (NI)0;
		T9_ = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T5_ = (T9_ < (*p_p0).tok.p->data[j_1].ival);
LA8_: ;
		T4_ = T5_;
		if (!(T4_)) goto LA10_;
		T4_ = !(eqStrings((*p_p0).tok.p->data[(NI)(j_1 - ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_602));
LA10_: ;
		if (!T4_) goto LA11_;
		col_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
		T13_ = NIM_NIL;
		T13_ = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)10));
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T13_); goto BeforeRet_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T13_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			while (1) {
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* a_1;
				tySequence__LqZapiAqCFeXPQZdoIAUew T22_;
				a_1 = NIM_NIL;
				{
					NIM_BOOL T19_;
					T19_ = (NIM_BOOL)0;
					T19_ = isOptionList__packagesZdocutilsZrst_u12162((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
					if (!T19_) goto LA20_;
					eqdestroy___packagesZdocutilsZrstast_u285(a_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto LA14;
				}
LA20_: ;
				j_1 = (*p_p0).idx;
				T22_.len = 0; T22_.p = NIM_NIL;
				T22_.len = 0; T22_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				a_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)13), T22_, TM__6mNpeIAN05DnDNzb9b3611A_603);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				parseLine__packagesZdocutilsZrst_u11583(p_p0, a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				{
					NIM_BOOL T25_;
					NIM_BOOL T26_;
					NIM_BOOL T27_;
					NI T29_;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* b_1;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* c_1;
					tySequence__LqZapiAqCFeXPQZdoIAUew T35_;
					tySequence__LqZapiAqCFeXPQZdoIAUew T36_;
					T25_ = (NIM_BOOL)0;
					T26_ = (NIM_BOOL)0;
					T27_ = (NIM_BOOL)0;
					T27_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
					if (!(T27_)) goto LA28_;
					T29_ = (NI)0;
					T29_ = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
					T27_ = (T29_ < (*p_p0).tok.p->data[(*p_p0).idx].ival);
LA28_: ;
					T26_ = T27_;
					if (!(T26_)) goto LA30_;
					T26_ = !(eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_604));
LA30_: ;
					T25_ = T26_;
					if (!(T25_)) goto LA31_;
					T25_ = !(((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)));
LA31_: ;
					if (!T25_) goto LA32_;
					b_1 = NIM_NIL;
					c_1 = NIM_NIL;
					pushInd__packagesZdocutilsZrst_u3889(p_p0, (*p_p0).tok.p->data[(*p_p0).idx].ival);
					if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
					T35_.len = 0; T35_.p = NIM_NIL;
					T35_.len = 0; T35_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
					b_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)14), T35_, TM__6mNpeIAN05DnDNzb9b3611A_605);
					if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
					parseSection__packagesZdocutilsZrst_u11589(p_p0, b_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
					T36_.len = 0; T36_.p = NIM_NIL;
					T36_.len = 0; T36_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
					c_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)12), T36_, TM__6mNpeIAN05DnDNzb9b3611A_606);
					if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
					add__packagesZdocutilsZrstast_u463(c_1, a_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
					add__packagesZdocutilsZrstast_u463(c_1, b_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
					add__packagesZdocutilsZrstast_u463(result, c_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
					popInd__packagesZdocutilsZrst_u3896(p_p0);
					if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
					{
						LA34_:;
					}
					{
						oldNimErrFin34_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___packagesZdocutilsZrstast_u285(c_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
						eqdestroy___packagesZdocutilsZrstast_u285(b_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
						*nimErr_ = oldNimErrFin34_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				}
				goto LA23_;
LA32_: ;
				{
					(*p_p0).idx = j_1;
					eqdestroy___packagesZdocutilsZrstast_u285(a_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto LA14;
				}
LA23_: ;
				{
					NIM_BOOL T42_;
					NI T46_;
					T42_ = (NIM_BOOL)0;
					T42_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
					if (!(T42_)) goto LA43_;
					T42_ = ((*p_p0).tok.p->data[(*p_p0).idx].ival == col_1);
LA43_: ;
					if (!T42_) goto LA44_;
					(*p_p0).idx += ((NI)1);
					T46_ = (NI)0;
					T46_ = tokenAfterNewline__packagesZdocutilsZrst_u11606((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
					j_1 = (NI)(T46_ - ((NI)1));
					{
						NIM_BOOL T49_;
						NIM_BOOL T50_;
						NIM_BOOL T51_;
						NIM_BOOL T52_;
						T49_ = (NIM_BOOL)0;
						T50_ = (NIM_BOOL)0;
						T51_ = (NIM_BOOL)0;
						T52_ = (NIM_BOOL)0;
						T52_ = (((NI)1) <= j_1);
						if (!(T52_)) goto LA53_;
						T52_ = ((*p_p0).tok.p->data[j_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA53_: ;
						T51_ = T52_;
						if (!(T51_)) goto LA54_;
						T51_ = (col_1 < (*p_p0).tok.p->data[j_1].ival);
LA54_: ;
						T50_ = T51_;
						if (!(T50_)) goto LA55_;
						T50_ = !(eqStrings((*p_p0).tok.p->data[(NI)(j_1 - ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_607));
LA55_: ;
						T49_ = T50_;
						if (!(T49_)) goto LA56_;
						T49_ = !(((*p_p0).tok.p->data[(NI)(j_1 + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1)));
LA56_: ;
						if (!T49_) goto LA57_;
					}
					goto LA47_;
LA57_: ;
					{
						eqdestroy___packagesZdocutilsZrstast_u285(a_1);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						goto LA14;
					}
LA47_: ;
				}
LA44_: ;
				{
					LA16_:;
				}
				{
					oldNimErrFin16_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(a_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin16_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
		} LA14: ;
		{
			NI T64_;
			T64_ = (NI)0;
			T64_ = len__packagesZdocutilsZrstast_u114(result);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T64_ == ((NI)0))) goto LA65_;
			eqsink___packagesZdocutilsZrstast_u294(&result, ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA65_: ;
	}
LA11_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, skipNewlines__packagesZdocutilsZrst_u12135)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NI T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (NI)0;
	T1_ = skipNewlines__packagesZdocutilsZrst_u12118((&(*p_p0)), (*p_p0).idx);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*p_p0).idx = T1_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, getMdBlockIndent__packagesZdocutilsZrst_u11617)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	{
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA3_;
		result = (*p_p0).tok.p->data[(*p_p0).idx].ival;
	}
	goto LA1_;
LA3_: ;
	{
		NI nextIndent_1;
		NI T6_;
		T6_ = (NI)0;
		T6_ = tokenAfterNewline__packagesZdocutilsZrst_u11606(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nextIndent_1 = (*p_p0).tok.p->data[(NI)(T6_ - ((NI)1))].ival;
		{
			NI T9_;
			T9_ = (NI)0;
			T9_ = currInd__packagesZdocutilsZrst_u3883(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(nextIndent_1 <= T9_)) goto LA10_;
			result = (*p_p0).tok.p->data[(*p_p0).idx].col;
		}
		goto LA7_;
LA10_: ;
		{
			result = nextIndent_1;
		}
LA7_: ;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMdDefinitionList__packagesZdocutilsZrst_u13608)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	NI termCol_1;
NIM_BOOL oldNimErrFin8_;
NIM_BOOL oldNimErrFin3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)11));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	termCol_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
	{
		while (1) {
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* item_1;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* term_1;
			tySequence__LqZapiAqCFeXPQZdoIAUew T4_;
			tySequence__LqZapiAqCFeXPQZdoIAUew T5_;
			NI j_2;
			item_1 = NIM_NIL;
			term_1 = NIM_NIL;
			T4_.len = 0; T4_.p = NIM_NIL;
			T4_.len = 0; T4_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			item_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)12), T4_, TM__6mNpeIAN05DnDNzb9b3611A_608);
			if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			T5_.len = 0; T5_.p = NIM_NIL;
			T5_.len = 0; T5_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			term_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)13), T5_, TM__6mNpeIAN05DnDNzb9b3611A_609);
			if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			parseLine__packagesZdocutilsZrst_u11583(p_p0, term_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			skipNewlines__packagesZdocutilsZrst_u12135(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			(*p_p0).idx += ((NI)2);
			add__packagesZdocutilsZrstast_u463(item_1, term_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			{
				while (1) {
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* def_1;
					tySequence__LqZapiAqCFeXPQZdoIAUew T9_;
					NI indent_1;
					NI j_1;
					def_1 = NIM_NIL;
					T9_.len = 0; T9_.p = NIM_NIL;
					T9_.len = 0; T9_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
					def_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)14), T9_, TM__6mNpeIAN05DnDNzb9b3611A_610);
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					indent_1 = getMdBlockIndent__packagesZdocutilsZrst_u11617((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					pushInd__packagesZdocutilsZrst_u3889(p_p0, indent_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					parseSection__packagesZdocutilsZrst_u11589(p_p0, def_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					popInd__packagesZdocutilsZrst_u3896(p_p0);
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					add__packagesZdocutilsZrstast_u463(item_1, def_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					j_1 = skipNewlines__packagesZdocutilsZrst_u12118((&(*p_p0)), (*p_p0).idx);
					if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
					{
						NIM_BOOL T12_;
						T12_ = (NIM_BOOL)0;
						T12_ = isMdDefBody__packagesZdocutilsZrst_u12142((&(*p_p0)), j_1, termCol_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
						if (!T12_) goto LA13_;
						(*p_p0).idx = (NI)(j_1 + ((NI)2));
					}
					goto LA10_;
LA13_: ;
					{
						eqdestroy___packagesZdocutilsZrstast_u285(def_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
						goto LA6;
					}
LA10_: ;
					{
						LA8_:;
					}
					{
						oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___packagesZdocutilsZrstast_u285(def_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
						*nimErr_ = oldNimErrFin8_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
				}
			} LA6: ;
			add__packagesZdocutilsZrstast_u463(result, item_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			j_2 = skipNewlines__packagesZdocutilsZrst_u12118((&(*p_p0)), (*p_p0).idx);
			if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			{
				NIM_BOOL T20_;
				T20_ = (NIM_BOOL)0;
				T20_ = ((*p_p0).tok.p->data[j_2].col == termCol_1);
				if (!(T20_)) goto LA21_;
				T20_ = isMdDefListItem__packagesZdocutilsZrst_u12156((&(*p_p0)), j_2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
LA21_: ;
				if (!T20_) goto LA22_;
				(*p_p0).idx = j_2;
			}
			goto LA18_;
LA22_: ;
			{
				eqdestroy___packagesZdocutilsZrstast_u285(term_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				eqdestroy___packagesZdocutilsZrstast_u285(item_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto LA1;
			}
LA18_: ;
			{
				LA3_:;
			}
			{
				oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(term_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				eqdestroy___packagesZdocutilsZrstast_u285(item_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin3_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	} LA1: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseTransition__packagesZdocutilsZrst_u13495)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)4));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*p_p0).idx += ((NI)1);
	{
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA3_;
		(*p_p0).idx += ((NI)1);
	}
LA3_: ;
	{
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA7_;
		(*p_p0).idx += ((NI)1);
	}
LA7_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, parseUntilNewline__packagesZdocutilsZrst_u11586)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		while (1) {
			switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5):
			{
				parseInline__packagesZdocutilsZrst_u11440(p_p0, father_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			break;
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1):
			{
				goto LA1;
			}
			break;
			default: __builtin_unreachable();
			}
		}
	} LA1: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, getLevel__packagesZdocutilsZrst_u11826)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NIM_CHAR c_p1, NIM_BOOL hasOverline_p2) {
	NI result;
	tyObject_LevelInfo__KZjTutWfS3RhxSg89cxkiqQ T12_;
	NI T13_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	{
		NI i_1;
		tyObject_LevelInfo__KZjTutWfS3RhxSg89cxkiqQ hType_1;
		NI i_2;
		NI L_1;
		NI T2_;
		i_1 = (NI)0;
		nimZeroMem((void*)(&hType_1), sizeof(tyObject_LevelInfo__KZjTutWfS3RhxSg89cxkiqQ));
		i_2 = ((NI)0);
		T2_ = (*(*p_p0).s).hLevels.len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_2 < L_1)) goto LA4;
				i_1 = i_2;
				hType_1 = (*(*p_p0).s).hLevels.p->data[i_2];
				{
					NIM_BOOL T7_;
					NI T11_;
					T7_ = (NIM_BOOL)0;
					T7_ = ((NU8)(hType_1.symbol) == (NU8)(c_p1));
					if (!(T7_)) goto LA8_;
					T7_ = (hType_1.hasOverline == hasOverline_p2);
LA8_: ;
					if (!T7_) goto LA9_;
					T11_ = (NI)0;
					T11_ = curLine__packagesZdocutilsZrst_u3775((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					(*(*p_p0).s).hLevels.p->data[i_1].line = T11_;
					(*(*p_p0).s).hLevels.p->data[i_1].hasPeers = NIM_TRUE;
					result = i_1;
					goto BeforeRet_;
				}
LA9_: ;
				i_2 += ((NI)1);
			} LA4: ;
		}
	}
	T12_.symbol = c_p1;
	T12_.hasOverline = hasOverline_p2;
	T12_.line = curLine__packagesZdocutilsZrst_u3775((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T12_.hasPeers = NIM_FALSE;
	add__packagesZdocutilsZrst_u11899((&(*(*p_p0).s).hLevels), T12_);
	T13_ = (*(*p_p0).s).hLevels.len;
	result = (NI)(T13_ - ((NI)1));
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18260)(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA* dest_p0) {
	eqdestroy___packagesZdocutilsZrst_u5790((*dest_p0).p0.curAnchors);
	eqdestroy___pureZosproc_u474((*dest_p0).p0.indentStack);
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic((*dest_p0).p0.s, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u2567((&(*(*dest_p0).p0.s)));
		nimRawDispose((*dest_p0).p0.s, ((NI)8));
	}
LA4_: ;
	eqdestroy___packagesZdocutilsZrst_u3922((*dest_p0).p0.tok);
}
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u18357)(void* dest_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqdestroy___packagesZdocutilsZrst_u18260((&(*((tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA*) (dest_p0)))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u18272)(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA* dest_p0, void* env_p1) {
	nimTraceRef(&(*dest_p0).p0.s, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))), env_p1);
}
static N_INLINE(NIM_BOOL, sameSeqPayload)(void* x_p0, void* y_p1) {
	NIM_BOOL result;
	result = ((*((tyObject_NimRawSeq__Tvl1urqmI1tXqzkHPbWVJQ*) (x_p0))).p == (*((tyObject_NimRawSeq__Tvl1urqmI1tXqzkHPbWVJQ*) (y_p1))).p);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u5793)(tySequence__7kOUUrKwg6xKu7wOGcJDlQ* dest_p0, tySequence__7kOUUrKwg6xKu7wOGcJDlQ src_p1) {
	NI T6_;
	NI colontmp_;
{	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = sameSeqPayload(dest_p0, (&src_p1));
		if (!T3_) goto LA4_;
		goto BeforeRet_;
	}
LA4_: ;
	T6_ = src_p1.len;
	setLen__packagesZdocutilsZrst_u5653((&(*dest_p0)), T6_);
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T9_;
			T9_ = (*dest_p0).len;
			if (!(colontmp_ < T9_)) goto LA8;
			eqcopy___system_u2694((&(*dest_p0).p->data[colontmp_].alias), src_p1.p->data[colontmp_].alias);
			eqcopy___system_u2694((&(*dest_p0).p->data[colontmp_].anchor), src_p1.p->data[colontmp_].anchor);
			(*dest_p0).p->data[colontmp_].info.line = src_p1.p->data[colontmp_].info.line;
			(*dest_p0).p->data[colontmp_].info.col = src_p1.p->data[colontmp_].info.col;
			(*dest_p0).p->data[colontmp_].info.fileIndex = src_p1.p->data[colontmp_].info.fileIndex;
			colontmp_ += ((NI)1);
		} LA8: ;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u12489)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* dest_p0, tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* src_p1) {
	tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	(*dest_p0).idx = (*src_p1).idx;
	eqcopy___packagesZdocutilsZrst_u3925((&(*dest_p0).tok), (*src_p1).tok);
	colontmp_ = (*dest_p0).s;
	{
		if (!(*src_p1).s) goto LA3_;
		nimIncRefCyclic((*src_p1).s, NIM_TRUE);
	}
LA3_: ;
	(*dest_p0).s = (*src_p1).s;
	{
		NIM_BOOL T7_;
		T7_ = (NIM_BOOL)0;
		T7_ = nimDecRefIsLastCyclicStatic(colontmp_, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))));
		if (!T7_) goto LA8_;
		eqdestroy___packagesZdocutilsZrst_u2567((&(*colontmp_)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nimRawDispose(colontmp_, ((NI)8));
	}
LA8_: ;
	eqcopy___pureZosproc_u477((&(*dest_p0).indentStack), (*src_p1).indentStack);
	(*dest_p0).line = (*src_p1).line;
	(*dest_p0).col = (*src_p1).col;
	eqcopy___packagesZdocutilsZrst_u5793((&(*dest_p0).curAnchors), (*src_p1).curAnchors);
	(*dest_p0).Sup.m_type = (*src_p1).Sup.m_type;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_CLOSURE(NimStringV2, descr__packagesZdocutilsZrst_u12605)(NI l_p0, void* ClE_0) {
	NimStringV2 result;
	tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA* colonenvP__1;
	NimStringV2 colontmpD_;
	NimStringV2 colontmpD__2;
	NimStringV2 colontmpD__3;
	NimStringV2 T1_;
	NimStringV2 T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	colonenvP__1 = (tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA*) ClE_0;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
	colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
	T1_.len = 0; T1_.p = NIM_NIL;
	T2_.len = 0; T2_.p = NIM_NIL;
	{
		if (!(*(*colonenvP__1).p0.s).hLevels.p->data[l_p0].hasOverline) goto LA5_;
		colontmpD_ = TM__6mNpeIAN05DnDNzb9b3611A_618;
		T2_ = colontmpD_;
	}
	goto LA3_;
LA5_: ;
	{
		colontmpD__2 = TM__6mNpeIAN05DnDNzb9b3611A_620;
		T2_ = colontmpD__2;
	}
LA3_: ;
	colontmpD__3 = nsuRepeatChar((*(*colonenvP__1).p0.s).hLevels.p->data[l_p0].symbol, ((NI)5));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = rawNewString(T2_.len + colontmpD__3.len + 0);
appendString((&T1_), T2_);
appendString((&T1_), colontmpD__3);
	result = T1_;
	eqdestroy___system_u2691(colontmpD__3);
	eqdestroy___system_u2691(colontmpD__2);
	eqdestroy___system_u2691(colontmpD_);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18310)(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(dest_p0, ((TNimTypeV2*) ((&NTIv2__D9cyh4GuH9bOx7S1iB2gJxvA_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u18260((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkHeadingHierarchy__packagesZdocutilsZrst_u12602)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI lvl_p1) {
	tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA* colonenv__1;
	tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA* T2_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colonenv__1 = NIM_NIL;
	T2_ = NIM_NIL;
	T2_ = (tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA*) nimNewObj(sizeof(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA), NIM_ALIGNOF(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA));
	nimCopyMem((void*)T2_, (NIM_CONST void*)&TM__6mNpeIAN05DnDNzb9b3611A_613, sizeof(tyObject_Env_rstdotnim_checkHeadingHierarchy___D9cyh4GuH9bOx7S1iB2gJxvA));
	colonenv__1 = T2_;
	eqcopy___packagesZdocutilsZrst_u12489((&(*colonenv__1).p0), p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NimStringV2 msg_1;
		NimStringV2 colontmpD_;
		NimStringV2 colontmpD__2;
		NimStringV2 colontmpD__3;
		NimStringV2 colontmpD__4;
		NimStringV2 colontmpD__5;
		NimStringV2 colontmpD__6;
		NimStringV2 T8_;
		tyProc__oybrFf5HprJ7Qzy6JCxzgw T9_;
		NimStringV2 T10_;
		NI T11_;
		NimStringV2 T21_;
		if (!(((NI)1) < (NI)(lvl_p1 - (*(*colonenv__1).p0.s).hCurLevel))) goto LA5_;
		msg_1.len = 0; msg_1.p = NIM_NIL;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
		colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
		colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
		colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
		msg_1 = TM__6mNpeIAN05DnDNzb9b3611A_616;
		T8_.len = 0; T8_.p = NIM_NIL;
		nimZeroMem((void*)(&T9_), sizeof(tyProc__oybrFf5HprJ7Qzy6JCxzgw));
		T9_.ClP_0 = descr__packagesZdocutilsZrst_u12605; T9_.ClE_0 = colonenv__1;
		colontmpD_ = T9_.ClE_0? T9_.ClP_0(lvl_p1, T9_.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_621)(T9_.ClP_0))(lvl_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		T8_ = rawNewString(colontmpD_.len + 92);
appendString((&T8_), colontmpD_);
appendString((&T8_), TM__6mNpeIAN05DnDNzb9b3611A_623);
		colontmpD__2 = T8_;
		prepareAdd((&msg_1), colontmpD__2.len + 0);
appendString((&msg_1), colontmpD__2);
		T10_.len = 0; T10_.p = NIM_NIL;
		colontmpD__3 = dollar___systemZdollars_u9((*(*colonenv__1).p0.s).hLevels.p->data[(*(*colonenv__1).p0.s).hCurLevel].line);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		T11_ = (NI)0;
		T11_ = curLine__packagesZdocutilsZrst_u3775((&(*colonenv__1).p0));
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		colontmpD__4 = dollar___systemZdollars_u9(T11_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		T10_ = rawNewString(colontmpD__3.len + colontmpD__4.len + 3);
appendString((&T10_), colontmpD__3);
appendString((&T10_), TM__6mNpeIAN05DnDNzb9b3611A_624);
appendString((&T10_), colontmpD__4);
appendString((&T10_), TM__6mNpeIAN05DnDNzb9b3611A_625);
		colontmpD__5 = T10_;
		prepareAdd((&msg_1), colontmpD__5.len + 0);
appendString((&msg_1), colontmpD__5);
		{
			NI l_1;
			NI colontmp_;
			NI colontmp__2;
			NI res_1;
			l_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp__2 = (NI)0;
			colontmp_ = (NI)((*(*colonenv__1).p0.s).hCurLevel + ((NI)1));
			colontmp__2 = (NI)(lvl_p1 - ((NI)1));
			res_1 = colontmp_;
			{
				while (1) {
					NimStringV2 colontmpD__7;
					NimStringV2 colontmpD__8;
					NimStringV2 T15_;
					tyProc__oybrFf5HprJ7Qzy6JCxzgw T16_;
					if (!(res_1 <= colontmp__2)) goto LA14;
					colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
					colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
					l_1 = ((NI) (res_1));
					T15_.len = 0; T15_.p = NIM_NIL;
					nimZeroMem((void*)(&T16_), sizeof(tyProc__oybrFf5HprJ7Qzy6JCxzgw));
					T16_.ClP_0 = descr__packagesZdocutilsZrst_u12605; T16_.ClE_0 = colonenv__1;
					colontmpD__7 = T16_.ClE_0? T16_.ClP_0(l_1, T16_.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_627)(T16_.ClP_0))(l_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
					T15_ = rawNewString(colontmpD__7.len + 1);
appendString((&T15_), TM__6mNpeIAN05DnDNzb9b3611A_626);
appendString((&T15_), colontmpD__7);
					colontmpD__8 = T15_;
					prepareAdd((&msg_1), colontmpD__8.len + 0);
appendString((&msg_1), colontmpD__8);
					{
						if (!!((l_1 == (NI)(lvl_p1 - ((NI)1))))) goto LA19_;
						prepareAdd((&msg_1), 1);
appendString((&msg_1), TM__6mNpeIAN05DnDNzb9b3611A_629);
					}
LA19_: ;
					res_1 += ((NI)1);
					eqdestroy___system_u2691(colontmpD__8);
					eqdestroy___system_u2691(colontmpD__7);
				} LA14: ;
			}
		}
		T21_.len = 0; T21_.p = NIM_NIL;
		T21_ = rawNewString(msg_1.len + 1);
appendString((&T21_), msg_1);
appendString((&T21_), TM__6mNpeIAN05DnDNzb9b3611A_630);
		colontmpD__6 = T21_;
		rstMessage__packagesZdocutilsZrst_u3783((&(*colonenv__1).p0), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)6), colontmpD__6);
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		{
			LA7_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__6);
			eqdestroy___system_u2691(colontmpD__5);
			eqdestroy___system_u2691(colontmpD__4);
			eqdestroy___system_u2691(colontmpD__3);
			eqdestroy___system_u2691(colontmpD__2);
			eqdestroy___system_u2691(colontmpD_);
			eqdestroy___system_u2691(msg_1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA5_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrst_u18310(colonenv__1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseHeadline__packagesZdocutilsZrst_u12614)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	NimStringV2 colontmpD_;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	{
		NIM_BOOL T4_;
		tySequence__LqZapiAqCFeXPQZdoIAUew T7_;
		T4_ = (NIM_BOOL)0;
		T4_ = isMarkdownHeadline__packagesZdocutilsZrst_u12169((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!T4_) goto LA5_;
		T7_.len = 0; T7_.p = NIM_NIL;
		T7_.len = 0; T7_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)3), T7_, TM__6mNpeIAN05DnDNzb9b3611A_611);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*result)._kind_5.level = (*p_p0).tok.p->data[(*p_p0).idx].symbol.len;
		(*p_p0).idx += ((NI)2);
		parseUntilNewline__packagesZdocutilsZrst_u11586(p_p0, result);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA5_: ;
	{
		tySequence__LqZapiAqCFeXPQZdoIAUew T9_;
		NIM_CHAR c_1;
		NI T10_;
		T9_.len = 0; T9_.p = NIM_NIL;
		T9_.len = 0; T9_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)1), T9_, TM__6mNpeIAN05DnDNzb9b3611A_612);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		parseUntilNewline__packagesZdocutilsZrst_u11586(p_p0, result);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		c_1 = (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol.p->data[((NI)0)];
		(*p_p0).idx += ((NI)2);
		T10_ = (NI)0;
		T10_ = getLevel__packagesZdocutilsZrst_u11826(p_p0, c_1, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*result)._kind_5.level = T10_;
		checkHeadingHierarchy__packagesZdocutilsZrst_u12602((&(*p_p0)), (*result)._kind_5.level);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		(*(*p_p0).s).hCurLevel = (*result)._kind_5.level;
	}
LA2_: ;
	colontmpD_ = linkName__packagesZdocutilsZrst_u4019(result);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	addAnchorRst__packagesZdocutilsZrst_u4220(p_p0, colontmpD_, result, ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)3));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__2 = eqdup___packagesZdocutilsZrstast_u291(result);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__packagesZdocutilsZrstast_u466((&(*(*p_p0).s).tocPart), colontmpD__2);
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseOverline__packagesZdocutilsZrst_u12653)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	NimStringV2 colontmpD_;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
	NIM_CHAR c_1;
	tySequence__LqZapiAqCFeXPQZdoIAUew T2_;
	NI T16_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	c_1 = (*p_p0).tok.p->data[(*p_p0).idx].symbol.p->data[((NI)0)];
	(*p_p0).idx += ((NI)2);
	T2_.len = 0; T2_.p = NIM_NIL;
	T2_.len = 0; T2_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)2), T2_, TM__6mNpeIAN05DnDNzb9b3611A_631);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		while (1) {
			parseUntilNewline__packagesZdocutilsZrst_u11586(p_p0, result);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			{
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA7_;
				(*p_p0).idx += ((NI)1);
				{
					NI T11_;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
					T11_ = (NI)0;
					T11_ = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					if (!(T11_ < (*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].ival)) goto LA12_;
					colontmpD__3 = NIM_NIL;
					colontmpD__3 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_632);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					add__packagesZdocutilsZrstast_u463(result, colontmpD__3);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				}
				goto LA9_;
LA12_: ;
				{
					goto LA3;
				}
LA9_: ;
			}
			goto LA5_;
LA7_: ;
			{
				goto LA3;
			}
LA5_: ;
		}
	} LA3: ;
	T16_ = (NI)0;
	T16_ = getLevel__packagesZdocutilsZrst_u11826(p_p0, c_1, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*result)._kind_5.level = T16_;
	checkHeadingHierarchy__packagesZdocutilsZrst_u12602((&(*p_p0)), (*result)._kind_5.level);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*(*p_p0).s).hCurLevel = (*result)._kind_5.level;
	{
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4))) goto LA19_;
		(*p_p0).idx += ((NI)1);
		{
			if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA23_;
			(*p_p0).idx += ((NI)1);
		}
LA23_: ;
	}
LA19_: ;
	colontmpD_ = linkName__packagesZdocutilsZrst_u4019(result);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	addAnchorRst__packagesZdocutilsZrst_u4220(p_p0, colontmpD_, result, ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)3));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__2 = eqdup___packagesZdocutilsZrstast_u291(result);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	add__packagesZdocutilsZrstast_u466((&(*(*p_p0).s).tocPart), colontmpD__2);
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, tokStart__packagesZdocutilsZrst_u12763)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI idx_p1) {
	NI result;
	result = (*p_p0).tok.p->data[idx_p1].col;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, tokEnd__packagesZdocutilsZrst_u12770)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI idx_p1) {
	NI result;
	result = (NI)((NI)((*p_p0).tok.p->data[idx_p1].col + (*p_p0).tok.p->data[idx_p1].symbol.len) - ((NI)1));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, getColumns__packagesZdocutilsZrst_u12777)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg* cols_p1, NI startIdx_p2) {
	NI result;
	NI L_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	L_1 = ((NI)0);
	result = startIdx_p2;
	{
		while (1) {
			NI T3_;
			NI T4_;
			L_1 += ((NI)1);
			setLen__packagesZdocutilsZrst_u12788((&(*cols_p1)), (L_1));
			T3_ = (NI)0;
			T3_ = tokStart__packagesZdocutilsZrst_u12763(p_p0, result);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*cols_p1).p->data[(NI)(L_1 - ((NI)1))].start = T3_;
			T4_ = (NI)0;
			T4_ = tokEnd__packagesZdocutilsZrst_u12770(p_p0, result);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			(*cols_p1).p->data[(NI)(L_1 - ((NI)1))].stop = T4_;
			result += ((NI)1);
			{
				if (!!(((*p_p0).tok.p->data[result].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2)))) goto LA7_;
				goto LA1;
			}
LA7_: ;
			result += ((NI)1);
			{
				if (!!(((*p_p0).tok.p->data[result].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4)))) goto LA11_;
				goto LA1;
			}
LA11_: ;
		}
	} LA1: ;
	{
		if (!((*p_p0).tok.p->data[result].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA15_;
		result += ((NI)1);
	}
LA15_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isPureRst__packagesZdocutilsZrst_u3824)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NIM_BOOL result;
	result = !((((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)2)))&7U)))!=0));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, stopOrWarn__packagesZdocutilsZrst_u3852)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g errorType_p1, NimStringV2 arg_p2) {
	tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g colontmpD_;
	tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g colontmpD__2;
	tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g realMsgKind_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = (tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)0;
	colontmpD__2 = (tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = isPureRst__packagesZdocutilsZrst_u3824(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		colontmpD_ = errorType_p1;
		realMsgKind_1 = colontmpD_;
	}
	goto LA1_;
LA4_: ;
	{
		colontmpD__2 = ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17);
		realMsgKind_1 = colontmpD__2;
	}
LA1_: ;
	rstMessage__packagesZdocutilsZrst_u3783(p_p0, realMsgKind_1, arg_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, stopOrWarn__packagesZdocutilsZrst_u3876)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g errorType_p1, NimStringV2 arg_p2, NI line_p3, NI col_p4) {
	tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g colontmpD_;
	tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g colontmpD__2;
	tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g realMsgKind_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = (tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)0;
	colontmpD__2 = (tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = isPureRst__packagesZdocutilsZrst_u3824(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T3_) goto LA4_;
		colontmpD_ = errorType_p1;
		realMsgKind_1 = colontmpD_;
	}
	goto LA1_;
LA4_: ;
	{
		colontmpD__2 = ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17);
		realMsgKind_1 = colontmpD__2;
	}
LA1_: ;
	rstMessage__packagesZdocutilsZrst_u3813(p_p0, realMsgKind_1, arg_p2, line_p3, col_p4);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, checkColumns__packagesZdocutilsZrst_u12891)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg cols_p1) {
	NI i_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	i_1 = (*p_p0).idx;
	{
		if (!!(((NU8)((*p_p0).tok.p->data[i_1].symbol.p->data[((NI)0)]) == (NU8)(61)))) goto LA3_;
		stopOrWarn__packagesZdocutilsZrst_u3852(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)5), TM__6mNpeIAN05DnDNzb9b3611A_634);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	{
		NI col_1;
		NI colontmp_;
		NI T6_;
		NI i_2;
		col_1 = (NI)0;
		colontmp_ = (NI)0;
		T6_ = cols_p1.len;
		colontmp_ = T6_;
		i_2 = ((NI)0);
		{
			while (1) {
				if (!(i_2 < colontmp_)) goto LA8;
				col_1 = i_2;
				{
					NI T11_;
					NimStringV2 colontmpD_;
					NimStringV2 colontmpD__2;
					NimStringV2 colontmpD__3;
					tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ T15_;
					NI T16_;
					T11_ = (NI)0;
					T11_ = tokEnd__packagesZdocutilsZrst_u12770(p_p0, i_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					if (!!((T11_ == cols_p1.p->data[col_1].stop))) goto LA12_;
					colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
					colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
					colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
					colontmpD_ = dollar___systemZdollars_u9((NI)(col_1 + ((NI)1)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
					T15_[0] = colontmpD_;
					colontmpD__2 = dollar___systemZdollars_u9((NI)(cols_p1.p->data[col_1].stop + ((NI)1)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
					T15_[1] = colontmpD__2;
					colontmpD__3 = nsuFormatOpenArray(TM__6mNpeIAN05DnDNzb9b3611A_636, T15_, 2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
					T16_ = (NI)0;
					T16_ = tokEnd__packagesZdocutilsZrst_u12770(p_p0, i_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
					stopOrWarn__packagesZdocutilsZrst_u3876(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)5), colontmpD__3, (*p_p0).tok.p->data[i_1].line, T16_);
					if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
					{
						LA14_:;
					}
					{
						eqdestroy___system_u2691(colontmpD__3);
						eqdestroy___system_u2691(colontmpD__2);
						eqdestroy___system_u2691(colontmpD_);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
LA12_: ;
				i_1 += ((NI)1);
				{
					NI T21_;
					T21_ = cols_p1.len;
					if (!(col_1 == (NI)(T21_ - ((NI)1)))) goto LA22_;
					{
						if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA26_;
						i_1 += ((NI)1);
					}
LA26_: ;
					{
						if (!!(((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA30_;
						stopOrWarn__packagesZdocutilsZrst_u3852(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)5), TM__6mNpeIAN05DnDNzb9b3611A_638);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					}
LA30_: ;
				}
				goto LA19_;
LA22_: ;
				{
					if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2))) goto LA33_;
					i_1 += ((NI)1);
				}
				goto LA19_;
LA33_: ;
				{
					stopOrWarn__packagesZdocutilsZrst_u3876(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)5), TM__6mNpeIAN05DnDNzb9b3611A_640, (*p_p0).tok.p->data[i_1].line, (*p_p0).tok.p->data[i_1].col);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
LA19_: ;
				i_2 += ((NI)1);
			} LA8: ;
		}
	}
	}BeforeRet_: ;
}
static N_INLINE(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA**, X5BX5D___packagesZdocutilsZrst_u13287)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** s_p0, NI s_p0Len_0, NI i_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** result;
	result = &s_p0[(NI)(s_p0Len_0 - i_p1)];
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__qwqHTkRvwhrRyENtudHQ7g, getSpans__packagesZdocutilsZrst_u12933)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI nextLine_p1, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg cols_p2, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg unitedCols_p3) {
	tySequence__qwqHTkRvwhrRyENtudHQ7g result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	{
		NI T3_;
		NI T6_;
		NI iCell_1;
		NI jCell_1;
		NI uCell_1;
		T3_ = unitedCols_p3.len;
		if (!(((NI)0) < T3_)) goto LA4_;
		T6_ = unitedCols_p3.len;
		result = newSeq__pureZosproc_u390((T6_));
		iCell_1 = ((NI)0);
		jCell_1 = ((NI)0);
		uCell_1 = ((NI)0);
		{
			while (1) {
				NI T9_;
				T9_ = cols_p2.len;
				if (!(jCell_1 < T9_)) goto LA8;
				{
					if (!(cols_p2.p->data[jCell_1].stop < unitedCols_p3.p->data[uCell_1].stop)) goto LA12_;
					jCell_1 += ((NI)1);
				}
				goto LA10_;
LA12_: ;
				{
					if (!(cols_p2.p->data[jCell_1].stop == unitedCols_p3.p->data[uCell_1].stop)) goto LA15_;
					result.p->data[uCell_1] = (NI)((NI)(jCell_1 - iCell_1) + ((NI)1));
					iCell_1 = (NI)(jCell_1 + ((NI)1));
					jCell_1 = (NI)(jCell_1 + ((NI)1));
					uCell_1 += ((NI)1);
				}
				goto LA10_;
LA15_: ;
				{
					rstMessage__packagesZdocutilsZrst_u3813(p_p0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)5), TM__6mNpeIAN05DnDNzb9b3611A_642, (*p_p0).tok.p->data[nextLine_p1].line, (*p_p0).tok.p->data[nextLine_p1].col);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
LA10_: ;
			} LA8: ;
		}
	}
LA4_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, tokEnd__packagesZdocutilsZrst_u12774)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	result = tokEnd__packagesZdocutilsZrst_u12770(p_p0, (*p_p0).idx);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, tokStart__packagesZdocutilsZrst_u12767)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	NI result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	result = tokStart__packagesZdocutilsZrst_u12763(p_p0, (*p_p0).idx);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u13233)(tySequence__g9cc9ce4njfC9a8r1mQEl8mIg dest_p0) {
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(tyObject_ColSpec__Pj5Kd9cksSnFDEYTQgs0HeQ));
}
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseSimpleTableRow__packagesZdocutilsZrst_u12981)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tySequence__g9cc9ce4njfC9a8r1mQEl8mIg cols_p1, NIM_CHAR colChar_p2) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tySequence__g9cc9ce4njfC9a8r1mQEl8mIg unitedCols_1;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ row_1;
	NI colontmpD_;
	NI colontmpD__2;
	tySequence__qwqHTkRvwhrRyENtudHQ7g spans_1;
	tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg q_1;
	NI nextLine_1;
	NI afterSpan_1;
	NI T15_;
	NI line_1;
	tySequence__LqZapiAqCFeXPQZdoIAUew T108_;
NIM_BOOL oldNimErrFin113_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	unitedCols_1.len = 0; unitedCols_1.p = NIM_NIL;
	row_1.len = 0; row_1.p = NIM_NIL;
	colontmpD_ = (NI)0;
	colontmpD__2 = (NI)0;
	spans_1.len = 0; spans_1.p = NIM_NIL;
	nimZeroMem((void*)(&q_1), sizeof(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg));
	q_1.Sup.m_type = (&NTIv2__ZlacgQ8A2qzdbC1x2g4Gkg_);
	nextLine_1 = tokenAfterNewline__packagesZdocutilsZrst_u11606((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	afterSpan_1 = (NI)0;
	{
		NIM_BOOL T4_;
		T4_ = (NIM_BOOL)0;
		T4_ = ((*p_p0).tok.p->data[nextLine_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4));
		if (!(T4_)) goto LA5_;
		T4_ = ((NU8)((*p_p0).tok.p->data[nextLine_1].symbol.p->data[((NI)0)]) == (NU8)(45));
LA5_: ;
		if (!T4_) goto LA6_;
		afterSpan_1 = getColumns__packagesZdocutilsZrst_u12777((&(*p_p0)), (&unitedCols_1), nextLine_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			NIM_BOOL T10_;
			T10_ = (NIM_BOOL)0;
			T10_ = eqeq___packagesZdocutilsZrst_u12993(unitedCols_1, cols_p1);
			if (!(T10_)) goto LA11_;
			T10_ = ((NU8)((*p_p0).tok.p->data[nextLine_1].symbol.p->data[((NI)0)]) == (NU8)(colChar_p2));
LA11_: ;
			if (!T10_) goto LA12_;
			afterSpan_1 = nextLine_1;
			setLen__packagesZdocutilsZrst_u12788((&unitedCols_1), ((NI)0));
		}
LA12_: ;
	}
	goto LA2_;
LA6_: ;
	{
		afterSpan_1 = nextLine_1;
	}
LA2_: ;
	T15_ = (NI)0;
	{
		NI T18_;
		NI T21_;
		T18_ = unitedCols_1.len;
		if (!(((NI)0) < T18_)) goto LA19_;
		T21_ = unitedCols_1.len;
		colontmpD_ = T21_;
		T15_ = colontmpD_;
	}
	goto LA16_;
LA19_: ;
	{
		NI T23_;
		T23_ = cols_p1.len;
		colontmpD__2 = T23_;
		T15_ = colontmpD__2;
	}
LA16_: ;
	row_1 = newSeq__stdZsyncio_u571((T15_));
	spans_1 = getSpans__packagesZdocutilsZrst_u12933((&(*p_p0)), nextLine_1, cols_p1, unitedCols_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	line_1 = (*p_p0).tok.p->data[(*p_p0).idx].line;
	{
		while (1) {
			NI colontmpD__3;
			NI colontmpD__4;
			NI colontmpD__5;
			NI nCell_1;
			colontmpD__3 = (NI)0;
			colontmpD__4 = (NI)0;
			colontmpD__5 = (NI)0;
			nCell_1 = ((NI)0);
			{
				while (1) {
					NI colontmpD__6;
					NI colontmpD__7;
					NI colontmpD__8;
					if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA27;
					colontmpD__6 = (NI)0;
					colontmpD__7 = (NI)0;
					colontmpD__8 = (NI)0;
					{
						NI T30_;
						NI T31_;
						NI colontmpD__9;
						NI colontmpD__10;
						T30_ = (NI)0;
						T30_ = tokEnd__packagesZdocutilsZrst_u12774((&(*p_p0)));
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						T31_ = (NI)0;
						{
							NI T34_;
							T34_ = cols_p1.len;
							if (!(nCell_1 == (NI)(T34_ - ((NI)1)))) goto LA35_;
							colontmpD__6 = ((NI)IL64(9223372036854775807));
							T31_ = colontmpD__6;
						}
						goto LA32_;
LA35_: ;
						{
							NI T38_;
							T38_ = unitedCols_1.len;
							if (!(((NI)0) < T38_)) goto LA39_;
							colontmpD__7 = unitedCols_1.p->data[nCell_1].stop;
							T31_ = colontmpD__7;
						}
						goto LA32_;
LA39_: ;
						{
							colontmpD__8 = cols_p1.p->data[nCell_1].stop;
							T31_ = colontmpD__8;
						}
LA32_: ;
						if (!(T30_ <= T31_)) goto LA42_;
						colontmpD__9 = (NI)0;
						colontmpD__10 = (NI)0;
						{
							NI T46_;
							NI T47_;
							T46_ = (NI)0;
							T46_ = tokStart__packagesZdocutilsZrst_u12767((&(*p_p0)));
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							T47_ = (NI)0;
							{
								NI T50_;
								T50_ = unitedCols_1.len;
								if (!(((NI)0) < T50_)) goto LA51_;
								colontmpD__9 = unitedCols_1.p->data[nCell_1].start;
								T47_ = colontmpD__9;
							}
							goto LA48_;
LA51_: ;
							{
								colontmpD__10 = cols_p1.p->data[nCell_1].start;
								T47_ = colontmpD__10;
							}
LA48_: ;
							if (!(T46_ < T47_)) goto LA54_;
							{
								if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2)))) goto LA58_;
								stopOrWarn__packagesZdocutilsZrst_u3852((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)5), TM__6mNpeIAN05DnDNzb9b3611A_644);
								if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
								prepareAdd((&row_1.p->data[nCell_1]), (*p_p0).tok.p->data[(*p_p0).idx].symbol.len + 0);
appendString((&row_1.p->data[nCell_1]), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
							}
LA58_: ;
						}
						goto LA44_;
LA54_: ;
						{
							prepareAdd((&row_1.p->data[nCell_1]), (*p_p0).tok.p->data[(*p_p0).idx].symbol.len + 0);
appendString((&row_1.p->data[nCell_1]), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
						}
LA44_: ;
						(*p_p0).idx += ((NI)1);
					}
					goto LA28_;
LA42_: ;
					{
						NI colontmpD__11;
						NI colontmpD__12;
						NI colontmpD__13;
						colontmpD__11 = (NI)0;
						colontmpD__12 = (NI)0;
						colontmpD__13 = (NI)0;
						{
							NIM_BOOL T64_;
							NI T65_;
							NI T66_;
							T64_ = (NIM_BOOL)0;
							T65_ = (NI)0;
							T65_ = tokStart__packagesZdocutilsZrst_u12767((&(*p_p0)));
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							T66_ = (NI)0;
							{
								NI T69_;
								T69_ = cols_p1.len;
								if (!(nCell_1 == (NI)(T69_ - ((NI)1)))) goto LA70_;
								colontmpD__11 = ((NI)IL64(9223372036854775807));
								T66_ = colontmpD__11;
							}
							goto LA67_;
LA70_: ;
							{
								NI T73_;
								T73_ = unitedCols_1.len;
								if (!(((NI)0) < T73_)) goto LA74_;
								colontmpD__12 = unitedCols_1.p->data[nCell_1].stop;
								T66_ = colontmpD__12;
							}
							goto LA67_;
LA74_: ;
							{
								colontmpD__13 = cols_p1.p->data[nCell_1].stop;
								T66_ = colontmpD__13;
							}
LA67_: ;
							T64_ = (T65_ < T66_);
							if (!(T64_)) goto LA77_;
							T64_ = !(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2)));
LA77_: ;
							if (!T64_) goto LA78_;
							stopOrWarn__packagesZdocutilsZrst_u3852((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)5), TM__6mNpeIAN05DnDNzb9b3611A_646);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							prepareAdd((&row_1.p->data[nCell_1]), (*p_p0).tok.p->data[(*p_p0).idx].symbol.len + 0);
appendString((&row_1.p->data[nCell_1]), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
							(*p_p0).idx += ((NI)1);
						}
LA78_: ;
						nCell_1 += ((NI)1);
					}
LA28_: ;
				} LA27: ;
			}
			{
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA82_;
				(*p_p0).idx += ((NI)1);
			}
LA82_: ;
			{
				NI T86_;
				NI T87_;
				T86_ = (NI)0;
				T86_ = tokEnd__packagesZdocutilsZrst_u12774((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				T87_ = (NI)0;
				{
					NI T90_;
					T90_ = cols_p1.len;
					if (!(((NI)0) == (NI)(T90_ - ((NI)1)))) goto LA91_;
					colontmpD__3 = ((NI)IL64(9223372036854775807));
					T87_ = colontmpD__3;
				}
				goto LA88_;
LA91_: ;
				{
					NI T94_;
					T94_ = unitedCols_1.len;
					if (!(((NI)0) < T94_)) goto LA95_;
					colontmpD__4 = unitedCols_1.p->data[((NI)0)].stop;
					T87_ = colontmpD__4;
				}
				goto LA88_;
LA95_: ;
				{
					colontmpD__5 = cols_p1.p->data[((NI)0)].stop;
					T87_ = colontmpD__5;
				}
LA88_: ;
				if (!(T86_ <= T87_)) goto LA98_;
				goto LA24;
			}
LA98_: ;
			{
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4))) goto LA102_;
				goto LA24;
			}
LA102_: ;
			{
				NI nCell_2;
				NI colontmp_;
				NI T105_;
				NI res_1;
				nCell_2 = (NI)0;
				colontmp_ = (NI)0;
				T105_ = (row_1.len-1);
				colontmp_ = T105_;
				res_1 = ((NI)1);
				{
					while (1) {
						if (!(res_1 <= colontmp_)) goto LA107;
						nCell_2 = ((NI) (res_1));
						nimAddCharV1((&row_1.p->data[nCell_2]), 10);
						res_1 += ((NI)1);
					} LA107: ;
				}
			}
		}
	} LA24: ;
	T108_.len = 0; T108_.p = NIM_NIL;
	T108_.len = 0; T108_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)35), T108_, TM__6mNpeIAN05DnDNzb9b3611A_647);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI uCell_1;
		NI colontmp__2;
		NI T110_;
		NI i_1;
		uCell_1 = (NI)0;
		colontmp__2 = (NI)0;
		T110_ = row_1.len;
		colontmp__2 = T110_;
		i_1 = ((NI)0);
		{
			while (1) {
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* cell_1;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__14;
				NI T114_;
				tySequence__LqZapiAqCFeXPQZdoIAUew T121_;
				NI T122_;
				if (!(i_1 < colontmp__2)) goto LA112;
				cell_1 = NIM_NIL;
				colontmpD__14 = NIM_NIL;
				uCell_1 = i_1;
				initParser__packagesZdocutilsZrst_u3908((&q_1), (*p_p0).s);
				if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
				T114_ = (NI)0;
				{
					NI T117_;
					T117_ = unitedCols_1.len;
					if (!(((NI)0) < T117_)) goto LA118_;
					q_1.col = unitedCols_1.p->data[uCell_1].start;
				}
				goto LA115_;
LA118_: ;
				{
					q_1.col = cols_p1.p->data[uCell_1].start;
				}
LA115_: ;
				q_1.line = (NI)(line_1 - ((NI)1));
				getTokens__packagesZdocutilsZrst_u276(row_1.p->data[uCell_1], (&q_1.tok));
				if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
				T121_.len = 0; T121_.p = NIM_NIL;
				T121_.len = 0; T121_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				cell_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)37), T121_, TM__6mNpeIAN05DnDNzb9b3611A_648);
				if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
				T122_ = (NI)0;
				{
					NI T125_;
					T125_ = spans_1.len;
					if (!(T125_ == ((NI)0))) goto LA126_;
					(*cell_1)._kind_12.span = ((NI)0);
				}
				goto LA123_;
LA126_: ;
				{
					(*cell_1)._kind_12.span = spans_1.p->data[uCell_1];
				}
LA123_: ;
				colontmpD__14 = parseDoc__packagesZdocutilsZrst_u12316((&q_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
				add__packagesZdocutilsZrstast_u463(cell_1, colontmpD__14);
				if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
				add__packagesZdocutilsZrstast_u463(result, cell_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
				i_1 += ((NI)1);
				{
					LA113_:;
				}
				{
					oldNimErrFin113_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__14);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					eqdestroy___packagesZdocutilsZrstast_u285(cell_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					*nimErr_ = oldNimErrFin113_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA112: ;
		}
	}
	{
		if (!((*p_p0).idx < afterSpan_1)) goto LA133_;
		(*p_p0).idx = afterSpan_1;
	}
LA133_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrst_u12486((&q_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___pureZosproc_u474(spans_1);
		eqdestroy___system_u5506(row_1);
		eqdestroy___packagesZdocutilsZrst_u13233(unitedCols_1);
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseSimpleTable__packagesZdocutilsZrst_u13267)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tySequence__g9cc9ce4njfC9a8r1mQEl8mIg cols_1;
	NI startIdx_1;
	NIM_CHAR colChar_1;
	NI T2_;
NIM_BOOL oldNimErrFin5_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	cols_1.len = 0; cols_1.p = NIM_NIL;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)32));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	startIdx_1 = getColumns__packagesZdocutilsZrst_u12777((&(*p_p0)), (&cols_1), (*p_p0).idx);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colChar_1 = (*p_p0).tok.p->data[(*p_p0).idx].symbol.p->data[((NI)0)];
	checkColumns__packagesZdocutilsZrst_u12891((&(*p_p0)), cols_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*p_p0).idx = startIdx_1;
	T2_ = cols_1.len;
	(*result)._kind_10.colCount = T2_;
	{
		while (1) {
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* tabRow_1;
			tabRow_1 = NIM_NIL;
			{
				NI T10_;
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4))) goto LA8_;
				checkColumns__packagesZdocutilsZrst_u12891((&(*p_p0)), cols_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
				T10_ = (NI)0;
				T10_ = tokenAfterNewline__packagesZdocutilsZrst_u11606((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
				(*p_p0).idx = T10_;
				{
					if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA13_;
					eqdestroy___packagesZdocutilsZrstast_u285(tabRow_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					goto LA3;
				}
LA13_: ;
				{
					NI T17_;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** T20_;
					T17_ = (*result).sons.len;
					if (!(((NI)0) < T17_)) goto LA18_;
					T20_ = (tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA**)0;
					T20_ = X5BX5D___packagesZdocutilsZrst_u13287((((*result).sons).p) ? ((*result).sons.p->data) : NIM_NIL, (*result).sons.len, ((NI)1));
					if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
					(*(*T20_))._kind_11.endsHeader = NIM_TRUE;
				}
LA18_: ;
				{
					NI nRow_1;
					NI colontmp_;
					NI T22_;
					NI i_1;
					nRow_1 = (NI)0;
					colontmp_ = (NI)0;
					T22_ = (*result).sons.len;
					colontmp_ = T22_;
					i_1 = ((NI)0);
					{
						while (1) {
							if (!(i_1 < colontmp_)) goto LA24;
							nRow_1 = i_1;
							{
								NI nCell_1;
								NI colontmp__2;
								NI i_2;
								nCell_1 = (NI)0;
								colontmp__2 = (NI)0;
								colontmp__2 = len__packagesZdocutilsZrstast_u114((*result).sons.p->data[nRow_1]);
								if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
								i_2 = ((NI)0);
								{
									while (1) {
										tySequence__LqZapiAqCFeXPQZdoIAUew colontmpD_;
										NimStringV2 colontmpD__2;
										tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T28_;
										if (!(i_2 < colontmp__2)) goto LA27;
										nCell_1 = i_2;
										T28_ = NIM_NIL;
										T28_ = (tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) nimNewObjUninit(sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA));
										(*T28_).kind = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)36);
										colontmpD_ = eqdup___packagesZdocutilsZrstast_u158((*(*(*result).sons.p->data[nRow_1]).sons.p->data[nCell_1]).sons);
										if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
										(*T28_).sons = colontmpD_;
										(*T28_)._kind_12.span = (*(*(*result).sons.p->data[nRow_1]).sons.p->data[nCell_1])._kind_12.span;
										colontmpD__2 = eqdup___system_u2697((*(*(*result).sons.p->data[nRow_1]).sons.p->data[nCell_1]).anchor);
										(*T28_).anchor = colontmpD__2;
										eqsink___packagesZdocutilsZrstast_u294(&(*(*result).sons.p->data[nRow_1]).sons.p->data[nCell_1], T28_);
										if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
										i_2 += ((NI)1);
									} LA27: ;
								}
							}
							i_1 += ((NI)1);
						} LA24: ;
					}
				}
			}
LA8_: ;
			{
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0))) goto LA31_;
				eqdestroy___packagesZdocutilsZrstast_u285(tabRow_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				goto LA3;
			}
LA31_: ;
			tabRow_1 = parseSimpleTableRow__packagesZdocutilsZrst_u12981(p_p0, cols_1, colChar_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
			add__packagesZdocutilsZrstast_u463(result, tabRow_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
			{
				LA5_:;
			}
			{
				oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(tabRow_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				*nimErr_ = oldNimErrFin5_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		}
	} LA3: ;
	{
		LA1_:;
	}
	{
		eqdestroy___packagesZdocutilsZrst_u13233(cols_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18461)(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg* dest_p0) {
	eqdestroy___packagesZdocutilsZrst_u5790((*dest_p0).q3.curAnchors);
	eqdestroy___pureZosproc_u474((*dest_p0).q3.indentStack);
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic((*dest_p0).q3.s, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u2567((&(*(*dest_p0).q3.s)));
		nimRawDispose((*dest_p0).q3.s, ((NI)8));
	}
LA4_: ;
	eqdestroy___packagesZdocutilsZrst_u3922((*dest_p0).q3.tok);
	{
		NIM_BOOL T8_;
		T8_ = (NIM_BOOL)0;
		T8_ = nimDecRefIsLastDyn((*dest_p0).b2);
		if (!T8_) goto LA9_;
		eqdestroy___packagesZdocutilsZrstast_u173((&(*(*dest_p0).b2)));
		nimRawDispose((*dest_p0).b2, ((NI)8));
	}
LA9_: ;
	{
		NIM_BOOL T13_;
		T13_ = (NIM_BOOL)0;
		T13_ = nimDecRefIsLastDyn((*dest_p0).a1);
		if (!T13_) goto LA14_;
		eqdestroy___packagesZdocutilsZrstast_u173((&(*(*dest_p0).a1)));
		nimRawDispose((*dest_p0).a1, ((NI)8));
	}
LA14_: ;
	eqdestroy___types_u1571((*dest_p0).row0);
}
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u18562)(void* dest_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqdestroy___packagesZdocutilsZrst_u18461((&(*((tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg*) (dest_p0)))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u18473)(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg* dest_p0, void* env_p1) {
	nimTraceRef(&(*dest_p0).q3.s, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))), env_p1);
}
N_LIB_PRIVATE N_NIMCALL(tySequence__8Np6tlClE5az1CyqZdN19bQ, readTableRow__packagesZdocutilsZrst_u13334)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tySequence__8Np6tlClE5az1CyqZdN19bQ result;
	NI T19_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	{
		if (!eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_651)) goto LA3_;
		(*p_p0).idx += ((NI)1);
	}
LA3_: ;
	{
		while (1) {
			tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ limits_1;
			if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA6;
			nimZeroMem((void*)(&limits_1), sizeof(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ));
			limits_1.Field0 = (*p_p0).idx;
			{
				while (1) {
					if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA8;
					{
						NIM_BOOL T11_;
						T11_ = (NIM_BOOL)0;
						T11_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_652);
						if (!(T11_)) goto LA12_;
						T11_ = !(eqStrings((*p_p0).tok.p->data[(NI)((*p_p0).idx - ((NI)1))].symbol, TM__6mNpeIAN05DnDNzb9b3611A_653));
LA12_: ;
						if (!T11_) goto LA13_;
						goto LA7;
					}
LA13_: ;
					(*p_p0).idx += ((NI)1);
				} LA8: ;
			} LA7: ;
			limits_1.Field1 = (*p_p0).idx;
			add__packagesZdocutilsZrst_u13356((&result), limits_1);
			{
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0))) goto LA17_;
				goto LA5;
			}
LA17_: ;
			(*p_p0).idx += ((NI)1);
		} LA6: ;
	} LA5: ;
	T19_ = (NI)0;
	T19_ = tokenAfterNewline__packagesZdocutilsZrst_u11606((&(*p_p0)));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	(*p_p0).idx = T19_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getColContents__packagesZdocutilsZrst_u13390)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ colLim_p1) {
	NimStringV2 result;
	NimStringV2 T4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	{
		NI i_1;
		NI i_2;
		i_1 = (NI)0;
		i_2 = colLim_p1.Field0;
		{
			while (1) {
				if (!(i_2 < colLim_p1.Field1)) goto LA3;
				i_1 = i_2;
				prepareAdd((&result), (*p_p0).tok.p->data[i_1].symbol.len + 0);
appendString((&result), (*p_p0).tok.p->data[i_1].symbol);
				i_2 += ((NI)1);
			} LA3: ;
		}
	}
	T4_.len = 0; T4_.p = NIM_NIL;
	T4_ = nsuStrip(result, NIM_TRUE, NIM_TRUE, TM__6mNpeIAN05DnDNzb9b3611A_528);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T4_); goto BeforeRet_;}
	eqsink___system_u2700((&result), T4_);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_CLOSURE(void, parseRow__packagesZdocutilsZrst_u13435)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w cellKind_p1, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result_p2, void* ClE_0) {
	tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg* colonenvP__1;
	tySequence__8Np6tlClE5az1CyqZdN19bQ T1_;
	tySequence__LqZapiAqCFeXPQZdoIAUew T11_;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T12_;
NIM_BOOL oldNimErrFin16_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colonenvP__1 = (tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg*) ClE_0;
	T1_.len = 0; T1_.p = NIM_NIL;
	T1_ = readTableRow__packagesZdocutilsZrst_u13334(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___types_u1571(T1_); goto BeforeRet_;}
	eqsink___types_u1580((&(*colonenvP__1).row0), T1_);
	{
		NI T6_;
		if (!((*result_p2)._kind_10.colCount == ((NI)0))) goto LA4_;
		T6_ = (*colonenvP__1).row0.len;
		(*result_p2)._kind_10.colCount = T6_;
	}
	goto LA2_;
LA4_: ;
	{
		NI T8_;
		T8_ = (*colonenvP__1).row0.len;
		if (!(T8_ < (*result_p2)._kind_10.colCount)) goto LA9_;
		setLen__packagesZdocutilsZrst_u13445((&(*colonenvP__1).row0), ((*result_p2)._kind_10.colCount));
	}
	goto LA2_;
LA9_: ;
LA2_: ;
	T11_.len = 0; T11_.p = NIM_NIL;
	T11_.len = 0; T11_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	T12_ = NIM_NIL;
	T12_ = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)35), T11_, TM__6mNpeIAN05DnDNzb9b3611A_654);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T12_); goto BeforeRet_;}
	eqsink___packagesZdocutilsZrstast_u294(&(*colonenvP__1).a1, T12_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI j_1;
		NI colontmp_;
		NI i_1;
		j_1 = (NI)0;
		colontmp_ = (NI)0;
		colontmp_ = (*result_p2)._kind_10.colCount;
		i_1 = ((NI)0);
		{
			while (1) {
				NimStringV2 colontmpD_;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
				tySequence__LqZapiAqCFeXPQZdoIAUew T17_;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T18_;
				NimStringV2 T19_;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T20_;
				if (!(i_1 < colontmp_)) goto LA15;
				colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
				colontmpD__2 = NIM_NIL;
				j_1 = i_1;
				T17_.len = 0; T17_.p = NIM_NIL;
				T17_.len = 0; T17_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				T18_ = NIM_NIL;
				T18_ = newRstNode__packagesZdocutilsZrstast_u121(cellKind_p1, T17_, TM__6mNpeIAN05DnDNzb9b3611A_655);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T18_); goto LA16_;}
				eqsink___packagesZdocutilsZrstast_u294(&(*colonenvP__1).b2, T18_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				initParser__packagesZdocutilsZrst_u3908((&(*colonenvP__1).q3), (*p_p0).s);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				(*colonenvP__1).q3.col = (*p_p0).col;
				(*colonenvP__1).q3.line = (NI)((*p_p0).tok.p->data[(*p_p0).idx].line - ((NI)1));
				colontmpD_ = getColContents__packagesZdocutilsZrst_u13390(p_p0, (*colonenvP__1).row0.p->data[j_1]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				T19_.len = 0; T19_.p = NIM_NIL;
				T19_ = colontmpD_;
				getTokens__packagesZdocutilsZrst_u276(T19_, (&(*colonenvP__1).q3.tok));
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				T20_ = NIM_NIL;
				T20_ = (*colonenvP__1).b2;
				colontmpD__2 = parseDoc__packagesZdocutilsZrst_u12316((&(*colonenvP__1).q3));
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				add__packagesZdocutilsZrstast_u463(T20_, colontmpD__2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				add__packagesZdocutilsZrstast_u463((*colonenvP__1).a1, (*colonenvP__1).b2);
				if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
				i_1 += ((NI)1);
				{
					LA16_:;
				}
				{
					oldNimErrFin16_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___system_u2691(colontmpD_);
					*nimErr_ = oldNimErrFin16_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA15: ;
		}
	}
	add__packagesZdocutilsZrstast_u463(result_p2, (*colonenvP__1).a1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isValidDelimiterRow__packagesZdocutilsZrst_u13399)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, NI colNum_p1) {
	NIM_BOOL result;
	tySequence__8Np6tlClE5az1CyqZdN19bQ row_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	row_1.len = 0; row_1.p = NIM_NIL;
	row_1 = readTableRow__packagesZdocutilsZrst_u13334(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI T4_;
		T4_ = row_1.len;
		if (!!((T4_ == colNum_p1))) goto LA5_;
		result = NIM_FALSE;
		eqdestroy___types_u1571(row_1);
		goto BeforeRet_;
	}
LA5_: ;
	{
		tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ* limits_1;
		NI i_1;
		NI L_1;
		NI T8_;
		limits_1 = (tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ*)0;
		i_1 = ((NI)0);
		T8_ = row_1.len;
		L_1 = T8_;
		{
			while (1) {
				NimStringV2 content_1;
				if (!(i_1 < L_1)) goto LA10;
				content_1.len = 0; content_1.p = NIM_NIL;
				limits_1 = (&row_1.p->data[i_1]);
				content_1 = getColContents__packagesZdocutilsZrst_u13390(p_p0, (*limits_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
				{
					NIM_BOOL T14_;
					NIM_BOOL T16_;
					T14_ = (NIM_BOOL)0;
					T14_ = (content_1.len < ((NI)3));
					if (T14_) goto LA15_;
					T16_ = (NIM_BOOL)0;
					T16_ = nsuStartsWith(content_1, TM__6mNpeIAN05DnDNzb9b3611A_658);
					if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
					if (T16_) goto LA17_;
					T16_ = nsuStartsWith(content_1, TM__6mNpeIAN05DnDNzb9b3611A_660);
					if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
LA17_: ;
					T14_ = !(T16_);
LA15_: ;
					if (!T14_) goto LA18_;
					result = NIM_FALSE;
					eqdestroy___system_u2691(content_1);
					eqdestroy___types_u1571(row_1);
					goto BeforeRet_;
				}
LA18_: ;
				i_1 += ((NI)1);
				{
					LA11_:;
				}
				{
					eqdestroy___system_u2691(content_1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA10: ;
		}
	}
	result = NIM_TRUE;
	eqdestroy___types_u1571(row_1);
	goto BeforeRet_;
	{
		LA1_:;
	}
	{
		eqdestroy___types_u1571(row_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18527)(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(dest_p0, ((TNimTypeV2*) ((&NTIv2__mZ2FcrC2SOzDbCAWtWUGrg_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u18461((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseMarkdownTable__packagesZdocutilsZrst_u13428)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg* colonenv__1;
	tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg* T2_;
	tyProc__vhSXlNTSZBtRYzM7XoxQUA T3_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	colonenv__1 = NIM_NIL;
	T2_ = NIM_NIL;
	T2_ = (tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg*) nimNewObj(sizeof(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg), NIM_ALIGNOF(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg));
	nimCopyMem((void*)T2_, (NIM_CONST void*)&TM__6mNpeIAN05DnDNzb9b3611A_649, sizeof(tyObject_Env_rstdotnim_parseMarkdownTable___mZ2FcrC2SOzDbCAWtWUGrg));
	colonenv__1 = T2_;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)34));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	nimZeroMem((void*)(&T3_), sizeof(tyProc__vhSXlNTSZBtRYzM7XoxQUA));
	T3_.ClP_0 = parseRow__packagesZdocutilsZrst_u13435; T3_.ClE_0 = colonenv__1;
	T3_.ClE_0? T3_.ClP_0(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)36), result, T3_.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_656)(T3_.ClP_0))(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)36), result);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NIM_BOOL T6_;
		T6_ = (NIM_BOOL)0;
		T6_ = isValidDelimiterRow__packagesZdocutilsZrst_u13399(p_p0, (*result)._kind_10.colCount);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!(T6_)) goto LA7_;
		rstMessage__packagesZdocutilsZrst_u3820((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)4));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA7_: ;
	{
		while (1) {
			NIM_BOOL T11_;
			tyProc__vhSXlNTSZBtRYzM7XoxQUA T13_;
			T11_ = (NIM_BOOL)0;
			T11_ = predNL__packagesZdocutilsZrst_u12093((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			if (!(T11_)) goto LA12_;
			T11_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_661);
LA12_: ;
			if (!T11_) goto LA10;
			nimZeroMem((void*)(&T13_), sizeof(tyProc__vhSXlNTSZBtRYzM7XoxQUA));
			T13_.ClP_0 = parseRow__packagesZdocutilsZrst_u13435; T13_.ClE_0 = colonenv__1;
			T13_.ClE_0? T13_.ClP_0(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)37), result, T13_.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_662)(T13_.ClP_0))(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)37), result);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		} LA10: ;
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrst_u18527(colonenv__1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseOptionList__packagesZdocutilsZrst_u13549)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	NI col_1;
	NI order_1;
NIM_BOOL oldNimErrFin20_;
NIM_BOOL oldNimErrFin9_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)19));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	col_1 = (*p_p0).tok.p->data[(*p_p0).idx].col;
	order_1 = ((NI)1);
	{
		while (1) {
			{
				NIM_BOOL T5_;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* a_1;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* b_1;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* c_1;
				tySequence__LqZapiAqCFeXPQZdoIAUew T10_;
				tySequence__LqZapiAqCFeXPQZdoIAUew T11_;
				tySequence__LqZapiAqCFeXPQZdoIAUew T12_;
				NI j_1;
				T5_ = (NIM_BOOL)0;
				T5_ = ((*p_p0).tok.p->data[(*p_p0).idx].col == col_1);
				if (!(T5_)) goto LA6_;
				T5_ = isOptionList__packagesZdocutilsZrst_u12162((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA6_: ;
				if (!T5_) goto LA7_;
				a_1 = NIM_NIL;
				b_1 = NIM_NIL;
				c_1 = NIM_NIL;
				T10_.len = 0; T10_.p = NIM_NIL;
				T10_.len = 0; T10_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				a_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)21), T10_, TM__6mNpeIAN05DnDNzb9b3611A_663);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				T11_.len = 0; T11_.p = NIM_NIL;
				T11_.len = 0; T11_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				b_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)25), T11_, TM__6mNpeIAN05DnDNzb9b3611A_664);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				T12_.len = 0; T12_.p = NIM_NIL;
				T12_.len = 0; T12_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
				c_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)20), T12_, TM__6mNpeIAN05DnDNzb9b3611A_665);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				{
					NIM_BOOL T15_;
					T15_ = (NIM_BOOL)0;
					T15_ = match__packagesZdocutilsZrst_u10249((&(*p_p0)), (*p_p0).idx, TM__6mNpeIAN05DnDNzb9b3611A_666);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					if (!T15_) goto LA16_;
					(*p_p0).idx += ((NI)1);
				}
LA16_: ;
				{
					while (1) {
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
						if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1) || (*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA19;
						colontmpD_ = NIM_NIL;
						{
							NIM_BOOL T23_;
							T23_ = (NIM_BOOL)0;
							T23_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2));
							if (!(T23_)) goto LA24_;
							T23_ = (((NI)1) < (*p_p0).tok.p->data[(*p_p0).idx].symbol.len);
LA24_: ;
							if (!T23_) goto LA25_;
							(*p_p0).idx += ((NI)1);
							eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
							goto LA18;
						}
LA25_: ;
						colontmpD_ = newLeaf__packagesZdocutilsZrst_u9992(p_p0);
						if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
						add__packagesZdocutilsZrstast_u463(a_1, colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
						(*p_p0).idx += ((NI)1);
						{
							LA20_:;
						}
						{
							oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
							if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
							*nimErr_ = oldNimErrFin20_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					} LA19: ;
				} LA18: ;
				j_1 = tokenAfterNewline__packagesZdocutilsZrst_u11606((&(*p_p0)));
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				{
					NIM_BOOL T31_;
					NIM_BOOL T32_;
					NI T35_;
					T31_ = (NIM_BOOL)0;
					T32_ = (NIM_BOOL)0;
					T32_ = (((NI)0) < j_1);
					if (!(T32_)) goto LA33_;
					T32_ = ((*p_p0).tok.p->data[(NI)(j_1 - ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA33_: ;
					T31_ = T32_;
					if (!(T31_)) goto LA34_;
					T35_ = (NI)0;
					T35_ = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					T31_ = (T35_ < (*p_p0).tok.p->data[(NI)(j_1 - ((NI)1))].ival);
LA34_: ;
					if (!T31_) goto LA36_;
					pushInd__packagesZdocutilsZrst_u3889(p_p0, (*p_p0).tok.p->data[(NI)(j_1 - ((NI)1))].ival);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					parseSection__packagesZdocutilsZrst_u11589(p_p0, b_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
					popInd__packagesZdocutilsZrst_u3896(p_p0);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				}
				goto LA29_;
LA36_: ;
				{
					parseLine__packagesZdocutilsZrst_u11583(p_p0, b_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				}
LA29_: ;
				{
					while (1) {
						if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA40;
						(*p_p0).idx += ((NI)1);
					} LA40: ;
				}
				add__packagesZdocutilsZrstast_u463(c_1, a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				add__packagesZdocutilsZrstast_u463(c_1, b_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				(*c_1)._kind_6.order = order_1;
				order_1 += ((NI)1);
				add__packagesZdocutilsZrstast_u463(result, c_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
				{
					LA9_:;
				}
				{
					oldNimErrFin9_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(c_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___packagesZdocutilsZrstast_u285(b_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___packagesZdocutilsZrstast_u285(a_1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin9_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			goto LA3_;
LA7_: ;
			{
				{
					if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA46_;
					(*p_p0).idx -= ((NI)1);
				}
LA46_: ;
				goto LA1;
			}
LA3_: ;
		}
	} LA1: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w, whichRstLiteralBlock__packagesZdocutilsZrst_u12048)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = eqStrings((*p_p0).tok.p->data[(*p_p0).idx].symbol, TM__6mNpeIAN05DnDNzb9b3611A_668);
		if (!(T3_)) goto LA4_;
		T3_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA4_: ;
		if (!T3_) goto LA5_;
		{
			NI T9_;
			T9_ = (NI)0;
			T9_ = currInd__packagesZdocutilsZrst_u3883(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].ival < T9_)) goto LA10_;
			result = ((tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w)0);
		}
LA10_: ;
		{
			NI T14_;
			T14_ = (NI)0;
			T14_ = currInd__packagesZdocutilsZrst_u3883(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T14_ < (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].ival)) goto LA15_;
			result = ((tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w)1);
		}
		goto LA12_;
LA15_: ;
		{
			NI T18_;
			NI i_1;
			T18_ = (NI)0;
			T18_ = currInd__packagesZdocutilsZrst_u3883(p_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!(T18_ == (*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].ival)) goto LA19_;
			i_1 = (NI)((*p_p0).idx + ((NI)1));
			{
				while (1) {
					if (!((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA22;
					i_1 += ((NI)1);
				} LA22: ;
			}
			{
				NIM_BOOL T25_;
				T25_ = (NIM_BOOL)0;
				T25_ = ((*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5) || (*p_p0).tok.p->data[i_1].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4));
				if (!(T25_)) goto LA26_;
				T25_ = ((TM__6mNpeIAN05DnDNzb9b3611A_669[(NU)((((NU8)((*p_p0).tok.p->data[i_1].symbol.p->data[((NI)0)]))))>>3] &(1U<<((NU)((((NU8)((*p_p0).tok.p->data[i_1].symbol.p->data[((NI)0)]))))&7U)))!=0);
LA26_: ;
				if (!T25_) goto LA27_;
				result = ((tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w)2);
			}
			goto LA23_;
LA27_: ;
			{
				result = ((tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w)0);
			}
LA23_: ;
		}
		goto LA12_;
LA19_: ;
LA12_: ;
	}
	goto LA1_;
LA5_: ;
	{
		result = ((tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w)0);
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseQuotedLiteralBlock__packagesZdocutilsZrst_u11780)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	n_1 = NIM_NIL;
	result = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)26));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	n_1 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_671);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI indent_1;
		NIM_CHAR quoteSym_1;
		if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA4_;
		indent_1 = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		{
			while (1) {
				if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA7;
				(*p_p0).idx += ((NI)1);
			} LA7: ;
		}
		quoteSym_1 = (*p_p0).tok.p->data[(*p_p0).idx].symbol.p->data[((NI)0)];
		{
			while (1) {
				switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
				case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0):
				{
					goto LA8;
				}
				break;
				case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1):
				{
					{
						if (!((*p_p0).tok.p->data[(*p_p0).idx].ival < indent_1)) goto LA14_;
						goto LA8;
					}
					goto LA12_;
LA14_: ;
					{
						if (!((*p_p0).tok.p->data[(*p_p0).idx].ival == indent_1)) goto LA17_;
						{
							NIM_BOOL T21_;
							T21_ = (NIM_BOOL)0;
							T21_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5));
							if (!(T21_)) goto LA22_;
							T21_ = ((NU8)((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].symbol.p->data[((NI)0)]) == (NU8)(quoteSym_1));
LA22_: ;
							if (!T21_) goto LA23_;
							prepareAdd((&(*n_1)._kind_1.text), 1);
appendString((&(*n_1)._kind_1.text), TM__6mNpeIAN05DnDNzb9b3611A_672);
							(*p_p0).idx += ((NI)1);
						}
						goto LA19_;
LA23_: ;
						{
							if (!((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA26_;
							goto LA8;
						}
						goto LA19_;
LA26_: ;
						{
							rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17), TM__6mNpeIAN05DnDNzb9b3611A_674);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							goto LA8;
						}
LA19_: ;
					}
					goto LA12_;
LA17_: ;
					{
						rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)17), TM__6mNpeIAN05DnDNzb9b3611A_676);
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						goto LA8;
					}
LA12_: ;
				}
				break;
				default:
				{
					prepareAdd((&(*n_1)._kind_1.text), (*p_p0).tok.p->data[(*p_p0).idx].symbol.len + 0);
appendString((&(*n_1)._kind_1.text), (*p_p0).tok.p->data[(*p_p0).idx].symbol);
					(*p_p0).idx += ((NI)1);
				}
				break;
				}
			}
		} LA8: ;
	}
LA4_: ;
	add__packagesZdocutilsZrstast_u463(result, n_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrstast_u285(n_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseRstLiteralBlock__packagesZdocutilsZrst_u11817)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w kind_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	{
		if (!(kind_p1 == ((tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w)1))) goto LA3_;
		result = parseLiteralBlock__packagesZdocutilsZrst_u11743(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
LA3_: ;
	{
		result = parseQuotedLiteralBlock__packagesZdocutilsZrst_u11780(p_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, parseParagraph__packagesZdocutilsZrst_u12570)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result_p1) {
NIM_BOOL oldNimErrFin20_;
NIM_BOOL oldNimErrFin24_;
NIM_BOOL oldNimErrFin36_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		while (1) {
			switch ((*p_p0).tok.p->data[(*p_p0).idx].kind) {
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1):
			{
				{
					if (!((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA6_;
					(*p_p0).idx += ((NI)1);
					goto LA1;
				}
				goto LA4_;
LA6_: ;
				{
					NIM_BOOL T9_;
					NI T10_;
					NIM_BOOL T12_;
					NI T14_;
					tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w T17_;
					T9_ = (NIM_BOOL)0;
					T10_ = (NI)0;
					T10_ = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					T9_ = ((*p_p0).tok.p->data[(*p_p0).idx].ival == T10_);
					if (T9_) goto LA11_;
					T12_ = (NIM_BOOL)0;
					T12_ = isMd__packagesZdocutilsZrst_u3838((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					if (!(T12_)) goto LA13_;
					T14_ = (NI)0;
					T14_ = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					T12_ = (T14_ < (*p_p0).tok.p->data[(*p_p0).idx].ival);
LA13_: ;
					T9_ = T12_;
LA11_: ;
					if (!T9_) goto LA15_;
					(*p_p0).idx += ((NI)1);
					T17_ = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
					T17_ = whichSection__packagesZdocutilsZrst_u12198((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					switch (T17_) {
					case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)5):
					case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)77):
					case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)1):
					case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)3):
					case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)2):
					case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)48):
					{
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
						colontmpD_ = NIM_NIL;
						colontmpD_ = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_667);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						add__packagesZdocutilsZrstast_u463(result_p1, colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					}
					break;
					case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)29):
					{
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
						colontmpD__2 = NIM_NIL;
						colontmpD__2 = parseLineBlock__packagesZdocutilsZrst_u12280(p_p0);
						if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
						addIfNotNil__packagesZdocutilsZrstast_u493(result_p1, colontmpD__2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
						{
							LA20_:;
						}
						{
							oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							*nimErr_ = oldNimErrFin20_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					}
					break;
					case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)27):
					{
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__3;
						colontmpD__3 = NIM_NIL;
						colontmpD__3 = parseMarkdownBlockQuote__packagesZdocutilsZrst_u12533(p_p0);
						if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
						addIfNotNil__packagesZdocutilsZrstast_u493(result_p1, colontmpD__3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
						{
							LA24_:;
						}
						{
							oldNimErrFin24_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__3);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							*nimErr_ = oldNimErrFin24_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					}
					break;
					default:
					{
						(*p_p0).idx -= ((NI)1);
						goto LA1;
					}
					break;
					}
				}
				goto LA4_;
LA15_: ;
				{
					goto LA1;
				}
LA4_: ;
			}
			break;
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)5):
			{
				{
					NIM_BOOL T32_;
					tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w literalBlockKind_1;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__4;
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__5;
					T32_ = (NIM_BOOL)0;
					T32_ = isRst__packagesZdocutilsZrst_u3831((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					if (!(T32_)) goto LA33_;
					literalBlockKind_1 = whichRstLiteralBlock__packagesZdocutilsZrst_u12048((&(*p_p0)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					T32_ = !((literalBlockKind_1 == ((tyEnum_LiteralBlockKind__7rdLk0aPJ3mk1qXxQMpW5w)0)));
LA33_: ;
					if (!T32_) goto LA34_;
					colontmpD__4 = NIM_NIL;
					colontmpD__5 = NIM_NIL;
					colontmpD__4 = newRstLeaf__packagesZdocutilsZrstast_u454(TM__6mNpeIAN05DnDNzb9b3611A_670);
					if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
					add__packagesZdocutilsZrstast_u463(result_p1, colontmpD__4);
					if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
					(*p_p0).idx += ((NI)1);
					colontmpD__5 = parseRstLiteralBlock__packagesZdocutilsZrst_u11817(p_p0, literalBlockKind_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
					add__packagesZdocutilsZrstast_u463(result_p1, colontmpD__5);
					if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__5);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					goto LA1;
					{
						LA36_:;
					}
					{
						oldNimErrFin36_ = *nimErr_; *nimErr_ = NIM_FALSE;
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__5);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						*nimErr_ = oldNimErrFin36_;
					}
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
				goto LA30_;
LA34_: ;
				{
					parseInline__packagesZdocutilsZrst_u11440(p_p0, result_p1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
LA30_: ;
			}
			break;
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)2):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)3):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)4):
			case ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)6):
			{
				parseInline__packagesZdocutilsZrst_u11440(p_p0, result_p1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			break;
			default:
			{
				goto LA1;
			}
			break;
			}
		}
	} LA1: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w, sonKind__packagesZdocutilsZrst_u13893)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* father_p0, NI i_p1) {
	tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)77);
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = len__packagesZdocutilsZrstast_u114(father_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(i_p1 < T3_)) goto LA4_;
		result = (*(*father_p0).sons.p->data[i_p1]).kind;
	}
LA4_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, parseSection__packagesZdocutilsZrst_u11589)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result_p1) {
NIM_BOOL oldNimErrFin26_;
NIM_BOOL oldNimErrFin3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		while (1) {
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* a_1;
			NIM_BOOL leave_1;
			tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w k_1;
			a_1 = NIM_NIL;
			leave_1 = NIM_FALSE;
			{
				while (1) {
					if (!((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1))) goto LA5;
					{
						NI T8_;
						T8_ = (NI)0;
						T8_ = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
						if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
						if (!(T8_ == (*p_p0).tok.p->data[(*p_p0).idx].ival)) goto LA9_;
						(*p_p0).idx += ((NI)1);
					}
					goto LA6_;
LA9_: ;
					{
						NI T12_;
						T12_ = (NI)0;
						T12_ = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
						if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
						if (!(T12_ < (*p_p0).tok.p->data[(*p_p0).idx].ival)) goto LA13_;
						{
							if (!(((*(*p_p0).s).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)3)))&7U)))!=0)) goto LA17_;
							{
								NI T21_;
								tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD_;
								T21_ = (NI)0;
								T21_ = currInd__packagesZdocutilsZrst_u3883((&(*p_p0)));
								if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
								if (!(((NI)4) <= (NI)((*p_p0).tok.p->data[(*p_p0).idx].ival - T21_))) goto LA22_;
								colontmpD_ = NIM_NIL;
								colontmpD_ = parseLiteralBlock__packagesZdocutilsZrst_u11743(p_p0);
								if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
								add__packagesZdocutilsZrstast_u463(result_p1, colontmpD_);
								if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
								eqdestroy___packagesZdocutilsZrstast_u285(colontmpD_);
								if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
							}
							goto LA19_;
LA22_: ;
							{
								pushInd__packagesZdocutilsZrst_u3889(p_p0, (*p_p0).tok.p->data[(*p_p0).idx].ival);
								if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
								parseSection__packagesZdocutilsZrst_u11589(p_p0, result_p1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
								popInd__packagesZdocutilsZrst_u3896(p_p0);
								if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
							}
LA19_: ;
						}
						goto LA15_;
LA17_: ;
						{
							tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* a_2;
							a_2 = NIM_NIL;
							pushInd__packagesZdocutilsZrst_u3889(p_p0, (*p_p0).tok.p->data[(*p_p0).idx].ival);
							if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
							a_2 = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)31));
							if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
							parseSection__packagesZdocutilsZrst_u11589(p_p0, a_2);
							if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
							add__packagesZdocutilsZrstast_u463(result_p1, a_2);
							if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
							popInd__packagesZdocutilsZrst_u3896(p_p0);
							if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
							{
								LA26_:;
							}
							{
								oldNimErrFin26_ = *nimErr_; *nimErr_ = NIM_FALSE;
								eqdestroy___packagesZdocutilsZrstast_u285(a_2);
								if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
								*nimErr_ = oldNimErrFin26_;
							}
							if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
						}
LA15_: ;
					}
					goto LA6_;
LA13_: ;
					{
						{
							while (1) {
								NIM_BOOL T32_;
								T32_ = (NIM_BOOL)0;
								T32_ = !(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)));
								if (!(T32_)) goto LA33_;
								T32_ = ((*p_p0).tok.p->data[(NI)((*p_p0).idx + ((NI)1))].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)1));
LA33_: ;
								if (!T32_) goto LA31;
								(*p_p0).idx += ((NI)1);
							} LA31: ;
						}
						leave_1 = NIM_TRUE;
						goto LA4;
					}
LA6_: ;
				} LA5: ;
			} LA4: ;
			{
				NIM_BOOL T36_;
				T36_ = (NIM_BOOL)0;
				T36_ = leave_1;
				if (T36_) goto LA37_;
				T36_ = ((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0));
LA37_: ;
				if (!T36_) goto LA38_;
				eqdestroy___packagesZdocutilsZrstast_u285(a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				goto LA1;
			}
LA38_: ;
			a_1 = ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL);
			k_1 = whichSection__packagesZdocutilsZrst_u12198((&(*p_p0)));
			if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			switch (k_1) {
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)26):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T41_;
				(*p_p0).idx += ((NI)1);
				T41_ = NIM_NIL;
				T41_ = parseLiteralBlock__packagesZdocutilsZrst_u11743(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T41_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T41_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)6):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T43_;
				T43_ = NIM_NIL;
				T43_ = parseBulletList__packagesZdocutilsZrst_u13521(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T43_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T43_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)29):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T45_;
				T45_ = NIM_NIL;
				T45_ = parseLineBlock__packagesZdocutilsZrst_u12280(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T45_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T45_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)27):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T47_;
				T47_ = NIM_NIL;
				T47_ = parseMarkdownBlockQuote__packagesZdocutilsZrst_u12533(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T47_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T47_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)48):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T49_;
				T49_ = NIM_NIL;
				T49_ = parseDotDot__packagesZdocutilsZrst_u11741(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T49_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T49_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)38):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T51_;
				T51_ = NIM_NIL;
				T51_ = parseFootnote__packagesZdocutilsZrst_u13848(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T51_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T51_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)8):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T53_;
				T53_ = NIM_NIL;
				T53_ = parseEnumList__packagesZdocutilsZrst_u13660(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T53_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T53_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)77):
			{
				rstMessage__packagesZdocutilsZrst_u3783((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)6), TM__6mNpeIAN05DnDNzb9b3611A_601);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)5):
			{
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)10):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T57_;
				T57_ = NIM_NIL;
				T57_ = parseDefinitionList__packagesZdocutilsZrst_u13623(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T57_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T57_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)11):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T59_;
				T59_ = NIM_NIL;
				T59_ = parseMdDefinitionList__packagesZdocutilsZrst_u13608(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T59_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T59_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)15):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T65_;
				{
					if (!(((NI)0) < (*p_p0).idx)) goto LA63_;
					(*p_p0).idx -= ((NI)1);
				}
LA63_: ;
				T65_ = NIM_NIL;
				T65_ = parseFields__packagesZdocutilsZrst_u11666(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T65_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T65_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)4):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T67_;
				T67_ = NIM_NIL;
				T67_ = parseTransition__packagesZdocutilsZrst_u13495(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T67_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T67_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)1):
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)3):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T69_;
				T69_ = NIM_NIL;
				T69_ = parseHeadline__packagesZdocutilsZrst_u12614(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T69_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T69_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)2):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T71_;
				T71_ = NIM_NIL;
				T71_ = parseOverline__packagesZdocutilsZrst_u12653(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T71_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T71_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)32):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T73_;
				T73_ = NIM_NIL;
				T73_ = parseSimpleTable__packagesZdocutilsZrst_u13267(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T73_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T73_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)34):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T75_;
				T75_ = NIM_NIL;
				T75_ = parseMarkdownTable__packagesZdocutilsZrst_u13428(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T75_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T75_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)19):
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T77_;
				T77_ = NIM_NIL;
				T77_ = parseOptionList__packagesZdocutilsZrst_u13549(p_p0);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T77_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T77_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
			break;
			default:
			{
			}
			break;
			}
			{
				NIM_BOOL T81_;
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T85_;
				T81_ = (NIM_BOOL)0;
				T81_ = (a_1 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL));
				if (!(T81_)) goto LA82_;
				T81_ = !((k_1 == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)48)));
LA82_: ;
				if (!T81_) goto LA83_;
				T85_ = NIM_NIL;
				T85_ = newRstNodeA__packagesZdocutilsZrst_u9983(p_p0, ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)5));
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T85_); goto LA3_;}
				eqsink___packagesZdocutilsZrstast_u294(&a_1, T85_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
				parseParagraph__packagesZdocutilsZrst_u12570(p_p0, a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			}
LA83_: ;
			addIfNotNil__packagesZdocutilsZrstast_u493(result_p1, a_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
			{
				LA3_:;
			}
			{
				oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(a_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				*nimErr_ = oldNimErrFin3_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
	} LA1: ;
	{
		NIM_BOOL T90_;
		tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w T91_;
		tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w T93_;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T96_;
		T90_ = (NIM_BOOL)0;
		T91_ = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
		T91_ = sonKind__packagesZdocutilsZrst_u13893(result_p1, ((NI)0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T90_ = (T91_ == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)5));
		if (!(T90_)) goto LA92_;
		T93_ = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
		T93_ = sonKind__packagesZdocutilsZrst_u13893(result_p1, ((NI)1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T90_ = !((T93_ == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)5)));
LA92_: ;
		if (!T90_) goto LA94_;
		T96_ = NIM_NIL;
		T96_ = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), (*(*result_p1).sons.p->data[((NI)0)]).sons, (*(*result_p1).sons.p->data[((NI)0)]).anchor);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T96_); goto BeforeRet_;}
		eqsink___packagesZdocutilsZrstast_u294(&(*result_p1).sons.p->data[((NI)0)], T96_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA94_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseSectionWrapper__packagesZdocutilsZrst_u11643)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tySequence__LqZapiAqCFeXPQZdoIAUew T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	T1_.len = 0; T1_.p = NIM_NIL;
	T1_.len = 0; T1_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
	result = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T1_, TM__6mNpeIAN05DnDNzb9b3611A_104);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	parseSection__packagesZdocutilsZrst_u11589(p_p0, result);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		while (1) {
			NIM_BOOL T4_;
			NI T6_;
			T4_ = (NIM_BOOL)0;
			T4_ = ((*result).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0));
			if (!(T4_)) goto LA5_;
			T6_ = (NI)0;
			T6_ = len__packagesZdocutilsZrstast_u114(result);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			T4_ = (T6_ == ((NI)1));
LA5_: ;
			if (!T4_) goto LA3;
			eqcopy___packagesZdocutilsZrstast_u288(&result, (*result).sons.p->data[((NI)0)]);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		} LA3: ;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, parseDoc__packagesZdocutilsZrst_u12316)(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg* p_p0) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	result = parseSectionWrapper__packagesZdocutilsZrst_u11643(p_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!!(((*p_p0).tok.p->data[(*p_p0).idx].kind == ((tyEnum_TokType__k2ZtEdAsaWJ9cCxU8va6yzw)0)))) goto LA3_;
		rstMessage__packagesZdocutilsZrst_u3820((&(*p_p0)), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)7));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, rstParsePass1__packagesZdocutilsZrst_u15585)(NimStringV2 fragment_p0, NI line_p1, NI column_p2, tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* sharedState_p3) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg p_1;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	nimZeroMem((void*)(&p_1), sizeof(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg));
	p_1.Sup.m_type = (&NTIv2__ZlacgQ8A2qzdbC1x2g4Gkg_);
	initParser__packagesZdocutilsZrst_u3908((&p_1), sharedState_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	p_1.line = line_p1;
	p_1.col = column_p2;
	getTokens__packagesZdocutilsZrst_u276(fragment_p0, (&p_1.tok));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	result = parseDoc__packagesZdocutilsZrst_u12316((&p_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrst_u12486((&p_1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addAnchorNim__packagesZdocutilsZrst_u5936)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA** s_p0, NIM_BOOL external_p1, NimStringV2 refn_p2, NimStringV2 tooltip_p3, tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw* langSym_p4, NI priority_p5, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p6, NI32 module_p7) {
	tySequence__ib5UTyrs9aC6K60sNqKElQA colontmpD_;
	NimStringV2 colontmpD__2;
	tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw colontmpD__3;
	NimStringV2 colontmpD__4;
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA colontmpD__5;
	tySequence__ib5UTyrs9aC6K60sNqKElQA* T1_;
	tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD_ = newSeq__packagesZdocutilsZrst_u4268(((NI)0));
	T1_ = (tySequence__ib5UTyrs9aC6K60sNqKElQA*)0;
	T1_ = mgetOrPut__packagesZdocutilsZrst_u4332((&(*(*s_p0)).anchors), (*langSym_p4).name, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	nimZeroMem((void*)(&T2_), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
	nimZeroMem((void*)(&T2_), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
	T2_.kind = ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2);
	T2_._kind_3.external = external_p1;
	colontmpD__2 = eqdup___system_u2697(refn_p2);
	T2_._kind_3.refname = colontmpD__2;
	eqdup___packagesZdocutilsZdochelpers_u165(langSym_p4, (&colontmpD__3));
	T2_._kind_3.langSym = colontmpD__3;
	colontmpD__4 = eqdup___system_u2697(tooltip_p3);
	T2_._kind_3.tooltip = colontmpD__4;
	T2_.priority = priority_p5;
	colontmpD__5 = eqdup___packagesZdocutilsZrstast_u388(info_p6);
	T2_.info = colontmpD__5;
	T2_._kind_3.module = 0;
	add__packagesZdocutilsZrst_u5551((&(*T1_)), (&T2_));
	eqdestroy___packagesZdocutilsZrst_u2877(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, countTitles__packagesZdocutilsZrst_u11922)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1) {
{	{
		if (!(n_p1 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL))) goto LA3_;
		goto BeforeRet_;
	}
LA3_: ;
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** node_1;
		NI i_1;
		NI L_1;
		NI T6_;
		node_1 = (tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA**)0;
		i_1 = ((NI)0);
		T6_ = (*n_p1).sons.len;
		L_1 = T6_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA8;
				node_1 = &(*n_p1).sons.p->data[i_1];
				{
					if (!!(((*node_1) == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL)))) goto LA11_;
					{
						if (!!(((*(*node_1)).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)2) || (*(*node_1)).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)61) || (*(*node_1)).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)76)))) goto LA15_;
						goto LA5;
					}
LA15_: ;
					{
						if (!((*(*node_1)).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)2))) goto LA19_;
						{
							if (!(*s_p0).hLevels.p->data[(*s_p0).hTitleCnt].hasPeers) goto LA23_;
							goto LA5;
						}
LA23_: ;
						(*s_p0).hTitleCnt += ((NI)1);
						{
							if (!(((NI)2) <= (*s_p0).hTitleCnt)) goto LA27_;
							goto LA5;
						}
LA27_: ;
					}
LA19_: ;
				}
LA11_: ;
				i_1 += ((NI)1);
			} LA8: ;
		}
	} LA5: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, fixHeadlines__packagesZdocutilsZrst_u12693)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0) {
NIM_BOOL oldNimErrFin27_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA** n_1;
		NI i_1;
		NI L_1;
		NI T2_;
		n_1 = (tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA**)0;
		i_1 = ((NI)0);
		T2_ = (*s_p0).tocPart.len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				n_1 = &(*s_p0).tocPart.p->data[i_1];
				{
					if (!((*(*n_1)).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)1) || (*(*n_1)).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)2))) goto LA7_;
					{
						if (!((*s_p0).hTitleCnt == ((NI)2))) goto LA11_;
						{
							if (!((*(*n_1))._kind_5.level == ((NI)1))) goto LA15_;
							(*(*n_1))._kind_5.level = ((NI)0);
						}
						goto LA13_;
LA15_: ;
						{
							if (!(((NI)2) <= (*(*n_1))._kind_5.level)) goto LA18_;
							(*(*n_1))._kind_5.level -= ((NI)1);
						}
						goto LA13_;
LA18_: ;
LA13_: ;
					}
					goto LA9_;
LA11_: ;
					{
						if (!((*s_p0).hTitleCnt == ((NI)0))) goto LA21_;
						(*(*n_1))._kind_5.level += ((NI)1);
					}
					goto LA9_;
LA21_: ;
LA9_: ;
				}
LA7_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	{
		NI iHeading_1;
		NI colontmp_;
		NI T24_;
		NI res_1;
		iHeading_1 = (NI)0;
		colontmp_ = (NI)0;
		T24_ = ((*s_p0).tocPart.len-1);
		colontmp_ = T24_;
		res_1 = ((NI)0);
		{
			while (1) {
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_2;
				if (!(res_1 <= colontmp_)) goto LA26;
				n_2 = NIM_NIL;
				iHeading_1 = ((NI) (res_1));
				eqcopy___packagesZdocutilsZrstast_u288(&n_2, (*s_p0).tocPart.p->data[iHeading_1]);
				if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
				{
					NimStringV2 T32_;
					if (!(((NI)1) <= (*n_2)._kind_5.level)) goto LA30_;
					T32_.len = 0; T32_.p = NIM_NIL;
					T32_ = rstnodeToRefname__packagesZdocutilsZrst_u78(n_2);
					if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T32_); goto LA27_;}
					eqsink___system_u2700((&(*n_2).anchor), T32_);
					{
						NimStringV2 sectionPrefix_1;
						if (!(*s_p0).hasToc) goto LA35_;
						sectionPrefix_1.len = 0; sectionPrefix_1.p = NIM_NIL;
						sectionPrefix_1 = TM__6mNpeIAN05DnDNzb9b3611A_677;
						{
							NI i_2;
							NI colontmp__2;
							NI res_2;
							i_2 = (NI)0;
							colontmp__2 = (NI)0;
							colontmp__2 = (NI)(iHeading_1 - ((NI)1));
							res_2 = colontmp__2;
							{
								while (1) {
									if (!(((NI)0) <= res_2)) goto LA40;
									i_2 = ((NI) (res_2));
									{
										NIM_BOOL T43_;
										NimStringV2 colontmpD_;
										NimStringV2 T48_;
										T43_ = (NIM_BOOL)0;
										T43_ = (((NI)1) <= (*(*s_p0).tocPart.p->data[i_2])._kind_5.level);
										if (!(T43_)) goto LA44_;
										T43_ = ((*(*s_p0).tocPart.p->data[i_2])._kind_5.level < (*n_2)._kind_5.level);
LA44_: ;
										if (!T43_) goto LA45_;
										colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
										T48_.len = 0; T48_.p = NIM_NIL;
										colontmpD_ = rstnodeToRefname__packagesZdocutilsZrst_u78((*s_p0).tocPart.p->data[i_2]);
										if (NIM_UNLIKELY(*nimErr_)) goto LA47_;
										T48_ = rawNewString(colontmpD_.len + 1);
appendString((&T48_), colontmpD_);
appendString((&T48_), TM__6mNpeIAN05DnDNzb9b3611A_678);
										eqsink___system_u2700((&sectionPrefix_1), T48_);
										eqdestroy___system_u2691(colontmpD_);
										goto LA38;
										{
											LA47_:;
										}
										{
											eqdestroy___system_u2691(colontmpD_);
										}
										if (NIM_UNLIKELY(*nimErr_)) goto LA37_;
									}
LA45_: ;
									res_2 -= ((NI)1);
								} LA40: ;
							}
						} LA38: ;
						{
							NimStringV2 T55_;
							if (!!((sectionPrefix_1.len == 0))) goto LA53_;
							T55_.len = 0; T55_.p = NIM_NIL;
							T55_ = rawNewString(sectionPrefix_1.len + (*n_2).anchor.len + 0);
appendString((&T55_), sectionPrefix_1);
appendString((&T55_), (*n_2).anchor);
							eqsink___system_u2700((&(*n_2).anchor), T55_);
						}
LA53_: ;
						{
							LA37_:;
						}
						{
							eqdestroy___system_u2691(sectionPrefix_1);
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
					}
LA35_: ;
				}
LA30_: ;
				res_1 += ((NI)1);
				{
					LA27_:;
				}
				{
					oldNimErrFin27_ = *nimErr_; *nimErr_ = NIM_FALSE;
					eqdestroy___packagesZdocutilsZrstast_u285(n_2);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					*nimErr_ = oldNimErrFin27_;
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			} LA26: ;
		}
	}
	setLen__packagesZdocutilsZrstast_u241((&(*s_p0).tocPart), ((NI)0));
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18666)(tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic((*dest_p0).s0, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u2567((&(*(*dest_p0).s0)));
		nimRawDispose((*dest_p0).s0, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u18777)(void* dest_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqdestroy___packagesZdocutilsZrst_u18666((&(*((tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ*) (dest_p0)))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u18678)(tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ* dest_p0, void* env_p1) {
	nimTraceRef(&(*dest_p0).s0, ((TNimTypeV2*) ((&NTIv2__6YauuaWEZeOKzNYK3p1vqA_))), env_p1);
}
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3788)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p1, NimStringV2 arg_p2) {
	NimStringV2 colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD_ = currFilename__packagesZdocutilsZrst_u2422(s_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	(*s_p0).msgHandler.ClE_0? (*s_p0).msgHandler.ClP_0(colontmpD_, ((NI)1), ((NI)0), msgKind_p1, arg_p2, (*s_p0).msgHandler.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_680)((*s_p0).msgHandler.ClP_0))(colontmpD_, ((NI)1), ((NI)0), msgKind_p1, arg_p2);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD_);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(NimStringV2*, X5BX5D___cgen_u3675)(NimStringV2* s_p0, NI s_p0Len_0, NI i_p1) {
	NimStringV2* result;
	result = (&s_p0[(NI)(s_p0Len_0 - i_p1)]);
	return result;
}
N_LIB_PRIVATE N_CLOSURE(NimStringV2, listFootnotes__packagesZdocutilsZrst_u8263)(tySequence__jK2T9bFw5BWKL8ZZ854oXZg locations_p0, void* ClE_0) {
	NimStringV2 result;
	tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ* colonenvP__1;
	tySequence__sM4lkSb7zS6F7OVMvW9cffQ lines_1;
	NimStringV2 colontmpD_;
	NimStringV2 colontmpD__2;
	NimStringV2 colontmpD__3;
	NimStringV2 T20_;
	NI T21_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	colonenvP__1 = (tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ*) ClE_0;
	lines_1.len = 0; lines_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
	colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
	{
		tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA* info_1;
		NI i_1;
		NI L_1;
		NI T3_;
		info_1 = (tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA*)0;
		i_1 = ((NI)0);
		T3_ = locations_p0.len;
		L_1 = T3_;
		{
			while (1) {
				NimStringV2 colontmpD__4;
				NimStringV2* T17_;
				if (!(i_1 < L_1)) goto LA5;
				colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
				info_1 = (&locations_p0.p->data[i_1]);
				{
					NI T9_;
					NimStringV2 file_1;
					NimStringV2 T13_;
					T9_ = (NI)0;
					T9_ = len__packagesZdocutilsZrst_u857((&(*(*colonenvP__1).s0).filenames));
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
					if (!(((NI)1) < T9_)) goto LA10_;
					file_1.len = 0; file_1.p = NIM_NIL;
					file_1 = getFilename__packagesZdocutilsZrst_u2405((&(*(*colonenvP__1).s0).filenames), (*info_1).fileIndex);
					if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
					T13_.len = 0; T13_.p = NIM_NIL;
					T13_ = rawNewString(file_1.len + 1);
appendString((&T13_), file_1);
appendString((&T13_), TM__6mNpeIAN05DnDNzb9b3611A_683);
					add__stdZenumutils_u71((&lines_1), T13_);
					{
						LA12_:;
					}
					{
						eqdestroy___system_u2691(file_1);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
				}
				goto LA7_;
LA10_: ;
				{
					add__stdZenumutils_u71((&lines_1), TM__6mNpeIAN05DnDNzb9b3611A_684);
				}
LA7_: ;
				T17_ = (NimStringV2*)0;
				T17_ = X5BX5D___cgen_u3675(((lines_1).p) ? (lines_1.p->data) : NIM_NIL, lines_1.len, ((NI)1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
				colontmpD__4 = dollar___systemZdollars_u44((*info_1).line);
				if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
				prepareAdd((&(*T17_)), colontmpD__4.len + 0);
appendString((&(*T17_)), colontmpD__4);
				i_1 += ((NI)1);
				{
					LA6_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__4);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA5: ;
		}
	}
	T20_.len = 0; T20_.p = NIM_NIL;
	T21_ = lines_1.len;
	colontmpD_ = dollar___systemZdollars_u9(T21_);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD__2 = nsuJoinSep(((lines_1).p) ? (lines_1.p->data) : NIM_NIL, lines_1.len, TM__6mNpeIAN05DnDNzb9b3611A_687);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T20_ = rawNewString(colontmpD_.len + colontmpD__2.len + 9);
appendString((&T20_), colontmpD_);
appendString((&T20_), TM__6mNpeIAN05DnDNzb9b3611A_686);
appendString((&T20_), colontmpD__2);
appendString((&T20_), TM__6mNpeIAN05DnDNzb9b3611A_688);
	colontmpD__3 = T20_;
	prepareAdd((&result), colontmpD__3.len + 0);
appendString((&result), colontmpD__3);
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(colontmpD__3);
		eqdestroy___system_u2691(colontmpD__2);
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___system_u5506(lines_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZrst_u3444)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* src_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow* Result) {
	nimZeroMem((void*)Result, sizeof(tyTuple__4Ywt2LYBMs9aMJ09cL7digow));
	(*Result).Field0 = (*src_p0).Field0;
	(*Result).Field1 = (*src_p0).Field1;
	(*Result).Field2 = (*src_p0).Field2;
	(*Result).Field3 = (*src_p0).Field3;
	(*Result).Field4 = eqdup___system_u2697((*src_p0).Field4);
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u3369)(tySequence__vdmFdgox3dhDOMkkFi9ayfg* dest_p0) {
	(*dest_p0).len = 0; (*dest_p0).p = NIM_NIL;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u3438)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* dest_p0) {
	eqdestroy___system_u2691((*dest_p0).Field4);
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u3435)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* dest_p0) {
	(*dest_p0).Field0 = 0;
	(*dest_p0).Field1 = 0;
	(*dest_p0).Field2 = 0;
	(*dest_p0).Field3 = 0;
	(*dest_p0).Field4.len = 0; (*dest_p0).Field4.p = NIM_NIL;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u3447)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* dest_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow* src_p1) {
	(*dest_p0).Field0 = (*src_p1).Field0;
	(*dest_p0).Field1 = (*src_p1).Field1;
	(*dest_p0).Field2 = (*src_p1).Field2;
	(*dest_p0).Field3 = (*src_p1).Field3;
	if ((*dest_p0).Field4.p != (*src_p1).Field4.p) {	eqdestroy___system_u2691((*dest_p0).Field4);
	}
(*dest_p0).Field4.len = (*src_p1).Field4.len; (*dest_p0).Field4.p = (*src_p1).Field4.p;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u3441)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* dest_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow* src_p1) {
	(*dest_p0).Field0 = (*src_p1).Field0;
	(*dest_p0).Field1 = (*src_p1).Field1;
	(*dest_p0).Field2 = (*src_p1).Field2;
	(*dest_p0).Field3 = (*src_p1).Field3;
	eqcopy___system_u2694((&(*dest_p0).Field4), (*src_p1).Field4);
}
static N_INLINE(void, prepend__packagesZdocutilsZrst_u9209)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* L_p0, tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* n_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqcopy___packagesZdocutilsZrst_u8811(&(*n_p1).next, (*L_p0).head, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqcopy___packagesZdocutilsZrst_u8811(&(*L_p0).head, n_p1, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!((*L_p0).tail == ((tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) NIM_NIL))) goto LA3_;
		(*L_p0).tail = n_p1;
	}
LA3_: ;
	}BeforeRet_: ;
}
static N_INLINE(void, prepend__packagesZdocutilsZrst_u9159)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* L_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow* value_p1) {
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colontmpD_ = NIM_NIL;
	colontmpD_ = newSinglyLinkedNode__packagesZdocutilsZrst_u8798(value_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	prepend__packagesZdocutilsZrst_u9209(L_p0, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrst_u8808(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig, dotdot___stdZenumutils_u106)(NI a_p0, NI b_p1) {
	tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig result;
	result.a = a_p0;
	result.b = b_p1;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u3381)(tySequence__vdmFdgox3dhDOMkkFi9ayfg* dest_p0, tySequence__vdmFdgox3dhDOMkkFi9ayfg src_p1) {
	if ((*dest_p0).p != src_p1.p) {	eqdestroy___packagesZdocutilsZrst_u3372((*dest_p0));
	}
(*dest_p0).len = src_p1.len; (*dest_p0).p = src_p1.p;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u18707)(tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(dest_p0, ((TNimTypeV2*) ((&NTIv2__4unMVq6uP9bSXW6xlS0qVIQ_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u18666((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)8));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, orderFootnotes__packagesZdocutilsZrst_u8261)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0) {
	tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ* colonenv__1;
	tySequence__vdmFdgox3dhDOMkkFi9ayfg result_1;
	tySequence__vdmFdgox3dhDOMkkFi9ayfg manuallyN_1;
	tySequence__vdmFdgox3dhDOMkkFi9ayfg autoN_1;
	tySequence__vdmFdgox3dhDOMkkFi9ayfg autoSymbol_1;
	tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ* T2_;
NIM_BOOL oldNimErrFin74_;
NIM_BOOL oldNimErrFin50_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	colonenv__1 = NIM_NIL;
	result_1.len = 0; result_1.p = NIM_NIL;
	manuallyN_1.len = 0; manuallyN_1.p = NIM_NIL;
	autoN_1.len = 0; autoN_1.p = NIM_NIL;
	autoSymbol_1.len = 0; autoSymbol_1.p = NIM_NIL;
	T2_ = NIM_NIL;
	T2_ = (tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ*) nimNewObj(sizeof(tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ), NIM_ALIGNOF(tyObject_Env_rstdotnim_orderFootnotes___4unMVq6uP9bSXW6xlS0qVIQ));
	(*T2_).Sup.m_type = (&NTIv2__4unMVq6uP9bSXW6xlS0qVIQ_);
	colonenv__1 = T2_;
	eqcopy___packagesZdocutilsZrst_u3744(&(*colonenv__1).s0, s_p0, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI T5_;
		NI T6_;
		NimStringV2 colontmpD_;
		NimStringV2 colontmpD__2;
		NimStringV2 colontmpD__3;
		NimStringV2 colontmpD__4;
		NimStringV2 T10_;
		tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ T11_;
		tyProc__C2lBZACRol4T3mX0xDY7Eg T12_;
		tyProc__C2lBZACRol4T3mX0xDY7Eg T13_;
		T5_ = (*(*colonenv__1).s0).lineFootnoteNum.len;
		T6_ = (*(*colonenv__1).s0).lineFootnoteNumRef.len;
		if (!!((T5_ == T6_))) goto LA7_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
		colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
		T10_.len = 0; T10_.p = NIM_NIL;
		nimZeroMem((void*)(&T12_), sizeof(tyProc__C2lBZACRol4T3mX0xDY7Eg));
		T12_.ClP_0 = listFootnotes__packagesZdocutilsZrst_u8263; T12_.ClE_0 = colonenv__1;
		colontmpD_ = T12_.ClE_0? T12_.ClP_0((*(*colonenv__1).s0).lineFootnoteNum, T12_.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_689)(T12_.ClP_0))((*(*colonenv__1).s0).lineFootnoteNum);
		if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
		T11_[0] = colontmpD_;
		nimZeroMem((void*)(&T13_), sizeof(tyProc__C2lBZACRol4T3mX0xDY7Eg));
		T13_.ClP_0 = listFootnotes__packagesZdocutilsZrst_u8263; T13_.ClE_0 = colonenv__1;
		colontmpD__2 = T13_.ClE_0? T13_.ClP_0((*(*colonenv__1).s0).lineFootnoteNumRef, T13_.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_690)(T13_.ClP_0))((*(*colonenv__1).s0).lineFootnoteNumRef);
		if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
		T11_[1] = colontmpD__2;
		colontmpD__3 = nsuFormatOpenArray(TM__6mNpeIAN05DnDNzb9b3611A_682, T11_, 2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
		T10_ = rawNewString(colontmpD__3.len + 28);
appendString((&T10_), colontmpD__3);
appendString((&T10_), TM__6mNpeIAN05DnDNzb9b3611A_692);
		colontmpD__4 = T10_;
		rstMessage__packagesZdocutilsZrst_u3788((*colonenv__1).s0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)10), colontmpD__4);
		if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
		{
			LA9_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__4);
			eqdestroy___system_u2691(colontmpD__3);
			eqdestroy___system_u2691(colontmpD__2);
			eqdestroy___system_u2691(colontmpD_);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA7_: ;
	{
		NI T18_;
		NI T19_;
		NimStringV2 colontmpD__5;
		NimStringV2 colontmpD__6;
		NimStringV2 colontmpD__7;
		NimStringV2 colontmpD__8;
		NimStringV2 T23_;
		tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ T24_;
		tyProc__C2lBZACRol4T3mX0xDY7Eg T25_;
		tyProc__C2lBZACRol4T3mX0xDY7Eg T26_;
		T18_ = (*(*colonenv__1).s0).lineFootnoteSym.len;
		T19_ = (*(*colonenv__1).s0).lineFootnoteSymRef.len;
		if (!!((T18_ == T19_))) goto LA20_;
		colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
		colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
		colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
		colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
		T23_.len = 0; T23_.p = NIM_NIL;
		nimZeroMem((void*)(&T25_), sizeof(tyProc__C2lBZACRol4T3mX0xDY7Eg));
		T25_.ClP_0 = listFootnotes__packagesZdocutilsZrst_u8263; T25_.ClE_0 = colonenv__1;
		colontmpD__5 = T25_.ClE_0? T25_.ClP_0((*(*colonenv__1).s0).lineFootnoteSym, T25_.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_694)(T25_.ClP_0))((*(*colonenv__1).s0).lineFootnoteSym);
		if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
		T24_[0] = colontmpD__5;
		nimZeroMem((void*)(&T26_), sizeof(tyProc__C2lBZACRol4T3mX0xDY7Eg));
		T26_.ClP_0 = listFootnotes__packagesZdocutilsZrst_u8263; T26_.ClE_0 = colonenv__1;
		colontmpD__6 = T26_.ClE_0? T26_.ClP_0((*(*colonenv__1).s0).lineFootnoteSymRef, T26_.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_695)(T26_.ClP_0))((*(*colonenv__1).s0).lineFootnoteSymRef);
		if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
		T24_[1] = colontmpD__6;
		colontmpD__7 = nsuFormatOpenArray(TM__6mNpeIAN05DnDNzb9b3611A_693, T24_, 2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
		T23_ = rawNewString(colontmpD__7.len + 26);
appendString((&T23_), colontmpD__7);
appendString((&T23_), TM__6mNpeIAN05DnDNzb9b3611A_697);
		colontmpD__8 = T23_;
		rstMessage__packagesZdocutilsZrst_u3788((*colonenv__1).s0, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)10), colontmpD__8);
		if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
		{
			LA22_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__8);
			eqdestroy___system_u2691(colontmpD__7);
			eqdestroy___system_u2691(colontmpD__6);
			eqdestroy___system_u2691(colontmpD__5);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA20_: ;
	{
		tyTuple__4Ywt2LYBMs9aMJ09cL7digow* fs_1;
		NI i_1;
		NI L_1;
		NI T30_;
		fs_1 = (tyTuple__4Ywt2LYBMs9aMJ09cL7digow*)0;
		i_1 = ((NI)0);
		T30_ = (*(*colonenv__1).s0).footnotes.len;
		L_1 = T30_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA32;
				fs_1 = (&(*(*colonenv__1).s0).footnotes.p->data[i_1]);
				{
					tyTuple__4Ywt2LYBMs9aMJ09cL7digow colontmpD__9;
					tyTuple__4Ywt2LYBMs9aMJ09cL7digow T37_;
					if (!((*fs_1).Field0 == ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)0))) goto LA35_;
					nimZeroMem((void*)(&T37_), sizeof(tyTuple__4Ywt2LYBMs9aMJ09cL7digow));
					eqdup___packagesZdocutilsZrst_u3444((&(*fs_1)), (&T37_));
					colontmpD__9 = T37_;
					add__packagesZdocutilsZrst_u8152((&manuallyN_1), (&colontmpD__9));
				}
				goto LA33_;
LA35_: ;
				{
					tyTuple__4Ywt2LYBMs9aMJ09cL7digow colontmpD__10;
					tyTuple__4Ywt2LYBMs9aMJ09cL7digow T41_;
					if (!((*fs_1).Field0 == ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)1) || (*fs_1).Field0 == ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)2))) goto LA39_;
					nimZeroMem((void*)(&T41_), sizeof(tyTuple__4Ywt2LYBMs9aMJ09cL7digow));
					eqdup___packagesZdocutilsZrst_u3444((&(*fs_1)), (&T41_));
					colontmpD__10 = T41_;
					add__packagesZdocutilsZrst_u8152((&autoN_1), (&colontmpD__10));
				}
				goto LA33_;
LA39_: ;
				{
					tyTuple__4Ywt2LYBMs9aMJ09cL7digow colontmpD__11;
					tyTuple__4Ywt2LYBMs9aMJ09cL7digow T43_;
					nimZeroMem((void*)(&T43_), sizeof(tyTuple__4Ywt2LYBMs9aMJ09cL7digow));
					eqdup___packagesZdocutilsZrst_u3444((&(*fs_1)), (&T43_));
					colontmpD__11 = T43_;
					add__packagesZdocutilsZrst_u8152((&autoSymbol_1), (&colontmpD__11));
				}
LA33_: ;
				i_1 += ((NI)1);
			} LA32: ;
		}
	}
	{
		NI T46_;
		T46_ = autoN_1.len;
		if (!(T46_ == ((NI)0))) goto LA47_;
		result_1 = manuallyN_1;
		eqwasMoved___packagesZdocutilsZrst_u3369((&manuallyN_1));
	}
	goto LA44_;
LA47_: ;
	{
		tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA lst_1;
		tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* curNode_1;
		tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* nextNode_1;
		tySequence__vdmFdgox3dhDOMkkFi9ayfg resultX60gensym123__1;
		NI firstAuto_1;
		nimZeroMem((void*)(&lst_1), sizeof(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA));
		curNode_1 = NIM_NIL;
		nextNode_1 = NIM_NIL;
		resultX60gensym123__1.len = 0; resultX60gensym123__1.p = NIM_NIL;
		sort__packagesZdocutilsZrst_u8367(((manuallyN_1).p) ? (manuallyN_1.p->data) : NIM_NIL, manuallyN_1.len, ((tyEnum_SortOrder__wt7l6Gbd8C9c61b6I621QeA)1));
		if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
		initSinglyLinkedList__packagesZdocutilsZrst_u8692((&lst_1));
		if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
		{
			tyTuple__4Ywt2LYBMs9aMJ09cL7digow* elem_1;
			NI i_2;
			NI L_2;
			NI T52_;
			elem_1 = (tyTuple__4Ywt2LYBMs9aMJ09cL7digow*)0;
			i_2 = ((NI)0);
			T52_ = manuallyN_1.len;
			L_2 = T52_;
			{
				while (1) {
					if (!(i_2 < L_2)) goto LA54;
					elem_1 = (&manuallyN_1.p->data[i_2]);
					append__packagesZdocutilsZrst_u8715((&lst_1), (&(*elem_1)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
					i_2 += ((NI)1);
				} LA54: ;
			}
		}
		firstAuto_1 = ((NI)0);
		{
			NIM_BOOL T57_;
			tyTuple__4Ywt2LYBMs9aMJ09cL7digow T61_;
			T57_ = (NIM_BOOL)0;
			T57_ = (lst_1.head == ((tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) NIM_NIL));
			if (T57_) goto LA58_;
			T57_ = !(((*lst_1.head).value.Field1 == ((NI)1)));
LA58_: ;
			if (!T57_) goto LA59_;
			T61_.Field0 = autoN_1.p->data[((NI)0)].Field0;
			T61_.Field1 = ((NI)1);
			T61_.Field2 = autoN_1.p->data[((NI)0)].Field2;
			T61_.Field3 = ((NI)-1);
			T61_.Field4 = autoN_1.p->data[((NI)0)].Field4;
			prepend__packagesZdocutilsZrst_u9159((&lst_1), (&T61_));
			if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
			firstAuto_1 = ((NI)1);
		}
LA59_: ;
		eqcopy___packagesZdocutilsZrst_u8811(&curNode_1, lst_1.head, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
		{
			tySequence__vdmFdgox3dhDOMkkFi9ayfg colontmp_;
			tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g* kind_1;
			NI* x_1;
			NI* autoNumIdx_1;
			NI* y_1;
			NimStringV2* label_1;
			tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig T64_;
			NI i_3;
			NI L_3;
			NI T65_;
			colontmp_.len = 0; colontmp_.p = NIM_NIL;
			kind_1 = (tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g*)0;
			x_1 = (NI*)0;
			autoNumIdx_1 = (NI*)0;
			y_1 = (NI*)0;
			label_1 = (NimStringV2*)0;
			T64_ = dotdot___stdZenumutils_u106(firstAuto_1, ((NI)1));
			colontmp_ = X5BX5D___packagesZdocutilsZrst_u9265(((autoN_1).p) ? (autoN_1.p->data) : NIM_NIL, autoN_1.len, T64_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA63_;
			i_3 = ((NI)0);
			T65_ = colontmp_.len;
			L_3 = T65_;
			{
				while (1) {
					if (!(i_3 < L_3)) goto LA67;
					kind_1 = (&colontmp_.p->data[i_3].Field0);
					x_1 = (&colontmp_.p->data[i_3].Field1);
					autoNumIdx_1 = (&colontmp_.p->data[i_3].Field2);
					y_1 = (&colontmp_.p->data[i_3].Field3);
					label_1 = (&colontmp_.p->data[i_3].Field4);
					{
						while (1) {
							eqcopy___packagesZdocutilsZrst_u8811(&nextNode_1, (*curNode_1).next, NIM_FALSE);
							if (NIM_UNLIKELY(*nimErr_)) goto LA63_;
							if (!!((nextNode_1 == ((tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) NIM_NIL)))) goto LA69;
							{
								tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* n_1;
								tyTuple__4Ywt2LYBMs9aMJ09cL7digow T75_;
								if (!(((NI)1) < (NI)((*nextNode_1).value.Field1 - (*curNode_1).value.Field1))) goto LA72_;
								n_1 = NIM_NIL;
								T75_.Field0 = (*kind_1);
								T75_.Field1 = (NI)((*curNode_1).value.Field1 + ((NI)1));
								T75_.Field2 = (*autoNumIdx_1);
								T75_.Field3 = ((NI)-1);
								T75_.Field4 = (*label_1);
								n_1 = newSinglyLinkedNode__packagesZdocutilsZrst_u9336((&T75_));
								if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
								eqcopy___packagesZdocutilsZrst_u8811(&(*curNode_1).next, n_1, NIM_TRUE);
								if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
								eqcopy___packagesZdocutilsZrst_u8811(&(*n_1).next, nextNode_1, NIM_TRUE);
								if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
								eqsink___packagesZdocutilsZrst_u8819(&curNode_1, n_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
								eqwasMoved___packagesZdocutilsZrst_u8805(&n_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA74_;
								eqdestroy___packagesZdocutilsZrst_u8808(n_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA63_;
								goto LA68;
								{
									LA74_:;
								}
								{
									oldNimErrFin74_ = *nimErr_; *nimErr_ = NIM_FALSE;
									eqdestroy___packagesZdocutilsZrst_u8808(n_1);
									if (NIM_UNLIKELY(*nimErr_)) goto LA63_;
									*nimErr_ = oldNimErrFin74_;
								}
								if (NIM_UNLIKELY(*nimErr_)) goto LA63_;
							}
							goto LA70_;
LA72_: ;
							{
								eqsink___packagesZdocutilsZrst_u8819(&curNode_1, nextNode_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA63_;
								eqwasMoved___packagesZdocutilsZrst_u8805(&nextNode_1);
								if (NIM_UNLIKELY(*nimErr_)) goto LA63_;
							}
LA70_: ;
						} LA69: ;
					} LA68: ;
					{
						tyTuple__4Ywt2LYBMs9aMJ09cL7digow T83_;
						if (!(nextNode_1 == ((tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) NIM_NIL))) goto LA81_;
						T83_.Field0 = (*kind_1);
						T83_.Field1 = (NI)((*curNode_1).value.Field1 + ((NI)1));
						T83_.Field2 = (*autoNumIdx_1);
						T83_.Field3 = ((NI)-1);
						T83_.Field4 = (*label_1);
						append__packagesZdocutilsZrst_u9401((&lst_1), (&T83_));
						if (NIM_UNLIKELY(*nimErr_)) goto LA63_;
						eqcopy___packagesZdocutilsZrst_u8811(&curNode_1, lst_1.tail, NIM_FALSE);
						if (NIM_UNLIKELY(*nimErr_)) goto LA63_;
					}
LA81_: ;
					i_3 += ((NI)1);
				} LA67: ;
			}
			{
				LA63_:;
			}
			{
				eqdestroy___packagesZdocutilsZrst_u3372(colontmp_);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
		}
		{
			tyTuple__4Ywt2LYBMs9aMJ09cL7digow itX60gensym123__1;
			tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* it_1;
			nimZeroMem((void*)(&itX60gensym123__1), sizeof(tyTuple__4Ywt2LYBMs9aMJ09cL7digow));
			it_1 = NIM_NIL;
			it_1 = lst_1.head;
			{
				while (1) {
					tyTuple__4Ywt2LYBMs9aMJ09cL7digow colontmpD__12;
					tyTuple__4Ywt2LYBMs9aMJ09cL7digow T89_;
					tyTuple__4Ywt2LYBMs9aMJ09cL7digow blitTmp_1;
					if (!!((it_1 == ((tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) NIM_NIL)))) goto LA88;
					nimZeroMem((void*)(&T89_), sizeof(tyTuple__4Ywt2LYBMs9aMJ09cL7digow));
					eqdup___packagesZdocutilsZrst_u3444((&(*it_1).value), (&T89_));
					colontmpD__12 = T89_;
					eqsink___packagesZdocutilsZrst_u3447((&itX60gensym123__1), (&colontmpD__12));
					nimZeroMem((void*)(&blitTmp_1), sizeof(tyTuple__4Ywt2LYBMs9aMJ09cL7digow));
					blitTmp_1 = itX60gensym123__1;
					eqwasMoved___packagesZdocutilsZrst_u3435((&itX60gensym123__1));
					add__packagesZdocutilsZrst_u8152((&resultX60gensym123__1), (&blitTmp_1));
					it_1 = (*it_1).next;
				} LA88: ;
			}
			eqdestroy___packagesZdocutilsZrst_u3438((&itX60gensym123__1));
		}
		result_1 = resultX60gensym123__1;
		{
			LA50_:;
		}
		{
			oldNimErrFin50_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrst_u8808(nextNode_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___packagesZdocutilsZrst_u8808(curNode_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___packagesZdocutilsZrst_u9629(lst_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin50_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA44_: ;
	{
		tyTuple__4Ywt2LYBMs9aMJ09cL7digow* fs_2;
		NI i_4;
		NI L_4;
		NI T93_;
		fs_2 = (tyTuple__4Ywt2LYBMs9aMJ09cL7digow*)0;
		i_4 = ((NI)0);
		T93_ = autoSymbol_1.len;
		L_4 = T93_;
		{
			while (1) {
				NimStringV2 label_2;
				NI i_5;
				NI symbolNum_1;
				NI nSymbols_1;
				tyTuple__4Ywt2LYBMs9aMJ09cL7digow T96_;
				NimStringV2 blitTmp_2;
				if (!(i_4 < L_4)) goto LA95;
				label_2.len = 0; label_2.p = NIM_NIL;
				fs_2 = (&autoSymbol_1.p->data[i_4]);
				i_5 = (NI)((*fs_2).Field3 - ((NI)1));
				symbolNum_1 = (NI)((NI)(i_5 / ((NI)3)) % ((NI)9));
				nSymbols_1 = (NI)((NI)(((NI)1) + (NI)(i_5 % ((NI)3))) + (NI)(((NI)3) * (NI)(i_5 / ((NI)27))));
				label_2 = nsuRepeatStr(footnoteAutoSymbols__packagesZdocutilsZrst_u9803[(symbolNum_1)- 0], (nSymbols_1));
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				T96_.Field0 = (*fs_2).Field0;
				T96_.Field1 = ((NI)-1);
				T96_.Field2 = ((NI)-1);
				T96_.Field3 = (*fs_2).Field3;
				blitTmp_2 = label_2;
				T96_.Field4 = blitTmp_2;
				add__packagesZdocutilsZrst_u8152((&result_1), (&T96_));
				i_4 += ((NI)1);
			} LA95: ;
		}
	}
	eqsink___packagesZdocutilsZrst_u3381((&(*(*colonenv__1).s0).footnotes), result_1);
	eqwasMoved___packagesZdocutilsZrst_u3369((&result_1));
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrst_u3372(autoSymbol_1);
		eqdestroy___packagesZdocutilsZrst_u3372(autoN_1);
		eqdestroy___packagesZdocutilsZrst_u3372(manuallyN_1);
		eqdestroy___packagesZdocutilsZrst_u3372(result_1);
		eqdestroy___packagesZdocutilsZrst_u18707(colonenv__1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_u32)(NI hcode_p0) {
	NIM_BOOL result;
	result = !((hcode_p0 == ((NI)0)));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3806)(tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg* filenames_p0, tyProc__lsy8uLKFmavBA17NQuqO5g f_p1, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p2, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p3, NimStringV2 arg_p4) {
	NimStringV2 file_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	file_1.len = 0; file_1.p = NIM_NIL;
	file_1 = getFilename__packagesZdocutilsZrst_u2405(filenames_p0, info_p2.fileIndex);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	f_p1.ClE_0? f_p1.ClP_0(file_1, ((NI) (info_p2.line)), ((NI) (info_p2.col)), msgKind_p3, arg_p4, f_p1.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_710)(f_p1.ClP_0))(file_1, ((NI) (info_p2.line)), ((NI) (info_p2.col)), msgKind_p3, arg_p4);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(file_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(Exception*, getCurrentException)(void) {
	Exception* result;
	result = NIM_NIL;
	eqcopy___system_u3661(&result, currException__system_u3628, NIM_FALSE);
	return result;
}
static N_INLINE(NimStringV2, X5BX5D___pureZstrutils_u1314)(NimStringV2 s_p0, tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig x_p1) {
	NimStringV2 result;
	NI a_1;
	NI L_1;
	result.len = 0; result.p = NIM_NIL;
	a_1 = x_p1.a;
	L_1 = (NI)((NI)((NI)(s_p0.len - x_p1.b) - a_1) + ((NI)1));
	result = mnewString((L_1));
	{
		NI i_1;
		NI i_2;
		i_1 = (NI)0;
		i_2 = ((NI)0);
		{
			while (1) {
				if (!(i_2 < L_1)) goto LA3;
				i_1 = i_2;
				nimPrepareStrMutationV2((&result));
				result.p->data[i_1] = s_p0.p->data[(NI)(i_1 + a_1)];
				i_2 += ((NI)1);
			} LA3: ;
		}
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, extractLinkEnd__packagesZdocutilsZrst_u15592)(NimStringV2 x_p0) {
	NimStringV2 result;
	NI colontmpD_;
	NI colontmpD__2;
	NI i_1;
	NI last_1;
	NI j_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	colontmpD_ = (NI)0;
	colontmpD__2 = (NI)0;
	i_1 = nsuFindChar(x_p0, 35, ((NI)0), ((NI)-1));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!(((NI)0) <= i_1)) goto LA3_;
		colontmpD_ = i_1;
		last_1 = colontmpD_;
	}
	goto LA1_;
LA3_: ;
	{
		colontmpD__2 = (NI)(x_p0.len - ((NI)1));
		last_1 = colontmpD__2;
	}
LA1_: ;
	j_1 = nsuRFindChar(x_p0, 47, ((NI)0), last_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		tyObject_HSlice__JgojxK65oMA6E0HRsL2Wig T10_;
		if (!(((NI)0) <= j_1)) goto LA8_;
		T10_ = dotdot___stdZenumutils_u106((NI)(j_1 + ((NI)1)), ((NI)1));
		result = X5BX5D___pureZstrutils_u1314(x_p0, T10_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA6_;
LA8_: ;
	{
		eqcopy___system_u2694((&result), x_p0);
	}
LA6_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, rstMessage__packagesZdocutilsZrst_u3800)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 filename_p1, tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g msgKind_p2, NimStringV2 arg_p3) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	(*s_p0).msgHandler.ClE_0? (*s_p0).msgHandler.ClP_0(filename_p1, ((NI)1), ((NI)0), msgKind_p2, arg_p3, (*s_p0).msgHandler.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_718)((*s_p0).msgHandler.ClP_0))(filename_p1, ((NI)1), ((NI)0), msgKind_p2, arg_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addAnchorExtRst__packagesZdocutilsZrst_u5846)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA** s_p0, NimStringV2 key_p1, NimStringV2 refn_p2, tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ anchorType_p3, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p4) {
	NimStringV2 name_1;
	tySequence__ib5UTyrs9aC6K60sNqKElQA colontmpD_;
	NimStringV2 colontmpD__2;
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA colontmpD__3;
	NI prio_1;
	tySequence__ib5UTyrs9aC6K60sNqKElQA* T1_;
	tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	name_1.len = 0; name_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	name_1 = nsuToLowerAsciiStr(key_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	prio_1 = internalRefPriority__packagesZdocutilsZrst_u4204(anchorType_p3);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	colontmpD_ = newSeq__packagesZdocutilsZrst_u4268(((NI)0));
	T1_ = (tySequence__ib5UTyrs9aC6K60sNqKElQA*)0;
	T1_ = mgetOrPut__packagesZdocutilsZrst_u4332((&(*(*s_p0)).anchors), name_1, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	nimZeroMem((void*)(&T2_), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
	T2_.kind = ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)1);
	colontmpD__2 = eqdup___system_u2697(refn_p2);
	T2_._kind_2.refnameExt = colontmpD__2;
	T2_.priority = prio_1;
	colontmpD__3 = eqdup___packagesZdocutilsZrstast_u388(info_p4);
	T2_.info = colontmpD__3;
	T2_._kind_2.anchorTypeExt = anchorType_p3;
	add__packagesZdocutilsZrst_u5551((&(*T1_)), (&T2_));
	eqdestroy___packagesZdocutilsZrst_u2877(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___system_u2691(name_1);
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, loadIdxFile__packagesZdocutilsZrst_u15616)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA** s_p0, NimStringV2 origFilename_p1) {
	tyTuple__7q7q3E6Oj24ZNVJb9aonhAg tmpTuple_1;
	NimStringV2 dir_1;
	NimStringV2 basename_1;
	NimStringV2 ext_1;
	NimStringV2 idxFilename_1;
	NimStringV2 colontmpD_;
	tyTuple__UV3llMMYFckfui8YMBuUZA tmpTuple_2;
	NimStringV2 idxPath_1;
	NimStringV2 linkRelPath_1;
	tySequence__36jA1xDCIBAS29cySYLQ7kQ fileEntries_1;
	tyObject_IndexEntry__r4FGmtl4yhJtHvFotaeMmQ title_1;
	tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_1;
	NI32 T6_;
	NimStringV2 T19_;
	tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* T20_;
	tyTuple__mBPo6SdWuL2NLQ9aX5t1kTg tmpTupleAsgn;
	NIM_BOOL isMarkup_1;
NIM_BOOL oldNimErrFin69_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)(&tmpTuple_1), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
	dir_1.len = 0; dir_1.p = NIM_NIL;
	basename_1.len = 0; basename_1.p = NIM_NIL;
	ext_1.len = 0; ext_1.p = NIM_NIL;
	idxFilename_1.len = 0; idxFilename_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	nimZeroMem((void*)(&tmpTuple_2), sizeof(tyTuple__UV3llMMYFckfui8YMBuUZA));
	idxPath_1.len = 0; idxPath_1.p = NIM_NIL;
	linkRelPath_1.len = 0; linkRelPath_1.p = NIM_NIL;
	fileEntries_1.len = 0; fileEntries_1.p = NIM_NIL;
	nimZeroMem((void*)(&title_1), sizeof(tyObject_IndexEntry__r4FGmtl4yhJtHvFotaeMmQ));
	{
		if (!!((((*(*s_p0)).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)5)))&7U)))!=0))) goto LA4_;
		failedAssertImpl__stdZassertions_u79(TM__6mNpeIAN05DnDNzb9b3611A_705);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA4_: ;
	nimZeroMem((void*)(&info_1), sizeof(tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA));
	T6_ = (NI32)0;
	T6_ = addFilename__packagesZdocutilsZrst_u863((*s_p0), origFilename_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	info_1.fileIndex = T6_;
	nossplitFile(origFilename_p1, (&tmpTuple_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	dir_1 = tmpTuple_1.Field0;
	eqwasMoved___system_u2688((&tmpTuple_1.Field0));
	basename_1 = tmpTuple_1.Field1;
	eqwasMoved___system_u2688((&tmpTuple_1.Field1));
	ext_1 = tmpTuple_1.Field2;
	eqwasMoved___system_u2688((&tmpTuple_1.Field2));
	{
		NIM_BOOL T9_;
		NimStringV2 colontmpD__2;
		tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg T13_;
		tyProc__lsy8uLKFmavBA17NQuqO5g T14_;
		tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* T15_;
		NimStringV2 T16_;
		T9_ = (NIM_BOOL)0;
		T9_ = contains__stdZenumutils_u51(TM__6mNpeIAN05DnDNzb9b3611A_706, 4, ext_1);
		if (!!(T9_)) goto LA10_;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		T13_ = (*(*s_p0)).filenames;
		nimZeroMem((void*)(&T14_), sizeof(tyProc__lsy8uLKFmavBA17NQuqO5g));
		T14_.ClE_0 = (*(*s_p0)).msgHandler.ClE_0;
		T14_.ClP_0 = (*(*s_p0)).msgHandler.ClP_0;
		T15_ = (tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ*)0;
		T15_ = X5BX5D___packagesZdocutilsZrst_u15736((&(*(*s_p0)).idxImports), origFilename_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
		T16_.len = 0; T16_.p = NIM_NIL;
		T16_ = rawNewString(origFilename_p1.len + 19);
appendString((&T16_), origFilename_p1);
appendString((&T16_), TM__6mNpeIAN05DnDNzb9b3611A_712);
		colontmpD__2 = T16_;
		rstMessage__packagesZdocutilsZrst_u3806((&T13_), T14_, (*T15_).fromInfo, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)0), colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
		{
			LA12_:;
		}
		{
			eqdestroy___system_u2691(colontmpD__2);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA10_: ;
	T19_.len = 0; T19_.p = NIM_NIL;
	colontmpD_ = slash___stdZprivateZospaths2_u91(dir_1, basename_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	T19_ = rawNewString(colontmpD_.len + 4);
appendString((&T19_), colontmpD_);
appendString((&T19_), TM__6mNpeIAN05DnDNzb9b3611A_714);
	idxFilename_1 = T19_;
	(*(*s_p0)).findRefFile.ClE_0? (*(*s_p0)).findRefFile.ClP_0(idxFilename_1, (&tmpTuple_2), (*(*s_p0)).findRefFile.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_715)((*(*s_p0)).findRefFile.ClP_0))(idxFilename_1, (&tmpTuple_2));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	idxPath_1 = tmpTuple_2.Field0;
	eqwasMoved___system_u2688((&tmpTuple_2.Field0));
	linkRelPath_1 = tmpTuple_2.Field1;
	eqwasMoved___system_u2688((&tmpTuple_2.Field1));
	T20_ = (tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ*)0;
	T20_ = X5BX5D___packagesZdocutilsZrst_u15736((&(*(*s_p0)).idxImports), origFilename_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	eqsink___system_u2700((&(*T20_).linkRelPath), linkRelPath_1);
	eqwasMoved___system_u2688((&linkRelPath_1));
	nimZeroMem((void*)(&tmpTupleAsgn), sizeof(tyTuple__mBPo6SdWuL2NLQ9aX5t1kTg));
	parseIdxFile__packagesZdocutilsZrstidx_u113(idxPath_1, (&tmpTupleAsgn));
	if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
	fileEntries_1 = tmpTupleAsgn.Field0;
	title_1 = tmpTupleAsgn.Field1;
	if (NIM_UNLIKELY(*nimErr_)) {
		LA21_:;
		if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 395251200)) {
			tyObject_RstFileTable__bMrfWDt5AWDVM69bYucAdbg T25_;
			tyProc__lsy8uLKFmavBA17NQuqO5g T26_;
			tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* T27_;
			*nimErr_ = NIM_FALSE;
			T25_ = (*(*s_p0)).filenames;
			nimZeroMem((void*)(&T26_), sizeof(tyProc__lsy8uLKFmavBA17NQuqO5g));
			T26_.ClE_0 = (*(*s_p0)).msgHandler.ClE_0;
			T26_.ClP_0 = (*(*s_p0)).msgHandler.ClP_0;
			T27_ = (tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ*)0;
			T27_ = X5BX5D___packagesZdocutilsZrst_u15736((&(*(*s_p0)).idxImports), origFilename_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
			rstMessage__packagesZdocutilsZrst_u3806((&T25_), T26_, (*T27_).fromInfo, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)0), idxPath_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
			popCurrentException();
			LA23_:;
		}
		else 		if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1871340544)) {
			tyObject_ValueError__S29bKZF4TUS33IR7ZXb7fFA* e_1;
			Exception* T30_;
			*nimErr_ = NIM_FALSE;
			e_1 = NIM_NIL;
			T30_ = NIM_NIL;
			T30_ = getCurrentException();
			e_1 = ((tyObject_ValueError__S29bKZF4TUS33IR7ZXb7fFA*) (T30_));
			(*(*s_p0)).msgHandler.ClE_0? (*(*s_p0)).msgHandler.ClP_0(idxPath_1, ((NI)1), ((NI)0), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)9), (*e_1).Sup.Sup.message, (*(*s_p0)).msgHandler.ClE_0):((TM__6mNpeIAN05DnDNzb9b3611A_716)((*(*s_p0)).msgHandler.ClP_0))(idxPath_1, ((NI)1), ((NI)0), ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)9), (*e_1).Sup.Sup.message);
			if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
			eqdestroy___pureZparseutils_u367(e_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
			popCurrentException();
			LA28_:;
		}
	}
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	isMarkup_1 = NIM_FALSE;
	{
		tyObject_IndexEntry__r4FGmtl4yhJtHvFotaeMmQ* entry_1;
		NI i_1;
		NI L_1;
		NI T32_;
		entry_1 = (tyObject_IndexEntry__r4FGmtl4yhJtHvFotaeMmQ*)0;
		i_1 = ((NI)0);
		T32_ = fileEntries_1.len;
		L_1 = T32_;
		{
			while (1) {
				NimStringV2 refn_1;
				NimStringV2 T36_;
				if (!(i_1 < L_1)) goto LA34;
				refn_1.len = 0; refn_1.p = NIM_NIL;
				entry_1 = (&fileEntries_1.p->data[i_1]);
				T36_.len = 0; T36_.p = NIM_NIL;
				T36_ = extractLinkEnd__packagesZdocutilsZrst_u15592((*entry_1).link);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T36_); goto LA35_;}
				refn_1 = T36_;
				{
					tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* T41_;
					if (!((*entry_1).kind == ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)0) || (*entry_1).kind == ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)1))) goto LA39_;
					T41_ = (tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ*)0;
					T41_ = X5BX5D___packagesZdocutilsZrst_u15736((&(*(*s_p0)).idxImports), origFilename_p1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
					eqcopy___system_u2694((&(*T41_).title), (*entry_1).keyword);
				}
LA39_: ;
				switch ((*entry_1).kind) {
				case ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)3):
				case ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)2):
				case ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)0):
				{
					{
						NIM_BOOL T45_;
						T45_ = (NIM_BOOL)0;
						T45_ = eqStrings(ext_1, TM__6mNpeIAN05DnDNzb9b3611A_717);
						if (!(T45_)) goto LA46_;
						T45_ = ((*entry_1).kind == ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)0));
LA46_: ;
						if (!T45_) goto LA47_;
						rstMessage__packagesZdocutilsZrst_u3800((*s_p0), idxPath_1, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)9), TM__6mNpeIAN05DnDNzb9b3611A_720);
						if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
					}
LA47_: ;
					{
						if (!((*entry_1).kind == ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)0))) goto LA51_;
						isMarkup_1 = NIM_TRUE;
					}
LA51_: ;
					info_1.line = ((NU16) ((*entry_1).line));
					addAnchorExtRst__packagesZdocutilsZrst_u5846(s_p0, (*entry_1).keyword, refn_1, ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)3), info_1);
					if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
				}
				break;
				case ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)4):
				case ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)5):
				case ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)1):
				{
					tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw langSym_1;
					nimZeroMem((void*)(&langSym_1), sizeof(tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw));
					{
						NIM_BOOL T57_;
						NimStringV2 colontmpD__3;
						NimStringV2 colontmpD__4;
						NimStringV2 T62_;
						T57_ = (NIM_BOOL)0;
						T57_ = contains__stdZenumutils_u51(TM__6mNpeIAN05DnDNzb9b3611A_721, 2, ext_1);
						if (T57_) goto LA58_;
						T57_ = isMarkup_1;
LA58_: ;
						if (!T57_) goto LA59_;
						colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
						colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
						T62_.len = 0; T62_.p = NIM_NIL;
						colontmpD__3 = dollar___packagesZdocutilsZrstidx_u13((*entry_1).kind);
						T62_ = rawNewString(colontmpD__3.len + 34);
appendString((&T62_), colontmpD__3);
appendString((&T62_), TM__6mNpeIAN05DnDNzb9b3611A_723);
						colontmpD__4 = T62_;
						rstMessage__packagesZdocutilsZrst_u3800((*s_p0), idxPath_1, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)9), colontmpD__4);
						if (NIM_UNLIKELY(*nimErr_)) goto LA61_;
						{
							LA61_:;
						}
						{
							eqdestroy___system_u2691(colontmpD__4);
							eqdestroy___system_u2691(colontmpD__3);
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
					}
LA59_: ;
					(*(*s_p0)).nimFileImported = NIM_TRUE;
					nimZeroMem((void*)(&langSym_1), sizeof(tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw));
					{
						tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg q_1;
						tySequence__LqZapiAqCFeXPQZdoIAUew sons_1;
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* linkTitle_1;
						NI T70_;
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T76_;
						if (!((*entry_1).kind == ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)4) || (*entry_1).kind == ((tyEnum_IndexEntryKind__bp7boVnNZivfjr9au9bLARfQ)1))) goto LA67_;
						nimZeroMem((void*)(&q_1), sizeof(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg));
						q_1.Sup.m_type = (&NTIv2__ZlacgQ8A2qzdbC1x2g4Gkg_);
						sons_1.len = 0; sons_1.p = NIM_NIL;
						linkTitle_1 = NIM_NIL;
						nimZeroMem((void*)(&q_1), sizeof(tyObject_RstParser__ZlacgQ8A2qzdbC1x2g4Gkg));
						q_1.Sup.m_type = (&NTIv2__ZlacgQ8A2qzdbC1x2g4Gkg_);
						initParser__packagesZdocutilsZrst_u3908((&q_1), (*s_p0));
						if (NIM_UNLIKELY(*nimErr_)) goto LA69_;
						info_1.line = ((NU16) ((*entry_1).line));
						setLen__packagesZdocutilsZrst_u295((&q_1.tok), ((NI)0));
						q_1.idx = ((NI)0);
						getTokens__packagesZdocutilsZrst_u276((*entry_1).linkTitle, (&q_1.tok));
						if (NIM_UNLIKELY(*nimErr_)) goto LA69_;
						T70_ = q_1.tok.len;
						sons_1 = newSeq__packagesZdocutilsZrst_u16126((T70_));
						{
							NI i_2;
							NI colontmp_;
							NI T72_;
							NI i_3;
							i_2 = (NI)0;
							colontmp_ = (NI)0;
							T72_ = q_1.tok.len;
							colontmp_ = T72_;
							i_3 = ((NI)0);
							{
								while (1) {
									tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T75_;
									if (!(i_3 < colontmp_)) goto LA74;
									i_2 = i_3;
									T75_ = NIM_NIL;
									T75_ = newRstLeaf__packagesZdocutilsZrstast_u454(q_1.tok.p->data[i_2].symbol);
									if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T75_); goto LA69_;}
									eqsink___packagesZdocutilsZrstast_u294(&sons_1.p->data[i_2], T75_);
									if (NIM_UNLIKELY(*nimErr_)) goto LA69_;
									i_3 += ((NI)1);
								} LA74: ;
							}
						}
						T76_ = NIM_NIL;
						T76_ = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), sons_1, TM__6mNpeIAN05DnDNzb9b3611A_724);
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T76_); goto LA69_;}
						linkTitle_1 = T76_;
						toLangSymbol__packagesZdocutilsZdochelpers_u188(linkTitle_1, (&langSym_1));
						if (NIM_UNLIKELY(*nimErr_)) goto LA69_;
						{
							LA69_:;
						}
						{
							oldNimErrFin69_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___packagesZdocutilsZrstast_u285(linkTitle_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
							eqdestroy___packagesZdocutilsZrstast_u152(sons_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
							eqdestroy___packagesZdocutilsZrst_u12486((&q_1));
							if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
							*nimErr_ = oldNimErrFin69_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
					}
					goto LA65_;
LA67_: ;
					{
						langSymbolGroup__packagesZdocutilsZdochelpers_u145((*entry_1).linkTitle, (*entry_1).keyword, (&langSym_1));
						if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
					}
LA65_: ;
					addAnchorNim__packagesZdocutilsZrst_u5936(s_p0, NIM_TRUE, refn_1, (*entry_1).linkDesc, (&langSym_1), ((NI)-4), info_1, info_1.fileIndex);
					if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
					{
						LA54_:;
					}
					{
						eqdestroy___packagesZdocutilsZdochelpers_u159((&langSym_1));
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
				}
				break;
				default: __builtin_unreachable();
				}
				i_1 += ((NI)1);
				{
					LA35_:;
				}
				{
					eqdestroy___system_u2691(refn_1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA34: ;
		}
	}
	{
		tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* T86_;
		T86_ = (tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ*)0;
		T86_ = X5BX5D___packagesZdocutilsZrst_u15736((&(*(*s_p0)).idxImports), origFilename_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		if (!!(!(((*T86_).title.len == 0)))) goto LA87_;
		failedAssertImpl__stdZassertions_u79(TM__6mNpeIAN05DnDNzb9b3611A_726);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA87_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___packagesZdocutilsZrstidx_u281(fileEntries_1);
		eqdestroy___system_u2691(linkRelPath_1);
		eqdestroy___system_u2691(idxPath_1);
		eqdestroy___stdZprivateZospaths2_u306((&tmpTuple_2));
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___system_u2691(idxFilename_1);
		eqdestroy___system_u2691(ext_1);
		eqdestroy___system_u2691(basename_1);
		eqdestroy___system_u2691(dir_1);
		eqdestroy___pureZos_u200((&tmpTuple_1));
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, preparePass2__packagesZdocutilsZrst_u16267)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA** s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* mainNode_p1, NIM_BOOL importdoc_p2) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	countTitles__packagesZdocutilsZrst_u11922((*s_p0), mainNode_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	fixHeadlines__packagesZdocutilsZrst_u12693((*s_p0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	orderFootnotes__packagesZdocutilsZrst_u8261((*s_p0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!importdoc_p2) goto LA3_;
		{
			NimStringV2* origFilename_1;
			NI L_1;
			origFilename_1 = (NimStringV2*)0;
			L_1 = len__packagesZdocutilsZrst_u16315((*(*s_p0)).idxImports);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			{
				NI h_1;
				NI colontmp_;
				NI T7_;
				NI res_1;
				h_1 = (NI)0;
				colontmp_ = (NI)0;
				T7_ = ((*(*s_p0)).idxImports.data.len-1);
				colontmp_ = T7_;
				res_1 = ((NI)0);
				{
					while (1) {
						if (!(res_1 <= colontmp_)) goto LA9;
						h_1 = ((NI) (res_1));
						{
							NIM_BOOL T12_;
							T12_ = (NIM_BOOL)0;
							T12_ = isFilled__pureZcollectionsZtables_u32((*(*s_p0)).idxImports.data.p->data[h_1].Field0);
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
							if (!T12_) goto LA13_;
							origFilename_1 = (&(*(*s_p0)).idxImports.data.p->data[h_1].Field1);
							loadIdxFile__packagesZdocutilsZrst_u15616(s_p0, (*origFilename_1));
							if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						}
LA13_: ;
						res_1 += ((NI)1);
					} LA9: ;
				}
			}
		}
	}
LA3_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getArgument__packagesZdocutilsZrst_u85)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	{
		if (!((*n_p0).sons.p->data[((NI)0)] == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL))) goto LA3_;
		result = TM__6mNpeIAN05DnDNzb9b3611A_727;
	}
	goto LA1_;
LA3_: ;
	{
		result = addNodes__packagesZdocutilsZrst_u80((*n_p0).sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getFieldValue__packagesZdocutilsZrst_u11689)(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p0) {
	NimStringV2 result;
	NimStringV2 colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	colontmpD_ = addNodes__packagesZdocutilsZrst_u80((*n_p0).sons.p->data[((NI)1)]);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = nsuStrip(colontmpD_, NIM_TRUE, NIM_TRUE, TM__6mNpeIAN05DnDNzb9b3611A_528);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___system_u2691(colontmpD_);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, findSub__packagesZdocutilsZrst_u4059)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1) {
	NI result;
	NimStringV2 key_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI)0;
	key_1.len = 0; key_1.p = NIM_NIL;
	key_1 = addNodes__packagesZdocutilsZrst_u80(n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI i_1;
		NI colontmp_;
		NI T3_;
		NI res_1;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		T3_ = ((*s_p0).subs.len-1);
		colontmp_ = T3_;
		res_1 = ((NI)0);
		{
			while (1) {
				if (!(res_1 <= colontmp_)) goto LA5;
				i_1 = ((NI) (res_1));
				{
					if (!eqStrings(key_1, (*s_p0).subs.p->data[i_1].key)) goto LA8_;
					result = i_1;
					eqdestroy___system_u2691(key_1);
					goto BeforeRet_;
				}
LA8_: ;
				res_1 += ((NI)1);
			} LA5: ;
		}
	}
	{
		NI i_2;
		NI colontmp__2;
		NI T11_;
		NI res_2;
		i_2 = (NI)0;
		colontmp__2 = (NI)0;
		T11_ = ((*s_p0).subs.len-1);
		colontmp__2 = T11_;
		res_2 = ((NI)0);
		{
			while (1) {
				if (!(res_2 <= colontmp__2)) goto LA13;
				i_2 = ((NI) (res_2));
				{
					NI T16_;
					T16_ = (NI)0;
					T16_ = nsuCmpIgnoreStyle(key_1, (*s_p0).subs.p->data[i_2].key);
					if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					if (!(T16_ == ((NI)0))) goto LA17_;
					result = i_2;
					eqdestroy___system_u2691(key_1);
					goto BeforeRet_;
				}
LA17_: ;
				res_2 += ((NI)1);
			} LA13: ;
		}
	}
	result = ((NI)-1);
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2691(key_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZrst_u2766)(tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A* src_p0, tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A* Result) {
	nimZeroMem((void*)Result, sizeof(tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A));
	(*Result).kind = (*src_p0).kind;
	(*Result).key = eqdup___system_u2697((*src_p0).key);
	(*Result).value = (*src_p0).value;
	{
		if (!(*src_p0).value) goto LA3_;
		nimIncRef((*src_p0).value);
	}
LA3_: ;
	(*Result).info.line = (*src_p0).info.line;
	(*Result).info.col = (*src_p0).info.col;
	(*Result).info.fileIndex = (*src_p0).info.fileIndex;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__vz9c2digtAnM8l0FZWLUAGg, findRef__packagesZdocutilsZrst_u4184)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 key_p1) {
	tySequence__vz9c2digtAnM8l0FZWLUAGg result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	{
		NI i_1;
		NI colontmp_;
		NI T2_;
		NI res_1;
		i_1 = (NI)0;
		colontmp_ = (NI)0;
		T2_ = ((*s_p0).refs.len-1);
		colontmp_ = T2_;
		res_1 = ((NI)0);
		{
			while (1) {
				if (!(res_1 <= colontmp_)) goto LA4;
				i_1 = ((NI) (res_1));
				{
					tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A colontmpD_;
					if (!eqStrings(key_p1, (*s_p0).refs.p->data[i_1].key)) goto LA7_;
					eqdup___packagesZdocutilsZrst_u2766((&(*s_p0).refs.p->data[i_1]), (&colontmpD_));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					add__packagesZdocutilsZrst_u4127((&result), (&colontmpD_));
				}
LA7_: ;
				res_1 += ((NI)1);
			} LA4: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, refPriority__packagesZdocutilsZrst_u4201)(tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw k_p0) {
	NI result;
	switch (k_p0) {
	case ((tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw)0):
	{
		result = ((NI)8);
	}
	break;
	case ((tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw)1):
	{
		result = ((NI)7);
	}
	break;
	case ((tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw)2):
	{
		result = ((NI)2);
	}
	break;
	default: __builtin_unreachable();
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___packagesZdocutilsZrst_u482)(tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw e_p0) {
	NimStringV2 result;
	switch (e_p0) {
	case ((tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw)0):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_731;
	}
	break;
	case ((tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw)1):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_733;
	}
	break;
	case ((tyEnum_SubstitutionKind__juwrhPkgYiHpJAKqmfpbPw)2):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_735;
	}
	break;
	default:
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_736;
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u2880)(tySequence__ib5UTyrs9aC6K60sNqKElQA* dest_p0, tySequence__ib5UTyrs9aC6K60sNqKElQA src_p1) {
	NI T6_;
	NI colontmp_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = sameSeqPayload(dest_p0, (&src_p1));
		if (!T3_) goto LA4_;
		goto BeforeRet_;
	}
LA4_: ;
	T6_ = src_p1.len;
	setLen__packagesZdocutilsZrst_u2899((&(*dest_p0)), T6_);
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T9_;
			tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA colontmp__2;
			T9_ = (*dest_p0).len;
			if (!(colontmp_ < T9_)) goto LA8;
			{
				if (!((&(*dest_p0).p->data[colontmp_]) == (&src_p1.p->data[colontmp_]))) goto LA12_;
				goto BeforeRet_;
			}
LA12_: ;
			nimZeroMem((void*)(&colontmp__2), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
			colontmp__2 = (*dest_p0).p->data[colontmp_];
			nimZeroMem((void*)(&(*dest_p0).p->data[colontmp_]), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
			(*dest_p0).p->data[colontmp_].info.line = src_p1.p->data[colontmp_].info.line;
			(*dest_p0).p->data[colontmp_].info.col = src_p1.p->data[colontmp_].info.col;
			(*dest_p0).p->data[colontmp_].info.fileIndex = src_p1.p->data[colontmp_].info.fileIndex;
			(*dest_p0).p->data[colontmp_].priority = src_p1.p->data[colontmp_].priority;
			(*dest_p0).p->data[colontmp_].kind = src_p1.p->data[colontmp_].kind;
			switch ((*dest_p0).p->data[colontmp_].kind) {
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0):
			{
				(*dest_p0).p->data[colontmp_]._kind_1.anchorType = 0;
				(*dest_p0).p->data[colontmp_]._kind_1.anchorType = src_p1.p->data[colontmp_]._kind_1.anchorType;
				(*dest_p0).p->data[colontmp_]._kind_1.target = 0;
				{
					if (!src_p1.p->data[colontmp_]._kind_1.target) goto LA17_;
					nimIncRef(src_p1.p->data[colontmp_]._kind_1.target);
				}
LA17_: ;
				{
					NIM_BOOL T21_;
					T21_ = (NIM_BOOL)0;
					T21_ = nimDecRefIsLastDyn((*dest_p0).p->data[colontmp_]._kind_1.target);
					if (!T21_) goto LA22_;
					eqdestroy___packagesZdocutilsZrstast_u173((&(*(*dest_p0).p->data[colontmp_]._kind_1.target)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					nimRawDispose((*dest_p0).p->data[colontmp_]._kind_1.target, ((NI)8));
				}
LA22_: ;
				(*dest_p0).p->data[colontmp_]._kind_1.target = src_p1.p->data[colontmp_]._kind_1.target;
			}
			break;
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)1):
			{
				(*dest_p0).p->data[colontmp_]._kind_2.anchorTypeExt = 0;
				(*dest_p0).p->data[colontmp_]._kind_2.anchorTypeExt = src_p1.p->data[colontmp_]._kind_2.anchorTypeExt;
				(*dest_p0).p->data[colontmp_]._kind_2.refnameExt.len = 0; (*dest_p0).p->data[colontmp_]._kind_2.refnameExt.p = NIM_NIL;
				eqcopy___system_u2694((&(*dest_p0).p->data[colontmp_]._kind_2.refnameExt), src_p1.p->data[colontmp_]._kind_2.refnameExt);
			}
			break;
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2):
			{
				(*dest_p0).p->data[colontmp_]._kind_3.module = 0;
				(*dest_p0).p->data[colontmp_]._kind_3.module = src_p1.p->data[colontmp_]._kind_3.module;
				(*dest_p0).p->data[colontmp_]._kind_3.tooltip.len = 0; (*dest_p0).p->data[colontmp_]._kind_3.tooltip.p = NIM_NIL;
				eqcopy___system_u2694((&(*dest_p0).p->data[colontmp_]._kind_3.tooltip), src_p1.p->data[colontmp_]._kind_3.tooltip);
				nimZeroMem((void*)(&(*dest_p0).p->data[colontmp_]._kind_3.langSym), sizeof(tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw));
				eqcopy___system_u2694((&(*dest_p0).p->data[colontmp_]._kind_3.langSym.symKind), src_p1.p->data[colontmp_]._kind_3.langSym.symKind);
				eqcopy___system_u2694((&(*dest_p0).p->data[colontmp_]._kind_3.langSym.symTypeKind), src_p1.p->data[colontmp_]._kind_3.langSym.symTypeKind);
				eqcopy___system_u2694((&(*dest_p0).p->data[colontmp_]._kind_3.langSym.name), src_p1.p->data[colontmp_]._kind_3.langSym.name);
				eqcopy___system_u2694((&(*dest_p0).p->data[colontmp_]._kind_3.langSym.generics), src_p1.p->data[colontmp_]._kind_3.langSym.generics);
				(*dest_p0).p->data[colontmp_]._kind_3.langSym.isGroup = src_p1.p->data[colontmp_]._kind_3.langSym.isGroup;
				(*dest_p0).p->data[colontmp_]._kind_3.langSym.parametersProvided = src_p1.p->data[colontmp_]._kind_3.langSym.parametersProvided;
				eqcopy___stdZenvvars_u85((&(*dest_p0).p->data[colontmp_]._kind_3.langSym.parameters), src_p1.p->data[colontmp_]._kind_3.langSym.parameters);
				eqcopy___system_u2694((&(*dest_p0).p->data[colontmp_]._kind_3.langSym.outType), src_p1.p->data[colontmp_]._kind_3.langSym.outType);
				(*dest_p0).p->data[colontmp_]._kind_3.refname.len = 0; (*dest_p0).p->data[colontmp_]._kind_3.refname.p = NIM_NIL;
				eqcopy___system_u2694((&(*dest_p0).p->data[colontmp_]._kind_3.refname), src_p1.p->data[colontmp_]._kind_3.refname);
				(*dest_p0).p->data[colontmp_]._kind_3.external = 0;
				(*dest_p0).p->data[colontmp_]._kind_3.external = src_p1.p->data[colontmp_]._kind_3.external;
			}
			break;
			default: __builtin_unreachable();
			}
			switch (colontmp__2.kind) {
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0):
			{
				{
					NIM_BOOL T29_;
					T29_ = (NIM_BOOL)0;
					T29_ = nimDecRefIsLastDyn(colontmp__2._kind_1.target);
					if (!T29_) goto LA30_;
					eqdestroy___packagesZdocutilsZrstast_u173((&(*colontmp__2._kind_1.target)));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					nimRawDispose(colontmp__2._kind_1.target, ((NI)8));
				}
LA30_: ;
			}
			break;
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)1):
			{
				eqdestroy___system_u2691(colontmp__2._kind_2.refnameExt);
			}
			break;
			case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2):
			{
				eqdestroy___system_u2691(colontmp__2._kind_3.refname);
				eqdestroy___system_u2691(colontmp__2._kind_3.langSym.outType);
				eqdestroy___stdZenvvars_u82(colontmp__2._kind_3.langSym.parameters);
				eqdestroy___system_u2691(colontmp__2._kind_3.langSym.generics);
				eqdestroy___system_u2691(colontmp__2._kind_3.langSym.name);
				eqdestroy___system_u2691(colontmp__2._kind_3.langSym.symTypeKind);
				eqdestroy___system_u2691(colontmp__2._kind_3.langSym.symKind);
				eqdestroy___system_u2691(colontmp__2._kind_3.tooltip);
			}
			break;
			default: __builtin_unreachable();
			}
			colontmp_ += ((NI)1);
		} LA8: ;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZrst_u2988)(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* src_p0, tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* Result) {
	nimZeroMem((void*)Result, sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
	(*Result).info.line = (*src_p0).info.line;
	(*Result).info.col = (*src_p0).info.col;
	(*Result).info.fileIndex = (*src_p0).info.fileIndex;
	(*Result).priority = (*src_p0).priority;
	(*Result).kind = (*src_p0).kind;
	switch ((*Result).kind) {
	case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0):
	{
		(*Result)._kind_1.anchorType = (*src_p0)._kind_1.anchorType;
		(*Result)._kind_1.target = (*src_p0)._kind_1.target;
		{
			if (!(*src_p0)._kind_1.target) goto LA4_;
			nimIncRef((*src_p0)._kind_1.target);
		}
LA4_: ;
	}
	break;
	case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)1):
	{
		(*Result)._kind_2.anchorTypeExt = (*src_p0)._kind_2.anchorTypeExt;
		(*Result)._kind_2.refnameExt = eqdup___system_u2697((*src_p0)._kind_2.refnameExt);
	}
	break;
	case ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2):
	{
		(*Result)._kind_3.module = (*src_p0)._kind_3.module;
		(*Result)._kind_3.tooltip = eqdup___system_u2697((*src_p0)._kind_3.tooltip);
		(*Result)._kind_3.langSym.symKind = eqdup___system_u2697((*src_p0)._kind_3.langSym.symKind);
		(*Result)._kind_3.langSym.symTypeKind = eqdup___system_u2697((*src_p0)._kind_3.langSym.symTypeKind);
		(*Result)._kind_3.langSym.name = eqdup___system_u2697((*src_p0)._kind_3.langSym.name);
		(*Result)._kind_3.langSym.generics = eqdup___system_u2697((*src_p0)._kind_3.langSym.generics);
		(*Result)._kind_3.langSym.isGroup = (*src_p0)._kind_3.langSym.isGroup;
		(*Result)._kind_3.langSym.parametersProvided = (*src_p0)._kind_3.langSym.parametersProvided;
		(*Result)._kind_3.langSym.parameters = eqdup___stdZenvvars_u88((*src_p0)._kind_3.langSym.parameters);
		(*Result)._kind_3.langSym.outType = eqdup___system_u2697((*src_p0)._kind_3.langSym.outType);
		(*Result)._kind_3.refname = eqdup___system_u2697((*src_p0)._kind_3.refname);
		(*Result)._kind_3.external = (*src_p0)._kind_3.external;
	}
	break;
	default: __builtin_unreachable();
	}
}
N_LIB_PRIVATE N_NIMCALL(tySequence__ib5UTyrs9aC6K60sNqKElQA, findMainAnchorRst__packagesZdocutilsZrst_u8021)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 linkText_p1, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p2) {
	tySequence__ib5UTyrs9aC6K60sNqKElQA result;
	NimStringV2 name_1;
	tySequence__ib5UTyrs9aC6K60sNqKElQA substitutions_1;
	tySequence__ib5UTyrs9aC6K60sNqKElQA colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	name_1.len = 0; name_1.p = NIM_NIL;
	substitutions_1.len = 0; substitutions_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	name_1 = nsuToLowerAsciiStr(linkText_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	colontmpD_ = newSeq__packagesZdocutilsZrst_u4268(((NI)0));
	substitutions_1 = getOrDefault__packagesZdocutilsZrst_u6115((*s_p0).anchors, name_1, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* s_2;
		NI i_1;
		NI L_1;
		NI T2_;
		s_2 = (tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA*)0;
		i_1 = ((NI)0);
		T2_ = substitutions_1.len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				s_2 = (&substitutions_1.p->data[i_1]);
				{
					tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA colontmpD__2;
					tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA T9_;
					if (!((*s_2).kind == ((tyEnum_AnchorRule__2EJ03fugiw0bGfuZoUTntQ)0) || (*s_2).kind == ((tyEnum_AnchorRule__2EJ03fugiw0bGfuZoUTntQ)1))) goto LA7_;
					nimZeroMem((void*)(&T9_), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
					eqdup___packagesZdocutilsZrst_u2988((&(*s_2)), (&T9_));
					colontmpD__2 = T9_;
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					add__packagesZdocutilsZrst_u5551((&result), (&colontmpD__2));
				}
LA7_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	eqdestroy___packagesZdocutilsZrst_u2877(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrst_u2877(substitutions_1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___system_u2691(name_1);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getFilename__packagesZdocutilsZrst_u2414)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* subst_p1) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = getFilename__packagesZdocutilsZrst_u2405((&(*s_p0).filenames), (*subst_p1).info.fileIndex);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___packagesZdocutilsZrst_u500)(tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ e_p0) {
	NimStringV2 result;
	switch (e_p0) {
	case ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)0):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_742;
	}
	break;
	case ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)1):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_744;
	}
	break;
	case ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)2):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_746;
	}
	break;
	case ((tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)3):
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_748;
	}
	break;
	default:
	{
		result = TM__6mNpeIAN05DnDNzb9b3611A_749;
	}
	break;
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getModule__packagesZdocutilsZrst_u2418)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* subst_p1) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	result = getFilename__packagesZdocutilsZrst_u2405((&(*s_p0).filenames), (*subst_p1)._kind_3.module);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__ib5UTyrs9aC6K60sNqKElQA, findMainAnchorNim__packagesZdocutilsZrst_u6027)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* signature_p1, tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA info_p2) {
	tySequence__ib5UTyrs9aC6K60sNqKElQA result;
	tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw langSym_1;
	tySequence__ib5UTyrs9aC6K60sNqKElQA substitutions_1;
	tySequence__ib5UTyrs9aC6K60sNqKElQA colontmpD_;
	tyObject_Table__N9c3CcsmyVBdM9bJn2kzIHNQ found_1;
	tySequence__ib5UTyrs9aC6K60sNqKElQA T6_;
NIM_BOOL oldNimErrFin25_;
NIM_BOOL oldNimErrFin32_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	nimZeroMem((void*)(&langSym_1), sizeof(tyObject_LangSymbol__qzqOgOy0P9aJoI4TJXtpzXw));
	substitutions_1.len = 0; substitutions_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	nimZeroMem((void*)(&found_1), sizeof(tyObject_Table__N9c3CcsmyVBdM9bJn2kzIHNQ));
	toLangSymbol__packagesZdocutilsZdochelpers_u188(signature_p1, (&langSym_1));
	if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
	if (NIM_UNLIKELY(*nimErr_)) {
		LA2_:;
		if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1871340544)) {
			*nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrst_u7984(found_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___packagesZdocutilsZrst_u2877(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___packagesZdocutilsZrst_u2877(substitutions_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___packagesZdocutilsZdochelpers_u159((&langSym_1));
			popCurrentException();
			goto BeforeRet_;
			popCurrentException();
			LA4_:;
		}
	}
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	colontmpD_ = newSeq__packagesZdocutilsZrst_u4268(((NI)0));
	T6_.len = 0; T6_.p = NIM_NIL;
	T6_ = getOrDefault__packagesZdocutilsZrst_u6115((*s_p0).anchors, langSym_1.name, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrst_u2877(T6_); goto LA1_;}
	substitutions_1 = T6_;
	{
		NI T9_;
		T9_ = substitutions_1.len;
		if (!(T9_ == ((NI)0))) goto LA10_;
		eqdestroy___packagesZdocutilsZrst_u7984(found_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZrst_u2877(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZrst_u2877(substitutions_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZdochelpers_u159((&langSym_1));
		goto BeforeRet_;
	}
LA10_: ;
	{
		tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* subst_1;
		NI i_1;
		NI L_1;
		NI T13_;
		subst_1 = (tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA*)0;
		i_1 = ((NI)0);
		T13_ = substitutions_1.len;
		L_1 = T13_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA15;
				subst_1 = (&substitutions_1.p->data[i_1]);
				{
					if (!((*subst_1).kind == ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2))) goto LA18_;
					{
						NIM_BOOL T22_;
						tyTuple__UV3llMMYFckfui8YMBuUZA key_1;
						NimStringV2 colontmpD__2;
						tySequence__ib5UTyrs9aC6K60sNqKElQA colontmpD__3;
						tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA colontmpD__4;
						NimStringV2 T26_;
						tySequence__ib5UTyrs9aC6K60sNqKElQA* T27_;
						tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA T28_;
						T22_ = (NIM_BOOL)0;
						T22_ = match__packagesZdocutilsZdochelpers_u649((&(*subst_1)._kind_3.langSym), (&langSym_1));
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
						if (!T22_) goto LA23_;
						nimZeroMem((void*)(&key_1), sizeof(tyTuple__UV3llMMYFckfui8YMBuUZA));
						colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
						colontmpD__2 = eqdup___system_u2697((*subst_1)._kind_3.langSym.symKind);
						key_1.Field0 = colontmpD__2;
						T26_.len = 0; T26_.p = NIM_NIL;
						T26_ = getModule__packagesZdocutilsZrst_u2418(s_p0, (&(*subst_1)));
						if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T26_); goto LA25_;}
						key_1.Field1 = T26_;
						colontmpD__3 = newSeq__packagesZdocutilsZrst_u4268(((NI)0));
						T27_ = (tySequence__ib5UTyrs9aC6K60sNqKElQA*)0;
						T27_ = mgetOrPut__packagesZdocutilsZrst_u6296((&found_1), (&key_1), colontmpD__3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
						nimZeroMem((void*)(&T28_), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
						eqdup___packagesZdocutilsZrst_u2988((&(*subst_1)), (&T28_));
						colontmpD__4 = T28_;
						if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
						add__packagesZdocutilsZrst_u5551((&(*T27_)), (&colontmpD__4));
						{
							LA25_:;
						}
						{
							oldNimErrFin25_ = *nimErr_; *nimErr_ = NIM_FALSE;
							eqdestroy___packagesZdocutilsZrst_u2877(colontmpD__3);
							if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
							eqdestroy___stdZprivateZospaths2_u306((&key_1));
							*nimErr_ = oldNimErrFin25_;
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
					}
LA23_: ;
				}
LA18_: ;
				i_1 += ((NI)1);
			} LA15: ;
		}
	}
	{
		tyTuple__UV3llMMYFckfui8YMBuUZA key_2;
		tySequence__ib5UTyrs9aC6K60sNqKElQA sList_1;
		NI L_2;
		NI T33_;
		nimZeroMem((void*)(&key_2), sizeof(tyTuple__UV3llMMYFckfui8YMBuUZA));
		sList_1.len = 0; sList_1.p = NIM_NIL;
		T33_ = (NI)0;
		T33_ = len__packagesZdocutilsZrst_u7718(found_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
		L_2 = T33_;
		{
			NI h_1;
			NI colontmp_;
			NI T35_;
			NI res_1;
			h_1 = (NI)0;
			colontmp_ = (NI)0;
			T35_ = (found_1.data.len-1);
			colontmp_ = T35_;
			res_1 = ((NI)0);
			{
				while (1) {
					if (!(res_1 <= colontmp_)) goto LA37;
					h_1 = ((NI) (res_1));
					{
						NIM_BOOL T40_;
						tyTuple__UV3llMMYFckfui8YMBuUZA colontmpD__5;
						T40_ = (NIM_BOOL)0;
						T40_ = isFilled__pureZcollectionsZtables_u32(found_1.data.p->data[h_1].Field0);
						if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
						if (!T40_) goto LA41_;
						eqdup___stdZprivateZospaths2_u312((&found_1.data.p->data[h_1].Field1), (&colontmpD__5));
						eqsink___stdZprivateZospaths2_u315((&key_2), (&colontmpD__5));
						eqcopy___packagesZdocutilsZrst_u2880((&sList_1), found_1.data.p->data[h_1].Field2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
						{
							NI T45_;
							tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA blitTmp_1;
							T45_ = sList_1.len;
							if (!(T45_ == ((NI)1))) goto LA46_;
							nimZeroMem((void*)(&blitTmp_1), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
							blitTmp_1 = sList_1.p->data[((NI)0)];
							eqwasMoved___packagesZdocutilsZrst_u2979((&sList_1.p->data[((NI)0)]));
							if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
							add__packagesZdocutilsZrst_u5551((&result), (&blitTmp_1));
						}
						goto LA43_;
LA46_: ;
						{
							{
								if (!langSym_1.parametersProvided) goto LA51_;
								{
									tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* s_2;
									NI i_2;
									NI L_3;
									NI T54_;
									s_2 = (tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA*)0;
									i_2 = ((NI)0);
									T54_ = sList_1.len;
									L_3 = T54_;
									{
										while (1) {
											if (!(i_2 < L_3)) goto LA56;
											s_2 = (&sList_1.p->data[i_2]);
											{
												tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA colontmpD__6;
												tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA T61_;
												if (!!((*s_2)._kind_3.langSym.isGroup)) goto LA59_;
												nimZeroMem((void*)(&T61_), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
												eqdup___packagesZdocutilsZrst_u2988((&(*s_2)), (&T61_));
												colontmpD__6 = T61_;
												if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
												add__packagesZdocutilsZrst_u5551((&result), (&colontmpD__6));
											}
LA59_: ;
											i_2 += ((NI)1);
										} LA56: ;
									}
								}
							}
							goto LA49_;
LA51_: ;
							{
								NIM_BOOL foundGroup_1;
								foundGroup_1 = NIM_FALSE;
								{
									tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* s_3;
									NI i_3;
									NI L_4;
									NI T64_;
									s_3 = (tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA*)0;
									i_3 = ((NI)0);
									T64_ = sList_1.len;
									L_4 = T64_;
									{
										while (1) {
											if (!(i_3 < L_4)) goto LA66;
											s_3 = (&sList_1.p->data[i_3]);
											{
												tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA colontmpD__7;
												tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA T71_;
												if (!(*s_3)._kind_3.langSym.isGroup) goto LA69_;
												nimZeroMem((void*)(&T71_), sizeof(tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA));
												eqdup___packagesZdocutilsZrst_u2988((&(*s_3)), (&T71_));
												colontmpD__7 = T71_;
												if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
												add__packagesZdocutilsZrst_u5551((&result), (&colontmpD__7));
												foundGroup_1 = NIM_TRUE;
												goto LA63;
											}
LA69_: ;
											i_3 += ((NI)1);
										} LA66: ;
									}
								} LA63: ;
								{
									NimStringV2 colontmpD__8;
									NimStringV2 colontmpD__9;
									NimStringV2 colontmpD__10;
									NimStringV2 T77_;
									tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ T78_;
									NimStringV2 T79_;
									NimStringV2 T80_;
									if (!!(foundGroup_1)) goto LA74_;
									colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
									colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
									colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
									T77_.len = 0; T77_.p = NIM_NIL;
									T78_[0] = langSym_1.name;
									T79_.len = 0; T79_.p = NIM_NIL;
									T79_ = getModule__packagesZdocutilsZrst_u2418(s_p0, (&sList_1.p->data[((NI)0)]));
									if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T79_); goto LA76_;}
									colontmpD__8 = T79_;
									T78_[1] = colontmpD__8;
									T80_.len = 0; T80_.p = NIM_NIL;
									T80_ = nsuFormatOpenArray(TM__6mNpeIAN05DnDNzb9b3611A_754, T78_, 2);
									if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___system_u2691(T80_); goto LA76_;}
									colontmpD__9 = T80_;
									T77_ = rawNewString(colontmpD__9.len + 30);
appendString((&T77_), TM__6mNpeIAN05DnDNzb9b3611A_752);
appendString((&T77_), colontmpD__9);
									colontmpD__10 = T77_;
									failedAssertImpl__stdZassertions_u79(colontmpD__10);
									if (NIM_UNLIKELY(*nimErr_)) goto LA76_;
									{
										LA76_:;
									}
									{
										eqdestroy___system_u2691(colontmpD__10);
										eqdestroy___system_u2691(colontmpD__9);
										eqdestroy___system_u2691(colontmpD__8);
									}
									if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
								}
LA74_: ;
							}
LA49_: ;
						}
LA43_: ;
					}
LA41_: ;
					res_1 += ((NI)1);
				} LA37: ;
			}
		}
		{
			LA32_:;
		}
		{
			oldNimErrFin32_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrst_u2877(sList_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___stdZprivateZospaths2_u306((&key_2));
			*nimErr_ = oldNimErrFin32_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___packagesZdocutilsZrst_u7984(found_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZrst_u2877(colontmpD_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZrst_u2877(substitutions_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZdochelpers_u159((&langSym_1));
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u16870)(tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* dest_p0) {
	eqdestroy___system_u2691((*dest_p0).externFilename);
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastDyn((*dest_p0).target);
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrstast_u173((&(*(*dest_p0).target)));
		nimRawDispose((*dest_p0).target, ((NI)8));
	}
LA4_: ;
	eqdestroy___system_u2691((*dest_p0).tooltip);
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u16867)(tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* dest_p0) {
	(*dest_p0).ar = 0;
	(*dest_p0).priority = 0;
	(*dest_p0).tooltip.len = 0; (*dest_p0).tooltip.p = NIM_NIL;
	(*dest_p0).target = 0;
	(*dest_p0).info.line = 0;
	(*dest_p0).info.col = 0;
	(*dest_p0).info.fileIndex = 0;
	(*dest_p0).externFilename.len = 0; (*dest_p0).externFilename.p = NIM_NIL;
	(*dest_p0).isTitle = 0;
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u16879)(tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* dest_p0, tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* src_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	(*dest_p0).ar = (*src_p1).ar;
	(*dest_p0).priority = (*src_p1).priority;
	if ((*dest_p0).tooltip.p != (*src_p1).tooltip.p) {	eqdestroy___system_u2691((*dest_p0).tooltip);
	}
(*dest_p0).tooltip.len = (*src_p1).tooltip.len; (*dest_p0).tooltip.p = (*src_p1).tooltip.p;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastDyn((*dest_p0).target);
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrstast_u173((&(*(*dest_p0).target)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nimRawDispose((*dest_p0).target, ((NI)8));
	}
LA4_: ;
	(*dest_p0).target = (*src_p1).target;
	(*dest_p0).info.line = (*src_p1).info.line;
	(*dest_p0).info.col = (*src_p1).info.col;
	(*dest_p0).info.fileIndex = (*src_p1).info.fileIndex;
	if ((*dest_p0).externFilename.p != (*src_p1).externFilename.p) {	eqdestroy___system_u2691((*dest_p0).externFilename);
	}
(*dest_p0).externFilename.len = (*src_p1).externFilename.len; (*dest_p0).externFilename.p = (*src_p1).externFilename.p;
	(*dest_p0).isTitle = (*src_p1).isTitle;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, cmp__packagesZdocutilsZrst_u16514)(tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* x_p0, tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* y_p1) {
	NI result;
	result = cmp__system_u8244((*x_p0).priority, (*y_p1).priority);
	{
		if (!(result == ((NI)0))) goto LA3_;
		result = cmp__packagesZdocutilsZrst_u16522((*x_p0).target, (*y_p1).target);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, resolveLink__packagesZdocutilsZrst_u16496)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* desc_1;
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* alias_1;
	tySequence__ElKBSoViSyNazy7qD89atSA foundLinks_1;
	NimStringV2 refn_1;
	tySequence__vz9c2digtAnM8l0FZWLUAGg hyperlinks_1;
	tySequence__ib5UTyrs9aC6K60sNqKElQA substRst_1;
	NimStringV2 colontmpD_;
	NimStringV2 aliasStr_1;
NIM_BOOL oldNimErrFin55_;
	tyProc__7dBieSzuUwU9acqXqFfvHMg T89_;
NIM_BOOL oldNimErrFin95_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	desc_1 = NIM_NIL;
	alias_1 = NIM_NIL;
	foundLinks_1.len = 0; foundLinks_1.p = NIM_NIL;
	refn_1.len = 0; refn_1.p = NIM_NIL;
	hyperlinks_1.len = 0; hyperlinks_1.p = NIM_NIL;
	substRst_1.len = 0; substRst_1.p = NIM_NIL;
	colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
	aliasStr_1.len = 0; aliasStr_1.p = NIM_NIL;
	{
		if (!((*n_p1).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)44))) goto LA4_;
		eqcopy___packagesZdocutilsZrstast_u288(&desc_1, (*n_p1).sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqcopy___packagesZdocutilsZrstast_u288(&alias_1, (*n_p1).sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA2_;
LA4_: ;
	{
		eqcopy___packagesZdocutilsZrstast_u288(&desc_1, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		eqcopy___packagesZdocutilsZrstast_u288(&alias_1, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA2_: ;
	refn_1 = rstnodeToRefname__packagesZdocutilsZrst_u78(alias_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	hyperlinks_1 = findRef__packagesZdocutilsZrst_u4184(s_p0, refn_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A* y_1;
		NI i_1;
		NI L_1;
		NI T8_;
		y_1 = (tyObject_Substitution__zxvFpYuhEMgBV9cBUEcAI0A*)0;
		i_1 = ((NI)0);
		T8_ = hyperlinks_1.len;
		L_1 = T8_;
		{
			while (1) {
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
				tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA colontmpD__3;
				NimStringV2 colontmpD__4;
				tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw T11_;
				NimStringV2 T12_;
				if (!(i_1 < L_1)) goto LA10;
				colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
				y_1 = (&hyperlinks_1.p->data[i_1]);
				nimZeroMem((void*)(&T11_), sizeof(tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw));
				nimZeroMem((void*)(&T11_), sizeof(tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw));
				T11_.ar = ((tyEnum_AnchorRule__2EJ03fugiw0bGfuZoUTntQ)3);
				T11_.priority = refPriority__packagesZdocutilsZrst_u4201((*y_1).kind);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				colontmpD__2 = eqdup___packagesZdocutilsZrstast_u291((*y_1).value);
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
				T11_.target = colontmpD__2;
				colontmpD__3 = eqdup___packagesZdocutilsZrstast_u388((*y_1).info);
				T11_.info = colontmpD__3;
				T12_.len = 0; T12_.p = NIM_NIL;
				colontmpD__4 = dollar___packagesZdocutilsZrst_u482((*y_1).kind);
				T12_ = rawNewString(colontmpD__4.len + 2);
appendString((&T12_), TM__6mNpeIAN05DnDNzb9b3611A_729);
appendString((&T12_), colontmpD__4);
appendString((&T12_), TM__6mNpeIAN05DnDNzb9b3611A_737);
				T11_.tooltip = T12_;
				add__packagesZdocutilsZrst_u16561((&foundLinks_1), (&T11_));
				i_1 += ((NI)1);
				eqdestroy___system_u2691(colontmpD__4);
			} LA10: ;
		}
	}
	colontmpD_ = addNodes__packagesZdocutilsZrst_u80(alias_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	substRst_1 = findMainAnchorRst__packagesZdocutilsZrst_u8021(s_p0, colontmpD_, (*n_p1)._kind_8.info);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* subst_1;
		NI i_2;
		NI L_2;
		NI T14_;
		subst_1 = (tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA*)0;
		i_2 = ((NI)0);
		T14_ = substRst_1.len;
		L_2 = T14_;
		{
			while (1) {
				NimStringV2 refname_1;
				NimStringV2 fullRefname_1;
				tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ colontmpD__5;
				tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ colontmpD__6;
				tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA colontmpD__7;
				NimStringV2 colontmpD__8;
				NimStringV2 colontmpD__9;
				NimStringV2 colontmpD__10;
				tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ anchorType_1;
				tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw T33_;
				NimStringV2 T46_;
				if (!(i_2 < L_2)) goto LA16;
				refname_1.len = 0; refname_1.p = NIM_NIL;
				fullRefname_1.len = 0; fullRefname_1.p = NIM_NIL;
				colontmpD__5 = (tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)0;
				colontmpD__6 = (tyEnum_RstAnchorKind__6dqsd3jPhvKlaTafW6ZmUQ)0;
				colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
				colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
				colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
				subst_1 = (&substRst_1.p->data[i_2]);
				refname_1.len = 0; refname_1.p = NIM_NIL;
				fullRefname_1.len = 0; fullRefname_1.p = NIM_NIL;
				{
					if (!((*subst_1).kind == ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0))) goto LA20_;
					eqcopy___system_u2694((&refname_1), (*(*subst_1)._kind_1.target).anchor);
					eqcopy___system_u2694((&fullRefname_1), refname_1);
				}
				goto LA18_;
LA20_: ;
				{
					NimStringV2 colontmpD__11;
					NimStringV2 T24_;
					tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* T25_;
					colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
					eqcopy___system_u2694((&refname_1), (*subst_1)._kind_2.refnameExt);
					T24_.len = 0; T24_.p = NIM_NIL;
					colontmpD__11 = getFilename__packagesZdocutilsZrst_u2414(s_p0, (&(*subst_1)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
					T25_ = (tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ*)0;
					T25_ = X5BX5D___packagesZdocutilsZrst_u15736((&(*s_p0).idxImports), colontmpD__11);
					if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
					T24_ = rawNewString((*T25_).linkRelPath.len + refname_1.len + 1);
appendString((&T24_), (*T25_).linkRelPath);
appendString((&T24_), TM__6mNpeIAN05DnDNzb9b3611A_738);
appendString((&T24_), refname_1);
					fullRefname_1 = T24_;
					{
						LA23_:;
					}
					{
						eqdestroy___system_u2691(colontmpD__11);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
				}
LA18_: ;
				{
					if (!((*subst_1).kind == ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)0))) goto LA30_;
					colontmpD__5 = (*subst_1)._kind_1.anchorType;
					anchorType_1 = colontmpD__5;
				}
				goto LA28_;
LA30_: ;
				{
					colontmpD__6 = (*subst_1)._kind_2.anchorTypeExt;
					anchorType_1 = colontmpD__6;
				}
LA28_: ;
				nimZeroMem((void*)(&T33_), sizeof(tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw));
				T33_.ar = (*subst_1).kind;
				T33_.priority = (*subst_1).priority;
				T33_.target = newRstLeaf__packagesZdocutilsZrstast_u454(fullRefname_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
				colontmpD__7 = eqdup___packagesZdocutilsZrstast_u388((*subst_1).info);
				T33_.info = colontmpD__7;
				{
					NIM_BOOL T36_;
					NIM_BOOL T38_;
					NimStringV2 blitTmp_1;
					T36_ = (NIM_BOOL)0;
					T36_ = ((*subst_1).kind == ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)1));
					if (T36_) goto LA37_;
					T38_ = (NIM_BOOL)0;
					T38_ = ((*subst_1).kind == ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2));
					if (!(T38_)) goto LA39_;
					T38_ = (*subst_1)._kind_3.external;
LA39_: ;
					T36_ = T38_;
LA37_: ;
					if (!T36_) goto LA40_;
					colontmpD__8 = getFilename__packagesZdocutilsZrst_u2414(s_p0, (&(*subst_1)));
					if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
					blitTmp_1 = colontmpD__8;
					eqwasMoved___system_u2688((&colontmpD__8));
					T33_.externFilename = blitTmp_1;
					{
						LA42_:;
					}
					{
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
				}
				goto LA34_;
LA40_: ;
				{
					NimStringV2 blitTmp_2;
					colontmpD__9 = TM__6mNpeIAN05DnDNzb9b3611A_739;
					blitTmp_2 = colontmpD__9;
					eqwasMoved___system_u2688((&colontmpD__9));
					T33_.externFilename = blitTmp_2;
				}
LA34_: ;
				T33_.isTitle = isDocumentationTitle__packagesZdocutilsZrstidx_u24(refname_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
				T46_.len = 0; T46_.p = NIM_NIL;
				colontmpD__10 = dollar___packagesZdocutilsZrst_u500(anchorType_1);
				T46_ = rawNewString(colontmpD__10.len + 2);
appendString((&T46_), TM__6mNpeIAN05DnDNzb9b3611A_740);
appendString((&T46_), colontmpD__10);
appendString((&T46_), TM__6mNpeIAN05DnDNzb9b3611A_750);
				T33_.tooltip = T46_;
				add__packagesZdocutilsZrst_u16561((&foundLinks_1), (&T33_));
				i_2 += ((NI)1);
				{
					LA17_:;
				}
				{
					eqdestroy___system_u2691(colontmpD__10);
					eqdestroy___system_u2691(colontmpD__9);
					eqdestroy___system_u2691(colontmpD__8);
					eqdestroy___system_u2691(fullRefname_1);
					eqdestroy___system_u2691(refname_1);
				}
				if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			} LA16: ;
		}
	}
	{
		NIM_BOOL T51_;
		tySequence__ib5UTyrs9aC6K60sNqKElQA substNim_1;
		T51_ = (NIM_BOOL)0;
		T51_ = (((*s_p0).options &((NU8)1<<((NU)((((tyEnum_RstParseOption__mQDjQMWj1He9c82GsKA9b59bg)4)))&7U)))!=0);
		if (T51_) goto LA52_;
		T51_ = (*s_p0).nimFileImported;
LA52_: ;
		if (!T51_) goto LA53_;
		substNim_1.len = 0; substNim_1.p = NIM_NIL;
		substNim_1 = findMainAnchorNim__packagesZdocutilsZrst_u6027(s_p0, alias_1, (*n_p1)._kind_8.info);
		if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
		{
			tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA* subst_2;
			NI i_3;
			NI L_3;
			NI T57_;
			subst_2 = (tyObject_AnchorSubst__QbfzsLi5G600g872mHdMoA*)0;
			i_3 = ((NI)0);
			T57_ = substNim_1.len;
			L_3 = T57_;
			{
				while (1) {
					NimStringV2 fullRefname_2;
					NimStringV2 colontmpD__12;
					NimStringV2 colontmpD__13;
					tyObject_TLineInfo__BXRmDJv4YG3TQBaYGJdgNA colontmpD__14;
					NimStringV2 colontmpD__15;
					NimStringV2 T61_;
					tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw T72_;
					if (!(i_3 < L_3)) goto LA59;
					fullRefname_2.len = 0; fullRefname_2.p = NIM_NIL;
					colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
					colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
					subst_2 = (&substNim_1.p->data[i_3]);
					T61_.len = 0; T61_.p = NIM_NIL;
					{
						NimStringV2 colontmpD__16;
						NimStringV2 T67_;
						tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* T68_;
						if (!(*subst_2)._kind_3.external) goto LA64_;
						colontmpD__16.len = 0; colontmpD__16.p = NIM_NIL;
						T67_.len = 0; T67_.p = NIM_NIL;
						colontmpD__16 = getFilename__packagesZdocutilsZrst_u2414(s_p0, (&(*subst_2)));
						if (NIM_UNLIKELY(*nimErr_)) goto LA66_;
						T68_ = (tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ*)0;
						T68_ = X5BX5D___packagesZdocutilsZrst_u15736((&(*s_p0).idxImports), colontmpD__16);
						if (NIM_UNLIKELY(*nimErr_)) goto LA66_;
						T67_ = rawNewString((*T68_).linkRelPath.len + (*subst_2)._kind_3.refname.len + 1);
appendString((&T67_), (*T68_).linkRelPath);
appendString((&T67_), TM__6mNpeIAN05DnDNzb9b3611A_755);
appendString((&T67_), (*subst_2)._kind_3.refname);
						fullRefname_2 = T67_;
						{
							LA66_:;
						}
						{
							eqdestroy___system_u2691(colontmpD__16);
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA60_;
					}
					goto LA62_;
LA64_: ;
					{
						eqcopy___system_u2694((&fullRefname_2), (*subst_2)._kind_3.refname);
					}
LA62_: ;
					nimZeroMem((void*)(&T72_), sizeof(tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw));
					T72_.ar = (*subst_2).kind;
					T72_.priority = (*subst_2).priority;
					T72_.target = newRstLeaf__packagesZdocutilsZrstast_u454(fullRefname_2);
					if (NIM_UNLIKELY(*nimErr_)) goto LA60_;
					{
						NIM_BOOL T75_;
						NIM_BOOL T77_;
						NimStringV2 blitTmp_3;
						T75_ = (NIM_BOOL)0;
						T75_ = ((*subst_2).kind == ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)1));
						if (T75_) goto LA76_;
						T77_ = (NIM_BOOL)0;
						T77_ = ((*subst_2).kind == ((tyEnum_AnchorRule__EbWqr3fy26ujwRNegmj44Q)2));
						if (!(T77_)) goto LA78_;
						T77_ = (*subst_2)._kind_3.external;
LA78_: ;
						T75_ = T77_;
LA76_: ;
						if (!T75_) goto LA79_;
						colontmpD__12 = getFilename__packagesZdocutilsZrst_u2414(s_p0, (&(*subst_2)));
						if (NIM_UNLIKELY(*nimErr_)) goto LA81_;
						blitTmp_3 = colontmpD__12;
						eqwasMoved___system_u2688((&colontmpD__12));
						T72_.externFilename = blitTmp_3;
						{
							LA81_:;
						}
						{
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA60_;
					}
					goto LA73_;
LA79_: ;
					{
						NimStringV2 blitTmp_4;
						colontmpD__13 = TM__6mNpeIAN05DnDNzb9b3611A_756;
						blitTmp_4 = colontmpD__13;
						eqwasMoved___system_u2688((&colontmpD__13));
						T72_.externFilename = blitTmp_4;
					}
LA73_: ;
					T72_.isTitle = isDocumentationTitle__packagesZdocutilsZrstidx_u24((*subst_2)._kind_3.refname);
					if (NIM_UNLIKELY(*nimErr_)) goto LA60_;
					colontmpD__14 = eqdup___packagesZdocutilsZrstast_u388((*subst_2).info);
					T72_.info = colontmpD__14;
					colontmpD__15 = eqdup___system_u2697((*subst_2)._kind_3.tooltip);
					T72_.tooltip = colontmpD__15;
					add__packagesZdocutilsZrst_u16561((&foundLinks_1), (&T72_));
					i_3 += ((NI)1);
					{
						LA60_:;
					}
					{
						eqdestroy___system_u2691(colontmpD__13);
						eqdestroy___system_u2691(colontmpD__12);
						eqdestroy___system_u2691(fullRefname_2);
					}
					if (NIM_UNLIKELY(*nimErr_)) goto LA55_;
				} LA59: ;
			}
		}
		{
			LA55_:;
		}
		{
			oldNimErrFin55_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrst_u2877(substNim_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			*nimErr_ = oldNimErrFin55_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA53_: ;
	nimZeroMem((void*)(&T89_), sizeof(tyProc__7dBieSzuUwU9acqXqFfvHMg));
	T89_.ClP_0 = ((TM__6mNpeIAN05DnDNzb9b3611A_757) (cmp__packagesZdocutilsZrst_u16514)); T89_.ClE_0 = NIM_NIL;
	sort__packagesZdocutilsZrst_u16751(((foundLinks_1).p) ? (foundLinks_1.p->data) : NIM_NIL, foundLinks_1.len, T89_, ((tyEnum_SortOrder__wt7l6Gbd8C9c61b6I621QeA)0));
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	aliasStr_1 = addNodes__packagesZdocutilsZrst_u80(alias_1);
	if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	{
		NI T92_;
		tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w colontmpD__17;
		tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w colontmpD__18;
		tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w colontmpD__19;
		NimStringV2 documentName_1;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* linkText_1;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__20;
		tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w kind_1;
		tySequence__LqZapiAqCFeXPQZdoIAUew T114_;
		NimStringV2 T115_;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T125_;
		tySequence__LqZapiAqCFeXPQZdoIAUew T138_;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* blitTmp_5;
		T92_ = foundLinks_1.len;
		if (!(((NI)1) <= T92_)) goto LA93_;
		colontmpD__17 = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
		colontmpD__18 = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
		colontmpD__19 = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
		documentName_1.len = 0; documentName_1.p = NIM_NIL;
		linkText_1 = NIM_NIL;
		{
			tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* T100_;
			if (!!((foundLinks_1.p->data[((NI)0)].externFilename.len == 0))) goto LA98_;
			T100_ = (tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ*)0;
			T100_ = X5BX5D___packagesZdocutilsZrst_u15736((&(*s_p0).idxImports), foundLinks_1.p->data[((NI)0)].externFilename);
			if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
			(*T100_).used = NIM_TRUE;
		}
LA98_: ;
		{
			if (!(foundLinks_1.p->data[((NI)0)].ar == ((tyEnum_AnchorRule__2EJ03fugiw0bGfuZoUTntQ)3) || foundLinks_1.p->data[((NI)0)].ar == ((tyEnum_AnchorRule__2EJ03fugiw0bGfuZoUTntQ)1))) goto LA103_;
			colontmpD__17 = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)42);
			kind_1 = colontmpD__17;
		}
		goto LA101_;
LA103_: ;
		{
			tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w colontmpD__21;
			tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w colontmpD__22;
			if (!(foundLinks_1.p->data[((NI)0)].ar == ((tyEnum_AnchorRule__2EJ03fugiw0bGfuZoUTntQ)2))) goto LA106_;
			colontmpD__21 = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
			colontmpD__22 = (tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0;
			{
				if (!(foundLinks_1.p->data[((NI)0)].externFilename.len == 0)) goto LA110_;
				colontmpD__21 = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)47);
				colontmpD__18 = colontmpD__21;
			}
			goto LA108_;
LA110_: ;
			{
				colontmpD__22 = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)42);
				colontmpD__18 = colontmpD__22;
			}
LA108_: ;
			kind_1 = colontmpD__18;
		}
		goto LA101_;
LA106_: ;
		{
			colontmpD__19 = ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)45);
			kind_1 = colontmpD__19;
		}
LA101_: ;
		T114_.len = 0; T114_.p = NIM_NIL;
		T114_.len = 0; T114_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		result = newRstNode__packagesZdocutilsZrstast_u121(kind_1, T114_, TM__6mNpeIAN05DnDNzb9b3611A_758);
		if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
		T115_.len = 0; T115_.p = NIM_NIL;
		{
			NimStringV2 colontmpD__23;
			if (!(foundLinks_1.p->data[((NI)0)].ar == ((tyEnum_AnchorRule__2EJ03fugiw0bGfuZoUTntQ)2))) goto LA118_;
			colontmpD__23.len = 0; colontmpD__23.p = NIM_NIL;
			colontmpD__23 = nosextractFilename(foundLinks_1.p->data[((NI)0)].externFilename);
			if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
			documentName_1 = noschangeFileExt(colontmpD__23, TM__6mNpeIAN05DnDNzb9b3611A_759);
			if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
			eqdestroy___system_u2691(colontmpD__23);
		}
		goto LA116_;
LA118_: ;
		{
			tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* T123_;
			if (!!((foundLinks_1.p->data[((NI)0)].externFilename.len == 0))) goto LA121_;
			T123_ = (tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ*)0;
			T123_ = X5BX5D___packagesZdocutilsZrst_u15736((&(*s_p0).idxImports), foundLinks_1.p->data[((NI)0)].externFilename);
			if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
			eqcopy___system_u2694((&documentName_1), (*T123_).title);
		}
		goto LA116_;
LA121_: ;
		{
			documentName_1 = nosextractFilename(foundLinks_1.p->data[((NI)0)].externFilename);
			if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
		}
LA116_: ;
		T125_ = NIM_NIL;
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T130_;
			if (!!((foundLinks_1.p->data[((NI)0)].externFilename.len == 0))) goto LA128_;
			T130_ = NIM_NIL;
			{
				NimStringV2 colontmpD__24;
				if (!foundLinks_1.p->data[((NI)0)].isTitle) goto LA133_;
				colontmpD__24.len = 0; colontmpD__24.p = NIM_NIL;
				colontmpD__24 = addNodes__packagesZdocutilsZrst_u80(desc_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
				linkText_1 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD__24);
				if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
				eqdestroy___system_u2691(colontmpD__24);
			}
			goto LA131_;
LA133_: ;
			{
				NimStringV2 colontmpD__25;
				NimStringV2 colontmpD__26;
				NimStringV2 T136_;
				colontmpD__25.len = 0; colontmpD__25.p = NIM_NIL;
				colontmpD__26.len = 0; colontmpD__26.p = NIM_NIL;
				T136_.len = 0; T136_.p = NIM_NIL;
				colontmpD__25 = addNodes__packagesZdocutilsZrst_u80(desc_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
				T136_ = rawNewString(documentName_1.len + colontmpD__25.len + 2);
appendString((&T136_), documentName_1);
appendString((&T136_), TM__6mNpeIAN05DnDNzb9b3611A_761);
appendString((&T136_), colontmpD__25);
				colontmpD__26 = T136_;
				linkText_1 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD__26);
				if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
				eqdestroy___system_u2691(colontmpD__26);
				eqdestroy___system_u2691(colontmpD__25);
			}
LA131_: ;
		}
		goto LA126_;
LA128_: ;
		{
			linkText_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), (*desc_1).sons, TM__6mNpeIAN05DnDNzb9b3611A_762);
			if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
		}
LA126_: ;
		T138_.len = 0; T138_.p = NIM_NIL;
		T138_.len = 2; T138_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(2, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		blitTmp_5 = linkText_1;
		eqwasMoved___packagesZdocutilsZrstast_u282(&linkText_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
		T138_.p->data[0] = blitTmp_5;
		colontmpD__20 = eqdup___packagesZdocutilsZrstast_u291(foundLinks_1.p->data[((NI)0)].target);
		if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
		T138_.p->data[1] = colontmpD__20;
		eqsink___packagesZdocutilsZrstast_u161((&(*result).sons), T138_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
		{
			if (!(kind_1 == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)47))) goto LA141_;
			eqcopy___system_u2694((&(*result)._kind_9.tooltip), foundLinks_1.p->data[((NI)0)].tooltip);
		}
LA141_: ;
		{
			NI T145_;
			tySequence__sM4lkSb7zS6F7OVMvW9cffQ targets_1;
			NimStringV2 colontmpD__27;
			NimStringV2 colontmpD__28;
			tyArray__pK4u9cQ1bJzH46rrmNu9bPMQ T165_;
			T145_ = foundLinks_1.len;
			if (!(((NI)1) < T145_)) goto LA146_;
			targets_1.len = 0; targets_1.p = NIM_NIL;
			colontmpD__27.len = 0; colontmpD__27.p = NIM_NIL;
			colontmpD__28.len = 0; colontmpD__28.p = NIM_NIL;
			targets_1 = newSeq__stdZsyncio_u571(((NI)0));
			{
				tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw* l_1;
				NI i_4;
				NI L_4;
				NI T150_;
				l_1 = (tyObject_LinkDef__dKiLfAF6nJg4qkLA6rlltw*)0;
				i_4 = ((NI)0);
				T150_ = foundLinks_1.len;
				L_4 = T150_;
				{
					while (1) {
						NimStringV2 t_1;
						NimStringV2 colontmpD__29;
						NimStringV2 colontmpD__30;
						NimStringV2 colontmpD__31;
						NU16 n_2;
						NI16 c_1;
						tyArray__dyW7vpmfeTYw8kX3EXuaJA T162_;
						NimStringV2 blitTmp_6;
						if (!(i_4 < L_4)) goto LA152;
						t_1.len = 0; t_1.p = NIM_NIL;
						colontmpD__29.len = 0; colontmpD__29.p = NIM_NIL;
						colontmpD__30.len = 0; colontmpD__30.p = NIM_NIL;
						colontmpD__31.len = 0; colontmpD__31.p = NIM_NIL;
						l_1 = (&foundLinks_1.p->data[i_4]);
						t_1 = TM__6mNpeIAN05DnDNzb9b3611A_764;
						{
							NI T156_;
							NimStringV2 colontmpD__32;
							T156_ = (NI)0;
							T156_ = len__packagesZdocutilsZrst_u857((&(*s_p0).filenames));
							if (NIM_UNLIKELY(*nimErr_)) goto LA153_;
							if (!(((NI)1) < T156_)) goto LA157_;
							colontmpD__32.len = 0; colontmpD__32.p = NIM_NIL;
							colontmpD__32 = getFilename__packagesZdocutilsZrst_u2405((&(*s_p0).filenames), (*l_1).info.fileIndex);
							if (NIM_UNLIKELY(*nimErr_)) goto LA159_;
							prepareAdd((&t_1), colontmpD__32.len + 0);
appendString((&t_1), colontmpD__32);
							{
								LA159_:;
							}
							{
								eqdestroy___system_u2691(colontmpD__32);
							}
							if (NIM_UNLIKELY(*nimErr_)) goto LA153_;
						}
LA157_: ;
						n_2 = (*l_1).info.line;
						c_1 = (NI16)((*l_1).info.col + ((NI16)1));
						colontmpD__29 = dollar___systemZdollars_u44(n_2);
						if (NIM_UNLIKELY(*nimErr_)) goto LA153_;
						T162_[0] = colontmpD__29;
						colontmpD__30 = dollar___systemZdollars_u19(c_1);
						if (NIM_UNLIKELY(*nimErr_)) goto LA153_;
						T162_[1] = colontmpD__30;
						T162_[2] = (*l_1).tooltip;
						colontmpD__31 = nsuFormatOpenArray(TM__6mNpeIAN05DnDNzb9b3611A_766, T162_, 3);
						if (NIM_UNLIKELY(*nimErr_)) goto LA153_;
						prepareAdd((&t_1), colontmpD__31.len + 0);
appendString((&t_1), colontmpD__31);
						blitTmp_6 = t_1;
						eqwasMoved___system_u2688((&t_1));
						add__stdZenumutils_u71((&targets_1), blitTmp_6);
						i_4 += ((NI)1);
						{
							LA153_:;
						}
						{
							eqdestroy___system_u2691(colontmpD__31);
							eqdestroy___system_u2691(colontmpD__30);
							eqdestroy___system_u2691(colontmpD__29);
							eqdestroy___system_u2691(t_1);
						}
						if (NIM_UNLIKELY(*nimErr_)) goto LA148_;
					} LA152: ;
				}
			}
			T165_[0] = aliasStr_1;
			colontmpD__27 = nsuJoinSep(((targets_1).p) ? (targets_1.p->data) : NIM_NIL, targets_1.len, TM__6mNpeIAN05DnDNzb9b3611A_769);
			if (NIM_UNLIKELY(*nimErr_)) goto LA148_;
			T165_[1] = colontmpD__27;
			colontmpD__28 = nsuFormatOpenArray(TM__6mNpeIAN05DnDNzb9b3611A_768, T165_, 2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA148_;
			rstMessage__packagesZdocutilsZrst_u3806((&(*s_p0).filenames), (*s_p0).msgHandler, (*n_p1)._kind_8.info, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)13), colontmpD__28);
			if (NIM_UNLIKELY(*nimErr_)) goto LA148_;
			{
				LA148_:;
			}
			{
				eqdestroy___system_u2691(colontmpD__28);
				eqdestroy___system_u2691(colontmpD__27);
				eqdestroy___system_u5506(targets_1);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA95_;
		}
LA146_: ;
		{
			LA95_:;
		}
		{
			oldNimErrFin95_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrstast_u285(linkText_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
			eqdestroy___system_u2691(documentName_1);
			*nimErr_ = oldNimErrFin95_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
	goto LA90_;
LA93_: ;
	{
		eqcopy___packagesZdocutilsZrstast_u288(&result, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		rstMessage__packagesZdocutilsZrst_u3806((&(*s_p0).filenames), (*s_p0).msgHandler, (*n_p1)._kind_8.info, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)14), aliasStr_1);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA90_: ;
	{
		LA1_:;
	}
	{
		oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
		eqdestroy___system_u2691(aliasStr_1);
		eqdestroy___system_u2691(colontmpD_);
		eqdestroy___packagesZdocutilsZrst_u2877(substRst_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZrst_u2693(hyperlinks_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___system_u2691(refn_1);
		eqdestroy___packagesZdocutilsZrst_u16929(foundLinks_1);
		eqdestroy___packagesZdocutilsZrstast_u285(alias_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		eqdestroy___packagesZdocutilsZrstast_u285(desc_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		*nimErr_ = oldNimErrFin1_;
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, getFootnoteNum__packagesZdocutilsZrst_u9959)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NimStringV2 label_p1) {
	NI result;
{	result = ((NI)-1);
	{
		tyTuple__4Ywt2LYBMs9aMJ09cL7digow* fnote_1;
		NI i_1;
		NI L_1;
		NI T2_;
		fnote_1 = (tyTuple__4Ywt2LYBMs9aMJ09cL7digow*)0;
		i_1 = ((NI)0);
		T2_ = (*s_p0).footnotes.len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				fnote_1 = (&(*s_p0).footnotes.p->data[i_1]);
				{
					if (!eqStrings((*fnote_1).Field4, label_p1)) goto LA7_;
					result = (*fnote_1).Field1;
					goto BeforeRet_;
				}
LA7_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI, getFootnoteNum__packagesZdocutilsZrst_u9967)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NI order_p1) {
	NI result;
{	result = ((NI)-1);
	{
		tyTuple__4Ywt2LYBMs9aMJ09cL7digow* fnote_1;
		NI i_1;
		NI L_1;
		NI T2_;
		fnote_1 = (tyTuple__4Ywt2LYBMs9aMJ09cL7digow*)0;
		i_1 = ((NI)0);
		T2_ = (*s_p0).footnotes.len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				fnote_1 = (&(*s_p0).footnotes.p->data[i_1]);
				{
					if (!((*fnote_1).Field2 == order_p1)) goto LA7_;
					result = (*fnote_1).Field1;
					goto BeforeRet_;
				}
LA7_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getAutoSymbol__packagesZdocutilsZrst_u9975)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, NI order_p1) {
	NimStringV2 result;
{	result = TM__6mNpeIAN05DnDNzb9b3611A_772;
	{
		tyTuple__4Ywt2LYBMs9aMJ09cL7digow* fnote_1;
		NI i_1;
		NI L_1;
		NI T2_;
		fnote_1 = (tyTuple__4Ywt2LYBMs9aMJ09cL7digow*)0;
		i_1 = ((NI)0);
		T2_ = (*s_p0).footnotes.len;
		L_1 = T2_;
		{
			while (1) {
				if (!(i_1 < L_1)) goto LA4;
				fnote_1 = (&(*s_p0).footnotes.p->data[i_1]);
				{
					if (!((*fnote_1).Field3 == order_p1)) goto LA7_;
					eqcopy___system_u2694((&result), (*fnote_1).Field4);
					goto BeforeRet_;
				}
LA7_: ;
				i_1 += ((NI)1);
			} LA4: ;
		}
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*, resolveSubs__packagesZdocutilsZrst_u17344)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0, tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* n_p1) {
	tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* result;
NIM_BOOL oldNimErrFin54_;
NIM_BOOL oldNimErrFin34_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	eqcopy___packagesZdocutilsZrstast_u288(&result, n_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!(n_p1 == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL))) goto LA3_;
		goto BeforeRet_;
	}
LA3_: ;
	switch ((*n_p1).kind) {
	case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)74):
	{
		NI x_1;
		x_1 = findSub__packagesZdocutilsZrst_u4059(s_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			if (!(((NI)0) <= x_1)) goto LA8_;
			eqcopy___packagesZdocutilsZrstast_u288(&result, (*s_p0).subs.p->data[x_1].value);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA6_;
LA8_: ;
		{
			NimStringV2 key_1;
			NimStringV2 e_1;
			key_1.len = 0; key_1.p = NIM_NIL;
			e_1.len = 0; e_1.p = NIM_NIL;
			key_1 = addNodes__packagesZdocutilsZrst_u80(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			e_1 = getEnv__stdZenvvars_u16(key_1, TM__6mNpeIAN05DnDNzb9b3611A_728);
			if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			{
				tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T16_;
				if (!!((e_1.len == 0))) goto LA14_;
				T16_ = NIM_NIL;
				T16_ = newRstLeaf__packagesZdocutilsZrstast_u454(e_1);
				if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T16_); goto LA11_;}
				eqsink___packagesZdocutilsZrstast_u294(&result, T16_);
				if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			}
			goto LA12_;
LA14_: ;
			{
				rstMessage__packagesZdocutilsZrst_u3806((&(*s_p0).filenames), (*s_p0).msgHandler, (*n_p1)._kind_8.info, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)12), key_1);
				if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
			}
LA12_: ;
			{
				LA11_:;
			}
			{
				eqdestroy___system_u2691(e_1);
				eqdestroy___system_u2691(key_1);
			}
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA6_: ;
	}
	break;
	case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)43):
	case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)44):
	{
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T21_;
		T21_ = NIM_NIL;
		T21_ = resolveLink__packagesZdocutilsZrst_u16496(s_p0, n_p1);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T21_); goto BeforeRet_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T21_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)38):
	{
		tyTuple__7EQdxYuaZDgtungG7UmspQ tmpTuple_1;
		tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g fnType_1;
		NI num_1;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T32_;
		tmpTuple_1 = getFootnoteType__packagesZdocutilsZrst_u11352(s_p0, (*n_p1).sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		fnType_1 = tmpTuple_1.Field0;
		num_1 = tmpTuple_1.Field1;
		switch (fnType_1) {
		case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)0):
		case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)4):
		{
		}
		break;
		case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)2):
		case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)1):
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* nn_1;
			NimStringV2 colontmpD_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__2;
			tySequence__LqZapiAqCFeXPQZdoIAUew T30_;
			nn_1 = NIM_NIL;
			colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
			colontmpD__2 = NIM_NIL;
			{
				NimStringV2 labelR_1;
				if (!(fnType_1 == ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)2))) goto LA27_;
				labelR_1.len = 0; labelR_1.p = NIM_NIL;
				labelR_1 = rstnodeToRefname__packagesZdocutilsZrst_u78((*n_p1).sons.p->data[((NI)0)]);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				num_1 = getFootnoteNum__packagesZdocutilsZrst_u9959(s_p0, labelR_1);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				eqdestroy___system_u2691(labelR_1);
			}
			goto LA25_;
LA27_: ;
			{
				num_1 = getFootnoteNum__packagesZdocutilsZrst_u9967(s_p0, (*n_p1)._kind_6.order);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
LA25_: ;
			T30_.len = 0; T30_.p = NIM_NIL;
			T30_.len = 0; T30_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			nn_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T30_, TM__6mNpeIAN05DnDNzb9b3611A_770);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			colontmpD_ = dollar___systemZdollars_u9(num_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			colontmpD__2 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			add__packagesZdocutilsZrstast_u463(nn_1, colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqsink___packagesZdocutilsZrstast_u294(&(*result).sons.p->data[((NI)0)], nn_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___system_u2691(colontmpD_);
		}
		break;
		case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)3):
		{
			NimStringV2 sym_1;
			sym_1.len = 0; sym_1.p = NIM_NIL;
			sym_1 = getAutoSymbol__packagesZdocutilsZrst_u9975(s_p0, (*n_p1)._kind_6.order);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqsink___system_u2700((&(*(*(*n_p1).sons.p->data[((NI)0)]).sons.p->data[((NI)0)])._kind_1.text), sym_1);
		}
		break;
		default: __builtin_unreachable();
		}
		T32_ = NIM_NIL;
		T32_ = resolveSubs__packagesZdocutilsZrst_u17344(s_p0, (*n_p1).sons.p->data[((NI)1)]);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T32_); goto BeforeRet_;}
		eqsink___packagesZdocutilsZrstast_u294(&(*n_p1).sons.p->data[((NI)1)], T32_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)46):
	{
		NimStringV2 refn_1;
		tySequence__ib5UTyrs9aC6K60sNqKElQA anchorInfo_1;
		tyTuple__7EQdxYuaZDgtungG7UmspQ tmpTuple_2;
		tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g fnType_2;
		NI num_2;
		tySequence__LqZapiAqCFeXPQZdoIAUew T35_;
		tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T36_;
		refn_1.len = 0; refn_1.p = NIM_NIL;
		anchorInfo_1.len = 0; anchorInfo_1.p = NIM_NIL;
		tmpTuple_2 = getFootnoteType__packagesZdocutilsZrst_u11352(s_p0, (*n_p1).sons.p->data[((NI)0)]);
		if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		fnType_2 = tmpTuple_2.Field0;
		num_2 = tmpTuple_2.Field1;
		refn_1 = prefix__packagesZdocutilsZrst_u13845(fnType_2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		T35_.len = 0; T35_.p = NIM_NIL;
		T35_.len = 0; T35_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
		T36_ = NIM_NIL;
		T36_ = newRstNode__packagesZdocutilsZrstast_u370(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)46), (*n_p1)._kind_8.info, T35_);
		if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T36_); goto LA34_;}
		eqsink___packagesZdocutilsZrstast_u294(&result, T36_);
		if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		switch (fnType_2) {
		case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)0):
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* nnX60gensym751__1;
			NimStringV2 colontmpD__3;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__4;
			NimStringV2 colontmpD__5;
			tySequence__LqZapiAqCFeXPQZdoIAUew T38_;
			nnX60gensym751__1 = NIM_NIL;
			colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
			colontmpD__4 = NIM_NIL;
			colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
			T38_.len = 0; T38_.p = NIM_NIL;
			T38_.len = 0; T38_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			nnX60gensym751__1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T38_, TM__6mNpeIAN05DnDNzb9b3611A_773);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__3 = dollar___systemZdollars_u9(num_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__4 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD__3);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(nnX60gensym751__1, colontmpD__4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(result, nnX60gensym751__1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__5 = dollar___systemZdollars_u9(num_2);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			prepareAdd((&refn_1), colontmpD__5.len + 0);
appendString((&refn_1), colontmpD__5);
			eqdestroy___system_u2691(colontmpD__5);
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__4);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			eqdestroy___system_u2691(colontmpD__3);
			eqdestroy___packagesZdocutilsZrstast_u285(nnX60gensym751__1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		}
		break;
		case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)1):
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* nnX60gensym753__1;
			NimStringV2 colontmpD__6;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__7;
			NimStringV2 colontmpD__8;
			tySequence__LqZapiAqCFeXPQZdoIAUew T40_;
			NI T41_;
			nnX60gensym753__1 = NIM_NIL;
			colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
			colontmpD__7 = NIM_NIL;
			colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
			(*s_p0).currFootnoteNumRef += ((NI)1);
			T40_.len = 0; T40_.p = NIM_NIL;
			T40_.len = 0; T40_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			nnX60gensym753__1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T40_, TM__6mNpeIAN05DnDNzb9b3611A_774);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			T41_ = (NI)0;
			T41_ = getFootnoteNum__packagesZdocutilsZrst_u9967(s_p0, (*s_p0).currFootnoteNumRef);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__6 = dollar___systemZdollars_u9(T41_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__7 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD__6);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(nnX60gensym753__1, colontmpD__7);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(result, nnX60gensym753__1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__8 = dollar___systemZdollars_u9((*s_p0).currFootnoteNumRef);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			prepareAdd((&refn_1), colontmpD__8.len + 0);
appendString((&refn_1), colontmpD__8);
			eqdestroy___system_u2691(colontmpD__8);
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__7);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			eqdestroy___system_u2691(colontmpD__6);
			eqdestroy___packagesZdocutilsZrstast_u285(nnX60gensym753__1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		}
		break;
		case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)2):
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* nnX60gensym755__1;
			NimStringV2 colontmpD__9;
			NimStringV2 colontmpD__10;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__11;
			NimStringV2 colontmpD__12;
			tySequence__LqZapiAqCFeXPQZdoIAUew T43_;
			NI T44_;
			nnX60gensym755__1 = NIM_NIL;
			colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
			colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
			colontmpD__11 = NIM_NIL;
			colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
			T43_.len = 0; T43_.p = NIM_NIL;
			T43_.len = 0; T43_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			nnX60gensym755__1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T43_, TM__6mNpeIAN05DnDNzb9b3611A_775);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__9 = rstnodeToRefname__packagesZdocutilsZrst_u78(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			T44_ = (NI)0;
			T44_ = getFootnoteNum__packagesZdocutilsZrst_u9959(s_p0, colontmpD__9);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__10 = dollar___systemZdollars_u9(T44_);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__11 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD__10);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(nnX60gensym755__1, colontmpD__11);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(result, nnX60gensym755__1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__12 = rstnodeToRefname__packagesZdocutilsZrst_u78(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			prepareAdd((&refn_1), colontmpD__12.len + 0);
appendString((&refn_1), colontmpD__12);
			eqdestroy___system_u2691(colontmpD__12);
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__11);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			eqdestroy___system_u2691(colontmpD__10);
			eqdestroy___system_u2691(colontmpD__9);
			eqdestroy___packagesZdocutilsZrstast_u285(nnX60gensym755__1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		}
		break;
		case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)3):
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* nnX60gensym757__1;
			NimStringV2 colontmpD__13;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__14;
			NimStringV2 colontmpD__15;
			tySequence__LqZapiAqCFeXPQZdoIAUew T46_;
			nnX60gensym757__1 = NIM_NIL;
			colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
			colontmpD__14 = NIM_NIL;
			colontmpD__15.len = 0; colontmpD__15.p = NIM_NIL;
			(*s_p0).currFootnoteSymRef += ((NI)1);
			T46_.len = 0; T46_.p = NIM_NIL;
			T46_.len = 0; T46_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
			nnX60gensym757__1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)0), T46_, TM__6mNpeIAN05DnDNzb9b3611A_776);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__13 = getAutoSymbol__packagesZdocutilsZrst_u9975(s_p0, (*s_p0).currFootnoteSymRef);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__14 = newRstLeaf__packagesZdocutilsZrstast_u454(colontmpD__13);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(nnX60gensym757__1, colontmpD__14);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(result, nnX60gensym757__1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__15 = dollar___systemZdollars_u9((*s_p0).currFootnoteSymRef);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			prepareAdd((&refn_1), colontmpD__15.len + 0);
appendString((&refn_1), colontmpD__15);
			eqdestroy___system_u2691(colontmpD__15);
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__14);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			eqdestroy___system_u2691(colontmpD__13);
			eqdestroy___packagesZdocutilsZrstast_u285(nnX60gensym757__1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		}
		break;
		case ((tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g)4):
		{
			NimStringV2 colontmpD__16;
			colontmpD__16.len = 0; colontmpD__16.p = NIM_NIL;
			add__packagesZdocutilsZrstast_u463(result, (*n_p1).sons.p->data[((NI)0)]);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			colontmpD__16 = rstnodeToRefname__packagesZdocutilsZrst_u78(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			prepareAdd((&refn_1), colontmpD__16.len + 0);
appendString((&refn_1), colontmpD__16);
			eqdestroy___system_u2691(colontmpD__16);
		}
		break;
		default: __builtin_unreachable();
		}
		anchorInfo_1 = findMainAnchorRst__packagesZdocutilsZrst_u8021(s_p0, refn_1, (*n_p1)._kind_8.info);
		if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		{
			NI T50_;
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__17;
			T50_ = anchorInfo_1.len;
			if (!!((T50_ == ((NI)0)))) goto LA51_;
			colontmpD__17 = NIM_NIL;
			colontmpD__17 = newRstLeaf__packagesZdocutilsZrstast_u454((*anchorInfo_1.p->data[((NI)0)]._kind_1.target).anchor);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			add__packagesZdocutilsZrstast_u463(result, colontmpD__17);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
			eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__17);
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		}
		goto LA48_;
LA51_: ;
		{
			tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__18;
			colontmpD__18 = NIM_NIL;
			rstMessage__packagesZdocutilsZrst_u3806((&(*s_p0).filenames), (*s_p0).msgHandler, (*n_p1)._kind_8.info, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)14), refn_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
			colontmpD__18 = newRstLeaf__packagesZdocutilsZrstast_u454(refn_1);
			if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
			add__packagesZdocutilsZrstast_u463(result, colontmpD__18);
			if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
			{
				LA54_:;
			}
			{
				oldNimErrFin54_ = *nimErr_; *nimErr_ = NIM_FALSE;
				eqdestroy___packagesZdocutilsZrstast_u285(colontmpD__18);
				if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
				*nimErr_ = oldNimErrFin54_;
			}
			if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
		}
LA48_: ;
		{
			LA34_:;
		}
		{
			oldNimErrFin34_ = *nimErr_; *nimErr_ = NIM_FALSE;
			eqdestroy___packagesZdocutilsZrst_u2877(anchorInfo_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			eqdestroy___system_u2691(refn_1);
			*nimErr_ = oldNimErrFin34_;
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	break;
	case ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)77):
	{
	}
	break;
	default:
	{
		NIM_BOOL regroup_1;
		regroup_1 = NIM_FALSE;
		{
			NI i_1;
			NI colontmp_;
			NI i_2;
			i_1 = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len__packagesZdocutilsZrstast_u114(n_p1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			i_2 = ((NI)0);
			{
				while (1) {
					tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* T64_;
					if (!(i_2 < colontmp_)) goto LA63;
					i_1 = i_2;
					T64_ = NIM_NIL;
					T64_ = resolveSubs__packagesZdocutilsZrst_u17344(s_p0, (*n_p1).sons.p->data[i_1]);
					if (NIM_UNLIKELY(*nimErr_)) {eqdestroy___packagesZdocutilsZrstast_u285(T64_); goto BeforeRet_;}
					eqsink___packagesZdocutilsZrstast_u294(&(*n_p1).sons.p->data[i_1], T64_);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					{
						NIM_BOOL T67_;
						T67_ = (NIM_BOOL)0;
						T67_ = !(((*n_p1).sons.p->data[i_1] == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL)));
						if (!(T67_)) goto LA68_;
						T67_ = ((*(*n_p1).sons.p->data[i_1]).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)38));
LA68_: ;
						if (!T67_) goto LA69_;
						regroup_1 = NIM_TRUE;
					}
LA69_: ;
					i_2 += ((NI)1);
				} LA63: ;
			}
		}
		{
			tySequence__LqZapiAqCFeXPQZdoIAUew newSons_1;
			NI i_3;
			if (!regroup_1) goto LA73_;
			newSons_1.len = 0; newSons_1.p = NIM_NIL;
			i_3 = ((NI)0);
			{
				while (1) {
					NI T77_;
					T77_ = (NI)0;
					T77_ = len__packagesZdocutilsZrstast_u114(n_p1);
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					if (!(i_3 < T77_)) goto LA76;
					{
						NIM_BOOL T80_;
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* grp_1;
						tySequence__LqZapiAqCFeXPQZdoIAUew T84_;
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* blitTmp_1;
						T80_ = (NIM_BOOL)0;
						T80_ = !(((*n_p1).sons.p->data[i_3] == ((tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*) NIM_NIL)));
						if (!(T80_)) goto LA81_;
						T80_ = ((*(*n_p1).sons.p->data[i_3]).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)38));
LA81_: ;
						if (!T80_) goto LA82_;
						grp_1 = NIM_NIL;
						T84_.len = 0; T84_.p = NIM_NIL;
						T84_.len = 0; T84_.p = (tySequence__LqZapiAqCFeXPQZdoIAUew_Content*) newSeqPayload(0, sizeof(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*), NIM_ALIGNOF(tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA*));
						grp_1 = newRstNode__packagesZdocutilsZrstast_u121(((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)40), T84_, TM__6mNpeIAN05DnDNzb9b3611A_777);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						{
							while (1) {
								NIM_BOOL T87_;
								NI T88_;
								tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__19;
								T87_ = (NIM_BOOL)0;
								T88_ = (NI)0;
								T88_ = len__packagesZdocutilsZrstast_u114(n_p1);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								T87_ = (i_3 < T88_);
								if (!(T87_)) goto LA89_;
								T87_ = ((*(*n_p1).sons.p->data[i_3]).kind == ((tyEnum_RstNodeKind__jZ5Fhlprzu8cLzCUcoxF3w)38));
LA89_: ;
								if (!T87_) goto LA86;
								colontmpD__19 = eqdup___packagesZdocutilsZrstast_u291((*n_p1).sons.p->data[i_3]);
								if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
								add__packagesZdocutilsZrstast_u466((&(*grp_1).sons), colontmpD__19);
								i_3 += ((NI)1);
							} LA86: ;
						}
						blitTmp_1 = grp_1;
						add__packagesZdocutilsZrstast_u466((&newSons_1), blitTmp_1);
					}
					goto LA78_;
LA82_: ;
					{
						tyObject_RstNode__MwWo0WeOohi1r0R1XZBjdA* colontmpD__20;
						colontmpD__20 = eqdup___packagesZdocutilsZrstast_u291((*n_p1).sons.p->data[i_3]);
						if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
						add__packagesZdocutilsZrstast_u466((&newSons_1), colontmpD__20);
						i_3 += ((NI)1);
					}
LA78_: ;
				} LA76: ;
			}
			eqsink___packagesZdocutilsZrstast_u161((&(*result).sons), newSons_1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
LA73_: ;
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdup___packagesZdocutilsZrst_u15032)(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* src_p0, tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* Result) {
	nimZeroMem((void*)Result, sizeof(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ));
	(*Result).used = (*src_p0).used;
	(*Result).fromInfo.line = (*src_p0).fromInfo.line;
	(*Result).fromInfo.col = (*src_p0).fromInfo.col;
	(*Result).fromInfo.fileIndex = (*src_p0).fromInfo.fileIndex;
	(*Result).idxPath = eqdup___system_u2697((*src_p0).idxPath);
	(*Result).linkRelPath = eqdup___system_u2697((*src_p0).linkRelPath);
	(*Result).title = eqdup___system_u2697((*src_p0).title);
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u15026)(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ* dest_p0) {
	eqdestroy___system_u2691((*dest_p0).title);
	eqdestroy___system_u2691((*dest_p0).linkRelPath);
	eqdestroy___system_u2691((*dest_p0).idxPath);
}
N_LIB_PRIVATE N_NIMCALL(void, completePass2__packagesZdocutilsZrst_u17450)(tyObject_RstSharedState__6YauuaWEZeOKzNYK3p1vqA* s_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NimStringV2 filename_1;
		tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ importdocInfo_1;
		NI L_1;
		filename_1.len = 0; filename_1.p = NIM_NIL;
		nimZeroMem((void*)(&importdocInfo_1), sizeof(tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ));
		L_1 = len__packagesZdocutilsZrst_u16315((*s_p0).idxImports);
		if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
		{
			NI h_1;
			NI colontmp_;
			NI T4_;
			NI res_1;
			h_1 = (NI)0;
			colontmp_ = (NI)0;
			T4_ = ((*s_p0).idxImports.data.len-1);
			colontmp_ = T4_;
			res_1 = ((NI)0);
			{
				while (1) {
					if (!(res_1 <= colontmp_)) goto LA6;
					h_1 = ((NI) (res_1));
					{
						NIM_BOOL T9_;
						tyTuple__qu9bB9c0GkBBtltgCSAk9aq0A colontmp__2;
						NimStringV2 colontmpD_;
						tyObject_ImportdocInfo__uLPn7VRRbG3ecDOy0jvMyQ colontmpD__2;
						T9_ = (NIM_BOOL)0;
						T9_ = isFilled__pureZcollectionsZtables_u32((*s_p0).idxImports.data.p->data[h_1].Field0);
						if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
						if (!T9_) goto LA10_;
						nimZeroMem((void*)(&colontmp__2), sizeof(tyTuple__qu9bB9c0GkBBtltgCSAk9aq0A));
						nimZeroMem((void*)(&colontmp__2), sizeof(tyTuple__qu9bB9c0GkBBtltgCSAk9aq0A));
						colontmpD_ = eqdup___system_u2697((*s_p0).idxImports.data.p->data[h_1].Field1);
						colontmp__2.Field0 = colontmpD_;
						eqdup___packagesZdocutilsZrst_u15032((&(*s_p0).idxImports.data.p->data[h_1].Field2), (&colontmpD__2));
						colontmp__2.Field1 = colontmpD__2;
						eqsink___system_u2700((&filename_1), colontmp__2.Field0);
						eqsink___packagesZdocutilsZrst_u15035((&importdocInfo_1), (&colontmp__2.Field1));
						{
							if (!!(importdocInfo_1.used)) goto LA14_;
							rstMessage__packagesZdocutilsZrst_u3806((&(*s_p0).filenames), (*s_p0).msgHandler, importdocInfo_1.fromInfo, ((tyEnum_MsgKind__ScHRGr082ewG9cWA8D9cim3g)18), filename_1);
							if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
						}
LA14_: ;
					}
LA10_: ;
					res_1 += ((NI)1);
				} LA6: ;
			}
		}
		{
			LA2_:;
		}
		{
			eqdestroy___packagesZdocutilsZrst_u15026((&importdocInfo_1));
			eqdestroy___system_u2691(filename_1);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	}BeforeRet_: ;
}
