/* Generated by Nim Compiler v1.0.4 */
/*   (c) 2019 Andreas Rumpf */
/* The generated code is subject to the original license. */
#define NIM_INTBITS 64

#include "nimbase.h"
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
#define nimfr_(x, y)
#define nimln_(x, y)
typedef struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ tySequence__6H5Oh5UUvVCLiakt9aTwtUQ;
typedef struct TGenericSeq TGenericSeq;
typedef struct TNimType TNimType;
typedef struct TNimNode TNimNode;
typedef struct NimStringDesc NimStringDesc;
struct TGenericSeq {
NI len;
NI reserved;
};
typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
struct TNimType {
NI size;
tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
TNimType* base;
TNimNode* node;
void* finalizer;
tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
};
typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
struct TNimNode {
tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
NI offset;
TNimType* typ;
NCSTRING name;
NI len;
TNimNode** sons;
};
struct NimStringDesc {
  TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
typedef NU8 tyArray__PgpowgA9aFQHq0cr9b7SoUgw[256];
struct tySequence__6H5Oh5UUvVCLiakt9aTwtUQ {
  TGenericSeq Sup;
  NU8 data[SEQ_DECL_SIZE];
};
static N_INLINE(NI, chckRange)(NI i, NI a, NI b);
N_NOINLINE(void, raiseRangeError)(NI64 val);
N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A)(NimStringDesc* msg);
N_NOINLINE(void, raiseIndexError2)(NI i, NI n);
static N_INLINE(NI64, addInt64)(NI64 a, NI64 b);
N_NOINLINE(void, raiseOverflow)(void);
static N_INLINE(NI, addInt)(NI a, NI b);
extern TNimType NTI__6H5Oh5UUvVCLiakt9aTwtUQ_;
STRING_LITERAL(TM__sZxD5iFo9aFCaIja9a9bnYnuw_2, "bitsets.nim(43, 9) `elem >= 0` ", 31);
NIM_CONST tyArray__PgpowgA9aFQHq0cr9b7SoUgw populationCount__Ly9aQbOrmv9a2vbYdHwEtF9cg = {((NU8) 0),
((NU8) 1),
((NU8) 1),
((NU8) 2),
((NU8) 1),
((NU8) 2),
((NU8) 2),
((NU8) 3),
((NU8) 1),
((NU8) 2),
((NU8) 2),
((NU8) 3),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 1),
((NU8) 2),
((NU8) 2),
((NU8) 3),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 1),
((NU8) 2),
((NU8) 2),
((NU8) 3),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 1),
((NU8) 2),
((NU8) 2),
((NU8) 3),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 5),
((NU8) 6),
((NU8) 6),
((NU8) 7),
((NU8) 1),
((NU8) 2),
((NU8) 2),
((NU8) 3),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 5),
((NU8) 6),
((NU8) 6),
((NU8) 7),
((NU8) 2),
((NU8) 3),
((NU8) 3),
((NU8) 4),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 5),
((NU8) 6),
((NU8) 6),
((NU8) 7),
((NU8) 3),
((NU8) 4),
((NU8) 4),
((NU8) 5),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 5),
((NU8) 6),
((NU8) 6),
((NU8) 7),
((NU8) 4),
((NU8) 5),
((NU8) 5),
((NU8) 6),
((NU8) 5),
((NU8) 6),
((NU8) 6),
((NU8) 7),
((NU8) 5),
((NU8) 6),
((NU8) 6),
((NU8) 7),
((NU8) 6),
((NU8) 7),
((NU8) 7),
((NU8) 8)}
;
STRING_LITERAL(TM__sZxD5iFo9aFCaIja9a9bnYnuw_5, "iterators.nim(189, 11) `len(a) == L` the length of the seq chan"
"ged while iterating over it", 90);
static N_INLINE(NI, chckRange)(NI i, NI a, NI b) {	NI result;
{	result = (NI)0;
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (a <= i);
		if (!(T3_)) goto LA4_;
		T3_ = (i <= b);
		LA4_: ;
		if (!T3_) goto LA5_;
		result = i;
		goto BeforeRet_;
	}
	goto LA1_;
	LA5_: ;
	{
		raiseRangeError(((NI64) (i)));
	}
	LA1_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, bitSetInit__gToByGL9ch7eFNIHS6bVK5A)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** b, NI length) {	unsureAsgnRef((void**) (&(*b)), (tySequence__6H5Oh5UUvVCLiakt9aTwtUQ*) newSeq((&NTI__6H5Oh5UUvVCLiakt9aTwtUQ_), ((NI)chckRange(length, ((NI) 0), ((NI) IL64(9223372036854775807))))));
}
N_LIB_PRIVATE N_NIMCALL(void, bitSetIncl__D8VuDiNSH5ExQEnnktgOfw)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** x, NI64 elem) {	{
		if (!!((IL64(0) <= elem))) goto LA3_;
		failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__sZxD5iFo9aFCaIja9a9bnYnuw_2));
	}
	LA3_: ;
	if ((NU)((NI64)((NI64)(elem) >> (NU64)(((NI) 3)))) >= (NU)((*x) ? (*x)->Sup.len : 0)) raiseIndexError2((NI64)((NI64)(elem) >> (NU64)(((NI) 3))),((*x) ? (*x)->Sup.len : 0)-1);
	if ((NU)((NI64)((NI64)(elem) >> (NU64)(((NI) 3)))) >= (NU)((*x) ? (*x)->Sup.len : 0)) raiseIndexError2((NI64)((NI64)(elem) >> (NU64)(((NI) 3))),((*x) ? (*x)->Sup.len : 0)-1);
	(*x)->data[(NI64)((NI64)(elem) >> (NU64)(((NI) 3)))] = (NU8)((*x)->data[(NI64)((NI64)(elem) >> (NU64)(((NI) 3)))] | (NU8)((NU64)(((NU8) 1)) << (NU64)((NI64)(elem & IL64(7)))));
}
static N_INLINE(NI64, addInt64)(NI64 a, NI64 b) {	NI64 result;
{	result = (NI64)0;
	result = (NI64)((NU64)(a) + (NU64)(b));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (IL64(0) <= (NI64)(result ^ a));
		if (T3_) goto LA4_;
		T3_ = (IL64(0) <= (NI64)(result ^ b));
		LA4_: ;
		if (!T3_) goto LA5_;
		goto BeforeRet_;
	}
	LA5_: ;
	raiseOverflow();
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NI, addInt)(NI a, NI b) {	NI result;
{	result = (NI)0;
	result = (NI)((NU64)(a) + (NU64)(b));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI) 0) <= (NI)(result ^ a));
		if (T3_) goto LA4_;
		T3_ = (((NI) 0) <= (NI)(result ^ b));
		LA4_: ;
		if (!T3_) goto LA5_;
		goto BeforeRet_;
	}
	LA5_: ;
	raiseOverflow();
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NI64, bitSetCard__QrtRGG3oB8KZ1S1qGGrV7Q)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x) {	NI64 result;
	result = (NI64)0;
	{
		NU8 it;
		NI i;
		NI L;
		NI T2_;
		it = (NU8)0;
		i = ((NI) 0);
		T2_ = (x ? x->Sup.len : 0);
		L = T2_;
		{
			while (1) {
				NI64 TM__sZxD5iFo9aFCaIja9a9bnYnuw_3;
				NI TM__sZxD5iFo9aFCaIja9a9bnYnuw_4;
				if (!(i < L)) goto LA4;
				if ((NU)(i) >= (NU)(x ? x->Sup.len : 0)) raiseIndexError2(i,(x ? x->Sup.len : 0)-1);
				it = x->data[i];
				TM__sZxD5iFo9aFCaIja9a9bnYnuw_3 = addInt64(result, ((NI) (populationCount__Ly9aQbOrmv9a2vbYdHwEtF9cg[(it)- 0])));
				result = (NI64)(TM__sZxD5iFo9aFCaIja9a9bnYnuw_3);
				TM__sZxD5iFo9aFCaIja9a9bnYnuw_4 = addInt(i, ((NI) 1));
				i = (NI)(TM__sZxD5iFo9aFCaIja9a9bnYnuw_4);
				{
					NI T7_;
					T7_ = (x ? x->Sup.len : 0);
					if (!!((T7_ == L))) goto LA8_;
					failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__sZxD5iFo9aFCaIja9a9bnYnuw_5));
				}
				LA8_: ;
			} LA4: ;
		}
	}
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, bitSetContains__3Tz13qSD8R5sqlragWAI2w)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y) {	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = ((x ? x->Sup.len : 0)-1);
		colontmp_ = T2_;
		res = ((NI) 0);
		{
			while (1) {
				NI TM__sZxD5iFo9aFCaIja9a9bnYnuw_6;
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				{
					if ((NU)(i) >= (NU)(x ? x->Sup.len : 0)) raiseIndexError2(i,(x ? x->Sup.len : 0)-1);
					if ((NU)(i) >= (NU)(y ? y->Sup.len : 0)) raiseIndexError2(i,(y ? y->Sup.len : 0)-1);
					if (!!(((NU8)(x->data[i] & (NU8)((NU8) ~(y->data[i]))) == ((NU8) 0)))) goto LA7_;
					result = NIM_FALSE;
					goto BeforeRet_;
				}
				LA7_: ;
				TM__sZxD5iFo9aFCaIja9a9bnYnuw_6 = addInt(res, ((NI) 1));
				res = (NI)(TM__sZxD5iFo9aFCaIja9a9bnYnuw_6);
			} LA4: ;
		}
	}
	result = NIM_TRUE;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, bitSetEquals__3Tz13qSD8R5sqlragWAI2w_2)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y) {	NIM_BOOL result;
{	result = (NIM_BOOL)0;
	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = ((x ? x->Sup.len : 0)-1);
		colontmp_ = T2_;
		res = ((NI) 0);
		{
			while (1) {
				NI TM__sZxD5iFo9aFCaIja9a9bnYnuw_7;
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				{
					if ((NU)(i) >= (NU)(x ? x->Sup.len : 0)) raiseIndexError2(i,(x ? x->Sup.len : 0)-1);
					if ((NU)(i) >= (NU)(y ? y->Sup.len : 0)) raiseIndexError2(i,(y ? y->Sup.len : 0)-1);
					if (!!((x->data[i] == y->data[i]))) goto LA7_;
					result = NIM_FALSE;
					goto BeforeRet_;
				}
				LA7_: ;
				TM__sZxD5iFo9aFCaIja9a9bnYnuw_7 = addInt(res, ((NI) 1));
				res = (NI)(TM__sZxD5iFo9aFCaIja9a9bnYnuw_7);
			} LA4: ;
		}
	}
	result = NIM_TRUE;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, bitSetIntersect__ws9bXSVLc7PIKQ9b1eTjSYSg)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y) {	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (((*x) ? (*x)->Sup.len : 0)-1);
		colontmp_ = T2_;
		res = ((NI) 0);
		{
			while (1) {
				NI TM__sZxD5iFo9aFCaIja9a9bnYnuw_8;
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				if ((NU)(i) >= (NU)((*x) ? (*x)->Sup.len : 0)) raiseIndexError2(i,((*x) ? (*x)->Sup.len : 0)-1);
				if ((NU)(i) >= (NU)((*x) ? (*x)->Sup.len : 0)) raiseIndexError2(i,((*x) ? (*x)->Sup.len : 0)-1);
				if ((NU)(i) >= (NU)(y ? y->Sup.len : 0)) raiseIndexError2(i,(y ? y->Sup.len : 0)-1);
				(*x)->data[i] = (NU8)((*x)->data[i] & y->data[i]);
				TM__sZxD5iFo9aFCaIja9a9bnYnuw_8 = addInt(res, ((NI) 1));
				res = (NI)(TM__sZxD5iFo9aFCaIja9a9bnYnuw_8);
			} LA4: ;
		}
	}
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, bitSetIn__9cpK2jtBEfO3u5uE3OUjrSA)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* x, NI64 e) {	NIM_BOOL result;
	result = (NIM_BOOL)0;
	if ((NU)((NI64)((NI64)(e) >> (NU64)(((NI) 3)))) >= (NU)(x ? x->Sup.len : 0)) raiseIndexError2((NI64)((NI64)(e) >> (NU64)(((NI) 3))),(x ? x->Sup.len : 0)-1);
	result = !(((NU8)(x->data[(NI64)((NI64)(e) >> (NU64)(((NI) 3)))] & (NU8)((NU64)(((NU8) 1)) << (NU64)((NI64)(e & IL64(7))))) == ((NU8) 0)));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, bitSetUnion__ws9bXSVLc7PIKQ9b1eTjSYSg_2)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y) {	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (((*x) ? (*x)->Sup.len : 0)-1);
		colontmp_ = T2_;
		res = ((NI) 0);
		{
			while (1) {
				NI TM__sZxD5iFo9aFCaIja9a9bnYnuw_9;
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				if ((NU)(i) >= (NU)((*x) ? (*x)->Sup.len : 0)) raiseIndexError2(i,((*x) ? (*x)->Sup.len : 0)-1);
				if ((NU)(i) >= (NU)((*x) ? (*x)->Sup.len : 0)) raiseIndexError2(i,((*x) ? (*x)->Sup.len : 0)-1);
				if ((NU)(i) >= (NU)(y ? y->Sup.len : 0)) raiseIndexError2(i,(y ? y->Sup.len : 0)-1);
				(*x)->data[i] = (NU8)((*x)->data[i] | y->data[i]);
				TM__sZxD5iFo9aFCaIja9a9bnYnuw_9 = addInt(res, ((NI) 1));
				res = (NI)(TM__sZxD5iFo9aFCaIja9a9bnYnuw_9);
			} LA4: ;
		}
	}
}
N_LIB_PRIVATE N_NIMCALL(void, bitSetDiff__ws9bXSVLc7PIKQ9b1eTjSYSg_3)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y) {	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (((*x) ? (*x)->Sup.len : 0)-1);
		colontmp_ = T2_;
		res = ((NI) 0);
		{
			while (1) {
				NI TM__sZxD5iFo9aFCaIja9a9bnYnuw_10;
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				if ((NU)(i) >= (NU)((*x) ? (*x)->Sup.len : 0)) raiseIndexError2(i,((*x) ? (*x)->Sup.len : 0)-1);
				if ((NU)(i) >= (NU)((*x) ? (*x)->Sup.len : 0)) raiseIndexError2(i,((*x) ? (*x)->Sup.len : 0)-1);
				if ((NU)(i) >= (NU)(y ? y->Sup.len : 0)) raiseIndexError2(i,(y ? y->Sup.len : 0)-1);
				(*x)->data[i] = (NU8)((*x)->data[i] & (NU8)((NU8) ~(y->data[i])));
				TM__sZxD5iFo9aFCaIja9a9bnYnuw_10 = addInt(res, ((NI) 1));
				res = (NI)(TM__sZxD5iFo9aFCaIja9a9bnYnuw_10);
			} LA4: ;
		}
	}
}
N_LIB_PRIVATE N_NIMCALL(void, bitSetSymDiff__ws9bXSVLc7PIKQ9b1eTjSYSg_4)(tySequence__6H5Oh5UUvVCLiakt9aTwtUQ** x, tySequence__6H5Oh5UUvVCLiakt9aTwtUQ* y) {	{
		NI i;
		NI colontmp_;
		NI T2_;
		NI res;
		i = (NI)0;
		colontmp_ = (NI)0;
		T2_ = (((*x) ? (*x)->Sup.len : 0)-1);
		colontmp_ = T2_;
		res = ((NI) 0);
		{
			while (1) {
				NI TM__sZxD5iFo9aFCaIja9a9bnYnuw_11;
				if (!(res <= colontmp_)) goto LA4;
				i = res;
				if ((NU)(i) >= (NU)((*x) ? (*x)->Sup.len : 0)) raiseIndexError2(i,((*x) ? (*x)->Sup.len : 0)-1);
				if ((NU)(i) >= (NU)((*x) ? (*x)->Sup.len : 0)) raiseIndexError2(i,((*x) ? (*x)->Sup.len : 0)-1);
				if ((NU)(i) >= (NU)(y ? y->Sup.len : 0)) raiseIndexError2(i,(y ? y->Sup.len : 0)-1);
				(*x)->data[i] = (NU8)((*x)->data[i] ^ y->data[i]);
				TM__sZxD5iFo9aFCaIja9a9bnYnuw_11 = addInt(res, ((NI) 1));
				res = (NI)(TM__sZxD5iFo9aFCaIja9a9bnYnuw_11);
			} LA4: ;
		}
	}
}
