# include "cxgr_common.h" # include # ifdef CXGR_EXTRA_INCLUDE # include CXGR_EXTRA_INCLUDE # endif typedef cxgr_word W; static cxgr_space invoke_gc(W *sp, W *hp, int hplim, int stacktop, cxgr_runtime_info *info) { cxgr_space r = cxgr_gc(sp + stacktop, hp, stacktop - hplim, info); r.sp -= stacktop; return r; } static void unhandled_jump(int togo, cxgr_runtime_info *info) { char buf[1000]; sprintf(buf, "internal error: unhandled jump(togo = %d): this error is due to a miscompilation", togo); cxgr_message(buf, info); } static cxgr_result make_result(W *sp, W *hp, cxgr_status s) { cxgr_result r; r.sp = sp; r.hp = hp; r.status = s; return r; } # ifndef FUNCTION_HEAD # define FUNCTION_HEAD(name, arity) # endif # define ENSURE_FREESPACE(hplim, stacktop) \ if(hp > sp + (hplim)) \ { \ cxgr_space nsp = invoke_gc(sp, hp, (hplim), (stacktop), info); \ sp = nsp.sp; \ hp = nsp.hp; \ } \ /**/ static const W zero2[3] = {3, 1, 1}; static const W zero5[3] = {5, 2, 2}; static const W zero9[3] = {7, 2, 2}; static const W zero15[3] = {9, 3, 3}; static const W zero23[3] = {11, 3, 3}; static const W zero28[3] = {13, 2, 2}; static const W zero31[3] = {15, 1, 1}; static const W zero40[3] = {17, 3, 3}; static const W zero46[3] = {19, 2, 2}; static const W zero52[3] = {23, 2, 2}; static const W zero55[3] = {25, 2, 2}; static const W zero62[3] = {29, 3, 3}; static const W zero75[3] = {31, 2, 2}; static const W zero82[3] = {37, 1, 1}; static const W zero90[3] = {43, 1, 1}; static const W zero95[3] = {49, 1, 1}; static const W zero99[3] = {51, 2, 2}; static const W zero106[3] = {53, 2, 2}; static const W zero119[3] = {63, 4, 4}; static const W zero130[3] = {65, 3, 3}; static const W zero147[3] = {73, 5, 5}; static const W zero158[3] = {77, 3, 3}; static const W zero163[3] = {81, 1, 1}; static const W zero176[3] = {89, 1, 1}; static const W zero185[3] = {93, 3, 3}; static const W zero189[3] = {95, 1, 1}; static const W zero211[3] = {113, 4, 4}; static const W zero221[3] = {115, 3, 3}; static const W zero229[3] = {119, 3, 3}; static const W zero234[3] = {123, 1, 1}; static const W zero241[3] = {125, 2, 2}; static const W zero254[3] = {131, 4, 4}; static const W zero258[3] = {133, 3, 3}; static const W zero264[3] = {135, 4, 4}; static const W zero270[3] = {137, 4, 4}; static const W zero277[3] = {139, 2, 2}; static const W zero282[3] = {143, 1, 1}; static const W zero287[3] = {147, 1, 1}; static const W zero293[3] = {149, 1, 1}; static const W zero301[3] = {155, 1, 1}; static const W zero304[3] = {157, 1, 1}; static const W zero307[3] = {159, 1, 1}; static const W zero318[3] = {177, 1, 1}; static const W zero329[3] = {195, 1, 1}; static const W zero340[3] = {213, 1, 1}; static const W zero351[3] = {231, 1, 1}; static const W zero362[3] = {249, 1, 1}; static const W zero370[3] = {259, 1, 1}; static const W zero378[3] = {269, 1, 1}; static const W zero387[3] = {281, 1, 1}; static const W zero398[3] = {297, 1, 1}; static const W zero409[3] = {313, 1, 1}; static const W zero418[3] = {325, 1, 1}; static const W zero423[3] = {327, 1, 1}; static const W zero428[3] = {331, 1, 1}; static const W zero437[3] = {335, 3, 3}; static const W zero441[3] = {337, 1, 1}; static const W zero457[3] = {351, 2, 2}; static const W zero482[3] = {373, 2, 2}; static const W zero494[3] = {383, 2, 2}; static const W zero513[3] = {399, 2, 2}; static const W zero525[3] = {409, 2, 2}; static const W zero537[3] = {419, 2, 2}; static const W zero577[3] = {447, 1, 1}; static const W zero587[3] = {455, 3, 3}; static const W zero599[3] = {457, 4, 4}; static const W zero613[3] = {469, 3, 3}; static const W zero628[3] = {475, 4, 4}; static const W zero638[3] = {483, 2, 2}; static const W zero647[3] = {489, 2, 2}; static const W zero654[3] = {491, 2, 2}; static const W zero660[3] = {493, 2, 2}; static const W zero673[3] = {507, 1, 1}; static const W zero682[3] = {521, 1, 1}; static const W zero691[3] = {535, 1, 1}; static const W zero710[3] = {569, 1, 1}; static const W zero729[3] = {589, 3, 3}; static const W zero744[3] = {601, 3, 3}; static const W zero752[3] = {607, 3, 3}; static const W zero760[3] = {611, 2, 2}; static const W zero768[3] = {615, 1, 1}; static const W zero776[3] = {621, 2, 2}; static const W zero782[3] = {625, 2, 2}; static const W zero795[3] = {637, 3, 3}; static const W zero800[3] = {639, 3, 3}; static const W zero803[3] = {641, 2, 2}; static const W zero816[3] = {655, 1, 1}; static const W zero819[3] = {657, 1, 1}; static const W zero833[3] = {663, 5, 5}; static const W zero844[3] = {667, 5, 5}; static const W zero862[3] = {673, 6, 6}; static const W zero876[3] = {679, 5, 5}; static const W zero885[3] = {681, 1, 1}; static const W zero_TRUE[3] = {691, 2, 2}; static const W zero_FALSE[3] = {693, 2, 2}; static const W zero_In[3] = {687, 1, 1}; static const W zero_Out[3] = {685, 1, 1}; static const W zero_Succ[3] = {689, 1, 1}; static const W w[4] = {683, 1, 2, 239}; cxgr_result cxgr_code(W *sp, W *hp, W *statics, cxgr_runtime_info *info) { W result; int togo = 0; sp[-1] = 9999; jump: switch(togo >> 1) { case 1: fun2: FUNCTION_HEAD(2, 1) ENSURE_FREESPACE(0 - 10, -2) result = sp[-2]; togo = sp[-1]; goto jump; case 2: fun5: FUNCTION_HEAD(5, 2) ENSURE_FREESPACE(0 - 10, -3) result = sp[-2]; togo = sp[-1]; goto jump; case 3: fun9: FUNCTION_HEAD(9, 2) ENSURE_FREESPACE(0 - 10, -3) sp[-2] = sp[-3]; goto fun2; case 4: fun15: FUNCTION_HEAD(15, 3) ENSURE_FREESPACE(0 - 10, -4) { W first = sp[-4]; sp[-4] = sp[-2]; sp[-2] = sp[-3]; sp[-3] = first; } goto call2; case 5: fun23: FUNCTION_HEAD(23, 3) ENSURE_FREESPACE(0 - 10, -4) ENSURE_FREESPACE(0 - 10 - 5, -4) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[-3]; hp[4] = sp[-4]; sp[-3] = (W)hp; hp += 5; ENSURE_FREESPACE(0 - 10 - 5, -3) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[-3]; hp[4] = sp[-2]; result = (W)hp; hp += 5; togo = sp[-1]; goto jump; case 6: fun28: FUNCTION_HEAD(28, 2) ENSURE_FREESPACE(0 - 10, -3) { W first = sp[-3]; sp[-3] = sp[-2]; sp[-2] = first; } ENSURE_FREESPACE(0 - 10 - 4, -3) hp[0] = 11; hp[1] = 2; hp[2] = 3; hp[3] = sp[-2]; sp[-2] = (W)hp; hp += 4; if(((W *)sp[-3])[1] == 1) { { W pap, arity; pap = sp[-3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -3) pap = sp[-3]; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-3]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 10 - (size + 4), -3) pap = sp[-3]; hp[size + 3] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); togo = sp[-1]; goto jump; } } case 7: fun31: FUNCTION_HEAD(31, 1) ENSURE_FREESPACE(0 - 10, -2) if(((W *)sp[-2])[1] == 1) { { W pap, arity; pap = sp[-2]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -2) pap = sp[-2]; sp[-2] = (W)zero28; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-2]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 10 - (size + 4), -2) pap = sp[-2]; hp[size + 3] = (W)zero28; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); togo = sp[-1]; goto jump; } } case 8: fun40: FUNCTION_HEAD(40, 3) ENSURE_FREESPACE(0 - 10, -4) { W first = sp[-4]; sp[-4] = sp[-2]; sp[-2] = first; } ENSURE_FREESPACE(0 - 10 - 5, -4) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[-3]; hp[4] = sp[-4]; sp[-3] = (W)hp; hp += 5; sp[-5] = sp[-2]; sp[-2] = (W)zero9; sp[-4] = (W)zero31; goto call3; case 9: fun46: FUNCTION_HEAD(46, 2) ENSURE_FREESPACE(0 - 10, -3) ENSURE_FREESPACE(0 - 10 - 4, -3) hp[0] = 17; hp[1] = 2; hp[2] = 3; hp[3] = sp[-3]; sp[-4] = sp[-3]; sp[-3] = (W)hp; hp += 4; goto fun40; case 11: fun52: FUNCTION_HEAD(52, 2) ENSURE_FREESPACE(0 - 6, -3) sp[-6] = sp[-3]; sp[-5] = sp[-2]; sp[-4] = 21; sp -= 3; goto fun46; case 10: sp[1] = result; sp -= -3; goto fun46; case 12: fun55: FUNCTION_HEAD(55, 2) ENSURE_FREESPACE(0 - 10, -3) result = sp[-2]; togo = sp[-1]; goto jump; case 14: fun62: FUNCTION_HEAD(62, 3) ENSURE_FREESPACE(0 - 7, -4) sp[-7] = sp[-4]; sp[-6] = sp[-3]; sp[-5] = sp[-2]; sp[-4] = 27; sp -= 3; goto call2; case 13: sp[1] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 1), 0) pap = sp[0]; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -3; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 10 - (size + 4), 0) pap = sp[0]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -3; togo = sp[-1]; goto jump; } } case 15: fun75: FUNCTION_HEAD(75, 2) ENSURE_FREESPACE(0 - 10, -3) sp[-4] = sp[-3]; sp[-3] = (W)zero62; goto call2; case 18: fun82: FUNCTION_HEAD(82, 1) ENSURE_FREESPACE(0 - 5, -2) sp[-4] = statics[5]; sp[-5] = statics[6]; sp[-3] = 35; sp -= 2; goto fun75; case 17: sp[-1] = result; sp[-3] = sp[-1]; sp[-2] = statics[5]; sp[-1] = 33; goto fun75; case 16: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 21: fun90: FUNCTION_HEAD(90, 1) ENSURE_FREESPACE(0 - 5, -2) sp[-4] = statics[7]; sp[-5] = statics[6]; sp[-3] = 41; sp -= 2; goto fun75; case 20: sp[-1] = result; sp[-3] = sp[-1]; sp[-2] = statics[4]; sp[-1] = 39; goto fun75; case 19: sp[-1] = result; ENSURE_FREESPACE(2 - 10 - 5, -1) hp[0] = 29; hp[1] = 1; hp[2] = 3; hp[3] = sp[-1]; hp[4] = sp[0]; result = (W)hp; hp += 5; sp -= -2; togo = sp[-1]; goto jump; case 24: fun95: FUNCTION_HEAD(95, 1) ENSURE_FREESPACE(0 - 3, -2) sp[-3] = (W)zero_Succ; sp[-2] = 47; sp -= 1; goto fun90; case 23: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 2), -1) pap = sp[-1]; sp[-2] = (W)w; sp[-1] = 45; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 1)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 22: sp[-1] = result; } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = (W)w; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp -= -1; goto fun_Out; case 25: fun99: FUNCTION_HEAD(99, 2) ENSURE_FREESPACE(0 - 10, -3) { W first = sp[-3]; sp[-3] = sp[-2]; sp[-2] = first; } if(((W *)sp[-3])[1] == 1) { { W pap, arity; pap = sp[-3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -3) pap = sp[-3]; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-3]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 10 - (size + 4), -3) pap = sp[-3]; hp[size + 3] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); togo = sp[-1]; goto jump; } } case 26: fun106: FUNCTION_HEAD(106, 2) ENSURE_FREESPACE(0 - 10, -3) sp[-4] = sp[-3]; sp[-3] = (W)zero9; goto call2; case 31: fun119: FUNCTION_HEAD(119, 4) ENSURE_FREESPACE(0 - 6, -5) { W first = sp[-4]; sp[-4] = sp[-2]; sp[-2] = sp[-3]; sp[-3] = first; } if(((W *)sp[-4])[1] == 1) { { W pap, arity; pap = sp[-4]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 5), -5) pap = sp[-4]; sp[-6] = sp[-5]; sp[-5] = 61; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 4; togo = ((W *)pap)[0]; goto jump; } case 30: sp[-1] = result; } else { { W pap, size; pap = sp[-4]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 8 - (size + 4), -5) pap = sp[-4]; hp[size + 3] = sp[-5]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-5] = (W)hp; hp += (size + 4); } sp -= 4; } sp[-2] = sp[2]; sp[-3] = sp[-1]; sp[-1] = 59; goto fun106; case 29: sp[2] = result; sp[-1] = sp[0]; sp[0] = 57; sp -= -1; goto fun_Succ; case 28: sp[-1] = result; sp[-2] = sp[0]; sp[-3] = sp[1]; sp[0] = 55; sp -= -1; goto call2; case 27: sp[-1] = result; ENSURE_FREESPACE(2 - 10 - 5, -1) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[0]; hp[4] = sp[-1]; result = (W)hp; hp += 5; sp -= -2; togo = sp[-1]; goto jump; case 32: fun130: FUNCTION_HEAD(130, 3) ENSURE_FREESPACE(0 - 10, -4) { W first = sp[-4]; sp[-4] = sp[-3]; sp[-3] = first; } ENSURE_FREESPACE(0 - 10 - 5, -4) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = (W)zero5; hp[4] = sp[-2]; sp[-5] = sp[-2]; sp[-2] = (W)hp; hp += 5; ENSURE_FREESPACE(0 - 10 - 5, -5) hp[0] = 63; hp[1] = 2; hp[2] = 4; hp[3] = sp[-3]; hp[4] = sp[-5]; sp[-3] = (W)hp; hp += 5; ENSURE_FREESPACE(0 - 10 - 4, -4) hp[0] = 51; hp[1] = 1; hp[2] = 2; hp[3] = sp[-3]; sp[-3] = (W)hp; hp += 4; goto call2; case 36: fun147: FUNCTION_HEAD(147, 5) ENSURE_FREESPACE(0 - 10, -6) { W first = sp[-6]; sp[-6] = sp[-3]; sp[-3] = first; } { W first = sp[-5]; sp[-5] = sp[-4]; sp[-4] = first; } sp[-8] = sp[-3]; sp[-7] = sp[-5]; sp[-5] = 71; sp -= 4; goto fun130; case 35: sp[1] = result; sp[-5] = sp[1]; sp[-2] = (W)zero9; sp[-3] = (W)zero5; sp[-4] = (W)zero9; sp[-1] = 69; goto call3; case 34: sp[-1] = result; ENSURE_FREESPACE(4 - 6 - 5, -1) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[-1]; hp[4] = sp[2]; sp[2] = (W)hp; hp += 5; if(((W *)sp[1])[1] == 1) { { W pap, arity; pap = sp[1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(4 - (arity + 5), 0) pap = sp[1]; sp[-2] = (W)zero5; sp[-1] = 67; { int i; for(i = 0; i < arity - 1; i++) sp[3 - (arity - i + 4)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 33: sp[1] = result; } else { { W pap, size; pap = sp[1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(4 - 10 - (size + 4), 0) pap = sp[1]; hp[size + 3] = (W)zero5; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[1] = (W)hp; hp += (size + 4); } } sp -= -4; goto call2; case 38: fun158: FUNCTION_HEAD(158, 3) ENSURE_FREESPACE(0 - 6, -4) { W first = sp[-3]; sp[-3] = sp[-2]; sp[-2] = first; } ENSURE_FREESPACE(0 - 6 - 6, -4) hp[0] = 73; hp[1] = 2; hp[2] = 5; hp[3] = sp[-4]; hp[4] = sp[-2]; hp[5] = sp[-3]; sp[-2] = (W)hp; hp += 6; sp[-4] = sp[-3]; sp[-5] = sp[-4]; sp[-3] = 75; sp -= 2; goto fun75; case 37: sp[-1] = result; ENSURE_FREESPACE(2 - 10 - 5, -1) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[0]; hp[4] = sp[-1]; result = (W)hp; hp += 5; sp -= -2; togo = sp[-1]; goto jump; case 40: fun163: FUNCTION_HEAD(163, 1) ENSURE_FREESPACE(0 - 5, -2) sp[-4] = statics[2]; sp[-5] = statics[2]; sp[-3] = 79; sp -= 2; goto fun75; case 39: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 44: fun176: FUNCTION_HEAD(176, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero_Succ; sp[-3] = 87; sp -= 2; goto fun82; case 43: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = sp[-1]; sp[-2] = (W)w; sp[-1] = 85; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 42: sp[-1] = result; } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 6 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = (W)w; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } ENSURE_FREESPACE(2 - 6 - 5, -1) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = (W)zero5; hp[4] = statics[0]; sp[-2] = sp[0]; sp[0] = (W)hp; hp += 5; ENSURE_FREESPACE(2 - 6 - 4, -2) hp[0] = 77; hp[1] = 2; hp[2] = 3; hp[3] = sp[-2]; sp[-2] = (W)hp; hp += 4; ENSURE_FREESPACE(2 - 6 - 4, -2) hp[0] = 51; hp[1] = 1; hp[2] = 2; hp[3] = sp[-2]; sp[-2] = (W)hp; hp += 4; sp[-3] = sp[-2]; sp[-2] = 83; sp -= 1; goto fun163; case 41: sp[-1] = result; sp[-2] = sp[1]; sp[-3] = sp[-1]; sp[1] = (W)zero2; sp[-1] = (W)zero9; sp -= -3; goto call4; case 46: fun185: FUNCTION_HEAD(185, 3) ENSURE_FREESPACE(0 - 7, -4) { W first = sp[-3]; sp[-3] = sp[-2]; sp[-2] = first; } sp[-7] = sp[-4]; sp[-6] = sp[-2]; sp[-5] = 91; sp -= 4; goto fun46; case 45: sp[2] = result; sp -= -4; goto fun40; case 47: fun189: FUNCTION_HEAD(189, 1) ENSURE_FREESPACE(0 - 10, -2) sp[-4] = sp[-2]; sp[-2] = (W)zero9; sp[-3] = (W)zero5; goto call2; case 56: fun211: FUNCTION_HEAD(211, 4) ENSURE_FREESPACE(0 - 7, -5) if(((W *)sp[-4])[1] == 1) { { W pap, arity; pap = sp[-4]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 6), -5) pap = sp[-4]; sp[-7] = (W)zero9; sp[-6] = 111; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 5)] = ((W *)pap)[i + 3]; } sp -= 5; togo = ((W *)pap)[0]; goto jump; } case 55: sp[-1] = sp[3]; sp[3] = result; } else { { W pap, size; pap = sp[-4]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 8 - (size + 4), -5) pap = sp[-4]; hp[size + 3] = (W)zero9; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-6] = sp[-2]; sp[-2] = (W)hp; hp += (size + 4); } sp -= 5; } if(((W *)sp[2])[1] == 1) { { W pap, arity; pap = sp[2]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(5 - (arity + 7), -1) pap = sp[2]; sp[-3] = (W)zero9; sp[-2] = 109; { int i; for(i = 0; i < arity - 1; i++) sp[4 - (arity - i + 6)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 54: sp[-1] = sp[0]; sp[0] = result; } else { { W pap, size; pap = sp[2]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(5 - 9 - (size + 4), -1) pap = sp[2]; hp[size + 3] = (W)zero9; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-2] = sp[-1]; sp[-1] = (W)hp; hp += (size + 4); } sp -= 1; } if(((W *)sp[2])[1] == 1) { { W pap, arity; pap = sp[2]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(6 - (arity + 8), -1) pap = sp[2]; sp[-3] = (W)zero5; sp[-2] = 107; { int i; for(i = 0; i < arity - 1; i++) sp[5 - (arity - i + 7)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 53: sp[3] = result; } else { { W pap, size; pap = sp[2]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(6 - 9 - (size + 4), -1) pap = sp[2]; hp[size + 3] = (W)zero5; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[2] = (W)hp; hp += (size + 4); } sp -= 1; } if(((W *)sp[4])[1] == 1) { { W pap, arity; pap = sp[4]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(7 - (arity + 8), 0) pap = sp[4]; sp[-2] = (W)zero5; sp[-1] = 105; { int i; for(i = 0; i < arity - 1; i++) sp[6 - (arity - i + 7)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 52: sp[4] = result; } else { { W pap, size; pap = sp[4]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(7 - 9 - (size + 4), 0) pap = sp[4]; hp[size + 3] = (W)zero5; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[4] = (W)hp; hp += (size + 4); } } sp[-2] = sp[5]; sp[-1] = 103; goto fun189; case 51: sp[-1] = sp[0]; sp[0] = result; sp[-4] = sp[1]; sp[-5] = sp[0]; sp[-2] = (W)zero9; sp[-3] = (W)zero5; sp[0] = 101; sp -= -1; goto call4; case 50: sp[-1] = result; sp[-3] = sp[0]; sp[-2] = 99; sp -= 1; goto fun189; case 49: sp[1] = result; sp[-3] = sp[5]; sp[-4] = sp[1]; sp[-1] = (W)zero5; sp[-2] = (W)zero5; sp[1] = 97; sp -= -2; goto call4; case 48: sp[3] = result; sp -= -5; goto call3; case 57: fun221: FUNCTION_HEAD(221, 3) ENSURE_FREESPACE(0 - 10, -4) { W first = sp[-4]; sp[-4] = sp[-3]; sp[-3] = sp[-2]; sp[-2] = first; } ENSURE_FREESPACE(0 - 10 - 4, -4) hp[0] = 7; hp[1] = 1; hp[2] = 2; hp[3] = (W)zero5; sp[-5] = (W)hp; hp += 4; sp[-7] = sp[-2]; sp[-2] = (W)zero5; sp[-6] = (W)zero211; goto call5; case 59: fun229: FUNCTION_HEAD(229, 3) ENSURE_FREESPACE(0 - 8, -4) { W first = sp[-4]; sp[-4] = sp[-2]; sp[-2] = first; } sp[-5] = sp[-2]; sp[-2] = 117; sp -= 1; goto fun221; case 58: sp[-1] = result; sp -= -1; goto fun189; case 61: fun234: FUNCTION_HEAD(234, 1) ENSURE_FREESPACE(0 - 5, -2) sp[-4] = statics[4]; sp[-5] = statics[4]; sp[-3] = 121; sp -= 2; goto fun75; case 60: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 62: fun241: FUNCTION_HEAD(241, 2) ENSURE_FREESPACE(0 - 10, -3) { W first = sp[-3]; sp[-3] = sp[-2]; sp[-2] = first; } sp[-4] = sp[-2]; sp[-2] = (W)zero5; goto call2; case 65: fun254: FUNCTION_HEAD(254, 4) ENSURE_FREESPACE(0 - 9, -5) { W first = sp[-5]; sp[-5] = sp[-2]; sp[-2] = first; } { W first = sp[-4]; sp[-4] = sp[-3]; sp[-3] = first; } sp[-9] = sp[-2]; sp[-8] = sp[-3]; sp[-7] = sp[-4]; sp[-6] = 129; sp -= 5; goto fun229; case 64: sp[2] = result; sp[-2] = sp[3]; sp[-1] = sp[1]; sp[1] = 127; sp -= -2; goto fun221; case 63: sp[1] = result; sp -= -3; goto fun241; case 66: fun258: FUNCTION_HEAD(258, 3) ENSURE_FREESPACE(0 - 10, -4) result = sp[-2]; togo = sp[-1]; goto jump; case 67: fun264: FUNCTION_HEAD(264, 4) ENSURE_FREESPACE(0 - 10, -5) sp[-2] = sp[-5]; sp[-3] = sp[-4]; if(((W *)sp[-3])[1] == 1) { { W pap, arity; pap = sp[-3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -3) pap = sp[-3]; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-3]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 10 - (size + 4), -3) pap = sp[-3]; hp[size + 3] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); togo = sp[-1]; goto jump; } } case 68: fun270: FUNCTION_HEAD(270, 4) ENSURE_FREESPACE(0 - 10, -5) sp[-2] = sp[-5]; if(((W *)sp[-3])[1] == 1) { { W pap, arity; pap = sp[-3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -3) pap = sp[-3]; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-3]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 10 - (size + 4), -3) pap = sp[-3]; hp[size + 3] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); togo = sp[-1]; goto jump; } } case 69: fun277: FUNCTION_HEAD(277, 2) ENSURE_FREESPACE(0 - 10, -3) { W first = sp[-3]; sp[-3] = sp[-2]; sp[-2] = first; } ENSURE_FREESPACE(0 - 10 - 4, -3) hp[0] = 31; hp[1] = 1; hp[2] = 2; hp[3] = sp[-3]; sp[-3] = (W)hp; hp += 4; sp[-4] = sp[-2]; sp[-2] = (W)zero55; goto call2; case 71: fun282: FUNCTION_HEAD(282, 1) ENSURE_FREESPACE(0 - 5, -2) sp[-4] = statics[12]; sp[-5] = statics[3]; sp[-3] = 141; sp -= 2; goto fun277; case 70: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 73: fun287: FUNCTION_HEAD(287, 1) ENSURE_FREESPACE(0 - 5, -2) sp[-4] = statics[4]; sp[-5] = statics[3]; sp[-3] = 145; sp -= 2; goto fun277; case 72: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 74: fun293: FUNCTION_HEAD(293, 1) ENSURE_FREESPACE(0 - 10, -2) result = sp[-2]; togo = sp[-1]; goto jump; case 77: fun301: FUNCTION_HEAD(301, 1) ENSURE_FREESPACE(0 - 3, -2) if(((W *)statics[9])[1] == 1) { { W pap, arity; pap = statics[9]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 2), -2) pap = statics[9]; sp[-3] = sp[-2]; sp[-2] = 153; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 1)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 76: sp[-1] = result; } else { { W pap, size; pap = statics[9]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 3 - (size + 4), -2) pap = statics[9]; hp[size + 3] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-2] = (W)hp; hp += (size + 4); } sp -= 1; } if(((W *)statics[8])[1] == 1) { { W pap, arity; pap = statics[8]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 2), -1) pap = statics[8]; sp[-2] = sp[-1]; sp[-1] = 151; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 1)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 75: sp[-1] = result; } else { { W pap, size; pap = statics[8]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 10 - (size + 4), -1) pap = statics[8]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } if(((W *)statics[17])[1] == 1) { { W pap, arity; pap = statics[17]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 1), -1) pap = statics[17]; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = statics[17]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 10 - (size + 4), -1) pap = statics[17]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -1; togo = sp[-1]; goto jump; } } case 78: fun304: FUNCTION_HEAD(304, 1) ENSURE_FREESPACE(0 - 10, -2) if(((W *)statics[9])[1] == 1) { { W pap, arity; pap = statics[9]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -2) pap = statics[9]; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = statics[9]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 10 - (size + 4), -2) pap = statics[9]; hp[size + 3] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); togo = sp[-1]; goto jump; } } case 79: fun307: FUNCTION_HEAD(307, 1) ENSURE_FREESPACE(0 - 10, -2) if(((W *)statics[8])[1] == 1) { { W pap, arity; pap = statics[8]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -2) pap = statics[8]; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = statics[8]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 10 - (size + 4), -2) pap = statics[8]; hp[size + 3] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); togo = sp[-1]; goto jump; } } case 88: fun318: FUNCTION_HEAD(318, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 175; sp -= 2; goto fun304; case 87: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 173; goto fun307; case 86: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 171; goto fun307; case 85: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 169; goto fun307; case 84: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 167; goto fun307; case 83: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 165; goto fun307; case 82: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 163; goto fun307; case 81: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 161; goto fun307; case 80: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 97: fun329: FUNCTION_HEAD(329, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 193; sp -= 2; goto fun304; case 96: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 191; goto fun304; case 95: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 189; goto fun307; case 94: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 187; goto fun307; case 93: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 185; goto fun307; case 92: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 183; goto fun307; case 91: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 181; goto fun307; case 90: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 179; goto fun307; case 89: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 106: fun340: FUNCTION_HEAD(340, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 211; sp -= 2; goto fun304; case 105: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 209; goto fun304; case 104: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 207; goto fun304; case 103: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 205; goto fun307; case 102: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 203; goto fun307; case 101: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 201; goto fun307; case 100: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 199; goto fun307; case 99: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 197; goto fun307; case 98: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 115: fun351: FUNCTION_HEAD(351, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 229; sp -= 2; goto fun304; case 114: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 227; goto fun304; case 113: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 225; goto fun304; case 112: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 223; goto fun304; case 111: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 221; goto fun307; case 110: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 219; goto fun307; case 109: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 217; goto fun307; case 108: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 215; goto fun307; case 107: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 124: fun362: FUNCTION_HEAD(362, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 247; sp -= 2; goto fun304; case 123: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 245; goto fun304; case 122: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 243; goto fun304; case 121: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 241; goto fun304; case 120: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 239; goto fun304; case 119: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 237; goto fun307; case 118: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 235; goto fun307; case 117: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 233; goto fun307; case 116: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 129: fun370: FUNCTION_HEAD(370, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 257; sp -= 2; goto fun307; case 128: sp[-1] = result; if(((W *)statics[18])[1] == 1) { { W pap, arity; pap = statics[18]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[18]; sp[-2] = sp[-1]; sp[-1] = 255; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 127: sp[-1] = result; } else { { W pap, size; pap = statics[18]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 4 - (size + 4), -1) pap = statics[18]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } if(((W *)statics[19])[1] == 1) { { W pap, arity; pap = statics[19]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[19]; sp[-2] = sp[-1]; sp[-1] = 253; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 126: sp[-1] = result; } else { { W pap, size; pap = statics[19]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 5 - (size + 4), -1) pap = statics[19]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-2] = sp[-1]; sp[-1] = 251; goto fun301; case 125: sp[-1] = result; sp[-2] = statics[18]; sp -= -2; goto call2; case 134: fun378: FUNCTION_HEAD(378, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 267; sp -= 2; goto fun307; case 133: sp[-1] = result; if(((W *)statics[18])[1] == 1) { { W pap, arity; pap = statics[18]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[18]; sp[-2] = sp[-1]; sp[-1] = 265; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 132: sp[-1] = result; } else { { W pap, size; pap = statics[18]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 4 - (size + 4), -1) pap = statics[18]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } if(((W *)statics[18])[1] == 1) { { W pap, arity; pap = statics[18]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[18]; sp[-2] = sp[-1]; sp[-1] = 263; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 131: sp[-1] = result; } else { { W pap, size; pap = statics[18]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 5 - (size + 4), -1) pap = statics[18]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-2] = sp[-1]; sp[-1] = 261; goto fun301; case 130: sp[-1] = result; sp[-2] = statics[19]; sp -= -2; goto call2; case 140: fun387: FUNCTION_HEAD(387, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 279; sp -= 2; goto fun307; case 139: sp[-1] = result; if(((W *)statics[17])[1] == 1) { { W pap, arity; pap = statics[17]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[17]; sp[-2] = sp[-1]; sp[-1] = 277; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 138: sp[-1] = result; } else { { W pap, size; pap = statics[17]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 5 - (size + 4), -1) pap = statics[17]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-2] = sp[-1]; sp[-1] = 275; goto fun307; case 137: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 273; goto fun304; case 136: sp[-1] = result; if(((W *)statics[19])[1] == 1) { { W pap, arity; pap = statics[19]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[19]; sp[-2] = sp[-1]; sp[-1] = 271; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 135: sp[-1] = result; } else { { W pap, size; pap = statics[19]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = statics[19]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-2] = statics[19]; sp -= -2; goto call2; case 148: fun398: FUNCTION_HEAD(398, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 295; sp -= 2; goto fun307; case 147: sp[-1] = result; if(((W *)statics[18])[1] == 1) { { W pap, arity; pap = statics[18]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[18]; sp[-2] = sp[-1]; sp[-1] = 293; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 146: sp[-1] = result; } else { { W pap, size; pap = statics[18]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 5 - (size + 4), -1) pap = statics[18]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-2] = sp[-1]; sp[-1] = 291; goto fun304; case 145: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 289; goto fun304; case 144: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 287; goto fun307; case 143: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 285; goto fun304; case 142: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 283; goto fun301; case 141: sp[-1] = result; sp[-2] = statics[19]; sp -= -2; goto call2; case 156: fun409: FUNCTION_HEAD(409, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 311; sp -= 2; goto fun307; case 155: sp[-1] = result; if(((W *)statics[18])[1] == 1) { { W pap, arity; pap = statics[18]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[18]; sp[-2] = sp[-1]; sp[-1] = 309; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 154: sp[-1] = result; } else { { W pap, size; pap = statics[18]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 5 - (size + 4), -1) pap = statics[18]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-2] = sp[-1]; sp[-1] = 307; goto fun304; case 153: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 305; goto fun304; case 152: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 303; goto fun304; case 151: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 301; goto fun307; case 150: sp[-1] = result; if(((W *)statics[18])[1] == 1) { { W pap, arity; pap = statics[18]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[18]; sp[-2] = sp[-1]; sp[-1] = 299; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 149: sp[-1] = result; } else { { W pap, size; pap = statics[18]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = statics[18]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-2] = statics[19]; sp -= -2; goto call2; case 162: fun418: FUNCTION_HEAD(418, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 323; sp -= 2; goto fun304; case 161: sp[-1] = result; if(((W *)statics[17])[1] == 1) { { W pap, arity; pap = statics[17]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[17]; sp[-2] = sp[-1]; sp[-1] = 321; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 160: sp[-1] = result; } else { { W pap, size; pap = statics[17]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 5 - (size + 4), -1) pap = statics[17]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-2] = sp[-1]; sp[-1] = 319; goto fun307; case 159: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 317; goto fun304; case 158: sp[-1] = result; if(((W *)statics[19])[1] == 1) { { W pap, arity; pap = statics[19]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 3), -1) pap = statics[19]; sp[-2] = sp[-1]; sp[-1] = 315; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 157: sp[-1] = result; } else { { W pap, size; pap = statics[19]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = statics[19]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-2] = statics[19]; sp -= -2; goto call2; case 163: fun423: FUNCTION_HEAD(423, 1) ENSURE_FREESPACE(0 - 10, -2) sp[-3] = sp[-2]; sp[-2] = (W)zero329; sp[-4] = (W)zero318; sp[-5] = statics[15]; goto call3; case 165: fun428: FUNCTION_HEAD(428, 1) ENSURE_FREESPACE(0 - 5, -2) sp[-4] = statics[12]; sp[-5] = statics[12]; sp[-3] = 329; sp -= 2; goto fun75; case 164: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 167: fun437: FUNCTION_HEAD(437, 3) ENSURE_FREESPACE(0 - 8, -4) { W first = sp[-3]; sp[-3] = sp[-2]; sp[-2] = first; } sp[-8] = sp[-2]; sp[-6] = (W)zero293; sp[-7] = (W)zero307; sp[-5] = 333; sp -= 4; goto call2; case 166: sp[2] = result; sp -= -4; goto fun185; case 168: fun441: FUNCTION_HEAD(441, 1) ENSURE_FREESPACE(0 - 10, -2) ENSURE_FREESPACE(0 - 10 - 4, -2) hp[0] = 23; hp[1] = 1; hp[2] = 2; hp[3] = sp[-2]; result = (W)hp; hp += 4; togo = sp[-1]; goto jump; case 175: fun457: FUNCTION_HEAD(457, 2) ENSURE_FREESPACE(0 - 5, -3) sp[-5] = statics[5]; sp[-4] = 349; sp -= 3; goto fun441; case 174: sp[-1] = sp[0]; sp[0] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 5), -1) pap = sp[0]; sp[-3] = sp[1]; sp[-2] = 347; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 173: sp[1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 6 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= 1; } sp[-1] = sp[1]; sp[-2] = statics[20]; sp[1] = 345; sp -= -2; goto call2; case 172: sp[-1] = result; ENSURE_FREESPACE(2 - 6 - 4, -1) hp[0] = 137; hp[1] = 3; hp[2] = 4; hp[3] = sp[-1]; sp[-2] = sp[-1]; sp[-1] = (W)hp; hp += 4; sp[-4] = sp[0]; sp[-3] = 343; sp -= 2; goto fun423; case 171: sp[2] = result; sp[-2] = sp[0]; sp[-1] = (W)zero418; sp[-3] = (W)zero387; sp[-4] = statics[16]; sp[0] = 341; sp -= -1; goto call3; case 170: sp[-1] = result; sp[-3] = sp[1]; sp[-2] = sp[-1]; sp[-1] = 339; goto fun241; case 169: sp[1] = result; sp[-1] = sp[1]; sp[1] = (W)zero258; sp -= -3; goto call2; case 186: fun482: FUNCTION_HEAD(482, 2) ENSURE_FREESPACE(0 - 5, -3) sp[-5] = statics[5]; sp[-4] = 371; sp -= 3; goto fun441; case 185: sp[-1] = sp[0]; sp[0] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 5), -1) pap = sp[0]; sp[-3] = sp[1]; sp[-2] = 369; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 184: sp[1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 6 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= 1; } sp[-1] = sp[1]; sp[-2] = statics[20]; sp[1] = 367; sp -= -2; goto call2; case 183: sp[-1] = result; sp[-2] = sp[-1]; sp[-3] = statics[4]; sp[-4] = statics[7]; sp[-1] = 365; goto fun437; case 182: sp[-1] = result; ENSURE_FREESPACE(2 - 6 - 4, -1) hp[0] = 137; hp[1] = 3; hp[2] = 4; hp[3] = sp[-1]; sp[-2] = sp[-1]; sp[-1] = (W)hp; hp += 4; sp[-4] = sp[0]; sp[-3] = 363; sp -= 2; goto fun423; case 181: sp[2] = result; sp[-3] = sp[0]; sp[-2] = (W)zero387; sp[-4] = (W)zero378; sp[-5] = statics[16]; sp[-1] = 361; goto call3; case 180: sp[-1] = sp[2]; sp[2] = result; sp[-4] = sp[0]; sp[-3] = (W)zero409; sp[-5] = (W)zero398; sp[-6] = statics[16]; sp[-2] = 359; sp -= 1; goto call3; case 179: sp[1] = result; sp[-2] = sp[1]; sp[-1] = 357; goto fun189; case 178: sp[1] = result; sp[-1] = sp[1]; sp[1] = 355; sp -= -2; goto fun241; case 177: sp[-1] = result; sp[-2] = sp[1]; sp[-3] = sp[-1]; sp[-1] = 353; goto fun241; case 176: sp[1] = result; sp[-1] = sp[1]; sp[1] = (W)zero258; sp -= -3; goto call2; case 191: fun494: FUNCTION_HEAD(494, 2) ENSURE_FREESPACE(0 - 5, -3) sp[-5] = statics[5]; sp[-4] = 381; sp -= 3; goto fun441; case 190: sp[-1] = sp[0]; sp[0] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 5), -1) pap = sp[0]; sp[-3] = sp[1]; sp[-2] = 379; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 189: sp[1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 6 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= 1; } sp[-1] = sp[1]; sp[-2] = statics[20]; sp[1] = 377; sp -= -2; goto call2; case 188: sp[-1] = result; ENSURE_FREESPACE(2 - 5 - 4, -1) hp[0] = 351; hp[1] = 1; hp[2] = 2; hp[3] = sp[-1]; sp[-1] = (W)hp; hp += 4; ENSURE_FREESPACE(2 - 5 - 4, -1) hp[0] = 135; hp[1] = 3; hp[2] = 4; hp[3] = sp[-1]; sp[-1] = (W)hp; hp += 4; sp[-3] = sp[0]; sp[-2] = 375; sp -= 1; goto fun423; case 187: sp[1] = result; sp[-1] = sp[1]; sp[1] = (W)zero258; sp -= -3; goto call2; case 199: fun513: FUNCTION_HEAD(513, 2) ENSURE_FREESPACE(0 - 5, -3) sp[-5] = statics[5]; sp[-4] = 397; sp -= 3; goto fun441; case 198: sp[-1] = sp[0]; sp[0] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 5), -1) pap = sp[0]; sp[-3] = sp[1]; sp[-2] = 395; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 197: sp[1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 6 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= 1; } sp[-1] = sp[1]; sp[-2] = statics[20]; sp[1] = 393; sp -= -2; goto call2; case 196: sp[-1] = result; sp[-2] = sp[-1]; sp[-3] = (W)zero234; sp[-4] = statics[14]; sp[-1] = 391; goto fun437; case 195: sp[-1] = result; ENSURE_FREESPACE(2 - 6 - 4, -1) hp[0] = 137; hp[1] = 3; hp[2] = 4; hp[3] = sp[-1]; sp[-2] = sp[-1]; sp[-1] = (W)hp; hp += 4; sp[-4] = sp[0]; sp[-3] = 389; sp -= 2; goto fun423; case 194: sp[2] = result; sp[-2] = sp[0]; sp[-1] = (W)zero378; sp[-3] = (W)zero370; sp[-4] = statics[16]; sp[0] = 387; sp -= -1; goto call3; case 193: sp[-1] = result; sp[-3] = sp[1]; sp[-2] = sp[-1]; sp[-1] = 385; goto fun241; case 192: sp[1] = result; sp[-1] = sp[1]; sp[1] = (W)zero258; sp -= -3; goto call2; case 204: fun525: FUNCTION_HEAD(525, 2) ENSURE_FREESPACE(0 - 5, -3) sp[-5] = statics[5]; sp[-4] = 407; sp -= 3; goto fun441; case 203: sp[-1] = sp[0]; sp[0] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 5), -1) pap = sp[0]; sp[-3] = sp[1]; sp[-2] = 405; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 202: sp[1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 6 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= 1; } sp[-1] = sp[1]; sp[-2] = statics[20]; sp[1] = 403; sp -= -2; goto call2; case 201: sp[-1] = result; ENSURE_FREESPACE(2 - 5 - 4, -1) hp[0] = 373; hp[1] = 1; hp[2] = 2; hp[3] = sp[-1]; sp[-1] = (W)hp; hp += 4; ENSURE_FREESPACE(2 - 5 - 4, -1) hp[0] = 135; hp[1] = 3; hp[2] = 4; hp[3] = sp[-1]; sp[-1] = (W)hp; hp += 4; sp[-3] = sp[0]; sp[-2] = 401; sp -= 1; goto fun423; case 200: sp[1] = result; sp[-1] = sp[1]; sp[1] = (W)zero258; sp -= -3; goto call2; case 209: fun537: FUNCTION_HEAD(537, 2) ENSURE_FREESPACE(0 - 5, -3) sp[-5] = statics[5]; sp[-4] = 417; sp -= 3; goto fun441; case 208: sp[-1] = sp[0]; sp[0] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 5), -1) pap = sp[0]; sp[-3] = sp[1]; sp[-2] = 415; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 207: sp[1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 6 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= 1; } sp[-1] = sp[1]; sp[-2] = statics[20]; sp[1] = 413; sp -= -2; goto call2; case 206: sp[-1] = result; ENSURE_FREESPACE(2 - 5 - 4, -1) hp[0] = 383; hp[1] = 1; hp[2] = 2; hp[3] = sp[-1]; sp[-1] = (W)hp; hp += 4; ENSURE_FREESPACE(2 - 5 - 4, -1) hp[0] = 135; hp[1] = 3; hp[2] = 4; hp[3] = sp[-1]; sp[-1] = (W)hp; hp += 4; sp[-3] = sp[0]; sp[-2] = 411; sp -= 1; goto fun423; case 205: sp[1] = result; sp[-1] = sp[1]; sp[1] = (W)zero258; sp -= -3; goto call2; case 223: fun577: FUNCTION_HEAD(577, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = statics[12]; sp[-3] = 445; sp -= 2; goto fun441; case 222: sp[-1] = sp[0]; sp[0] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 4), -1) pap = sp[0]; sp[-3] = sp[-1]; sp[-2] = 443; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 3)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 221: sp[1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 7 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= 1; } sp[-2] = sp[1]; sp[-3] = (W)zero428; sp[-4] = statics[12]; sp[-1] = 441; goto fun437; case 220: sp[1] = result; ENSURE_FREESPACE(3 - 5 - 4, 0) hp[0] = 137; hp[1] = 3; hp[2] = 4; hp[3] = sp[1]; sp[1] = (W)hp; hp += 4; sp[-2] = statics[4]; sp[-1] = 439; goto fun441; case 219: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 4), -1) pap = sp[-1]; sp[-2] = sp[0]; sp[-1] = 437; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 3)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 218: sp[-1] = result; } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 6 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } ENSURE_FREESPACE(3 - 6 - 4, -1) hp[0] = 399; hp[1] = 1; hp[2] = 2; hp[3] = sp[-1]; sp[-1] = (W)hp; hp += 4; ENSURE_FREESPACE(3 - 6 - 4, -1) hp[0] = 135; hp[1] = 3; hp[2] = 4; hp[3] = sp[-1]; sp[-1] = (W)hp; hp += 4; sp[-3] = statics[2]; sp[-2] = 435; sp -= 1; goto fun441; case 217: sp[-1] = sp[0]; sp[0] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(4 - (arity + 6), -1) pap = sp[0]; sp[-3] = sp[1]; sp[-2] = 433; { int i; for(i = 0; i < arity - 1; i++) sp[3 - (arity - i + 5)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 216: sp[1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(4 - 7 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= 1; } ENSURE_FREESPACE(5 - 7 - 4, 0) hp[0] = 409; hp[1] = 1; hp[2] = 2; hp[3] = sp[1]; sp[1] = (W)hp; hp += 4; ENSURE_FREESPACE(5 - 7 - 4, 0) hp[0] = 135; hp[1] = 3; hp[2] = 4; hp[3] = sp[1]; sp[1] = (W)hp; hp += 4; sp[-2] = statics[3]; sp[-1] = 431; goto fun441; case 215: sp[-1] = sp[3]; sp[3] = result; if(((W *)sp[3])[1] == 1) { { W pap, arity; pap = sp[3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(5 - (arity + 7), -1) pap = sp[3]; sp[-3] = sp[2]; sp[-2] = 429; { int i; for(i = 0; i < arity - 1; i++) sp[4 - (arity - i + 6)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 214: sp[4] = result; } else { { W pap, size; pap = sp[3]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(5 - 11 - (size + 4), -1) pap = sp[3]; hp[size + 3] = sp[2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[3] = (W)hp; hp += (size + 4); } sp -= 1; } ENSURE_FREESPACE(6 - 11 - 4, 0) hp[0] = 419; hp[1] = 1; hp[2] = 2; hp[3] = sp[4]; sp[4] = (W)hp; hp += 4; ENSURE_FREESPACE(6 - 11 - 4, 0) hp[0] = 135; hp[1] = 3; hp[2] = 4; hp[3] = sp[4]; sp[4] = (W)hp; hp += 4; sp[-3] = sp[3]; sp[-1] = sp[0]; sp[-2] = (W)zero258; sp[-4] = (W)zero318; sp[-5] = statics[11]; sp[0] = 427; sp -= -1; goto call4; case 213: sp[-1] = result; sp[-3] = sp[2]; sp[-2] = sp[0]; sp[-4] = (W)zero329; sp[-5] = statics[11]; sp[0] = 425; sp -= -1; goto call4; case 212: sp[-1] = result; sp[-3] = sp[1]; sp[-2] = sp[0]; sp[-4] = (W)zero340; sp[-5] = statics[11]; sp[0] = 423; sp -= -1; goto call4; case 211: sp[-1] = result; sp[-4] = sp[0]; sp[-3] = sp[1]; sp[-2] = sp[-1]; sp[-5] = (W)zero351; sp[-6] = statics[11]; sp[-1] = 421; goto call4; case 210: sp[1] = result; sp[-1] = sp[0]; sp[0] = (W)zero258; sp[-2] = (W)zero362; sp[-3] = statics[11]; sp -= -3; goto call4; case 227: fun587: FUNCTION_HEAD(587, 3) ENSURE_FREESPACE(0 - 6, -4) { W first = sp[-4]; sp[-4] = sp[-3]; sp[-3] = first; } if(((W *)sp[-2])[1] == 1) { { W pap, arity; pap = sp[-2]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 5), -4) pap = sp[-2]; sp[-6] = (W)zero9; sp[-5] = 453; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 4; togo = ((W *)pap)[0]; goto jump; } case 226: sp[-1] = sp[0]; sp[0] = result; } else { { W pap, size; pap = sp[-2]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 7 - (size + 4), -4) pap = sp[-2]; hp[size + 3] = (W)zero9; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-5] = sp[-4]; sp[-4] = (W)hp; hp += (size + 4); } sp -= 4; } if(((W *)sp[2])[1] == 1) { { W pap, arity; pap = sp[2]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(4 - (arity + 6), -1) pap = sp[2]; sp[-3] = (W)zero5; sp[-2] = 451; { int i; for(i = 0; i < arity - 1; i++) sp[3 - (arity - i + 5)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 225: sp[3] = result; } else { { W pap, size; pap = sp[2]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(4 - 6 - (size + 4), -1) pap = sp[2]; hp[size + 3] = (W)zero5; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[2] = (W)hp; hp += (size + 4); } sp -= 1; } sp[-1] = sp[2]; sp[2] = 449; sp -= -3; goto call2; case 224: sp[-1] = result; ENSURE_FREESPACE(2 - 10 - 5, -1) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[-1]; hp[4] = sp[0]; result = (W)hp; hp += 5; sp -= -2; togo = sp[-1]; goto jump; case 228: fun599: FUNCTION_HEAD(599, 4) ENSURE_FREESPACE(0 - 10, -5) { W first = sp[-5]; sp[-5] = sp[-2]; sp[-2] = first; } ENSURE_FREESPACE(0 - 10 - 5, -5) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[-3]; hp[4] = sp[-5]; sp[-3] = (W)hp; hp += 5; ENSURE_FREESPACE(0 - 10 - 4, -4) hp[0] = 455; hp[1] = 2; hp[2] = 3; hp[3] = sp[-4]; sp[-4] = (W)hp; hp += 4; ENSURE_FREESPACE(0 - 10 - 4, -4) hp[0] = 51; hp[1] = 1; hp[2] = 2; hp[3] = sp[-4]; sp[-4] = (W)hp; hp += 4; sp[-5] = sp[-2]; sp[-2] = (W)zero9; goto call3; case 234: fun613: FUNCTION_HEAD(613, 3) ENSURE_FREESPACE(0 - 6, -4) if(((W *)sp[-3])[1] == 1) { { W pap, arity; pap = sp[-3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 5), -4) pap = sp[-3]; sp[-6] = (W)zero9; sp[-5] = 467; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 4; togo = ((W *)pap)[0]; goto jump; } case 233: sp[-1] = sp[2]; sp[2] = result; } else { { W pap, size; pap = sp[-3]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 7 - (size + 4), -4) pap = sp[-3]; hp[size + 3] = (W)zero9; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-5] = sp[-2]; sp[-2] = (W)hp; hp += (size + 4); } sp -= 4; } if(((W *)sp[1])[1] == 1) { { W pap, arity; pap = sp[1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(4 - (arity + 6), -1) pap = sp[1]; sp[-3] = (W)zero5; sp[-2] = 465; { int i; for(i = 0; i < arity - 1; i++) sp[3 - (arity - i + 5)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 232: sp[2] = result; } else { { W pap, size; pap = sp[1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(4 - 7 - (size + 4), -1) pap = sp[1]; hp[size + 3] = (W)zero5; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[1] = (W)hp; hp += (size + 4); } sp -= 1; } sp[-2] = sp[1]; sp[-1] = sp[3]; sp[1] = 463; sp -= -2; goto call2; case 231: sp[1] = result; if(((W *)sp[1])[1] == 1) { { W pap, arity; pap = sp[1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 4), 0) pap = sp[1]; sp[-2] = (W)zero9; sp[-1] = 461; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 3)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 230: sp[-1] = sp[1]; sp[1] = result; } else { { W pap, size; pap = sp[1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 5 - (size + 4), 0) pap = sp[1]; hp[size + 3] = (W)zero9; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = sp[1]; sp[1] = (W)hp; hp += (size + 4); } } if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 4), -1) pap = sp[-1]; sp[-2] = (W)zero5; sp[-1] = 459; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 3)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 229: sp[-1] = result; } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = (W)zero5; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } ENSURE_FREESPACE(3 - 10 - 5, -1) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[-1]; hp[4] = sp[0]; sp[0] = (W)hp; hp += 5; ENSURE_FREESPACE(3 - 10 - 5, 0) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[1]; hp[4] = sp[0]; result = (W)hp; hp += 5; sp -= -3; togo = sp[-1]; goto jump; case 237: fun628: FUNCTION_HEAD(628, 4) ENSURE_FREESPACE(0 - 10, -5) { W first = sp[-5]; sp[-5] = sp[-2]; sp[-2] = sp[-3]; sp[-3] = first; } ENSURE_FREESPACE(0 - 10 - 4, -5) hp[0] = 9; hp[1] = 2; hp[2] = 3; hp[3] = sp[-2]; sp[-6] = (W)hp; hp += 4; ENSURE_FREESPACE(0 - 10 - 5, -6) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[-2]; hp[4] = sp[-6]; sp[-2] = (W)hp; hp += 5; ENSURE_FREESPACE(0 - 10 - 4, -5) hp[0] = 469; hp[1] = 2; hp[2] = 3; hp[3] = sp[-4]; sp[-4] = (W)hp; hp += 4; sp[-8] = sp[-3]; sp[-6] = sp[-2]; sp[-7] = sp[-4]; sp[-4] = 473; sp -= 3; goto fun599; case 236: sp[1] = result; if(((W *)sp[1])[1] == 1) { { W pap, arity; pap = sp[1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 4), 0) pap = sp[1]; sp[-2] = (W)zero5; sp[-1] = 471; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 3)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 235: sp[1] = result; } else { { W pap, size; pap = sp[1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 10 - (size + 4), 0) pap = sp[1]; hp[size + 3] = (W)zero5; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[1] = (W)hp; hp += (size + 4); } } sp -= -3; goto fun46; case 241: fun638: FUNCTION_HEAD(638, 2) ENSURE_FREESPACE(0 - 6, -3) sp[-6] = sp[-3]; sp[-5] = sp[-2]; sp[-4] = 481; sp -= 3; goto fun241; case 240: sp[-1] = sp[0]; sp[0] = result; sp[-3] = sp[-1]; sp[-2] = sp[1]; sp[-1] = 479; goto fun106; case 239: sp[1] = result; sp[-2] = sp[1]; sp[-1] = 477; goto fun189; case 238: sp[1] = result; sp -= -3; goto fun106; case 244: fun647: FUNCTION_HEAD(647, 2) ENSURE_FREESPACE(0 - 6, -3) sp[-6] = sp[-3]; sp[-5] = sp[-2]; sp[-4] = 487; sp -= 3; goto fun106; case 243: sp[-1] = sp[1]; sp[1] = result; sp[-2] = sp[0]; sp[0] = 485; sp -= -1; goto fun638; case 242: sp[-1] = result; ENSURE_FREESPACE(2 - 10 - 5, -1) hp[0] = 9; hp[1] = 1; hp[2] = 3; hp[3] = sp[0]; hp[4] = sp[-1]; result = (W)hp; hp += 5; sp -= -2; togo = sp[-1]; goto jump; case 245: fun654: FUNCTION_HEAD(654, 2) ENSURE_FREESPACE(0 - 10, -3) sp[-5] = sp[-3]; sp[-3] = (W)zero5; sp[-4] = (W)zero647; goto fun628; case 246: fun660: FUNCTION_HEAD(660, 2) ENSURE_FREESPACE(0 - 10, -3) ENSURE_FREESPACE(0 - 10 - 4, -3) hp[0] = 51; hp[1] = 1; hp[2] = 2; hp[3] = (W)zero5; sp[-4] = sp[-3]; sp[-3] = (W)hp; hp += 4; goto call2; case 253: fun673: FUNCTION_HEAD(673, 1) ENSURE_FREESPACE(0 - 5, -2) sp[-4] = sp[-2]; sp[-5] = statics[5]; sp[-3] = 505; sp -= 2; goto fun660; case 252: sp[-1] = sp[0]; sp[0] = result; sp[-3] = statics[5]; sp[-2] = 503; sp -= 1; goto fun441; case 251: sp[-1] = sp[0]; sp[0] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 3), -1) pap = sp[0]; sp[0] = 501; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 2)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } case 250: sp[-1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 6 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= -1; } sp[-3] = sp[0]; sp[-4] = statics[4]; sp[-2] = 499; sp -= 1; goto fun654; case 249: sp[1] = result; sp[-2] = statics[2]; sp[-1] = 497; goto fun441; case 248: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 4), -1) pap = sp[-1]; sp[-2] = sp[1]; sp[-1] = 495; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 3)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 247: sp[1] = result; } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[1] = (W)hp; hp += (size + 4); } } sp[-1] = statics[5]; sp -= -3; goto fun185; case 260: fun682: FUNCTION_HEAD(682, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 519; sp -= 2; goto fun304; case 259: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 517; goto fun304; case 258: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 515; goto fun307; case 257: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 513; goto fun304; case 256: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 511; goto fun304; case 255: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 509; goto fun307; case 254: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 267: fun691: FUNCTION_HEAD(691, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 533; sp -= 2; goto fun304; case 266: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 531; goto fun304; case 265: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 529; goto fun307; case 264: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 527; goto fun304; case 263: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 525; goto fun304; case 262: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 523; goto fun304; case 261: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 284: fun710: FUNCTION_HEAD(710, 1) ENSURE_FREESPACE(0 - 4, -2) sp[-4] = (W)zero293; sp[-3] = 567; sp -= 2; goto fun304; case 283: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 565; goto fun304; case 282: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 563; goto fun304; case 281: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 561; goto fun304; case 280: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 559; goto fun304; case 279: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 557; goto fun304; case 278: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 555; goto fun304; case 277: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 553; goto fun307; case 276: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 551; goto fun304; case 275: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 549; goto fun304; case 274: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 547; goto fun304; case 273: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 545; goto fun304; case 272: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 543; goto fun304; case 271: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 541; goto fun304; case 270: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 539; goto fun304; case 269: sp[-1] = result; sp[-2] = sp[-1]; sp[-1] = 537; goto fun304; case 268: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 294: fun729: FUNCTION_HEAD(729, 3) ENSURE_FREESPACE(0 - 6, -4) sp[-2] = sp[-4]; sp[-5] = sp[-3]; sp[-6] = (W)zero234; sp[-4] = 587; sp -= 3; goto fun660; case 293: sp[-1] = sp[1]; sp[1] = result; sp[-3] = sp[1]; sp[-2] = 585; sp -= 1; goto fun673; case 292: sp[2] = result; sp[-2] = (W)zero234; sp[-1] = 583; goto fun441; case 291: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(4 - (arity + 5), -1) pap = sp[-1]; sp[-2] = sp[1]; sp[-1] = 581; { int i; for(i = 0; i < arity - 1; i++) sp[3 - (arity - i + 4)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 290: sp[1] = result; } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(4 - 8 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[1] = (W)hp; hp += (size + 4); } } sp[-3] = sp[2]; sp[-2] = (W)zero682; sp[-4] = (W)zero234; sp[-1] = 579; goto fun185; case 289: sp[2] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(4 - (arity + 4), 0) pap = sp[0]; sp[-1] = sp[2]; sp[0] = 577; { int i; for(i = 0; i < arity - 1; i++) sp[3 - (arity - i + 3)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } case 288: sp[1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(4 - 5 - (size + 4), 0) pap = sp[0]; hp[size + 3] = sp[2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[2] = (W)hp; hp += (size + 4); } sp -= -1; } if(((W *)sp[1])[1] == 1) { { W pap, arity; pap = sp[1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 4), 0) pap = sp[1]; sp[-2] = sp[1]; sp[-1] = 575; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 3)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 287: sp[1] = result; } else { { W pap, size; pap = sp[1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 7 - (size + 4), 0) pap = sp[1]; hp[size + 3] = sp[1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[1] = (W)hp; hp += (size + 4); } } sp[-2] = sp[0]; sp[-1] = (W)zero691; sp[-3] = (W)zero234; sp[0] = 573; sp -= -1; goto fun185; case 286: sp[-1] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 2), -1) pap = sp[0]; sp[0] = 571; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 1)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } case 285: sp[-1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= -1; } if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -1; togo = sp[-1]; goto jump; } } case 300: fun744: FUNCTION_HEAD(744, 3) ENSURE_FREESPACE(0 - 7, -4) sp[-2] = sp[-3]; sp[-3] = sp[-4]; sp[-5] = sp[-2]; sp[-6] = (W)zero387; sp[-7] = (W)zero282; sp[-4] = 599; sp -= 3; goto fun229; case 299: sp[-1] = sp[1]; sp[1] = result; ENSURE_FREESPACE(3 - 7 - 5, -1) hp[0] = 589; hp[1] = 1; hp[2] = 3; hp[3] = sp[0]; hp[4] = sp[-1]; sp[-2] = sp[-1]; sp[-1] = (W)hp; hp += 5; sp[-4] = statics[7]; sp[-3] = 597; sp -= 2; goto fun441; case 298: sp[-1] = sp[0]; sp[0] = result; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(5 - (arity + 5), -1) pap = sp[0]; sp[0] = 595; { int i; for(i = 0; i < arity - 1; i++) sp[4 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } case 297: sp[-1] = result; } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(5 - 6 - (size + 4), -1) pap = sp[0]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[0] = (W)hp; hp += (size + 4); } sp -= -1; } if(((W *)sp[1])[1] == 1) { { W pap, arity; pap = sp[1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(4 - (arity + 5), -1) pap = sp[1]; sp[-2] = sp[-1]; sp[-1] = 593; { int i; for(i = 0; i < arity - 1; i++) sp[3 - (arity - i + 4)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 296: sp[1] = result; } else { { W pap, size; pap = sp[1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(4 - 5 - (size + 4), -1) pap = sp[1]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[1] = (W)hp; hp += (size + 4); } } sp[-1] = sp[2]; sp[2] = 591; sp -= -3; goto call2; case 295: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -1; togo = sp[-1]; goto jump; } } case 303: fun752: FUNCTION_HEAD(752, 3) ENSURE_FREESPACE(0 - 5, -4) sp[-2] = sp[-4]; if(((W *)sp[-2])[1] == 1) { { W pap, arity; pap = sp[-2]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 4), -3) pap = sp[-2]; sp[-5] = (W)zero710; sp[-4] = 605; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 3)] = ((W *)pap)[i + 3]; } sp -= 3; togo = ((W *)pap)[0]; goto jump; } case 302: sp[1] = result; } else { { W pap, size; pap = sp[-2]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 5 - (size + 4), -3) pap = sp[-2]; hp[size + 3] = (W)zero710; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-2] = (W)hp; hp += (size + 4); } sp -= 3; } sp[-1] = sp[1]; sp[-2] = sp[-1]; sp[1] = 603; sp -= -2; goto call2; case 301: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -1; togo = sp[-1]; goto jump; } } case 305: fun760: FUNCTION_HEAD(760, 2) ENSURE_FREESPACE(0 - 6, -3) { W first = sp[-3]; sp[-3] = sp[-2]; sp[-2] = first; } sp[-5] = sp[-2]; sp[-6] = sp[-5]; sp[-4] = 609; sp -= 3; goto fun75; case 304: sp[1] = result; sp[-2] = sp[0]; sp[0] = (W)zero293; sp[-1] = (W)zero62; sp -= -3; goto call3; case 307: fun768: FUNCTION_HEAD(768, 1) ENSURE_FREESPACE(0 - 5, -2) sp[-3] = sp[-2]; sp[-4] = (W)zero163; sp[-2] = 613; sp -= 1; goto fun46; case 306: sp[-1] = result; sp[-2] = (W)zero55; sp[-3] = (W)zero760; sp[-4] = (W)zero163; sp -= -1; goto fun599; case 310: fun776: FUNCTION_HEAD(776, 2) ENSURE_FREESPACE(0 - 5, -3) sp[-2] = sp[-3]; sp[-4] = sp[-2]; sp[-3] = (W)zero82; sp[-2] = 619; sp -= 1; goto fun75; case 309: sp[-1] = result; sp[-4] = sp[-1]; sp[-2] = (W)w; sp[-3] = (W)zero_Succ; sp[-1] = 617; goto call2; case 308: sp[-1] = result; sp -= -1; goto fun_Out; case 312: fun782: FUNCTION_HEAD(782, 2) ENSURE_FREESPACE(0 - 4, -3) sp[-2] = sp[-3]; sp[-3] = sp[-2]; sp[-2] = 623; sp -= 1; goto fun768; case 311: sp[-1] = result; ENSURE_FREESPACE(1 - 10 - 4, -1) hp[0] = 621; hp[1] = 1; hp[2] = 2; hp[3] = sp[-1]; sp[-2] = sp[-1]; sp[-1] = (W)hp; hp += 4; sp -= -1; goto fun776; case 318: fun795: FUNCTION_HEAD(795, 3) ENSURE_FREESPACE(0 - 5, -4) sp[-2] = sp[-4]; sp[-5] = (W)zero163; sp[-4] = 635; sp -= 3; goto fun441; case 317: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 4), -1) pap = sp[-1]; sp[-2] = sp[0]; sp[-1] = 633; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 3)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 316: sp[-1] = result; } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 7 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-3] = sp[0]; sp[-4] = (W)zero163; sp[-2] = 631; sp -= 1; goto fun660; case 315: sp[1] = result; ENSURE_FREESPACE(4 - 8 - 4, 0) hp[0] = 625; hp[1] = 1; hp[2] = 2; hp[3] = sp[0]; sp[-1] = (W)hp; hp += 4; sp[-2] = sp[0]; sp[0] = 629; sp -= -1; goto fun782; case 314: ; ENSURE_FREESPACE(3 - 7 - 4, 0) hp[0] = 625; hp[1] = 1; hp[2] = 2; hp[3] = sp[0]; sp[-1] = (W)hp; hp += 4; sp[-2] = sp[0]; sp[0] = 627; sp -= -1; goto fun782; case 313: ; if(((W *)sp[0])[1] == 1) { { W pap, arity; pap = sp[0]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), 0) pap = sp[0]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[0]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), 0) pap = sp[0]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } case 319: fun800: FUNCTION_HEAD(800, 3) ENSURE_FREESPACE(0 - 10, -4) sp[-2] = sp[-4]; if(((W *)sp[-3])[1] == 1) { { W pap, arity; pap = sp[-3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -3) pap = sp[-3]; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-3]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 10 - (size + 4), -3) pap = sp[-3]; hp[size + 3] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); togo = sp[-1]; goto jump; } } case 320: fun803: FUNCTION_HEAD(803, 2) ENSURE_FREESPACE(0 - 10, -3) result = sp[-2]; togo = sp[-1]; goto jump; case 327: fun816: FUNCTION_HEAD(816, 1) ENSURE_FREESPACE(0 - 4, -2) ENSURE_FREESPACE(0 - 4 - 4, -1) hp[0] = 7; hp[1] = 1; hp[2] = 2; hp[3] = (W)zero9; sp[-2] = (W)hp; hp += 4; sp[-3] = sp[-2]; sp[-2] = 653; sp -= 1; goto fun_In; case 326: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 3), -1) pap = sp[-1]; sp[-3] = (W)w; sp[-2] = 651; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 2)] = ((W *)pap)[i + 3]; } sp -= 1; togo = ((W *)pap)[0]; goto jump; } case 325: sp[-1] = result; } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 5 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = (W)w; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-2] = (W)hp; hp += (size + 4); } sp -= 1; } sp[-3] = (W)w; sp[-2] = 649; sp -= 1; goto fun_Succ; case 324: sp[-1] = result; if(((W *)sp[1])[1] == 1) { { W pap, arity; pap = sp[1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(3 - (arity + 4), -1) pap = sp[1]; sp[-2] = sp[-1]; sp[-1] = 647; { int i; for(i = 0; i < arity - 1; i++) sp[2 - (arity - i + 3)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } case 323: sp[-1] = result; } else { { W pap, size; pap = sp[1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(3 - 7 - (size + 4), -1) pap = sp[1]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-1] = (W)hp; hp += (size + 4); } } sp[-2] = sp[0]; sp[0] = 645; sp -= -1; goto fun241; case 322: sp[-1] = result; sp[-3] = sp[0]; sp[-2] = 643; sp -= 1; goto fun176; case 321: sp[1] = result; ENSURE_FREESPACE(3 - 10 - 4, 0) hp[0] = 639; hp[1] = 2; hp[2] = 3; hp[3] = sp[1]; sp[1] = (W)hp; hp += 4; sp[-1] = sp[0]; sp[0] = (W)zero803; sp -= -3; goto call2; case 328: fun819: FUNCTION_HEAD(819, 1) ENSURE_FREESPACE(0 - 10, -2) sp[-2] = 7777; goto fun_REPORT_OUT_OF_STACK; case 331: fun833: FUNCTION_HEAD(833, 5) ENSURE_FREESPACE(0 - 10, -6) sp[-2] = sp[-6]; { W first = sp[-5]; sp[-5] = sp[-3]; sp[-3] = sp[-4]; sp[-4] = first; } ENSURE_FREESPACE(0 - 10 - 5, -5) hp[0] = 601; hp[1] = 1; hp[2] = 3; hp[3] = sp[-4]; hp[4] = sp[-5]; sp[-6] = sp[-5]; sp[-5] = (W)hp; hp += 5; sp[-7] = sp[-4]; sp[-4] = 661; sp -= 3; goto fun744; case 330: sp[-1] = result; sp[-3] = sp[1]; sp[-2] = sp[-1]; sp[-4] = sp[-3]; sp[-1] = sp[0]; sp[1] = 659; sp -= -2; goto call4; case 329: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -1; togo = sp[-1]; goto jump; } } case 333: fun844: FUNCTION_HEAD(844, 5) ENSURE_FREESPACE(0 - 7, -6) sp[-2] = sp[-6]; { W first = sp[-4]; sp[-4] = sp[-3]; sp[-3] = first; } sp[-6] = sp[-2]; sp[-7] = sp[-6]; sp[-2] = 665; sp -= 1; goto call4; case 332: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -1; togo = sp[-1]; goto jump; } } case 336: fun862: FUNCTION_HEAD(862, 6) ENSURE_FREESPACE(0 - 7, -7) sp[-2] = sp[-5]; sp[-5] = sp[-4]; sp[-4] = sp[-6]; sp[-6] = sp[-3]; sp[-3] = sp[-7]; if(((W *)sp[-2])[1] == 1) { { W pap, arity; pap = sp[-2]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 6), -6) pap = sp[-2]; sp[-7] = sp[-6]; sp[-6] = 671; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 5)] = ((W *)pap)[i + 3]; } sp -= 5; togo = ((W *)pap)[0]; goto jump; } case 335: sp[3] = result; } else { { W pap, size; pap = sp[-2]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 6 - (size + 4), -6) pap = sp[-2]; hp[size + 3] = sp[-6]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; sp[-2] = (W)hp; hp += (size + 4); } sp -= 5; } ENSURE_FREESPACE(5 - 6 - 6, 0) hp[0] = 663; hp[1] = 2; hp[2] = 5; hp[3] = sp[2]; hp[4] = sp[1]; hp[5] = sp[0]; sp[-1] = sp[1]; sp[1] = (W)hp; hp += 6; ENSURE_FREESPACE(5 - 6 - 6, -1) hp[0] = 667; hp[1] = 2; hp[2] = 5; hp[3] = sp[2]; hp[4] = sp[-1]; hp[5] = sp[0]; sp[2] = (W)hp; hp += 6; sp[-1] = sp[3]; sp[0] = sp[2]; sp[2] = (W)zero819; sp[3] = 669; sp -= -4; goto call3; case 334: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -1; togo = sp[-1]; goto jump; } } case 339: fun876: FUNCTION_HEAD(876, 5) ENSURE_FREESPACE(0 - 7, -6) sp[-2] = sp[-6]; sp[-7] = sp[-3]; sp[-6] = 677; sp -= 5; goto fun816; case 338: sp[-1] = sp[3]; sp[3] = result; ENSURE_FREESPACE(5 - 6 - 7, -1) hp[0] = 673; hp[1] = 2; hp[2] = 6; hp[3] = sp[-1]; hp[4] = sp[0]; hp[5] = sp[1]; hp[6] = sp[2]; sp[2] = (W)hp; hp += 7; sp[0] = sp[3]; sp[1] = sp[2]; sp[2] = (W)zero293; sp[3] = 675; sp -= -4; goto call2; case 337: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(1 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[0 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -1; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(1 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[-1]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -1; togo = sp[-1]; goto jump; } } case 340: fun885: FUNCTION_HEAD(885, 1) ENSURE_FREESPACE(0 - 10, -2) ENSURE_FREESPACE(0 - 10 - 4, -1) hp[0] = 637; hp[1] = 2; hp[2] = 3; hp[3] = (W)zero795; sp[-2] = (W)hp; hp += 4; ENSURE_FREESPACE(0 - 10 - 4, -2) hp[0] = 607; hp[1] = 2; hp[2] = 3; hp[3] = sp[-2]; sp[-2] = (W)hp; hp += 4; ENSURE_FREESPACE(0 - 10 - 7, -2) hp[0] = 679; hp[1] = 1; hp[2] = 5; hp[3] = (W)zero876; hp[4] = sp[-2]; hp[5] = (W)zero577; hp[6] = (W)zero577; sp[-3] = sp[-2]; sp[-2] = (W)hp; hp += 7; sp[-5] = sp[-3]; sp[-3] = (W)zero577; sp[-4] = (W)zero577; sp[-6] = (W)zero876; goto fun876; case 342: fun_Out: ENSURE_FREESPACE(0 - 10, -2) { W c; c = sp[-2]; if(((W *)c)[0] == 683 && ((W *)c)[1] == 1) { cxgr_putchar(((W *)c)[3]); result = c; togo = sp[-1]; goto jump; } else { return make_result(sp, hp, cxgr_error_out_notchar); } } case 343: fun_In: { W n; n = cxgr_getchar(); if(n == CXGR_EOF) { result = sp[-2]; togo = sp[-1]; goto jump; } else { ENSURE_FREESPACE(0 - 10 - 4, -2) hp[0] = 683; hp[1] = 1; hp[2] = 2; hp[3] = n; result = (W)hp; hp += 4; togo = sp[-1]; goto jump; } } case 344: fun_Succ: { W c, n; c = sp[-2]; if(((W *)c)[0] == 683 && ((W *)c)[1] == 1) { n = ((W *)c)[3] + 2; if(n == 513) n = 1; ENSURE_FREESPACE(0 - 10 - 4, -2) hp[0] = 683; hp[1] = 1; hp[2] = 2; hp[3] = n; result = (W)hp; hp += 4; togo = sp[-1]; goto jump; } else { return make_result(sp, hp, cxgr_error_succ_notchar); } } fun_REPORT_OUT_OF_STACK: return make_result(sp, hp, cxgr_error_stack_oob); case 345: ENSURE_FREESPACE(0 - 10, -3) result = sp[-3]; togo = sp[-1]; goto jump; case 346: ENSURE_FREESPACE(0 - 10, -3) result = sp[-2]; togo = sp[-1]; goto jump; case 341: ENSURE_FREESPACE(0 - 10, -3) if(((W *)sp[-2])[0] == 683 && ((W *)sp[-2])[1] == 1 && ((W *)sp[-2])[3] == sp[-3]) { result = (W)zero_TRUE; } else { result = (W)zero_FALSE; } togo = sp[-1]; goto jump; call2: switch(((W *)sp[-4])[1]) { case 1: goto call2_1; case 2: goto call2_2; default: goto call2_default; } call2_1: ENSURE_FREESPACE(0 - 4, -4) { W first = sp[-4]; sp[-4] = sp[-3]; sp[-3] = first; } { W pap, arity; pap = sp[-3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 3), -4) pap = sp[-3]; sp[-3] = 695; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } sp -= 2; togo = ((W *)pap)[0]; goto jump; } case 347: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } call2_2: { W pap, arity; pap = sp[-4]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -4) pap = sp[-4]; { int i; for(i = 0; i < arity - 2; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } call2_default: { W pap, size; pap = sp[-4]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 4 - (size + 5), -4) pap = sp[-4]; hp[size + 3] = sp[-3]; hp[size + 4] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 2; result = (W)hp; hp += (size + 5); togo = sp[-1]; goto jump; } call3: switch(((W *)sp[-5])[1]) { case 1: goto call3_1; case 2: goto call3_2; case 3: goto call3_3; default: goto call3_default; } call3_1: ENSURE_FREESPACE(0 - 5, -5) { W first = sp[-5]; sp[-5] = sp[-4]; sp[-4] = first; } { W pap, arity; pap = sp[-4]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 4), -5) pap = sp[-4]; sp[-4] = 697; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 3)] = ((W *)pap)[i + 3]; } sp -= 3; togo = ((W *)pap)[0]; goto jump; } case 348: sp[-1] = result; sp -= -3; goto call2; call3_2: ENSURE_FREESPACE(0 - 5, -5) { W first = sp[-5]; sp[-5] = sp[-4]; sp[-4] = sp[-3]; sp[-3] = first; } { W pap, arity; pap = sp[-3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 3), -5) pap = sp[-3]; sp[-3] = 699; { int i; for(i = 0; i < arity - 2; i++) sp[-1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } sp -= 2; togo = ((W *)pap)[0]; goto jump; } case 349: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } call3_3: { W pap, arity; pap = sp[-5]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -5) pap = sp[-5]; { int i; for(i = 0; i < arity - 3; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } call3_default: { W pap, size; pap = sp[-5]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 5 - (size + 6), -5) pap = sp[-5]; hp[size + 3] = sp[-4]; hp[size + 4] = sp[-3]; hp[size + 5] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 3; result = (W)hp; hp += (size + 6); togo = sp[-1]; goto jump; } call4: switch(((W *)sp[-6])[1]) { case 1: goto call4_1; case 2: goto call4_2; case 3: goto call4_3; case 4: goto call4_4; default: goto call4_default; } call4_1: ENSURE_FREESPACE(0 - 6, -6) { W first = sp[-6]; sp[-6] = sp[-5]; sp[-5] = first; } { W pap, arity; pap = sp[-5]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 5), -6) pap = sp[-5]; sp[-5] = 701; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 4; togo = ((W *)pap)[0]; goto jump; } case 350: sp[-1] = result; sp -= -4; goto call3; call4_2: ENSURE_FREESPACE(0 - 6, -6) { W first = sp[-6]; sp[-6] = sp[-5]; sp[-5] = sp[-4]; sp[-4] = first; } { W pap, arity; pap = sp[-4]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 4), -6) pap = sp[-4]; sp[-4] = 703; { int i; for(i = 0; i < arity - 2; i++) sp[-1 - (arity - i + 3)] = ((W *)pap)[i + 3]; } sp -= 3; togo = ((W *)pap)[0]; goto jump; } case 351: sp[-1] = result; sp -= -3; goto call2; call4_3: ENSURE_FREESPACE(0 - 6, -6) { W first = sp[-6]; sp[-6] = sp[-5]; sp[-5] = sp[-4]; sp[-4] = sp[-3]; sp[-3] = first; } { W pap, arity; pap = sp[-3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 3), -6) pap = sp[-3]; sp[-3] = 705; { int i; for(i = 0; i < arity - 3; i++) sp[-1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } sp -= 2; togo = ((W *)pap)[0]; goto jump; } case 352: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } call4_4: { W pap, arity; pap = sp[-6]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -6) pap = sp[-6]; { int i; for(i = 0; i < arity - 4; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } call4_default: { W pap, size; pap = sp[-6]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 6 - (size + 7), -6) pap = sp[-6]; hp[size + 3] = sp[-5]; hp[size + 4] = sp[-4]; hp[size + 5] = sp[-3]; hp[size + 6] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 4; result = (W)hp; hp += (size + 7); togo = sp[-1]; goto jump; } call5: switch(((W *)sp[-7])[1]) { case 1: goto call5_1; case 2: goto call5_2; case 3: goto call5_3; case 4: goto call5_4; case 5: goto call5_5; default: goto call5_default; } call5_1: ENSURE_FREESPACE(0 - 7, -7) { W first = sp[-7]; sp[-7] = sp[-6]; sp[-6] = first; } { W pap, arity; pap = sp[-6]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 6), -7) pap = sp[-6]; sp[-6] = 707; { int i; for(i = 0; i < arity - 1; i++) sp[-1 - (arity - i + 5)] = ((W *)pap)[i + 3]; } sp -= 5; togo = ((W *)pap)[0]; goto jump; } case 353: sp[-1] = result; sp -= -5; goto call4; call5_2: ENSURE_FREESPACE(0 - 7, -7) { W first = sp[-7]; sp[-7] = sp[-6]; sp[-6] = sp[-5]; sp[-5] = first; } { W pap, arity; pap = sp[-5]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 5), -7) pap = sp[-5]; sp[-5] = 709; { int i; for(i = 0; i < arity - 2; i++) sp[-1 - (arity - i + 4)] = ((W *)pap)[i + 3]; } sp -= 4; togo = ((W *)pap)[0]; goto jump; } case 354: sp[-1] = result; sp -= -4; goto call3; call5_3: ENSURE_FREESPACE(0 - 7, -7) { W first = sp[-7]; sp[-7] = sp[-6]; sp[-6] = sp[-5]; sp[-5] = sp[-4]; sp[-4] = first; } { W pap, arity; pap = sp[-4]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 4), -7) pap = sp[-4]; sp[-4] = 711; { int i; for(i = 0; i < arity - 3; i++) sp[-1 - (arity - i + 3)] = ((W *)pap)[i + 3]; } sp -= 3; togo = ((W *)pap)[0]; goto jump; } case 355: sp[-1] = result; sp -= -3; goto call2; call5_4: ENSURE_FREESPACE(0 - 7, -7) { W first = sp[-7]; sp[-7] = sp[-6]; sp[-6] = sp[-5]; sp[-5] = sp[-4]; sp[-4] = sp[-3]; sp[-3] = first; } { W pap, arity; pap = sp[-3]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 3), -7) pap = sp[-3]; sp[-3] = 713; { int i; for(i = 0; i < arity - 4; i++) sp[-1 - (arity - i + 2)] = ((W *)pap)[i + 3]; } sp -= 2; togo = ((W *)pap)[0]; goto jump; } case 356: sp[-1] = result; if(((W *)sp[-1])[1] == 1) { { W pap, arity; pap = sp[-1]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(2 - (arity + 1), -1) pap = sp[-1]; { int i; for(i = 0; i < arity - 1; i++) sp[1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } sp -= -2; togo = ((W *)pap)[0]; goto jump; } } else { { W pap, size; pap = sp[-1]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(2 - 10 - (size + 4), -1) pap = sp[-1]; hp[size + 3] = sp[0]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 1; result = (W)hp; hp += (size + 4); sp -= -2; togo = sp[-1]; goto jump; } } call5_5: { W pap, arity; pap = sp[-7]; arity = ((W *)pap)[2]; ENSURE_FREESPACE(0 - (arity + 1), -7) pap = sp[-7]; { int i; for(i = 0; i < arity - 5; i++) sp[-1 - (arity - i + 0)] = ((W *)pap)[i + 3]; } togo = ((W *)pap)[0]; goto jump; } call5_default: { W pap, size; pap = sp[-7]; size = ((W *)pap)[2] - ((W *)pap)[1]; ENSURE_FREESPACE(0 - 7 - (size + 8), -7) pap = sp[-7]; hp[size + 3] = sp[-6]; hp[size + 4] = sp[-5]; hp[size + 5] = sp[-4]; hp[size + 6] = sp[-3]; hp[size + 7] = sp[-2]; { int i; for(i = 0; i < size + 3; i++) hp[i] = ((W *)pap)[i]; } hp[1] = hp[1] - 5; result = (W)hp; hp += (size + 8); togo = sp[-1]; goto jump; } case 0: ENSURE_FREESPACE(0 - 3, -1) ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 29; hp[1] = 2; hp[2] = 3; hp[3] = (W)zero55; sp[-2] = (W)hp; hp += 4; statics[0] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 29; hp[1] = 2; hp[2] = 3; hp[3] = statics[0]; sp[-2] = (W)hp; hp += 4; statics[1] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 5, -1) hp[0] = 29; hp[1] = 1; hp[2] = 3; hp[3] = statics[0]; hp[4] = statics[1]; sp[-2] = (W)hp; hp += 5; statics[2] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 29; hp[1] = 2; hp[2] = 3; hp[3] = statics[1]; sp[-2] = (W)hp; hp += 4; statics[3] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 29; hp[1] = 2; hp[2] = 3; hp[3] = statics[2]; sp[-2] = (W)hp; hp += 4; statics[4] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 29; hp[1] = 2; hp[2] = 3; hp[3] = statics[4]; sp[-2] = (W)hp; hp += 4; statics[5] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 5, -1) hp[0] = 29; hp[1] = 1; hp[2] = 3; hp[3] = statics[1]; hp[4] = statics[4]; sp[-2] = (W)hp; hp += 5; statics[6] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 5, -1) hp[0] = 29; hp[1] = 1; hp[2] = 3; hp[3] = statics[0]; hp[4] = statics[2]; sp[-2] = (W)hp; hp += 5; statics[7] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 9; hp[1] = 2; hp[2] = 3; hp[3] = (W)zero5; sp[-2] = (W)hp; hp += 4; statics[8] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 9; hp[1] = 2; hp[2] = 3; hp[3] = (W)zero9; sp[-2] = (W)hp; hp += 4; statics[9] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 115; hp[1] = 2; hp[2] = 3; hp[3] = (W)zero163; sp[-2] = (W)hp; hp += 4; statics[10] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 119; hp[1] = 2; hp[2] = 3; hp[3] = (W)zero163; sp[-2] = (W)hp; hp += 4; statics[11] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 29; hp[1] = 2; hp[2] = 3; hp[3] = statics[5]; sp[-2] = (W)hp; hp += 4; statics[12] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 5, -1) hp[0] = 29; hp[1] = 1; hp[2] = 3; hp[3] = statics[0]; hp[4] = statics[3]; sp[-2] = (W)hp; hp += 5; statics[13] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 29; hp[1] = 2; hp[2] = 3; hp[3] = (W)zero234; sp[-2] = (W)hp; hp += 4; statics[14] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 131; hp[1] = 3; hp[2] = 4; hp[3] = (W)zero163; sp[-2] = (W)hp; hp += 4; statics[15] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 131; hp[1] = 3; hp[2] = 4; hp[3] = (W)zero282; sp[-2] = (W)hp; hp += 4; statics[16] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 5, -1) hp[0] = 29; hp[1] = 1; hp[2] = 3; hp[3] = statics[0]; hp[4] = statics[8]; sp[-2] = (W)hp; hp += 5; statics[17] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 5, -1) hp[0] = 29; hp[1] = 1; hp[2] = 3; hp[3] = statics[0]; hp[4] = statics[17]; sp[-2] = (W)hp; hp += 5; statics[18] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 5, -1) hp[0] = 29; hp[1] = 1; hp[2] = 3; hp[3] = statics[0]; hp[4] = statics[18]; sp[-2] = (W)hp; hp += 5; statics[19] = sp[-2]; ENSURE_FREESPACE(0 - 3 - 4, -1) hp[0] = 93; hp[1] = 2; hp[2] = 3; hp[3] = statics[5]; sp[-2] = (W)hp; hp += 4; statics[20] = sp[-2]; sp[-3] = (W)zero885; sp[-2] = 715; sp -= 1; goto fun885; case 357: sp[-1] = result; statics[21] = sp[-1]; sp -= -1; return make_result(sp, hp, cxgr_success); } unhandled_jump(togo, info); return make_result(sp, hp, cxgr_error_internal); } int cxgr_static_count(void) { return 22; }