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

#include "nimbase.h"
#include <string.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
typedef struct tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA;
typedef struct tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog;
typedef struct tyTuple__4Ywt2LYBMs9aMJ09cL7digow tyTuple__4Ywt2LYBMs9aMJ09cL7digow;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A;
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;
struct tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA {
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* head;
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* tail;
};
typedef NU8 tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g;
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
struct tyTuple__4Ywt2LYBMs9aMJ09cL7digow {
	tyEnum_FootnoteType__AwBNmZfS9azDCP9cRgTUCl6g Field0;
	NI Field1;
	NI Field2;
	NI Field3;
	NimStringV2 Field4;
};
struct tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog {
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* next;
	tyTuple__4Ywt2LYBMs9aMJ09cL7digow value;
};
struct tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A {
	NI rc;
	NI rootIdx;
};
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;
};
struct TNimTypeV2 {
	void* destructor;
	NI size;
	NI16 align;
	NI16 depth;
	NU32* display;
	void* traceImpl;
	void* typeInfoV1;
	NI flags;
	void* vTable[SEQ_DECL_SIZE];
};
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);
static N_INLINE(void, add__packagesZdocutilsZrst_u8790)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* L_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow value_p1);
static N_INLINE(void, add__packagesZdocutilsZrst_u8948)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* L_p0, tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* n_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u8819)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog** dest_p0, tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* src_p1);
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p_p0, TNimTypeV2* desc_p1);
static N_INLINE(NI, minuspercent___system_u805)(NI x_p0, NI y_p1);
N_LIB_PRIVATE N_NOINLINE(void, rememberCycle__system_u3495)(NIM_BOOL isDestroyAction_p0, tyObject_RefHeader__GDnGTjNyvwISJbkIvAst3A* s_p1, TNimTypeV2* desc_p2);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u8828)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u2691)(NimStringV2 dest_p0);
N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p_p0, NI alignment_p1);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
static N_INLINE(void, nimTraceRef)(void* q_p0, TNimTypeV2* desc_p1, void* env_p2);
static N_INLINE(void, add__system_u3016)(tyObject_CellSeq__gW9aeWLFbrNaeUKXqxYBXhg* s_p0, void** c_p1, TNimTypeV2* t_p2);
N_LIB_PRIVATE N_NIMCALL(void, resize__system_u3024)(tyObject_CellSeq__gW9aeWLFbrNaeUKXqxYBXhg* s_p0);
static N_INLINE(NI, pluspercent___system_u785)(NI x_p0, NI y_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u8811)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog** dest_p0, tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* src_p1, NIM_BOOL cyclic_p2);
static N_INLINE(void, nimIncRefCyclic)(void* p_p0, NIM_BOOL cyclic_p1);
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(void*, nimNewObj)(NI size_p0, NI alignment_p1);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___packagesZdocutilsZrst_u3441)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow* dest_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow src_p1);
extern TNimTypeV2 NTIv2__o5pWeTm9csUUSGBf9b9btbCog_;
extern NIM_BOOL nimInErrorMode__system_u4141;
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(void, initSinglyLinkedList__packagesZdocutilsZrst_u8692)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* Result) {
	nimZeroMem((void*)Result, sizeof(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA));
}
static N_INLINE(NI, minuspercent___system_u805)(NI x_p0, NI y_p1) {
	NI result;
	result = ((NI) ((NU)((NU32)(((NU) (x_p0))) - (NU32)(((NU) (y_p1))))));
	return result;
}
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)8));
		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_u3495(result, cell_1, desc_p1);
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u8828)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* dest_p0) {
	eqdestroy___system_u2691((*dest_p0).value.Field4);
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic((*dest_p0).next, ((TNimTypeV2*) ((&NTIv2__o5pWeTm9csUUSGBf9b9btbCog_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u8828((&(*(*dest_p0).next)));
		nimRawDispose((*dest_p0).next, ((NI)4));
	}
LA4_: ;
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4141);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, rttiDestroy__packagesZdocutilsZrst_u18784)(void* dest_p0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqdestroy___packagesZdocutilsZrst_u8828((&(*((tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) (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)((NU32)(((NU) (x_p0))) + (NU32)(((NU) (y_p1))))));
	return result;
}
static N_INLINE(void, add__system_u3016)(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_u3024(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, 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_u3016((&(*j_1).traceStack), p_1, desc_p1);
	}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqtrace___packagesZdocutilsZrst_u8840)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* dest_p0, void* env_p1) {
	nimTraceRef(&(*dest_p0).next, ((TNimTypeV2*) ((&NTIv2__o5pWeTm9csUUSGBf9b9btbCog_))), env_p1);
}
N_LIB_PRIVATE N_NIMCALL(void, eqsink___packagesZdocutilsZrst_u8819)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog** dest_p0, tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* src_p1) {
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* 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__o5pWeTm9csUUSGBf9b9btbCog_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u8828((&(*colontmp_)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nimRawDispose(colontmp_, ((NI)4));
	}
LA4_: ;
	}BeforeRet_: ;
}
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)8));
	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_u8811)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog** dest_p0, tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* src_p1, NIM_BOOL cyclic_p2) {
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* 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__o5pWeTm9csUUSGBf9b9btbCog_))));
		if (!T7_) goto LA8_;
		eqdestroy___packagesZdocutilsZrst_u8828((&(*colontmp_)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nimRawDispose(colontmp_, ((NI)4));
	}
LA8_: ;
	}BeforeRet_: ;
}
static N_INLINE(void, add__packagesZdocutilsZrst_u8948)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* L_p0, tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* n_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	eqsink___packagesZdocutilsZrst_u8819(&(*n_p1).next, ((tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) NIM_NIL));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!!(((*L_p0).tail == ((tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) NIM_NIL)))) goto LA3_;
		eqcopy___packagesZdocutilsZrst_u8811(&(*(*L_p0).tail).next, n_p1, NIM_TRUE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA3_: ;
	(*L_p0).tail = n_p1;
	{
		if (!((*L_p0).head == ((tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) NIM_NIL))) goto LA7_;
		eqcopy___packagesZdocutilsZrst_u8811(&(*L_p0).head, n_p1, NIM_TRUE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA7_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u8808)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(dest_p0, ((TNimTypeV2*) ((&NTIv2__o5pWeTm9csUUSGBf9b9btbCog_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u8828((&(*dest_p0)));
		nimRawDispose(dest_p0, ((NI)4));
	}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*, newSinglyLinkedNode__packagesZdocutilsZrst_u8798)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow value_p0) {
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	eqdestroy___packagesZdocutilsZrst_u8808(result);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = (tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) nimNewObj(sizeof(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog), NIM_ALIGNOF(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog));
	eqcopy___packagesZdocutilsZrst_u3441((&(*result).value), value_p0);
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, add__packagesZdocutilsZrst_u8790)(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_;
	add__packagesZdocutilsZrst_u8948(L_p0, colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	eqdestroy___packagesZdocutilsZrst_u8808(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, append__packagesZdocutilsZrst_u8715)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* a_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow b_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	add__packagesZdocutilsZrst_u8790(a_p0, b_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*, newSinglyLinkedNode__packagesZdocutilsZrst_u9336)(tyTuple__4Ywt2LYBMs9aMJ09cL7digow value_p0) {
	tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = NIM_NIL;
	eqdestroy___packagesZdocutilsZrst_u8808(result);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = (tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog*) nimNewObj(sizeof(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog), NIM_ALIGNOF(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog));
	eqcopy___packagesZdocutilsZrst_u3441((&(*result).value), value_p0);
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___packagesZdocutilsZrst_u8805)(tyObject_SinglyLinkedNodeObj__o5pWeTm9csUUSGBf9b9btbCog** dest_p0) {
	(*dest_p0) = 0;
}
N_LIB_PRIVATE N_NIMCALL(void, append__packagesZdocutilsZrst_u9401)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA* a_p0, tyTuple__4Ywt2LYBMs9aMJ09cL7digow b_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	add__packagesZdocutilsZrst_u8790(a_p0, b_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___packagesZdocutilsZrst_u9629)(tyObject_SinglyLinkedList__Zkdc3Hd1HVkKxzmlNf1dwA dest_p0) {
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = nimDecRefIsLastCyclicStatic(dest_p0.head, ((TNimTypeV2*) ((&NTIv2__o5pWeTm9csUUSGBf9b9btbCog_))));
		if (!T3_) goto LA4_;
		eqdestroy___packagesZdocutilsZrst_u8828((&(*dest_p0.head)));
		nimRawDispose(dest_p0.head, ((NI)4));
	}
LA4_: ;
}
