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

#include "nimbase.h"
#include <string.h>
#include <stdlib.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 NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_WideCStringObj__S69bIyvbp2ySa2Didg6Np7w tyObject_WideCStringObj__S69bIyvbp2ySa2Didg6Np7w;
typedef struct tyObject_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw tyObject_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw;
typedef struct tyObject_CatchableError__TCF9b1Y9b2ct0xPZvZnaY7gg tyObject_CatchableError__TCF9b1Y9b2ct0xPZvZnaY7gg;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct tySequence__S89cE01OvNjsN9c71FKsSrqQ tySequence__S89cE01OvNjsN9c71FKsSrqQ;
typedef struct tySequence__S89cE01OvNjsN9c71FKsSrqQ_Content tySequence__S89cE01OvNjsN9c71FKsSrqQ_Content;
typedef struct tyTuple__UV3llMMYFckfui8YMBuUZA tyTuple__UV3llMMYFckfui8YMBuUZA;
typedef struct tySequence__4eQHGndY6XBYpFOH09apV8Q tySequence__4eQHGndY6XBYpFOH09apV8Q;
typedef struct tySequence__4eQHGndY6XBYpFOH09apV8Q_Content tySequence__4eQHGndY6XBYpFOH09apV8Q_Content;
typedef struct tyObject_NimRawSeq__Tvl1urqmI1tXqzkHPbWVJQ tyObject_NimRawSeq__Tvl1urqmI1tXqzkHPbWVJQ;
typedef struct tyObject_StackTraceEntry__RcJz5RXFIYjIseutvVFICA tyObject_StackTraceEntry__RcJz5RXFIYjIseutvVFICA;
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
struct tyObject_WideCStringObj__S69bIyvbp2ySa2Didg6Np7w {
	NI bytes;
	NI16* data;
};
typedef NI16 tyUncheckedArray__Tyd4y3haUOOHTj71TPIRag[1];
struct TNimTypeV2 {
	void* destructor;
	NI size;
	NI16 align;
	NI16 depth;
	NU32* display;
	void* traceImpl;
	void* typeInfoV1;
	NI flags;
	void* vTable[SEQ_DECL_SIZE];
};
struct RootObj {
	TNimTypeV2* m_type;
};
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_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw {
	tyObject_CatchableError__TCF9b1Y9b2ct0xPZvZnaY7gg Sup;
	NI32 errorCode;
};
struct tyTuple__UV3llMMYFckfui8YMBuUZA {
	NimStringV2 Field0;
	NimStringV2 Field1;
};
struct tySequence__4eQHGndY6XBYpFOH09apV8Q {
  NI len; tySequence__4eQHGndY6XBYpFOH09apV8Q_Content* p;
};
struct tyObject_NimRawSeq__Tvl1urqmI1tXqzkHPbWVJQ {
	NI len;
	void* p;
};
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__4eQHGndY6XBYpFOH09apV8Q_Content { NI cap; tyTuple__UV3llMMYFckfui8YMBuUZA data[SEQ_DECL_SIZE]; };
N_LIB_PRIVATE N_NIMCALL(NI16*, getEnvImpl__stdZenvvars_u13)(NCSTRING env_p0);
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1);
static N_INLINE(void, nimSetMem__systemZmemory_u7)(void* a_p0, int v_p1, NI size_p2);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
static N_INLINE(NI16*, toWideCString__stdZwidestrs_u49)(tyObject_WideCStringObj__S69bIyvbp2ySa2Didg6Np7w x_p0);
N_LIB_PRIVATE N_NIMCALL(tyObject_WideCStringObj__S69bIyvbp2ySa2Didg6Np7w, newWideCString__stdZwidestrs_u322)(NCSTRING s_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZwidestrs_u7)(tyObject_WideCStringObj__S69bIyvbp2ySa2Didg6Np7w a_p0);
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringV2 s_p0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_u2630)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___stdZwidestrs_u394)(NI16* s_p0);
static N_INLINE(NIM_BOOL, contains__stdZenvvars_u55)(NIM_CHAR* a_p0, NI a_p0Len_0, NIM_CHAR item_p1);
static N_INLINE(NI, find__stdZenvvars_u60)(NIM_CHAR* a_p0, NI a_p0Len_0, NIM_CHAR item_p1);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObj)(NI size_p0, NI alignment_p1);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
static N_INLINE(void, copyMem__system_u1718)(void* dest_p0, void* source_p1, NI size_p2);
static N_INLINE(void, nimCopyMem)(void* dest_p0, void* source_p1, NI size_p2);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___stdZprivateZoscommon_u72)(tyTuple__UV3llMMYFckfui8YMBuUZA* x_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space_p0);
N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e_p0, NCSTRING ename_p1, NCSTRING procname_p2, NCSTRING filename_p3, NI line_p4);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_u2627)(NimStringV2 dest_p0);
N_LIB_PRIVATE N_NIMCALL(int, setEnvImpl__stdZprivateZwin95setenv_u18)(NimStringV2 name_p0, NimStringV2 value_p1, int overwrite_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseOSError__stdZoserrors_u123)(NI32 errorCode_p0, NimStringV2 additionalInfo_p1);
N_LIB_PRIVATE N_NIMCALL(NI32, osLastError__stdZoserrors_u126)(void);
N_LIB_PRIVATE N_NIMCALL(void, alignedDealloc)(void* p_p0, NI align_p1);
N_LIB_PRIVATE N_NIMCALL(void, setLen__stdZenvvars_u173)(tySequence__4eQHGndY6XBYpFOH09apV8Q* s_p0, NI newlen_p1);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, eqdup___system_u2633)(NimStringV2 src_p0);
static N_INLINE(NIM_BOOL, sameSeqPayload)(void* x_p0, void* y_p1);
extern TNimTypeV2 NTIv2__SuJIQW5BO0Kx9aOoF3Fjwkw_;
static const struct {
  NI cap; NIM_CHAR data[18+1];
} TM__HBYSwmWBoRvKHp5bIbN68w_2 = { 18 | NIM_STRLIT_FLAG, "invalid key, got: " };
static const NimStringV2 TM__HBYSwmWBoRvKHp5bIbN68w_3 = {18, (NimStrPayload*)&TM__HBYSwmWBoRvKHp5bIbN68w_2};
static const NimStringV2 TM__HBYSwmWBoRvKHp5bIbN68w_4 = {18, (NimStrPayload*)&TM__HBYSwmWBoRvKHp5bIbN68w_2};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__HBYSwmWBoRvKHp5bIbN68w_5 = { 1 | NIM_STRLIT_FLAG, "=" };
static const NimStringV2 TM__HBYSwmWBoRvKHp5bIbN68w_6 = {1, (NimStrPayload*)&TM__HBYSwmWBoRvKHp5bIbN68w_5};
extern NIM_BOOL nimInErrorMode__system_u4304;
static N_INLINE(void, nimSetMem__systemZmemory_u7)(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(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4304);
	return result;
}
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimSetMem__systemZmemory_u7(p_p0, ((int)0), size_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(NI16*, toWideCString__stdZwidestrs_u49)(tyObject_WideCStringObj__S69bIyvbp2ySa2Didg6Np7w x_p0) {
	NI16* result;
	result = x_p0.data;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI16*, getEnvImpl__stdZenvvars_u13)(NCSTRING env_p0) {
	NI16* result;
	tyObject_WideCStringObj__S69bIyvbp2ySa2Didg6Np7w colontmpD_;
	NI16* r_1;
	wchar_t* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NI16*)0;
	nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_WideCStringObj__S69bIyvbp2ySa2Didg6Np7w));
	colontmpD_ = newWideCString__stdZwidestrs_u322(env_p0);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	r_1 = toWideCString__stdZwidestrs_u49(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = (wchar_t*)0;
	T1_ = _wgetenv(((wchar_t*) (r_1)));
	result = ((NI16*) (T1_));
	eqdestroy___stdZwidestrs_u7(colontmpD_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
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(NimStringV2, getEnv__stdZenvvars_u36)(NimStringV2 key_p0, NimStringV2 default_p1) {
	NimStringV2 result;
	NI16* env_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result.len = 0; result.p = NIM_NIL;
	env_1 = getEnvImpl__stdZenvvars_u13(nimToCStringConv(key_p0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!(env_1 == ((NI16*) NIM_NIL))) goto LA3_;
		eqcopy___system_u2630((&result), default_p1);
	}
	goto LA1_;
LA3_: ;
	{
		result = dollar___stdZwidestrs_u394(env_1);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA1_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, find__stdZenvvars_u60)(NIM_CHAR* a_p0, NI a_p0Len_0, NIM_CHAR item_p1) {
	NI result;
{	result = ((NI)0);
	{
		NIM_CHAR i_1;
		NI i_2;
		i_1 = (NIM_CHAR)0;
		i_2 = ((NI)0);
		{
			while (1) {
				if (!(i_2 < a_p0Len_0)) goto LA3;
				i_1 = a_p0[i_2];
				{
					if (!((NU8)(i_1) == (NU8)(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__stdZenvvars_u55)(NIM_CHAR* a_p0, NI a_p0Len_0, NIM_CHAR item_p1) {
	NIM_BOOL result;
	NI T1_;
{	T1_ = (NI)0;
	T1_ = find__stdZenvvars_u60(a_p0, a_p0Len_0, item_p1);
	result = (((NI)0) <= T1_);
	goto BeforeRet_;
	}BeforeRet_: ;
	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_u1718)(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_u1718(((void*) ((&(*(*dest_p0).p).data[(*dest_p0).len]))), ((void*) ((&(*src_p1.p).data[((NI)0)]))), (src_p1.len));
		(*dest_p0).len += src_p1.len;
		(*(*dest_p0).p).data[(*dest_p0).len] = 0;
	}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, putEnv__stdZenvvars_u52)(NimStringV2 key_p0, NimStringV2 val_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		NimStringV2 colontmpD_;
		tyObject_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw* T8_;
		NimStringV2 T9_;
		tyTuple__UV3llMMYFckfui8YMBuUZA T10_;
		T3_ = (NIM_BOOL)0;
		T3_ = (key_p0.len == ((NI)0));
		if (T3_) goto LA4_;
		T3_ = contains__stdZenvvars_u55(((key_p0).p) ? (key_p0.p->data) : NIM_NIL, key_p0.len, 61);
LA4_: ;
		if (!T3_) goto LA5_;
		colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
		T8_ = NIM_NIL;
		T8_ = (tyObject_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw*) nimNewObj(sizeof(tyObject_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw), NIM_ALIGNOF(tyObject_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw));
		(*T8_).Sup.Sup.Sup.m_type = (&NTIv2__SuJIQW5BO0Kx9aOoF3Fjwkw_);
		(*T8_).Sup.Sup.name = "OSError";
		T9_.len = 0; T9_.p = NIM_NIL;
		T10_.Field0 = key_p0;
		T10_.Field1 = val_p1;
		colontmpD_ = dollar___stdZprivateZoscommon_u72((&T10_));
		if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
		T9_ = rawNewString(colontmpD_.len + 18);
appendString((&T9_), TM__HBYSwmWBoRvKHp5bIbN68w_3);
appendString((&T9_), colontmpD_);
		(*T8_).Sup.Sup.message = T9_;
		(*T8_).Sup.Sup.parent = ((Exception*) NIM_NIL);
		raiseExceptionEx((Exception*)T8_, "OSError", "putEnv", "envvars.nim", 130);
goto LA7_;
		{
			LA7_:;
		}
		{
			eqdestroy___system_u2627(colontmpD_);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA5_: ;
	{
		int T15_;
		NimStringV2 colontmpD__2;
		NI32 T19_;
		tyTuple__UV3llMMYFckfui8YMBuUZA T20_;
		T15_ = (int)0;
		T15_ = setEnvImpl__stdZprivateZwin95setenv_u18(key_p0, val_p1, ((NI32)1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!!((T15_ == ((NI32)0)))) goto LA16_;
		colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
		T19_ = (NI32)0;
		T19_ = osLastError__stdZoserrors_u126();
		if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
		T20_.Field0 = key_p0;
		T20_.Field1 = val_p1;
		colontmpD__2 = dollar___stdZprivateZoscommon_u72((&T20_));
		if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
		raiseOSError__stdZoserrors_u123(T19_, colontmpD__2);
		if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
		{
			LA18_:;
		}
		{
			eqdestroy___system_u2627(colontmpD__2);
		}
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
LA16_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, existsEnv__stdZenvvars_u45)(NimStringV2 key_p0) {
	NIM_BOOL result;
	NI16* T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	T1_ = (NI16*)0;
	T1_ = getEnvImpl__stdZenvvars_u13(nimToCStringConv(key_p0));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = !((T1_ == ((NI16*) NIM_NIL)));
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, delEnv__stdZenvvars_u91)(NimStringV2 key_p0) {
	NimStringV2 envToDel_1;
	NimStringV2 T10_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	envToDel_1.len = 0; envToDel_1.p = NIM_NIL;
	{
		NIM_BOOL T4_;
		tyObject_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw* T8_;
		NimStringV2 T9_;
		T4_ = (NIM_BOOL)0;
		T4_ = (key_p0.len == ((NI)0));
		if (T4_) goto LA5_;
		T4_ = contains__stdZenvvars_u55(((key_p0).p) ? (key_p0.p->data) : NIM_NIL, key_p0.len, 61);
LA5_: ;
		if (!T4_) goto LA6_;
		T8_ = NIM_NIL;
		T8_ = (tyObject_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw*) nimNewObj(sizeof(tyObject_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw), NIM_ALIGNOF(tyObject_OSError__SuJIQW5BO0Kx9aOoF3Fjwkw));
		(*T8_).Sup.Sup.Sup.m_type = (&NTIv2__SuJIQW5BO0Kx9aOoF3Fjwkw_);
		(*T8_).Sup.Sup.name = "OSError";
		T9_.len = 0; T9_.p = NIM_NIL;
		T9_ = rawNewString(key_p0.len + 18);
appendString((&T9_), TM__HBYSwmWBoRvKHp5bIbN68w_4);
appendString((&T9_), key_p0);
		(*T8_).Sup.Sup.message = T9_;
		(*T8_).Sup.Sup.parent = ((Exception*) NIM_NIL);
		raiseExceptionEx((Exception*)T8_, "OSError", "delEnv", "envvars.nim", 154);
goto LA1_;
	}
LA6_: ;
	T10_.len = 0; T10_.p = NIM_NIL;
	T10_ = rawNewString(key_p0.len + 1);
appendString((&T10_), key_p0);
appendString((&T10_), TM__HBYSwmWBoRvKHp5bIbN68w_6);
	envToDel_1 = T10_;
	{
		int T13_;
		NI32 T16_;
		T13_ = (int)0;
		T13_ = _putenv(nimToCStringConv(envToDel_1));
		if (!!((T13_ == ((NI32)0)))) goto LA14_;
		T16_ = (NI32)0;
		T16_ = osLastError__stdZoserrors_u126();
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
		raiseOSError__stdZoserrors_u123(T16_, key_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
	}
LA14_: ;
	{
		LA1_:;
	}
	{
		eqdestroy___system_u2627(envToDel_1);
	}
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZenvvars_u152)(tySequence__4eQHGndY6XBYpFOH09apV8Q dest_p0) {
	NI colontmp_;
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T3_;
			T3_ = dest_p0.len;
			if (!(colontmp_ < T3_)) goto LA2;
			eqdestroy___system_u2627(dest_p0.p->data[colontmp_].Field0);
			eqdestroy___system_u2627(dest_p0.p->data[colontmp_].Field1);
			colontmp_ += ((NI)1);
		} LA2: ;
	}
	if (dest_p0.p && !(dest_p0.p->cap & NIM_STRLIT_FLAG)) {
 alignedDealloc(dest_p0.p, NIM_ALIGNOF(tyTuple__UV3llMMYFckfui8YMBuUZA));
}
}
N_LIB_PRIVATE N_NIMCALL(tySequence__4eQHGndY6XBYpFOH09apV8Q, eqdup___stdZenvvars_u158)(tySequence__4eQHGndY6XBYpFOH09apV8Q src_p0) {
	tySequence__4eQHGndY6XBYpFOH09apV8Q result;
	NI T1_;
	NI colontmp_;
	result.len = 0; result.p = NIM_NIL;
	T1_ = src_p0.len;
	setLen__stdZenvvars_u173((&result), T1_);
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T4_;
			T4_ = result.len;
			if (!(colontmp_ < T4_)) goto LA3;
			result.p->data[colontmp_].Field0 = eqdup___system_u2633(src_p0.p->data[colontmp_].Field0);
			result.p->data[colontmp_].Field1 = eqdup___system_u2633(src_p0.p->data[colontmp_].Field1);
			colontmp_ += ((NI)1);
		} LA3: ;
	}
	return result;
}
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___stdZenvvars_u155)(tySequence__4eQHGndY6XBYpFOH09apV8Q* dest_p0, tySequence__4eQHGndY6XBYpFOH09apV8Q 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__stdZenvvars_u173((&(*dest_p0)), T6_);
	colontmp_ = ((NI)0);
	{
		while (1) {
			NI T9_;
			T9_ = (*dest_p0).len;
			if (!(colontmp_ < T9_)) goto LA8;
			eqcopy___system_u2630((&(*dest_p0).p->data[colontmp_].Field0), src_p1.p->data[colontmp_].Field0);
			eqcopy___system_u2630((&(*dest_p0).p->data[colontmp_].Field1), src_p1.p->data[colontmp_].Field1);
			colontmp_ += ((NI)1);
		} LA8: ;
	}
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqwasMoved___stdZenvvars_u149)(tySequence__4eQHGndY6XBYpFOH09apV8Q* dest_p0) {
	(*dest_p0).len = 0; (*dest_p0).p = NIM_NIL;
}
