/* Generated by Nim Compiler v2.2.10 */
/* Compiled for: MacOSX, arm64, clang */
/* Command for C compiler:
   clang -c  -w -ferror-limit=3 -fno-strict-aliasing -pthread -isysroot /Applications/Xcode_16.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -target arm64-apple-darwin24.2.0 -O3   -I/Users/runner/work/nightlies/nightlies/nim-2.2.10/lib -I/Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/src -o /Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/.nimcache/@pstd@ssha1.nim.c.o /Users/runner/work/nightlies/nightlies/nim-2.2.10/dist/atlas/.nimcache/@pstd@ssha1.nim.c */
#define NIM_INTBITS 64
#define NIM_EmulateOverflowChecks

#include "nimbase.h"
#include <string.h>
#include <math.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_Sha1State__JIoJIk9cyhLcV9appRPaP4dQ tyObject_Sha1State__JIoJIk9cyhLcV9appRPaP4dQ;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef NU32 tyArray__qEmXVe9a9cxQumtG9bM0PNunQ[5];
typedef NU8 tyArray__cPt4wmOc2JydnlcujLtYUg[64];
struct tyObject_Sha1State__JIoJIk9cyhLcV9appRPaP4dQ {
	NI count;
	tyArray__qEmXVe9a9cxQumtG9bM0PNunQ state;
	tyArray__cPt4wmOc2JydnlcujLtYUg buf;
};
typedef NU32 tyArray__5JG42MczP3A0Xi9a3wk3mpQ[80];
struct NimStrPayload {
	NI cap;
	NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
	NI len;
	NimStrPayload* p;
};
typedef NU8 tyArray__9amPDC9cslxc3W1WNI8aK5gA[20];
typedef NIM_CHAR tyArray__gNJWs0nBYCbfqCdacZJIIg[8];
static N_INLINE(void, nimZeroMem)(void* p_p0, NI size_p1);
static N_INLINE(void, nimSetMem__system_u2188)(void* a_p0, int v_p1, NI size_p2);
static N_INLINE(NIM_BOOL, nimSubInt)(NI a_p0, NI b_p1, NI* res_p2);
N_LIB_PRIVATE N_NOINLINE(void, raiseOverflow)(void);
static N_INLINE(void, copyMem__system_u1755)(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_NOINLINE(void, raiseIndexError2)(NI i_p0, NI n_p1);
N_LIB_PRIVATE N_NOINLINE(void, raiseRangeErrorI)(NI64 i_p0, NI64 a_p1, NI64 b_p2);
static N_INLINE(NIM_BOOL, nimAddInt)(NI a_p0, NI b_p1, NI* res_p2);
N_LIB_PRIVATE N_NIMCALL(void, transform__stdZsha1_u18)(tyObject_Sha1State__JIoJIk9cyhLcV9appRPaP4dQ* ctx_p0);
static N_INLINE(void, bigEndian32__pureZendians_u81)(void* outp_p0, void* inp_p1);
static N_INLINE(void, swapEndian32__pureZendians_u30)(void* outp_p0, void* inp_p1);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
static N_INLINE(NIM_BOOL, nimMulInt)(NI a_p0, NI b_p1, NI* res_p2);
static N_INLINE(NF, toFloat__system_u1705)(NI i_p0);
static N_INLINE(NF, abs__system_u5188)(NF x_p0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toHex__pureZstrutils_u2181)(NI x_p0, NI len_p1);
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1);
N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s_p0, NI addLen_p1);
N_LIB_PRIVATE N_NOCONV(void, deallocShared)(void* p_p0);
N_LIB_PRIVATE N_NIMCALL(void, update__stdZsha1_u788)(tyObject_Sha1State__JIoJIk9cyhLcV9appRPaP4dQ* ctx_p0, NIM_CHAR* data_p1, NI data_p1Len_0);
static N_INLINE(void, bigEndian64__pureZendians_u78)(void* outp_p0, void* inp_p1);
static N_INLINE(void, swapEndian64__pureZendians_u13)(void* outp_p0, void* inp_p1);
static const struct {
  NI cap; NIM_CHAR data[0+1];
} TM__SpWH4VocI3fFoiOGE4MzWw_384 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__SpWH4VocI3fFoiOGE4MzWw_385 = {0, (NimStrPayload*)&TM__SpWH4VocI3fFoiOGE4MzWw_384};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__SpWH4VocI3fFoiOGE4MzWw_387 = { 1 | NIM_STRLIT_FLAG, "\200" };
static const NimStringV2 TM__SpWH4VocI3fFoiOGE4MzWw_388 = {1, (NimStrPayload*)&TM__SpWH4VocI3fFoiOGE4MzWw_387};
static const struct {
  NI cap; NIM_CHAR data[1+1];
} TM__SpWH4VocI3fFoiOGE4MzWw_389 = { 1 | NIM_STRLIT_FLAG, "\000" };
static const NimStringV2 TM__SpWH4VocI3fFoiOGE4MzWw_390 = {1, (NimStrPayload*)&TM__SpWH4VocI3fFoiOGE4MzWw_389};
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__system_u4198;
static N_INLINE(void, nimSetMem__system_u2188)(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_u2188(p_p0, ((int)0), size_p1);
}
N_LIB_PRIVATE N_NIMCALL(void, newSha1State__stdZsha1_u10)(tyObject_Sha1State__JIoJIk9cyhLcV9appRPaP4dQ* Result) {
	nimZeroMem((void*)Result, sizeof(tyObject_Sha1State__JIoJIk9cyhLcV9appRPaP4dQ));
	(*Result).count = ((NI)0);
	(*Result).state[(((NI)0))- 0] = ((NU32)1732584193);
	(*Result).state[(((NI)1))- 0] = ((NU32)IL64(4023233417));
	(*Result).state[(((NI)2))- 0] = ((NU32)IL64(2562383102));
	(*Result).state[(((NI)3))- 0] = ((NU32)271733878);
	(*Result).state[(((NI)4))- 0] = ((NU32)IL64(3285377520));
}
static N_INLINE(NIM_BOOL, nimSubInt)(NI a_p0, NI b_p1, NI* res_p2) {
	NIM_BOOL result;
	NI r_1;
	result = (NIM_BOOL)0;
	r_1 = ((NI) ((NU)((NU64)(((NU) (a_p0))) - (NU64)(((NU) (b_p1))))));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI)0) <= (NI)(r_1 ^ a_p0));
		if (T3_) goto LA4_;
		T3_ = (((NI)0) <= (NI)(r_1 ^ (NI)((NU64) ~(b_p1))));
