#include #include "prescheme.h" #include "scheme48vm-prelude.h" static char add_more_channels(long); static void enqueue_channelB(long, long); static long close_channelB(long); static void push_continuationB(char *, long); static long enter_string(char*, long); static char HcleanerB2190(long); static void push_exception_continuationB(long, long); static long make_registered_channel(long, long, long, long, long*); static long channel_close_error(long, long, long); static void HtopD8931(void); static long Hlookup2132(long, long, long); static long Hlookup2113(long, long, long); static void HtopD8924(void); static long collect_saving_temps(long, long, long*); void s48_set_extension_valueB(long); void s48_note_event(void); void s48_set_os_signal(long, long); long s48_exported_bindings(void); char * s48_set_gc_roots_baseB(char **); char s48_release_gc_roots_baseB(char *, char *); void s48_disable_interruptsB(void); void s48_push_gc_rootsB(char *, long); void s48_register_gc_rootB(char *); void s48_stack_setB(long, long); long s48_stack_ref(long); void s48_push(long); long s48_resetup_external_exception(long, long); void s48_enable_interruptsB(void); char s48_pop_gc_rootsB(void); void s48_mark_traced_channels_closedB(void); long s48_set_channel_os_index(long, long); long s48_cleaned_imported_bindings(void); long s48_copy_symbol_table(void); void s48_setup_external_exception(long, long); void s48_close_channel(long); char s48_warn_about_undefined_imported_bindings(void); void s48_define_exported_binding(char*, long); long s48_add_channel(long, long, long); long s48_get_imported_binding(char*); long s48_allocate_stob(long, long); void s48_initialize_vm(char *, long); long s48_restart(long, long); long s48_call_startup_procedure(char**, long); static long Snumber_of_channelsS; static long *Svm_channelsS; static long Spending_channels_headS; static long Spending_channels_tailS; static char * Sstack_beginS; static char * Sstack_endS; static char * SstackS; static char * Sstack_limitS; static long ScontS; static long Sbottom_of_stackS; static char Sstack_warningPS; static long SenvS; static long StemplateS; static char * Scode_pointerS; static long SvalS; static long Sexception_handlersS; static long Sinterrupt_handlersS; static long Scurrent_threadS; static long Ssession_dataS; static long Sfinalizer_alistS; static long Sfinalize_theseS; static long Senabled_interruptsS; static long Spending_interruptsS; static long Sinterrupted_templateS; static long Sinterrupt_templateS; static long Sexception_templateS; static long Ssaved_pcS; static long Slosing_opcodeS; static long Sos_signal_typeS; static long Sos_signal_argumentS; static char Sexternal_exceptionPS; static long Sexternal_exception_nargsS; static long Simported_bindingsS; static long Sexported_bindingsS; static long Sthe_symbol_tableS; static char * Sexternal_root_stackS; static char * Sexternal_root_stack_baseS; static char * Spermanent_external_rootsS; static void (*Sgc_root_procS)(void); static void (*Spost_gc_cleanupS)(void); char s48_Spending_interruptPS; long s48_Sextension_valueS; long s48_Scallback_return_stack_blockS; char s48_Spending_eventsPS; static char add_more_channels(long index_5X) { long arg0K0; long i_11X; long i_10X; long *new_vm_channels_9X; long new_count_8X; long y_7X; long x_6X; { x_6X = 1 + index_5X; y_7X = 8 + (Snumber_of_channelsS); if ((x_6X < y_7X)) { arg0K0 = y_7X; goto L2385;} else { arg0K0 = x_6X; goto L2385;}} L2385: { new_count_8X = arg0K0; new_vm_channels_9X = (long*)malloc(sizeof(long) * new_count_8X); if ((NULL == new_vm_channels_9X)) { return 0;} else { arg0K0 = 0; goto L2397;}} L2397: { i_10X = arg0K0; if ((i_10X == (Snumber_of_channelsS))) { arg0K0 = (Snumber_of_channelsS); goto L2412;} else { *(new_vm_channels_9X + i_10X) = (*((Svm_channelsS) + i_10X)); arg0K0 = (1 + i_10X); goto L2397;}} L2412: { i_11X = arg0K0; if ((i_11X == new_count_8X)) { free((Svm_channelsS)); Svm_channelsS = new_vm_channels_9X; Snumber_of_channelsS = new_count_8X; return 1;} else { *(new_vm_channels_9X + i_11X) = 1; arg0K0 = (1 + i_11X); goto L2412;}} } static void enqueue_channelB(long index_12X, long status_13X) { char * addr_18X; long x_17X; char * addr_16X; long val_15X; long channel_14X; { channel_14X = *((Svm_channelsS) + index_12X); val_15X = ((status_13X)<<2); addr_16X = (((char *) (-3 + channel_14X))) + 16; S48_WRITE_BARRIER(channel_14X, addr_16X, val_15X); *((long *) addr_16X) = val_15X; if ((1 == (*((long *) ((((char *) (-3 + channel_14X))) + 12))))) { if ((1 == (Spending_channels_headS))) { Spending_channels_headS = channel_14X; Spending_channels_tailS = channel_14X; return;} else { x_17X = Spending_channels_tailS; addr_18X = (((char *) (-3 + x_17X))) + 12; S48_WRITE_BARRIER(x_17X, addr_18X, channel_14X); *((long *) addr_18X) = channel_14X; Spending_channels_tailS = channel_14X; return;}} else { return;}} } static long close_channelB(long channel_19X) { long arg0K0; char * addr_27X; long status_26X; long v_25X; long v_24X; long v_23X; long v_22X; long x_21X; long os_index_20X; { os_index_20X = (((*((long *) ((((char *) (-3 + channel_19X))) + 8))))>>2); x_21X = *((long *) ((((char *) (-3 + channel_19X))) + 16)); if ((5 == x_21X)) { v_22X = ps_abort_fd_op(os_index_20X); enqueue_channelB(os_index_20X, v_22X); goto L8016;} else { goto L8016;}} L8016: { v_23X = *((long *) (((char *) (-3 + channel_19X)))); if ((4 == v_23X)) { goto L8031;} else { if ((12 == (*((long *) (((char *) (-3 + channel_19X))))))) { goto L8031;} else { v_24X = ps_close_fd(os_index_20X); arg0K0 = v_24X; goto L8038;}}} L8031: { v_25X = ps_close_fd(os_index_20X); arg0K0 = v_25X; goto L8038;} L8038: { status_26X = arg0K0; *((Svm_channelsS) + os_index_20X) = 1; addr_27X = ((char *) (-3 + channel_19X)); S48_WRITE_BARRIER(channel_19X, addr_27X, 0); *((long *) addr_27X) = 0; return status_26X;} } static void push_continuationB(char * code_pointer_28X, long size_29X) { long cont_32X; long template_31X; long pc_30X; { pc_30X = (((code_pointer_28X - (((char *) (-3 + (*((long *) (((char *) (-3 + (StemplateS)))))))))))<<2); template_31X = StemplateS; SstackS = ((SstackS) + -20); *((long *) ((SstackS) + 4)) = (128 | (4138 + (((size_29X)<<10)))); cont_32X = 3 + (((long) ((SstackS) + 8))); *((long *) ((((char *) (-3 + cont_32X))) + 4)) = pc_30X; *((long *) ((((char *) (-3 + cont_32X))) + 8)) = template_31X; *((long *) ((((char *) (-3 + cont_32X))) + 12)) = (SenvS); *((long *) (((char *) (-3 + cont_32X)))) = (ScontS); ScontS = cont_32X; return;} } static long enter_string(char *string_33X, long key_34X) { long arg0K0; long i_39X; long string_38X; char * addr_37X; long len_36X; long z_35X; { z_35X = strlen((char *) string_33X); len_36X = 1 + z_35X; addr_37X = ALLOCATE_SPACE(17, (4 + len_36X)); *((long *) addr_37X) = (70 + (((len_36X)<<8))); string_38X = 3 + (((long) (addr_37X + 4))); *((unsigned char *) ((((char *) (-3 + string_38X))) + z_35X)) = 0; arg0K0 = 0; goto L9546;} L9546: { i_39X = arg0K0; if ((i_39X < z_35X)) { *((unsigned char *) ((((char *) (-3 + string_38X))) + i_39X)) = ((*(string_33X + i_39X))); arg0K0 = (1 + i_39X); goto L9546;} else { return string_38X;}} } static char HcleanerB2190(long table_40X) { long arg0K1; long arg0K0; long v_51X; char * addr_50X; long new_foo_49X; char v_48X; char * addr_47X; long okay_46X; long foo_45X; long foo_44X; char temp_43X; long i_42X; long table_41X; { table_41X = s48_trace_value(table_40X); arg0K0 = 0; goto L9736;} L9736: { i_42X = arg0K0; temp_43X = 1024 == i_42X; if (temp_43X) { return temp_43X;} else { foo_44X = *((long *) ((((char *) (-3 + table_41X))) + (((i_42X)<<2)))); arg0K0 = foo_44X; arg0K1 = 1; goto L9756;}} L9756: { foo_45X = arg0K0; okay_46X = arg0K1; if ((1 == foo_45X)) { addr_47X = (((char *) (-3 + table_41X))) + (((i_42X)<<2)); S48_WRITE_BARRIER(table_41X, addr_47X, okay_46X); *((long *) addr_47X) = okay_46X; arg0K0 = (1 + i_42X); goto L9736;} else { v_48X = s48_extantP(foo_45X); if (v_48X) { new_foo_49X = s48_trace_value(foo_45X); addr_50X = (((char *) (-3 + new_foo_49X))) + 4; S48_WRITE_BARRIER(new_foo_49X, addr_50X, okay_46X); *((long *) addr_50X) = okay_46X; arg0K0 = new_foo_49X; goto L9761;} else { arg0K0 = okay_46X; goto L9761;}}} L9761: { v_51X = arg0K0; arg0K0 = (*((long *) ((((char *) (-3 + foo_45X))) + 4))); arg0K1 = v_51X; goto L9756;} } static void push_exception_continuationB(long exception_52X, long instruction_size_53X) { char * arg1K0; long arg0K1; long arg0K0; long v_58X; long i_57X; char * p_56X; long tem_55X; long opcode_54X; { opcode_54X = *((unsigned char *) (Scode_pointerS)); *((long *) (SstackS)) = (((instruction_size_53X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((exception_52X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (StemplateS); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((((Scode_pointerS) - (((char *) (-3 + (*((long *) (((char *) (-3 + (StemplateS)))))))))))<<2)); SstackS = ((SstackS) + -4); tem_55X = Sexception_templateS; StemplateS = tem_55X; Scode_pointerS = (((char *) (-3 + (*((long *) (((char *) (-3 + tem_55X)))))))); arg1K0 = ((SstackS) + 4); arg0K1 = 0; goto L9969;} L9969: { p_56X = arg1K0; i_57X = arg0K1; if ((2 == (3 & (*((long *) p_56X))))) { if ((26 == (*((long *) p_56X)))) { arg0K0 = (-1 + i_57X); goto L9910;} else { arg0K0 = i_57X; goto L9910;}} else { arg1K0 = (p_56X + 4); arg0K1 = (1 + i_57X); goto L9969;}} L9910: { v_58X = arg0K0; push_continuationB((Scode_pointerS), v_58X); *((long *) (SstackS)) = (((opcode_54X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((exception_52X)<<2)); SstackS = ((SstackS) + -4); return;} } static long make_registered_channel(long mode_59X, long id_60X, long os_index_61X, long key_62X, long *TT0) { long x_66X; char * addr_65X; char x_64X; char temp_63X; { temp_63X = os_index_61X < (Snumber_of_channelsS); if (temp_63X) { goto L10837;} else { x_64X = add_more_channels(os_index_61X); if (x_64X) { goto L10837;} else { *TT0 = 9; return 1;}}} L10837: { if ((1 == (*((Svm_channelsS) + os_index_61X)))) { addr_65X = ALLOCATE_SPACE(6, 24); *((long *) addr_65X) = 5146; x_66X = 3 + (((long) (addr_65X + 4))); *((long *) (((char *) (-3 + x_66X)))) = (((mode_59X)<<2)); *((long *) ((((char *) (-3 + x_66X))) + 4)) = id_60X; *((long *) ((((char *) (-3 + x_66X))) + 8)) = (((os_index_61X)<<2)); *((long *) ((((char *) (-3 + x_66X))) + 12)) = 1; *((long *) ((((char *) (-3 + x_66X))) + 16)) = 1; *((Svm_channelsS) + os_index_61X) = x_66X; *TT0 = 9; return x_66X;} else { *TT0 = 11; return 1;}} } static long channel_close_error(long status_67X, long index_68X, long id_69X) { long v_70X; { ps_write_string("Error: ", (stderr)); ps_write_string((ps_error_string(status_67X)), (stderr)); { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } ps_write_string(" while closing port ", (stderr)); if ((3 == (3 & id_69X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + id_69X))) + -4))))>>2))))) { ps_write_string((((char *)(((char *) (-3 + id_69X))))), (stderr)); goto L11483;} else { goto L11477;}} else { goto L11477;}} L11483: { PS_WRITE_CHAR(10, (stderr), v_70X) return v_70X;} L11477: { ps_write_integer((((index_68X)>>2)), (stderr)); goto L11483;} } static void HtopD8931(void) { char * arg1K0; long arg0K1; long arg0K0; long env_113X; long env_112X; long last_env_111X; long cont_110X; long env_109X; long v_108X; long env_107X; long p_106X; long arg_count_105X; long i_104X; char * p_103X; char * addr_102X; long val_101X; long unused_100X; char * a_99X; char x_98X; long pair_97X; long v_96X; long v_95X; long env_94X; long alist_93X; long x2_92X; char * cell_91X; long i_90X; long x2_89X; char * cell_88X; long v_87X; long v_86X; long v_85X; long v_84X; long v_83X; long v_82X; long v_81X; long v_80X; long v_79X; long v_78X; long v_77X; long v_76X; long v_75X; long v_74X; char * frame_73X; long length_72X; char * frame_71X; { arg1K0 = (Sexternal_root_stackS); goto L6275;} L6275: { frame_71X = arg1K0; if ((frame_71X == NULL)) { arg1K0 = (Spermanent_external_rootsS); goto L6301;} else { length_72X = *((long *) frame_71X); arg0K0 = 0; goto L6283;}} L6301: { frame_73X = arg1K0; if ((frame_73X == NULL)) { s48_initializing_gc_root(); v_74X = s48_trace_value((Simported_bindingsS)); Simported_bindingsS = v_74X; v_75X = s48_trace_value((Sexported_bindingsS)); Sexported_bindingsS = v_75X; Ssaved_pcS = (((((Scode_pointerS) - (((char *) (-3 + (*((long *) (((char *) (-3 + (StemplateS)))))))))))<<2)); v_76X = s48_trace_value((StemplateS)); StemplateS = v_76X; v_77X = s48_trace_value((SvalS)); SvalS = v_77X; v_78X = s48_trace_value((Scurrent_threadS)); Scurrent_threadS = v_78X; v_79X = s48_trace_value((Ssession_dataS)); Ssession_dataS = v_79X; v_80X = s48_trace_value((Sexception_handlersS)); Sexception_handlersS = v_80X; v_81X = s48_trace_value((Sexception_templateS)); Sexception_templateS = v_81X; v_82X = s48_trace_value((Sinterrupt_handlersS)); Sinterrupt_handlersS = v_82X; v_83X = s48_trace_value((Sinterrupt_templateS)); Sinterrupt_templateS = v_83X; v_84X = s48_trace_value((Sinterrupted_templateS)); Sinterrupted_templateS = v_84X; v_85X = s48_trace_value((Sfinalize_theseS)); Sfinalize_theseS = v_85X; v_86X = s48_trace_value((Sos_signal_typeS)); Sos_signal_typeS = v_86X; v_87X = s48_trace_value((Sos_signal_argumentS)); Sos_signal_argumentS = v_87X; arg0K0 = (Sfinalizer_alistS); goto L5309;} else { cell_88X = ((char *) (*((long *) (frame_73X + 4)))); x2_89X = s48_trace_value((*((long *) cell_88X))); *((long *) cell_88X) = x2_89X; arg1K0 = (((char *) (*((long *) frame_73X)))); goto L6301;}} L6283: { i_90X = arg0K0; if ((i_90X == length_72X)) { arg1K0 = (((char *) (*((long *) (frame_71X + 4))))); goto L6275;} else { cell_91X = ((char *) (*((long *) (frame_71X + (8 + (((i_90X)<<2))))))); x2_92X = s48_trace_value((*((long *) cell_91X))); *((long *) cell_91X) = x2_92X; arg0K0 = (1 + i_90X); goto L6283;}} L5309: { alist_93X = arg0K0; if ((25 == alist_93X)) { env_94X = s48_trace_value((SenvS)); SenvS = env_94X; v_95X = s48_trace_value((Spending_channels_headS)); Spending_channels_headS = v_95X; v_96X = s48_trace_value((Spending_channels_tailS)); Spending_channels_tailS = v_96X; if ((Sstack_warningPS)) { arg1K0 = (Sstack_beginS); goto L5903;} else { goto L5936;}} else { pair_97X = *((long *) (((char *) (-3 + alist_93X)))); x_98X = s48_extantP((*((long *) (((char *) (-3 + pair_97X)))))); if (x_98X) { goto L5334;} else { s48_trace_stob_contentsB((*((long *) (((char *) (-3 + pair_97X)))))); goto L5334;}}} L5903: { a_99X = arg1K0; if ((252645135 == (*((long *) a_99X)))) { arg1K0 = (a_99X + 4); goto L5903;} else { unused_100X = (((a_99X - (Sstack_beginS)))>>2); if ((unused_100X < 30)) { { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } ps_write_string("[Alert: stack overconsumption (", (stderr)); ps_write_integer(unused_100X, (stderr)); ps_write_string("); please inform the Scheme 48 implementors]", (stderr)); { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } Sstack_warningPS = 0; goto L5936;} else { goto L5936;}}} L5936: { arg1K0 = ((SstackS) + 4); arg0K1 = 0; goto L6001;} L5334: { val_101X = s48_trace_value((*((long *) ((((char *) (-3 + pair_97X))) + 4)))); addr_102X = (((char *) (-3 + pair_97X))) + 4; S48_WRITE_BARRIER(pair_97X, addr_102X, val_101X); *((long *) addr_102X) = val_101X; arg0K0 = (*((long *) ((((char *) (-3 + alist_93X))) + 4))); goto L5309;} L6001: { p_103X = arg1K0; i_104X = arg0K1; if ((2 == (3 & (*((long *) p_103X))))) { if ((26 == (*((long *) p_103X)))) { arg0K0 = (-1 + i_104X); goto L5938;} else { arg0K0 = i_104X; goto L5938;}} else { arg1K0 = (p_103X + 4); arg0K1 = (1 + i_104X); goto L6001;}} L5938: { arg_count_105X = arg0K0; s48_trace_locationsB(((SstackS) + 4), ((SstackS) + (4 + (((arg_count_105X)<<2))))); p_106X = SenvS; if ((3 == (3 & p_106X))) { if ((p_106X < (((long) (Sstack_beginS))))) { goto L5954;} else { if (((((long) (Sstack_endS))) < p_106X)) { goto L5954;} else { env_107X = SenvS; arg0K0 = env_107X; goto L6114;}}} else { goto L5954;}} L5954: { v_108X = s48_trace_value((SenvS)); SenvS = v_108X; goto L5959;} L6114: { env_109X = arg0K0; if ((3 == (3 & env_109X))) { if ((env_109X < (((long) (Sstack_beginS))))) { goto L5959;} else { if (((((long) (Sstack_endS))) < env_109X)) { goto L5959;} else { s48_trace_stob_contentsB(env_109X); arg0K0 = (*((long *) (((char *) (-3 + env_109X))))); goto L6114;}}} else { goto L5959;}} L5959: { arg0K0 = (ScontS); arg0K1 = 0; goto L5964;} L5964: { cont_110X = arg0K0; last_env_111X = arg0K1; env_112X = *((long *) ((((char *) (-3 + cont_110X))) + 12)); s48_trace_stob_contentsB(cont_110X); if ((env_112X == last_env_111X)) { goto L5982;} else { arg0K0 = env_112X; goto L6069;}} L5982: { if ((cont_110X == (Sbottom_of_stackS))) { return;} else { arg0K0 = (*((long *) (((char *) (-3 + cont_110X))))); arg0K1 = env_112X; goto L5964;}} L6069: { env_113X = arg0K0; if ((3 == (3 & env_113X))) { if ((env_113X < (((long) (Sstack_beginS))))) { goto L5982;} else { if (((((long) (Sstack_endS))) < env_113X)) { goto L5982;} else { s48_trace_stob_contentsB(env_113X); arg0K0 = (*((long *) (((char *) (-3 + env_113X))))); goto L6069;}}} else { goto L5982;}} } static long Hlookup2132(long table_114X, long string_115X, long key_116X) { long arg0K1; long arg0K0; long len_127X; long s2_126X; char * addr_125X; long x_124X; char * addr_123X; long foo_122X; long bucket_121X; long index_120X; long h_119X; long i_118X; long n_117X; { n_117X = -1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + string_115X))) + -4))))>>8)); arg0K0 = 0; arg0K1 = 0; goto L13104;} L13104: { i_118X = arg0K0; h_119X = arg0K1; if ((i_118X < n_117X)) { arg0K0 = (1 + i_118X); arg0K1 = (h_119X + (((*((unsigned char *) ((((char *) (-3 + string_115X))) + i_118X)))))); goto L13104;} else { index_120X = 1023 & h_119X; bucket_121X = *((long *) ((((char *) (-3 + table_114X))) + (((index_120X)<<2)))); arg0K0 = bucket_121X; goto L13072;}} L13072: { foo_122X = arg0K0; if ((1 == foo_122X)) { addr_123X = ALLOCATE_SPACE(14, 20); *((long *) addr_123X) = 4154; x_124X = 3 + (((long) (addr_123X + 4))); *((long *) (((char *) (-3 + x_124X)))) = string_115X; *((long *) ((((char *) (-3 + x_124X))) + 4)) = 1; *((long *) ((((char *) (-3 + x_124X))) + 8)) = 13; *((long *) ((((char *) (-3 + x_124X))) + 12)) = bucket_121X; addr_125X = (((char *) (-3 + table_114X))) + (((index_120X)<<2)); S48_WRITE_BARRIER(table_114X, addr_125X, x_124X); *((long *) addr_125X) = x_124X; return x_124X;} else { s2_126X = *((long *) (((char *) (-3 + foo_122X)))); len_127X = (long)(((unsigned long)(*((long *) ((((char *) (-3 + string_115X))) + -4))))>>8); if ((len_127X == ((long)(((unsigned long)(*((long *) ((((char *) (-3 + s2_126X))) + -4))))>>8)))) { if (((!memcmp((void *)(((char *) (-3 + s2_126X))), (void *)(((char *) (-3 + string_115X))),len_127X)))) { return foo_122X;} else { goto L13088;}} else { goto L13088;}}} L13088: { arg0K0 = (*((long *) ((((char *) (-3 + foo_122X))) + 12))); goto L13072;} } static long Hlookup2113(long table_128X, long string_129X, long key_130X) { long arg0K1; long arg0K0; long len_141X; long s2_140X; char * addr_139X; long x_138X; char * addr_137X; long foo_136X; long bucket_135X; long index_134X; long h_133X; long i_132X; long n_131X; { n_131X = -1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + string_129X))) + -4))))>>8)); arg0K0 = 0; arg0K1 = 0; goto L13229;} L13229: { i_132X = arg0K0; h_133X = arg0K1; if ((i_132X < n_131X)) { arg0K0 = (1 + i_132X); arg0K1 = (h_133X + (((*((unsigned char *) ((((char *) (-3 + string_129X))) + i_132X)))))); goto L13229;} else { index_134X = 1023 & h_133X; bucket_135X = *((long *) ((((char *) (-3 + table_128X))) + (((index_134X)<<2)))); arg0K0 = bucket_135X; goto L13197;}} L13197: { foo_136X = arg0K0; if ((1 == foo_136X)) { addr_137X = ALLOCATE_SPACE(14, 20); *((long *) addr_137X) = 4154; x_138X = 3 + (((long) (addr_137X + 4))); *((long *) (((char *) (-3 + x_138X)))) = string_129X; *((long *) ((((char *) (-3 + x_138X))) + 4)) = 5; *((long *) ((((char *) (-3 + x_138X))) + 8)) = 13; *((long *) ((((char *) (-3 + x_138X))) + 12)) = bucket_135X; addr_139X = (((char *) (-3 + table_128X))) + (((index_134X)<<2)); S48_WRITE_BARRIER(table_128X, addr_139X, x_138X); *((long *) addr_139X) = x_138X; return x_138X;} else { s2_140X = *((long *) (((char *) (-3 + foo_136X)))); len_141X = (long)(((unsigned long)(*((long *) ((((char *) (-3 + string_129X))) + -4))))>>8); if ((len_141X == ((long)(((unsigned long)(*((long *) ((((char *) (-3 + s2_140X))) + -4))))>>8)))) { if (((!memcmp((void *)(((char *) (-3 + s2_140X))), (void *)(((char *) (-3 + string_129X))),len_141X)))) { return foo_136X;} else { goto L13213;}} else { goto L13213;}}} L13213: { arg0K0 = (*((long *) ((((char *) (-3 + foo_136X))) + 12))); goto L13197;} } static void HtopD8924(void) { long arg0K2; long arg0K1; long arg0K0; long status_168X; long id_167X; long new_166X; long id_165X; long header_164X; long channel_163X; long i_162X; char * addr_161X; long l_160X; long v_159X; char * addr_158X; char * addr_157X; char * addr_156X; char * addr_155X; long val_154X; char tracedP_153X; long next_152X; long thing_151X; long pair_150X; long alist_149X; long l2_148X; long goners_147X; long okay_146X; long alist_145X; long pc_144X; long tem_143X; long new_142X; { new_142X = s48_trace_value((Sthe_symbol_tableS)); HcleanerB2190(new_142X); Sthe_symbol_tableS = new_142X; tem_143X = StemplateS; pc_144X = Ssaved_pcS; StemplateS = tem_143X; Scode_pointerS = ((((char *) (-3 + (*((long *) (((char *) (-3 + tem_143X)))))))) + (((pc_144X)>>2))); arg0K0 = (Sfinalizer_alistS); arg0K1 = 25; arg0K2 = 25; goto L7742;} L7742: { alist_145X = arg0K0; okay_146X = arg0K1; goners_147X = arg0K2; if ((25 == alist_145X)) { Sfinalizer_alistS = okay_146X; l2_148X = Sfinalize_theseS; if ((25 == goners_147X)) { arg0K0 = l2_148X; goto L7750;} else { arg0K0 = goners_147X; goto L7803;}} else { alist_149X = s48_trace_value(alist_145X); pair_150X = s48_trace_value((*((long *) (((char *) (-3 + alist_149X)))))); thing_151X = *((long *) (((char *) (-3 + pair_150X)))); next_152X = *((long *) ((((char *) (-3 + alist_149X))) + 4)); tracedP_153X = s48_extantP(thing_151X); val_154X = s48_trace_value(thing_151X); addr_155X = ((char *) (-3 + pair_150X)); S48_WRITE_BARRIER(pair_150X, addr_155X, val_154X); *((long *) addr_155X) = val_154X; addr_156X = ((char *) (-3 + alist_149X)); S48_WRITE_BARRIER(alist_149X, addr_156X, pair_150X); *((long *) addr_156X) = pair_150X; if (tracedP_153X) { addr_157X = (((char *) (-3 + alist_149X))) + 4; S48_WRITE_BARRIER(alist_149X, addr_157X, okay_146X); *((long *) addr_157X) = okay_146X; arg0K0 = next_152X; arg0K1 = alist_149X; arg0K2 = goners_147X; goto L7742;} else { addr_158X = (((char *) (-3 + alist_149X))) + 4; S48_WRITE_BARRIER(alist_149X, addr_158X, goners_147X); *((long *) addr_158X) = goners_147X; arg0K0 = next_152X; arg0K1 = okay_146X; arg0K2 = alist_149X; goto L7742;}}} L7750: { v_159X = arg0K0; Sfinalize_theseS = v_159X; arg0K0 = 0; goto L12536;} L7803: { l_160X = arg0K0; if ((25 == (*((long *) ((((char *) (-3 + l_160X))) + 4))))) { addr_161X = (((char *) (-3 + l_160X))) + 4; S48_WRITE_BARRIER(l_160X, addr_161X, l2_148X); *((long *) addr_161X) = l2_148X; arg0K0 = goners_147X; goto L7750;} else { arg0K0 = (*((long *) ((((char *) (-3 + l_160X))) + 4))); goto L7803;}} L12536: { i_162X = arg0K0; if ((i_162X == (Snumber_of_channelsS))) { Spending_interruptsS = (4 | (Spending_interruptsS)); if ((0 == ((Spending_interruptsS) & (Senabled_interruptsS)))) { s48_Spending_interruptPS = 0; if ((s48_Spending_eventsPS)) { s48_Spending_interruptPS = 1; return;} else { return;}} else { s48_Spending_interruptPS = 1; return;}} else { channel_163X = *((Svm_channelsS) + i_162X); if ((1 == channel_163X)) { goto L12572;} else { header_164X = *((long *) ((((char *) (-3 + channel_163X))) + -4)); if ((3 == (3 & header_164X))) { arg0K0 = header_164X; goto L12565;} else { if ((0 == (*((long *) (((char *) (-3 + channel_163X))))))) { arg0K0 = 1; goto L12565;} else { id_165X = *((long *) ((((char *) (-3 + channel_163X))) + 4)); if ((0 == (3 & id_165X))) { arg0K0 = id_165X; goto L12248;} else { if ((3 == (3 & (*((long *) ((((char *) (-3 + id_165X))) + -4)))))) { arg0K0 = (*((long *) ((((char *) (-3 + id_165X))) + -4))); goto L12248;} else { arg0K0 = id_165X; goto L12248;}}}}}}} L12572: { arg0K0 = (1 + i_162X); goto L12536;} L12565: { new_166X = arg0K0; *((Svm_channelsS) + i_162X) = new_166X; goto L12572;} L12248: { id_167X = arg0K0; status_168X = close_channelB(channel_163X); if ((status_168X == NO_ERRORS)) { goto L12263;} else { channel_close_error(status_168X, (*((long *) ((((char *) (-3 + channel_163X))) + 8))), id_167X); goto L12263;}} L12263: { ps_write_string("Channel closed: ", (stderr)); if ((0 == (3 & id_167X))) { ps_write_integer((((id_167X)>>2)), (stderr)); goto L12281;} else { ps_write_string((((char *)(((char *) (-3 + id_167X))))), (stderr)); goto L12281;}} L12281: { ps_write_string(" ", (stderr)); ps_write_integer(((((*((long *) ((((char *) (-3 + channel_163X))) + 8))))>>2)), (stderr)); { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } arg0K0 = 1; goto L12565;} } static long collect_saving_temps(long value0_169X, long value1_170X, long *TT0) { long value0_172X; long value1_171X; { s48_begin_collection(); (*(Sgc_root_procS))(); value1_171X = s48_trace_value(value1_170X); value0_172X = s48_trace_value(value0_169X); s48_do_gc(); (*(Spost_gc_cleanupS))(); s48_end_collection(); *TT0 = value1_171X; return value0_172X;} } void s48_set_extension_valueB(long value_173X) { { s48_Sextension_valueS = value_173X; return;} } void s48_note_event(void) { { s48_Spending_eventsPS = 1; s48_Spending_interruptPS = 1; return;} } void s48_set_os_signal(long type_174X, long argument_175X) { { Sos_signal_typeS = type_174X; Sos_signal_argumentS = argument_175X; return;} } long s48_exported_bindings(void) { { return (Sexported_bindingsS);} } char * s48_set_gc_roots_baseB(char * *TT0) { char * old_base_176X; { old_base_176X = Sexternal_root_stack_baseS; Sexternal_root_stack_baseS = (Sexternal_root_stackS); *TT0 = (Sexternal_root_stackS); return old_base_176X;} } char s48_release_gc_roots_baseB(char * old_base_177X, char * old_stack_178X) { char okayP_179X; { okayP_179X = (Sexternal_root_stackS) == (Sexternal_root_stack_baseS); Sexternal_root_stack_baseS = old_base_177X; Sexternal_root_stackS = old_stack_178X; return okayP_179X;} } void s48_disable_interruptsB(void) { { s48_Spending_interruptPS = 0; Senabled_interruptsS = 0; return;} } void s48_push_gc_rootsB(char * frame_180X, long n_181X) { { *((long *) frame_180X) = n_181X; *((long *) (frame_180X + 4)) = (((long) (Sexternal_root_stackS))); Sexternal_root_stackS = frame_180X; return;} } void s48_register_gc_rootB(char * loc_addr_182X) { char * frame_183X; { frame_183X = (char *)malloc(8); if ((frame_183X == NULL)) { ps_error("out of memory registering a global root", 0); goto L3195;} else { goto L3195;}} L3195: { *((long *) frame_183X) = (((long) (Spermanent_external_rootsS))); *((long *) (frame_183X + 4)) = (((long) loc_addr_182X)); Spermanent_external_rootsS = frame_183X; return;} } void s48_stack_setB(long x_184X, long value_185X) { { *((long *) ((SstackS) + (4 + (((x_184X)<<2))))) = value_185X; return;} } long s48_stack_ref(long i_186X) { { return (*((long *) ((SstackS) + (4 + (((i_186X)<<2))))));} } void s48_push(long x_187X) { { *((long *) (SstackS)) = x_187X; SstackS = ((SstackS) + -4); return;} } long s48_resetup_external_exception(long new_why_188X, long additional_nargs_189X) { long old_why_191X; long old_nargs_190X; { old_nargs_190X = Sexternal_exception_nargsS; old_why_191X = *((long *) ((SstackS) + (4 + (((old_nargs_190X)<<2))))); *((long *) ((SstackS) + (4 + (((old_nargs_190X)<<2))))) = (((new_why_188X)<<2)); Sexternal_exception_nargsS = (old_nargs_190X + additional_nargs_189X); return old_why_191X;} } void s48_enable_interruptsB(void) { { Senabled_interruptsS = -1; if ((0 == ((Spending_interruptsS) & (Senabled_interruptsS)))) { s48_Spending_interruptPS = 0; if ((s48_Spending_eventsPS)) { s48_Spending_interruptPS = 1; return;} else { return;}} else { s48_Spending_interruptPS = 1; return;}} } char s48_pop_gc_rootsB(void) { { if (((Sexternal_root_stackS) == (Sexternal_root_stack_baseS))) { return 0;} else { Sexternal_root_stackS = (((char *) (*((long *) ((Sexternal_root_stackS) + 4))))); return 1;}} } void s48_mark_traced_channels_closedB(void) { long arg0K0; char * addr_197X; char * addr_196X; long descriptor_195X; long header_194X; long channel_193X; long i_192X; { arg0K0 = 0; goto L6352;} L6352: { i_192X = arg0K0; if ((i_192X == (Snumber_of_channelsS))) { return;} else { channel_193X = *((Svm_channelsS) + i_192X); if ((1 == channel_193X)) { goto L6412;} else { header_194X = *((long *) ((((char *) (-3 + channel_193X))) + -4)); if ((3 == (3 & header_194X))) { ps_write_string("Channel closed in dumped image: ", (stderr)); descriptor_195X = *((long *) ((((char *) (-3 + channel_193X))) + 4)); if ((0 == (3 & descriptor_195X))) { ps_write_integer(((((*((long *) ((((char *) (-3 + channel_193X))) + 4))))>>2)), (stderr)); goto L6398;} else { ps_write_string((((char *)(((char *) (-3 + (*((long *) ((((char *) (-3 + channel_193X))) + 4)))))))), (stderr)); goto L6398;}} else { goto L6412;}}}} L6412: { arg0K0 = (1 + i_192X); goto L6352;} L6398: { { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } addr_196X = ((char *) (-3 + header_194X)); S48_WRITE_BARRIER(header_194X, addr_196X, 0); *((long *) addr_196X) = 0; addr_197X = (((char *) (-3 + header_194X))) + 8; S48_WRITE_BARRIER(header_194X, addr_197X, -4); *((long *) addr_197X) = -4; goto L6412;} } long s48_set_channel_os_index(long channel_198X, long os_index_199X) { char * addr_206X; long val_205X; long v_204X; long x_203X; long old_index_202X; char x_201X; char temp_200X; { temp_200X = os_index_199X < (Snumber_of_channelsS); if (temp_200X) { goto L7921;} else { x_201X = add_more_channels(os_index_199X); if (x_201X) { goto L7921;} else { return 36;}}} L7921: { if ((1 == (*((Svm_channelsS) + os_index_199X)))) { old_index_202X = (((*((long *) ((((char *) (-3 + channel_198X))) + 8))))>>2); x_203X = *((long *) ((((char *) (-3 + channel_198X))) + 16)); if ((5 == x_203X)) { v_204X = ps_abort_fd_op(old_index_202X); enqueue_channelB(old_index_202X, v_204X); goto L7907;} else { goto L7907;}} else { return 44;}} L7907: { *((Svm_channelsS) + old_index_202X) = 1; *((Svm_channelsS) + os_index_199X) = channel_198X; val_205X = ((os_index_199X)<<2); addr_206X = (((char *) (-3 + channel_198X))) + 8; S48_WRITE_BARRIER(channel_198X, addr_206X, val_205X); *((long *) addr_206X) = val_205X; return 5;} } long s48_cleaned_imported_bindings(void) { long arg0K1; long arg0K0; long v_220X; char * addr_219X; long entry_218X; char * addr_217X; long new_foo_216X; char v_215X; char * addr_214X; long okay_213X; long foo_212X; long i_211X; long foo_210X; long i_209X; long table_208X; long table_207X; { table_207X = s48_trace_value((Simported_bindingsS)); table_208X = s48_trace_value(table_207X); arg0K0 = 0; goto L8598;} L8598: { i_209X = arg0K0; if ((1024 == i_209X)) { arg0K0 = 0; goto L9687;} else { foo_210X = *((long *) ((((char *) (-3 + table_208X))) + (((i_209X)<<2)))); arg0K0 = foo_210X; arg0K1 = 1; goto L8618;}} L9687: { i_211X = arg0K0; if ((1024 == i_211X)) { return table_207X;} else { arg0K0 = (*((long *) ((((char *) (-3 + table_207X))) + (((i_211X)<<2))))); goto L9695;}} L8618: { foo_212X = arg0K0; okay_213X = arg0K1; if ((1 == foo_212X)) { addr_214X = (((char *) (-3 + table_208X))) + (((i_209X)<<2)); S48_WRITE_BARRIER(table_208X, addr_214X, okay_213X); *((long *) addr_214X) = okay_213X; arg0K0 = (1 + i_209X); goto L8598;} else { v_215X = s48_extantP(foo_212X); if (v_215X) { new_foo_216X = s48_trace_value(foo_212X); addr_217X = (((char *) (-3 + new_foo_216X))) + 12; S48_WRITE_BARRIER(new_foo_216X, addr_217X, okay_213X); *((long *) addr_217X) = okay_213X; arg0K0 = new_foo_216X; goto L8623;} else { arg0K0 = okay_213X; goto L8623;}}} L9695: { entry_218X = arg0K0; if ((1 == entry_218X)) { arg0K0 = (1 + i_211X); goto L9687;} else { addr_219X = (((char *) (-3 + entry_218X))) + 8; S48_WRITE_BARRIER(entry_218X, addr_219X, 529); *((long *) addr_219X) = 529; arg0K0 = (*((long *) ((((char *) (-3 + entry_218X))) + 12))); goto L9695;}} L8623: { v_220X = arg0K0; arg0K0 = (*((long *) ((((char *) (-3 + foo_212X))) + 12))); arg0K1 = v_220X; goto L8618;} } long s48_copy_symbol_table(void) { long new_221X; { new_221X = s48_trace_value((Sthe_symbol_tableS)); HcleanerB2190(new_221X); return new_221X;} } void s48_setup_external_exception(long why_222X, long nargs_223X) { { push_exception_continuationB(why_222X, 1); if ((10 < nargs_223X)) { ps_error("too many arguments from external exception", 0); goto L11039;} else { goto L11039;}} L11039: { Sexternal_exception_nargsS = nargs_223X; Sexternal_exceptionPS = 1; return;} } void s48_close_channel(long os_index_224X) { long obj_225X; { if ((os_index_224X < 0)) { return;} else { if ((os_index_224X < (Snumber_of_channelsS))) { obj_225X = *((Svm_channelsS) + os_index_224X); if ((3 == (3 & obj_225X))) { if ((6 == (31 & ((((*((long *) ((((char *) (-3 + obj_225X))) + -4))))>>2))))) { close_channelB((*((Svm_channelsS) + os_index_224X))); return;} else { return;}} else { return;}} else { return;}}} } char s48_warn_about_undefined_imported_bindings(void) { long arg0K0; long name_231X; long entry_230X; char temp_229X; long i_228X; long table_227X; FILE * out_226X; { out_226X = stderr; table_227X = Simported_bindingsS; arg0K0 = 0; goto L11579;} L11579: { i_228X = arg0K0; temp_229X = 1024 == i_228X; if (temp_229X) { return temp_229X;} else { arg0K0 = (*((long *) ((((char *) (-3 + table_227X))) + (((i_228X)<<2))))); goto L11587;}} L11587: { entry_230X = arg0K0; if ((1 == entry_230X)) { arg0K0 = (1 + i_228X); goto L11579;} else { if ((17 == (255 & (*((long *) ((((char *) (-3 + entry_230X))) + 8)))))) { name_231X = *((long *) (((char *) (-3 + entry_230X)))); ps_write_string("undefined imported name ", out_226X); if ((3 == (3 & name_231X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + name_231X))) + -4))))>>2))))) { ps_write_string((((char *)(((char *) (-3 + name_231X))))), out_226X); goto L11567;} else { goto L11565;}} else { goto L11565;}} else { goto L11590;}}} L11567: { { long ignoreXX; PS_WRITE_CHAR(10, out_226X, ignoreXX) } goto L11590;} L11565: { ps_write_string("", out_226X); goto L11567;} L11590: { arg0K0 = (*((long *) ((((char *) (-3 + entry_230X))) + 12))); goto L11587;} } void s48_define_exported_binding(char *name_232X, long value_233X) { char arg2K0; long arg0K2; long arg0K1; long arg0K0; char * addr_246X; long x_245X; long name_244X; long value_243X; long key_242X; long temp_241X; long key_240X; char okayP_239X; char v_238X; long temp1_237X; long temp0_236X; char v_235X; long space_234X; { space_234X = 6 + ((((4 + (strlen((char *) name_232X))))>>2)); v_235X = AVAILABLEp(space_234X); if (v_235X) { arg2K0 = 1; arg0K1 = 0; arg0K2 = value_233X; goto L14359;} else { temp0_236X = collect_saving_temps(value_233X, 1, &temp1_237X); v_238X = AVAILABLEp(space_234X); if (v_238X) { arg2K0 = 1; arg0K1 = 0; arg0K2 = temp0_236X; goto L14359;} else { arg2K0 = 0; arg0K1 = 0; arg0K2 = temp0_236X; goto L14359;}}} L14359: { okayP_239X = arg2K0; key_240X = arg0K1; temp_241X = arg0K2; if (okayP_239X) { arg0K0 = key_240X; arg0K1 = temp_241X; goto L14340;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_240X; arg0K1 = temp_241X; goto L14340;}} L14340: { key_242X = arg0K0; value_243X = arg0K1; name_244X = enter_string(name_232X, key_242X); x_245X = Hlookup2113((Simported_bindingsS), name_244X, key_242X); addr_246X = (((char *) (-3 + x_245X))) + 8; S48_WRITE_BARRIER(x_245X, addr_246X, value_243X); *((long *) addr_246X) = value_243X; return;} } long s48_add_channel(long mode_247X, long id_248X, long os_index_249X) { char arg2K0; long arg0K1; long arg0K0; long status_257X; long channel_256X; long v_255X; long key_254X; char okayP_253X; char v_252X; long temp1_251X; char v_250X; { v_250X = AVAILABLEp(6); if (v_250X) { arg2K0 = 1; arg0K1 = 0; goto L14748;} else { collect_saving_temps(1, 1, &temp1_251X); v_252X = AVAILABLEp(6); if (v_252X) { arg2K0 = 1; arg0K1 = 0; goto L14748;} else { arg2K0 = 0; arg0K1 = 0; goto L14748;}}} L14748: { okayP_253X = arg2K0; key_254X = arg0K1; if (okayP_253X) { arg0K0 = key_254X; goto L14731;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_254X; goto L14731;}} L14731: { v_255X = arg0K0; channel_256X = make_registered_channel((((mode_247X)>>2)), id_248X, os_index_249X, v_255X, &status_257X); if ((3 == (3 & channel_256X))) { if ((6 == (31 & ((((*((long *) ((((char *) (-3 + channel_256X))) + -4))))>>2))))) { return channel_256X;} else { goto L14742;}} else { goto L14742;}} L14742: { return (((status_257X)<<2));} } long s48_get_imported_binding(char *name_258X) { char arg2K0; long arg0K1; long arg0K0; long name_266X; long key_265X; long key_264X; char okayP_263X; char v_262X; long temp1_261X; char v_260X; long space_259X; { space_259X = 6 + ((((4 + (strlen((char *) name_258X))))>>2)); v_260X = AVAILABLEp(space_259X); if (v_260X) { arg2K0 = 1; arg0K1 = 0; goto L15437;} else { collect_saving_temps(1, 1, &temp1_261X); v_262X = AVAILABLEp(space_259X); if (v_262X) { arg2K0 = 1; arg0K1 = 0; goto L15437;} else { arg2K0 = 0; arg0K1 = 0; goto L15437;}}} L15437: { okayP_263X = arg2K0; key_264X = arg0K1; if (okayP_263X) { arg0K0 = key_264X; goto L15424;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_264X; goto L15424;}} L15424: { key_265X = arg0K0; name_266X = enter_string(name_258X, key_265X); return Hlookup2132((Sexported_bindingsS), name_266X, key_265X);} } long s48_allocate_stob(long type_267X, long size_268X) { char * addr_272X; char v_271X; long temp1_270X; char v_269X; { v_269X = AVAILABLEp(size_268X); if (v_269X) { goto L15732;} else { collect_saving_temps(1, 1, &temp1_270X); v_271X = AVAILABLEp(size_268X); if (v_271X) { goto L15732;} else { ps_error("Scheme48 heap overflow", 0); goto L15732;}}} L15732: { addr_272X = ALLOCATE_SPACE(type_267X, (4 + size_268X)); *((long *) addr_272X) = (2 + (((((((size_268X)<<6)) + type_267X))<<2))); return (3 + (((long) (addr_272X + 4))));} } void s48_initialize_vm(char * stack_begin_273X, long stack_size_274X) { char arg2K0; char * arg1K0; long arg0K2; long arg0K1; long arg0K0; char * addr_345X; long code_344X; long temp_343X; char * addr_342X; char * addr_341X; char * addr_340X; long code_339X; long temp_338X; char * addr_337X; char * addr_336X; char v_335X; long temp1_334X; char v_333X; long cont_332X; char * addr_331X; long code_330X; long temp_329X; char * addr_328X; char * addr_327X; char v_326X; long temp1_325X; char v_324X; char * a_323X; long size_322X; char * start_321X; char * stack_320X; long v_319X; char * addr_318X; long i_317X; char * addr_316X; char * addr_315X; long val_314X; long index_313X; long h_312X; long i_311X; long table_310X; char * addr_309X; long v_308X; char * addr_307X; long i_306X; long n_305X; long string_304X; long foo_303X; long table_302X; long i_301X; long table_300X; char * addr_299X; long exported_bindings_298X; long imported_bindings_297X; long n_296X; long symbols_295X; long temp1_294X; long temp0_293X; char okayP_292X; char * addr_291X; long maybe_290X; long v_289X; long maybe_288X; long i_287X; char v_286X; long temp1_285X; long temp0_284X; char v_283X; long imported_bindings_282X; long exported_bindings_281X; long table_280X; char * addr_279X; char v_278X; long temp1_277X; char v_276X; long symbol_table_275X; { symbol_table_275X = s48_initial_symbols(); if ((symbol_table_275X == 1)) { v_276X = AVAILABLEp(1025); if (v_276X) { goto L15463;} else { collect_saving_temps(1, 1, &temp1_277X); v_278X = AVAILABLEp(1025); if (v_278X) { goto L15463;} else { ps_error("Scheme48 heap overflow", 0); goto L15463;}}} else { Sthe_symbol_tableS = symbol_table_275X; goto L15855;}} L15463: { addr_279X = ALLOCATE_SPACE(2, 4100); *((long *) addr_279X) = 1048586; table_280X = 3 + (((long) (addr_279X + 4))); arg0K0 = 0; goto L15538;} L15855: { exported_bindings_281X = s48_initial_exported_bindings(); imported_bindings_282X = s48_initial_imported_bindings(); v_283X = AVAILABLEp(2050); if (v_283X) { arg2K0 = 1; arg0K1 = imported_bindings_282X; arg0K2 = exported_bindings_281X; goto L14441;} else { temp0_284X = collect_saving_temps(imported_bindings_282X, exported_bindings_281X, &temp1_285X); v_286X = AVAILABLEp(2050); if (v_286X) { arg2K0 = 1; arg0K1 = temp0_284X; arg0K2 = temp1_285X; goto L14441;} else { arg2K0 = 0; arg0K1 = temp0_284X; arg0K2 = temp1_285X; goto L14441;}}} L15538: { i_287X = arg0K0; if ((1024 == i_287X)) { Sthe_symbol_tableS = table_280X; maybe_288X = s48_find_all(1); if ((maybe_288X == 1)) { collect_saving_temps(0, 0, &v_289X); maybe_290X = s48_find_all(1); if ((maybe_290X == 1)) { ps_error("insufficient heap space to build symbol table", 0); arg0K0 = maybe_290X; goto L15492;} else { arg0K0 = maybe_290X; goto L15492;}} else { arg0K0 = maybe_288X; goto L15492;}} else { addr_291X = (((char *) (-3 + table_280X))) + (((i_287X)<<2)); S48_WRITE_BARRIER(table_280X, addr_291X, 1); *((long *) addr_291X) = 1; arg0K0 = (1 + i_287X); goto L15538;}} L14441: { okayP_292X = arg2K0; temp0_293X = arg0K1; temp1_294X = arg0K2; if (okayP_292X) { arg0K0 = temp0_293X; arg0K1 = temp1_294X; goto L14402;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = temp0_293X; arg0K1 = temp1_294X; goto L14402;}} L15492: { symbols_295X = arg0K0; n_296X = (((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + symbols_295X))) + -4))))>>8))))>>2); arg0K0 = 0; goto L15559;} L14402: { imported_bindings_297X = arg0K0; exported_bindings_298X = arg0K1; if ((1 == imported_bindings_297X)) { addr_299X = ALLOCATE_SPACE(2, 4100); *((long *) addr_299X) = 1048586; table_300X = 3 + (((long) (addr_299X + 4))); arg0K0 = 0; goto L14503;} else { arg0K0 = imported_bindings_297X; goto L14417;}} L15559: { i_301X = arg0K0; if ((i_301X == n_296X)) { goto L15855;} else { table_302X = Sthe_symbol_tableS; foo_303X = *((long *) ((((char *) (-3 + symbols_295X))) + (((i_301X)<<2)))); string_304X = *((long *) (((char *) (-3 + foo_303X)))); n_305X = -1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + string_304X))) + -4))))>>8)); arg0K0 = 0; arg0K1 = 0; goto L13026;}} L14503: { i_306X = arg0K0; if ((1024 == i_306X)) { arg0K0 = table_300X; goto L14417;} else { addr_307X = (((char *) (-3 + table_300X))) + (((i_306X)<<2)); S48_WRITE_BARRIER(table_300X, addr_307X, 1); *((long *) addr_307X) = 1; arg0K0 = (1 + i_306X); goto L14503;}} L14417: { v_308X = arg0K0; Simported_bindingsS = v_308X; if ((1 == exported_bindings_298X)) { addr_309X = ALLOCATE_SPACE(2, 4100); *((long *) addr_309X) = 1048586; table_310X = 3 + (((long) (addr_309X + 4))); arg0K0 = 0; goto L14480;} else { arg0K0 = exported_bindings_298X; goto L14430;}} L13026: { i_311X = arg0K0; h_312X = arg0K1; if ((i_311X < n_305X)) { arg0K0 = (1 + i_311X); arg0K1 = (h_312X + (((*((unsigned char *) ((((char *) (-3 + string_304X))) + i_311X)))))); goto L13026;} else { index_313X = 1023 & h_312X; val_314X = *((long *) ((((char *) (-3 + table_302X))) + (((index_313X)<<2)))); addr_315X = (((char *) (-3 + foo_303X))) + 4; S48_WRITE_BARRIER(foo_303X, addr_315X, val_314X); *((long *) addr_315X) = val_314X; addr_316X = (((char *) (-3 + table_302X))) + (((index_313X)<<2)); S48_WRITE_BARRIER(table_302X, addr_316X, foo_303X); *((long *) addr_316X) = foo_303X; arg0K0 = (1 + i_301X); goto L15559;}} L14480: { i_317X = arg0K0; if ((1024 == i_317X)) { arg0K0 = table_310X; goto L14430;} else { addr_318X = (((char *) (-3 + table_310X))) + (((i_317X)<<2)); S48_WRITE_BARRIER(table_310X, addr_318X, 1); *((long *) addr_318X) = 1; arg0K0 = (1 + i_317X); goto L14480;}} L14430: { v_319X = arg0K0; Sexported_bindingsS = v_319X; if ((stack_size_274X < 8131)) { stack_320X = (char *)malloc(32524); if ((stack_320X == NULL)) { ps_error("out of memory, unable to continue", 0); arg1K0 = stack_320X; arg0K1 = 8131; goto L14949;} else { arg1K0 = stack_320X; arg0K1 = 8131; goto L14949;}} else { arg1K0 = stack_begin_273X; arg0K1 = stack_size_274X; goto L14949;}} L14949: { start_321X = arg1K0; size_322X = arg0K1; Sstack_beginS = start_321X; Sstack_endS = (start_321X + (((size_322X)<<2))); Sstack_limitS = ((Sstack_beginS) + 524); SstackS = ((Sstack_endS) + -4); ScontS = 1; SenvS = 17; arg1K0 = start_321X; goto L14981;} L14981: { a_323X = arg1K0; if ((a_323X == (Sstack_endS))) { v_324X = AVAILABLEp(5); if (v_324X) { goto L14998;} else { collect_saving_temps(1, 1, &temp1_325X); v_326X = AVAILABLEp(5); if (v_326X) { goto L14998;} else { ps_error("Scheme48 heap overflow", 0); goto L14998;}}} else { *((long *) a_323X) = 252645135; arg1K0 = (a_323X + 4); goto L14981;}} L14998: { addr_327X = ALLOCATE_SPACE(18, 6); *((long *) addr_327X) = 586; addr_328X = ALLOCATE_SPACE(12, 12); *((long *) addr_328X) = 2098; temp_329X = 3 + (((long) (addr_328X + 4))); code_330X = 3 + (((long) (addr_327X + 4))); addr_331X = ((char *) (-3 + temp_329X)); S48_WRITE_BARRIER(temp_329X, addr_331X, code_330X); *((long *) addr_331X) = code_330X; *((unsigned char *) (((char *) (-3 + code_330X)))) = 23; *((unsigned char *) ((((char *) (-3 + code_330X))) + 1)) = 31; SstackS = ((SstackS) + -20); *((long *) ((SstackS) + 4)) = 4266; cont_332X = 3 + (((long) ((SstackS) + 8))); *((long *) ((((char *) (-3 + cont_332X))) + 4)) = 0; *((long *) ((((char *) (-3 + cont_332X))) + 8)) = temp_329X; *((long *) ((((char *) (-3 + cont_332X))) + 12)) = (SenvS); *((long *) (((char *) (-3 + cont_332X)))) = (ScontS); ScontS = cont_332X; Sbottom_of_stackS = (ScontS); v_333X = AVAILABLEp(5); if (v_333X) { goto L15177;} else { collect_saving_temps(1, 1, &temp1_334X); v_335X = AVAILABLEp(5); if (v_335X) { goto L15177;} else { ps_error("Scheme48 heap overflow", 0); goto L15177;}}} L15177: { addr_336X = ALLOCATE_SPACE(18, 6); *((long *) addr_336X) = 586; addr_337X = ALLOCATE_SPACE(12, 12); *((long *) addr_337X) = 2098; temp_338X = 3 + (((long) (addr_337X + 4))); code_339X = 3 + (((long) (addr_336X + 4))); addr_340X = ((char *) (-3 + temp_338X)); S48_WRITE_BARRIER(temp_338X, addr_340X, code_339X); *((long *) addr_340X) = code_339X; *((unsigned char *) (((char *) (-3 + code_339X)))) = 34; *((unsigned char *) ((((char *) (-3 + code_339X))) + 1)) = 141; Sinterrupt_templateS = temp_338X; addr_341X = ALLOCATE_SPACE(18, 6); *((long *) addr_341X) = 586; addr_342X = ALLOCATE_SPACE(12, 12); *((long *) addr_342X) = 2098; temp_343X = 3 + (((long) (addr_342X + 4))); code_344X = 3 + (((long) (addr_341X + 4))); addr_345X = ((char *) (-3 + temp_343X)); S48_WRITE_BARRIER(temp_343X, addr_345X, code_344X); *((long *) addr_345X) = code_344X; *((unsigned char *) (((char *) (-3 + code_344X)))) = 138; *((unsigned char *) ((((char *) (-3 + code_344X))) + 1)) = 124; Sexception_templateS = temp_343X; return;} } long s48_restart(long proc_346X, long nargs_347X) { char * arg1K1; char * arg1K0; char *arg3K0; char arg2K3; char arg2K1; char arg2K2; char arg2K0; long arg0K3; long arg0K2; long arg0K1; long arg0K0; char *merged_arg3K0; long merged_arg0K3; long merged_arg0K2; long merged_arg0K1; long merged_arg0K0; int pop_continuationB_return_tag; int get_error_string_return_tag; long get_error_string0_return_value; int okay_argument_list_return_tag; char okay_argument_list0_return_value; long okay_argument_list1_return_value; int get_current_port_return_tag; long get_current_port0_return_value; int copy_continuation_from_heapB_return_tag; long copy_continuation_from_heapB0_return_value; int copy_listS_return_tag; long copy_listS0_return_value; int pop_args_GlistS_return_tag; long pop_args_GlistS0_return_value; int save_env_in_heap_return_tag; long save_env_in_heap0_return_value; int copy_env_return_tag; long copy_env0_return_value; int really_preserve_continuation_return_tag; long really_preserve_continuation0_return_value; int copy_stack_into_heap_return_tag; int push_list_return_tag; long push_list0_return_value; int rest_list_setup_return_tag; int check_events_return_tag; char check_events0_return_value; int loseD0_return_tag; long status_348X; long list_349X; long marker_350X; long cont_351X; long list_352X; long length_353X; long start_354X; long count_355X; long env_356X; long cont_357X; long key_358X; long reason_359X; long env_360X; long key_361X; long reason_362X; long key_363X; long list_364X; long count_365X; long wants_stack_args_366X; long stack_arg_count_367X; long list_args_368X; long list_arg_count_369X; char *message_370X; long pc_1297X; long tem_1296X; long cont_1295X; long i_1294X; long string_1293X; char * addr_1292X; long len_1291X; long len_1290X; long x_1289X; char *string_1288X; char move_slowP_1287X; long slow_1286X; long len_1285X; long fast_1284X; long v_1283X; char *v_1282X; long v_1281X; long v_1280X; long obj_1279X; long env_1278X; long thread_1277X; long v_1276X; long new_cont_1275X; char * top_1274X; char * addr_1273X; long x_1272X; char * addr_1271X; long a_1270X; long last_1269X; long l_1268X; long x_1267X; char * addr_1266X; long a_1265X; long list_1264X; long temp_1263X; char okayP_1262X; char v_1261X; long temp1_1260X; long temp0_1259X; char v_1258X; long space_1257X; long x_1256X; char * addr_1255X; long a_1254X; long count_1253X; long args_1252X; long start_1251X; long temp_1250X; char okayP_1249X; char v_1248X; long temp1_1247X; long temp0_1246X; char v_1245X; long space_1244X; long env_1243X; long cont_1242X; char * addr_1241X; long new_1240X; long p_1239X; long env_1238X; long top_1237X; char * addr_1236X; long new_1235X; char * data_addr_1234X; char * addr_1233X; long header_1232X; long new_1231X; char * data_addr_1230X; char * addr_1229X; long header_1228X; long p_1227X; long previous_1226X; long cont_1225X; long end_1224X; long v_1223X; long p_1222X; char * arg_1221X; char * loc_1220X; long stob_1219X; char * top_1218X; long arg_count_1217X; long i_1216X; char * p_1215X; long v_1214X; long l_1213X; long i_1212X; long key_1211X; char okayP_1210X; long list_1209X; char v_1208X; long temp1_1207X; char v_1206X; long space_1205X; long x_1204X; long v_1203X; long x_1202X; long v_1201X; long count_1200X; long x_1199X; long v_1198X; long status_1197X; long channel_1196X; long type_1195X; char v_1194X; long template_1193X; char not_firstP_1192X; long cont_1191X; char not_firstP_1190X; FILE * out_1189X; long current_template_1188X; long why_1187X; long x_1186X; long x_1185X; long x_1184X; char * addr_1183X; long status_1182X; char pendingP_1181X; char eofP_1180X; long got_1179X; long length_1178X; long v_1177X; long obj_1176X; long reason_1175X; long status_1174X; long v_1173X; long v_1172X; long key_1171X; char okayP_1170X; char v_1169X; char * addr_1168X; long value_1167X; long offset_1166X; long i_1165X; long count_1164X; long y_1163X; char * addr_1162X; long val_1161X; char * addr_1160X; long value_1159X; long len_1158X; long s2_1157X; long foo_1156X; long previous_foo_1155X; long val_1154X; long x_1153X; char * addr_1152X; long status_1151X; char pendingP_1150X; long got_1149X; long length_1148X; long count_1147X; long start_1146X; char waitP_1145X; long x_1144X; long status_1143X; long channel_1142X; long v_1141X; long v_1140X; long v_1139X; long reason_1138X; long channel_1137X; long index_1136X; long val_1135X; long final_stack_arg_count_1134X; char v_1133X; long temp1_1132X; char v_1131X; long space_1130X; long stack_arg_count_1129X; long stack_slots_1128X; char x_1127X; long channel_1126X; long obj_1125X; long arg_count_1124X; long count_1123X; long i_1122X; long env_1121X; long value_1120X; char *v_1119X; long y_1118X; long i_1117X; long l_1116X; long bucket_1115X; long index_1114X; long h_1113X; long i_1112X; long v_1111X; long v_1110X; long x_1109X; long status_1108X; long reason_1107X; long v_1106X; long val_1105X; long reason_1104X; long x_1103X; long obj_1102X; long v_1101X; long v_1100X; long len_1099X; long s2_1098X; char * addr_1097X; long x_1096X; char * addr_1095X; long foo_1094X; long rest_list_1093X; long i_1092X; long n_1091X; long args_1090X; long skip_1089X; long template_1088X; long stack_arg_count_1087X; long skip_1086X; long skip_1085X; long template_1084X; long stack_arg_count_1083X; long skip_1082X; char * addr_1081X; long next_1080X; long channel_1079X; long m_1078X; long i_1077X; long value_1076X; long back_1075X; long env_1074X; long offset_1073X; long i_1072X; long x_1071X; char * addr_1070X; long a_1069X; long env_1068X; long v_1067X; long p_1066X; long key_1065X; long string_1064X; char * addr_1063X; long len_1062X; long n_1061X; long table_1060X; long x_1059X; long arg2_1058X; long key_1057X; char temp_1056X; char minutesP_1055X; long status_1054X; long status_1053X; long undumpable_count_1052X; long undumpables_1051X; long status_1050X; long status_1049X; long status_1048X; long status_1047X; FILE * port_1046X; char x_1045X; long comment_string_1044X; long obj_1043X; long arg3_1042X; long arg2_1041X; long key_1040X; long x_1039X; char * addr_1038X; long channel_1037X; long res_1036X; long i_1035X; char * addr_1034X; char * addr_1033X; long val_1032X; long x_1031X; long status_1030X; char readyP_1029X; long channel_1028X; long obj_1027X; long key_1026X; char v_1025X; long channel_1024X; long count_1023X; long start_1022X; long obj_1021X; long arg4_1020X; long arg3_1019X; long arg2_1018X; long key_1017X; long arg5_1016X; long arg4_1015X; long arg3_1014X; long arg2_1013X; long key_1012X; long x_1011X; long status_1010X; long channel_1009X; long obj_1008X; long key_1007X; long mode_1006X; long arg2_1005X; long key_1004X; long bucket_1003X; long index_1002X; long h_1001X; long i_1000X; long i_999X; long i_998X; char * addr_997X; long i_996X; long i_995X; long i_994X; long c_993X; long b_992X; long c_991X; long b_990X; char x_989X; long c_988X; long b_987X; long c_986X; long mid_c_985X; long v_984X; long v_983X; long lo_c_982X; long hi_b_981X; long hi_a_980X; long lo_b_979X; long lo_a_978X; long b_977X; long v_976X; long v_975X; long args_974X; long next_973X; long next_op_972X; long cont_971X; long index_970X; long length_969X; long wants_stack_args_968X; long skip_967X; long skip_966X; long stack_space_965X; long protocol_964X; long index_963X; long length_962X; long wants_stack_args_961X; long skip_960X; long skip_959X; long stack_space_958X; long protocol_957X; long n_956X; long tem_955X; long stack_arg_count_954X; long v_953X; long v_952X; long key_951X; long start_i_950X; long temp_949X; char okayP_948X; long key_947X; char okayP_946X; long obj_945X; long obj_944X; long type_943X; long thing_942X; long stuff_941X; char * addr_940X; long val_939X; long x_938X; long i_937X; long b_936X; long p_935X; long port_934X; long Kchar_933X; long x_932X; long i_931X; long b_930X; long p_929X; long p_928X; long port_927X; char * addr_926X; long val_925X; long x_924X; long i_923X; long b_922X; long p_921X; long p_920X; long port_919X; long list_918X; long head_917X; char move_slowP_916X; long slow_915X; long list_914X; long n_913X; long arg2_912X; long val_911X; long mseconds_910X; long seconds_909X; long option_908X; long key_907X; char okayP_906X; long result_905X; char * args_904X; long name_903X; long proc_902X; long rest_list_901X; long x_900X; long tem_899X; long pc_898X; long v_897X; long value_896X; long vector_895X; long type_894X; char firstP_893X; long v_892X; long vector_891X; char firstP_890X; long x_889X; char * addr_888X; long b_887X; long x_886X; char * addr_885X; long proc_884X; long stob_883X; long h_882X; long i_881X; long key_880X; char okayP_879X; long y_878X; long n_877X; char * addr_876X; long prev_875X; long ch_874X; long val_873X; long key_872X; char okayP_871X; long key_870X; char okayP_869X; long key_868X; char okayP_867X; long key_866X; char okayP_865X; long key_864X; char okayP_863X; long val_862X; char * addr_861X; char * addr_860X; long val_859X; long n_858X; long string_857X; long table_856X; long obj_855X; long string_854X; char * addr_853X; long len_852X; long vector_851X; char * addr_850X; long value_849X; char * addr_848X; long len_847X; long init_846X; char okayP_845X; long rest_list_844X; long stack_nargs_843X; long new_842X; char * addr_841X; long len_840X; long type_839X; long new_838X; char * addr_837X; long len_836X; long type_835X; long value_834X; long val_833X; long val_832X; long val_831X; long val_830X; long r_829X; long n_828X; long a_827X; long a_826X; long val_825X; long val_824X; long val_823X; long val_822X; long val_821X; long a_820X; long a_819X; long val_818X; long val_817X; long delta_816X; long delta_815X; long offset_814X; long key_813X; char okayP_812X; char v_811X; long tem_810X; long key_809X; char okayP_808X; long list_arg_count_807X; long list_args_806X; long stack_nargs_805X; long obj_804X; char * addr_803X; long list_args_802X; long follower_801X; long list_800X; long args_799X; long list_arg_count_798X; char okayP_797X; long stack_nargs_796X; long list_args_795X; long total_arg_count_794X; long code_793X; long obj_792X; long obj_791X; long list_arg_count_790X; long list_args_789X; long stack_arg_count_788X; long obj_787X; char * arg_786X; char * loc_785X; long args_784X; long v_783X; long v_782X; long v_781X; long list_arg_count_780X; long list_args_779X; long stack_arg_count_778X; long exception_777X; long code_776X; long stack_arg_count_775X; char v_774X; long key_773X; char okayP_772X; long key_771X; char okayP_770X; char * addr_769X; long value_768X; long v_767X; long new_env_766X; char * addr_765X; long len_764X; char v_763X; long temp1_762X; long temp0_761X; char v_760X; long env_759X; char v_758X; long temp1_757X; char v_756X; long space_755X; char * addr_754X; long value_753X; long index_752X; long i_751X; long env_750X; long i_749X; long env_748X; long i_747X; long env_746X; long obj_745X; long opcode_744X; long nargs_743X; FILE * out_742X; long x_741X; long v_740X; long v_739X; long v_738X; long v_737X; long v_736X; long v_735X; long v_734X; long count_733X; long to_index_732X; long from_index_731X; long arg5_730X; long arg4_729X; long arg3_728X; long arg2_727X; char * addr_726X; long len_725X; long value_724X; long index_723X; long arg4_722X; long arg3_721X; long arg2_720X; long len_719X; long index_718X; long arg3_717X; long arg2_716X; long list_715X; long thing_714X; char v_713X; long temp1_712X; char v_711X; long space_710X; long len_709X; long x_708X; long obj_707X; long arg2_706X; long x_705X; long arg2_704X; long status_703X; long value_702X; long key_701X; long arg2_700X; long mseconds_699X; long seconds_698X; long mseconds_697X; long seconds_696X; long x_695X; long other_694X; long option_693X; long arg2_692X; long x_691X; long arg2_690X; char v_689X; long temp1_688X; char v_687X; long rest_list_686X; long p_685X; long nargs_684X; long x_683X; long arg2_682X; long p_681X; long p_680X; long p_679X; long old_678X; long temp_677X; long obj_676X; long p_675X; long template_674X; long p_673X; long temp_672X; long obj_671X; long x_670X; long type_669X; long x_668X; long bytes_667X; long x_666X; long other_665X; long key_664X; long arg2_663X; char v_662X; long temp1_661X; char v_660X; long n_659X; long x_658X; long obj_657X; long v_656X; char v_655X; long temp1_654X; char v_653X; long x_652X; char v_651X; long temp1_650X; char v_649X; long space_648X; char * addr_647X; long next_646X; long channel_645X; long n_644X; char * addr_643X; long head_642X; long channel_641X; long obj_640X; char v_639X; long temp1_638X; char v_637X; char v_636X; long temp1_635X; char v_634X; char v_633X; long temp1_632X; char v_631X; char v_630X; long temp1_629X; char v_628X; char v_627X; long temp1_626X; char v_625X; long x_624X; long x_623X; long x_622X; long arg2_621X; long descriptor_620X; long x_619X; long obj_618X; char v_617X; long temp1_616X; char v_615X; long len_614X; char Kchar_613X; long index_612X; long arg3_611X; long arg2_610X; long len_609X; long index_608X; long arg2_607X; long obj_606X; char v_605X; long temp1_604X; char v_603X; long size_602X; char init_601X; long len_600X; long arg2_599X; long len_598X; long Kchar_597X; long index_596X; long arg3_595X; long arg2_594X; long len_593X; long index_592X; long arg2_591X; long obj_590X; char v_589X; long temp1_588X; char v_587X; long size_586X; long init_585X; long len_584X; long arg2_583X; char * addr_582X; long index_581X; long len_580X; long type_579X; long value_578X; long stob_577X; long arg2_576X; long index_575X; long len_574X; long type_573X; long index_572X; long stob_571X; char v_570X; long temp1_569X; long temp0_568X; char v_567X; long size_566X; long len_565X; long type_564X; long init_563X; long len_562X; char * addr_561X; long type_560X; long offset_559X; long value_558X; long stob_557X; long type_556X; long offset_555X; long stob_554X; char v_553X; long temp1_552X; char v_551X; long space_550X; long len_549X; char v_548X; long temp1_547X; char v_546X; long space_545X; long len_544X; long type_543X; long stob_542X; long type_541X; long x_540X; long x_539X; long x_538X; long x_537X; long arg2_536X; long x_535X; long arg2_534X; long x_533X; long x_532X; long result_531X; long x_530X; long x_529X; long count_528X; long value_527X; long y_526X; long x_525X; long x_524X; long arg2_523X; long x_522X; long arg2_521X; long x_520X; long arg2_519X; long x_518X; long x_517X; long arg2_516X; long x_515X; long arg2_514X; long x_513X; long arg2_512X; long n_511X; long n_510X; long x_509X; long x_508X; long x_507X; long x_506X; long x_505X; long x_504X; long x_503X; long x_502X; long x_501X; long x_500X; long x_499X; long x_498X; long x_497X; long x_496X; long a_495X; long y_494X; long x_493X; long b_492X; long a_491X; long x_490X; long arg2_489X; long x_488X; long arg2_487X; long x_486X; long arg2_485X; long x_484X; long arg2_483X; long x_482X; long arg2_481X; long x_480X; long arg2_479X; long b_478X; long a_477X; long x_476X; long arg2_475X; long z_474X; long y_473X; long x_472X; long b_471X; long a_470X; long x_469X; long arg2_468X; long z_467X; long y_466X; long x_465X; long x_464X; long x_463X; long x_462X; long n_461X; long n_460X; long n_459X; long n_458X; long x_457X; long x_456X; long arg2_455X; long rest_list_454X; long x_453X; long rest_list_452X; long stack_nargs_451X; long arg0_450X; long arg1_449X; long rest_list_448X; long arg0_447X; long stack_nargs_446X; long index_445X; long val_444X; long max_443X; long p_442X; char v_441X; long temp1_440X; char v_439X; long space_438X; long space_437X; long index_436X; long v_435X; char v_434X; long temp1_433X; char v_432X; long space_431X; long code_430X; long tem_429X; long stack_nargs_428X; long p_427X; long obj_426X; long consumer_425X; long cont_424X; long rest_list_423X; long proc_422X; long stack_nargs_421X; long args_420X; long length_419X; char okayP_418X; long list_args_417X; long stob_416X; char * top_of_args_415X; long nargs_414X; long obj_413X; long stack_arg_count_412X; char v_411X; long temp1_410X; char v_409X; long space_408X; long code_407X; long template_406X; long obj_405X; long stack_arg_count_404X; long cont_403X; char v_402X; long temp1_401X; char v_400X; long space_399X; char v_398X; long temp1_397X; char v_396X; long space_395X; long total_count_394X; long p_393X; long v_392X; char * addr_391X; long val_390X; long location_389X; long location_388X; long env_387X; long back_386X; long env_385X; long back_384X; long env_383X; long back_382X; long count_381X; char * code_pointer_380X; long code_379X; char * addr_378X; long proc_377X; long temp_376X; char okayP_375X; char v_374X; long temp1_373X; long temp0_372X; char v_371X; { v_371X = AVAILABLEp(2); if (v_371X) { arg2K0 = 1; arg0K1 = proc_346X; goto L19396;} else { temp0_372X = collect_saving_temps(proc_346X, 1, &temp1_373X); v_374X = AVAILABLEp(2); if (v_374X) { arg2K0 = 1; arg0K1 = temp0_372X; goto L19396;} else { arg2K0 = 0; arg0K1 = temp0_372X; goto L19396;}}} L19396: { okayP_375X = arg2K0; temp_376X = arg0K1; if (okayP_375X) { arg0K0 = temp_376X; goto L19367;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = temp_376X; goto L19367;}} L19367: { proc_377X = arg0K0; addr_378X = ALLOCATE_SPACE(18, 6); *((long *) addr_378X) = 586; code_379X = 3 + (((long) (addr_378X + 4))); *((unsigned char *) (((char *) (-3 + code_379X)))) = 24; *((unsigned char *) ((((char *) (-3 + code_379X))) + 1)) = nargs_347X; Scode_pointerS = (((char *) (-3 + code_379X))); SvalS = proc_377X; arg1K0 = (Scode_pointerS); goto L18459;} L18459: { code_pointer_380X = arg1K0; switch ((*((unsigned char *) code_pointer_380X))) { case 0 : case 146 : { push_exception_continuationB(15, 1); arg0K0 = 0; goto L16686;} break; case 1 : { count_381X = ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2))); *((long *) (SstackS)) = (SenvS); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (1034 + (((count_381X)<<10))); SstackS = ((SstackS) + -4); SenvS = (3 + (((long) ((SstackS) + 8)))); Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;} break; case 2 : { SvalS = (*((long *) ((((char *) (-3 + (StemplateS)))) + ((((((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2)))))<<2))))); Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;} break; case 3 : { SvalS = (*((long *) ((((char *) (-3 + (StemplateS)))) + ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<2))))); Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;} break; case 4 : { back_382X = *((unsigned char *) ((Scode_pointerS) + 1)); env_383X = SenvS; arg0K0 = env_383X; arg0K1 = back_382X; goto L23853;} break; case 5 : { SvalS = (*((long *) ((((char *) (-3 + (SenvS)))) + ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<2))))); if ((529 == (SvalS))) { push_exception_continuationB(0, 2); arg0K0 = 0; goto L16686;} else { Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;}} break; case 6 : { SvalS = (*((long *) ((((char *) (-3 + (*((long *) (((char *) (-3 + (SenvS))))))))) + ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<2))))); if ((529 == (SvalS))) { push_exception_continuationB(0, 2); arg0K0 = 0; goto L16686;} else { Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;}} break; case 7 : { SvalS = (*((long *) ((((char *) (-3 + (*((long *) (((char *) (-3 + (*((long *) (((char *) (-3 + (SenvS)))))))))))))) + ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<2))))); if ((529 == (SvalS))) { push_exception_continuationB(0, 2); arg0K0 = 0; goto L16686;} else { Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;}} break; case 8 : { back_384X = ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2))); env_385X = SenvS; arg0K0 = env_385X; arg0K1 = back_384X; goto L20268;} break; case 9 : { back_386X = ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2))); env_387X = SenvS; arg0K0 = env_387X; arg0K1 = back_386X; goto L20206;} break; case 10 : { location_388X = *((long *) ((((char *) (-3 + (StemplateS)))) + ((((((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2)))))<<2)))); SvalS = (*((long *) ((((char *) (-3 + location_388X))) + 4))); if ((17 == (255 & (SvalS)))) { push_exception_continuationB(1, 3); *((long *) (SstackS)) = location_388X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} else { Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;}} break; case 11 : { location_389X = *((long *) ((((char *) (-3 + (StemplateS)))) + ((((((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2)))))<<2)))); if ((273 == (*((long *) ((((char *) (-3 + location_389X))) + 4))))) { push_exception_continuationB(1, 3); *((long *) (SstackS)) = location_389X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { val_390X = SvalS; addr_391X = (((char *) (-3 + location_389X))) + 4; S48_WRITE_BARRIER(location_389X, addr_391X, val_390X); *((long *) addr_391X) = val_390X; SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;}} break; case 12 : { v_392X = *((unsigned char *) ((Scode_pointerS) + 3)); if ((0 == v_392X)) { p_393X = SenvS; if ((3 == (3 & p_393X))) { if ((p_393X < (((long) (Sstack_beginS))))) { arg0K0 = 0; goto L20985;} else { if (((((long) (Sstack_endS))) < p_393X)) { arg0K0 = 0; goto L20985;} else { arg0K0 = ((Sstack_endS) - (Sstack_beginS)); goto L20985;}}} else { arg0K0 = 0; goto L20985;}} else { arg0K0 = (SvalS); goto L20992;}} break; case 13 : { total_count_394X = *((unsigned char *) ((Scode_pointerS) + 2)); space_395X = 1 + total_count_394X; v_396X = AVAILABLEp(space_395X); if (v_396X) { goto L20787;} else { collect_saving_temps(1, 1, &temp1_397X); v_398X = AVAILABLEp(space_395X); if (v_398X) { goto L20787;} else { ps_error("Scheme48 heap overflow", 0); goto L20787;}}} break; case 14 : { *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 15 : { SvalS = (*((long *) ((((char *) (-3 + (SenvS)))) + ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<2))))); if ((529 == (SvalS))) { push_exception_continuationB(0, 3); arg0K0 = 0; goto L16686;} else { *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;}} break; case 16 : { *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); SvalS = (*((long *) ((((char *) (-3 + (SenvS)))) + ((((*((unsigned char *) ((Scode_pointerS) + 2))))<<2))))); if ((529 == (SvalS))) { push_exception_continuationB(0, 3); arg0K0 = 0; goto L16686;} else { Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;}} break; case 17 : { SstackS = ((SstackS) + 4); SvalS = (*((long *) (SstackS))); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 18 : { SvalS = (*((long *) ((SstackS) + (4 + ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<2)))))); Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;} break; case 19 : { *((long *) ((SstackS) + (4 + ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<2))))) = (SvalS); Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;} break; case 20 : { push_continuationB(((Scode_pointerS) + (((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2))))), (*((unsigned char *) ((Scode_pointerS) + 3)))); Scode_pointerS = ((Scode_pointerS) + 4); arg1K0 = (Scode_pointerS); goto L18459;} break; case 21 : { push_continuationB(((Scode_pointerS) + (((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2))))), (((((*((unsigned char *) ((Scode_pointerS) + 3))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 4))))); Scode_pointerS = ((Scode_pointerS) + 5); arg1K0 = (Scode_pointerS); goto L18459;} break; case 22 : { space_399X = 1 + (((((Sstack_endS) - (SstackS)))>>2)); v_400X = AVAILABLEp(space_399X); if (v_400X) { arg2K0 = 1; arg0K1 = 0; goto L20713;} else { collect_saving_temps(1, 1, &temp1_401X); v_402X = AVAILABLEp(space_399X); if (v_402X) { arg2K0 = 1; arg0K1 = 0; goto L20713;} else { arg2K0 = 0; arg0K1 = 0; goto L20713;}}} break; case 23 : { cont_403X = *((long *) (((char *) (-3 + (Sbottom_of_stackS))))); if ((3 == (3 & cont_403X))) { if ((10 == (31 & ((((*((long *) ((((char *) (-3 + cont_403X))) + -4))))>>2))))) { if ((3 == (3 & cont_403X))) { if ((10 == (31 & ((((*((long *) ((((char *) (-3 + cont_403X))) + -4))))>>2))))) { merged_arg0K0 = cont_403X; copy_continuation_from_heapB_return_tag = 0; goto copy_continuation_from_heapB; copy_continuation_from_heapB_return_0: goto L19868;} else { goto L19903;}} else { goto L19903;}} else { goto L19869;}} else { goto L19869;}} break; case 24 : { stack_arg_count_404X = *((unsigned char *) ((Scode_pointerS) + 1)); obj_405X = SvalS; if ((3 == (3 & obj_405X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + obj_405X))) + -4))))>>2))))) { template_406X = *((long *) (((char *) (-3 + (SvalS))))); code_407X = *((long *) (((char *) (-3 + template_406X)))); if ((stack_arg_count_404X == (*((unsigned char *) ((((char *) (-3 + code_407X))) + 1))))) { StemplateS = template_406X; SenvS = (*((long *) ((((char *) (-3 + (SvalS)))) + 4))); Scode_pointerS = ((((char *) (-3 + code_407X))) + 2); if (((SstackS) < (Sstack_limitS))) { space_408X = 1 + (((((Sstack_endS) - (SstackS)))>>2)); v_409X = AVAILABLEp(space_408X); if (v_409X) { arg2K0 = 1; arg0K1 = 0; goto L19229;} else { collect_saving_temps(1, 1, &temp1_410X); v_411X = AVAILABLEp(space_408X); if (v_411X) { arg2K0 = 1; arg0K1 = 0; goto L19229;} else { arg2K0 = 0; arg0K1 = 0; goto L19229;}}} else { goto L19141;}} else { arg0K0 = stack_arg_count_404X; goto L16087;}} else { arg0K0 = 3; arg0K1 = stack_arg_count_404X; arg0K2 = 25; arg0K3 = 0; goto L17182;}} else { arg0K0 = 3; arg0K1 = stack_arg_count_404X; arg0K2 = 25; arg0K3 = 0; goto L17182;}} break; case 25 : { stack_arg_count_412X = ((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2))); obj_413X = SvalS; if ((3 == (3 & obj_413X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + obj_413X))) + -4))))>>2))))) { arg0K0 = stack_arg_count_412X; goto L16087;} else { arg0K0 = 3; arg0K1 = stack_arg_count_412X; arg0K2 = 25; arg0K3 = 0; goto L17182;}} else { arg0K0 = 3; arg0K1 = stack_arg_count_412X; arg0K2 = 25; arg0K3 = 0; goto L17182;}} break; case 26 : { nargs_414X = *((unsigned char *) ((Scode_pointerS) + 1)); top_of_args_415X = SstackS; stob_416X = ScontS; arg1K0 = ((((char *) (-3 + stob_416X))) + -8); arg1K1 = (top_of_args_415X + (((nargs_414X)<<2))); goto L17649;} break; case 27 : { SstackS = ((SstackS) + 4); list_args_417X = *((long *) (SstackS)); merged_arg0K0 = list_args_417X; okay_argument_list_return_tag = 0; goto okay_argument_list; okay_argument_list_return_0: okayP_418X = okay_argument_list0_return_value; length_419X = okay_argument_list1_return_value; if (okayP_418X) { arg0K0 = (((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2)))); arg0K1 = list_args_417X; arg0K2 = length_419X; goto L17687;} else { *((long *) (SstackS)) = list_args_417X; SstackS = ((SstackS) + -4); merged_arg0K0 = 25; merged_arg0K1 = (1 + (((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2))))); pop_args_GlistS_return_tag = 0; goto pop_args_GlistS; pop_args_GlistS_return_0: args_420X = pop_args_GlistS0_return_value; push_exception_continuationB(5, 0); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = args_420X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 28 : { SstackS = ((SstackS) + 4); SstackS = ((SstackS) + 4); stack_nargs_421X = (((*((long *) (SstackS))))>>2); proc_422X = *((long *) ((SstackS) + (4 + (((stack_nargs_421X)<<2))))); *((long *) ((SstackS) + (4 + (((stack_nargs_421X)<<2))))) = 1; SstackS = ((SstackS) + 4); rest_list_423X = *((long *) (SstackS)); if ((25 == rest_list_423X)) { SstackS = ((SstackS) + 4); arg0K0 = (*((long *) (SstackS))); arg0K1 = (-2 + stack_nargs_421X); goto L11294;} else { if ((25 == (*((long *) ((((char *) (-3 + rest_list_423X))) + 4))))) { arg0K0 = (*((long *) (((char *) (-3 + rest_list_423X))))); arg0K1 = (-1 + stack_nargs_421X); goto L11294;} else { arg0K0 = (*((long *) ((((char *) (-3 + (*((long *) ((((char *) (-3 + rest_list_423X))) + 4)))))) + 4))); arg0K1 = rest_list_423X; goto L11335;}}} break; case 29 : { SstackS = ((SstackS) + 4); cont_424X = *((long *) (SstackS)); if ((3 == (3 & cont_424X))) { if ((10 == (31 & ((((*((long *) ((((char *) (-3 + cont_424X))) + -4))))>>2))))) { merged_arg0K0 = cont_424X; copy_continuation_from_heapB_return_tag = 1; goto copy_continuation_from_heapB; copy_continuation_from_heapB_return_1: goto L17592;} else { goto L17599;}} else { goto L17599;}} break; case 30 : { SstackS = ((SstackS) + 4); consumer_425X = *((long *) (SstackS)); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); SvalS = consumer_425X; obj_426X = SvalS; if ((3 == (3 & obj_426X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + obj_426X))) + -4))))>>2))))) { arg0K0 = 1; goto L16087;} else { arg0K0 = 3; arg0K1 = 1; arg0K2 = 25; arg0K3 = 0; goto L17182;}} else { arg0K0 = 3; arg0K1 = 1; arg0K2 = 25; arg0K3 = 0; goto L17182;}} break; case 31 : { pop_continuationB_return_tag = 0; goto pop_continuationB; pop_continuationB_return_0: arg1K0 = (Scode_pointerS); goto L18459;} break; case 32 : { arg0K0 = (((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2)))); arg0K1 = 25; arg0K2 = 0; goto L20448;} break; case 33 : { SstackS = ((SstackS) + 4); p_427X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); stack_nargs_428X = (((*((long *) (SstackS))))>>2); SstackS = ((SstackS) + 4); arg0K0 = stack_nargs_428X; arg0K1 = (*((long *) (SstackS))); arg0K2 = ((((p_427X)>>2)) - stack_nargs_428X); goto L20448;} break; case 34 : { Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 35 : { tem_429X = *((long *) ((((char *) (-3 + (StemplateS)))) + ((((((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2)))))<<2)))); StemplateS = tem_429X; Scode_pointerS = (((char *) (-3 + (*((long *) (((char *) (-3 + tem_429X)))))))); arg1K0 = (Scode_pointerS); goto L18459;} break; case 36 : { code_430X = *((long *) (((char *) (-3 + (*((long *) ((((char *) (-3 + (StemplateS)))) + ((((((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2)))))<<2))))))))); if ((0 == (*((unsigned char *) ((((char *) (-3 + code_430X))) + 1))))) { if (((SstackS) < (Sstack_limitS))) { space_431X = 1 + (((((Sstack_endS) - (SstackS)))>>2)); v_432X = AVAILABLEp(space_431X); if (v_432X) { arg2K0 = 1; arg0K1 = 0; goto L18965;} else { collect_saving_temps(1, 1, &temp1_433X); v_434X = AVAILABLEp(space_431X); if (v_434X) { arg2K0 = 1; arg0K1 = 0; goto L18965;} else { arg2K0 = 0; arg0K1 = 0; goto L18965;}}} else { goto L18838;}} else { v_435X = *((unsigned char *) ((((char *) (-3 + code_430X))) + 1)); if ((66 == v_435X)) { if ((0 == (*((unsigned char *) ((((char *) (-3 + code_430X))) + (-3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + code_430X))) + -4))))>>8)))))))) { index_436X = -2 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + code_430X))) + -4))))>>8)); space_437X = ((((*((unsigned char *) ((((char *) (-3 + code_430X))) + index_436X))))<<8)) + (*((unsigned char *) ((((char *) (-3 + code_430X))) + (1 + index_436X)))); if ((space_437X < (64 + (((((SstackS) - (Sstack_limitS)))>>2))))) { goto L18838;} else { space_438X = 1 + (((((Sstack_endS) - (SstackS)))>>2)); v_439X = AVAILABLEp(space_438X); if (v_439X) { arg2K0 = 1; arg0K1 = 0; goto L19021;} else { collect_saving_temps(1, 1, &temp1_440X); v_441X = AVAILABLEp(space_438X); if (v_441X) { arg2K0 = 1; arg0K1 = 0; goto L19021;} else { arg2K0 = 0; arg0K1 = 0; goto L19021;}}}} else { goto L18883;}} else { goto L18883;}}} break; case 37 : { if ((1 == (SvalS))) { Scode_pointerS = ((Scode_pointerS) + (((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2))))); arg1K0 = (Scode_pointerS); goto L18459;} else { Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;}} break; case 38 : { Scode_pointerS = ((Scode_pointerS) + (((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2))))); arg1K0 = (Scode_pointerS); goto L18459;} break; case 39 : { if ((0 == (3 & (SvalS)))) { p_442X = SvalS; max_443X = *((unsigned char *) ((Scode_pointerS) + 1)); val_444X = ((p_442X)>>2); if ((val_444X < 0)) { goto L18739;} else { if ((val_444X < max_443X)) { index_445X = 1 + (((val_444X)<<1)); arg0K0 = (((((*((unsigned char *) ((Scode_pointerS) + (1 + index_445X)))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + (2 + index_445X))))); goto L18741;} else { goto L18739;}}} else { push_exception_continuationB(5, 0); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 40 : { stack_nargs_446X = (((*((long *) ((SstackS) + 4))))>>2); if ((0 == stack_nargs_446X)) { arg0_447X = *((long *) ((SstackS) + 12)); rest_list_448X = *((long *) ((SstackS) + 8)); *((long *) (SstackS)) = arg0_447X; SstackS = ((SstackS) + -4); SvalS = (*((long *) (((char *) (-3 + rest_list_448X))))); goto L19771;} else { arg1_449X = *((long *) ((SstackS) + (4 + (((stack_nargs_446X)<<2))))); arg0_450X = *((long *) ((SstackS) + (8 + (((stack_nargs_446X)<<2))))); *((long *) ((SstackS) + (8 + (((stack_nargs_446X)<<2))))) = 1; *((long *) ((SstackS) + 4)) = (-4 + (((stack_nargs_446X)<<2))); *((long *) (SstackS)) = arg0_450X; SstackS = ((SstackS) + -4); SvalS = arg1_449X; goto L19771;}} break; case 41 : { stack_nargs_451X = (((*((long *) ((SstackS) + 4))))>>2); if ((stack_nargs_451X == 0)) { rest_list_452X = *((long *) ((SstackS) + 8)); if ((25 == (*((long *) ((((char *) (-3 + rest_list_452X))) + 4))))) { arg0K0 = 1; goto L18637;} else { *((long *) ((SstackS) + 8)) = (*((long *) ((((char *) (-3 + rest_list_452X))) + 4))); *((long *) ((SstackS) + 12)) = (SvalS); arg0K0 = -2; goto L18637;}} else { if ((stack_nargs_451X == 1)) { if ((25 == (*((long *) ((SstackS) + 8))))) { arg0K0 = 1; goto L18637;} else { *((long *) ((SstackS) + 4)) = 0; *((long *) ((SstackS) + 12)) = (SvalS); arg0K0 = -2; goto L18637;}} else { *((long *) ((SstackS) + (8 + (((stack_nargs_451X)<<2))))) = (SvalS); arg0K0 = -2; goto L18637;}}} break; case 42 : { if ((1 == (SvalS))) { Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { x_453X = (((*((long *) ((SstackS) + 4))))>>2); if ((x_453X == 0)) { rest_list_454X = *((long *) ((SstackS) + 8)); if ((25 == (*((long *) ((((char *) (-3 + rest_list_454X))) + 4))))) { arg0K0 = 1; goto L19662;} else { *((long *) ((SstackS) + 8)) = (*((long *) ((((char *) (-3 + rest_list_454X))) + 4))); *((long *) ((SstackS) + 12)) = (*((long *) (((char *) (-3 + rest_list_454X))))); arg0K0 = -2; goto L19662;}} else { if ((x_453X == 1)) { if ((25 == (*((long *) ((SstackS) + 8))))) { arg0K0 = 1; goto L19662;} else { *((long *) ((SstackS) + 4)) = 0; arg0K0 = -2; goto L19662;}} else { arg0K0 = -2; goto L19662;}}}} break; case 43 : { SstackS = ((SstackS) + 4); arg2_455X = *((long *) (SstackS)); x_456X = SvalS; if ((arg2_455X == x_456X)) { arg0K0 = 5; goto L38244;} else { arg0K0 = 1; goto L38244;}} break; case 44 : { x_457X = SvalS; if ((0 == (3 & x_457X))) { arg0K0 = 5; goto L38256;} else { if ((3 == (3 & x_457X))) { if ((20 == (31 & ((((*((long *) ((((char *) (-3 + x_457X))) + -4))))>>2))))) { arg0K0 = 5; goto L38256;} else { goto L10642;}} else { goto L10642;}}} break; case 45 : { n_458X = SvalS; if ((0 == (3 & n_458X))) { goto L28420;} else { if ((3 == (3 & n_458X))) { if ((20 == (31 & ((((*((long *) ((((char *) (-3 + n_458X))) + -4))))>>2))))) { goto L28420;} else { goto L28421;}} else { goto L28421;}}} break; case 46 : { n_459X = SvalS; if ((0 == (3 & n_459X))) { goto L28577;} else { if ((3 == (3 & n_459X))) { if ((20 == (31 & ((((*((long *) ((((char *) (-3 + n_459X))) + -4))))>>2))))) { goto L28577;} else { goto L28552;}} else { goto L28552;}}} break; case 47 : { n_460X = SvalS; if ((0 == (3 & n_460X))) { goto L28776;} else { if ((3 == (3 & n_460X))) { if ((20 == (31 & ((((*((long *) ((((char *) (-3 + n_460X))) + -4))))>>2))))) { goto L28776;} else { goto L28751;}} else { goto L28751;}}} break; case 48 : { n_461X = SvalS; if ((0 == (3 & n_461X))) { goto L28975;} else { if ((3 == (3 & n_461X))) { if ((20 == (31 & ((((*((long *) ((((char *) (-3 + n_461X))) + -4))))>>2))))) { goto L28975;} else { goto L28950;}} else { goto L28950;}}} break; case 49 : { x_462X = SvalS; if ((0 == (3 & x_462X))) { SvalS = 5; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_462X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 50 : { x_463X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_463X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 51 : { x_464X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_464X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 52 : { SstackS = ((SstackS) + 4); x_465X = *((long *) (SstackS)); y_466X = SvalS; if ((0 == (3 & (x_465X | y_466X)))) { z_467X = (((x_465X)>>2)) + (((y_466X)>>2)); if ((536870911 < z_467X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_465X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_466X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { if ((z_467X < -536870912)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_465X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_466X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { SvalS = (((z_467X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_465X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_466X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 53 : { SstackS = ((SstackS) + 4); arg2_468X = *((long *) (SstackS)); x_469X = SvalS; if ((0 == (3 & (arg2_468X | x_469X)))) { a_470X = ((arg2_468X)>>2); b_471X = ((x_469X)>>2); if ((a_470X < 0)) { arg0K0 = (0 - a_470X); goto L6795;} else { arg0K0 = a_470X; goto L6795;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_468X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_469X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 54 : { SstackS = ((SstackS) + 4); x_472X = *((long *) (SstackS)); y_473X = SvalS; if ((0 == (3 & (x_472X | y_473X)))) { z_474X = (((x_472X)>>2)) - (((y_473X)>>2)); if ((536870911 < z_474X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_472X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_473X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { if ((z_474X < -536870912)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_472X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_473X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { SvalS = (((z_474X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_472X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_473X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 55 : { SstackS = ((SstackS) + 4); arg2_475X = *((long *) (SstackS)); x_476X = SvalS; if ((0 == (3 & (arg2_475X | x_476X)))) { if ((0 == x_476X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_475X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_476X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { a_477X = ((arg2_475X)>>2); b_478X = ((x_476X)>>2); if ((a_477X < 0)) { arg0K0 = (0 - a_477X); goto L7076;} else { arg0K0 = a_477X; goto L7076;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_475X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_476X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 56 : { SstackS = ((SstackS) + 4); arg2_479X = *((long *) (SstackS)); x_480X = SvalS; if ((0 == (3 & (arg2_479X | x_480X)))) { if ((arg2_479X == x_480X)) { arg0K0 = 5; goto L31885;} else { arg0K0 = 1; goto L31885;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_479X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_480X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 57 : { SstackS = ((SstackS) + 4); arg2_481X = *((long *) (SstackS)); x_482X = SvalS; if ((0 == (3 & (arg2_481X | x_482X)))) { if ((arg2_481X < x_482X)) { arg0K0 = 5; goto L31963;} else { arg0K0 = 1; goto L31963;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_481X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_482X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 58 : { SstackS = ((SstackS) + 4); arg2_483X = *((long *) (SstackS)); x_484X = SvalS; if ((0 == (3 & (arg2_483X | x_484X)))) { if ((x_484X < arg2_483X)) { arg0K0 = 5; goto L32041;} else { arg0K0 = 1; goto L32041;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_483X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_484X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 59 : { SstackS = ((SstackS) + 4); arg2_485X = *((long *) (SstackS)); x_486X = SvalS; if ((0 == (3 & (arg2_485X | x_486X)))) { if ((x_486X < arg2_485X)) { arg0K0 = 1; goto L32119;} else { arg0K0 = 5; goto L32119;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_485X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_486X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 60 : { SstackS = ((SstackS) + 4); arg2_487X = *((long *) (SstackS)); x_488X = SvalS; if ((0 == (3 & (arg2_487X | x_488X)))) { if ((arg2_487X < x_488X)) { arg0K0 = 1; goto L32197;} else { arg0K0 = 5; goto L32197;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_487X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_488X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 61 : { SstackS = ((SstackS) + 4); arg2_489X = *((long *) (SstackS)); x_490X = SvalS; if ((0 == (3 & (arg2_489X | x_490X)))) { if ((0 == x_490X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_489X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_490X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { a_491X = ((arg2_489X)>>2); b_492X = ((x_490X)>>2); if ((a_491X < 0)) { arg0K0 = (0 - a_491X); goto L7253;} else { arg0K0 = a_491X; goto L7253;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_489X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_490X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 62 : { SstackS = ((SstackS) + 4); x_493X = *((long *) (SstackS)); y_494X = SvalS; if ((0 == (3 & (x_493X | y_494X)))) { if ((0 == y_494X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_493X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_494X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { a_495X = ((x_493X)>>2); if ((a_495X < 0)) { arg0K0 = (0 - a_495X); goto L25367;} else { arg0K0 = a_495X; goto L25367;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_493X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_494X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 63 : { x_496X = SvalS; if ((0 == (3 & x_496X))) { SvalS = x_496X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_496X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 64 : { x_497X = SvalS; if ((0 == (3 & x_497X))) { SvalS = x_497X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_497X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 65 : { x_498X = SvalS; if ((0 == (3 & x_498X))) { SvalS = 4; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_498X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 66 : { x_499X = SvalS; if ((0 == (3 & x_499X))) { SvalS = x_499X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_499X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 67 : { x_500X = SvalS; if ((0 == (3 & x_500X))) { SvalS = 0; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_500X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 68 : { x_501X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_501X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 69 : { x_502X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_502X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 70 : { x_503X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_503X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 71 : { x_504X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_504X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 72 : { x_505X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_505X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 73 : { x_506X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_506X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 74 : { x_507X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_507X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 75 : { x_508X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_508X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 76 : { x_509X = SvalS; if ((0 == (3 & x_509X))) { if ((x_509X < 0)) { goto L38513;} else { SvalS = 0; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} else { goto L38513;}} break; case 77 : { n_510X = SvalS; if ((0 == (3 & n_510X))) { n_511X = ((n_510X)>>2); if ((n_511X < 0)) { arg0K0 = (0 - n_511X); goto L25653;} else { arg0K0 = n_511X; goto L25653;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = n_510X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 78 : { SstackS = ((SstackS) + 4); arg2_512X = *((long *) (SstackS)); x_513X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_512X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_513X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} break; case 79 : { SstackS = ((SstackS) + 4); arg2_514X = *((long *) (SstackS)); x_515X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_514X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_515X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} break; case 80 : { SstackS = ((SstackS) + 4); arg2_516X = *((long *) (SstackS)); x_517X = SvalS; push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_516X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_517X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} break; case 81 : { x_518X = SvalS; if ((0 == (3 & x_518X))) { SvalS = (~ (3 | x_518X)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_518X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 82 : { SstackS = ((SstackS) + 4); arg2_519X = *((long *) (SstackS)); x_520X = SvalS; if ((0 == (3 & (arg2_519X | x_520X)))) { SvalS = (arg2_519X & x_520X); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_519X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_520X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 83 : { SstackS = ((SstackS) + 4); arg2_521X = *((long *) (SstackS)); x_522X = SvalS; if ((0 == (3 & (arg2_521X | x_522X)))) { SvalS = (arg2_521X | x_522X); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_521X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_522X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 84 : { SstackS = ((SstackS) + 4); arg2_523X = *((long *) (SstackS)); x_524X = SvalS; if ((0 == (3 & (arg2_523X | x_524X)))) { SvalS = (arg2_523X ^ x_524X); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_523X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_524X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 85 : { SstackS = ((SstackS) + 4); x_525X = *((long *) (SstackS)); y_526X = SvalS; if ((0 == (3 & (x_525X | y_526X)))) { value_527X = ((x_525X)>>2); count_528X = ((y_526X)>>2); if ((count_528X < 0)) { PS_SHIFT_RIGHT(value_527X, (0 - count_528X), x_529X) SvalS = (((x_529X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { PS_SHIFT_LEFT(value_527X, count_528X, x_530X) result_531X = (((((x_530X)<<2)))>>2); PS_SHIFT_RIGHT(result_531X, count_528X, x_532X) if ((value_527X == x_532X)) { if ((value_527X < 0)) { if ((result_531X < 0)) { goto L25932;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_525X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_526X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} else { if ((result_531X < 0)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_525X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_526X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { goto L25932;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_525X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_526X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_525X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = y_526X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 86 : { x_533X = SvalS; if ((9 == (255 & x_533X))) { arg0K0 = 5; goto L38601;} else { arg0K0 = 1; goto L38601;}} break; case 87 : { SstackS = ((SstackS) + 4); arg2_534X = *((long *) (SstackS)); if ((9 == (255 & arg2_534X))) { if ((9 == (255 & (SvalS)))) { x_535X = SvalS; if ((arg2_534X == x_535X)) { arg0K0 = 5; goto L28195;} else { arg0K0 = 1; goto L28195;}} else { goto L28168;}} else { goto L28168;}} break; case 88 : { SstackS = ((SstackS) + 4); arg2_536X = *((long *) (SstackS)); if ((9 == (255 & arg2_536X))) { if ((9 == (255 & (SvalS)))) { x_537X = SvalS; if ((arg2_536X < x_537X)) { arg0K0 = 5; goto L28105;} else { arg0K0 = 1; goto L28105;}} else { goto L28078;}} else { goto L28078;}} break; case 89 : { if ((9 == (255 & (SvalS)))) { SvalS = (((((((((SvalS))>>8)))))<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 90 : { if ((0 == (3 & (SvalS)))) { x_538X = (((SvalS))>>2); if ((255 < x_538X)) { goto L32889;} else { if ((x_538X < 0)) { goto L32889;} else { SvalS = (9 + (((((x_538X)))<<8))); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 91 : { x_539X = SvalS; if ((21 == x_539X)) { arg0K0 = 5; goto L38630;} else { arg0K0 = 1; goto L38630;}} break; case 92 : { x_540X = SvalS; type_541X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((3 == (3 & x_540X))) { if (((31 & ((((*((long *) ((((char *) (-3 + x_540X))) + -4))))>>2))) == type_541X)) { arg0K0 = 5; goto L38644;} else { arg0K0 = 1; goto L38644;}} else { arg0K0 = 1; goto L38644;}} break; case 93 : { stob_542X = SvalS; type_543X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((3 == (3 & stob_542X))) { if (((31 & ((((*((long *) ((((char *) (-3 + stob_542X))) + -4))))>>2))) == type_543X)) { SvalS = (-4 & (3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + stob_542X))) + -4))))>>8)))); Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L21250;}} else { goto L21250;}} break; case 94 : { len_544X = *((unsigned char *) ((Scode_pointerS) + 1)); space_545X = 4 + (((len_544X)<<2)); v_546X = AVAILABLEp(space_545X); if (v_546X) { goto L21322;} else { collect_saving_temps(1, 1, &temp1_547X); v_548X = AVAILABLEp(space_545X); if (v_548X) { goto L21322;} else { ps_error("Scheme48 heap overflow", 0); goto L21322;}}} break; case 95 : { SstackS = ((SstackS) + 4); len_549X = (((*((long *) (SstackS))))>>2); space_550X = 4 + (((len_549X)<<2)); v_551X = AVAILABLEp(space_550X); if (v_551X) { goto L21504;} else { collect_saving_temps(1, 1, &temp1_552X); v_553X = AVAILABLEp(space_550X); if (v_553X) { goto L21504;} else { ps_error("Scheme48 heap overflow", 0); goto L21504;}}} break; case 96 : { stob_554X = SvalS; offset_555X = *((unsigned char *) ((Scode_pointerS) + 2)); type_556X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((3 == (3 & stob_554X))) { if (((31 & ((((*((long *) ((((char *) (-3 + stob_554X))) + -4))))>>2))) == type_556X)) { SvalS = (*((long *) ((((char *) (-3 + stob_554X))) + (((offset_555X)<<2))))); Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L21714;}} else { goto L21714;}} break; case 97 : { SstackS = ((SstackS) + 4); stob_557X = *((long *) (SstackS)); value_558X = SvalS; offset_559X = *((unsigned char *) ((Scode_pointerS) + 2)); type_560X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((3 == (3 & stob_557X))) { if (((31 & ((((*((long *) ((((char *) (-3 + stob_557X))) + -4))))>>2))) == type_560X)) { if ((3 == (3 & stob_557X))) { if ((0 == (128 & (*((long *) ((((char *) (-3 + stob_557X))) + -4)))))) { addr_561X = (((char *) (-3 + stob_557X))) + (((offset_559X)<<2)); S48_WRITE_BARRIER(stob_557X, addr_561X, value_558X); *((long *) addr_561X) = value_558X; SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L21817;}} else { goto L21817;}} else { goto L21817;}} else { goto L21817;}} break; case 98 : { SstackS = ((SstackS) + 4); len_562X = *((long *) (SstackS)); init_563X = SvalS; type_564X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((0 == (3 & len_562X))) { len_565X = ((len_562X)>>2); size_566X = 1 + len_565X; if ((len_565X < 0)) { goto L22002;} else { if ((4194305 < size_566X)) { goto L22002;} else { v_567X = AVAILABLEp(size_566X); if (v_567X) { arg2K0 = 1; arg0K1 = init_563X; goto L22020;} else { temp0_568X = collect_saving_temps(init_563X, 1, &temp1_569X); v_570X = AVAILABLEp(size_566X); if (v_570X) { arg2K0 = 1; arg0K1 = temp0_568X; goto L22020;} else { arg2K0 = 0; arg0K1 = temp0_568X; goto L22020;}}}}} else { push_exception_continuationB(5, 2); *((long *) (SstackS)) = (((type_564X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = len_562X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = init_563X; SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;}} break; case 99 : { SstackS = ((SstackS) + 4); stob_571X = *((long *) (SstackS)); index_572X = SvalS; type_573X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((0 == (3 & index_572X))) { if ((3 == (3 & stob_571X))) { if (((31 & ((((*((long *) ((((char *) (-3 + stob_571X))) + -4))))>>2))) == type_573X)) { len_574X = (((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + stob_571X))) + -4))))>>8))))>>2); index_575X = ((index_572X)>>2); if ((index_575X < 0)) { goto L22298;} else { if ((index_575X < len_574X)) { SvalS = (*((long *) ((((char *) (-3 + stob_571X))) + (-4 & index_572X)))); Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L22298;}}} else { goto L22275;}} else { goto L22275;}} else { goto L22275;}} break; case 100 : { SstackS = ((SstackS) + 4); arg2_576X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); stob_577X = *((long *) (SstackS)); value_578X = SvalS; type_579X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((0 == (3 & arg2_576X))) { if ((3 == (3 & stob_577X))) { if (((31 & ((((*((long *) ((((char *) (-3 + stob_577X))) + -4))))>>2))) == type_579X)) { if ((3 == (3 & stob_577X))) { if ((0 == (128 & (*((long *) ((((char *) (-3 + stob_577X))) + -4)))))) { len_580X = (((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + stob_577X))) + -4))))>>8))))>>2); index_581X = ((arg2_576X)>>2); if ((index_581X < 0)) { goto L22538;} else { if ((index_581X < len_580X)) { addr_582X = (((char *) (-3 + stob_577X))) + (-4 & arg2_576X); S48_WRITE_BARRIER(stob_577X, addr_582X, value_578X); *((long *) addr_582X) = value_578X; SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L22538;}}} else { goto L22513;}} else { goto L22513;}} else { goto L22513;}} else { goto L22513;}} else { goto L22513;}} break; case 101 : { SstackS = ((SstackS) + 4); arg2_583X = *((long *) (SstackS)); if ((0 == (3 & (arg2_583X | (SvalS))))) { len_584X = ((arg2_583X)>>2); init_585X = (((SvalS))>>2); size_586X = 1 + ((((3 + len_584X))>>2)); if ((len_584X < 0)) { goto L26103;} else { if ((4194305 < size_586X)) { goto L26103;} else { v_587X = AVAILABLEp(size_586X); if (v_587X) { goto L26195;} else { collect_saving_temps(1, 1, &temp1_588X); v_589X = AVAILABLEp(size_586X); if (v_589X) { goto L26195;} else { push_exception_continuationB(8, 1); *((long *) (SstackS)) = (((len_584X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((init_585X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_583X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 102 : { obj_590X = SvalS; if ((3 == (3 & obj_590X))) { if ((18 == (31 & ((((*((long *) ((((char *) (-3 + obj_590X))) + -4))))>>2))))) { SvalS = (((((long)(((unsigned long)(*((long *) ((((char *) (-3 + (SvalS)))) + -4))))>>8)))<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L36456;}} else { goto L36456;}} break; case 103 : { SstackS = ((SstackS) + 4); arg2_591X = *((long *) (SstackS)); if ((3 == (3 & arg2_591X))) { if ((18 == (31 & ((((*((long *) ((((char *) (-3 + arg2_591X))) + -4))))>>2))))) { if ((0 == (3 & (SvalS)))) { index_592X = (((SvalS))>>2); len_593X = (long)(((unsigned long)(*((long *) ((((char *) (-3 + arg2_591X))) + -4))))>>8); if ((index_592X < 0)) { goto L32995;} else { if ((index_592X < len_593X)) { SvalS = ((((*((unsigned char *) ((((char *) (-3 + arg2_591X))) + index_592X))))<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L32995;}}} else { goto L36032;}} else { goto L36032;}} else { goto L36032;}} break; case 104 : { SstackS = ((SstackS) + 4); arg2_594X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg3_595X = *((long *) (SstackS)); if ((3 == (3 & arg3_595X))) { if ((18 == (31 & ((((*((long *) ((((char *) (-3 + arg3_595X))) + -4))))>>2))))) { if ((0 == (3 & (arg2_594X | (SvalS))))) { index_596X = ((arg2_594X)>>2); Kchar_597X = (((SvalS))>>2); if ((3 == (3 & arg3_595X))) { if ((0 == (128 & (*((long *) ((((char *) (-3 + arg3_595X))) + -4)))))) { len_598X = (long)(((unsigned long)(*((long *) ((((char *) (-3 + arg3_595X))) + -4))))>>8); if ((index_596X < 0)) { goto L29943;} else { if ((index_596X < len_598X)) { *((unsigned char *) ((((char *) (-3 + arg3_595X))) + index_596X)) = Kchar_597X; SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L29943;}}} else { goto L29922;}} else { goto L29922;}} else { goto L34444;}} else { goto L34444;}} else { goto L34444;}} break; case 105 : { SstackS = ((SstackS) + 4); arg2_599X = *((long *) (SstackS)); if ((0 == (3 & arg2_599X))) { if ((9 == (255 & (SvalS)))) { len_600X = ((arg2_599X)>>2); init_601X = ((((SvalS))>>8)); size_602X = 1 + ((((4 + len_600X))>>2)); if ((len_600X < 0)) { goto L26337;} else { if ((4194305 < size_602X)) { goto L26337;} else { v_603X = AVAILABLEp(size_602X); if (v_603X) { goto L26429;} else { collect_saving_temps(1, 1, &temp1_604X); v_605X = AVAILABLEp(size_602X); if (v_605X) { goto L26429;} else { push_exception_continuationB(8, 1); *((long *) (SstackS)) = (((len_600X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (9 + ((((init_601X))<<8))); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}}}} else { goto L33076;}} else { goto L33076;}} break; case 106 : { obj_606X = SvalS; if ((3 == (3 & obj_606X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + obj_606X))) + -4))))>>2))))) { SvalS = (-4 + (((((long)(((unsigned long)(*((long *) ((((char *) (-3 + (SvalS)))) + -4))))>>8)))<<2))); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L36506;}} else { goto L36506;}} break; case 107 : { SstackS = ((SstackS) + 4); arg2_607X = *((long *) (SstackS)); if ((3 == (3 & arg2_607X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg2_607X))) + -4))))>>2))))) { if ((0 == (3 & (SvalS)))) { index_608X = (((SvalS))>>2); len_609X = -1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg2_607X))) + -4))))>>8)); if ((index_608X < 0)) { goto L33139;} else { if ((index_608X < len_609X)) { SvalS = (9 + ((((((*((unsigned char *) ((((char *) (-3 + arg2_607X))) + index_608X))))))<<8))); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L33139;}}} else { goto L36128;}} else { goto L36128;}} else { goto L36128;}} break; case 108 : { SstackS = ((SstackS) + 4); arg2_610X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg3_611X = *((long *) (SstackS)); if ((3 == (3 & arg3_611X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg3_611X))) + -4))))>>2))))) { if ((0 == (3 & arg2_610X))) { if ((9 == (255 & (SvalS)))) { index_612X = ((arg2_610X)>>2); Kchar_613X = ((((SvalS))>>8)); if ((3 == (3 & arg3_611X))) { if ((0 == (128 & (*((long *) ((((char *) (-3 + arg3_611X))) + -4)))))) { len_614X = -1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg3_611X))) + -4))))>>8)); if ((index_612X < 0)) { goto L30098;} else { if ((index_612X < len_614X)) { *((unsigned char *) ((((char *) (-3 + arg3_611X))) + index_612X)) = (Kchar_613X); SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L30098;}}} else { goto L30077;}} else { goto L30077;}} else { goto L34570;}} else { goto L34570;}} else { goto L34570;}} else { goto L34570;}} break; case 109 : { v_615X = AVAILABLEp(3); if (v_615X) { goto L24507;} else { collect_saving_temps(1, 1, &temp1_616X); v_617X = AVAILABLEp(3); if (v_617X) { goto L24507;} else { ps_error("Scheme48 heap overflow", 0); goto L24507;}}} break; case 110 : { obj_618X = SvalS; if ((3 == (3 & obj_618X))) { if ((4 == (31 & ((((*((long *) ((((char *) (-3 + obj_618X))) + -4))))>>2))))) { x_619X = SvalS; descriptor_620X = *((long *) ((((char *) (-3 + x_619X))) + 4)); if ((17 == (255 & descriptor_620X))) { if ((529 == (*((long *) ((((char *) (-3 + x_619X))) + 4))))) { arg0K0 = 5; goto L34117;} else { arg0K0 = 1; goto L34117;}} else { arg0K0 = 5; goto L34117;}} else { goto L34098;}} else { goto L34098;}} break; case 111 : { SstackS = ((SstackS) + 4); arg2_621X = *((long *) (SstackS)); if ((3 == (3 & arg2_621X))) { if ((4 == (31 & ((((*((long *) ((((char *) (-3 + arg2_621X))) + -4))))>>2))))) { x_622X = SvalS; if ((1 == x_622X)) { goto L29685;} else { if ((5 == x_622X)) { goto L29685;} else { goto L29692;}}} else { goto L29692;}} else { goto L29692;}} break; case 112 : { x_623X = SvalS; if ((3 == (3 & x_623X))) { if ((0 == (128 & (*((long *) ((((char *) (-3 + x_623X))) + -4)))))) { arg0K0 = 1; goto L38716;} else { arg0K0 = 5; goto L38716;}} else { arg0K0 = 5; goto L38716;}} break; case 113 : { x_624X = SvalS; if ((3 == (3 & x_624X))) { if ((0 == (128 & (*((long *) ((((char *) (-3 + x_624X))) + -4)))))) { *((long *) ((((char *) (-3 + x_624X))) + -4)) = (128 | (*((long *) ((((char *) (-3 + x_624X))) + -4)))); goto L33221;} else { goto L33221;}} else { goto L33221;}} break; case 114 : { v_625X = AVAILABLEp(72); if (v_625X) { arg2K0 = 1; arg0K1 = 0; goto L33272;} else { collect_saving_temps(1, 1, &temp1_626X); v_627X = AVAILABLEp(72); if (v_627X) { arg2K0 = 1; arg0K1 = 0; goto L33272;} else { arg2K0 = 0; arg0K1 = 0; goto L33272;}}} break; case 115 : { v_628X = AVAILABLEp(66); if (v_628X) { arg2K0 = 1; arg0K1 = 0; goto L34688;} else { collect_saving_temps(1, 1, &temp1_629X); v_630X = AVAILABLEp(66); if (v_630X) { arg2K0 = 1; arg0K1 = 0; goto L34688;} else { arg2K0 = 0; arg0K1 = 0; goto L34688;}}} break; case 116 : { v_631X = AVAILABLEp(66); if (v_631X) { arg2K0 = 1; arg0K1 = 0; goto L37560;} else { collect_saving_temps(1, 1, &temp1_632X); v_633X = AVAILABLEp(66); if (v_633X) { arg2K0 = 1; arg0K1 = 0; goto L37560;} else { arg2K0 = 0; arg0K1 = 0; goto L37560;}}} break; case 117 : { v_634X = AVAILABLEp(66); if (v_634X) { arg2K0 = 1; arg0K1 = 0; goto L37820;} else { collect_saving_temps(1, 1, &temp1_635X); v_636X = AVAILABLEp(66); if (v_636X) { arg2K0 = 1; arg0K1 = 0; goto L37820;} else { arg2K0 = 0; arg0K1 = 0; goto L37820;}}} break; case 118 : { v_637X = AVAILABLEp(66); if (v_637X) { arg2K0 = 1; arg0K1 = 0; goto L34173;} else { collect_saving_temps(1, 1, &temp1_638X); v_639X = AVAILABLEp(66); if (v_639X) { arg2K0 = 1; arg0K1 = 0; goto L34173;} else { arg2K0 = 0; arg0K1 = 0; goto L34173;}}} break; case 119 : { obj_640X = SvalS; if ((3 == (3 & obj_640X))) { if ((6 == (31 & ((((*((long *) ((((char *) (-3 + obj_640X))) + -4))))>>2))))) { channel_641X = SvalS; head_642X = Spending_channels_headS; if ((1 == head_642X)) { addr_643X = (((char *) (-3 + channel_641X))) + 16; S48_WRITE_BARRIER(channel_641X, addr_643X, 1); *((long *) addr_643X) = 1; n_644X = ps_abort_fd_op(((((*((long *) ((((char *) (-3 + channel_641X))) + 8))))>>2))); arg0K0 = (((n_644X)<<2)); goto L33343;} else { if ((channel_641X == head_642X)) { channel_645X = Spending_channels_headS; next_646X = *((long *) ((((char *) (-3 + channel_645X))) + 12)); Spending_channels_headS = next_646X; addr_647X = (((char *) (-3 + channel_645X))) + 12; S48_WRITE_BARRIER(channel_645X, addr_647X, 1); *((long *) addr_647X) = 1; if ((1 == next_646X)) { Spending_channels_tailS = 1; goto L8193;} else { goto L8193;}} else { arg0K0 = (*((long *) ((((char *) (-3 + head_642X))) + 12))); arg0K1 = head_642X; goto L8199;}}} else { goto L33326;}} else { goto L33326;}} break; case 120 : { space_648X = 3 * (Snumber_of_channelsS); v_649X = AVAILABLEp(space_648X); if (v_649X) { goto L14798;} else { collect_saving_temps(1, 1, &temp1_650X); v_651X = AVAILABLEp(space_648X); if (v_651X) { goto L14798;} else { ps_error("Scheme48 heap overflow", 0); goto L14798;}}} break; case 121 : { SvalS = 529; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 122 : { SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 123 : { x_652X = SvalS; push_exception_continuationB(16, 1); *((long *) (SstackS)) = x_652X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} break; case 124 : { SvalS = 1; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 125 : { SvalS = 21; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 126 : { v_653X = AVAILABLEp(66); if (v_653X) { arg2K0 = 1; arg0K1 = 0; goto L34789;} else { collect_saving_temps(1, 1, &temp1_654X); v_655X = AVAILABLEp(66); if (v_655X) { arg2K0 = 1; arg0K1 = 0; goto L34789;} else { arg2K0 = 0; arg0K1 = 0; goto L34789;}}} break; case 127 : { SvalS = 13; collect_saving_temps(0, 0, &v_656X); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 128 : { obj_657X = SvalS; if ((3 == (3 & obj_657X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + obj_657X))) + -4))))>>2))))) { x_658X = SvalS; n_659X = -1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + x_658X))) + -4))))>>8)); arg0K0 = 0; arg0K1 = 0; goto L35621;} else { goto L35598;}} else { goto L35598;}} break; case 129 : { v_660X = AVAILABLEp(6); if (v_660X) { goto L38784;} else { collect_saving_temps(1, 1, &temp1_661X); v_662X = AVAILABLEp(6); if (v_662X) { goto L38784;} else { ps_error("Scheme48 heap overflow", 0); goto L38784;}}} break; case 130 : { SstackS = ((SstackS) + 4); arg2_663X = *((long *) (SstackS)); if ((0 == (3 & arg2_663X))) { key_664X = ((arg2_663X)>>2); other_665X = SvalS; if ((5 == key_664X)) { SvalS = (-4 & other_665X); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { if ((0 == key_664X)) { x_666X = s48_available(); SvalS = (((x_666X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { if ((1 == key_664X)) { bytes_667X = s48_heap_size(); SvalS = (-4 & (3 + bytes_667X)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { if ((2 == key_664X)) { SvalS = (((((Sstack_endS) - (Sstack_beginS)))<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { if ((3 == key_664X)) { x_668X = s48_gc_count(); SvalS = (((x_668X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { if ((4 == key_664X)) { push_exception_continuationB(15, 1); *((long *) (SstackS)) = (((key_664X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = other_665X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { push_exception_continuationB(18, 1); *((long *) (SstackS)) = (((key_664X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = other_665X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}}}}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_663X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 131 : { if ((0 == (3 & (SvalS)))) { type_669X = (((SvalS))>>2); arg2K0 = 1; goto L33434;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 132 : { x_670X = SvalS; arg2K0 = 1; arg0K1 = x_670X; goto L38834;} break; case 133 : { SvalS = (Scurrent_threadS); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 134 : { Scurrent_threadS = (SvalS); SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 135 : { SvalS = (Ssession_dataS); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 136 : { Ssession_dataS = (SvalS); SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} break; case 137 : { obj_671X = SvalS; if ((3 == (3 & obj_671X))) { if ((2 == (31 & ((((*((long *) ((((char *) (-3 + obj_671X))) + -4))))>>2))))) { if ((((((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + (SvalS)))) + -4))))>>8))))>>2)) < 161)) { goto L20591;} else { temp_672X = Sexception_handlersS; Sexception_handlersS = (SvalS); SvalS = temp_672X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} else { goto L20591;}} else { goto L20591;}} break; case 138 : { SstackS = ((SstackS) + 4); p_673X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); template_674X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); SstackS = ((SstackS) + 4); p_675X = *((long *) (SstackS)); StemplateS = template_674X; Scode_pointerS = ((((char *) (-3 + (*((long *) (((char *) (-3 + template_674X)))))))) + ((((((((((p_673X)>>2)) + (((p_675X)>>2))))<<2)))>>2))); arg1K0 = (Scode_pointerS); goto L18459;} break; case 139 : { obj_676X = SvalS; if ((3 == (3 & obj_676X))) { if ((2 == (31 & ((((*((long *) ((((char *) (-3 + obj_676X))) + -4))))>>2))))) { if ((((((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + (SvalS)))) + -4))))>>8))))>>2)) < 5)) { goto L19515;} else { temp_677X = Sinterrupt_handlersS; Sinterrupt_handlersS = (SvalS); SvalS = temp_677X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} else { goto L19515;}} else { goto L19515;}} break; case 140 : { old_678X = Senabled_interruptsS; p_679X = SvalS; Senabled_interruptsS = (((p_679X)>>2)); if ((0 == ((Spending_interruptsS) & (Senabled_interruptsS)))) { s48_Spending_interruptPS = 0; if ((s48_Spending_eventsPS)) { s48_Spending_interruptPS = 1; goto L38875;} else { goto L38875;}} else { s48_Spending_interruptPS = 1; goto L38875;}} break; case 141 : { SstackS = ((SstackS) + 4); p_680X = *((long *) (SstackS)); Senabled_interruptsS = (((p_680X)>>2)); if ((0 == ((Spending_interruptsS) & (Senabled_interruptsS)))) { s48_Spending_interruptPS = 0; if ((s48_Spending_eventsPS)) { s48_Spending_interruptPS = 1; goto L18473;} else { goto L18473;}} else { s48_Spending_interruptPS = 1; goto L18473;}} break; case 142 : { if ((0 == (3 & (SvalS)))) { p_681X = SvalS; Spending_interruptsS = (-2 & (Spending_interruptsS)); if ((0 == ((Spending_interruptsS) & (Senabled_interruptsS)))) { s48_Spending_interruptPS = 0; if ((s48_Spending_eventsPS)) { s48_Spending_interruptPS = 1; goto L37380;} else { goto L37380;}} else { s48_Spending_interruptPS = 1; goto L37380;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} break; case 143 : { SstackS = ((SstackS) + 4); arg2_682X = *((long *) (SstackS)); if ((0 == (3 & arg2_682X))) { x_683X = SvalS; if ((1 == x_683X)) { goto L34317;} else { if ((5 == x_683X)) { goto L34317;} else { goto L34322;}}} else { goto L34322;}} break; case 144 : { SstackS = ((SstackS) + 4); nargs_684X = (((*((long *) (SstackS))))>>2); SstackS = ((SstackS) + 4); p_685X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); rest_list_686X = *((long *) (SstackS)); if ((14 < nargs_684X)) { push_exception_continuationB(20, 1); *((long *) (SstackS)) = (*((long *) ((SstackS) + (-4 & p_685X)))); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = nargs_684X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { arg0K0 = rest_list_686X; goto L22810;}} break; case 145 : { v_687X = AVAILABLEp(5); if (v_687X) { arg2K0 = 1; arg0K1 = 0; goto L33543;} else { collect_saving_temps(1, 1, &temp1_688X); v_689X = AVAILABLEp(5); if (v_689X) { arg2K0 = 1; arg0K1 = 0; goto L33543;} else { arg2K0 = 0; arg0K1 = 0; goto L33543;}}} break; case 147 : { SstackS = ((SstackS) + 4); arg2_690X = *((long *) (SstackS)); if ((3 == (3 & arg2_690X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg2_690X))) + -4))))>>2))))) { x_691X = SvalS; if ((1 == x_691X)) { goto L23934;} else { if ((5 == x_691X)) { goto L23934;} else { goto L23939;}}} else { goto L23939;}} else { goto L23939;}} break; case 148 : { SstackS = ((SstackS) + 4); arg2_692X = *((long *) (SstackS)); if ((0 == (3 & arg2_692X))) { option_693X = ((arg2_692X)>>2); other_694X = SvalS; if ((2 == option_693X)) { x_695X = CHEAP_TIME(); SvalS = (((x_695X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { if ((0 == option_693X)) { seconds_696X = s48_run_time(&mseconds_697X); arg0K0 = option_693X; arg0K1 = seconds_696X; arg0K2 = mseconds_697X; goto L35532;} else { if ((1 == option_693X)) { seconds_698X = s48_real_time(&mseconds_699X); arg0K0 = option_693X; arg0K1 = seconds_698X; arg0K2 = mseconds_699X; goto L35532;} else { push_exception_continuationB(18, 1); *((long *) (SstackS)) = (((option_693X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = other_694X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_692X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 149 : { SstackS = ((SstackS) + 4); arg2_700X = *((long *) (SstackS)); if ((0 == (3 & arg2_700X))) { key_701X = ((arg2_700X)>>2); value_702X = SvalS; status_703X = s48_extended_vm(key_701X, value_702X); if ((0 == status_703X)) { SvalS = (s48_Sextension_valueS); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { if ((1 == status_703X)) { push_exception_continuationB(23, 1); *((long *) (SstackS)) = (((key_701X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = value_702X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { push_exception_continuationB(24, 1); *((long *) (SstackS)) = (((key_701X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = value_702X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_700X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} break; case 150 : { SstackS = ((SstackS) + 4); arg2_704X = *((long *) (SstackS)); x_705X = SvalS; Senabled_interruptsS = -1; if ((0 == ((Spending_interruptsS) & (Senabled_interruptsS)))) { s48_Spending_interruptPS = 0; if ((s48_Spending_eventsPS)) { s48_Spending_interruptPS = 1; goto L38935;} else { goto L38935;}} else { s48_Spending_interruptPS = 1; goto L38935;}} break; case 151 : { SstackS = ((SstackS) + 4); arg2_706X = *((long *) (SstackS)); if ((3 == (3 & arg2_706X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg2_706X))) + -4))))>>2))))) { obj_707X = SvalS; if ((3 == (3 & obj_707X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + obj_707X))) + -4))))>>2))))) { x_708X = SvalS; len_709X = (long)(((unsigned long)(*((long *) ((((char *) (-3 + arg2_706X))) + -4))))>>8); if ((len_709X == ((long)(((unsigned long)(*((long *) ((((char *) (-3 + x_708X))) + -4))))>>8)))) { if (((!memcmp((void *)(((char *) (-3 + x_708X))), (void *)(((char *) (-3 + arg2_706X))),len_709X)))) { arg0K0 = 5; goto L27871;} else { arg0K0 = 1; goto L27871;}} else { arg0K0 = 1; goto L27871;}} else { goto L27838;}} else { goto L27838;}} else { goto L27838;}} else { goto L27838;}} break; case 152 : { space_710X = 1 + ((((4 + ((((SvalS))>>2))))>>2)); v_711X = AVAILABLEp(space_710X); if (v_711X) { goto L33752;} else { collect_saving_temps(1, 1, &temp1_712X); v_713X = AVAILABLEp(space_710X); if (v_713X) { goto L33752;} else { ps_error("Scheme48 heap overflow", 0); goto L33752;}}} break; case 153 : { SstackS = ((SstackS) + 4); thing_714X = *((long *) (SstackS)); list_715X = SvalS; arg0K0 = list_715X; arg0K1 = list_715X; arg2K2 = 1; goto L29340;} break; case 154 : { SstackS = ((SstackS) + 4); arg2_716X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg3_717X = *((long *) (SstackS)); if ((0 == (3 & (SvalS)))) { index_718X = (((SvalS))>>2); if ((3 == (3 & arg3_717X))) { if ((9 == (31 & ((((*((long *) ((((char *) (-3 + arg3_717X))) + -4))))>>2))))) { if ((arg2_716X == (*((long *) (((char *) (-3 + arg3_717X))))))) { len_719X = (((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg3_717X))) + -4))))>>8))))>>2); if ((index_718X < 0)) { goto L27544;} else { if ((index_718X < len_719X)) { SvalS = (*((long *) ((((char *) (-3 + arg3_717X))) + (((index_718X)<<2))))); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L27544;}}} else { goto L27564;}} else { goto L27564;}} else { goto L27564;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg3_717X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_716X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;}} break; case 155 : { SstackS = ((SstackS) + 4); arg2_720X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg3_721X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg4_722X = *((long *) (SstackS)); if ((0 == (3 & arg2_720X))) { index_723X = ((arg2_720X)>>2); value_724X = SvalS; if ((3 == (3 & arg4_722X))) { if ((9 == (31 & ((((*((long *) ((((char *) (-3 + arg4_722X))) + -4))))>>2))))) { if ((arg3_721X == (*((long *) (((char *) (-3 + arg4_722X))))))) { if ((3 == (3 & arg4_722X))) { if ((0 == (128 & (*((long *) ((((char *) (-3 + arg4_722X))) + -4)))))) { len_725X = (((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg4_722X))) + -4))))>>8))))>>2); if ((index_723X < 0)) { goto L30845;} else { if ((index_723X < len_725X)) { addr_726X = (((char *) (-3 + arg4_722X))) + (((index_723X)<<2)); S48_WRITE_BARRIER(arg4_722X, addr_726X, value_724X); *((long *) addr_726X) = value_724X; SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L30845;}}} else { goto L30867;}} else { goto L30867;}} else { goto L30867;}} else { goto L30867;}} else { goto L30867;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg4_722X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg3_721X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_720X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 4; goto L16686;}} break; case 156 : { SstackS = ((SstackS) + 4); arg2_727X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg3_728X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg4_729X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg5_730X = *((long *) (SstackS)); if ((0 == (3 & ((arg4_729X | arg2_727X) | (SvalS))))) { from_index_731X = ((arg4_729X)>>2); to_index_732X = ((arg2_727X)>>2); count_733X = (((SvalS))>>2); if ((3 == (3 & arg5_730X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg5_730X))) + -4))))>>2))))) { goto L31096;} else { goto L31091;}} else { goto L31091;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg5_730X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg4_729X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg3_728X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_727X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 5; goto L16686;}} break; case 157 : { v_734X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((0 == v_734X)) { arg0K0 = (SvalS); goto L23066;} else { merged_arg0K0 = 0; get_current_port_return_tag = 0; goto get_current_port; get_current_port_return_0: v_735X = get_current_port0_return_value; arg0K0 = v_735X; goto L23066;}} break; case 158 : { v_736X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((0 == v_736X)) { arg0K0 = (SvalS); goto L23286;} else { merged_arg0K0 = 0; get_current_port_return_tag = 1; goto get_current_port; get_current_port_return_1: v_737X = get_current_port0_return_value; arg0K0 = v_737X; goto L23286;}} break; case 159 : { v_738X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((0 == v_738X)) { v_739X = SvalS; SstackS = ((SstackS) + 4); arg0K0 = (*((long *) (SstackS))); arg0K1 = v_739X; goto L23499;} else { merged_arg0K0 = 4; get_current_port_return_tag = 2; goto get_current_port; get_current_port_return_2: v_740X = get_current_port0_return_value; arg0K0 = (SvalS); arg0K1 = v_740X; goto L23499;}} break; case 160 : { x_741X = SvalS; out_742X = stderr; arg0K0 = x_741X; goto L29593;} break; }} L16686: { nargs_743X = arg0K0; opcode_744X = (((*((long *) ((SstackS) + (8 + (((nargs_743X)<<2)))))))>>2); obj_745X = Sexception_handlersS; if ((3 == (3 & obj_745X))) { if ((2 == (31 & ((((*((long *) ((((char *) (-3 + obj_745X))) + -4))))>>2))))) { goto L16745;} else { goto L16818;}} else { goto L16818;}} L23853: { env_746X = arg0K0; i_747X = arg0K1; if ((0 == i_747X)) { SvalS = (*((long *) ((((char *) (-3 + env_746X))) + ((((*((unsigned char *) ((Scode_pointerS) + 2))))<<2))))); if ((529 == (SvalS))) { push_exception_continuationB(0, 3); arg0K0 = 0; goto L16686;} else { Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;}} else { arg0K0 = (*((long *) (((char *) (-3 + env_746X))))); arg0K1 = (-1 + i_747X); goto L23853;}} L20268: { env_748X = arg0K0; i_749X = arg0K1; if ((0 == i_749X)) { SvalS = (*((long *) ((((char *) (-3 + env_748X))) + ((((((((*((unsigned char *) ((Scode_pointerS) + 3))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 4)))))<<2))))); if ((529 == (SvalS))) { push_exception_continuationB(0, 5); arg0K0 = 0; goto L16686;} else { Scode_pointerS = ((Scode_pointerS) + 5); arg1K0 = (Scode_pointerS); goto L18459;}} else { arg0K0 = (*((long *) (((char *) (-3 + env_748X))))); arg0K1 = (-1 + i_749X); goto L20268;}} L20206: { env_750X = arg0K0; i_751X = arg0K1; if ((0 == i_751X)) { index_752X = ((((*((unsigned char *) ((Scode_pointerS) + 3))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 4))); value_753X = SvalS; addr_754X = (((char *) (-3 + env_750X))) + (((index_752X)<<2)); S48_WRITE_BARRIER(env_750X, addr_754X, value_753X); *((long *) addr_754X) = value_753X; SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 5); arg1K0 = (Scode_pointerS); goto L18459;} else { arg0K0 = (*((long *) (((char *) (-3 + env_750X))))); arg0K1 = (-1 + i_751X); goto L20206;}} L20985: { space_755X = arg0K0; v_756X = AVAILABLEp(space_755X); if (v_756X) { arg2K0 = 1; arg0K1 = 0; goto L21059;} else { collect_saving_temps(1, 1, &temp1_757X); v_758X = AVAILABLEp(space_755X); if (v_758X) { arg2K0 = 1; arg0K1 = 0; goto L21059;} else { arg2K0 = 0; arg0K1 = 0; goto L21059;}}} L20992: { env_759X = arg0K0; v_760X = AVAILABLEp(3); if (v_760X) { arg2K0 = 1; arg0K1 = env_759X; goto L21017;} else { temp0_761X = collect_saving_temps(env_759X, 1, &temp1_762X); v_763X = AVAILABLEp(3); if (v_763X) { arg2K0 = 1; arg0K1 = temp0_761X; goto L21017;} else { arg2K0 = 0; arg0K1 = temp0_761X; goto L21017;}}} L20787: { len_764X = ((total_count_394X)<<2); addr_765X = ALLOCATE_SPACE(2, (4 + len_764X)); *((long *) addr_765X) = (10 + (((len_764X)<<8))); new_env_766X = 3 + (((long) (addr_765X + 4))); v_767X = *((unsigned char *) ((Scode_pointerS) + 1)); if ((0 == v_767X)) { arg0K0 = 0; goto L20801;} else { value_768X = SvalS; addr_769X = ((char *) (-3 + new_env_766X)); S48_WRITE_BARRIER(new_env_766X, addr_769X, value_768X); *((long *) addr_769X) = value_768X; arg0K0 = 1; goto L20801;}} L20713: { okayP_770X = arg2K0; key_771X = arg0K1; if (okayP_770X) { arg0K0 = key_771X; goto L20701;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_771X; goto L20701;}} L19868: { Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L19903: { SstackS = ((((char *) (-3 + (Sbottom_of_stackS)))) + -8); *((long *) (((char *) (-3 + (Sbottom_of_stackS))))) = cont_403X; ScontS = (Sbottom_of_stackS); goto L19868;} L19869: { if ((1 == cont_403X)) { if ((0 == (3 & (SvalS)))) { s48_Scallback_return_stack_blockS = 1; return ((((SvalS))>>2));} else { goto L19884;}} else { goto L19884;}} L19229: { okayP_772X = arg2K0; key_773X = arg0K1; if (okayP_772X) { arg0K0 = key_773X; goto L19184;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_773X; goto L19184;}} L19141: { if ((s48_Spending_interruptPS)) { if ((s48_Spending_eventsPS)) { s48_Spending_eventsPS = 0; check_events_return_tag = 0; goto check_events; check_events_return_0: v_774X = check_events0_return_value; if (v_774X) { arg0K0 = stack_arg_count_404X; goto L16915;} else { goto L19145;}} else { arg0K0 = stack_arg_count_404X; goto L16915;}} else { goto L19145;}} L16087: { stack_arg_count_775X = arg0K0; code_776X = *((long *) (((char *) (-3 + (*((long *) (((char *) (-3 + (SvalS)))))))))); arg0K0 = (*((unsigned char *) ((((char *) (-3 + code_776X))) + 1))); arg0K1 = 64; goto L16101;} L17182: { exception_777X = arg0K0; stack_arg_count_778X = arg0K1; list_args_779X = arg0K2; list_arg_count_780X = arg0K3; if (((StemplateS) == (SvalS))) { if ((0 < (Slosing_opcodeS))) { ps_error("wrong number of arguments to exception handler", 1, (Slosing_opcodeS)); return v_781X;} else { ps_error("wrong number of arguments to interrupt handler", 1, (0 - (Slosing_opcodeS))); return v_782X;}} else { merged_arg0K0 = list_args_779X; merged_arg0K1 = list_arg_count_780X; copy_listS_return_tag = 0; goto copy_listS; copy_listS_return_0: v_783X = copy_listS0_return_value; merged_arg0K0 = v_783X; merged_arg0K1 = stack_arg_count_778X; pop_args_GlistS_return_tag = 1; goto pop_args_GlistS; pop_args_GlistS_return_1: args_784X = pop_args_GlistS0_return_value; push_exception_continuationB(exception_777X, 0); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = args_784X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} L17649: { loc_785X = arg1K0; arg_786X = arg1K1; if ((top_of_args_415X < arg_786X)) { *((long *) loc_785X) = (*((long *) arg_786X)); arg1K0 = (loc_785X + -4); arg1K1 = (arg_786X + -4); goto L17649;} else { SstackS = loc_785X; obj_787X = SvalS; if ((3 == (3 & obj_787X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + obj_787X))) + -4))))>>2))))) { arg0K0 = nargs_414X; goto L16087;} else { arg0K0 = 3; arg0K1 = nargs_414X; arg0K2 = 25; arg0K3 = 0; goto L17182;}} else { arg0K0 = 3; arg0K1 = nargs_414X; arg0K2 = 25; arg0K3 = 0; goto L17182;}}} L17687: { stack_arg_count_788X = arg0K0; list_args_789X = arg0K1; list_arg_count_790X = arg0K2; if ((0 == list_arg_count_790X)) { obj_791X = SvalS; if ((3 == (3 & obj_791X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + obj_791X))) + -4))))>>2))))) { arg0K0 = stack_arg_count_788X; goto L16087;} else { arg0K0 = 3; arg0K1 = stack_arg_count_788X; arg0K2 = 25; arg0K3 = 0; goto L17182;}} else { arg0K0 = 3; arg0K1 = stack_arg_count_788X; arg0K2 = 25; arg0K3 = 0; goto L17182;}} else { obj_792X = SvalS; if ((3 == (3 & obj_792X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + obj_792X))) + -4))))>>2))))) { code_793X = *((long *) (((char *) (-3 + (*((long *) (((char *) (-3 + (SvalS)))))))))); total_arg_count_794X = stack_arg_count_788X + list_arg_count_790X; arg0K0 = (*((unsigned char *) ((((char *) (-3 + code_793X))) + 1))); arg0K1 = 64; goto L16378;} else { arg0K0 = 3; arg0K1 = stack_arg_count_788X; arg0K2 = list_args_789X; arg0K3 = list_arg_count_790X; goto L17182;}} else { arg0K0 = 3; arg0K1 = stack_arg_count_788X; arg0K2 = list_args_789X; arg0K3 = list_arg_count_790X; goto L17182;}}} L11294: { list_args_795X = arg0K0; stack_nargs_796X = arg0K1; merged_arg0K0 = list_args_795X; okay_argument_list_return_tag = 1; goto okay_argument_list; okay_argument_list_return_1: okayP_797X = okay_argument_list0_return_value; list_arg_count_798X = okay_argument_list1_return_value; if (okayP_797X) { SvalS = proc_422X; arg0K0 = stack_nargs_796X; arg0K1 = list_args_795X; arg0K2 = list_arg_count_798X; goto L17687;} else { *((long *) (SstackS)) = list_args_795X; SstackS = ((SstackS) + -4); merged_arg0K0 = 25; merged_arg0K1 = (1 + stack_nargs_796X); pop_args_GlistS_return_tag = 2; goto pop_args_GlistS; pop_args_GlistS_return_2: args_799X = pop_args_GlistS0_return_value; SstackS = ((SstackS) + 4); push_exception_continuationB(5, 0); *((long *) (SstackS)) = proc_422X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = args_799X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} L11335: { list_800X = arg0K0; follower_801X = arg0K1; if ((25 == list_800X)) { list_args_802X = *((long *) (((char *) (-3 + (*((long *) ((((char *) (-3 + follower_801X))) + 4))))))); addr_803X = (((char *) (-3 + follower_801X))) + 4; S48_WRITE_BARRIER(follower_801X, addr_803X, list_args_802X); *((long *) addr_803X) = list_args_802X; arg0K0 = rest_list_423X; arg0K1 = (-1 + stack_nargs_421X); goto L11294;} else { arg0K0 = (*((long *) ((((char *) (-3 + list_800X))) + 4))); arg0K1 = (*((long *) ((((char *) (-3 + follower_801X))) + 4))); goto L11335;}} L17592: { obj_804X = SvalS; if ((3 == (3 & obj_804X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + obj_804X))) + -4))))>>2))))) { arg0K0 = 0; goto L16087;} else { arg0K0 = 3; arg0K1 = 0; arg0K2 = 25; arg0K3 = 0; goto L17182;}} else { arg0K0 = 3; arg0K1 = 0; arg0K2 = 25; arg0K3 = 0; goto L17182;}} L17599: { SstackS = ((((char *) (-3 + (Sbottom_of_stackS)))) + -8); *((long *) (((char *) (-3 + (Sbottom_of_stackS))))) = cont_424X; ScontS = (Sbottom_of_stackS); goto L17592;} L20448: { stack_nargs_805X = arg0K0; list_args_806X = arg0K1; list_arg_count_807X = arg0K2; if ((1 == stack_nargs_805X)) { SstackS = ((SstackS) + 4); SvalS = (*((long *) (SstackS))); pop_continuationB_return_tag = 1; goto pop_continuationB; pop_continuationB_return_1: arg1K0 = (Scode_pointerS); goto L18459;} else { if (((ScontS) == (Sbottom_of_stackS))) { arg0K0 = (*((long *) (((char *) (-3 + (Sbottom_of_stackS)))))); goto L20459;} else { arg0K0 = (ScontS); goto L20459;}}} L18965: { okayP_808X = arg2K0; key_809X = arg0K1; if (okayP_808X) { arg0K0 = key_809X; goto L18953;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_809X; goto L18953;}} L18838: { tem_810X = *((long *) ((((char *) (-3 + (StemplateS)))) + ((((((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2)))))<<2)))); StemplateS = tem_810X; Scode_pointerS = ((((char *) (-3 + (*((long *) (((char *) (-3 + tem_810X)))))))) + 2); if ((s48_Spending_interruptPS)) { if ((s48_Spending_eventsPS)) { s48_Spending_eventsPS = 0; check_events_return_tag = 1; goto check_events; check_events_return_1: v_811X = check_events0_return_value; if (v_811X) { goto L18847;} else { goto L18850;}} else { goto L18847;}} else { goto L18850;}} L19021: { okayP_812X = arg2K0; key_813X = arg0K1; if (okayP_812X) { arg0K0 = key_813X; goto L19008;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_813X; goto L19008;}} L18883: { push_exception_continuationB(5, 4); *((long *) (SstackS)) = (*((long *) ((((char *) (-3 + (StemplateS)))) + ((((((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2)))))<<2))))); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L18739: { arg0K0 = (2 + (((max_443X)<<1))); goto L18741;} L18741: { offset_814X = arg0K0; Scode_pointerS = ((Scode_pointerS) + offset_814X); arg1K0 = (Scode_pointerS); goto L18459;} L19771: { Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L18637: { delta_815X = arg0K0; Scode_pointerS = ((Scode_pointerS) + delta_815X); arg1K0 = (Scode_pointerS); goto L18459;} L19662: { delta_816X = arg0K0; Scode_pointerS = ((Scode_pointerS) + delta_816X); arg1K0 = (Scode_pointerS); goto L18459;} L38244: { val_817X = arg0K0; SvalS = val_817X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L38256: { val_818X = arg0K0; SvalS = val_818X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L10642: { if ((3 == (3 & x_457X))) { if ((8 == (31 & ((((*((long *) ((((char *) (-3 + x_457X))) + -4))))>>2))))) { arg0K0 = 5; goto L38256;} else { goto L10648;}} else { goto L10648;}} L28420: { SvalS = 5; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L28421: { if ((3 == (3 & n_458X))) { if ((11 == (31 & ((((*((long *) ((((char *) (-3 + n_458X))) + -4))))>>2))))) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = n_458X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} else { goto L28425;}} else { goto L28425;}} L28577: { SvalS = 5; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L28552: { if ((3 == (3 & n_459X))) { if ((8 == (31 & ((((*((long *) ((((char *) (-3 + n_459X))) + -4))))>>2))))) { goto L28577;} else { goto L28566;}} else { goto L28566;}} L28776: { SvalS = 5; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L28751: { if ((3 == (3 & n_460X))) { if ((8 == (31 & ((((*((long *) ((((char *) (-3 + n_460X))) + -4))))>>2))))) { goto L28776;} else { goto L28765;}} else { goto L28765;}} L28975: { SvalS = 5; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L28950: { if ((3 == (3 & n_461X))) { if ((8 == (31 & ((((*((long *) ((((char *) (-3 + n_461X))) + -4))))>>2))))) { goto L28975;} else { goto L28964;}} else { goto L28964;}} L6795: { a_819X = arg0K0; if ((b_471X < 0)) { arg0K0 = (0 - b_471X); goto L6799;} else { arg0K0 = b_471X; goto L6799;}} L7076: { a_820X = arg0K0; if ((b_478X < 0)) { arg0K0 = (0 - b_478X); goto L7080;} else { arg0K0 = b_478X; goto L7080;}} L31885: { val_821X = arg0K0; SvalS = val_821X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L31963: { val_822X = arg0K0; SvalS = val_822X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L32041: { val_823X = arg0K0; SvalS = val_823X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L32119: { val_824X = arg0K0; SvalS = val_824X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L32197: { val_825X = arg0K0; SvalS = val_825X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L7253: { a_826X = arg0K0; if ((b_492X < 0)) { arg0K0 = (0 - b_492X); goto L7257;} else { arg0K0 = b_492X; goto L7257;}} L25367: { a_827X = arg0K0; n_828X = ((y_494X)>>2); if ((n_828X < 0)) { arg0K0 = (0 - n_828X); goto L25369;} else { arg0K0 = n_828X; goto L25369;}} L38513: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = x_509X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L25653: { r_829X = arg0K0; if ((536870911 < r_829X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = n_510X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} else { SvalS = (((r_829X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L25932: { SvalS = (((result_531X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L38601: { val_830X = arg0K0; SvalS = val_830X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L28195: { val_831X = arg0K0; SvalS = val_831X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L28168: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_534X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L28105: { val_832X = arg0K0; SvalS = val_832X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L28078: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_536X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L32889: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (((x_538X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L38630: { val_833X = arg0K0; SvalS = val_833X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L38644: { value_834X = arg0K0; SvalS = value_834X; Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;} L21250: { push_exception_continuationB(5, 2); *((long *) (SstackS)) = stob_542X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((type_543X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L21322: { type_835X = *((unsigned char *) ((Scode_pointerS) + 2)); len_836X = ((len_544X)<<2); addr_837X = ALLOCATE_SPACE(type_835X, (4 + len_836X)); *((long *) addr_837X) = (2 + (((((((len_836X)<<6)) + type_835X))<<2))); new_838X = 3 + (((long) (addr_837X + 4))); if ((len_544X < 1)) { goto L21357;} else { *((long *) ((((char *) (-3 + new_838X))) + (-4 + (((len_544X)<<2))))) = (SvalS); arg0K0 = (-2 + len_544X); goto L21341;}} L21504: { type_839X = *((unsigned char *) ((Scode_pointerS) + 1)); len_840X = ((len_549X)<<2); addr_841X = ALLOCATE_SPACE(type_839X, (4 + len_840X)); *((long *) addr_841X) = (2 + (((((((len_840X)<<6)) + type_839X))<<2))); new_842X = 3 + (((long) (addr_841X + 4))); SstackS = ((SstackS) + 4); stack_nargs_843X = (((*((long *) (SstackS))))>>2); SstackS = ((SstackS) + 4); rest_list_844X = *((long *) (SstackS)); arg0K0 = (-1 + stack_nargs_843X); goto L21526;} L21714: { push_exception_continuationB(5, 3); *((long *) (SstackS)) = stob_554X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((type_556X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((offset_555X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L21817: { push_exception_continuationB(5, 3); *((long *) (SstackS)) = stob_557X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((type_560X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((offset_559X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = value_558X; SstackS = ((SstackS) + -4); arg0K0 = 4; goto L16686;} L22002: { push_exception_continuationB(5, 2); *((long *) (SstackS)) = (((type_564X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((len_565X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = init_563X; SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L22020: { okayP_845X = arg2K0; init_846X = arg0K1; if (okayP_845X) { len_847X = ((len_565X)<<2); addr_848X = ALLOCATE_SPACE(type_564X, (4 + len_847X)); *((long *) addr_848X) = (2 + (((((((len_847X)<<6)) + type_564X))<<2))); value_849X = 3 + (((long) (addr_848X + 4))); arg0K0 = (-1 + len_565X); goto L22049;} else { push_exception_continuationB(8, 2); *((long *) (SstackS)) = (((type_564X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((len_565X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = init_846X; SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;}} L22298: { push_exception_continuationB(7, 2); *((long *) (SstackS)) = stob_571X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((type_573X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = index_572X; SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L22275: { push_exception_continuationB(5, 2); *((long *) (SstackS)) = stob_571X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((type_573X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = index_572X; SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L22538: { push_exception_continuationB(7, 2); *((long *) (SstackS)) = stob_577X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((type_579X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_576X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = value_578X; SstackS = ((SstackS) + -4); arg0K0 = 4; goto L16686;} L22513: { push_exception_continuationB(5, 2); *((long *) (SstackS)) = stob_577X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((type_579X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_576X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = value_578X; SstackS = ((SstackS) + -4); arg0K0 = 4; goto L16686;} L26103: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (((len_584X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((init_585X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L26195: { addr_850X = ALLOCATE_SPACE(18, (4 + len_584X)); *((long *) addr_850X) = (74 + (((len_584X)<<8))); vector_851X = 3 + (((long) (addr_850X + 4))); arg0K0 = (-1 + len_584X); goto L26144;} L36456: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L32995: { push_exception_continuationB(7, 1); *((long *) (SstackS)) = arg2_591X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((index_592X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L36032: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_591X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L29943: { push_exception_continuationB(7, 1); *((long *) (SstackS)) = arg3_595X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((index_596X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((Kchar_597X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L29922: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg3_595X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((index_596X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((Kchar_597X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L34444: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg3_595X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_594X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L26337: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (((len_600X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (9 + ((((init_601X))<<8))); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L26429: { len_852X = 1 + len_600X; addr_853X = ALLOCATE_SPACE(17, (4 + len_852X)); *((long *) addr_853X) = (70 + (((len_852X)<<8))); string_854X = 3 + (((long) (addr_853X + 4))); *((unsigned char *) ((((char *) (-3 + string_854X))) + len_600X)) = 0; arg0K0 = (-1 + len_600X); goto L26378;} L33076: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_599X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L36506: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L33139: { push_exception_continuationB(7, 1); *((long *) (SstackS)) = arg2_607X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((index_608X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L36128: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_607X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L30098: { push_exception_continuationB(7, 1); *((long *) (SstackS)) = arg3_611X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((index_612X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (9 + ((((Kchar_613X))<<8))); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L30077: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg3_611X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((index_612X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (9 + ((((Kchar_613X))<<8))); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L34570: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg3_611X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_610X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L24507: { obj_855X = SvalS; if ((3 == (3 & obj_855X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + obj_855X))) + -4))))>>2))))) { table_856X = Sthe_symbol_tableS; string_857X = SvalS; n_858X = -1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + string_857X))) + -4))))>>8)); arg0K0 = 0; arg0K1 = 0; goto L13354;} else { goto L24517;}} else { goto L24517;}} L34117: { val_859X = arg0K0; SvalS = val_859X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L34098: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L29685: { if ((1 == (SvalS))) { addr_860X = (((char *) (-3 + arg2_621X))) + 4; S48_WRITE_BARRIER(arg2_621X, addr_860X, 273); *((long *) addr_860X) = 273; goto L29691;} else { if ((17 == (255 & (*((long *) ((((char *) (-3 + arg2_621X))) + 4)))))) { addr_861X = (((char *) (-3 + arg2_621X))) + 4; S48_WRITE_BARRIER(arg2_621X, addr_861X, 529); *((long *) addr_861X) = 529; goto L29691;} else { goto L29691;}}} L29692: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_621X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L38716: { val_862X = arg0K0; SvalS = val_862X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L33221: { SvalS = x_624X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L33272: { okayP_863X = arg2K0; key_864X = arg0K1; if (okayP_863X) { arg0K0 = key_864X; goto L33238;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_864X; goto L33238;}} L34688: { okayP_865X = arg2K0; key_866X = arg0K1; if (okayP_865X) { arg0K0 = key_866X; goto L34670;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_866X; goto L34670;}} L37560: { okayP_867X = arg2K0; key_868X = arg0K1; if (okayP_867X) { arg0K0 = key_868X; goto L37490;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_868X; goto L37490;}} L37820: { okayP_869X = arg2K0; key_870X = arg0K1; if (okayP_869X) { arg0K0 = key_870X; goto L37762;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_870X; goto L37762;}} L34173: { okayP_871X = arg2K0; key_872X = arg0K1; if (okayP_871X) { arg0K0 = key_872X; goto L34155;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_872X; goto L34155;}} L33343: { val_873X = arg0K0; SvalS = val_873X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L8193: { arg0K0 = (*((long *) ((((char *) (-3 + channel_641X))) + 16))); goto L33343;} L8199: { ch_874X = arg0K0; prev_875X = arg0K1; if ((1 == ch_874X)) { addr_876X = (((char *) (-3 + channel_641X))) + 16; S48_WRITE_BARRIER(channel_641X, addr_876X, 1); *((long *) addr_876X) = 1; n_877X = ps_abort_fd_op(((((*((long *) ((((char *) (-3 + channel_641X))) + 8))))>>2))); arg0K0 = (((n_877X)<<2)); goto L33343;} else { if ((ch_874X == channel_641X)) { y_878X = Spending_channels_tailS; if ((ch_874X == y_878X)) { Spending_channels_tailS = prev_875X; goto L8223;} else { goto L8223;}} else { arg0K0 = (*((long *) ((((char *) (-3 + ch_874X))) + 12))); arg0K1 = ch_874X; goto L8199;}}} L33326: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L14798: { arg0K0 = (-1 + (Snumber_of_channelsS)); arg0K1 = 25; goto L14805;} L34789: { okayP_879X = arg2K0; key_880X = arg0K1; if (okayP_879X) { arg0K0 = key_880X; goto L34743;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_880X; goto L34743;}} L35621: { i_881X = arg0K0; h_882X = arg0K1; if ((i_881X < n_659X)) { arg0K0 = (1 + i_881X); arg0K1 = (h_882X + (((*((unsigned char *) ((((char *) (-3 + x_658X))) + i_881X)))))); goto L35621;} else { SvalS = (((h_882X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L35598: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L38784: { SstackS = ((SstackS) + 4); stob_883X = *((long *) (SstackS)); proc_884X = SvalS; if ((3 == (3 & stob_883X))) { if ((3 == (3 & proc_884X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + proc_884X))) + -4))))>>2))))) { addr_885X = ALLOCATE_SPACE(0, 12); *((long *) addr_885X) = 2050; x_886X = 3 + (((long) (addr_885X + 4))); *((long *) (((char *) (-3 + x_886X)))) = stob_883X; *((long *) ((((char *) (-3 + x_886X))) + 4)) = proc_884X; b_887X = Sfinalizer_alistS; addr_888X = ALLOCATE_SPACE(0, 12); *((long *) addr_888X) = 2050; x_889X = 3 + (((long) (addr_888X + 4))); *((long *) (((char *) (-3 + x_889X)))) = x_886X; *((long *) ((((char *) (-3 + x_889X))) + 4)) = b_887X; Sfinalizer_alistS = x_889X; SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { goto L30704;}} else { goto L30704;}} else { goto L30704;}} L33434: { firstP_890X = arg2K0; vector_891X = s48_find_all(type_669X); if ((1 == vector_891X)) { if (firstP_890X) { collect_saving_temps(0, 0, &v_892X); arg2K0 = 0; goto L33434;} else { push_exception_continuationB(8, 1); *((long *) (SstackS)) = (((type_669X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} else { SvalS = vector_891X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L38834: { firstP_893X = arg2K0; type_894X = arg0K1; vector_895X = s48_find_all_records(type_894X); if ((1 == vector_895X)) { if (firstP_893X) { value_896X = collect_saving_temps(type_894X, 0, &v_897X); arg2K0 = 0; arg0K1 = value_896X; goto L38834;} else { push_exception_continuationB(8, 1); *((long *) (SstackS)) = type_894X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;}} else { SvalS = vector_895X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L20591: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L19515: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L38875: { SvalS = (((old_678X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L18473: { SstackS = ((SstackS) + 4); pc_898X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); tem_899X = *((long *) (SstackS)); StemplateS = tem_899X; Scode_pointerS = ((((char *) (-3 + (*((long *) (((char *) (-3 + tem_899X)))))))) + (((pc_898X)>>2))); SstackS = ((SstackS) + 4); SvalS = (*((long *) (SstackS))); arg1K0 = (Scode_pointerS); goto L18459;} L37380: { x_900X = s48_schedule_alarm_interrupt((((p_681X)>>2))); SvalS = (((x_900X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L34317: { if ((1 == (SvalS))) { arg2K0 = 0; goto L34321;} else { arg2K0 = 1; goto L34321;}} L34322: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_682X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L22810: { rest_list_901X = arg0K0; if ((25 == rest_list_901X)) { proc_902X = *((long *) ((SstackS) + (((nargs_684X)<<2)))); name_903X = *((long *) ((SstackS) + (-4 + (((nargs_684X)<<2))))); args_904X = (SstackS) + 4; *((long *) (SstackS)) = (10 + (((nargs_684X)<<10))); SstackS = ((SstackS) + -4); if ((3 == (3 & name_903X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + name_903X))) + -4))))>>2))))) { if ((3 == (3 & proc_902X))) { if ((18 == (31 & ((((*((long *) ((((char *) (-3 + proc_902X))) + -4))))>>2))))) { if ((4 == ((long)(((unsigned long)(*((long *) ((((char *) (-3 + proc_902X))) + -4))))>>8)))) { result_905X = s48_external_call(proc_902X, name_903X, (-2 + nargs_684X), args_904X); if ((Sexternal_exceptionPS)) { Sexternal_exceptionPS = 0; arg0K0 = (Sexternal_exception_nargsS); goto L16686;} else { SvalS = result_905X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} else { goto L22870;}} else { goto L22870;}} else { goto L22870;}} else { goto L22870;}} else { goto L22870;}} else { *((long *) (SstackS)) = (*((long *) (((char *) (-3 + rest_list_901X))))); SstackS = ((SstackS) + -4); arg0K0 = (*((long *) ((((char *) (-3 + rest_list_901X))) + 4))); goto L22810;}} L33543: { okayP_906X = arg2K0; key_907X = arg0K1; if (okayP_906X) { arg0K0 = key_907X; goto L33509;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_907X; goto L33509;}} L23934: { if ((1 == (SvalS))) { arg0K0 = (Sexported_bindingsS); goto L23967;} else { arg0K0 = (Simported_bindingsS); goto L23967;}} L23939: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_690X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L35532: { option_908X = arg0K0; seconds_909X = arg0K1; mseconds_910X = arg0K2; if ((536869 < seconds_909X)) { push_exception_continuationB(6, 1); *((long *) (SstackS)) = (((option_908X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((seconds_909X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mseconds_910X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} else { SvalS = (((((1000 * seconds_909X) + mseconds_910X))<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L38935: { s48_Scallback_return_stack_blockS = arg2_704X; return x_705X;} L27871: { val_911X = arg0K0; SvalS = val_911X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L27838: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_706X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L33752: { SstackS = ((SstackS) + 4); arg2_912X = *((long *) (SstackS)); if ((0 == (3 & (SvalS)))) { n_913X = (((SvalS))>>2); if ((3 == (3 & arg2_912X))) { if ((0 == (31 & ((((*((long *) ((((char *) (-3 + arg2_912X))) + -4))))>>2))))) { goto L27398;} else { goto L27350;}} else { goto L27350;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_912X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} L29340: { list_914X = arg0K0; slow_915X = arg0K1; move_slowP_916X = arg2K2; if ((25 == list_914X)) { SvalS = 1; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { if ((3 == (3 & list_914X))) { if ((0 == (31 & ((((*((long *) ((((char *) (-3 + list_914X))) + -4))))>>2))))) { head_917X = *((long *) (((char *) (-3 + list_914X)))); if ((3 == (3 & head_917X))) { if ((0 == (31 & ((((*((long *) ((((char *) (-3 + head_917X))) + -4))))>>2))))) { if (((*((long *) (((char *) (-3 + head_917X))))) == thing_714X)) { SvalS = head_917X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { list_918X = *((long *) ((((char *) (-3 + list_914X))) + 4)); if ((list_918X == slow_915X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = thing_714X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = list_715X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { if (move_slowP_916X) { arg0K0 = list_918X; arg0K1 = (*((long *) ((((char *) (-3 + slow_915X))) + 4))); arg2K2 = 0; goto L29340;} else { arg0K0 = list_918X; arg0K1 = slow_915X; arg2K2 = 1; goto L29340;}}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = thing_714X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = list_715X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = thing_714X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = list_715X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = thing_714X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = list_715X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = thing_714X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = list_715X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}} L27544: { push_exception_continuationB(7, 1); *((long *) (SstackS)) = arg3_717X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_716X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((index_718X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L27564: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg3_717X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_716X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((index_718X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L30845: { push_exception_continuationB(7, 1); *((long *) (SstackS)) = arg4_722X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg3_721X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((index_723X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = value_724X; SstackS = ((SstackS) + -4); arg0K0 = 4; goto L16686;} L30867: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg4_722X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg3_721X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((index_723X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = value_724X; SstackS = ((SstackS) + -4); arg0K0 = 4; goto L16686;} L31096: { if ((3 == (3 & arg5_730X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg5_730X))) + -4))))>>2))))) { goto L31109;} else { goto L31104;}} else { goto L31104;}} L31091: { if ((3 == (3 & arg5_730X))) { if ((18 == (31 & ((((*((long *) ((((char *) (-3 + arg5_730X))) + -4))))>>2))))) { goto L31096;} else { goto L31163;}} else { goto L31163;}} L23066: { port_919X = arg0K0; if ((3 == (3 & port_919X))) { if ((7 == (31 & ((((*((long *) ((((char *) (-3 + port_919X))) + -4))))>>2))))) { if ((0 == (4 & ((((*((long *) ((((char *) (-3 + port_919X))) + 4))))>>2))))) { goto L23126;} else { p_920X = *((long *) ((((char *) (-3 + port_919X))) + 24)); p_921X = *((long *) ((((char *) (-3 + port_919X))) + 28)); b_922X = *((long *) ((((char *) (-3 + port_919X))) + 20)); i_923X = ((p_920X)>>2); x_924X = *((long *) ((((char *) (-3 + port_919X))) + 12)); if ((5 == x_924X)) { goto L23106;} else { if ((i_923X == (((p_921X)>>2)))) { goto L23106;} else { val_925X = 4 + (((i_923X)<<2)); addr_926X = (((char *) (-3 + port_919X))) + 24; S48_WRITE_BARRIER(port_919X, addr_926X, val_925X); *((long *) addr_926X) = val_925X; SvalS = (9 + ((((((*((unsigned char *) ((((char *) (-3 + b_922X))) + i_923X))))))<<8))); Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;}}}} else { goto L23126;}} else { goto L23126;}} L23286: { port_927X = arg0K0; if ((3 == (3 & port_927X))) { if ((7 == (31 & ((((*((long *) ((((char *) (-3 + port_927X))) + -4))))>>2))))) { if ((0 == (4 & ((((*((long *) ((((char *) (-3 + port_927X))) + 4))))>>2))))) { goto L23346;} else { p_928X = *((long *) ((((char *) (-3 + port_927X))) + 24)); p_929X = *((long *) ((((char *) (-3 + port_927X))) + 28)); b_930X = *((long *) ((((char *) (-3 + port_927X))) + 20)); i_931X = ((p_928X)>>2); x_932X = *((long *) ((((char *) (-3 + port_927X))) + 12)); if ((5 == x_932X)) { goto L23326;} else { if ((i_931X == (((p_929X)>>2)))) { goto L23326;} else { SvalS = (9 + ((((((*((unsigned char *) ((((char *) (-3 + b_930X))) + i_931X))))))<<8))); Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;}}}} else { goto L23346;}} else { goto L23346;}} L23499: { Kchar_933X = arg0K0; port_934X = arg0K1; if ((9 == (255 & Kchar_933X))) { if ((3 == (3 & port_934X))) { if ((7 == (31 & ((((*((long *) ((((char *) (-3 + port_934X))) + -4))))>>2))))) { if ((0 == (8 & ((((*((long *) ((((char *) (-3 + port_934X))) + 4))))>>2))))) { goto L23560;} else { p_935X = *((long *) ((((char *) (-3 + port_934X))) + 24)); b_936X = *((long *) ((((char *) (-3 + port_934X))) + 20)); i_937X = ((p_935X)>>2); x_938X = *((long *) ((((char *) (-3 + port_934X))) + 12)); if ((5 == x_938X)) { goto L23542;} else { if ((i_937X == ((long)(((unsigned long)(*((long *) ((((char *) (-3 + b_936X))) + -4))))>>8)))) { goto L23542;} else { val_939X = 4 + (((i_937X)<<2)); addr_940X = (((char *) (-3 + port_934X))) + 24; S48_WRITE_BARRIER(port_934X, addr_940X, val_939X); *((long *) addr_940X) = val_939X; *((unsigned char *) ((((char *) (-3 + (*((long *) ((((char *) (-3 + port_934X))) + 20)))))) + i_937X)) = (((((Kchar_933X)>>8)))); SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;}}}} else { goto L23560;}} else { goto L23560;}} else { goto L23560;}} L29593: { stuff_941X = arg0K0; if ((3 == (3 & stuff_941X))) { if ((0 == (31 & ((((*((long *) ((((char *) (-3 + stuff_941X))) + -4))))>>2))))) { thing_942X = *((long *) (((char *) (-3 + stuff_941X)))); if ((0 == (3 & thing_942X))) { ps_write_integer((((thing_942X)>>2)), out_742X); goto L29599;} else { if ((9 == (255 & thing_942X))) { ps_write_string("#\\", out_742X); { long ignoreXX; PS_WRITE_CHAR(((((thing_942X)>>8))), out_742X, ignoreXX) } goto L29599;} else { if ((3 == (3 & thing_942X))) { if ((9 == (31 & ((((*((long *) ((((char *) (-3 + thing_942X))) + -4))))>>2))))) { if ((0 < ((((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + thing_942X))) + -4))))>>8))))>>2)))) { type_943X = *((long *) (((char *) (-3 + thing_942X)))); if ((3 == (3 & type_943X))) { if ((9 == (31 & ((((*((long *) ((((char *) (-3 + type_943X))) + -4))))>>2))))) { if ((2 < ((((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + type_943X))) + -4))))>>8))))>>2)))) { obj_944X = *((long *) ((((char *) (-3 + type_943X))) + 8)); if ((3 == (3 & obj_944X))) { if ((1 == (31 & ((((*((long *) ((((char *) (-3 + obj_944X))) + -4))))>>2))))) { ps_write_string("#{", out_742X); ps_write_string((((char *)(((char *) (-3 + (*((long *) (((char *) (-3 + (*((long *) ((((char *) (-3 + (*((long *) (((char *) (-3 + thing_942X)))))))) + 8))))))))))))), out_742X); { long ignoreXX; PS_WRITE_CHAR(125, out_742X, ignoreXX) } goto L29599;} else { goto L11671;}} else { goto L11671;}} else { goto L11671;}} else { goto L11671;}} else { goto L11671;}} else { goto L11671;}} else { goto L11671;}} else { goto L11671;}}}} else { goto L29584;}} else { goto L29584;}} L16745: { SvalS = (*((long *) ((((char *) (-3 + (Sexception_handlersS)))) + (((opcode_744X)<<2))))); obj_945X = SvalS; if ((3 == (3 & obj_945X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + obj_945X))) + -4))))>>2))))) { goto L16762;} else { goto L16832;}} else { goto L16832;}} L16818: { merged_arg3K0 = "exception-handlers is not a vector"; loseD0_return_tag = 0; goto loseD0; loseD0_return_0: goto L16745;} L21059: { okayP_946X = arg2K0; key_947X = arg0K1; if (okayP_946X) { arg0K0 = key_947X; goto L20987;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_947X; goto L20987;}} L21017: { okayP_948X = arg2K0; temp_949X = arg0K1; if (okayP_948X) { arg0K0 = temp_949X; goto L20998;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = temp_949X; goto L20998;}} L20801: { start_i_950X = arg0K0; arg0K0 = start_i_950X; arg0K1 = 2; arg0K2 = (SenvS); goto L20809;} L20701: { key_951X = arg0K0; if ((1 == (ScontS))) { arg0K0 = 1; goto L20705;} else { merged_arg0K0 = key_951X; merged_arg0K1 = 2; really_preserve_continuation_return_tag = 0; goto really_preserve_continuation; really_preserve_continuation_return_0: v_952X = really_preserve_continuation0_return_value; arg0K0 = v_952X; goto L20705;}} L19884: { SstackS = ((((char *) (-3 + (Sbottom_of_stackS)))) + -8); *((long *) (((char *) (-3 + (Sbottom_of_stackS))))) = 1; ScontS = (Sbottom_of_stackS); push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = cont_403X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L19184: { v_953X = arg0K0; merged_arg0K0 = v_953X; copy_stack_into_heap_return_tag = 0; goto copy_stack_into_heap; copy_stack_into_heap_return_0: if (((SstackS) < (Sstack_limitS))) { ps_error("Couldn't get default procedure space (how can this happen?)", 0); goto L19141;} else { goto L19141;}} L16915: { stack_arg_count_954X = arg0K0; *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (StemplateS); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((((Scode_pointerS) - (((char *) (-3 + (*((long *) (((char *) (-3 + (StemplateS)))))))))))<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = ((((Senabled_interruptsS))<<2)); SstackS = ((SstackS) + -4); tem_955X = Sinterrupt_templateS; StemplateS = tem_955X; Scode_pointerS = (((char *) (-3 + (*((long *) (((char *) (-3 + tem_955X)))))))); push_continuationB((Scode_pointerS), (4 + stack_arg_count_954X)); n_956X = (Spending_interruptsS) & (Senabled_interruptsS); arg0K0 = 0; arg0K1 = 1; goto L17020;} L19145: { arg1K0 = (Scode_pointerS); goto L18459;} L16101: { protocol_957X = arg0K0; stack_space_958X = arg0K1; if ((68 == protocol_957X)) { if ((stack_arg_count_775X < 3)) { skip_959X = *((unsigned char *) ((((char *) (-3 + code_776X))) + (2 + stack_arg_count_775X))); if ((0 == skip_959X)) { arg0K0 = 4; arg0K1 = stack_arg_count_775X; arg0K2 = 25; arg0K3 = 0; goto L17182;} else { arg0K0 = skip_959X; arg0K1 = stack_arg_count_775X; goto L16105;}} else { skip_960X = *((unsigned char *) ((((char *) (-3 + code_776X))) + 5)); if ((0 == skip_960X)) { arg0K0 = 4; arg0K1 = stack_arg_count_775X; arg0K2 = 25; arg0K3 = 0; goto L17182;} else { arg0K0 = skip_960X; goto L16128;}}} else { if ((67 == protocol_957X)) { if ((stack_arg_count_775X < (*((unsigned char *) ((((char *) (-3 + code_776X))) + 2))))) { arg0K0 = 4; arg0K1 = stack_arg_count_775X; arg0K2 = 25; arg0K3 = 0; goto L17182;} else { arg0K0 = 3; goto L16128;}} else { if ((65 == protocol_957X)) { wants_stack_args_961X = ((((*((unsigned char *) ((((char *) (-3 + code_776X))) + 2))))<<8)) + (*((unsigned char *) ((((char *) (-3 + code_776X))) + 3))); if ((stack_arg_count_775X < wants_stack_args_961X)) { arg0K0 = 4; arg0K1 = stack_arg_count_775X; arg0K2 = 25; arg0K3 = 0; goto L17182;} else { merged_arg0K0 = wants_stack_args_961X; merged_arg0K1 = stack_arg_count_775X; merged_arg0K2 = 25; merged_arg0K3 = 0; rest_list_setup_return_tag = 0; goto rest_list_setup; rest_list_setup_return_0: arg0K0 = 4; arg0K1 = (1 + wants_stack_args_961X); goto L16105;}} else { if ((63 < protocol_957X)) { if ((64 == protocol_957X)) { if (((((((*((unsigned char *) ((((char *) (-3 + code_776X))) + 2))))<<8)) + (*((unsigned char *) ((((char *) (-3 + code_776X))) + 3)))) == stack_arg_count_775X)) { arg0K0 = 4; arg0K1 = stack_arg_count_775X; goto L16105;} else { arg0K0 = 4; arg0K1 = stack_arg_count_775X; arg0K2 = 25; arg0K3 = 0; goto L17182;}} else { if ((66 == protocol_957X)) { length_962X = (long)(((unsigned long)(*((long *) ((((char *) (-3 + code_776X))) + -4))))>>8); index_963X = -2 + length_962X; arg0K0 = (*((unsigned char *) ((((char *) (-3 + code_776X))) + (-3 + length_962X)))); arg0K1 = (((((*((unsigned char *) ((((char *) (-3 + code_776X))) + index_963X))))<<8)) + (*((unsigned char *) ((((char *) (-3 + code_776X))) + (1 + index_963X))))); goto L16101;} else { ps_error("unknown protocol", 1, protocol_957X); arg0K0 = 4; arg0K1 = stack_arg_count_775X; arg0K2 = 25; arg0K3 = 0; goto L17182;}}} else { if ((protocol_957X == stack_arg_count_775X)) { arg0K0 = 2; arg0K1 = stack_arg_count_775X; goto L16105;} else { arg0K0 = 4; arg0K1 = stack_arg_count_775X; arg0K2 = 25; arg0K3 = 0; goto L17182;}}}}}} L16378: { protocol_964X = arg0K0; stack_space_965X = arg0K1; if ((68 == protocol_964X)) { if ((total_arg_count_794X < 3)) { skip_966X = *((unsigned char *) ((((char *) (-3 + code_793X))) + (2 + total_arg_count_794X))); if ((0 == skip_966X)) { arg0K0 = 4; arg0K1 = stack_arg_count_788X; arg0K2 = list_args_789X; arg0K3 = list_arg_count_790X; goto L17182;} else { merged_arg0K0 = list_args_789X; merged_arg0K1 = list_arg_count_790X; push_list_return_tag = 0; goto push_list; push_list_return_0: arg0K0 = skip_966X; arg0K1 = total_arg_count_794X; goto L16382;}} else { skip_967X = *((unsigned char *) ((((char *) (-3 + code_793X))) + 5)); if ((0 == skip_967X)) { arg0K0 = 4; arg0K1 = stack_arg_count_788X; arg0K2 = list_args_789X; arg0K3 = list_arg_count_790X; goto L17182;} else { arg0K0 = skip_967X; goto L16407;}}} else { if ((67 == protocol_964X)) { if ((total_arg_count_794X < (*((unsigned char *) ((((char *) (-3 + code_793X))) + 2))))) { arg0K0 = 4; arg0K1 = stack_arg_count_788X; arg0K2 = list_args_789X; arg0K3 = list_arg_count_790X; goto L17182;} else { arg0K0 = 3; goto L16407;}} else { if ((63 < protocol_964X)) { if ((65 == protocol_964X)) { wants_stack_args_968X = ((((*((unsigned char *) ((((char *) (-3 + code_793X))) + 2))))<<8)) + (*((unsigned char *) ((((char *) (-3 + code_793X))) + 3))); if ((total_arg_count_794X < wants_stack_args_968X)) { arg0K0 = 4; arg0K1 = stack_arg_count_788X; arg0K2 = list_args_789X; arg0K3 = list_arg_count_790X; goto L17182;} else { merged_arg0K0 = wants_stack_args_968X; merged_arg0K1 = stack_arg_count_788X; merged_arg0K2 = list_args_789X; merged_arg0K3 = list_arg_count_790X; rest_list_setup_return_tag = 1; goto rest_list_setup; rest_list_setup_return_1: arg0K0 = 4; arg0K1 = (1 + wants_stack_args_968X); goto L16382;}} else { if ((64 == protocol_964X)) { if (((((((*((unsigned char *) ((((char *) (-3 + code_793X))) + 2))))<<8)) + (*((unsigned char *) ((((char *) (-3 + code_793X))) + 3)))) == total_arg_count_794X)) { merged_arg0K0 = list_args_789X; merged_arg0K1 = list_arg_count_790X; push_list_return_tag = 1; goto push_list; push_list_return_1: arg0K0 = 4; arg0K1 = total_arg_count_794X; goto L16382;} else { arg0K0 = 4; arg0K1 = stack_arg_count_788X; arg0K2 = list_args_789X; arg0K3 = list_arg_count_790X; goto L17182;}} else { if ((66 == protocol_964X)) { length_969X = (long)(((unsigned long)(*((long *) ((((char *) (-3 + code_793X))) + -4))))>>8); index_970X = -2 + length_969X; arg0K0 = (*((unsigned char *) ((((char *) (-3 + code_793X))) + (-3 + length_969X)))); arg0K1 = (((((*((unsigned char *) ((((char *) (-3 + code_793X))) + index_970X))))<<8)) + (*((unsigned char *) ((((char *) (-3 + code_793X))) + (1 + index_970X))))); goto L16378;} else { ps_error("unknown protocol", 1, protocol_964X); arg0K0 = 4; arg0K1 = stack_arg_count_788X; arg0K2 = list_args_789X; arg0K3 = list_arg_count_790X; goto L17182;}}}} else { if ((protocol_964X == total_arg_count_794X)) { merged_arg0K0 = list_args_789X; merged_arg0K1 = list_arg_count_790X; push_list_return_tag = 2; goto push_list; push_list_return_2: arg0K0 = 2; arg0K1 = total_arg_count_794X; goto L16382;} else { arg0K0 = 4; arg0K1 = stack_arg_count_788X; arg0K2 = list_args_789X; arg0K3 = list_arg_count_790X; goto L17182;}}}}} L20459: { cont_971X = arg0K0; if ((3 == (3 & cont_971X))) { if ((10 == (31 & ((((*((long *) ((((char *) (-3 + cont_971X))) + -4))))>>2))))) { next_op_972X = *((unsigned char *) ((((char *) (-3 + (*((long *) (((char *) (-3 + (*((long *) ((((char *) (-3 + cont_971X))) + 8))))))))))) + ((((*((long *) ((((char *) (-3 + cont_971X))) + 4))))>>2)))); if ((34 == next_op_972X)) { pop_continuationB_return_tag = 2; goto pop_continuationB; pop_continuationB_return_2: arg1K0 = (Scode_pointerS); goto L18459;} else { if ((30 == next_op_972X)) { next_973X = *((long *) (((char *) (-3 + (ScontS))))); if (((ScontS) == (Sbottom_of_stackS))) { *((long *) (((char *) (-3 + (ScontS))))) = (*((long *) (((char *) (-3 + next_973X))))); goto L19303;} else { ScontS = next_973X; goto L19303;}} else { merged_arg0K0 = list_args_806X; merged_arg0K1 = stack_nargs_805X; pop_args_GlistS_return_tag = 3; goto pop_args_GlistS; pop_args_GlistS_return_3: args_974X = pop_args_GlistS0_return_value; push_exception_continuationB(4, 0); *((long *) (SstackS)) = 1; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = args_974X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}} else { goto L20465;}} else { goto L20465;}} L18953: { v_975X = arg0K0; merged_arg0K0 = v_975X; copy_stack_into_heap_return_tag = 1; goto copy_stack_into_heap; copy_stack_into_heap_return_1: if (((SstackS) < (Sstack_limitS))) { ps_error("Couldn't get default procedure space (how can this happen?)", 0); goto L18838;} else { goto L18838;}} L18847: { arg0K0 = (*((unsigned char *) ((Scode_pointerS) + 3))); goto L16915;} L18850: { arg1K0 = (Scode_pointerS); goto L18459;} L19008: { v_976X = arg0K0; merged_arg0K0 = v_976X; copy_stack_into_heap_return_tag = 2; goto copy_stack_into_heap; copy_stack_into_heap_return_2: if ((space_437X < (64 + (((((SstackS) - (Sstack_limitS)))>>2))))) { goto L18838;} else { ps_error("VM's stack is too small (how can this happen?)", 0); goto L18838;}} L10648: { if ((3 == (3 & x_457X))) { if ((19 == (31 & ((((*((long *) ((((char *) (-3 + x_457X))) + -4))))>>2))))) { arg0K0 = 5; goto L38256;} else { goto L10654;}} else { goto L10654;}} L28425: { SvalS = 1; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L28566: { if ((3 == (3 & n_459X))) { if ((19 == (31 & ((((*((long *) ((((char *) (-3 + n_459X))) + -4))))>>2))))) { goto L28577;} else { goto L28578;}} else { goto L28578;}} L28765: { if ((3 == (3 & n_460X))) { if ((19 == (31 & ((((*((long *) ((((char *) (-3 + n_460X))) + -4))))>>2))))) { goto L28776;} else { goto L28777;}} else { goto L28777;}} L28964: { if ((3 == (3 & n_461X))) { if ((19 == (31 & ((((*((long *) ((((char *) (-3 + n_461X))) + -4))))>>2))))) { goto L28975;} else { goto L28976;}} else { goto L28976;}} L6799: { b_977X = arg0K0; lo_a_978X = 65535 & a_819X; lo_b_979X = 65535 & b_977X; hi_a_980X = 65535 & (((a_819X)>>16)); hi_b_981X = 65535 & (((b_977X)>>16)); lo_c_982X = SMALL_MULTIPLY(lo_a_978X, lo_b_979X); v_983X = SMALL_MULTIPLY(lo_b_979X, hi_a_980X); v_984X = SMALL_MULTIPLY(lo_a_978X, hi_b_981X); mid_c_985X = v_984X + v_983X; c_986X = lo_c_982X + (((mid_c_985X)<<16)); if ((0 < hi_a_980X)) { if ((0 < hi_b_981X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_468X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_469X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { goto L6841;}} else { goto L6841;}} L7080: { b_987X = arg0K0; c_988X = a_820X / b_987X; x_989X = 0 == (a_820X % b_987X); if (x_989X) { if ((a_477X < 0)) { if ((b_478X < 0)) { goto L7135;} else { goto L7134;}} else { if ((b_478X < 0)) { goto L7134;} else { goto L7135;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_475X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_476X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} L7257: { b_990X = arg0K0; c_991X = a_826X / b_990X; if ((a_491X < 0)) { if ((b_492X < 0)) { goto L7303;} else { goto L7302;}} else { if ((b_492X < 0)) { goto L7302;} else { goto L7303;}}} L25369: { b_992X = arg0K0; c_993X = a_827X % b_992X; if ((a_495X < 0)) { arg0K0 = (0 - c_993X); goto L25373;} else { arg0K0 = c_993X; goto L25373;}} L21357: { SvalS = new_838X; Scode_pointerS = ((Scode_pointerS) + 3); arg1K0 = (Scode_pointerS); goto L18459;} L21341: { i_994X = arg0K0; if ((i_994X < 0)) { goto L21357;} else { SstackS = ((SstackS) + 4); *((long *) ((((char *) (-3 + new_838X))) + (((i_994X)<<2)))) = (*((long *) (SstackS))); arg0K0 = (-1 + i_994X); goto L21341;}} L21526: { i_995X = arg0K0; if ((i_995X < 0)) { arg0K0 = stack_nargs_843X; arg0K1 = rest_list_844X; goto L21544;} else { SstackS = ((SstackS) + 4); *((long *) ((((char *) (-3 + new_842X))) + (((i_995X)<<2)))) = (*((long *) (SstackS))); arg0K0 = (-1 + i_995X); goto L21526;}} L22049: { i_996X = arg0K0; if ((i_996X < 0)) { SvalS = value_849X; Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;} else { addr_997X = (((char *) (-3 + value_849X))) + (((i_996X)<<2)); S48_WRITE_BARRIER(value_849X, addr_997X, init_846X); *((long *) addr_997X) = init_846X; arg0K0 = (-1 + i_996X); goto L22049;}} L26144: { i_998X = arg0K0; if ((i_998X < 0)) { SvalS = vector_851X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { *((unsigned char *) ((((char *) (-3 + vector_851X))) + i_998X)) = init_585X; arg0K0 = (-1 + i_998X); goto L26144;}} L26378: { i_999X = arg0K0; if ((i_999X < 0)) { SvalS = string_854X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { *((unsigned char *) ((((char *) (-3 + string_854X))) + i_999X)) = (init_601X); arg0K0 = (-1 + i_999X); goto L26378;}} L13354: { i_1000X = arg0K0; h_1001X = arg0K1; if ((i_1000X < n_858X)) { arg0K0 = (1 + i_1000X); arg0K1 = (h_1001X + (((*((unsigned char *) ((((char *) (-3 + string_857X))) + i_1000X)))))); goto L13354;} else { index_1002X = 1023 & h_1001X; bucket_1003X = *((long *) ((((char *) (-3 + table_856X))) + (((index_1002X)<<2)))); arg0K0 = bucket_1003X; goto L13322;}} L24517: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L29691: { SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L33238: { key_1004X = arg0K0; SstackS = ((SstackS) + 4); arg2_1005X = *((long *) (SstackS)); if ((0 == (3 & (SvalS)))) { mode_1006X = (((SvalS))>>2); if ((1 == mode_1006X)) { goto L26802;} else { if ((2 == mode_1006X)) { goto L26802;} else { if ((3 == mode_1006X)) { goto L26802;} else { if ((4 == mode_1006X)) { goto L26802;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mode_1006X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} L34670: { key_1007X = arg0K0; obj_1008X = SvalS; if ((3 == (3 & obj_1008X))) { if ((6 == (31 & ((((*((long *) ((((char *) (-3 + obj_1008X))) + -4))))>>2))))) { channel_1009X = SvalS; if ((0 == (*((long *) (((char *) (-3 + channel_1009X))))))) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = channel_1009X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} else { status_1010X = close_channelB(channel_1009X); if ((status_1010X == NO_ERRORS)) { SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(25, 1); *((long *) (SstackS)) = channel_1009X; SstackS = ((SstackS) + -4); merged_arg0K0 = status_1010X; merged_arg0K1 = key_1007X; get_error_string_return_tag = 0; goto get_error_string; get_error_string_return_0: x_1011X = get_error_string0_return_value; *((long *) (SstackS)) = x_1011X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}} else { goto L34678;}} else { goto L34678;}} L37490: { key_1012X = arg0K0; SstackS = ((SstackS) + 4); arg2_1013X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg3_1014X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg4_1015X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg5_1016X = *((long *) (SstackS)); if ((0 == (3 & (arg4_1015X | arg3_1014X)))) { if ((1 == arg2_1013X)) { goto L37522;} else { if ((5 == arg2_1013X)) { goto L37522;} else { goto L37542;}}} else { goto L37542;}} L37762: { key_1017X = arg0K0; SstackS = ((SstackS) + 4); arg2_1018X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg3_1019X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg4_1020X = *((long *) (SstackS)); if ((0 == (3 & (arg3_1019X | arg2_1018X)))) { obj_1021X = SvalS; if ((3 == (3 & obj_1021X))) { if ((6 == (31 & ((((*((long *) ((((char *) (-3 + obj_1021X))) + -4))))>>2))))) { start_1022X = ((arg3_1019X)>>2); count_1023X = ((arg2_1018X)>>2); channel_1024X = SvalS; v_1025X = 8 == (*((long *) (((char *) (-3 + channel_1024X))))); if (v_1025X) { if ((3 == (3 & arg4_1020X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg4_1020X))) + -4))))>>2))))) { goto L37073;} else { goto L37065;}} else { goto L37065;}} else { arg0K0 = 5; goto L36956;}} else { goto L37804;}} else { goto L37804;}} else { goto L37804;}} L34155: { key_1026X = arg0K0; obj_1027X = SvalS; if ((3 == (3 & obj_1027X))) { if ((6 == (31 & ((((*((long *) ((((char *) (-3 + obj_1027X))) + -4))))>>2))))) { channel_1028X = SvalS; if ((0 == (*((long *) (((char *) (-3 + channel_1028X))))))) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = channel_1028X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} else { readyP_1029X = ps_check_fd(((((*((long *) ((((char *) (-3 + channel_1028X))) + 8))))>>2)), (4 == (*((long *) (((char *) (-3 + channel_1028X)))))), &status_1030X); if ((status_1030X == NO_ERRORS)) { if (readyP_1029X) { arg0K0 = 5; goto L29277;} else { arg0K0 = 1; goto L29277;}} else { push_exception_continuationB(25, 1); *((long *) (SstackS)) = channel_1028X; SstackS = ((SstackS) + -4); merged_arg0K0 = status_1030X; merged_arg0K1 = key_1026X; get_error_string_return_tag = 1; goto get_error_string; get_error_string_return_1: x_1031X = get_error_string0_return_value; *((long *) (SstackS)) = x_1031X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}} else { goto L34163;}} else { goto L34163;}} L8223: { val_1032X = *((long *) ((((char *) (-3 + ch_874X))) + 12)); addr_1033X = (((char *) (-3 + prev_875X))) + 12; S48_WRITE_BARRIER(prev_875X, addr_1033X, val_1032X); *((long *) addr_1033X) = val_1032X; addr_1034X = (((char *) (-3 + ch_874X))) + 12; S48_WRITE_BARRIER(ch_874X, addr_1034X, 1); *((long *) addr_1034X) = 1; arg0K0 = (*((long *) ((((char *) (-3 + ch_874X))) + 16))); goto L33343;} L14805: { i_1035X = arg0K0; res_1036X = arg0K1; if ((-1 == i_1035X)) { SvalS = res_1036X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { channel_1037X = *((Svm_channelsS) + i_1035X); if ((3 == (3 & channel_1037X))) { if ((6 == (31 & ((((*((long *) ((((char *) (-3 + channel_1037X))) + -4))))>>2))))) { addr_1038X = ALLOCATE_SPACE(0, 12); *((long *) addr_1038X) = 2050; x_1039X = 3 + (((long) (addr_1038X + 4))); *((long *) (((char *) (-3 + x_1039X)))) = channel_1037X; *((long *) ((((char *) (-3 + x_1039X))) + 4)) = res_1036X; arg0K0 = x_1039X; goto L14819;} else { arg0K0 = res_1036X; goto L14819;}} else { arg0K0 = res_1036X; goto L14819;}}} L34743: { key_1040X = arg0K0; SstackS = ((SstackS) + 4); arg2_1041X = *((long *) (SstackS)); SstackS = ((SstackS) + 4); arg3_1042X = *((long *) (SstackS)); if ((3 == (3 & arg3_1042X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg3_1042X))) + -4))))>>2))))) { obj_1043X = SvalS; if ((3 == (3 & obj_1043X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + obj_1043X))) + -4))))>>2))))) { comment_string_1044X = SvalS; x_1045X = s48_image_writing_okayP(); if (x_1045X) { port_1046X = ps_open_output_file((((char *)(((char *) (-3 + arg3_1042X))))), &status_1047X); if ((status_1047X == NO_ERRORS)) { status_1048X = ps_write_string((((char *)(((char *) (-3 + comment_string_1044X))))), port_1046X); if ((status_1048X == NO_ERRORS)) { status_1049X = s48_write_image(arg2_1041X, port_1046X); if ((status_1049X == NO_ERRORS)) { status_1050X = ps_close(port_1046X); if ((status_1050X == NO_ERRORS)) { undumpables_1051X = s48_undumpable_records(&undumpable_count_1052X); if ((0 == undumpable_count_1052X)) { SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { push_exception_continuationB(26, 1); *((long *) (SstackS)) = arg3_1042X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_1041X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = comment_string_1044X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = undumpables_1051X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((undumpable_count_1052X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 5; goto L16686;}} else { arg0K0 = 25; arg0K1 = status_1050X; goto L30325;}} else { status_1053X = ps_close(port_1046X); if ((status_1053X == NO_ERRORS)) { arg0K0 = 25; arg0K1 = status_1049X; goto L30325;} else { ps_write_string("Unable to close image file", (stderr)); { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } arg0K0 = 25; arg0K1 = status_1049X; goto L30325;}}} else { status_1054X = ps_close(port_1046X); if ((status_1054X == NO_ERRORS)) { arg0K0 = 25; arg0K1 = status_1048X; goto L30325;} else { ps_write_string("Unable to close image file", (stderr)); { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } arg0K0 = 25; arg0K1 = status_1048X; goto L30325;}}} else { arg0K0 = 10; arg0K1 = status_1047X; goto L30325;}} else { push_exception_continuationB(15, 1); *((long *) (SstackS)) = arg3_1042X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_1041X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = comment_string_1044X; SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;}} else { goto L34775;}} else { goto L34775;}} else { goto L34775;}} else { goto L34775;}} L30704: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = stob_883X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = proc_884X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L34321: { minutesP_1055X = arg2K0; if ((s48_Spending_interruptPS)) { if ((s48_Spending_eventsPS)) { s48_Spending_eventsPS = 0; check_events_return_tag = 2; goto check_events; check_events_return_2: temp_1056X = check_events0_return_value; if (temp_1056X) { goto L34347;} else { goto L34352;}} else { goto L34347;}} else { goto L34352;}} L22870: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = proc_902X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = name_903X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L33509: { key_1057X = arg0K0; SstackS = ((SstackS) + 4); arg2_1058X = *((long *) (SstackS)); if ((3 == (3 & arg2_1058X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg2_1058X))) + -4))))>>2))))) { x_1059X = SvalS; if ((1 == x_1059X)) { goto L33526;} else { if ((5 == x_1059X)) { goto L33526;} else { goto L33531;}}} else { goto L33531;}} else { goto L33531;}} L23967: { table_1060X = arg0K0; n_1061X = -1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg2_690X))) + -4))))>>8)); arg0K0 = 0; arg0K1 = 0; goto L12901;} L27398: { len_1062X = 1 + n_913X; addr_1063X = ALLOCATE_SPACE(17, (4 + len_1062X)); *((long *) addr_1063X) = (70 + (((len_1062X)<<8))); string_1064X = 3 + (((long) (addr_1063X + 4))); *((unsigned char *) ((((char *) (-3 + string_1064X))) + n_913X)) = 0; arg0K0 = arg2_912X; arg0K1 = (-1 + n_913X); goto L27375;} L27350: { if ((25 == arg2_912X)) { goto L27398;} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_912X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((n_913X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} L31109: { if ((from_index_731X < 0)) { goto L31163;} else { if ((to_index_732X < 0)) { goto L31163;} else { if ((count_733X < 0)) { goto L31163;} else { if ((3 == (3 & arg5_730X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg5_730X))) + -4))))>>2))))) { arg0K0 = (-1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg5_730X))) + -4))))>>8))); goto L31130;} else { goto L31126;}} else { goto L31126;}}}}} L31104: { if ((3 == (3 & arg5_730X))) { if ((18 == (31 & ((((*((long *) ((((char *) (-3 + arg5_730X))) + -4))))>>2))))) { goto L31109;} else { goto L31163;}} else { goto L31163;}} L31163: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg5_730X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((from_index_731X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg3_728X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((to_index_732X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((count_733X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 5; goto L16686;} L23126: { push_exception_continuationB(5, 2); *((long *) (SstackS)) = port_919X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L23106: { push_exception_continuationB(14, 2); *((long *) (SstackS)) = port_919X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L23346: { push_exception_continuationB(5, 2); *((long *) (SstackS)) = port_927X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L23326: { push_exception_continuationB(14, 2); *((long *) (SstackS)) = port_927X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L23560: { push_exception_continuationB(5, 2); *((long *) (SstackS)) = Kchar_933X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = port_934X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L23542: { push_exception_continuationB(14, 2); *((long *) (SstackS)) = Kchar_933X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = port_934X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L29599: { arg0K0 = (*((long *) ((((char *) (-3 + stuff_941X))) + 4))); goto L29593;} L11671: { if ((3 == (3 & thing_942X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + thing_942X))) + -4))))>>2))))) { arg3K0 = (((char *)(((char *) (-3 + thing_942X))))); goto L11713;} else { goto L11679;}} else { goto L11679;}} L29584: { { long ignoreXX; PS_WRITE_CHAR(10, out_742X, ignoreXX) } SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L16762: { StemplateS = (SvalS); Slosing_opcodeS = opcode_744X; arg0K0 = (2 + nargs_743X); goto L16087;} L16832: { merged_arg3K0 = "exception handler is not a closure"; loseD0_return_tag = 1; goto loseD0; loseD0_return_1: goto L16762;} L20987: { key_1065X = arg0K0; p_1066X = SenvS; if ((3 == (3 & p_1066X))) { if ((p_1066X < (((long) (Sstack_beginS))))) { goto L21082;} else { if (((((long) (Sstack_endS))) < p_1066X)) { goto L21082;} else { merged_arg0K0 = (SenvS); merged_arg0K1 = (ScontS); merged_arg0K2 = key_1065X; merged_arg0K3 = 0; save_env_in_heap_return_tag = 0; goto save_env_in_heap; save_env_in_heap_return_0: v_1067X = save_env_in_heap0_return_value; SenvS = v_1067X; goto L21082;}}} else { goto L21082;}} L20998: { env_1068X = arg0K0; a_1069X = *((long *) ((((char *) (-3 + (StemplateS)))) + ((((((((*((unsigned char *) ((Scode_pointerS) + 1))))<<8)) + (*((unsigned char *) ((Scode_pointerS) + 2)))))<<2)))); addr_1070X = ALLOCATE_SPACE(3, 12); *((long *) addr_1070X) = 2062; x_1071X = 3 + (((long) (addr_1070X + 4))); *((long *) (((char *) (-3 + x_1071X)))) = a_1069X; *((long *) ((((char *) (-3 + x_1071X))) + 4)) = env_1068X; if ((3 == (3 & x_1071X))) { if ((0 == (128 & (*((long *) ((((char *) (-3 + x_1071X))) + -4)))))) { *((long *) ((((char *) (-3 + x_1071X))) + -4)) = (128 | (*((long *) ((((char *) (-3 + x_1071X))) + -4)))); arg0K0 = x_1071X; goto L21006;} else { arg0K0 = x_1071X; goto L21006;}} else { arg0K0 = x_1071X; goto L21006;}} L20809: { i_1072X = arg0K0; offset_1073X = arg0K1; env_1074X = arg0K2; if ((i_1072X == total_count_394X)) { SvalS = new_env_766X; Scode_pointerS = ((Scode_pointerS) + (1 + offset_1073X)); arg1K0 = (Scode_pointerS); goto L18459;} else { back_1075X = *((unsigned char *) ((Scode_pointerS) + (1 + offset_1073X))); arg0K0 = env_1074X; arg0K1 = back_1075X; goto L20905;}} L20705: { value_1076X = arg0K0; SvalS = value_1076X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L17020: { i_1077X = arg0K0; m_1078X = arg0K1; if ((0 == (n_956X & m_1078X))) { arg0K0 = (1 + i_1077X); arg0K1 = (((m_1078X)<<1)); goto L17020;} else { Spending_interruptsS = ((Spending_interruptsS) & (~ m_1078X)); if ((i_1077X == 0)) { *((long *) (SstackS)) = (Sinterrupted_templateS); SstackS = ((SstackS) + -4); Sinterrupted_templateS = 1; *((long *) (SstackS)) = ((((Senabled_interruptsS))<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16939;} else { if ((i_1077X == 2)) { *((long *) (SstackS)) = (Sfinalize_theseS); SstackS = ((SstackS) + -4); Sfinalize_theseS = 25; *((long *) (SstackS)) = ((((Senabled_interruptsS))<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16939;} else { if ((i_1077X == 3)) { channel_1079X = Spending_channels_headS; next_1080X = *((long *) ((((char *) (-3 + channel_1079X))) + 12)); Spending_channels_headS = next_1080X; addr_1081X = (((char *) (-3 + channel_1079X))) + 12; S48_WRITE_BARRIER(channel_1079X, addr_1081X, 1); *((long *) addr_1081X) = 1; if ((1 == next_1080X)) { Spending_channels_tailS = 1; arg0K0 = channel_1079X; goto L8384;} else { arg0K0 = channel_1079X; goto L8384;}} else { if ((i_1077X == 4)) { *((long *) (SstackS)) = (Sos_signal_typeS); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (Sos_signal_argumentS); SstackS = ((SstackS) + -4); Sos_signal_typeS = 1; Sos_signal_argumentS = 1; *((long *) (SstackS)) = ((((Senabled_interruptsS))<<2)); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16939;} else { *((long *) (SstackS)) = ((((Senabled_interruptsS))<<2)); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16939;}}}}}} L16105: { skip_1082X = arg0K0; stack_arg_count_1083X = arg0K1; template_1084X = *((long *) (((char *) (-3 + (SvalS))))); StemplateS = template_1084X; Scode_pointerS = ((((char *) (-3 + (*((long *) (((char *) (-3 + template_1084X)))))))) + skip_1082X); SenvS = (*((long *) ((((char *) (-3 + (SvalS)))) + 4))); arg0K0 = stack_space_958X; arg0K1 = stack_arg_count_1083X; goto L15995;} L16128: { skip_1085X = arg0K0; *((long *) (SstackS)) = 25; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((stack_arg_count_775X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((stack_arg_count_775X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = skip_1085X; arg0K1 = (3 + stack_arg_count_775X); goto L16105;} L16382: { skip_1086X = arg0K0; stack_arg_count_1087X = arg0K1; template_1088X = *((long *) (((char *) (-3 + (SvalS))))); StemplateS = template_1088X; Scode_pointerS = ((((char *) (-3 + (*((long *) (((char *) (-3 + template_1088X)))))))) + skip_1086X); SenvS = (*((long *) ((((char *) (-3 + (SvalS)))) + 4))); arg0K0 = stack_space_965X; arg0K1 = stack_arg_count_1087X; goto L15995;} L16407: { skip_1089X = arg0K0; if ((total_arg_count_794X < 3)) { arg0K0 = total_arg_count_794X; goto L16415;} else { if ((2 < stack_arg_count_788X)) { arg0K0 = stack_arg_count_788X; goto L16415;} else { arg0K0 = 2; goto L16415;}}} L19303: { SvalS = (*((long *) ((((char *) (-3 + cont_971X))) + 16))); arg0K0 = stack_nargs_805X; arg0K1 = list_args_806X; arg0K2 = list_arg_count_807X; goto L17687;} L20465: { merged_arg0K0 = list_args_806X; merged_arg0K1 = stack_nargs_805X; pop_args_GlistS_return_tag = 4; goto pop_args_GlistS; pop_args_GlistS_return_4: args_1090X = pop_args_GlistS0_return_value; push_exception_continuationB(4, 0); *((long *) (SstackS)) = 1; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = args_1090X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L10654: { if ((3 == (3 & x_457X))) { if ((11 == (31 & ((((*((long *) ((((char *) (-3 + x_457X))) + -4))))>>2))))) { arg0K0 = 5; goto L38256;} else { arg0K0 = 1; goto L38256;}} else { arg0K0 = 1; goto L38256;}} L28578: { if ((3 == (3 & n_459X))) { if ((11 == (31 & ((((*((long *) ((((char *) (-3 + n_459X))) + -4))))>>2))))) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = n_459X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} else { goto L28582;}} else { goto L28582;}} L28777: { if ((3 == (3 & n_460X))) { if ((11 == (31 & ((((*((long *) ((((char *) (-3 + n_460X))) + -4))))>>2))))) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = n_460X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} else { goto L28781;}} else { goto L28781;}} L28976: { if ((3 == (3 & n_461X))) { if ((11 == (31 & ((((*((long *) ((((char *) (-3 + n_461X))) + -4))))>>2))))) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = n_461X; SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} else { goto L28980;}} else { goto L28980;}} L6841: { if ((536870911 < lo_c_982X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_468X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_469X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { if ((lo_c_982X < 0)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_468X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_469X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { if ((8192 < mid_c_985X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_468X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_469X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { if ((a_470X < 0)) { if ((b_471X < 0)) { goto L6868;} else { goto L6875;}} else { if ((b_471X < 0)) { goto L6875;} else { goto L6868;}}}}}} L7135: { if ((536870911 < c_988X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_475X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_476X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { SvalS = (((c_988X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L7134: { SvalS = ((((0 - c_988X))<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L7303: { if ((536870911 < c_991X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_489X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_490X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { SvalS = (((c_991X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L7302: { SvalS = ((((0 - c_991X))<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L25373: { n_1091X = arg0K0; SvalS = (((n_1091X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L21544: { i_1092X = arg0K0; rest_list_1093X = arg0K1; if ((25 == rest_list_1093X)) { SvalS = new_842X; Scode_pointerS = ((Scode_pointerS) + 2); arg1K0 = (Scode_pointerS); goto L18459;} else { *((long *) ((((char *) (-3 + new_842X))) + (((i_1092X)<<2)))) = (*((long *) (((char *) (-3 + rest_list_1093X))))); arg0K0 = (1 + i_1092X); arg0K1 = (*((long *) ((((char *) (-3 + rest_list_1093X))) + 4))); goto L21544;}} L13322: { foo_1094X = arg0K0; if ((1 == foo_1094X)) { addr_1095X = ALLOCATE_SPACE(1, 12); *((long *) addr_1095X) = 2054; x_1096X = 3 + (((long) (addr_1095X + 4))); *((long *) (((char *) (-3 + x_1096X)))) = string_857X; *((long *) ((((char *) (-3 + x_1096X))) + 4)) = bucket_1003X; addr_1097X = (((char *) (-3 + table_856X))) + (((index_1002X)<<2)); S48_WRITE_BARRIER(table_856X, addr_1097X, x_1096X); *((long *) addr_1097X) = x_1096X; arg0K0 = x_1096X; goto L24558;} else { s2_1098X = *((long *) (((char *) (-3 + foo_1094X)))); len_1099X = (long)(((unsigned long)(*((long *) ((((char *) (-3 + string_857X))) + -4))))>>8); if ((len_1099X == ((long)(((unsigned long)(*((long *) ((((char *) (-3 + s2_1098X))) + -4))))>>8)))) { if (((!memcmp((void *)(((char *) (-3 + s2_1098X))), (void *)(((char *) (-3 + string_857X))),len_1099X)))) { arg0K0 = foo_1094X; goto L24558;} else { goto L13338;}} else { goto L13338;}}} L26802: { if ((0 == (3 & arg2_1005X))) { if (((((arg2_1005X)>>2)) < 0)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mode_1006X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { arg0K0 = (((arg2_1005X)>>2)); goto L26622;}} else { if ((3 == (3 & arg2_1005X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg2_1005X))) + -4))))>>2))))) { if ((1 == mode_1006X)) { goto L26680;} else { if ((3 == mode_1006X)) { goto L26680;} else { v_1100X = ps_open_fd((((char *)(((char *) (-3 + arg2_1005X))))), 0, &v_1101X); arg0K0 = v_1100X; arg0K1 = v_1101X; goto L26693;}}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mode_1006X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} else { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mode_1006X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}}} L34678: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L37522: { obj_1102X = SvalS; if ((3 == (3 & obj_1102X))) { if ((6 == (31 & ((((*((long *) ((((char *) (-3 + obj_1102X))) + -4))))>>2))))) { x_1103X = SvalS; if ((1 == arg2_1013X)) { arg2K0 = 0; goto L37539;} else { arg2K0 = 1; goto L37539;}} else { goto L37542;}} else { goto L37542;}} L37542: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg5_1016X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg4_1015X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg3_1014X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_1013X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 5; goto L16686;} L37073: { if ((3 == (3 & arg4_1020X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg4_1020X))) + -4))))>>2))))) { arg0K0 = (-1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg4_1020X))) + -4))))>>8))); goto L37085;} else { goto L37081;}} else { goto L37081;}} L37065: { if ((3 == (3 & arg4_1020X))) { if ((18 == (31 & ((((*((long *) ((((char *) (-3 + arg4_1020X))) + -4))))>>2))))) { goto L37073;} else { arg0K0 = 5; goto L36956;}} else { arg0K0 = 5; goto L36956;}} L36956: { reason_1104X = arg0K0; push_exception_continuationB(reason_1104X, 1); *((long *) (SstackS)) = arg4_1020X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((start_1022X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((count_1023X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = channel_1024X; SstackS = ((SstackS) + -4); arg0K0 = 4; goto L16686;} L37804: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg4_1020X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg3_1019X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_1018X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 4; goto L16686;} L29277: { val_1105X = arg0K0; SvalS = val_1105X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L34163: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 1; goto L16686;} L14819: { v_1106X = arg0K0; arg0K0 = (-1 + i_1035X); arg0K1 = v_1106X; goto L14805;} L30325: { reason_1107X = arg0K0; status_1108X = arg0K1; push_exception_continuationB(reason_1107X, 1); *((long *) (SstackS)) = arg3_1042X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_1041X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = comment_string_1044X; SstackS = ((SstackS) + -4); merged_arg0K0 = status_1108X; merged_arg0K1 = key_1040X; get_error_string_return_tag = 2; goto get_error_string; get_error_string_return_2: x_1109X = get_error_string0_return_value; *((long *) (SstackS)) = x_1109X; SstackS = ((SstackS) + -4); arg0K0 = 4; goto L16686;} L34775: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg3_1042X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = arg2_1041X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;} L34347: { SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L34352: { if ((0 == (Spending_interruptsS))) { s48_wait_for_event((((arg2_682X)>>2)), minutesP_1055X); goto L34347;} else { goto L34347;}} L33526: { if ((1 == (SvalS))) { v_1110X = Hlookup2132((Sexported_bindingsS), arg2_1058X, key_1057X); arg0K0 = v_1110X; goto L33583;} else { v_1111X = Hlookup2113((Simported_bindingsS), arg2_1058X, key_1057X); arg0K0 = v_1111X; goto L33583;}} L33531: { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_1058X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (SvalS); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} L12901: { i_1112X = arg0K0; h_1113X = arg0K1; if ((i_1112X < n_1061X)) { arg0K0 = (1 + i_1112X); arg0K1 = (h_1113X + (((*((unsigned char *) ((((char *) (-3 + arg2_690X))) + i_1112X)))))); goto L12901;} else { index_1114X = 1023 & h_1113X; bucket_1115X = *((long *) ((((char *) (-3 + table_1060X))) + (((index_1114X)<<2)))); arg0K0 = 1; arg0K1 = bucket_1115X; goto L12865;}} L27375: { l_1116X = arg0K0; i_1117X = arg0K1; if ((i_1117X < 0)) { SvalS = string_1064X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { *((unsigned char *) ((((char *) (-3 + string_1064X))) + i_1117X)) = ((((((*((long *) (((char *) (-3 + l_1116X))))))>>8)))); arg0K0 = (*((long *) ((((char *) (-3 + l_1116X))) + 4))); arg0K1 = (-1 + i_1117X); goto L27375;}} L31130: { y_1118X = arg0K0; if ((y_1118X < (from_index_731X + count_733X))) { goto L31163;} else { if ((3 == (3 & arg3_728X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg3_728X))) + -4))))>>2))))) { arg0K0 = (-1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg3_728X))) + -4))))>>8))); goto L31145;} else { goto L31141;}} else { goto L31141;}}} L31126: { arg0K0 = ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg5_730X))) + -4))))>>8)); goto L31130;} L11713: { v_1119X = arg3K0; ps_write_string(v_1119X, out_742X); goto L29599;} L11679: { if ((3 == (3 & thing_942X))) { if ((1 == (31 & ((((*((long *) ((((char *) (-3 + thing_942X))) + -4))))>>2))))) { arg3K0 = (((char *)(((char *) (-3 + (*((long *) (((char *) (-3 + thing_942X)))))))))); goto L11713;} else { goto L11687;}} else { goto L11687;}} L21082: { arg0K0 = (SenvS); goto L20992;} L21006: { value_1120X = arg0K0; SvalS = value_1120X; Scode_pointerS = ((Scode_pointerS) + 4); arg1K0 = (Scode_pointerS); goto L18459;} L20905: { env_1121X = arg0K0; i_1122X = arg0K1; if ((0 == i_1122X)) { count_1123X = *((unsigned char *) ((Scode_pointerS) + (2 + offset_1073X))); arg0K0 = count_1123X; arg0K1 = i_1072X; arg0K2 = (2 + offset_1073X); goto L20826;} else { arg0K0 = (*((long *) (((char *) (-3 + env_1121X))))); arg0K1 = (-1 + i_1122X); goto L20905;}} L16939: { arg_count_1124X = arg0K0; obj_1125X = Sinterrupt_handlersS; if ((3 == (3 & obj_1125X))) { if ((2 == (31 & ((((*((long *) ((((char *) (-3 + obj_1125X))) + -4))))>>2))))) { goto L16953;} else { goto L17033;}} else { goto L17033;}} L8384: { channel_1126X = arg0K0; x_1127X = 1 == (Spending_channels_headS); if (x_1127X) { goto L8398;} else { Spending_interruptsS = (8 | (Spending_interruptsS)); if ((0 == ((Spending_interruptsS) & (Senabled_interruptsS)))) { s48_Spending_interruptPS = 0; if ((s48_Spending_eventsPS)) { s48_Spending_interruptPS = 1; goto L8398;} else { goto L8398;}} else { s48_Spending_interruptPS = 1; goto L8398;}}} L15995: { stack_slots_1128X = arg0K0; stack_arg_count_1129X = arg0K1; if ((stack_slots_1128X < (64 + (((((SstackS) - (Sstack_limitS)))>>2))))) { goto L15997;} else { space_1130X = 1 + (((((Sstack_endS) - (SstackS)))>>2)); v_1131X = AVAILABLEp(space_1130X); if (v_1131X) { arg2K0 = 1; arg0K1 = 0; goto L16054;} else { collect_saving_temps(1, 1, &temp1_1132X); v_1133X = AVAILABLEp(space_1130X); if (v_1133X) { arg2K0 = 1; arg0K1 = 0; goto L16054;} else { arg2K0 = 0; arg0K1 = 0; goto L16054;}}}} L16415: { final_stack_arg_count_1134X = arg0K0; if ((stack_arg_count_788X < final_stack_arg_count_1134X)) { arg0K0 = final_stack_arg_count_1134X; goto L16419;} else { arg0K0 = stack_arg_count_788X; goto L16419;}} L28582: { SvalS = 1; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L28781: { SvalS = 1; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L28980: { SvalS = 1; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L6868: { if ((536870911 < c_986X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_468X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_469X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { SvalS = (((c_986X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L6875: { if ((536870912 < c_986X)) { push_exception_continuationB(5, 1); *((long *) (SstackS)) = arg2_468X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_469X; SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { SvalS = ((((0 - c_986X))<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L24558: { val_1135X = arg0K0; SvalS = val_1135X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L13338: { arg0K0 = (*((long *) ((((char *) (-3 + foo_1094X))) + 4))); goto L13322;} L26622: { index_1136X = arg0K0; channel_1137X = make_registered_channel(mode_1006X, arg2_1005X, index_1136X, key_1004X, &reason_1138X); if ((1 == channel_1137X)) { if ((3 == (3 & arg2_1005X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg2_1005X))) + -4))))>>2))))) { if ((1 == mode_1006X)) { goto L26737;} else { if ((3 == mode_1006X)) { goto L26737;} else { v_1139X = ps_close_fd(index_1136X); arg0K0 = v_1139X; goto L26732;}}} else { push_exception_continuationB(reason_1138X, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mode_1006X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} else { push_exception_continuationB(reason_1138X, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mode_1006X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} else { SvalS = channel_1137X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L26680: { v_1140X = ps_open_fd((((char *)(((char *) (-3 + arg2_1005X))))), 1, &v_1141X); arg0K0 = v_1140X; arg0K1 = v_1141X; goto L26693;} L26693: { channel_1142X = arg0K0; status_1143X = arg0K1; if ((status_1143X == NO_ERRORS)) { arg0K0 = channel_1142X; goto L26622;} else { if ((status_1143X == ENOENT)) { push_exception_continuationB(10, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mode_1006X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { push_exception_continuationB(25, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mode_1006X)<<2)); SstackS = ((SstackS) + -4); merged_arg0K0 = status_1143X; merged_arg0K1 = key_1004X; get_error_string_return_tag = 3; goto get_error_string; get_error_string_return_3: x_1144X = get_error_string0_return_value; *((long *) (SstackS)) = x_1144X; SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16686;}}} L37539: { waitP_1145X = arg2K0; start_1146X = ((arg4_1015X)>>2); count_1147X = ((arg3_1014X)>>2); if ((4 == (*((long *) (((char *) (-3 + x_1103X))))))) { if ((3 == (3 & arg5_1016X))) { if ((0 == (128 & (*((long *) ((((char *) (-3 + arg5_1016X))) + -4)))))) { if ((3 == (3 & arg5_1016X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg5_1016X))) + -4))))>>2))))) { goto L36675;} else { goto L36667;}} else { goto L36667;}} else { arg0K0 = 5; goto L36558;}} else { arg0K0 = 5; goto L36558;}} else { arg0K0 = 5; goto L36558;}} L37085: { length_1148X = arg0K0; if ((length_1148X < (start_1022X + count_1023X))) { arg0K0 = 7; goto L36956;} else { got_1149X = ps_write_fd(((((*((long *) ((((char *) (-3 + channel_1024X))) + 8))))>>2)), ((((char *) (-3 + arg4_1020X))) + start_1022X), count_1023X, &pendingP_1150X, &status_1151X); if ((status_1151X == NO_ERRORS)) { if (pendingP_1150X) { addr_1152X = (((char *) (-3 + channel_1024X))) + 16; S48_WRITE_BARRIER(channel_1024X, addr_1152X, 5); *((long *) addr_1152X) = 5; s48_Spending_interruptPS = 0; Senabled_interruptsS = 0; arg0K0 = 13; goto L36956;} else { SvalS = (((got_1149X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} else { push_exception_continuationB(25, 1); *((long *) (SstackS)) = arg4_1020X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((start_1022X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((count_1023X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = channel_1024X; SstackS = ((SstackS) + -4); merged_arg0K0 = status_1151X; merged_arg0K1 = key_1017X; get_error_string_return_tag = 4; goto get_error_string; get_error_string_return_4: x_1153X = get_error_string0_return_value; *((long *) (SstackS)) = x_1153X; SstackS = ((SstackS) + -4); arg0K0 = 5; goto L16686;}}} L37081: { arg0K0 = ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg4_1020X))) + -4))))>>8)); goto L37085;} L33583: { val_1154X = arg0K0; SvalS = val_1154X; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L12865: { previous_foo_1155X = arg0K0; foo_1156X = arg0K1; if ((1 == foo_1156X)) { goto L23969;} else { s2_1157X = *((long *) (((char *) (-3 + foo_1156X)))); len_1158X = (long)(((unsigned long)(*((long *) ((((char *) (-3 + arg2_690X))) + -4))))>>8); if ((len_1158X == ((long)(((unsigned long)(*((long *) ((((char *) (-3 + s2_1157X))) + -4))))>>8)))) { if (((!memcmp((void *)(((char *) (-3 + s2_1157X))), (void *)(((char *) (-3 + arg2_690X))),len_1158X)))) { if ((1 == previous_foo_1155X)) { value_1159X = *((long *) ((((char *) (-3 + foo_1156X))) + 12)); addr_1160X = (((char *) (-3 + table_1060X))) + (((index_1114X)<<2)); S48_WRITE_BARRIER(table_1060X, addr_1160X, value_1159X); *((long *) addr_1160X) = value_1159X; goto L23969;} else { val_1161X = *((long *) ((((char *) (-3 + foo_1156X))) + 12)); addr_1162X = (((char *) (-3 + previous_foo_1155X))) + 12; S48_WRITE_BARRIER(previous_foo_1155X, addr_1162X, val_1161X); *((long *) addr_1162X) = val_1161X; goto L23969;}} else { goto L12927;}} else { goto L12927;}}} L31145: { y_1163X = arg0K0; if ((y_1163X < (to_index_732X + count_733X))) { goto L31163;} else { memcpy((void *)((((char *) (-3 + arg3_728X))) + to_index_732X), (void *)((((char *) (-3 + arg5_730X))) + from_index_731X),count_733X); SvalS = 13; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}} L31141: { arg0K0 = ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg3_728X))) + -4))))>>8)); goto L31145;} L11687: { if ((1 == thing_942X)) { goto L11690;} else { if ((5 == thing_942X)) { goto L11690;} else { if ((25 == thing_942X)) { arg3K0 = "()"; goto L11713;} else { if ((3 == (3 & thing_942X))) { if ((0 == (31 & ((((*((long *) ((((char *) (-3 + thing_942X))) + -4))))>>2))))) { arg3K0 = "(...)"; goto L11713;} else { goto L11703;}} else { goto L11703;}}}}} L20826: { count_1164X = arg0K0; i_1165X = arg0K1; offset_1166X = arg0K2; if ((0 == count_1164X)) { arg0K0 = i_1165X; arg0K1 = offset_1166X; arg0K2 = env_1121X; goto L20809;} else { value_1167X = *((long *) ((((char *) (-3 + env_1121X))) + ((((*((unsigned char *) ((Scode_pointerS) + (1 + offset_1166X)))))<<2)))); addr_1168X = (((char *) (-3 + new_env_766X))) + (((i_1165X)<<2)); S48_WRITE_BARRIER(new_env_766X, addr_1168X, value_1167X); *((long *) addr_1168X) = value_1167X; arg0K0 = (-1 + count_1164X); arg0K1 = (1 + i_1165X); arg0K2 = (1 + offset_1166X); goto L20826;}} L16953: { Senabled_interruptsS = 0; if ((0 == ((Spending_interruptsS) & (Senabled_interruptsS)))) { s48_Spending_interruptPS = 0; if ((s48_Spending_eventsPS)) { s48_Spending_interruptPS = 1; goto L16955;} else { goto L16955;}} else { s48_Spending_interruptPS = 1; goto L16955;}} L17033: { ps_error("interrupt handler is not a vector", 0); goto L16953;} L8398: { *((long *) (SstackS)) = channel_1126X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (*((long *) ((((char *) (-3 + channel_1126X))) + 16))); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = ((((Senabled_interruptsS))<<2)); SstackS = ((SstackS) + -4); arg0K0 = 3; goto L16939;} L15997: { if ((s48_Spending_interruptPS)) { if ((s48_Spending_eventsPS)) { s48_Spending_eventsPS = 0; check_events_return_tag = 3; goto check_events; check_events_return_3: v_1169X = check_events0_return_value; if (v_1169X) { arg0K0 = stack_arg_count_1129X; goto L16915;} else { goto L16001;}} else { arg0K0 = stack_arg_count_1129X; goto L16915;}} else { goto L16001;}} L16054: { okayP_1170X = arg2K0; key_1171X = arg0K1; if (okayP_1170X) { arg0K0 = key_1171X; goto L16008;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_1171X; goto L16008;}} L16419: { v_1172X = arg0K0; merged_arg0K0 = v_1172X; merged_arg0K1 = stack_arg_count_788X; merged_arg0K2 = list_args_789X; merged_arg0K3 = list_arg_count_790X; rest_list_setup_return_tag = 2; goto rest_list_setup; rest_list_setup_return_2: *((long *) (SstackS)) = (((final_stack_arg_count_1134X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((total_arg_count_794X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = skip_1089X; arg0K1 = (3 + final_stack_arg_count_1134X); goto L16382;} L26737: { v_1173X = ps_close_fd(index_1136X); arg0K0 = v_1173X; goto L26732;} L26732: { status_1174X = arg0K0; if ((status_1174X == NO_ERRORS)) { push_exception_continuationB(reason_1138X, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mode_1006X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;} else { channel_close_error(status_1174X, index_1136X, arg2_1005X); push_exception_continuationB(reason_1138X, 1); *((long *) (SstackS)) = arg2_1005X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((mode_1006X)<<2)); SstackS = ((SstackS) + -4); arg0K0 = 2; goto L16686;}} L36675: { if ((3 == (3 & arg5_1016X))) { if ((17 == (31 & ((((*((long *) ((((char *) (-3 + arg5_1016X))) + -4))))>>2))))) { arg0K0 = (-1 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg5_1016X))) + -4))))>>8))); goto L36687;} else { goto L36683;}} else { goto L36683;}} L36667: { if ((3 == (3 & arg5_1016X))) { if ((18 == (31 & ((((*((long *) ((((char *) (-3 + arg5_1016X))) + -4))))>>2))))) { goto L36675;} else { arg0K0 = 5; goto L36558;}} else { arg0K0 = 5; goto L36558;}} L36558: { reason_1175X = arg0K0; push_exception_continuationB(reason_1175X, 1); *((long *) (SstackS)) = arg5_1016X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((start_1146X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((count_1147X)<<2)); SstackS = ((SstackS) + -4); if (waitP_1145X) { arg0K0 = 5; goto L36573;} else { arg0K0 = 1; goto L36573;}} L23969: { Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} L12927: { arg0K0 = foo_1156X; arg0K1 = (*((long *) ((((char *) (-3 + foo_1156X))) + 12))); goto L12865;} L11690: { if ((1 == thing_942X)) { arg3K0 = "#f"; goto L11713;} else { arg3K0 = "#t"; goto L11713;}} L11703: { if ((3 == (3 & thing_942X))) { if ((2 == (31 & ((((*((long *) ((((char *) (-3 + thing_942X))) + -4))))>>2))))) { arg3K0 = "#(...)"; goto L11713;} else { goto L11707;}} else { goto L11707;}} L16955: { SvalS = (*((long *) ((((char *) (-3 + (Sinterrupt_handlersS)))) + (((i_1077X)<<2))))); obj_1176X = SvalS; if ((3 == (3 & obj_1176X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + obj_1176X))) + -4))))>>2))))) { goto L16972;} else { goto L17058;}} else { goto L17058;}} L16001: { arg1K0 = (Scode_pointerS); goto L18459;} L16008: { v_1177X = arg0K0; merged_arg0K0 = v_1177X; copy_stack_into_heap_return_tag = 3; goto copy_stack_into_heap; copy_stack_into_heap_return_3: if ((stack_slots_1128X < (64 + (((((SstackS) - (Sstack_limitS)))>>2))))) { goto L15997;} else { ps_error("VM's stack is too small (how can this happen?)", 0); goto L15997;}} L36687: { length_1178X = arg0K0; if ((length_1178X < (start_1146X + count_1147X))) { arg0K0 = 7; goto L36558;} else { got_1179X = ps_read_fd(((((*((long *) ((((char *) (-3 + x_1103X))) + 8))))>>2)), ((((char *) (-3 + arg5_1016X))) + start_1146X), count_1147X, waitP_1145X, &eofP_1180X, &pendingP_1181X, &status_1182X); if ((status_1182X == NO_ERRORS)) { if (eofP_1180X) { SvalS = 21; Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;} else { if (pendingP_1181X) { addr_1183X = (((char *) (-3 + x_1103X))) + 16; S48_WRITE_BARRIER(x_1103X, addr_1183X, 5); *((long *) addr_1183X) = 5; s48_Spending_interruptPS = 0; Senabled_interruptsS = 0; arg0K0 = 13; goto L36558;} else { SvalS = (((got_1179X)<<2)); Scode_pointerS = ((Scode_pointerS) + 1); arg1K0 = (Scode_pointerS); goto L18459;}}} else { push_exception_continuationB(25, 1); *((long *) (SstackS)) = arg5_1016X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((start_1146X)<<2)); SstackS = ((SstackS) + -4); *((long *) (SstackS)) = (((count_1147X)<<2)); SstackS = ((SstackS) + -4); if (waitP_1145X) { arg0K0 = 5; goto L36610;} else { arg0K0 = 1; goto L36610;}}}} L36683: { arg0K0 = ((long)(((unsigned long)(*((long *) ((((char *) (-3 + arg5_1016X))) + -4))))>>8)); goto L36687;} L36573: { x_1184X = arg0K0; *((long *) (SstackS)) = x_1184X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_1103X; SstackS = ((SstackS) + -4); arg0K0 = 5; goto L16686;} L11707: { if ((3 == (3 & thing_942X))) { if ((3 == (31 & ((((*((long *) ((((char *) (-3 + thing_942X))) + -4))))>>2))))) { arg3K0 = "#{procedure}"; goto L11713;} else { arg3K0 = "???"; goto L11713;}} else { arg3K0 = "???"; goto L11713;}} L16972: { StemplateS = (SvalS); Slosing_opcodeS = (0 - i_1077X); arg0K0 = arg_count_1124X; goto L16087;} L17058: { ps_error("interrupt handler is not a closure", 1, i_1077X); goto L16972;} L36610: { x_1185X = arg0K0; *((long *) (SstackS)) = x_1185X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_1103X; SstackS = ((SstackS) + -4); merged_arg0K0 = status_1182X; merged_arg0K1 = key_1012X; get_error_string_return_tag = 5; goto get_error_string; get_error_string_return_5: x_1186X = get_error_string0_return_value; *((long *) (SstackS)) = x_1186X; SstackS = ((SstackS) + -4); arg0K0 = 6; goto L16686;} loseD0: { message_370X = merged_arg3K0;{ why_1187X = (((*((long *) ((SstackS) + (4 + (((nargs_743X)<<2)))))))>>2); ps_write_string("Template UIDs: ", (stderr)); current_template_1188X = StemplateS; out_1189X = stderr; if ((0 == (3 & (*((long *) ((((char *) (-3 + current_template_1188X))) + 4)))))) { if ((current_template_1188X == (*((long *) ((((char *) (-3 + (Sbottom_of_stackS)))) + 8))))) { arg2K0 = 0; goto L10538;} else { ps_write_integer(((((*((long *) ((((char *) (-3 + current_template_1188X))) + 4))))>>2)), out_1189X); arg2K0 = 1; goto L10538;}} else { arg2K0 = 0; goto L10538;}} L10538: { not_firstP_1190X = arg2K0; arg0K0 = (ScontS); arg2K1 = not_firstP_1190X; goto L10545;} L10545: { cont_1191X = arg0K0; not_firstP_1192X = arg2K1; if ((3 == (3 & cont_1191X))) { if ((10 == (31 & ((((*((long *) ((((char *) (-3 + cont_1191X))) + -4))))>>2))))) { template_1193X = *((long *) ((((char *) (-3 + cont_1191X))) + 8)); if ((0 == (3 & (*((long *) ((((char *) (-3 + template_1193X))) + 4)))))) { if ((template_1193X == (*((long *) ((((char *) (-3 + (Sbottom_of_stackS)))) + 8))))) { arg2K0 = not_firstP_1192X; goto L10554;} else { if (not_firstP_1192X) { ps_write_string(" <- ", out_1189X); goto L10593;} else { goto L10593;}}} else { arg2K0 = not_firstP_1192X; goto L10554;}} else { goto L16705;}} else { goto L16705;}} L10554: { v_1194X = arg2K0; arg0K0 = (*((long *) (((char *) (-3 + cont_1191X))))); arg2K1 = v_1194X; goto L10545;} L10593: { ps_write_integer(((((*((long *) ((((char *) (-3 + template_1193X))) + 4))))>>2)), out_1189X); arg2K0 = 1; goto L10554;} L16705: { { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } if ((why_1187X == 1)) { if ((0 == (3 & (*((long *) (((char *) (-3 + (*((long *) ((SstackS) + (((nargs_743X)<<2))))))))))))) { ps_error(message_370X, 3, opcode_744X, why_1187X, ((((*((long *) (((char *) (-3 + (*((long *) ((SstackS) + (((nargs_743X)<<2)))))))))))>>2))); goto loseD0_return;} else { goto L16729;}} else { goto L16729;}} L16729: { ps_error(message_370X, 2, opcode_744X, why_1187X); goto loseD0_return;} loseD0_return: switch (loseD0_return_tag) { case 0: goto loseD0_return_0; default: goto loseD0_return_1; }} check_events: { { goto L40013;} L40013: { type_1195X = s48_get_next_event(&channel_1196X, &status_1197X); if ((type_1195X == ALARM_EVENT)) { if ((1 == (Sinterrupted_templateS))) { Sinterrupted_templateS = (StemplateS); arg0K0 = 1; goto L15890;} else { arg0K0 = 1; goto L15890;}} else { if ((type_1195X == KEYBOARD_INTERRUPT_EVENT)) { arg0K0 = 2; goto L15890;} else { if ((type_1195X == IO_COMPLETION_EVENT)) { enqueue_channelB(channel_1196X, status_1197X); arg0K0 = 8; goto L15890;} else { if ((type_1195X == OS_SIGNAL_EVENT)) { arg0K0 = 16; goto L15890;} else { if ((type_1195X == NO_EVENT)) { arg0K0 = 0; goto L15890;} else { if ((type_1195X == ERROR_EVENT)) { ps_write_string("OS error while getting event", (stderr)); { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } ps_write_string((ps_error_string(status_1197X)), (stderr)); { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } arg0K0 = 0; goto L15890;} else { ps_write_string("unknown type of event", (stderr)); { long ignoreXX; PS_WRITE_CHAR(10, (stderr), ignoreXX) } arg0K0 = 0; goto L15890;}}}}}}} L15890: { v_1198X = arg0K0; Spending_interruptsS = (v_1198X | (Spending_interruptsS)); if ((type_1195X == NO_EVENT)) { if ((0 == ((Spending_interruptsS) & (Senabled_interruptsS)))) { s48_Spending_interruptPS = 0; if ((s48_Spending_eventsPS)) { s48_Spending_interruptPS = 1; goto L15917;} else { goto L15917;}} else { s48_Spending_interruptPS = 1; goto L15917;}} else { goto L40013;}} L15917: { if ((s48_Spending_interruptPS)) { if ((s48_Spending_eventsPS)) { s48_Spending_eventsPS = 0; goto L40013;} else { check_events0_return_value = 1; goto check_events_return;}} else { check_events0_return_value = 0; goto check_events_return;}} check_events_return: switch (check_events_return_tag) { case 0: goto check_events_return_0; case 1: goto check_events_return_1; case 2: goto check_events_return_2; default: goto check_events_return_3; }} rest_list_setup: { wants_stack_args_366X = merged_arg0K0; stack_arg_count_367X = merged_arg0K1; list_args_368X = merged_arg0K2; list_arg_count_369X = merged_arg0K3;{ if ((stack_arg_count_367X == wants_stack_args_366X)) { merged_arg0K0 = list_args_368X; merged_arg0K1 = list_arg_count_369X; copy_listS_return_tag = 1; goto copy_listS; copy_listS_return_1: x_1199X = copy_listS0_return_value; *((long *) (SstackS)) = x_1199X; SstackS = ((SstackS) + -4); goto rest_list_setup_return;} else { if ((stack_arg_count_367X < wants_stack_args_366X)) { count_1200X = wants_stack_args_366X - stack_arg_count_367X; merged_arg0K0 = list_args_368X; merged_arg0K1 = count_1200X; push_list_return_tag = 3; goto push_list; push_list_return_3: v_1201X = push_list0_return_value; merged_arg0K0 = v_1201X; merged_arg0K1 = (list_arg_count_369X - count_1200X); copy_listS_return_tag = 2; goto copy_listS; copy_listS_return_2: x_1202X = copy_listS0_return_value; *((long *) (SstackS)) = x_1202X; SstackS = ((SstackS) + -4); goto rest_list_setup_return;} else { merged_arg0K0 = list_args_368X; merged_arg0K1 = list_arg_count_369X; copy_listS_return_tag = 3; goto copy_listS; copy_listS_return_3: v_1203X = copy_listS0_return_value; merged_arg0K0 = v_1203X; merged_arg0K1 = (stack_arg_count_367X - wants_stack_args_366X); pop_args_GlistS_return_tag = 5; goto pop_args_GlistS; pop_args_GlistS_return_5: x_1204X = pop_args_GlistS0_return_value; *((long *) (SstackS)) = x_1204X; SstackS = ((SstackS) + -4); goto rest_list_setup_return;}}} rest_list_setup_return: switch (rest_list_setup_return_tag) { case 0: goto rest_list_setup_return_0; case 1: goto rest_list_setup_return_1; default: goto rest_list_setup_return_2; }} push_list: { list_364X = merged_arg0K0; count_365X = merged_arg0K1;{ *((long *) (SstackS)) = list_364X; SstackS = ((SstackS) + -4); if ((count_365X < (64 + (((((SstackS) - (Sstack_limitS)))>>2))))) { goto L15306;} else { space_1205X = 1 + (((((Sstack_endS) - (SstackS)))>>2)); v_1206X = AVAILABLEp(space_1205X); if (v_1206X) { arg2K0 = 1; arg0K1 = 0; goto L15390;} else { collect_saving_temps(1, 1, &temp1_1207X); v_1208X = AVAILABLEp(space_1205X); if (v_1208X) { arg2K0 = 1; arg0K1 = 0; goto L15390;} else { arg2K0 = 0; arg0K1 = 0; goto L15390;}}}} L15306: { SstackS = ((SstackS) + 4); list_1209X = *((long *) (SstackS)); arg0K0 = count_365X; arg0K1 = list_1209X; goto L15315;} L15390: { okayP_1210X = arg2K0; key_1211X = arg0K1; if (okayP_1210X) { arg0K0 = key_1211X; goto L15341;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_1211X; goto L15341;}} L15315: { i_1212X = arg0K0; l_1213X = arg0K1; if ((0 < i_1212X)) { *((long *) (SstackS)) = (*((long *) (((char *) (-3 + l_1213X))))); SstackS = ((SstackS) + -4); arg0K0 = (-1 + i_1212X); arg0K1 = (*((long *) ((((char *) (-3 + l_1213X))) + 4))); goto L15315;} else { push_list0_return_value = l_1213X; goto push_list_return;}} L15341: { v_1214X = arg0K0; merged_arg0K0 = v_1214X; copy_stack_into_heap_return_tag = 4; goto copy_stack_into_heap; copy_stack_into_heap_return_4: if ((count_365X < (64 + (((((SstackS) - (Sstack_limitS)))>>2))))) { goto L15306;} else { ps_error("VM's stack is too small (how can this happen?)", 0); goto L15306;}} push_list_return: switch (push_list_return_tag) { case 0: goto push_list_return_0; case 1: goto push_list_return_1; case 2: goto push_list_return_2; default: goto push_list_return_3; }} copy_stack_into_heap: { key_363X = merged_arg0K0;{ arg1K0 = ((SstackS) + 4); arg0K1 = 0; goto L13535;} L13535: { p_1215X = arg1K0; i_1216X = arg0K1; if ((2 == (3 & (*((long *) p_1215X))))) { if ((26 == (*((long *) p_1215X)))) { arg0K0 = (-1 + i_1216X); goto L13522;} else { arg0K0 = i_1216X; goto L13522;}} else { arg1K0 = (p_1215X + 4); arg0K1 = (1 + i_1216X); goto L13535;}} L13522: { arg_count_1217X = arg0K0; top_1218X = SstackS; if ((1 == (ScontS))) { goto L13527;} else { merged_arg0K0 = key_363X; merged_arg0K1 = 1; really_preserve_continuation_return_tag = 1; goto really_preserve_continuation; really_preserve_continuation_return_1: goto L13527;}} L13527: { stob_1219X = ScontS; arg1K0 = ((((char *) (-3 + stob_1219X))) + -8); arg1K1 = (top_1218X + (((arg_count_1217X)<<2))); goto L13560;} L13560: { loc_1220X = arg1K0; arg_1221X = arg1K1; if ((top_1218X < arg_1221X)) { *((long *) loc_1220X) = (*((long *) arg_1221X)); arg1K0 = (loc_1220X + -4); arg1K1 = (arg_1221X + -4); goto L13560;} else { SstackS = loc_1220X; goto copy_stack_into_heap_return;}} copy_stack_into_heap_return: switch (copy_stack_into_heap_return_tag) { case 0: goto copy_stack_into_heap_return_0; case 1: goto copy_stack_into_heap_return_1; case 2: goto copy_stack_into_heap_return_2; case 3: goto copy_stack_into_heap_return_3; default: goto copy_stack_into_heap_return_4; }} really_preserve_continuation: { key_361X = merged_arg0K0; reason_362X = merged_arg0K1;{ p_1222X = SenvS; if ((3 == (3 & p_1222X))) { if ((p_1222X < (((long) (Sstack_beginS))))) { goto L12711;} else { if (((((long) (Sstack_endS))) < p_1222X)) { goto L12711;} else { merged_arg0K0 = (SenvS); merged_arg0K1 = (ScontS); merged_arg0K2 = key_361X; merged_arg0K3 = reason_362X; save_env_in_heap_return_tag = 1; goto save_env_in_heap; save_env_in_heap_return_1: v_1223X = save_env_in_heap0_return_value; SenvS = v_1223X; goto L12711;}}} else { goto L12711;}} L12711: { end_1224X = *((long *) (((char *) (-3 + (Sbottom_of_stackS))))); arg0K0 = (ScontS); arg0K1 = (Sbottom_of_stackS); goto L12664;} L12664: { cont_1225X = arg0K0; previous_1226X = arg0K1; if ((cont_1225X == (Sbottom_of_stackS))) { *((long *) (((char *) (-3 + previous_1226X)))) = end_1224X; ScontS = (Sbottom_of_stackS); really_preserve_continuation0_return_value = (*((long *) (((char *) (-3 + (Sbottom_of_stackS)))))); goto really_preserve_continuation_return;} else { p_1227X = *((long *) ((((char *) (-3 + cont_1225X))) + 12)); if ((3 == (3 & p_1227X))) { if ((p_1227X < (((long) (Sstack_beginS))))) { goto L12682;} else { if (((((long) (Sstack_endS))) < p_1227X)) { goto L12682;} else { merged_arg0K0 = (*((long *) ((((char *) (-3 + cont_1225X))) + 12))); merged_arg0K1 = cont_1225X; merged_arg0K2 = key_361X; merged_arg0K3 = reason_362X; save_env_in_heap_return_tag = 2; goto save_env_in_heap; save_env_in_heap_return_2: goto L12682;}}} else { goto L12682;}}} L12682: { header_1228X = *((long *) ((((char *) (-3 + cont_1225X))) + -4)); addr_1229X = ALLOCATE_SPACE((31 & (((header_1228X)>>2))), (4 + ((long)(((unsigned long)header_1228X)>>8)))); data_addr_1230X = addr_1229X + 4; *((long *) addr_1229X) = header_1228X; memcpy((void *)data_addr_1230X, (void *)(((char *) (-3 + cont_1225X))),((long)(((unsigned long)header_1228X)>>8))); new_1231X = 3 + (((long) data_addr_1230X)); *((long *) (((char *) (-3 + previous_1226X)))) = new_1231X; arg0K0 = (*((long *) (((char *) (-3 + new_1231X))))); arg0K1 = new_1231X; goto L12664;} really_preserve_continuation_return: switch (really_preserve_continuation_return_tag) { case 0: goto really_preserve_continuation_return_0; default: goto really_preserve_continuation_return_1; }} copy_env: { env_360X = merged_arg0K0;{ header_1232X = *((long *) ((((char *) (-3 + env_360X))) + -4)); addr_1233X = ALLOCATE_SPACE((31 & (((header_1232X)>>2))), (4 + ((long)(((unsigned long)header_1232X)>>8)))); data_addr_1234X = addr_1233X + 4; *((long *) addr_1233X) = header_1232X; memcpy((void *)data_addr_1234X, (void *)(((char *) (-3 + env_360X))),((long)(((unsigned long)header_1232X)>>8))); new_1235X = 3 + (((long) data_addr_1234X)); addr_1236X = ((char *) (-3 + env_360X)); S48_WRITE_BARRIER(env_360X, addr_1236X, 26); *((long *) addr_1236X) = 26; *((long *) ((((char *) (-3 + env_360X))) + -4)) = new_1235X; copy_env0_return_value = new_1235X; goto copy_env_return;} copy_env_return: switch (copy_env_return_tag) { case 0: goto copy_env_return_0; default: goto copy_env_return_1; }} save_env_in_heap: { env_356X = merged_arg0K0; cont_357X = merged_arg0K1; key_358X = merged_arg0K2; reason_359X = merged_arg0K3;{ merged_arg0K0 = env_356X; merged_arg0K1 = key_358X; merged_arg0K2 = reason_359X; copy_env_return_tag = 0; goto copy_env; copy_env_return_0: top_1237X = copy_env0_return_value; arg0K0 = top_1237X; goto L11943;} L11943: { env_1238X = arg0K0; p_1239X = *((long *) (((char *) (-3 + env_1238X)))); if ((3 == (3 & p_1239X))) { if ((p_1239X < (((long) (Sstack_beginS))))) { goto L11962;} else { if (((((long) (Sstack_endS))) < p_1239X)) { goto L11962;} else { merged_arg0K0 = (*((long *) (((char *) (-3 + env_1238X))))); merged_arg0K1 = key_358X; merged_arg0K2 = reason_359X; copy_env_return_tag = 1; goto copy_env; copy_env_return_1: new_1240X = copy_env0_return_value; addr_1241X = ((char *) (-3 + env_1238X)); S48_WRITE_BARRIER(env_1238X, addr_1241X, new_1240X); *((long *) addr_1241X) = new_1240X; arg0K0 = new_1240X; goto L11943;}}} else { goto L11962;}} L11962: { arg0K0 = cont_357X; goto L11966;} L11966: { cont_1242X = arg0K0; env_1243X = *((long *) ((((char *) (-3 + cont_1242X))) + 12)); if ((3 == (3 & env_1243X))) { if ((3 == (3 & (*((long *) ((((char *) (-3 + env_1243X))) + -4)))))) { *((long *) ((((char *) (-3 + cont_1242X))) + 12)) = (*((long *) ((((char *) (-3 + env_1243X))) + -4))); arg0K0 = (*((long *) (((char *) (-3 + cont_1242X))))); goto L11966;} else { save_env_in_heap0_return_value = top_1237X; goto save_env_in_heap_return;}} else { save_env_in_heap0_return_value = top_1237X; goto save_env_in_heap_return;}} save_env_in_heap_return: switch (save_env_in_heap_return_tag) { case 0: goto save_env_in_heap_return_0; case 1: goto save_env_in_heap_return_1; default: goto save_env_in_heap_return_2; }} pop_args_GlistS: { start_354X = merged_arg0K0; count_355X = merged_arg0K1;{ space_1244X = 3 * count_355X; v_1245X = AVAILABLEp(space_1244X); if (v_1245X) { arg2K0 = 1; arg0K1 = start_354X; goto L14281;} else { temp0_1246X = collect_saving_temps(start_354X, 1, &temp1_1247X); v_1248X = AVAILABLEp(space_1244X); if (v_1248X) { arg2K0 = 1; arg0K1 = temp0_1246X; goto L14281;} else { arg2K0 = 0; arg0K1 = temp0_1246X; goto L14281;}}} L14281: { okayP_1249X = arg2K0; temp_1250X = arg0K1; if (okayP_1249X) { arg0K0 = temp_1250X; goto L14255;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = temp_1250X; goto L14255;}} L14255: { start_1251X = arg0K0; arg0K0 = start_1251X; arg0K1 = count_355X; goto L14264;} L14264: { args_1252X = arg0K0; count_1253X = arg0K1; if ((0 == count_1253X)) { pop_args_GlistS0_return_value = args_1252X; goto pop_args_GlistS_return;} else { SstackS = ((SstackS) + 4); a_1254X = *((long *) (SstackS)); addr_1255X = ALLOCATE_SPACE(0, 12); *((long *) addr_1255X) = 2050; x_1256X = 3 + (((long) (addr_1255X + 4))); *((long *) (((char *) (-3 + x_1256X)))) = a_1254X; *((long *) ((((char *) (-3 + x_1256X))) + 4)) = args_1252X; arg0K0 = x_1256X; arg0K1 = (-1 + count_1253X); goto L14264;}} pop_args_GlistS_return: switch (pop_args_GlistS_return_tag) { case 0: goto pop_args_GlistS_return_0; case 1: goto pop_args_GlistS_return_1; case 2: goto pop_args_GlistS_return_2; case 3: goto pop_args_GlistS_return_3; case 4: goto pop_args_GlistS_return_4; default: goto pop_args_GlistS_return_5; }} copy_listS: { list_352X = merged_arg0K0; length_353X = merged_arg0K1;{ if ((0 == length_353X)) { copy_listS0_return_value = 25; goto copy_listS_return;} else { space_1257X = 3 * length_353X; v_1258X = AVAILABLEp(space_1257X); if (v_1258X) { arg2K0 = 1; arg0K1 = list_352X; goto L14160;} else { temp0_1259X = collect_saving_temps(list_352X, 1, &temp1_1260X); v_1261X = AVAILABLEp(space_1257X); if (v_1261X) { arg2K0 = 1; arg0K1 = temp0_1259X; goto L14160;} else { arg2K0 = 0; arg0K1 = temp0_1259X; goto L14160;}}}} L14160: { okayP_1262X = arg2K0; temp_1263X = arg0K1; if (okayP_1262X) { arg0K0 = temp_1263X; goto L14118;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = temp_1263X; goto L14118;}} L14118: { list_1264X = arg0K0; a_1265X = *((long *) (((char *) (-3 + list_1264X)))); addr_1266X = ALLOCATE_SPACE(0, 12); *((long *) addr_1266X) = 2050; x_1267X = 3 + (((long) (addr_1266X + 4))); *((long *) (((char *) (-3 + x_1267X)))) = a_1265X; *((long *) ((((char *) (-3 + x_1267X))) + 4)) = 25; arg0K0 = (*((long *) ((((char *) (-3 + list_1264X))) + 4))); arg0K1 = x_1267X; goto L14133;} L14133: { l_1268X = arg0K0; last_1269X = arg0K1; if ((25 == l_1268X)) { copy_listS0_return_value = x_1267X; goto copy_listS_return;} else { a_1270X = *((long *) (((char *) (-3 + l_1268X)))); addr_1271X = ALLOCATE_SPACE(0, 12); *((long *) addr_1271X) = 2050; x_1272X = 3 + (((long) (addr_1271X + 4))); *((long *) (((char *) (-3 + x_1272X)))) = a_1270X; *((long *) ((((char *) (-3 + x_1272X))) + 4)) = 25; addr_1273X = (((char *) (-3 + last_1269X))) + 4; S48_WRITE_BARRIER(last_1269X, addr_1273X, x_1272X); *((long *) addr_1273X) = x_1272X; arg0K0 = (*((long *) ((((char *) (-3 + l_1268X))) + 4))); arg0K1 = x_1272X; goto L14133;}} copy_listS_return: switch (copy_listS_return_tag) { case 0: goto copy_listS_return_0; case 1: goto copy_listS_return_1; case 2: goto copy_listS_return_2; default: goto copy_listS_return_3; }} copy_continuation_from_heapB: { cont_351X = merged_arg0K0;{ top_1274X = (((char *) (-3 + (Sbottom_of_stackS)))) + (-8 - (-4 & (3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + cont_351X))) + -4))))>>8))))); new_cont_1275X = 3 + (((long) (top_1274X + 4))); SstackS = (top_1274X + -4); ScontS = new_cont_1275X; v_1276X = (((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + cont_351X))) + -4))))>>8))))>>2); memcpy((void *)top_1274X, (void *)((((char *) (-3 + cont_351X))) + -4),(4 + (((v_1276X)<<2)))); *((long *) (((char *) (-3 + (Sbottom_of_stackS))))) = (*((long *) (((char *) (-3 + new_cont_1275X))))); *((long *) (((char *) (-3 + new_cont_1275X)))) = (Sbottom_of_stackS); copy_continuation_from_heapB0_return_value = new_cont_1275X; goto copy_continuation_from_heapB_return;} copy_continuation_from_heapB_return: switch (copy_continuation_from_heapB_return_tag) { case 0: goto copy_continuation_from_heapB_return_0; default: goto copy_continuation_from_heapB_return_1; }} get_current_port: { marker_350X = merged_arg0K0;{ thread_1277X = Scurrent_threadS; if ((3 == (3 & thread_1277X))) { if ((9 == (31 & ((((*((long *) ((((char *) (-3 + thread_1277X))) + -4))))>>2))))) { if ((1 < ((((3 + ((long)(((unsigned long)(*((long *) ((((char *) (-3 + thread_1277X))) + -4))))>>8))))>>2)))) { arg0K0 = (*((long *) ((((char *) (-3 + thread_1277X))) + 4))); goto L10234;} else { goto L10284;}} else { goto L10284;}} else { goto L10284;}} L10234: { env_1278X = arg0K0; if ((3 == (3 & env_1278X))) { if ((0 == (31 & ((((*((long *) ((((char *) (-3 + env_1278X))) + -4))))>>2))))) { obj_1279X = *((long *) (((char *) (-3 + env_1278X)))); if ((3 == (3 & obj_1279X))) { if ((0 == (31 & ((((*((long *) ((((char *) (-3 + obj_1279X))) + -4))))>>2))))) { if ((marker_350X == (*((long *) (((char *) (-3 + (*((long *) (((char *) (-3 + env_1278X)))))))))))) { get_current_port0_return_value = (*((long *) ((((char *) (-3 + (*((long *) (((char *) (-3 + env_1278X)))))))) + 4))); goto get_current_port_return;} else { arg0K0 = (*((long *) ((((char *) (-3 + env_1278X))) + 4))); goto L10234;}} else { goto L10306;}} else { goto L10306;}} else { goto L10306;}} else { goto L10306;}} L10284: { ps_error("current thread is not a record", 0); get_current_port0_return_value = v_1280X; goto get_current_port_return;} L10306: { if ((25 == env_1278X)) { if (((((marker_350X)>>2)) == 1)) { arg3K0 = "dynamic environment doesn't have current-output-port"; goto L10260;} else { arg3K0 = "dynamic environment doesn't have current-input-port"; goto L10260;}} else { ps_error("dynamic environment is not a proper list", 0); get_current_port0_return_value = v_1281X; goto get_current_port_return;}} L10260: { v_1282X = arg3K0; ps_error(v_1282X, 0); get_current_port0_return_value = v_1283X; goto get_current_port_return;} get_current_port_return: switch (get_current_port_return_tag) { case 0: goto get_current_port_return_0; case 1: goto get_current_port_return_1; default: goto get_current_port_return_2; }} okay_argument_list: { list_349X = merged_arg0K0;{ arg0K0 = list_349X; arg0K1 = 0; arg0K2 = list_349X; arg2K3 = 0; goto L10101;} L10101: { fast_1284X = arg0K0; len_1285X = arg0K1; slow_1286X = arg0K2; move_slowP_1287X = arg2K3; if ((25 == fast_1284X)) { okay_argument_list0_return_value = 1; okay_argument_list1_return_value = len_1285X; goto okay_argument_list_return;} else { if ((3 == (3 & fast_1284X))) { if ((0 == (31 & ((((*((long *) ((((char *) (-3 + fast_1284X))) + -4))))>>2))))) { if (move_slowP_1287X) { if ((fast_1284X == slow_1286X)) { okay_argument_list0_return_value = 0; okay_argument_list1_return_value = 0; goto okay_argument_list_return;} else { arg0K0 = (*((long *) ((((char *) (-3 + fast_1284X))) + 4))); arg0K1 = (1 + len_1285X); arg0K2 = (*((long *) ((((char *) (-3 + slow_1286X))) + 4))); arg2K3 = 0; goto L10101;}} else { arg0K0 = (*((long *) ((((char *) (-3 + fast_1284X))) + 4))); arg0K1 = (1 + len_1285X); arg0K2 = slow_1286X; arg2K3 = 1; goto L10101;}} else { okay_argument_list0_return_value = 0; okay_argument_list1_return_value = 0; goto okay_argument_list_return;}} else { okay_argument_list0_return_value = 0; okay_argument_list1_return_value = 0; goto okay_argument_list_return;}}} okay_argument_list_return: switch (okay_argument_list_return_tag) { case 0: goto okay_argument_list_return_0; default: goto okay_argument_list_return_1; }} get_error_string: { status_348X = merged_arg0K0;{ string_1288X = ps_error_string(status_348X); x_1289X = strlen((char *) string_1288X); if ((x_1289X < 256)) { arg0K0 = x_1289X; goto L9609;} else { arg0K0 = 256; goto L9609;}} L9609: { len_1290X = arg0K0; len_1291X = 1 + len_1290X; addr_1292X = ALLOCATE_SPACE(17, (4 + len_1291X)); *((long *) addr_1292X) = (70 + (((len_1291X)<<8))); string_1293X = 3 + (((long) (addr_1292X + 4))); *((unsigned char *) ((((char *) (-3 + string_1293X))) + len_1290X)) = 0; arg0K0 = 0; goto L9619;} L9619: { i_1294X = arg0K0; if ((i_1294X == len_1290X)) { get_error_string0_return_value = string_1293X; goto get_error_string_return;} else { *((unsigned char *) ((((char *) (-3 + string_1293X))) + i_1294X)) = ((*(string_1288X + i_1294X))); arg0K0 = (1 + i_1294X); goto L9619;}} get_error_string_return: switch (get_error_string_return_tag) { case 0: goto get_error_string_return_0; case 1: goto get_error_string_return_1; case 2: goto get_error_string_return_2; case 3: goto get_error_string_return_3; case 4: goto get_error_string_return_4; default: goto get_error_string_return_5; }} pop_continuationB: { { cont_1295X = ScontS; tem_1296X = *((long *) ((((char *) (-3 + cont_1295X))) + 8)); pc_1297X = *((long *) ((((char *) (-3 + cont_1295X))) + 4)); StemplateS = tem_1296X; Scode_pointerS = ((((char *) (-3 + (*((long *) (((char *) (-3 + tem_1296X)))))))) + (((pc_1297X)>>2))); SenvS = (*((long *) ((((char *) (-3 + cont_1295X))) + 12))); ScontS = (*((long *) (((char *) (-3 + cont_1295X))))); SstackS = ((((char *) (-3 + cont_1295X))) + 12); goto pop_continuationB_return;} pop_continuationB_return: switch (pop_continuationB_return_tag) { case 0: goto pop_continuationB_return_0; case 1: goto pop_continuationB_return_1; default: goto pop_continuationB_return_2; }} } long s48_call_startup_procedure(char **startup_vector_1298X, long startup_vector_length_1299X) { char arg2K0; long arg0K1; long arg0K0; long v_1348X; long x_1347X; long x_1346X; char * addr_1345X; long b_1344X; long channel_1343X; long x_1342X; char * addr_1341X; long b_1340X; long channel_1339X; long x_1338X; char * addr_1337X; long b_1336X; long channel_1335X; long key_1334X; long key_1333X; char okayP_1332X; char v_1331X; long temp1_1330X; char v_1329X; long space_1328X; long i_1327X; long length_1326X; long *v_1325X; long v_1324X; long v_1323X; long y_1322X; long x_1321X; long v_1320X; long x_1319X; long y_1318X; char * addr_1317X; long value_1316X; long x_1315X; long y_1314X; long i_1313X; long vector_1312X; char * addr_1311X; long len_1310X; long key_1309X; long key_1308X; char okayP_1307X; char v_1306X; long temp1_1305X; char v_1304X; long space_1303X; long size_1302X; long i_1301X; long tem_1300X; { SstackS = ((((char *) (-3 + (Sbottom_of_stackS)))) + -8); *((long *) (((char *) (-3 + (Sbottom_of_stackS))))) = 1; ScontS = (Sbottom_of_stackS); SenvS = 13; tem_1300X = Sinterrupt_templateS; StemplateS = tem_1300X; Scode_pointerS = (((char *) (-3 + (*((long *) (((char *) (-3 + tem_1300X)))))))); SvalS = 13; Scurrent_threadS = 25; Ssession_dataS = 25; Sexception_handlersS = 25; Sinterrupt_handlersS = 25; Senabled_interruptsS = 0; Sfinalizer_alistS = 25; Sfinalize_theseS = 25; Spending_interruptsS = 0; s48_Spending_interruptPS = 0; Sinterrupted_templateS = 1; arg0K0 = 0; arg0K1 = 0; goto L15624;} L15624: { i_1301X = arg0K0; size_1302X = arg0K1; if ((i_1301X == startup_vector_length_1299X)) { space_1303X = 1 + (size_1302X + startup_vector_length_1299X); v_1304X = AVAILABLEp(space_1303X); if (v_1304X) { arg2K0 = 1; arg0K1 = 0; goto L15661;} else { collect_saving_temps(1, 1, &temp1_1305X); v_1306X = AVAILABLEp(space_1303X); if (v_1306X) { arg2K0 = 1; arg0K1 = 0; goto L15661;} else { arg2K0 = 0; arg0K1 = 0; goto L15661;}}} else { arg0K0 = (1 + i_1301X); arg0K1 = (1 + (size_1302X + ((((4 + (strlen((char *) (*(startup_vector_1298X + i_1301X))))))>>2)))); goto L15624;}} L15661: { okayP_1307X = arg2K0; key_1308X = arg0K1; if (okayP_1307X) { arg0K0 = key_1308X; goto L15639;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_1308X; goto L15639;}} L15639: { key_1309X = arg0K0; len_1310X = ((startup_vector_length_1299X)<<2); addr_1311X = ALLOCATE_SPACE(2, (4 + len_1310X)); *((long *) addr_1311X) = (10 + (((len_1310X)<<8))); vector_1312X = 3 + (((long) (addr_1311X + 4))); arg0K0 = 0; goto L15697;} L15697: { i_1313X = arg0K0; if ((i_1313X == startup_vector_length_1299X)) { *((long *) (SstackS)) = vector_1312X; SstackS = ((SstackS) + -4); y_1314X = fileno((stderr)); x_1315X = fileno((stdout)); if ((x_1315X < y_1314X)) { arg0K0 = y_1314X; goto L14533;} else { arg0K0 = x_1315X; goto L14533;}} else { value_1316X = enter_string((*(startup_vector_1298X + i_1313X)), key_1309X); addr_1317X = (((char *) (-3 + vector_1312X))) + (((i_1313X)<<2)); S48_WRITE_BARRIER(vector_1312X, addr_1317X, value_1316X); *((long *) addr_1317X) = value_1316X; arg0K0 = (1 + i_1313X); goto L15697;}} L14533: { y_1318X = arg0K0; x_1319X = fileno((stdin)); if ((x_1319X < y_1318X)) { arg0K0 = y_1318X; goto L14535;} else { arg0K0 = x_1319X; goto L14535;}} L14535: { v_1320X = arg0K0; x_1321X = Snumber_of_channelsS; y_1322X = 1 + v_1320X; if ((x_1321X < y_1322X)) { arg0K0 = y_1322X; goto L14537;} else { arg0K0 = x_1321X; goto L14537;}} L14537: { v_1323X = arg0K0; Snumber_of_channelsS = v_1323X; v_1324X = fileno((stdin)); Svm_channelsS = ((long*)malloc(sizeof(long) * (Snumber_of_channelsS))); Spending_channels_headS = 1; Spending_channels_tailS = 1; if ((NULL == (Svm_channelsS))) { ps_error("out of memory, unable to continue", 0); goto L14559;} else { goto L14559;}} L14559: { v_1325X = Svm_channelsS; length_1326X = Snumber_of_channelsS; arg0K0 = 0; goto L14607;} L14607: { i_1327X = arg0K0; if ((i_1327X < length_1326X)) { *(v_1325X + i_1327X) = 1; arg0K0 = (1 + i_1327X); goto L14607;} else { space_1328X = 3 * (7 + ((((4 + (strlen((char *) "standard output"))))>>2))); v_1329X = AVAILABLEp(space_1328X); if (v_1329X) { arg2K0 = 1; arg0K1 = 0; goto L14621;} else { collect_saving_temps(1, 1, &temp1_1330X); v_1331X = AVAILABLEp(space_1328X); if (v_1331X) { arg2K0 = 1; arg0K1 = 0; goto L14621;} else { arg2K0 = 0; arg0K1 = 0; goto L14621;}}}} L14621: { okayP_1332X = arg2K0; key_1333X = arg0K1; if (okayP_1332X) { arg0K0 = key_1333X; goto L14565;} else { ps_error("Scheme48 heap overflow", 0); arg0K0 = key_1333X; goto L14565;}} L14565: { key_1334X = arg0K0; channel_1335X = fileno((stdin)); b_1336X = enter_string("standard input", key_1334X); addr_1337X = ALLOCATE_SPACE(6, 24); *((long *) addr_1337X) = 5146; x_1338X = 3 + (((long) (addr_1337X + 4))); *((long *) (((char *) (-3 + x_1338X)))) = 4; *((long *) ((((char *) (-3 + x_1338X))) + 4)) = b_1336X; *((long *) ((((char *) (-3 + x_1338X))) + 8)) = (((channel_1335X)<<2)); *((long *) ((((char *) (-3 + x_1338X))) + 12)) = 1; *((long *) ((((char *) (-3 + x_1338X))) + 16)) = 1; *((Svm_channelsS) + channel_1335X) = x_1338X; channel_1339X = fileno((stderr)); b_1340X = enter_string("standard error", key_1334X); addr_1341X = ALLOCATE_SPACE(6, 24); *((long *) addr_1341X) = 5146; x_1342X = 3 + (((long) (addr_1341X + 4))); *((long *) (((char *) (-3 + x_1342X)))) = 8; *((long *) ((((char *) (-3 + x_1342X))) + 4)) = b_1340X; *((long *) ((((char *) (-3 + x_1342X))) + 8)) = (((channel_1339X)<<2)); *((long *) ((((char *) (-3 + x_1342X))) + 12)) = 1; *((long *) ((((char *) (-3 + x_1342X))) + 16)) = 1; *((Svm_channelsS) + channel_1339X) = x_1342X; channel_1343X = fileno((stdout)); b_1344X = enter_string("standard output", key_1334X); addr_1345X = ALLOCATE_SPACE(6, 24); *((long *) addr_1345X) = 5146; x_1346X = 3 + (((long) (addr_1345X + 4))); *((long *) (((char *) (-3 + x_1346X)))) = 8; *((long *) ((((char *) (-3 + x_1346X))) + 4)) = b_1344X; *((long *) ((((char *) (-3 + x_1346X))) + 8)) = (((channel_1343X)<<2)); *((long *) ((((char *) (-3 + x_1346X))) + 12)) = 1; *((long *) ((((char *) (-3 + x_1346X))) + 16)) = 1; *((Svm_channelsS) + channel_1343X) = x_1346X; *((long *) (SstackS)) = x_1338X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_1346X; SstackS = ((SstackS) + -4); *((long *) (SstackS)) = x_1342X; SstackS = ((SstackS) + -4); x_1347X = s48_resumer_records(); *((long *) (SstackS)) = x_1347X; SstackS = ((SstackS) + -4); s48_initialization_completeB(); v_1348X = s48_startup_procedure(); return s48_restart(v_1348X, 5);} }void s48_init(void) { Snumber_of_channelsS = 100; Spending_channels_headS = 1; Spending_channels_tailS = 1; Sstack_warningPS = 1; Slosing_opcodeS = 0; Sos_signal_typeS = 1; Sos_signal_argumentS = 1; Sexternal_exceptionPS = 0; Sexternal_root_stackS = NULL; Sexternal_root_stack_baseS = NULL; Spermanent_external_rootsS = NULL; Sgc_root_procS = HtopD8931; Spost_gc_cleanupS = HtopD8924; s48_Scallback_return_stack_blockS = 1; s48_Spending_eventsPS = 0; }