LA4_: ;
		if (!T3_) goto LA5_;
		(*res_p2) = r_1;
	}
	goto LA1_;
LA5_: ;
	{
		result = NIM_TRUE;
	}
LA1_: ;
	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_u1755)(void* dest_p0, void* source_p1, NI size_p2) {
	nimCopyMem(dest_p0, source_p1, size_p2);
}
static N_INLINE(NIM_BOOL, nimAddInt)(NI a_p0, NI b_p1, NI* res_p2) {
	NIM_BOOL result;
	NI r_1;
	result = (NIM_BOOL)0;
	r_1 = ((NI) ((NU)((NU64)(((NU) (a_p0))) + (NU64)(((NU) (b_p1))))));
	{
		NIM_BOOL T3_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((NI)0) <= (NI)(r_1 ^ a_p0));
		if (T3_) goto LA4_;
		T3_ = (((NI)0) <= (NI)(r_1 ^ b_p1));
LA4_: ;
		if (!T3_) goto LA5_;
		(*res_p2) = r_1;
	}
	goto LA1_;
LA5_: ;
	{
		result = NIM_TRUE;
	}
LA1_: ;
	return result;
}
static N_INLINE(void, swapEndian32__pureZendians_u30)(void* outp_p0, void* inp_p1) {
	NU32 tmpX60gensym1__1;
	tmpX60gensym1__1 = 0;
	copyMem__system_u1755(((void*) ((&tmpX60gensym1__1))), inp_p1, ((NI)4));
	tmpX60gensym1__1 = __builtin_bswap32(tmpX60gensym1__1);
	copyMem__system_u1755(outp_p0, ((void*) ((&tmpX60gensym1__1))), ((NI)4));
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (&nimInErrorMode__system_u4198);
	return result;
}
static N_INLINE(void, bigEndian32__pureZendians_u81)(void* outp_p0, void* inp_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	swapEndian32__pureZendians_u30(outp_p0, inp_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(NF, toFloat__system_u1705)(NI i_p0) {
	NF result;
	result = ((NF) (i_p0));
	return result;
}
static N_INLINE(NF, abs__system_u5188)(NF x_p0) {
	NF result;
	result = (NF)0;
	result = fabs(x_p0);
	return result;
}
static N_INLINE(NIM_BOOL, nimMulInt)(NI a_p0, NI b_p1, NI* res_p2) {
	NIM_BOOL result;
	NI r_1;
	NF floatProd_1;
	NF T1_;
	NF T2_;
	NF resAsFloat_1;
	result = (NIM_BOOL)0;
	r_1 = ((NI) ((NU)((NU64)(((NU) (a_p0))) * (NU64)(((NU) (b_p1))))));
	T1_ = (NF)0;
	T1_ = toFloat__system_u1705(a_p0);
	T2_ = (NF)0;
	T2_ = toFloat__system_u1705(b_p1);
	floatProd_1 = ((NF)(T1_) * (NF)(T2_));
	resAsFloat_1 = toFloat__system_u1705(r_1);
	{
		if (!(resAsFloat_1 == floatProd_1)) goto LA5_;
		(*res_p2) = r_1;
	}
	goto LA3_;
LA5_: ;
	{
		{
			NF T10_;
			NF T11_;
			T10_ = (NF)0;
			T10_ = abs__system_u5188(((NF)(resAsFloat_1) - (NF)(floatProd_1)));
			T11_ = (NF)0;
			T11_ = abs__system_u5188(floatProd_1);
			if (!(((NF)(32.0) * (NF)(T10_)) <= T11_)) goto LA12_;
			(*res_p2) = r_1;
		}
		goto LA8_;
LA12_: ;
		{
			result = NIM_TRUE;
		}
LA8_: ;
	}
LA3_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, transform__stdZsha1_u18)(tyObject_Sha1State__JIoJIk9cyhLcV9appRPaP4dQ* ctx_p0) {
	tyArray__5JG42MczP3A0Xi9a3wk3mpQ w_1;
	NU32 a_1;
	NU32 b_1;
	NU32 c_1;
	NU32 d_1;
	NU32 e_1;
	NI t_1;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_29;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_30;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_31;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_32;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_33;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_34;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_35;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_36;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_37;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_38;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_39;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_40;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_41;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_42;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_43;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_44;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_45;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_46;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_47;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_48;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_49;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_50;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_51;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_52;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_53;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_54;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_55;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_56;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_57;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_58;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_59;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_60;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_61;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_62;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_63;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_64;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_65;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_66;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_67;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_68;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_69;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_70;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_71;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_72;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_73;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_74;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_75;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_76;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_77;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_78;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_79;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_80;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_81;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_82;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_83;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_84;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_85;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_86;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_87;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_88;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_89;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_90;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_91;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_92;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_93;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_94;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_95;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_96;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_97;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_98;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_99;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_100;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_101;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_102;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_103;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_104;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)w_1, sizeof(tyArray__5JG42MczP3A0Xi9a3wk3mpQ));
	a_1 = (NU32)0;
	b_1 = (NU32)0;
	c_1 = (NU32)0;
	d_1 = (NU32)0;
	e_1 = (NU32)0;
	t_1 = ((NI)0);
	a_1 = (*ctx_p0).state[(((NI)0))- 0];
	b_1 = (*ctx_p0).state[(((NI)1))- 0];
	c_1 = (*ctx_p0).state[(((NI)2))- 0];
	d_1 = (*ctx_p0).state[(((NI)3))- 0];
	e_1 = (*ctx_p0).state[(((NI)4))- 0];
	{
		while (1) {
			NI TM__SpWH4VocI3fFoiOGE4MzWw_8;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_9;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_10;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_11;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_12;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_13;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_14;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_15;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_16;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_17;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_18;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_19;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_20;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_21;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_22;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_23;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_24;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_25;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_26;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_27;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_28;
			if (!(t_1 < ((NI)15))) goto LA2;
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_8)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_8)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_8), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_9)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimMulInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_9), ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_10)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_10)) > (NU)(63)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_10), 63); goto BeforeRet_;
			}
			bigEndian32__pureZendians_u81(((void*) ((&w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_8))- 0]))), ((void*) ((&(*ctx_p0).buf[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_10))- 0]))));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_11)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_11)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_11), 79); goto BeforeRet_;
			}
			e_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(a_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(a_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_11))- 0]))) + (NU32)((NU32)(d_1 ^ (NU32)(b_1 & (NU32)(c_1 ^ d_1)))))) + (NU32)(((NU32)1518500249)));
			b_1 = (NU32)((NU32)((NU32)(b_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(b_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_12)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_12)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_12), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_13)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimMulInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_13), ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_14)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_14)) > (NU)(63)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_14), 63); goto BeforeRet_;
			}
			bigEndian32__pureZendians_u81(((void*) ((&w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_12))- 0]))), ((void*) ((&(*ctx_p0).buf[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_14))- 0]))));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_15)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_15)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_15), 79); goto BeforeRet_;
			}
			d_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(e_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(e_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_15))- 0]))) + (NU32)((NU32)(c_1 ^ (NU32)(a_1 & (NU32)(b_1 ^ c_1)))))) + (NU32)(((NU32)1518500249)));
			a_1 = (NU32)((NU32)((NU32)(a_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(a_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_16)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_16)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_16), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_17)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimMulInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_17), ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_18)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_18)) > (NU)(63)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_18), 63); goto BeforeRet_;
			}
			bigEndian32__pureZendians_u81(((void*) ((&w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_16))- 0]))), ((void*) ((&(*ctx_p0).buf[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_18))- 0]))));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_19)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_19)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_19), 79); goto BeforeRet_;
			}
			c_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(d_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(d_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_19))- 0]))) + (NU32)((NU32)(b_1 ^ (NU32)(e_1 & (NU32)(a_1 ^ b_1)))))) + (NU32)(((NU32)1518500249)));
			e_1 = (NU32)((NU32)((NU32)(e_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(e_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_20)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_20)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_20), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_21)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimMulInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_21), ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_22)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_22)) > (NU)(63)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_22), 63); goto BeforeRet_;
			}
			bigEndian32__pureZendians_u81(((void*) ((&w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_20))- 0]))), ((void*) ((&(*ctx_p0).buf[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_22))- 0]))));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_23)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_23)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_23), 79); goto BeforeRet_;
			}
			b_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(c_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(c_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_23))- 0]))) + (NU32)((NU32)(a_1 ^ (NU32)(d_1 & (NU32)(e_1 ^ a_1)))))) + (NU32)(((NU32)1518500249)));
			d_1 = (NU32)((NU32)((NU32)(d_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(d_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_24)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_24)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_24), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_25)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimMulInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_25), ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_26)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_26)) > (NU)(63)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_26), 63); goto BeforeRet_;
			}
			bigEndian32__pureZendians_u81(((void*) ((&w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_24))- 0]))), ((void*) ((&(*ctx_p0).buf[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_26))- 0]))));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_27)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_27)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_27), 79); goto BeforeRet_;
			}
			a_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(b_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(b_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_27))- 0]))) + (NU32)((NU32)(e_1 ^ (NU32)(c_1 & (NU32)(d_1 ^ e_1)))))) + (NU32)(((NU32)1518500249)));
			c_1 = (NU32)((NU32)((NU32)(c_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(c_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)5), &TM__SpWH4VocI3fFoiOGE4MzWw_28)) { raiseOverflow(); goto BeforeRet_;
			};
			t_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_28);
		} LA2: ;
	}
	if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_29)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_29)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_29), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_30)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimMulInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_30), ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_31)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_31)) > (NU)(63)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_31), 63); goto BeforeRet_;
	}
	bigEndian32__pureZendians_u81(((void*) ((&w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_29))- 0]))), ((void*) ((&(*ctx_p0).buf[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_31))- 0]))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_32)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_32)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_32), 79); goto BeforeRet_;
	}
	e_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(a_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(a_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_32))- 0]))) + (NU32)((NU32)(d_1 ^ (NU32)(b_1 & (NU32)(c_1 ^ d_1)))))) + (NU32)(((NU32)1518500249)));
	b_1 = (NU32)((NU32)((NU32)(b_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(b_1) << (NU64)(((NI)30) & (32 - 1))));
	if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_33)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_33)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_33), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_34)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_34), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_35)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_35)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_35), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_36)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_36), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_37)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_37)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_37), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_38)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_38), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_39)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_39)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_39), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_40)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_40), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_41)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_41)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_41), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_42)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_42), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_43)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_43)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_43), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_44)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_44), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_45)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_45)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_45), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_46)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_46), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_47)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_47)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_47), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_48)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_48), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_49)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_49)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_49), 79); goto BeforeRet_;
	}
	w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_33))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_35))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_37))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_39))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_41))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_43))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_45))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_47))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_49))- 0])) << (NU64)(((NI)1) & (32 - 1))));
	if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_50)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_50)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_50), 79); goto BeforeRet_;
	}
	d_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(e_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(e_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_50))- 0]))) + (NU32)((NU32)(c_1 ^ (NU32)(a_1 & (NU32)(b_1 ^ c_1)))))) + (NU32)(((NU32)1518500249)));
	a_1 = (NU32)((NU32)((NU32)(a_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(a_1) << (NU64)(((NI)30) & (32 - 1))));
	if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_51)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_51)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_51), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_52)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_52), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_53)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_53)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_53), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_54)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_54), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_55)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_55)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_55), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_56)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_56), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_57)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_57)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_57), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_58)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_58), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_59)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_59)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_59), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_60)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_60), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_61)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_61)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_61), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_62)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_62), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_63)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_63)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_63), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_64)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_64), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_65)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_65)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_65), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_66)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_66), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_67)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_67)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_67), 79); goto BeforeRet_;
	}
	w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_51))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_53))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_55))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_57))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_59))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_61))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_63))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_65))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_67))- 0])) << (NU64)(((NI)1) & (32 - 1))));
	if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_68)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_68)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_68), 79); goto BeforeRet_;
	}
	c_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(d_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(d_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_68))- 0]))) + (NU32)((NU32)(b_1 ^ (NU32)(e_1 & (NU32)(a_1 ^ b_1)))))) + (NU32)(((NU32)1518500249)));
	e_1 = (NU32)((NU32)((NU32)(e_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(e_1) << (NU64)(((NI)30) & (32 - 1))));
	if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_69)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_69)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_69), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_70)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_70), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_71)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_71)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_71), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_72)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_72), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_73)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_73)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_73), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_74)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_74), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_75)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_75)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_75), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_76)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_76), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_77)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_77)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_77), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_78)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_78), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_79)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_79)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_79), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_80)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_80), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_81)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_81)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_81), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_82)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_82), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_83)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_83)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_83), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_84)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_84), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_85)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_85)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_85), 79); goto BeforeRet_;
	}
	w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_69))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_71))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_73))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_75))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_77))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_79))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_81))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_83))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_85))- 0])) << (NU64)(((NI)1) & (32 - 1))));
	if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_86)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_86)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_86), 79); goto BeforeRet_;
	}
	b_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(c_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(c_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_86))- 0]))) + (NU32)((NU32)(a_1 ^ (NU32)(d_1 & (NU32)(e_1 ^ a_1)))))) + (NU32)(((NU32)1518500249)));
	d_1 = (NU32)((NU32)((NU32)(d_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(d_1) << (NU64)(((NI)30) & (32 - 1))));
	if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_87)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_87)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_87), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_88)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_88), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_89)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_89)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_89), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_90)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_90), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_91)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_91)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_91), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_92)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_92), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_93)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_93)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_93), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_94)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_94), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_95)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_95)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_95), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_96)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_96), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_97)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_97)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_97), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_98)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_98), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_99)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_99)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_99), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_100)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_100), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_101)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_101)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_101), 79); goto BeforeRet_;
	}
	if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_102)) { raiseOverflow(); goto BeforeRet_;
	};
	if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_102), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_103)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_103)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_103), 79); goto BeforeRet_;
	}
	w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_87))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_89))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_91))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_93))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_95))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_97))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_99))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_101))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_103))- 0])) << (NU64)(((NI)1) & (32 - 1))));
	if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_104)) { raiseOverflow(); goto BeforeRet_;
	};
	if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_104)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_104), 79); goto BeforeRet_;
	}
	a_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(b_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(b_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_104))- 0]))) + (NU32)((NU32)(e_1 ^ (NU32)(c_1 & (NU32)(d_1 ^ e_1)))))) + (NU32)(((NU32)1518500249)));
	c_1 = (NU32)((NU32)((NU32)(c_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(c_1) << (NU64)(((NI)30) & (32 - 1))));
	t_1 = ((NI)20);
	{
		while (1) {
			NI TM__SpWH4VocI3fFoiOGE4MzWw_105;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_106;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_107;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_108;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_109;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_110;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_111;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_112;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_113;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_114;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_115;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_116;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_117;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_118;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_119;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_120;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_121;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_122;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_123;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_124;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_125;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_126;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_127;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_128;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_129;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_130;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_131;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_132;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_133;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_134;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_135;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_136;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_137;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_138;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_139;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_140;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_141;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_142;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_143;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_144;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_145;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_146;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_147;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_148;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_149;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_150;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_151;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_152;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_153;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_154;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_155;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_156;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_157;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_158;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_159;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_160;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_161;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_162;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_163;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_164;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_165;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_166;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_167;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_168;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_169;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_170;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_171;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_172;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_173;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_174;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_175;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_176;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_177;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_178;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_179;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_180;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_181;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_182;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_183;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_184;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_185;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_186;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_187;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_188;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_189;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_190;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_191;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_192;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_193;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_194;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_195;
			if (!(t_1 < ((NI)40))) goto LA4;
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_105)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_105)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_105), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_106)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_106), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_107)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_107)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_107), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_108)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_108), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_109)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_109)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_109), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_110)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_110), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_111)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_111)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_111), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_112)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_112), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_113)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_113)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_113), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_114)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_114), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_115)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_115)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_115), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_116)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_116), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_117)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_117)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_117), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_118)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_118), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_119)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_119)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_119), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_120)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_120), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_121)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_121)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_121), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_105))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_107))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_109))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_111))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_113))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_115))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_117))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_119))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_121))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_122)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_122)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_122), 79); goto BeforeRet_;
			}
			e_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(a_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(a_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_122))- 0]))) + (NU32)((NU32)((NU32)(b_1 ^ c_1) ^ d_1)))) + (NU32)(((NU32)1859775393)));
			b_1 = (NU32)((NU32)((NU32)(b_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(b_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_123)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_123)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_123), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_124)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_124), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_125)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_125)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_125), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_126)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_126), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_127)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_127)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_127), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_128)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_128), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_129)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_129)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_129), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_130)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_130), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_131)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_131)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_131), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_132)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_132), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_133)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_133)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_133), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_134)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_134), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_135)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_135)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_135), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_136)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_136), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_137)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_137)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_137), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_138)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_138), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_139)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_139)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_139), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_123))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_125))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_127))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_129))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_131))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_133))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_135))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_137))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_139))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_140)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_140)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_140), 79); goto BeforeRet_;
			}
			d_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(e_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(e_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_140))- 0]))) + (NU32)((NU32)((NU32)(a_1 ^ b_1) ^ c_1)))) + (NU32)(((NU32)1859775393)));
			a_1 = (NU32)((NU32)((NU32)(a_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(a_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_141)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_141)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_141), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_142)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_142), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_143)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_143)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_143), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_144)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_144), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_145)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_145)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_145), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_146)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_146), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_147)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_147)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_147), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_148)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_148), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_149)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_149)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_149), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_150)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_150), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_151)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_151)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_151), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_152)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_152), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_153)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_153)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_153), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_154)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_154), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_155)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_155)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_155), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_156)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_156), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_157)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_157)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_157), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_141))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_143))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_145))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_147))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_149))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_151))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_153))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_155))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_157))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_158)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_158)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_158), 79); goto BeforeRet_;
			}
			c_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(d_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(d_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_158))- 0]))) + (NU32)((NU32)((NU32)(e_1 ^ a_1) ^ b_1)))) + (NU32)(((NU32)1859775393)));
			e_1 = (NU32)((NU32)((NU32)(e_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(e_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_159)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_159)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_159), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_160)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_160), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_161)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_161)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_161), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_162)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_162), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_163)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_163)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_163), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_164)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_164), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_165)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_165)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_165), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_166)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_166), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_167)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_167)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_167), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_168)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_168), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_169)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_169)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_169), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_170)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_170), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_171)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_171)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_171), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_172)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_172), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_173)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_173)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_173), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_174)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_174), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_175)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_175)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_175), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_159))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_161))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_163))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_165))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_167))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_169))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_171))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_173))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_175))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_176)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_176)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_176), 79); goto BeforeRet_;
			}
			b_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(c_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(c_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_176))- 0]))) + (NU32)((NU32)((NU32)(d_1 ^ e_1) ^ a_1)))) + (NU32)(((NU32)1859775393)));
			d_1 = (NU32)((NU32)((NU32)(d_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(d_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_177)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_177)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_177), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_178)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_178), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_179)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_179)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_179), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_180)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_180), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_181)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_181)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_181), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_182)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_182), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_183)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_183)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_183), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_184)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_184), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_185)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_185)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_185), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_186)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_186), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_187)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_187)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_187), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_188)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_188), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_189)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_189)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_189), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_190)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_190), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_191)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_191)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_191), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_192)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_192), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_193)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_193)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_193), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_177))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_179))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_181))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_183))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_185))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_187))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_189))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_191))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_193))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_194)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_194)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_194), 79); goto BeforeRet_;
			}
			a_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(b_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(b_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_194))- 0]))) + (NU32)((NU32)((NU32)(c_1 ^ d_1) ^ e_1)))) + (NU32)(((NU32)1859775393)));
			c_1 = (NU32)((NU32)((NU32)(c_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(c_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)5), &TM__SpWH4VocI3fFoiOGE4MzWw_195)) { raiseOverflow(); goto BeforeRet_;
			};
			t_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_195);
		} LA4: ;
	}
	{
		while (1) {
			NI TM__SpWH4VocI3fFoiOGE4MzWw_196;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_197;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_198;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_199;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_200;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_201;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_202;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_203;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_204;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_205;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_206;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_207;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_208;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_209;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_210;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_211;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_212;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_213;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_214;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_215;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_216;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_217;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_218;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_219;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_220;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_221;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_222;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_223;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_224;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_225;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_226;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_227;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_228;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_229;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_230;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_231;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_232;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_233;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_234;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_235;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_236;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_237;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_238;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_239;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_240;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_241;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_242;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_243;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_244;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_245;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_246;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_247;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_248;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_249;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_250;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_251;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_252;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_253;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_254;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_255;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_256;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_257;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_258;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_259;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_260;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_261;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_262;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_263;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_264;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_265;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_266;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_267;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_268;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_269;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_270;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_271;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_272;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_273;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_274;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_275;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_276;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_277;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_278;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_279;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_280;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_281;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_282;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_283;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_284;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_285;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_286;
			if (!(t_1 < ((NI)60))) goto LA6;
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_196)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_196)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_196), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_197)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_197), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_198)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_198)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_198), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_199)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_199), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_200)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_200)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_200), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_201)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_201), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_202)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_202)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_202), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_203)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_203), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_204)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_204)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_204), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_205)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_205), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_206)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_206)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_206), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_207)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_207), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_208)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_208)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_208), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_209)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_209), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_210)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_210)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_210), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_211)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_211), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_212)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_212)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_212), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_196))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_198))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_200))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_202))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_204))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_206))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_208))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_210))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_212))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_213)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_213)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_213), 79); goto BeforeRet_;
			}
			e_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(a_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(a_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_213))- 0]))) + (NU32)((NU32)((NU32)(b_1 & c_1) | (NU32)(d_1 & (NU32)(b_1 | c_1)))))) + (NU32)(((NU32)IL64(2400959708))));
			b_1 = (NU32)((NU32)((NU32)(b_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(b_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_214)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_214)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_214), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_215)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_215), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_216)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_216)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_216), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_217)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_217), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_218)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_218)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_218), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_219)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_219), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_220)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_220)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_220), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_221)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_221), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_222)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_222)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_222), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_223)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_223), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_224)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_224)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_224), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_225)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_225), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_226)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_226)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_226), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_227)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_227), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_228)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_228)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_228), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_229)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_229), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_230)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_230)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_230), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_214))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_216))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_218))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_220))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_222))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_224))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_226))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_228))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_230))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_231)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_231)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_231), 79); goto BeforeRet_;
			}
			d_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(e_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(e_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_231))- 0]))) + (NU32)((NU32)((NU32)(a_1 & b_1) | (NU32)(c_1 & (NU32)(a_1 | b_1)))))) + (NU32)(((NU32)IL64(2400959708))));
			a_1 = (NU32)((NU32)((NU32)(a_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(a_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_232)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_232)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_232), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_233)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_233), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_234)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_234)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_234), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_235)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_235), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_236)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_236)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_236), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_237)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_237), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_238)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_238)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_238), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_239)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_239), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_240)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_240)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_240), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_241)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_241), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_242)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_242)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_242), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_243)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_243), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_244)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_244)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_244), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_245)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_245), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_246)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_246)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_246), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_247)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_247), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_248)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_248)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_248), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_232))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_234))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_236))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_238))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_240))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_242))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_244))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_246))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_248))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_249)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_249)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_249), 79); goto BeforeRet_;
			}
			c_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(d_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(d_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_249))- 0]))) + (NU32)((NU32)((NU32)(e_1 & a_1) | (NU32)(b_1 & (NU32)(e_1 | a_1)))))) + (NU32)(((NU32)IL64(2400959708))));
			e_1 = (NU32)((NU32)((NU32)(e_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(e_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_250)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_250)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_250), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_251)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_251), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_252)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_252)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_252), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_253)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_253), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_254)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_254)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_254), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_255)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_255), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_256)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_256)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_256), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_257)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_257), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_258)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_258)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_258), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_259)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_259), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_260)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_260)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_260), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_261)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_261), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_262)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_262)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_262), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_263)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_263), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_264)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_264)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_264), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_265)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_265), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_266)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_266)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_266), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_250))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_252))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_254))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_256))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_258))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_260))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_262))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_264))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_266))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_267)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_267)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_267), 79); goto BeforeRet_;
			}
			b_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(c_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(c_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_267))- 0]))) + (NU32)((NU32)((NU32)(d_1 & e_1) | (NU32)(a_1 & (NU32)(d_1 | e_1)))))) + (NU32)(((NU32)IL64(2400959708))));
			d_1 = (NU32)((NU32)((NU32)(d_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(d_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_268)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_268)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_268), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_269)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_269), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_270)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_270)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_270), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_271)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_271), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_272)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_272)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_272), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_273)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_273), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_274)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_274)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_274), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_275)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_275), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_276)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_276)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_276), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_277)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_277), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_278)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_278)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_278), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_279)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_279), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_280)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_280)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_280), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_281)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_281), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_282)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_282)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_282), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_283)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_283), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_284)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_284)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_284), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_268))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_270))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_272))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_274))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_276))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_278))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_280))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_282))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_284))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_285)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_285)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_285), 79); goto BeforeRet_;
			}
			a_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(b_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(b_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_285))- 0]))) + (NU32)((NU32)((NU32)(c_1 & d_1) | (NU32)(e_1 & (NU32)(c_1 | d_1)))))) + (NU32)(((NU32)IL64(2400959708))));
			c_1 = (NU32)((NU32)((NU32)(c_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(c_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)5), &TM__SpWH4VocI3fFoiOGE4MzWw_286)) { raiseOverflow(); goto BeforeRet_;
			};
			t_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_286);
		} LA6: ;
	}
	{
		while (1) {
			NI TM__SpWH4VocI3fFoiOGE4MzWw_287;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_288;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_289;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_290;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_291;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_292;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_293;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_294;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_295;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_296;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_297;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_298;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_299;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_300;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_301;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_302;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_303;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_304;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_305;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_306;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_307;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_308;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_309;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_310;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_311;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_312;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_313;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_314;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_315;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_316;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_317;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_318;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_319;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_320;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_321;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_322;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_323;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_324;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_325;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_326;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_327;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_328;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_329;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_330;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_331;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_332;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_333;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_334;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_335;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_336;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_337;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_338;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_339;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_340;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_341;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_342;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_343;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_344;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_345;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_346;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_347;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_348;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_349;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_350;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_351;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_352;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_353;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_354;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_355;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_356;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_357;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_358;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_359;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_360;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_361;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_362;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_363;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_364;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_365;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_366;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_367;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_368;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_369;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_370;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_371;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_372;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_373;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_374;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_375;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_376;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_377;
			if (!(t_1 < ((NI)80))) goto LA8;
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_287)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_287)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_287), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_288)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_288), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_289)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_289)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_289), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_290)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_290), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_291)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_291)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_291), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_292)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_292), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_293)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_293)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_293), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_294)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_294), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_295)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_295)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_295), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_296)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_296), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_297)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_297)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_297), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_298)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_298), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_299)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_299)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_299), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_300)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_300), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_301)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_301)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_301), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_302)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_302), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_303)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_303)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_303), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_287))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_289))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_291))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_293))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_295))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_297))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_299))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_301))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_303))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)0), &TM__SpWH4VocI3fFoiOGE4MzWw_304)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_304)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_304), 79); goto BeforeRet_;
			}
			e_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(a_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(a_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_304))- 0]))) + (NU32)((NU32)((NU32)(b_1 ^ c_1) ^ d_1)))) + (NU32)(((NU32)IL64(3395469782))));
			b_1 = (NU32)((NU32)((NU32)(b_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(b_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_305)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_305)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_305), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_306)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_306), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_307)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_307)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_307), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_308)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_308), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_309)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_309)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_309), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_310)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_310), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_311)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_311)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_311), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_312)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_312), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_313)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_313)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_313), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_314)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_314), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_315)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_315)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_315), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_316)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_316), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_317)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_317)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_317), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_318)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_318), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_319)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_319)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_319), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_320)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_320), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_321)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_321)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_321), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_305))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_307))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_309))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_311))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_313))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_315))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_317))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_319))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_321))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_322)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_322)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_322), 79); goto BeforeRet_;
			}
			d_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(e_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(e_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_322))- 0]))) + (NU32)((NU32)((NU32)(a_1 ^ b_1) ^ c_1)))) + (NU32)(((NU32)IL64(3395469782))));
			a_1 = (NU32)((NU32)((NU32)(a_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(a_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_323)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_323)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_323), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_324)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_324), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_325)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_325)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_325), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_326)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_326), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_327)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_327)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_327), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_328)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_328), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_329)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_329)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_329), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_330)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_330), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_331)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_331)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_331), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_332)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_332), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_333)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_333)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_333), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_334)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_334), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_335)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_335)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_335), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_336)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_336), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_337)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_337)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_337), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_338)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_338), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_339)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_339)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_339), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_323))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_325))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_327))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_329))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_331))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_333))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_335))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_337))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_339))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)2), &TM__SpWH4VocI3fFoiOGE4MzWw_340)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_340)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_340), 79); goto BeforeRet_;
			}
			c_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(d_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(d_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_340))- 0]))) + (NU32)((NU32)((NU32)(e_1 ^ a_1) ^ b_1)))) + (NU32)(((NU32)IL64(3395469782))));
			e_1 = (NU32)((NU32)((NU32)(e_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(e_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_341)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_341)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_341), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_342)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_342), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_343)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_343)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_343), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_344)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_344), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_345)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_345)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_345), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_346)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_346), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_347)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_347)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_347), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_348)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_348), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_349)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_349)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_349), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_350)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_350), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_351)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_351)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_351), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_352)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_352), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_353)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_353)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_353), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_354)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_354), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_355)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_355)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_355), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_356)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_356), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_357)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_357)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_357), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_341))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_343))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_345))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_347))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_349))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_351))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_353))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_355))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_357))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_358)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_358)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_358), 79); goto BeforeRet_;
			}
			b_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(c_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(c_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_358))- 0]))) + (NU32)((NU32)((NU32)(d_1 ^ e_1) ^ a_1)))) + (NU32)(((NU32)IL64(3395469782))));
			d_1 = (NU32)((NU32)((NU32)(d_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(d_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_359)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_359)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_359), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_360)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_360), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_361)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_361)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_361), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_362)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_362), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_363)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_363)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_363), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_364)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_364), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_365)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_365)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_365), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_366)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_366), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_367)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_367)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_367), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_368)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_368), ((NI)3), &TM__SpWH4VocI3fFoiOGE4MzWw_369)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_369)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_369), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_370)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_370), ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_371)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_371)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_371), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_372)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_372), ((NI)14), &TM__SpWH4VocI3fFoiOGE4MzWw_373)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_373)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_373), 79); goto BeforeRet_;
			}
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_374)) { raiseOverflow(); goto BeforeRet_;
			};
			if (nimSubInt((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_374), ((NI)16), &TM__SpWH4VocI3fFoiOGE4MzWw_375)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_375)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_375), 79); goto BeforeRet_;
			}
			w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_359))- 0] = (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_361))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_363))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_365))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_367))- 0])) >> (NU64)(((NI)31) & (32 - 1))) | (NU32)((NU64)((NU32)((NU32)((NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_369))- 0] ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_371))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_373))- 0]) ^ w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_375))- 0])) << (NU64)(((NI)1) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)4), &TM__SpWH4VocI3fFoiOGE4MzWw_376)) { raiseOverflow(); goto BeforeRet_;
			};
			if ((NU)((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_376)) > (NU)(79)){ raiseIndexError2((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_376), 79); goto BeforeRet_;
			}
			a_1 += (NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)((NU32)(b_1) >> (NU64)(((NI)27) & (32 - 1))) | (NU32)((NU64)(b_1) << (NU64)(((NI)5) & (32 - 1))))) + (NU32)(w_1[((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_376))- 0]))) + (NU32)((NU32)((NU32)(c_1 ^ d_1) ^ e_1)))) + (NU32)(((NU32)IL64(3395469782))));
			c_1 = (NU32)((NU32)((NU32)(c_1) >> (NU64)(((NI)2) & (32 - 1))) | (NU32)((NU64)(c_1) << (NU64)(((NI)30) & (32 - 1))));
			if (nimAddInt(t_1, ((NI)5), &TM__SpWH4VocI3fFoiOGE4MzWw_377)) { raiseOverflow(); goto BeforeRet_;
			};
			t_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_377);
		} LA8: ;
	}
	(*ctx_p0).state[(((NI)0))- 0] += a_1;
	(*ctx_p0).state[(((NI)1))- 0] += b_1;
	(*ctx_p0).state[(((NI)2))- 0] += c_1;
	(*ctx_p0).state[(((NI)3))- 0] += d_1;
	(*ctx_p0).state[(((NI)4))- 0] += e_1;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, update__stdZsha1_u788)(tyObject_Sha1State__JIoJIk9cyhLcV9appRPaP4dQ* ctx_p0, NIM_CHAR* data_p1, NI data_p1Len_0) {
	NI i_1;
	NI j_1;
	NI len_1;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_383;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	i_1 = (NI)(((*ctx_p0).count) % (((NI)64)));
	j_1 = ((NI)0);
	len_1 = data_p1Len_0;
	{
		NI TM__SpWH4VocI3fFoiOGE4MzWw_2;
		NI TM__SpWH4VocI3fFoiOGE4MzWw_3;
		NI TM__SpWH4VocI3fFoiOGE4MzWw_4;
		NI TM__SpWH4VocI3fFoiOGE4MzWw_5;
		NI TM__SpWH4VocI3fFoiOGE4MzWw_6;
		NI TM__SpWH4VocI3fFoiOGE4MzWw_7;
		if (nimSubInt(((NI)64), i_1, &TM__SpWH4VocI3fFoiOGE4MzWw_2)) { raiseOverflow(); goto BeforeRet_;
		};
		if (!((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_2) < len_1)) goto LA3_;
		if ((NU)(i_1) > (NU)(63)){ raiseIndexError2(i_1, 63); goto BeforeRet_;
		}
		if (j_1 < 0 || j_1 >= data_p1Len_0){ raiseIndexError2(j_1,data_p1Len_0-1); goto BeforeRet_;
		}
		if (nimSubInt(((NI)64), i_1, &TM__SpWH4VocI3fFoiOGE4MzWw_3)) { raiseOverflow(); goto BeforeRet_;
		};
		if (((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_3)) < ((NI)0) || ((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_3)) > ((NI)IL64(9223372036854775807))){ raiseRangeErrorI((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_3), ((NI)0), ((NI)IL64(9223372036854775807))); goto BeforeRet_;
		}
		copyMem__system_u1755(((void*) ((&(*ctx_p0).buf[(i_1)- 0]))), ((void*) ((&data_p1[j_1]))), ((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_3)));
		if (nimSubInt(((NI)64), i_1, &TM__SpWH4VocI3fFoiOGE4MzWw_4)) { raiseOverflow(); goto BeforeRet_;
		};
		if (nimSubInt(len_1, (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_4), &TM__SpWH4VocI3fFoiOGE4MzWw_5)) { raiseOverflow(); goto BeforeRet_;
		};
		len_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_5);
		if (nimSubInt(((NI)64), i_1, &TM__SpWH4VocI3fFoiOGE4MzWw_6)) { raiseOverflow(); goto BeforeRet_;
		};
		if (nimAddInt(j_1, (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_6), &TM__SpWH4VocI3fFoiOGE4MzWw_7)) { raiseOverflow(); goto BeforeRet_;
		};
		j_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_7);
		transform__stdZsha1_u18(ctx_p0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		i_1 = ((NI)0);
	}
LA3_: ;
	{
		while (1) {
			NI TM__SpWH4VocI3fFoiOGE4MzWw_378;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_379;
			if (!(((NI)64) <= len_1)) goto LA6;
			if (j_1 < 0 || j_1 >= data_p1Len_0){ raiseIndexError2(j_1,data_p1Len_0-1); goto BeforeRet_;
			}
			copyMem__system_u1755(((void*) ((&(*ctx_p0).buf[(((NI)0))- 0]))), ((void*) ((&data_p1[j_1]))), ((NI)64));
			if (nimSubInt(len_1, ((NI)64), &TM__SpWH4VocI3fFoiOGE4MzWw_378)) { raiseOverflow(); goto BeforeRet_;
			};
			len_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_378);
			if (nimAddInt(j_1, ((NI)64), &TM__SpWH4VocI3fFoiOGE4MzWw_379)) { raiseOverflow(); goto BeforeRet_;
			};
			j_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_379);
			transform__stdZsha1_u18(ctx_p0);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		} LA6: ;
	}
	{
		while (1) {
			NI TM__SpWH4VocI3fFoiOGE4MzWw_380;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_381;
			NI TM__SpWH4VocI3fFoiOGE4MzWw_382;
			if (!(((NI)0) < len_1)) goto LA8;
			if (nimSubInt(len_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_380)) { raiseOverflow(); goto BeforeRet_;
			};
			len_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_380);
			if ((NU)(i_1) > (NU)(63)){ raiseIndexError2(i_1, 63); goto BeforeRet_;
			}
			if (j_1 < 0 || j_1 >= data_p1Len_0){ raiseIndexError2(j_1,data_p1Len_0-1); goto BeforeRet_;
			}
			(*ctx_p0).buf[(i_1)- 0] = ((NU8) (((NU8)(data_p1[j_1]))));
			if (nimAddInt(i_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_381)) { raiseOverflow(); goto BeforeRet_;
			};
			i_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_381);
			if (nimAddInt(j_1, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_382)) { raiseOverflow(); goto BeforeRet_;
			};
			j_1 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_382);
			{
				if (!(i_1 == ((NI)64))) goto LA11_;
				transform__stdZsha1_u18(ctx_p0);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				i_1 = ((NI)0);
			}
LA11_: ;
		} LA8: ;
	}
	if (nimAddInt((*ctx_p0).count, data_p1Len_0, &TM__SpWH4VocI3fFoiOGE4MzWw_383)) { raiseOverflow(); goto BeforeRet_;
	};
	(*ctx_p0).count = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_383);
	}BeforeRet_: ;
}
static N_INLINE(void, appendString)(NimStringV2* dest_p0, NimStringV2 src_p1) {
	{
		if (!(((NI)0) < src_p1.len)) goto LA3_;
		copyMem__system_u1755(((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(NimStringV2, dollar___stdZsha1_u934)(tyArray__9amPDC9cslxc3W1WNI8aK5gA self_p0) {
	NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = TM__SpWH4VocI3fFoiOGE4MzWw_385;
	{
		NU8 v_1;
		NI i_1;
		v_1 = (NU8)0;
		i_1 = ((NI)0);
		{
			while (1) {
				NimStringV2 colontmpD_;
				colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
				v_1 = self_p0[(i_1)- 0];
				colontmpD_ = toHex__pureZstrutils_u2181(((NI) (v_1)), ((NI)2));
				if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
				prepareAdd((&result), colontmpD_.len + 0);
appendString((&result), colontmpD_);
				{
					if (!(((NI)19) <= i_1)) goto LA7_;
					if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
					goto LA2;
				}
LA7_: ;
				i_1 += ((NI)1);
				{
					LA4_:;
				}
				{
					if (colontmpD_.p && !(colontmpD_.p->cap & NIM_STRLIT_FLAG)) {
 deallocShared(colontmpD_.p);
}
				}
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
		} LA2: ;
	}
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, swapEndian64__pureZendians_u13)(void* outp_p0, void* inp_p1) {
	NU64 tmpX60gensym0__1;
	tmpX60gensym0__1 = 0;
	copyMem__system_u1755(((void*) ((&tmpX60gensym0__1))), inp_p1, ((NI)8));
	tmpX60gensym0__1 = __builtin_bswap64(tmpX60gensym0__1);
	copyMem__system_u1755(outp_p0, ((void*) ((&tmpX60gensym0__1))), ((NI)8));
}
static N_INLINE(void, bigEndian64__pureZendians_u78)(void* outp_p0, void* inp_p1) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	swapEndian64__pureZendians_u13(outp_p0, inp_p1);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, finalize__stdZsha1_u835)(tyObject_Sha1State__JIoJIk9cyhLcV9appRPaP4dQ* ctx_p0, tyArray__9amPDC9cslxc3W1WNI8aK5gA Result) {
	NU64 cnt_1;
	NI TM__SpWH4VocI3fFoiOGE4MzWw_386;
	tyArray__gNJWs0nBYCbfqCdacZJIIg tmp_1;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimZeroMem((void*)Result, sizeof(tyArray__9amPDC9cslxc3W1WNI8aK5gA));
	if (nimMulInt((*ctx_p0).count, ((NI)8), &TM__SpWH4VocI3fFoiOGE4MzWw_386)) { raiseOverflow(); goto BeforeRet_;
	};
	cnt_1 = ((NU64) ((NI)(TM__SpWH4VocI3fFoiOGE4MzWw_386)));
	update__stdZsha1_u788(ctx_p0, ((TM__SpWH4VocI3fFoiOGE4MzWw_388).p) ? (TM__SpWH4VocI3fFoiOGE4MzWw_388.p->data) : NIM_NIL, TM__SpWH4VocI3fFoiOGE4MzWw_388.len);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		while (1) {
			if (!!(((NI)(((*ctx_p0).count) % (((NI)64))) == ((NI)56)))) goto LA2;
			update__stdZsha1_u788(ctx_p0, ((TM__SpWH4VocI3fFoiOGE4MzWw_390).p) ? (TM__SpWH4VocI3fFoiOGE4MzWw_390.p->data) : NIM_NIL, TM__SpWH4VocI3fFoiOGE4MzWw_390.len);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		} LA2: ;
	}
	nimZeroMem((void*)tmp_1, sizeof(tyArray__gNJWs0nBYCbfqCdacZJIIg));
	bigEndian64__pureZendians_u78(((void*) ((&tmp_1[(((NI)0))- 0]))), ((void*) ((&cnt_1))));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	update__stdZsha1_u788(ctx_p0, tmp_1, 8);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI i_1;
		NI i_2;
		i_1 = (NI)0;
		i_2 = ((NI)0);
		{
			while (1) {
				void* T6_;
				NI TM__SpWH4VocI3fFoiOGE4MzWw_391;
				if (!(i_2 < ((NI)5))) goto LA5;
				i_1 = i_2;
				if ((NU)(i_1) > (NU)(4)){ raiseIndexError2(i_1, 4); goto BeforeRet_;
				}
				T6_ = (void*)0;
				T6_ = ((void*) ((&(*ctx_p0).state[(i_1)- 0])));
				if ((NU)(i_1) > (NU)(4)){ raiseIndexError2(i_1, 4); goto BeforeRet_;
				}
				bigEndian32__pureZendians_u81(T6_, ((void*) ((&(*ctx_p0).state[(i_1)- 0]))));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				if (nimAddInt(i_2, ((NI)1), &TM__SpWH4VocI3fFoiOGE4MzWw_391)) { raiseOverflow(); goto BeforeRet_;
				};
				i_2 = (NI)(TM__SpWH4VocI3fFoiOGE4MzWw_391);
			} LA5: ;
		}
	}
	copyMem__system_u1755(((void*) ((&Result[(((NI)0))- 0]))), ((void*) ((&(*ctx_p0).state[(((NI)0))- 0]))), ((NI)20));
	}BeforeRet_: ;
}
