
/* This file was automatically generated by pclu.*/

#include "pclu_err.h"
#include "pclu_sys.h"

/**** BEGIN CLUSTER debug ****/

extern errcode debug_IB_1();
extern errcode streamOPprimary_output();
extern errcode pstreamOPprimary_output();
extern errcode recordOPset_5();
extern errcode debugopframe_count();
extern errcode _signalOPget();
extern errcode boolOPnot();
extern errcode intOPequal();
extern errcode streamOPputl();
extern errcode streamOPis_terminal();
extern errcode streamOPputs();
extern errcode pstreamOPset_max_width();
extern errcode pstreamOPset_max_depth();
extern errcode symOPget_address();
extern errcode _signalOPset();
extern errcode _signalOPset_message();
extern errcode dbg_envOPload();
extern errcode aliasOPinit();
extern errcode ctl_ptsOPbp_exists();
extern errcode recordOPset_1();
extern errcode stringOPequal();
extern errcode recordOPget_3();
extern errcode recordOPset_3();
extern errcode recordOPset_2();
extern errcode debugopframe_info();
extern errcode stringOPconcat();
extern errcode externalize();
extern errcode debugopcvt_sig();
extern errcode ctl_ptsOPsig_exists();
extern errcode recordOPget_8();
extern errcode sequenceOPelements();
extern errcode debugopcmp_sig();
extern errcode recordOPget_1();
extern errcode debugopget_sigvalcount();
extern errcode intOPfrom_to();
extern errcode debugopget_nth_sigval();
extern errcode debugopget_nth_sigvalops();
extern errcode print_result();
extern errcode intOPunparse();
extern errcode debugopget_fname();
extern errcode srcOPlist();
extern errcode recordOPget_4();
extern errcode recordOPset_4();
extern errcode intOPsub();
extern errcode intOPgt();
extern errcode streamOPprimary_input();
extern errcode streamOPset_prompt();
extern errcode lineedit();
extern errcode streamOPgetl();
extern errcode debugOPprocess_commands();
extern errcode debugOPerr_out();
extern errcode strip_blanks();
extern errcode stringOPindexc();
extern errcode stringOPsubstr();
extern errcode stringOPrest();
extern errcode intOPadd();
extern errcode debugOPprefix();
extern errcode debugOPbreak_cmd();
extern errcode debugOPtrace_cmd();
extern errcode debugOPuntrace_cmd();
extern errcode debugOPstep_cmd();
extern errcode debugOPunstep_cmd();
extern errcode debugOPprint_cmd();
extern errcode debugOPreset_cmd();
extern errcode debugOPwidth_cmd();
extern errcode debugOPdepth_cmd();
extern errcode debugOPhelp_cmd();
extern errcode debugOPwhere_cmd();
extern errcode debugOPcont_cmd();
extern errcode debugOPdelete_cmd();
extern errcode debugOPshow_cmd();
extern errcode debugOPalias_cmd();
extern errcode debugOPunalias_cmd();
extern errcode debugOPexecute_cmd();
extern errcode debugOPeval_cmd();
extern errcode debugOPup_cmd();
extern errcode debugOPfunc_cmd();
extern errcode debugOPlist_cmd();
extern errcode debugOPdown_cmd();
extern errcode debugOPnext_cmd();
extern errcode debugOPquit_cmd();
extern errcode debugOPrestart_cmd();
extern errcode debugOPrebuild_cmd();
extern errcode stringOPempty();
extern errcode stringOPsize();
extern errcode charOPequal();
extern errcode stringOPfetch();
extern errcode _bytevecOPnc_indexv();
extern errcode _cvt();
extern errcode intOPge();
extern errcode parse_line();
extern errcode arrayOPsize();
extern errcode _exit();
extern errcode file_nameOPcreate();
extern errcode _jobOPexec();
extern errcode _get_xjname();
extern errcode symOPclear_owns();
extern errcode intOPparse();
extern errcode arrayOPfetch();
extern errcode intOPlt();
extern errcode ctl_ptsOPbp_add();
extern errcode recordOPget_2();
extern errcode set_argv();
extern errcode sequenceOPa2s();
extern errcode ctl_ptsOPbp_remove();
extern errcode arrayOPelements();
extern errcode ctl_ptsOPsig_add();
extern errcode ctl_ptsOPsig_remove();
extern errcode slower();
extern errcode pstreamOPstart();
extern errcode dvarOPget_dexpr();
extern errcode debugOPeval_dexpr();
extern errcode debugopprint_val();
extern errcode pstreamOPtext();
extern errcode pstreamOPstop();
extern errcode pstreamOPpause();
extern errcode pstreamOPget_max_width();
extern errcode dbg_envOPdump();
extern errcode pstreamOPget_max_depth();
extern errcode aliasOPshow_alias();
extern errcode aliasOPadd_alias();
extern errcode aliasOPremove_alias();
extern errcode file_nameOPparse();
extern errcode streamOPopen();
extern errcode aliasOPexpand_alias();
extern errcode pc_slower();
extern errcode dparse();
extern errcode estackOPcreate();
extern errcode debugOPeval();
extern errcode estackOPelements();
extern errcode intOPprint();
extern errcode boolOPprint();
extern errcode nullOPprint();
extern errcode charOPprint();
extern errcode stringOPprint();
extern errcode realOPprint();
extern errcode logit();
extern errcode debugOPeval_assn();
extern errcode sequenceOPsize();
extern errcode sequenceOPfetch();
extern errcode oneofOPmake_8();
extern errcode debugOPfixup_rep();
extern errcode debugOPis_regular_apply();
extern errcode debugOPfind_rtn_info();
extern errcode inst_from_info();
extern errcode recordOPget_6();
extern errcode recordOPget_7();
extern errcode recordOPget_5();
extern errcode oneofOPvalue_6();
extern errcode oneofOPvalue_9();
extern errcode debugopnm2val_ops();
extern errcode rep_find_valops();
extern errcode oneofOPvalue_5();
extern errcode debugOPteval();
extern errcode add_selector_info2();
extern errcode find_selector_ops2();
extern errcode find_valops();
extern errcode sequenceOPnew();
extern errcode _vecOPcreate();
extern errcode estackOPsize();
extern errcode _vecOPstore();
extern errcode debugOPdexpr2obj();
extern errcode estackOPfetch();
extern errcode estackOPtrim();
extern errcode iter_yieldOPsetup();
extern errcode call_clu();
extern errcode _objOPequal();
extern errcode _vecOPfetch();
extern errcode _pclu_erstr2();
extern errcode estackOPpush();
extern errcode oneofOPmake_9();
extern errcode debugopget_nth_op();
extern errcode inst_from_name();
extern errcode arrayOPpredict();
extern errcode arrayOPaddh();
extern errcode clu_add_parm_info_type();
extern errcode clu_find_type_instance();
extern errcode sequenceOPaddh();
extern errcode sequenceOPindexes();
extern errcode _tagcellOPcreate();
extern errcode symOPget_name();
extern errcode find_tgen();
extern errcode find_tgen_parm();
extern errcode oneofOPmake_7();
extern errcode string_lindexs();
extern errcode arrayOPnew();
extern errcode debugopget_nth_formal();
extern errcode dvarOPget_value();
extern errcode debugopget_val();
extern errcode debugopset_val();
extern errcode oneofOPis_6();
extern errcode dvarOPset_value();
extern errcode estackOPstore();
extern errcode stringOPindexs();
extern errcode debugOPdigits();
extern errcode intOPfrom_to_by();
extern errcode debugopget_name();
extern errcode streamOPputspace();
extern errcode intOPminus();
extern errcode intOPpower();
extern errcode internalize();
extern errcode srcOPfind_module();
extern errcode ctl_ptsOPclear();
extern errcode ctl_ptsOPprint();
extern errcode streamOPerror_output();
extern struct REQS *_tagcell_of_t_reqs;
extern struct OPS *_obj_ops;
extern OWN_req _tagcell_ownreqs;
extern struct OPS *_tagcell_ops;
struct OPS *_tagcell_of__obj_table;
struct OPS *_tagcell_of__obj_ops;
struct OPS *_tagcell_of__obj_ops;
OWNPTR _tagcell_of__obj_owns;
CLUREF STR_quit_072_040_040_040_040;
CLUREF STR_leave_040pclu_040debugger;
CLUREF STR_restart_072_040;
CLUREF STR_restart_040current_040program;
CLUREF STR_rebuild_072_040;
CLUREF STR_run_040make_040and_040then_040execute_040current_040program;
CLUREF STR_help_072_040_040_040_040;
CLUREF STR_some_040clues_040to_040operating_040pclu_040debugger;
CLUREF STR_break_072_040_040_040;
CLUREF STR_set_040a_040breakpoint_040at_040a_040function_040or_040line;
CLUREF STR_trace_072_040_040_040;
CLUREF STR_trace_040the_040specified_040signal;
CLUREF STR_untrace_072_040;
CLUREF STR_stop_040tracing_040the_040specified_040signal;
CLUREF STR_step_072_040_040_040_040;
CLUREF STR_single_040step_040a_040function_040or_040line;
CLUREF STR_unstep_072_040_040;
CLUREF STR_stop_040single_040step_040a_040function_040or_040line;
CLUREF STR_print_072_040_040_040;
CLUREF STR_print_040value_040of_040a_040variable;
CLUREF STR_width_072_040_040_040;
CLUREF STR_show_057change_040width_040of_040p_050rinting_051stream;
CLUREF STR_depth_072_040_040_040;
CLUREF STR_show_057change_040depth_040of_040p_050rinting_051stream;
CLUREF STR_where_072_040_040_040;
CLUREF STR_show_040stack_040of_040active_040procedures;
CLUREF STR_continue_072;
CLUREF STR_continue_040running_040program_040_050stops_040single_040stepping_051;
CLUREF STR_run_072_040_040_040_040_040;
CLUREF STR_delete_072_040_040;
CLUREF STR_remove_040a_040breakpoint;
CLUREF STR_show_072_040_040_040_040;
CLUREF STR_show_040existing_040breakpoints;
CLUREF STR_execute_072_040;
CLUREF STR_read_040and_040execute_040commands_040from_040a_040file;
CLUREF STR_eval_072_040_040_040_040;
CLUREF STR_evaluate_040an_040expression;
CLUREF STR_alias_072_040_040_040;
CLUREF STR_associate_040a_040name_040with_040a_040string;
CLUREF STR_unalias_072_040;
CLUREF STR_remove_040an_040alis;
CLUREF STR_up_072_040_040_040_040_040_040;
CLUREF STR_move_040up_040the_040stack_040of_040active_040procedures;
CLUREF STR_func_072_040_040_040_040;
CLUREF STR_select_040procedure_040for_040listing;
CLUREF STR_list_072_040_040_040_040;
CLUREF STR_list_040source_040code_040for_040current_040procedure;
CLUREF STR_down_072_040_040_040_040;
CLUREF STR_move_040down_040the_040stack_040of_040active_040procedures;
CLUREF STR_next_072_040_040_040_040;
CLUREF STR_step_040to_040next_040line_040in_040procedure;
CLUREF STR_start_137up;
CLUREF STR__012Interrupt_056_056_056;
CLUREF STR__012_012_052_052_052_052_052_040PCLU_040DEBUGGER_0400_0562;
CLUREF STR__040_052_052_052_052_052_012_012;
CLUREF STR_oops_072_040bus_040error;
CLUREF STR_oops_072_040segmentation_040violation;
CLUREF STR_a;
CLUREF STR__012Entering_072_040;
CLUREF STR__012;
CLUREF STR_FAULT_072_040Argument_040;
CLUREF STR__040uninitialized_012;
CLUREF STR__012Yielding_072_040;
CLUREF STR_;
CLUREF STR__012Leaving_072_040;
CLUREF STR_failure;
CLUREF STR__012Signalling_072_040failure_040_050;
CLUREF STR__051_040_072_040;
CLUREF STR__012Signalling_072_040;
CLUREF STR__072_040;
CLUREF STR_sl;
CLUREF STR__072_040line_040;
CLUREF STR_command_072_040;
CLUREF STR_break;
CLUREF STR_trace;
CLUREF STR_untrace;
CLUREF STR_step;
CLUREF STR_unstep;
CLUREF STR_print;
CLUREF STR_reset;
CLUREF STR_width;
CLUREF STR_depth;
CLUREF STR_help;
CLUREF STR__077;
CLUREF STR_where;
CLUREF STR_frames;
CLUREF STR_continue;
CLUREF STR_run;
CLUREF STR_delete;
CLUREF STR_show;
CLUREF STR_alias;
CLUREF STR_unalias;
CLUREF STR_execute;
CLUREF STR_eval;
CLUREF STR_up;
CLUREF STR_func;
CLUREF STR_list;
CLUREF STR_down;
CLUREF STR_next;
CLUREF STR_quit;
CLUREF STR_restart;
CLUREF STR_rebuild;
CLUREF STR_unknown_040command_072_040;
CLUREF STR__012Too_040many_040arguments_040to_040quit_040command_012;
CLUREF STR__012Too_040many_040arguments_040to_040restart_040command_012;
CLUREF STR__057bin_057;
CLUREF STR_csh;
CLUREF STR__055f_040_055e_040_055c_040;
CLUREF STR__055f_040_055e_040_055c_040make_073;
CLUREF STR__012Too_040many_040arguments_040to_040reset_040command_012;
CLUREF STR__012Too_040many_040arguments_040to_040next_040command_012;
CLUREF STR__012Bad_040argument_040to_040next_040command_012;
CLUREF STR_t;
CLUREF STR_missing_040argument;
CLUREF STR_0123456789;
CLUREF STR_l;
CLUREF STR_f;
CLUREF STR__040not_040found;
CLUREF STR__040not_040a_040traced_040signal_012;
CLUREF STR_s;
CLUREF STR__077_077_077_040unknown_040variable;
CLUREF STR__077_077_077_040no_040print_040function;
CLUREF STR_width_072_040;
CLUREF STR__012Too_040many_040arguments_040to_040width_040command_012;
CLUREF STR_depth_072_040;
CLUREF STR__012Too_040many_040arguments_040to_040depth_040command_012;
CLUREF STR_all;
CLUREF STR__012Too_040few_040arguments_040to_040unalias_040command_012;
CLUREF STR__012Too_040few_040arguments_040to_040execute_040command_012;
CLUREF STR__012Too_040many_040arguments_040to_040execute_040command_012;
CLUREF STR_can_047t_040parse_040file_040name_040;
CLUREF STR_read;
CLUREF STR_can_047t_040open_040file_040name_040;
CLUREF STR_run_057continue_040not_040supported_040in_040command_040file;
CLUREF STR_error_040in_040parsing;
CLUREF STR_possible_040alias_040loop;
CLUREF STR_evaluation_040aborted;
CLUREF STR_Signal_072_040;
CLUREF STR_acons_072_040eval_137dexpr;
CLUREF STR_scons_072_040eval_137dexpr;
CLUREF STR_others_072_040eval_137dexpr;
CLUREF STR_too_040few_040arguments;
CLUREF STR_too_040many_040arguments;
CLUREF STR_rep;
CLUREF STR_operation_040_076_076_040;
CLUREF STR__040_074_074_040does_040not_040exist;
CLUREF STR_OP;
CLUREF STR_array;
CLUREF STR_array_137of_137t_137reqs_137actual;
CLUREF STR_array_137ops_137actual;
CLUREF STR_array_137ownreqs;
CLUREF STR_sequence;
CLUREF STR_sequence_137of_137t_137reqs_137actual;
CLUREF STR_sequence_137ops_137actual;
CLUREF STR_sequence_137ownreqs;
CLUREF STR__040unexpected_040type_040;
CLUREF STR__040in_040acons_057eval;
CLUREF STR_no_040expr_0401;
CLUREF STR_no_040expr_0402;
CLUREF STR_no_040variable_040named_040_076_076_040;
CLUREF STR__040_074_074_040found;
CLUREF STR__137ops_137actual;
CLUREF STR_tformals_137;
CLUREF STR__137of_137;
CLUREF STR__137reqs_137actual;
CLUREF STR__040losing_040in_040teval_040;
CLUREF STR_record;
CLUREF STR_struct;
CLUREF STR_oneof;
CLUREF STR_variant;
CLUREF STR_dexpr2obj_040losing;
CLUREF STR_acons_072_040eval_137assn;
CLUREF STR_scons_072_040eval_137assn;
CLUREF STR_others_072_040eval_137assn_0402;
CLUREF STR__072_040_077_077_077_040Unknown_040variable;
CLUREF STR__072_040_077_077_077_040no_040print_040function;
CLUREF STR_others_072_040eval_137assn_0403;
CLUREF STR_dbg_137info_137;
CLUREF STR__137data;
CLUREF STR_proc_057iter_040_076_076_040;
CLUREF STR__040_074_074_040does_040not_040exist_040;
CLUREF STR_Category_072_011Commands;
CLUREF STR_Breakpoints_072_011break_054_040step_054_040unstep_054_040show_054_040delete;
CLUREF STR_Signal_040Tracing_072_011trace_054_040untrace_054_040show_054_040delete;
CLUREF STR_Running_072_011continue_054_040run_054_040next_054_040restart_054_040rebuild;
CLUREF STR_Display_072_011print_054_040width_054_040depth_054_040help_054_040where_054_040up_054_040down_054_040list_054_040func;
CLUREF STR_Invocation_072_011eval_054_040alias_054_040unalias_054_040execute_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040;
CLUREF STR_Other_072_011_011quit;
CLUREF STR__040;
CLUREF STR_sorry_054_040no_040information_040about_040;
CLUREF STR__012Too_040many_040arguments_040to_040where_040command_012;
CLUREF STR__012Bad_040argument_040to_040where_040command_012;
CLUREF STR__040_040;
CLUREF STR__072_040OWN_040INIT_040PROC;
CLUREF STR__052_076;
CLUREF STR__012Too_040few_040arguments_040to_040func_040command_012;
CLUREF STR__012Too_040many_040arguments_040to_040func_040command_012;
CLUREF STR__012Too_040many_040arguments_040to_040up_040command_012;
CLUREF STR_can_047t_040parse_040argument;
CLUREF STR_not_040that_040many_040frames;
CLUREF STR_skipping_040over_040an_040own_040init_040procedure;
CLUREF STR__012Too_040many_040arguments_040to_040down_040command_012;
CLUREF STR_parse_040argument;
CLUREF STR__040not_040found_040;
CLUREF STR__012Too_040many_040arguments_040to_040the_040show_040command_012;
CLUREF STR__012ERROR_072_040;
CLUREF STR__012_012;
static int debug_own_init = 0;
OWN_req debug_ownreqs = {0,0};
CLUREF debugOPcmd_desc;
CLUREF debugOPcurrent_state;
CLUREF debugOPdisplay;
CLUREF debugOPtyo;
CLUREF debugOPpst_tyo;
errcode debug_own_init_proc()
{
    errcode err;
    enter_own_init_proc();
        if (debug_own_init == 0) {
        add_parm_info_type(0, _obj_ops, _tagcell_of_t_reqs);
        find_type_instance(_tagcell_ops, 1, &_tagcell_ownreqs, &(_tagcell_of__obj_ops));
        stringOPcons("quit:    ", CLU_1, CLU_9, &STR_quit_072_040_040_040_040);
        stringOPcons("leave pclu debugger", CLU_1, CLU_19, &STR_leave_040pclu_040debugger);
        stringOPcons("restart: ", CLU_1, CLU_9, &STR_restart_072_040);
        stringOPcons("restart current program", CLU_1, CLU_23, &STR_restart_040current_040program);
        stringOPcons("rebuild: ", CLU_1, CLU_9, &STR_rebuild_072_040);
        stringOPcons("run make and then execute current program", CLU_1, CLU_41, &STR_run_040make_040and_040then_040execute_040current_040program);
        stringOPcons("help:    ", CLU_1, CLU_9, &STR_help_072_040_040_040_040);
        stringOPcons("some clues to operating pclu debugger", CLU_1, CLU_37, &STR_some_040clues_040to_040operating_040pclu_040debugger);
        stringOPcons("break:   ", CLU_1, CLU_9, &STR_break_072_040_040_040);
        stringOPcons("set a breakpoint at a function or line", CLU_1, CLU_38, &STR_set_040a_040breakpoint_040at_040a_040function_040or_040line);
        stringOPcons("trace:   ", CLU_1, CLU_9, &STR_trace_072_040_040_040);
        stringOPcons("trace the specified signal", CLU_1, CLU_26, &STR_trace_040the_040specified_040signal);
        stringOPcons("untrace: ", CLU_1, CLU_9, &STR_untrace_072_040);
        stringOPcons("stop tracing the specified signal", CLU_1, CLU_33, &STR_stop_040tracing_040the_040specified_040signal);
        stringOPcons("step:    ", CLU_1, CLU_9, &STR_step_072_040_040_040_040);
        stringOPcons("single step a function or line", CLU_1, CLU_30, &STR_single_040step_040a_040function_040or_040line);
        stringOPcons("unstep:  ", CLU_1, CLU_9, &STR_unstep_072_040_040);
        stringOPcons("stop single step a function or line", CLU_1, CLU_35, &STR_stop_040single_040step_040a_040function_040or_040line);
        stringOPcons("print:   ", CLU_1, CLU_9, &STR_print_072_040_040_040);
        stringOPcons("print value of a variable", CLU_1, CLU_25, &STR_print_040value_040of_040a_040variable);
        stringOPcons("width:   ", CLU_1, CLU_9, &STR_width_072_040_040_040);
        stringOPcons("show/change width of p(rinting)stream", CLU_1, CLU_37, &STR_show_057change_040width_040of_040p_050rinting_051stream);
        stringOPcons("depth:   ", CLU_1, CLU_9, &STR_depth_072_040_040_040);
        stringOPcons("show/change depth of p(rinting)stream", CLU_1, CLU_37, &STR_show_057change_040depth_040of_040p_050rinting_051stream);
        stringOPcons("where:   ", CLU_1, CLU_9, &STR_where_072_040_040_040);
        stringOPcons("show stack of active procedures", CLU_1, CLU_31, &STR_show_040stack_040of_040active_040procedures);
        stringOPcons("continue:", CLU_1, CLU_9, &STR_continue_072);
        stringOPcons("continue running program (stops single stepping)", CLU_1, CLU_48, &STR_continue_040running_040program_040_050stops_040single_040stepping_051);
        stringOPcons("run:     ", CLU_1, CLU_9, &STR_run_072_040_040_040_040_040);
        stringOPcons("delete:  ", CLU_1, CLU_9, &STR_delete_072_040_040);
        stringOPcons("remove a breakpoint", CLU_1, CLU_19, &STR_remove_040a_040breakpoint);
        stringOPcons("show:    ", CLU_1, CLU_9, &STR_show_072_040_040_040_040);
        stringOPcons("show existing breakpoints", CLU_1, CLU_25, &STR_show_040existing_040breakpoints);
        stringOPcons("execute: ", CLU_1, CLU_9, &STR_execute_072_040);
        stringOPcons("read and execute commands from a file", CLU_1, CLU_37, &STR_read_040and_040execute_040commands_040from_040a_040file);
        stringOPcons("eval:    ", CLU_1, CLU_9, &STR_eval_072_040_040_040_040);
        stringOPcons("evaluate an expression", CLU_1, CLU_22, &STR_evaluate_040an_040expression);
        stringOPcons("alias:   ", CLU_1, CLU_9, &STR_alias_072_040_040_040);
        stringOPcons("associate a name with a string", CLU_1, CLU_30, &STR_associate_040a_040name_040with_040a_040string);
        stringOPcons("unalias: ", CLU_1, CLU_9, &STR_unalias_072_040);
        stringOPcons("remove an alis", CLU_1, CLU_14, &STR_remove_040an_040alis);
        stringOPcons("up:      ", CLU_1, CLU_9, &STR_up_072_040_040_040_040_040_040);
        stringOPcons("move up the stack of active procedures", CLU_1, CLU_38, &STR_move_040up_040the_040stack_040of_040active_040procedures);
        stringOPcons("func:    ", CLU_1, CLU_9, &STR_func_072_040_040_040_040);
        stringOPcons("select procedure for listing", CLU_1, CLU_28, &STR_select_040procedure_040for_040listing);
        stringOPcons("list:    ", CLU_1, CLU_9, &STR_list_072_040_040_040_040);
        stringOPcons("list source code for current procedure", CLU_1, CLU_38, &STR_list_040source_040code_040for_040current_040procedure);
        stringOPcons("down:    ", CLU_1, CLU_9, &STR_down_072_040_040_040_040);
        stringOPcons("move down the stack of active procedures", CLU_1, CLU_40, &STR_move_040down_040the_040stack_040of_040active_040procedures);
        stringOPcons("next:    ", CLU_1, CLU_9, &STR_next_072_040_040_040_040);
        stringOPcons("step to next line in procedure", CLU_1, CLU_30, &STR_step_040to_040next_040line_040in_040procedure);
        stringOPcons("start_up", CLU_1, CLU_8, &STR_start_137up);
        stringOPcons("\nInterrupt...", CLU_1, CLU_13, &STR__012Interrupt_056_056_056);
        stringOPcons("\n\n***** PCLU DEBUGGER 0.2", CLU_1, CLU_25, &STR__012_012_052_052_052_052_052_040PCLU_040DEBUGGER_0400_0562);
        stringOPcons(" *****\n\n", CLU_1, CLU_8, &STR__040_052_052_052_052_052_012_012);
        stringOPcons("oops: bus error", CLU_1, CLU_15, &STR_oops_072_040bus_040error);
        stringOPcons("oops: segmentation violation", CLU_1, CLU_28, &STR_oops_072_040segmentation_040violation);
        stringOPcons("a", CLU_1, CLU_1, &STR_a);
        stringOPcons("\nEntering: ", CLU_1, CLU_11, &STR__012Entering_072_040);
        stringOPcons("\n", CLU_1, CLU_1, &STR__012);
        stringOPcons("FAULT: Argument ", CLU_1, CLU_16, &STR_FAULT_072_040Argument_040);
        stringOPcons(" uninitialized\n", CLU_1, CLU_15, &STR__040uninitialized_012);
        stringOPcons("\nYielding: ", CLU_1, CLU_11, &STR__012Yielding_072_040);
        stringOPcons("", CLU_1, CLU_0, &STR_);
        stringOPcons("\nLeaving: ", CLU_1, CLU_10, &STR__012Leaving_072_040);
        stringOPcons("failure", CLU_1, CLU_7, &STR_failure);
        stringOPcons("\nSignalling: failure (", CLU_1, CLU_22, &STR__012Signalling_072_040failure_040_050);
        stringOPcons(") : ", CLU_1, CLU_4, &STR__051_040_072_040);
        stringOPcons("\nSignalling: ", CLU_1, CLU_13, &STR__012Signalling_072_040);
        stringOPcons(": ", CLU_1, CLU_2, &STR__072_040);
        stringOPcons("sl", CLU_1, CLU_2, &STR_sl);
        stringOPcons(": line ", CLU_1, CLU_7, &STR__072_040line_040);
        stringOPcons("command: ", CLU_1, CLU_9, &STR_command_072_040);
        stringOPcons("break", CLU_1, CLU_5, &STR_break);
        stringOPcons("trace", CLU_1, CLU_5, &STR_trace);
        stringOPcons("untrace", CLU_1, CLU_7, &STR_untrace);
        stringOPcons("step", CLU_1, CLU_4, &STR_step);
        stringOPcons("unstep", CLU_1, CLU_6, &STR_unstep);
        stringOPcons("print", CLU_1, CLU_5, &STR_print);
        stringOPcons("reset", CLU_1, CLU_5, &STR_reset);
        stringOPcons("width", CLU_1, CLU_5, &STR_width);
        stringOPcons("depth", CLU_1, CLU_5, &STR_depth);
        stringOPcons("help", CLU_1, CLU_4, &STR_help);
        stringOPcons("?", CLU_1, CLU_1, &STR__077);
        stringOPcons("where", CLU_1, CLU_5, &STR_where);
        stringOPcons("frames", CLU_1, CLU_6, &STR_frames);
        stringOPcons("continue", CLU_1, CLU_8, &STR_continue);
        stringOPcons("run", CLU_1, CLU_3, &STR_run);
        stringOPcons("delete", CLU_1, CLU_6, &STR_delete);
        stringOPcons("show", CLU_1, CLU_4, &STR_show);
        stringOPcons("alias", CLU_1, CLU_5, &STR_alias);
        stringOPcons("unalias", CLU_1, CLU_7, &STR_unalias);
        stringOPcons("execute", CLU_1, CLU_7, &STR_execute);
        stringOPcons("eval", CLU_1, CLU_4, &STR_eval);
        stringOPcons("up", CLU_1, CLU_2, &STR_up);
        stringOPcons("func", CLU_1, CLU_4, &STR_func);
        stringOPcons("list", CLU_1, CLU_4, &STR_list);
        stringOPcons("down", CLU_1, CLU_4, &STR_down);
        stringOPcons("next", CLU_1, CLU_4, &STR_next);
        stringOPcons("quit", CLU_1, CLU_4, &STR_quit);
        stringOPcons("restart", CLU_1, CLU_7, &STR_restart);
        stringOPcons("rebuild", CLU_1, CLU_7, &STR_rebuild);
        stringOPcons("unknown command: ", CLU_1, CLU_17, &STR_unknown_040command_072_040);
        stringOPcons("\nToo many arguments to quit command\n", CLU_1, CLU_36, &STR__012Too_040many_040arguments_040to_040quit_040command_012);
        stringOPcons("\nToo many arguments to restart command\n", CLU_1, CLU_39, &STR__012Too_040many_040arguments_040to_040restart_040command_012);
        stringOPcons("/bin/", CLU_1, CLU_5, &STR__057bin_057);
        stringOPcons("csh", CLU_1, CLU_3, &STR_csh);
        stringOPcons("-f -e -c ", CLU_1, CLU_9, &STR__055f_040_055e_040_055c_040);
        stringOPcons("-f -e -c make;", CLU_1, CLU_14, &STR__055f_040_055e_040_055c_040make_073);
        stringOPcons("\nToo many arguments to reset command\n", CLU_1, CLU_37, &STR__012Too_040many_040arguments_040to_040reset_040command_012);
        stringOPcons("\nToo many arguments to next command\n", CLU_1, CLU_36, &STR__012Too_040many_040arguments_040to_040next_040command_012);
        stringOPcons("\nBad argument to next command\n", CLU_1, CLU_30, &STR__012Bad_040argument_040to_040next_040command_012);
        stringOPcons("t", CLU_1, CLU_1, &STR_t);
        stringOPcons("missing argument", CLU_1, CLU_16, &STR_missing_040argument);
        stringOPcons("0123456789", CLU_1, CLU_10, &STR_0123456789);
        stringOPcons("l", CLU_1, CLU_1, &STR_l);
        stringOPcons("f", CLU_1, CLU_1, &STR_f);
        stringOPcons(" not found", CLU_1, CLU_10, &STR__040not_040found);
        stringOPcons(" not a traced signal\n", CLU_1, CLU_21, &STR__040not_040a_040traced_040signal_012);
        stringOPcons("s", CLU_1, CLU_1, &STR_s);
        stringOPcons("??? unknown variable", CLU_1, CLU_20, &STR__077_077_077_040unknown_040variable);
        stringOPcons("??? no print function", CLU_1, CLU_21, &STR__077_077_077_040no_040print_040function);
        stringOPcons("width: ", CLU_1, CLU_7, &STR_width_072_040);
        stringOPcons("\nToo many arguments to width command\n", CLU_1, CLU_37, &STR__012Too_040many_040arguments_040to_040width_040command_012);
        stringOPcons("depth: ", CLU_1, CLU_7, &STR_depth_072_040);
        stringOPcons("\nToo many arguments to depth command\n", CLU_1, CLU_37, &STR__012Too_040many_040arguments_040to_040depth_040command_012);
        stringOPcons("all", CLU_1, CLU_3, &STR_all);
        stringOPcons("\nToo few arguments to unalias command\n", CLU_1, CLU_38, &STR__012Too_040few_040arguments_040to_040unalias_040command_012);
        stringOPcons("\nToo few arguments to execute command\n", CLU_1, CLU_38, &STR__012Too_040few_040arguments_040to_040execute_040command_012);
        stringOPcons("\nToo many arguments to execute command\n", CLU_1, CLU_39, &STR__012Too_040many_040arguments_040to_040execute_040command_012);
        stringOPcons("can\'t parse file name ", CLU_1, CLU_22, &STR_can_047t_040parse_040file_040name_040);
        stringOPcons("read", CLU_1, CLU_4, &STR_read);
        stringOPcons("can\'t open file name ", CLU_1, CLU_21, &STR_can_047t_040open_040file_040name_040);
        stringOPcons("run/continue not supported in command file", CLU_1, CLU_42, &STR_run_057continue_040not_040supported_040in_040command_040file);
        stringOPcons("error in parsing", CLU_1, CLU_16, &STR_error_040in_040parsing);
        stringOPcons("possible alias loop", CLU_1, CLU_19, &STR_possible_040alias_040loop);
        stringOPcons("evaluation aborted", CLU_1, CLU_18, &STR_evaluation_040aborted);
        stringOPcons("Signal: ", CLU_1, CLU_8, &STR_Signal_072_040);
        stringOPcons("acons: eval_dexpr", CLU_1, CLU_17, &STR_acons_072_040eval_137dexpr);
        stringOPcons("scons: eval_dexpr", CLU_1, CLU_17, &STR_scons_072_040eval_137dexpr);
        stringOPcons("others: eval_dexpr", CLU_1, CLU_18, &STR_others_072_040eval_137dexpr);
        stringOPcons("too few arguments", CLU_1, CLU_17, &STR_too_040few_040arguments);
        stringOPcons("too many arguments", CLU_1, CLU_18, &STR_too_040many_040arguments);
        stringOPcons("rep", CLU_1, CLU_3, &STR_rep);
        stringOPcons("operation >> ", CLU_1, CLU_13, &STR_operation_040_076_076_040);
        stringOPcons(" << does not exist", CLU_1, CLU_18, &STR__040_074_074_040does_040not_040exist);
        stringOPcons("OP", CLU_1, CLU_2, &STR_OP);
        stringOPcons("array", CLU_1, CLU_5, &STR_array);
        stringOPcons("array_of_t_reqs_actual", CLU_1, CLU_22, &STR_array_137of_137t_137reqs_137actual);
        stringOPcons("array_ops_actual", CLU_1, CLU_16, &STR_array_137ops_137actual);
        stringOPcons("array_ownreqs", CLU_1, CLU_13, &STR_array_137ownreqs);
        stringOPcons("sequence", CLU_1, CLU_8, &STR_sequence);
        stringOPcons("sequence_of_t_reqs_actual", CLU_1, CLU_25, &STR_sequence_137of_137t_137reqs_137actual);
        stringOPcons("sequence_ops_actual", CLU_1, CLU_19, &STR_sequence_137ops_137actual);
        stringOPcons("sequence_ownreqs", CLU_1, CLU_16, &STR_sequence_137ownreqs);
        stringOPcons(" unexpected type ", CLU_1, CLU_17, &STR__040unexpected_040type_040);
        stringOPcons(" in acons/eval", CLU_1, CLU_14, &STR__040in_040acons_057eval);
        stringOPcons("no expr 1", CLU_1, CLU_9, &STR_no_040expr_0401);
        stringOPcons("no expr 2", CLU_1, CLU_9, &STR_no_040expr_0402);
        stringOPcons("no variable named >> ", CLU_1, CLU_21, &STR_no_040variable_040named_040_076_076_040);
        stringOPcons(" << found", CLU_1, CLU_9, &STR__040_074_074_040found);
        stringOPcons("_ops_actual", CLU_1, CLU_11, &STR__137ops_137actual);
        stringOPcons("tformals_", CLU_1, CLU_9, &STR_tformals_137);
        stringOPcons("_of_", CLU_1, CLU_4, &STR__137of_137);
        stringOPcons("_reqs_actual", CLU_1, CLU_12, &STR__137reqs_137actual);
        stringOPcons(" losing in teval ", CLU_1, CLU_17, &STR__040losing_040in_040teval_040);
        stringOPcons("record", CLU_1, CLU_6, &STR_record);
        stringOPcons("struct", CLU_1, CLU_6, &STR_struct);
        stringOPcons("oneof", CLU_1, CLU_5, &STR_oneof);
        stringOPcons("variant", CLU_1, CLU_7, &STR_variant);
        stringOPcons("dexpr2obj losing", CLU_1, CLU_16, &STR_dexpr2obj_040losing);
        stringOPcons("acons: eval_assn", CLU_1, CLU_16, &STR_acons_072_040eval_137assn);
        stringOPcons("scons: eval_assn", CLU_1, CLU_16, &STR_scons_072_040eval_137assn);
        stringOPcons("others: eval_assn 2", CLU_1, CLU_19, &STR_others_072_040eval_137assn_0402);
        stringOPcons(": ??? Unknown variable", CLU_1, CLU_22, &STR__072_040_077_077_077_040Unknown_040variable);
        stringOPcons(": ??? no print function", CLU_1, CLU_23, &STR__072_040_077_077_077_040no_040print_040function);
        stringOPcons("others: eval_assn 3", CLU_1, CLU_19, &STR_others_072_040eval_137assn_0403);
        stringOPcons("dbg_info_", CLU_1, CLU_9, &STR_dbg_137info_137);
        stringOPcons("_data", CLU_1, CLU_5, &STR__137data);
        stringOPcons("proc/iter >> ", CLU_1, CLU_13, &STR_proc_057iter_040_076_076_040);
        stringOPcons(" << does not exist ", CLU_1, CLU_19, &STR__040_074_074_040does_040not_040exist_040);
        stringOPcons("Category:\tCommands", CLU_1, CLU_18, &STR_Category_072_011Commands);
        stringOPcons("Breakpoints:\tbreak, step, unstep, show, delete", CLU_1, CLU_46, &STR_Breakpoints_072_011break_054_040step_054_040unstep_054_040show_054_040delete);
        stringOPcons("Signal Tracing:\ttrace, untrace, show, delete", CLU_1, CLU_44, &STR_Signal_040Tracing_072_011trace_054_040untrace_054_040show_054_040delete);
        stringOPcons("Running:\tcontinue, run, next, restart, rebuild", CLU_1, CLU_46, &STR_Running_072_011continue_054_040run_054_040next_054_040restart_054_040rebuild);
        CLU_string_size.num = 63;
        stringOPcons("Display:\tprint, width, depth, help, where, up, down, list, func", CLU_1, CLU_string_size, &STR_Display_072_011print_054_040width_054_040depth_054_040help_054_040where_054_040up_054_040down_054_040list_054_040func);
        CLU_string_size.num = 70;
        stringOPcons("Invocation:\teval, alias, unalias, execute                             ", CLU_1, CLU_string_size, &STR_Invocation_072_011eval_054_040alias_054_040unalias_054_040execute_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040);
        stringOPcons("Other:\t\tquit", CLU_1, CLU_12, &STR_Other_072_011_011quit);
        stringOPcons(" ", CLU_1, CLU_1, &STR__040);
        stringOPcons("sorry, no information about ", CLU_1, CLU_28, &STR_sorry_054_040no_040information_040about_040);
        stringOPcons("\nToo many arguments to where command\n", CLU_1, CLU_37, &STR__012Too_040many_040arguments_040to_040where_040command_012);
        stringOPcons("\nBad argument to where command\n", CLU_1, CLU_31, &STR__012Bad_040argument_040to_040where_040command_012);
        stringOPcons("  ", CLU_1, CLU_2, &STR__040_040);
        stringOPcons(": OWN INIT PROC", CLU_1, CLU_15, &STR__072_040OWN_040INIT_040PROC);
        stringOPcons("*>", CLU_1, CLU_2, &STR__052_076);
        stringOPcons("\nToo few arguments to func command\n", CLU_1, CLU_35, &STR__012Too_040few_040arguments_040to_040func_040command_012);
        stringOPcons("\nToo many arguments to func command\n", CLU_1, CLU_36, &STR__012Too_040many_040arguments_040to_040func_040command_012);
        stringOPcons("\nToo many arguments to up command\n", CLU_1, CLU_34, &STR__012Too_040many_040arguments_040to_040up_040command_012);
        stringOPcons("can\'t parse argument", CLU_1, CLU_20, &STR_can_047t_040parse_040argument);
        stringOPcons("not that many frames", CLU_1, CLU_20, &STR_not_040that_040many_040frames);
        stringOPcons("skipping over an own init procedure", CLU_1, CLU_35, &STR_skipping_040over_040an_040own_040init_040procedure);
        stringOPcons("\nToo many arguments to down command\n", CLU_1, CLU_36, &STR__012Too_040many_040arguments_040to_040down_040command_012);
        stringOPcons("parse argument", CLU_1, CLU_14, &STR_parse_040argument);
        stringOPcons(" not found ", CLU_1, CLU_11, &STR__040not_040found_040);
        stringOPcons("\nToo many arguments to the show command\n", CLU_1, CLU_40, &STR__012Too_040many_040arguments_040to_040the_040show_040command_012);
        stringOPcons("\nERROR: ", CLU_1, CLU_8, &STR__012ERROR_072_040);
        stringOPcons("\n\n", CLU_1, CLU_2, &STR__012_012);
        debug_own_init = 1;
        {
            {CLUREF T_0_1;
            CLUREF T_0_2;
            CLUREF T_0_3;
            CLUREF T_0_4;
            CLUREF T_0_5;
            CLUREF T_0_6;
            CLUREF T_0_7;
            CLUREF T_0_8;
            CLUREF T_0_9;
            CLUREF T_0_10;
            CLUREF T_0_11;
            CLUREF T_0_12;
            CLUREF T_0_13;
            CLUREF T_0_14;
            CLUREF T_0_15;
            CLUREF T_0_16;
            CLUREF T_0_17;
            CLUREF T_0_18;
            CLUREF T_0_19;
            CLUREF T_0_20;
            CLUREF T_0_21;
            CLUREF T_0_22;
            CLUREF T_0_23;
            CLUREF T_0_24;
            CLUREF T_0_25;
            CLUREF T_0_26;
            CLUREF T_0_27;
            err = arrayOPcreate(CLU_1,  &T_0_1);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_2);
            T_0_2.vec->data[1]  = STR_quit_072_040_040_040_040.num;
            T_0_2.vec->data[0]  = STR_leave_040pclu_040debugger.num;
            err = arrayOPaddh(T_0_1, T_0_2);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_3);
            T_0_3.vec->data[1]  = STR_restart_072_040.num;
            T_0_3.vec->data[0]  = STR_restart_040current_040program.num;
            err = arrayOPaddh(T_0_1, T_0_3);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_4);
            T_0_4.vec->data[1]  = STR_rebuild_072_040.num;
            T_0_4.vec->data[0]  = STR_run_040make_040and_040then_040execute_040current_040program.num;
            err = arrayOPaddh(T_0_1, T_0_4);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_5);
            T_0_5.vec->data[1]  = STR_help_072_040_040_040_040.num;
            T_0_5.vec->data[0]  = STR_some_040clues_040to_040operating_040pclu_040debugger.num;
            err = arrayOPaddh(T_0_1, T_0_5);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_6);
            T_0_6.vec->data[1]  = STR_break_072_040_040_040.num;
            T_0_6.vec->data[0]  = STR_set_040a_040breakpoint_040at_040a_040function_040or_040line.num;
            err = arrayOPaddh(T_0_1, T_0_6);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_7);
            T_0_7.vec->data[1]  = STR_trace_072_040_040_040.num;
            T_0_7.vec->data[0]  = STR_trace_040the_040specified_040signal.num;
            err = arrayOPaddh(T_0_1, T_0_7);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_8);
            T_0_8.vec->data[1]  = STR_untrace_072_040.num;
            T_0_8.vec->data[0]  = STR_stop_040tracing_040the_040specified_040signal.num;
            err = arrayOPaddh(T_0_1, T_0_8);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_9);
            T_0_9.vec->data[1]  = STR_step_072_040_040_040_040.num;
            T_0_9.vec->data[0]  = STR_single_040step_040a_040function_040or_040line.num;
            err = arrayOPaddh(T_0_1, T_0_9);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_10);
            T_0_10.vec->data[1]  = STR_unstep_072_040_040.num;
            T_0_10.vec->data[0]  = STR_stop_040single_040step_040a_040function_040or_040line.num;
            err = arrayOPaddh(T_0_1, T_0_10);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_11);
            T_0_11.vec->data[1]  = STR_print_072_040_040_040.num;
            T_0_11.vec->data[0]  = STR_print_040value_040of_040a_040variable.num;
            err = arrayOPaddh(T_0_1, T_0_11);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_12);
            T_0_12.vec->data[1]  = STR_width_072_040_040_040.num;
            T_0_12.vec->data[0]  = STR_show_057change_040width_040of_040p_050rinting_051stream.num;
            err = arrayOPaddh(T_0_1, T_0_12);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_13);
            T_0_13.vec->data[1]  = STR_depth_072_040_040_040.num;
            T_0_13.vec->data[0]  = STR_show_057change_040depth_040of_040p_050rinting_051stream.num;
            err = arrayOPaddh(T_0_1, T_0_13);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_14);
            T_0_14.vec->data[1]  = STR_where_072_040_040_040.num;
            T_0_14.vec->data[0]  = STR_show_040stack_040of_040active_040procedures.num;
            err = arrayOPaddh(T_0_1, T_0_14);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_15);
            T_0_15.vec->data[1]  = STR_continue_072.num;
            T_0_15.vec->data[0]  = STR_continue_040running_040program_040_050stops_040single_040stepping_051.num;
            err = arrayOPaddh(T_0_1, T_0_15);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_16);
            T_0_16.vec->data[1]  = STR_run_072_040_040_040_040_040.num;
            T_0_16.vec->data[0]  = STR_continue_040running_040program_040_050stops_040single_040stepping_051.num;
            err = arrayOPaddh(T_0_1, T_0_16);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_17);
            T_0_17.vec->data[1]  = STR_delete_072_040_040.num;
            T_0_17.vec->data[0]  = STR_remove_040a_040breakpoint.num;
            err = arrayOPaddh(T_0_1, T_0_17);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_18);
            T_0_18.vec->data[1]  = STR_show_072_040_040_040_040.num;
            T_0_18.vec->data[0]  = STR_show_040existing_040breakpoints.num;
            err = arrayOPaddh(T_0_1, T_0_18);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_19);
            T_0_19.vec->data[1]  = STR_execute_072_040.num;
            T_0_19.vec->data[0]  = STR_read_040and_040execute_040commands_040from_040a_040file.num;
            err = arrayOPaddh(T_0_1, T_0_19);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_20);
            T_0_20.vec->data[1]  = STR_eval_072_040_040_040_040.num;
            T_0_20.vec->data[0]  = STR_evaluate_040an_040expression.num;
            err = arrayOPaddh(T_0_1, T_0_20);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_21);
            T_0_21.vec->data[1]  = STR_alias_072_040_040_040.num;
            T_0_21.vec->data[0]  = STR_associate_040a_040name_040with_040a_040string.num;
            err = arrayOPaddh(T_0_1, T_0_21);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_22);
            T_0_22.vec->data[1]  = STR_unalias_072_040.num;
            T_0_22.vec->data[0]  = STR_remove_040an_040alis.num;
            err = arrayOPaddh(T_0_1, T_0_22);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_23);
            T_0_23.vec->data[1]  = STR_up_072_040_040_040_040_040_040.num;
            T_0_23.vec->data[0]  = STR_move_040up_040the_040stack_040of_040active_040procedures.num;
            err = arrayOPaddh(T_0_1, T_0_23);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_24);
            T_0_24.vec->data[1]  = STR_func_072_040_040_040_040.num;
            T_0_24.vec->data[0]  = STR_select_040procedure_040for_040listing.num;
            err = arrayOPaddh(T_0_1, T_0_24);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_25);
            T_0_25.vec->data[1]  = STR_list_072_040_040_040_040.num;
            T_0_25.vec->data[0]  = STR_list_040source_040code_040for_040current_040procedure.num;
            err = arrayOPaddh(T_0_1, T_0_25);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_26);
            T_0_26.vec->data[1]  = STR_down_072_040_040_040_040.num;
            T_0_26.vec->data[0]  = STR_move_040down_040the_040stack_040of_040active_040procedures.num;
            err = arrayOPaddh(T_0_1, T_0_26);
            if (err != ERR_ok) goto ex_0;
            RecordAlloc(2, T_0_27);
            T_0_27.vec->data[1]  = STR_next_072_040_040_040_040.num;
            T_0_27.vec->data[0]  = STR_step_040to_040next_040line_040in_040procedure.num;
            err = arrayOPaddh(T_0_1, T_0_27);
            if (err != ERR_ok) goto ex_0;
            debugOPcmd_desc.num = T_0_1.num;
            }
            }
        {
            {CLUREF T_0_28;
            RecordAlloc(5, T_0_28);
            T_0_28.vec->data[2]  = STR_start_137up.num;
            T_0_28.vec->data[4]  = 0;
            T_0_28.vec->data[0]  = 0;
            T_0_28.vec->data[1]  = 1;
            T_0_28.vec->data[3]  = -1;
            debugOPcurrent_state.num = T_0_28.num;
            }
            }
        {
            {CLUREF T_0_29;
            RecordAlloc(3, T_0_29);
            T_0_29.vec->data[2]  = 1;
            T_0_29.vec->data[1]  = STR_start_137up.num;
            T_0_29.vec->data[0]  = 1;
            debugOPdisplay.num = T_0_29.num;
            }
            }
        {
            {CLUREF T_0_30;
            err = streamOPprimary_output(&T_0_30);
            if (err != ERR_ok) goto ex_0;
            debugOPtyo.num = T_0_30.num;
            }
            }
        {
            {CLUREF T_0_31;
            err = pstreamOPprimary_output(&T_0_31);
            if (err != ERR_ok) goto ex_0;
            debugOPpst_tyo.num = T_0_31.num;
            }
            }
        {signal(ERR_ok);}
    ex_0: pclu_unhandled(err); {signal(ERR_failure);}
        }
    }

static int debugOPcli_own_init = 0;

/**** BEGIN PROCEDURE cli ****/

errcode debugOPcli(source, opt1, opt2, opt3, ret_1)
CLUREF source;
CLUREF opt1;
CLUREF opt2;
CLUREF opt3;
CLUREF *ret_1;
    {
    errcode err;
    errcode ecode2;
    CLUREF sigcount;
    CLUREF ctrlc;
    CLUREF ri;
    CLUREF l;
    CLUREF signame;
    CLUREF sigds;
    CLUREF sd;
    CLUREF sigcnt;
    CLUREF i;
    CLUREF val;
    CLUREF vops;
    CLUREF info;
    CLUREF fnm;
    CLUREF tyi;
    CLUREF line;
    CLUREF why;
        if (debugOPcli_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPcli_own_init = 1;
    }
    enter_proc(82);

  LINE(84);
    {
    CLUREF T_1_1;
    err = debugopframe_count(&T_1_1);
    if (err != ERR_ok) goto ex_0;
    debugOPcurrent_state.vec->data[4]  = T_1_1.num;
    }

  LINE(85);
    {
        {CLUREF T_1_1;
        err = _signalOPget(CLU_2, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        sigcount.num = T_1_1.num;
        }
        }

  LINE(86);
    {
        {ctrlc.tf = false;
        }
        }

  LINE(87);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = (sigcount.num == 0)? true : false;
    T_1_2.num = T_1_1.num ^ 1;
    if (T_1_2.num == true) {

  LINE(88);
        {
        err = streamOPputl(debugOPtyo, STR__012Interrupt_056_056_056);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(89);
        {
        ctrlc.tf = true;
        }
        }
        }/* end if */

  LINE(91);
    {
    CLUREF T_1_1;
    T_1_1.num = (source.num == 4)? true : false;
    if (T_1_1.num == true) {

  LINE(92);
        {
        CLUREF T_3_1;
        err = streamOPis_terminal(debugOPtyo, &T_3_1);
        if (err != ERR_ok) goto ex_1;
        if (T_3_1.num == true) {

  LINE(93);
            {
            err = streamOPputs(debugOPtyo, STR__012_012_052_052_052_052_052_040PCLU_040DEBUGGER_0400_0562);
            if (err != ERR_ok) goto ex_1;
            }

  LINE(94);
            {
            err = streamOPputs(debugOPtyo, STR__040_052_052_052_052_052_012_012);
            if (err != ERR_ok) goto ex_1;
            }
            }
            }/* end if */
            goto end_1;
            ex_1:
                if ((err == ERR_not_possible)) {
                }
                else {
                    goto ex_0;
                }
            end_1:;

  LINE(96);
        {
        err = pstreamOPset_max_width(debugOPpst_tyo, CLU_10);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(97);
        {
        err = pstreamOPset_max_depth(debugOPpst_tyo, CLU_10);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(98);
        {
        CLUREF T_2_1;
        err = symOPget_address(STR_start_137up, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(99);
        {
        err = _signalOPset(CLU_2, CLU_0);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(100);
        {
        err = _signalOPset(CLU_10, CLU_0);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(101);
        {
        err = _signalOPset(CLU_11, CLU_0);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(102);
        {
        err = _signalOPset_message(CLU_10, STR_oops_072_040bus_040error);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(103);
        {
        err = _signalOPset_message(CLU_11, STR_oops_072_040segmentation_040violation);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(104);
        {
        err = dbg_envOPload(debugOPtyo, debugOPpst_tyo);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(105);
        {
        err = aliasOPinit(debugOPtyo);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_2;
    T_1_2.num = (source.num == 0)? true : false;
    if (T_1_2.num == true) {

  LINE(107);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        T_2_1.num = ctrlc.num;
        if (!ctrlc.num) {
            err = ctl_ptsOPbp_exists(opt2, STR_a, CLU_0, &T_2_2);
            if (err != ERR_ok) goto ex_0;
            T_2_1.num = T_2_2.num;
        }
        if (T_2_1.num == true) {

  LINE(109);
            {
            debugOPcurrent_state.vec->data[4]  = opt1.num;
            }

  LINE(110);
            {
            debugOPcurrent_state.vec->data[0]  = opt1.num;
            }

  LINE(111);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            CLUREF T_3_3;
            T_3_1.num = debugOPcurrent_state.vec->data[2];
            T_3_2.num = ((T_3_1.str->size != opt2.str->size)? false :
                !(bcmp(T_3_1.str->data, opt2.str->data, T_3_1.str->size)));
            T_3_3.num = T_3_2.num ^ 1;
            if (T_3_3.num == true) {

  LINE(112);
                {
                debugOPcurrent_state.vec->data[2]  = opt2.num;
                }
                }
                }/* end if */

  LINE(114);
            {
            debugOPdisplay.vec->data[1]  = opt2.num;
            }

  LINE(115);
            {
            debugOPdisplay.vec->data[2]  = opt1.num;
            }

  LINE(116);
            {
                {CLUREF T_3_1;
                CLUREF T_3_2;
                err = debugopframe_info(opt1, &T_3_1, &T_3_2);
                if (err != ERR_ok) goto ex_0;
                ri.num = T_3_1.num;
                l.num = T_3_2.num;
                }
                }

  LINE(117);
            {
            debugOPdisplay.vec->data[0]  = l.num;
            }

  LINE(118);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            CLUREF T_3_3;
            CLUREF T_3_4;
            T_3_1.num = debugOPcurrent_state.vec->data[2];
            err = externalize(T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_0;
            err = stringOPconcat(STR__012Entering_072_040, T_3_2, &T_3_3);
            if (err != ERR_ok) goto ex_0;
            err = stringOPconcat(T_3_3, STR__012, &T_3_4);
            if (err != ERR_ok) goto ex_0;
            err = streamOPputl(debugOPtyo, T_3_4);
            if (err != ERR_ok) goto ex_0;
            }
            }
        else {

  LINE(121);
            {
            {
            ret_1->num = 0;
            }
            {signal (ERR_ok);}}
            }}/* end if */
        }
    else {
    CLUREF T_1_3;
    T_1_3.num = (source.num == 7)? true : false;
    if (T_1_3.num == true) {

  LINE(124);
        {
        debugOPcurrent_state.vec->data[4]  = opt1.num;
        }

  LINE(125);
        {
        debugOPcurrent_state.vec->data[0]  = opt1.num;
        }

  LINE(126);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_1.num = debugOPcurrent_state.vec->data[2];
        T_2_2.num = ((T_2_1.str->size != opt2.str->size)? false :
            !(bcmp(T_2_1.str->data, opt2.str->data, T_2_1.str->size)));
        T_2_3.num = T_2_2.num ^ 1;
        if (T_2_3.num == true) {

  LINE(127);
            {
            debugOPcurrent_state.vec->data[2]  = opt2.num;
            }
            }
            }/* end if */

  LINE(129);
        {
        debugOPdisplay.vec->data[1]  = opt2.num;
        }

  LINE(130);
        {
        debugOPdisplay.vec->data[2]  = opt1.num;
        }

  LINE(131);
        {
            {CLUREF T_2_1;
            CLUREF T_2_2;
            err = debugopframe_info(opt1, &T_2_1, &T_2_2);
            if (err != ERR_ok) goto ex_0;
            ri.num = T_2_1.num;
            l.num = T_2_2.num;
            }
            }

  LINE(132);
        {
        debugOPdisplay.vec->data[0]  = l.num;
        }

  LINE(133);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_1.num = debugOPcurrent_state.vec->data[2];
        err = externalize(T_2_1, &T_2_2);
        if (err != ERR_ok) goto ex_0;
        err = stringOPconcat(STR__012Entering_072_040, T_2_2, &T_2_3);
        if (err != ERR_ok) goto ex_0;
        err = streamOPputl(debugOPtyo, T_2_3);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(135);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        err = stringOPconcat(STR_FAULT_072_040Argument_040, opt3, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        err = stringOPconcat(T_2_1, STR__040uninitialized_012, &T_2_2);
        if (err != ERR_ok) goto ex_0;
        err = streamOPputl(debugOPtyo, T_2_2);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_4;
    T_1_4.num = (source.num == 8)? true : false;
    if (T_1_4.num == true) {

  LINE(137);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        T_2_1.num = ctrlc.num;
        if (!ctrlc.num) {
            err = ctl_ptsOPbp_exists(opt2, STR_a, CLU_0, &T_2_2);
            if (err != ERR_ok) goto ex_0;
            T_2_1.num = T_2_2.num;
        }
        if (T_2_1.num == true) {

  LINE(139);
            {
            debugOPcurrent_state.vec->data[4]  = opt1.num;
            }

  LINE(140);
            {
            debugOPcurrent_state.vec->data[0]  = opt1.num;
            }

  LINE(141);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            CLUREF T_3_3;
            T_3_1.num = debugOPcurrent_state.vec->data[2];
            T_3_2.num = ((T_3_1.str->size != opt2.str->size)? false :
                !(bcmp(T_3_1.str->data, opt2.str->data, T_3_1.str->size)));
            T_3_3.num = T_3_2.num ^ 1;
            if (T_3_3.num == true) {

  LINE(142);
                {
                debugOPcurrent_state.vec->data[2]  = opt2.num;
                }
                }
                }/* end if */

  LINE(144);
            {
            debugOPdisplay.vec->data[1]  = opt2.num;
            }

  LINE(145);
            {
            debugOPdisplay.vec->data[2]  = opt1.num;
            }

  LINE(146);
            {
                {CLUREF T_3_1;
                CLUREF T_3_2;
                err = debugopframe_info(opt1, &T_3_1, &T_3_2);
                if (err != ERR_ok) goto ex_0;
                ri.num = T_3_1.num;
                l.num = T_3_2.num;
                }
                }

  LINE(147);
            {
            debugOPdisplay.vec->data[0]  = l.num;
            }

  LINE(148);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            CLUREF T_3_3;
            CLUREF T_3_4;
            T_3_1.num = debugOPcurrent_state.vec->data[2];
            err = externalize(T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_0;
            err = stringOPconcat(STR__012Yielding_072_040, T_3_2, &T_3_3);
            if (err != ERR_ok) goto ex_0;
            err = stringOPconcat(T_3_3, STR__012, &T_3_4);
            if (err != ERR_ok) goto ex_0;
            err = streamOPputl(debugOPtyo, T_3_4);
            if (err != ERR_ok) goto ex_0;
            }
            }
        else {

  LINE(151);
            {
            {
            ret_1->num = 0;
            }
            {signal (ERR_ok);}}
            }}/* end if */
        }
    else {
    CLUREF T_1_5;
    T_1_5.num = (source.num == 5)? true : false;
    if (T_1_5.num == true) {

  LINE(154);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        T_2_1.num = ctrlc.num;
        if (!ctrlc.num) {
            err = ctl_ptsOPbp_exists(opt2, STR_a, CLU_0, &T_2_2);
            if (err != ERR_ok) goto ex_0;
            T_2_1.num = T_2_2.num;
        }
        if (T_2_1.num == true) {

  LINE(156);
            {
            debugOPcurrent_state.vec->data[4]  = opt1.num;
            }

  LINE(157);
            {
            debugOPcurrent_state.vec->data[0]  = opt1.num;
            }

  LINE(158);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            CLUREF T_3_3;
            T_3_1.num = debugOPcurrent_state.vec->data[2];
            T_3_2.num = ((T_3_1.str->size != opt2.str->size)? false :
                !(bcmp(T_3_1.str->data, opt2.str->data, T_3_1.str->size)));
            T_3_3.num = T_3_2.num ^ 1;
            if (T_3_3.num == true) {

  LINE(159);
                {
                debugOPcurrent_state.vec->data[2]  = opt2.num;
                }
                }
                }/* end if */

  LINE(161);
            {
            debugOPdisplay.vec->data[1]  = opt2.num;
            }

  LINE(162);
            {
            debugOPdisplay.vec->data[2]  = opt1.num;
            }

  LINE(163);
            {
                {CLUREF T_3_1;
                CLUREF T_3_2;
                err = debugopframe_info(opt1, &T_3_1, &T_3_2);
                if (err != ERR_ok) goto ex_0;
                ri.num = T_3_1.num;
                l.num = T_3_2.num;
                }
                }

  LINE(164);
            {
            debugOPdisplay.vec->data[0]  = l.num;
            }

  LINE(165);
            {
            {
            ret_1->num = 0;
            }
            {signal (ERR_ok);}}
            }
        else {

  LINE(169);
            {
            {
            ret_1->num = 0;
            }
            {signal (ERR_ok);}}
            }}/* end if */
        }
    else {
    CLUREF T_1_6;
    T_1_6.num = (source.num == 1)? true : false;
    if (T_1_6.num == true) {

  LINE(173);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_1.num = debugOPcurrent_state.vec->data[2];
        T_2_2.num = ((T_2_1.str->size != opt2.str->size)? false :
            !(bcmp(T_2_1.str->data, opt2.str->data, T_2_1.str->size)));
        T_2_3.num = T_2_2.num ^ 1;
        if (T_2_3.num == true) {

  LINE(174);
            {
            debugOPcurrent_state.vec->data[2]  = opt2.num;
            }
            }
            }/* end if */

  LINE(176);
        {
            {signame = STR_;
            }
            }

  LINE(177);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        T_2_1.num = (opt1.num == 0)? true : false;
        T_2_2.num = T_2_1.num ^ 1;
        if (T_2_2.num == true) {
            {
            CLUREF T_3_1;
            err = debugopcvt_sig(opt1, &T_3_1);
            if (err != ERR_ok) goto ex_0;
            signame.num = T_3_1.num;
            }
            }
            }/* end if */

  LINE(178);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        CLUREF T_2_4;
        CLUREF T_2_5;
        CLUREF T_2_6;
        CLUREF T_2_7;
        CLUREF T_2_8;
        T_2_2.num = ctrlc.num;
        if (!ctrlc.num) {
            T_2_3.num = debugOPcurrent_state.vec->data[2];
            err = ctl_ptsOPbp_exists(T_2_3, STR_a, CLU_0, &T_2_4);
            if (err != ERR_ok) goto ex_0;
            T_2_2.num = T_2_4.num;
        }
        T_2_1.num = T_2_2.num;
        if (!T_2_2.num) {
            T_2_6.num = (opt1.num == 0)? true : false;
            T_2_7.num = T_2_6.num ^ 1;
            T_2_5.num = T_2_7.num;
            if (T_2_7.num) {
                err = ctl_ptsOPsig_exists(signame, &T_2_8);
                if (err != ERR_ok) goto ex_0;
                T_2_5.num = T_2_8.num;
            }
            T_2_1.num = T_2_5.num;
        }
        if (T_2_1.num == true) {

  LINE(181);
            {
            debugOPdisplay.vec->data[1]  = opt2.num;
            }

  LINE(182);
            {
            CLUREF T_3_1;
            err = debugopframe_count(&T_3_1);
            if (err != ERR_ok) goto ex_0;
            debugOPdisplay.vec->data[2]  = T_3_1.num;
            }

  LINE(183);
            {
                {CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                T_3_1.num = debugOPdisplay.vec->data[2];
                err = debugopframe_info(T_3_1, &T_3_2, &T_3_3);
                if (err != ERR_ok) goto ex_0;
                ri.num = T_3_2.num;
                l.num = T_3_3.num;
                }
                }

  LINE(184);
            {
            debugOPdisplay.vec->data[0]  = l.num;
            }

  LINE(185);
            {
            CLUREF T_3_1;
            T_3_1.num = (opt1.num == 0)? true : false;
            if (T_3_1.num == true) {

  LINE(187);
                {
                CLUREF T_4_1;
                CLUREF T_4_2;
                CLUREF T_4_3;
                CLUREF T_4_4;
                T_4_1.num = debugOPcurrent_state.vec->data[2];
                err = externalize(T_4_1, &T_4_2);
                if (err != ERR_ok) goto ex_0;
                err = stringOPconcat(STR__012Leaving_072_040, T_4_2, &T_4_3);
                if (err != ERR_ok) goto ex_0;
                err = stringOPconcat(T_4_3, STR__012, &T_4_4);
                if (err != ERR_ok) goto ex_0;
                err = streamOPputl(debugOPtyo, T_4_4);
                if (err != ERR_ok) goto ex_0;
                }
                }
            else {

  LINE(190);
                {
                CLUREF T_4_1;
                T_4_1.num = ((signame.str->size != STR_failure.str->size)? false :
                    !(bcmp(signame.str->data, STR_failure.str->data, signame.str->size)));
                if (T_4_1.num == true) {
                    {
                    CLUREF T_5_1;
                    CLUREF T_5_2;
                    CLUREF T_5_3;
                    CLUREF T_5_4;
                    CLUREF T_5_5;
                    CLUREF T_5_6;
                    err = stringOPconcat(STR__012Signalling_072_040failure_040_050, opt3, &T_5_1);
                    if (err != ERR_ok) goto ex_0;
                    err = stringOPconcat(T_5_1, STR__051_040_072_040, &T_5_2);
                    if (err != ERR_ok) goto ex_0;
                    T_5_3.num = debugOPcurrent_state.vec->data[2];
                    err = externalize(T_5_3, &T_5_4);
                    if (err != ERR_ok) goto ex_0;
                    err = stringOPconcat(T_5_2, T_5_4, &T_5_5);
                    if (err != ERR_ok) goto ex_0;
                    err = stringOPconcat(T_5_5, STR__012, &T_5_6);
                    if (err != ERR_ok) goto ex_0;
                    err = streamOPputl(debugOPtyo, T_5_6);
                    if (err != ERR_ok) goto ex_0;
                    }
                    }
                else {

  LINE(193);
                    {
                    CLUREF T_5_1;
                    CLUREF T_5_2;
                    CLUREF T_5_3;
                    CLUREF T_5_4;
                    CLUREF T_5_5;
                    CLUREF T_5_6;
                    err = stringOPconcat(STR__012Signalling_072_040, signame, &T_5_1);
                    if (err != ERR_ok) goto ex_0;
                    err = stringOPconcat(T_5_1, STR__072_040, &T_5_2);
                    if (err != ERR_ok) goto ex_0;
                    T_5_3.num = debugOPcurrent_state.vec->data[2];
                    err = externalize(T_5_3, &T_5_4);
                    if (err != ERR_ok) goto ex_0;
                    err = stringOPconcat(T_5_2, T_5_4, &T_5_5);
                    if (err != ERR_ok) goto ex_0;
                    err = stringOPconcat(T_5_5, STR__012, &T_5_6);
                    if (err != ERR_ok) goto ex_0;
                    err = streamOPputl(debugOPtyo, T_5_6);
                    if (err != ERR_ok) goto ex_0;
                    }

  LINE(195);
                    {
                        {CLUREF T_5_1;
                        T_5_1.num = ri.vec->data[7];
                        sigds.num = T_5_1.num;
                        }
                        }

  LINE(196);
                    {
                    CLUREF T_5_1;
                    CLUREF T_5_2;
                    CLUREF T_5_3;
                        T_5_2.num = sigds.vec->size; 
                        T_5_3 = sigds;
                        for (T_5_1.num = 1; T_5_1.num <= T_5_2.num; T_5_1.num++) {
                            sd.num = T_5_3.vec->data[T_5_1.num - 1];

  LINE(197);
                            {
                            CLUREF T_6_1;
                            CLUREF T_6_2;
                            T_6_1.num = sd.vec->data[0];
                            err = debugopcmp_sig(signame, T_6_1, &T_6_2);
                            if (err != ERR_ok) goto ex_0;
                            if (T_6_2.num == true) {

  LINE(198);
                                {
                                    {CLUREF T_7_1;
                                    err = debugopget_sigvalcount(sd, &T_7_1);
                                    if (err != ERR_ok) goto ex_0;
                                    sigcnt.num = T_7_1.num;
                                    }
                                    }

  LINE(199);
                                {
                                CLUREF T_7_1;
                                CLUREF T_7_2;
                                    T_7_2.num = sigcnt.num;
                                    for (T_7_1.num = 1; T_7_1.num <= T_7_2.num; T_7_1.num++) {
                                        i.num = T_7_1.num;

  LINE(200);
                                        {
                                            {CLUREF T_8_1;
                                            err = debugopget_nth_sigval(i, &T_8_1);
                                            if (err != ERR_ok) goto ex_0;
                                            val.num = T_8_1.num;
                                            }
                                            }

  LINE(201);
                                        {
                                            {CLUREF T_8_1;
                                            CLUREF T_8_2;
                                            CLUREF T_8_3;
                                            T_8_1.num = -1;
                                            T_8_2.num = -1;
                                            err = debugopget_nth_sigvalops(sd, i, ri, T_8_1, T_8_2, &T_8_3);
                                            if (err != ERR_ok) goto ex_0;
                                            vops.num = T_8_3.num;
                                            }
                                            }

  LINE(202);
                                        {
                                        err = print_result(debugOPpst_tyo, val, vops);
                                        if (err != ERR_ok) goto ex_0;
                                        }
                                    }
                                }
                                end_inline_for_2:;
                                }
                                }/* end if */
                        }
                    }
                    end_inline_for_1:;
                    }}/* end if */
                }}/* end if */
            }
        else {

  LINE(209);
            {
            {
            ret_1->num = 0;
            }
            {signal (ERR_ok);}}
            }}/* end if */
        }
    else {
    CLUREF T_1_7;
    T_1_7.num = (source.num == 6)? true : false;
    if (T_1_7.num == true) {

  LINE(212);
        {
        {
        ret_1->num = 0;
        }
        {signal (ERR_ok);}}

  LINE(213);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_1.num = debugOPcurrent_state.vec->data[2];
        T_2_2.num = ((T_2_1.str->size != opt2.str->size)? false :
            !(bcmp(T_2_1.str->data, opt2.str->data, T_2_1.str->size)));
        T_2_3.num = T_2_2.num ^ 1;
        if (T_2_3.num == true) {

  LINE(214);
            {
            debugOPcurrent_state.vec->data[2]  = opt2.num;
            }
            }
            }/* end if */

  LINE(216);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_1.num = ctrlc.num;
        if (!ctrlc.num) {
            T_2_2.num = debugOPcurrent_state.vec->data[2];
            err = ctl_ptsOPbp_exists(T_2_2, STR_a, CLU_0, &T_2_3);
            if (err != ERR_ok) goto ex_0;
            T_2_1.num = T_2_3.num;
        }
        if (T_2_1.num == true) {

  LINE(218);
            {
            debugOPdisplay.vec->data[1]  = opt2.num;
            }

  LINE(219);
            {
            CLUREF T_3_1;
            err = debugopframe_count(&T_3_1);
            if (err != ERR_ok) goto ex_0;
            debugOPdisplay.vec->data[2]  = T_3_1.num;
            }

  LINE(220);
            {
                {CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                T_3_1.num = debugOPdisplay.vec->data[2];
                err = debugopframe_info(T_3_1, &T_3_2, &T_3_3);
                if (err != ERR_ok) goto ex_0;
                ri.num = T_3_2.num;
                l.num = T_3_3.num;
                }
                }

  LINE(221);
            {
            debugOPdisplay.vec->data[0]  = l.num;
            }

  LINE(224);
            {
            {
            ret_1->num = 0;
            }
            {signal (ERR_ok);}}
            }
        else {

  LINE(226);
            {
            {
            ret_1->num = 0;
            }
            {signal (ERR_ok);}}
            }}/* end if */
        }
    else {
    CLUREF T_1_8;
    T_1_8.num = (source.num == 2)? true : false;
    if (T_1_8.num == true) {

  LINE(229);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_1.num = debugOPcurrent_state.vec->data[2];
        T_2_2.num = ((opt2.str->size != T_2_1.str->size)? false :
            !(bcmp(opt2.str->data, T_2_1.str->data, opt2.str->size)));
        T_2_3.num = T_2_2.num ^ 1;
        if (T_2_3.num == true) {

  LINE(231);
            {
            debugOPcurrent_state.vec->data[2]  = opt2.num;
            }

  LINE(232);
            {
            debugOPdisplay.vec->data[1]  = opt2.num;
            }
            }
            }/* end if */

  LINE(234);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_1.num = ctrlc.num;
        if (!ctrlc.num) {
            T_2_2.num = debugOPcurrent_state.vec->data[2];
            err = ctl_ptsOPbp_exists(T_2_2, STR_sl, opt1, &T_2_3);
            if (err != ERR_ok) goto ex_0;
            T_2_1.num = T_2_3.num;
        }
        if (T_2_1.num == true) {

  LINE(236);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            CLUREF T_3_3;
            CLUREF T_3_4;
            CLUREF T_3_5;
            CLUREF T_3_6;
            T_3_1.num = debugOPcurrent_state.vec->data[2];
            err = externalize(T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_0;
            err = stringOPconcat(T_3_2, STR__072_040line_040, &T_3_3);
            if (err != ERR_ok) goto ex_0;
            err = intOPunparse(opt1, &T_3_4);
            if (err != ERR_ok) goto ex_0;
            err = stringOPconcat(T_3_3, T_3_4, &T_3_5);
            if (err != ERR_ok) goto ex_0;
            err = stringOPconcat(T_3_5, STR__072_040, &T_3_6);
            if (err != ERR_ok) goto ex_0;
            err = streamOPputs(debugOPtyo, T_3_6);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(238);
            {
                {CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                err = debugopframe_count(&T_3_1);
                if (err != ERR_ok) goto ex_0;
                err = debugopframe_info(T_3_1, &T_3_2, &T_3_3);
                if (err != ERR_ok) goto ex_0;
                info.num = T_3_2.num;
                l.num = T_3_3.num;
                }
                }

  LINE(239);
            {
                {CLUREF T_3_1;
                err = debugopget_fname(info, &T_3_1);
                if (err != ERR_ok) goto ex_0;
                fnm.num = T_3_1.num;
                }
                }

  LINE(240);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            T_3_1.num = debugOPcurrent_state.vec->data[2];
            T_3_2.num = -1;
            err = srcOPlist(debugOPtyo, fnm, T_3_1, opt1, opt1, T_3_2, CLU_0, CLU_0);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(242);
            {
            debugOPcurrent_state.vec->data[1]  = opt1.num;
            }

  LINE(243);
            {
            CLUREF T_3_1;
            err = debugopframe_count(&T_3_1);
            if (err != ERR_ok) goto ex_0;
            debugOPdisplay.vec->data[2]  = T_3_1.num;
            }

  LINE(244);
            {
            debugOPdisplay.vec->data[0]  = opt1.num;
            }

  LINE(245);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            CLUREF T_3_3;
            T_3_1.num = debugOPcurrent_state.vec->data[3];
            T_3_2.num = (T_3_1.num == 0)? true : false;
            T_3_3.num = T_3_2.num ^ 1;
            if (T_3_3.num == true) {

  LINE(246);
                {
                CLUREF T_4_1;
                CLUREF T_4_2;
                T_4_1.num = debugOPcurrent_state.vec->data[3];
                T_4_2.num = T_4_1.num - 1;
                 if ((T_4_2.num >= 0 && T_4_1.num < 0 && (-1) < 0) || 
                     (T_4_2.num <= 0 && T_4_1.num > 0 && (-1) > 0)) {
                    err = ERR_overflow;
                    goto ex_0;}
                debugOPcurrent_state.vec->data[3]  = T_4_2.num;
                }

  LINE(248);
                {
                CLUREF T_4_1;
                CLUREF T_4_2;
                T_4_1.num = debugOPcurrent_state.vec->data[3];
                T_4_2.num = (T_4_1.num > 0)? true : false;
                if (T_4_2.num == true) {
                    {
                    {
                    ret_1->num = 0;
                    }
                    {signal (ERR_ok);}}
                    }
                    }/* end if */
                }
                }/* end if */
            }
        else {

  LINE(251);
            {
            {
            ret_1->num = 0;
            }
            {signal (ERR_ok);}}
            }}/* end if */
        }
        }}}}}}}}/* end if */

  LINE(254);
    {
        {CLUREF T_1_1;
        err = streamOPprimary_input(&T_1_1);
        if (err != ERR_ok) goto ex_0;
        tyi.num = T_1_1.num;
        }
        }

  LINE(256);
    for (;;) {
        if (true != true) { break; }

  LINE(257);
        {

  LINE(258);
            {
            err = streamOPset_prompt(tyi, STR_command_072_040);
            if (err != ERR_ok) goto ex_2;
            }

  LINE(259);
            {
            CLUREF T_5_1;
            err = lineedit(tyi, STR_command_072_040, &T_5_1);
            if (err != ERR_ok) goto ex_3;
            line.num = T_5_1.num;
            }
                goto end_3;
                ex_3:
                    {

  LINE(261);
                        {
                        CLUREF T_5_1;
                        err = streamOPgetl(tyi, &T_5_1);
                        if (err != ERR_ok) goto ex_2;
                        line.num = T_5_1.num;
                        }

  LINE(262);
                        {
                        err = streamOPputl(debugOPtyo, line);
                        if (err != ERR_ok) goto ex_2;
                        }
                    }
                end_3:;

  LINE(264);
            {
            err = streamOPputl(debugOPtyo, STR_);
            if (err != ERR_ok) goto ex_2;
            }

  LINE(265);
            {
            err = streamOPset_prompt(tyi, STR_);
            if (err != ERR_ok) goto ex_2;
            }

  LINE(266);
            {
            err = debugOPprocess_commands(line);
            if (err != ERR_ok) goto ex_2;
            }
            }
            goto end_2;
            ex_2:
                if ((err == ERR_cont)) {

  LINE(269);
                    {
                    {
                    ret_1->num = 0;
                    }
                    {signal (ERR_ok);}}
                }
                else if ((err == ERR_failure)) {
                CLUREF why;
                why.num = elist[0].num;

  LINE(271);
                    {
                    err = debugOPerr_out(why);
                    if (err != ERR_ok) goto ex_0;
                    }
                }
                else {
                    goto ex_0;
                }
            end_2:;
        }
        end_while_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE cli ****/

static int debugOPprocess_commands_own_init = 0;
CLUREF debugOPprocess_commandsOPlast_command;

/**** BEGIN PROCEDURE process_commands ****/

errcode debugOPprocess_commands(line)
CLUREF line;
    {
    errcode err;
    errcode ecode2;
    CLUREF index;
    CLUREF cmnd;
    CLUREF args;
        if (debugOPprocess_commands_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPprocess_commands_own_init = 1;
        {
            {debugOPprocess_commandsOPlast_command = STR_;
            }
            }
    }
    enter_proc(276);

  LINE(278);
    {
    CLUREF T_1_1;
    err = strip_blanks(line, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    line.num = T_1_1.num;
    }

  LINE(279);
    {
        {CLUREF T_1_1;
        CLUREF T_1_2;
        T_1_1.ch = ' ';
        err = stringOPindexc(T_1_1, line, &T_1_2);
        if (err != ERR_ok) goto ex_0;
        index.num = T_1_2.num;
        }
        }

  LINE(282);
    {
    CLUREF T_1_1;
    T_1_1.num = (index.num == 0)? true : false;
    if (T_1_1.num == true) {

  LINE(284);
        {
        cmnd.num = line.num;
        }

  LINE(285);
        {
        args = STR_;
        }
        }
    else {

  LINE(287);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        T_2_1.num = index.num - 1;
         if ((T_2_1.num >= 0 && index.num < 0 && (-1) < 0) || 
             (T_2_1.num <= 0 && index.num > 0 && (-1) > 0)) {
            err = ERR_overflow;
            goto ex_0;}
        err = stringOPsubstr(line, CLU_1, T_2_1, &T_2_2);
        if (err != ERR_ok) goto ex_0;
        cmnd.num = T_2_2.num;
        }

  LINE(288);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        T_2_1.num = index.num + 1;
         if ((T_2_1.num > 0 && index.num < 0 && 1 < 0) || 
             (T_2_1.num < 0 && index.num > 0 && 1 > 0)) {
            err = ERR_overflow;
            goto ex_0;}
        err = stringOPrest(line, T_2_1, &T_2_2);
        if (err != ERR_ok) goto ex_0;
        args.num = T_2_2.num;
        }
        }}/* end if */

  LINE(290);
    {
    CLUREF T_1_1;
    err = debugOPprefix(cmnd, STR_break, CLU_1, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    if (T_1_1.num == true) {

  LINE(291);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPbreak_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_2;
    err = debugOPprefix(cmnd, STR_trace, CLU_1, &T_1_2);
    if (err != ERR_ok) goto ex_0;
    if (T_1_2.num == true) {

  LINE(293);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPtrace_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_3;
    err = debugOPprefix(cmnd, STR_untrace, CLU_3, &T_1_3);
    if (err != ERR_ok) goto ex_0;
    if (T_1_3.num == true) {

  LINE(295);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPuntrace_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_4;
    err = debugOPprefix(cmnd, STR_step, CLU_1, &T_1_4);
    if (err != ERR_ok) goto ex_0;
    if (T_1_4.num == true) {

  LINE(297);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPstep_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_5;
    err = debugOPprefix(cmnd, STR_unstep, CLU_3, &T_1_5);
    if (err != ERR_ok) goto ex_0;
    if (T_1_5.num == true) {

  LINE(299);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPunstep_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_6;
    err = debugOPprefix(cmnd, STR_print, CLU_1, &T_1_6);
    if (err != ERR_ok) goto ex_0;
    if (T_1_6.num == true) {

  LINE(301);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPprint_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_7;
    err = debugOPprefix(cmnd, STR_reset, CLU_5, &T_1_7);
    if (err != ERR_ok) goto ex_0;
    if (T_1_7.num == true) {

  LINE(303);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPreset_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_8;
    err = debugOPprefix(cmnd, STR_width, CLU_2, &T_1_8);
    if (err != ERR_ok) goto ex_0;
    if (T_1_8.num == true) {

  LINE(305);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPwidth_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_9;
    err = debugOPprefix(cmnd, STR_depth, CLU_2, &T_1_9);
    if (err != ERR_ok) goto ex_0;
    if (T_1_9.num == true) {

  LINE(307);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPdepth_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_10;
    CLUREF T_1_11;
    CLUREF T_1_12;
    err = debugOPprefix(cmnd, STR_help, CLU_1, &T_1_11);
    if (err != ERR_ok) goto ex_0;
    T_1_10.num = T_1_11.num;
    if (!T_1_11.num) {
        err = debugOPprefix(cmnd, STR__077, CLU_1, &T_1_12);
        if (err != ERR_ok) goto ex_0;
        T_1_10.num = T_1_12.num;
    }
    if (T_1_10.num == true) {

  LINE(309);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPhelp_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_13;
    CLUREF T_1_14;
    CLUREF T_1_15;
    err = debugOPprefix(cmnd, STR_where, CLU_1, &T_1_14);
    if (err != ERR_ok) goto ex_0;
    T_1_13.num = T_1_14.num;
    if (!T_1_14.num) {
        err = debugOPprefix(cmnd, STR_frames, CLU_1, &T_1_15);
        if (err != ERR_ok) goto ex_0;
        T_1_13.num = T_1_15.num;
    }
    if (T_1_13.num == true) {

  LINE(311);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPwhere_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_16;
    err = debugOPprefix(cmnd, STR_continue, CLU_1, &T_1_16);
    if (err != ERR_ok) goto ex_0;
    if (T_1_16.num == true) {

  LINE(313);
        {
        debugOPprocess_commandsOPlast_command.num = line.num;
        }

  LINE(314);
        {
        err = debugOPcont_cmd(cmnd, args);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(315);
        {
        {signal (ERR_cont);}}
        }
    else {
    CLUREF T_1_17;
    err = debugOPprefix(cmnd, STR_run, CLU_1, &T_1_17);
    if (err != ERR_ok) goto ex_0;
    if (T_1_17.num == true) {

  LINE(317);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }

  LINE(318);
        {
        err = debugOPcont_cmd(cmnd, args);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(319);
        {
        {signal (ERR_cont);}}
        }
    else {
    CLUREF T_1_18;
    err = debugOPprefix(cmnd, STR_delete, CLU_1, &T_1_18);
    if (err != ERR_ok) goto ex_0;
    if (T_1_18.num == true) {

  LINE(321);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPdelete_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_19;
    err = debugOPprefix(cmnd, STR_show, CLU_2, &T_1_19);
    if (err != ERR_ok) goto ex_0;
    if (T_1_19.num == true) {

  LINE(323);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPshow_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_20;
    err = debugOPprefix(cmnd, STR_alias, CLU_1, &T_1_20);
    if (err != ERR_ok) goto ex_0;
    if (T_1_20.num == true) {

  LINE(328);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }

  LINE(329);
        {
        err = debugOPalias_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_21;
    err = debugOPprefix(cmnd, STR_unalias, CLU_3, &T_1_21);
    if (err != ERR_ok) goto ex_0;
    if (T_1_21.num == true) {

  LINE(331);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }

  LINE(332);
        {
        err = debugOPunalias_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_22;
    err = debugOPprefix(cmnd, STR_execute, CLU_2, &T_1_22);
    if (err != ERR_ok) goto ex_0;
    if (T_1_22.num == true) {

  LINE(334);
        {
        debugOPprocess_commandsOPlast_command.num = line.num;
        }

  LINE(335);
        {
        err = debugOPexecute_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_23;
    err = debugOPprefix(cmnd, STR_eval, CLU_1, &T_1_23);
    if (err != ERR_ok) goto ex_0;
    if (T_1_23.num == true) {

  LINE(337);
        {
        debugOPprocess_commandsOPlast_command.num = line.num;
        }

  LINE(338);
        {
        err = debugOPeval_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_24;
    err = debugOPprefix(cmnd, STR_up, CLU_1, &T_1_24);
    if (err != ERR_ok) goto ex_0;
    if (T_1_24.num == true) {

  LINE(340);
        {
        debugOPprocess_commandsOPlast_command.num = line.num;
        }

  LINE(341);
        {
        err = debugOPup_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_25;
    err = debugOPprefix(cmnd, STR_func, CLU_1, &T_1_25);
    if (err != ERR_ok) goto ex_0;
    if (T_1_25.num == true) {

  LINE(343);
        {
        debugOPprocess_commandsOPlast_command = STR_;
        }
        {
        err = debugOPfunc_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_26;
    err = debugOPprefix(cmnd, STR_list, CLU_1, &T_1_26);
    if (err != ERR_ok) goto ex_0;
    if (T_1_26.num == true) {

  LINE(345);
        {
        debugOPprocess_commandsOPlast_command.num = line.num;
        }

  LINE(346);
        {
        err = debugOPlist_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_27;
    err = debugOPprefix(cmnd, STR_down, CLU_1, &T_1_27);
    if (err != ERR_ok) goto ex_0;
    if (T_1_27.num == true) {

  LINE(348);
        {
        debugOPprocess_commandsOPlast_command.num = line.num;
        }

  LINE(349);
        {
        err = debugOPdown_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_28;
    err = debugOPprefix(cmnd, STR_next, CLU_1, &T_1_28);
    if (err != ERR_ok) goto ex_0;
    if (T_1_28.num == true) {

  LINE(351);
        {
        debugOPprocess_commandsOPlast_command.num = line.num;
        }

  LINE(352);
        {
        err = debugOPnext_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(353);
        {
        {signal (ERR_cont);}}
        }
    else {
    CLUREF T_1_29;
    err = debugOPprefix(cmnd, STR_quit, CLU_1, &T_1_29);
    if (err != ERR_ok) goto ex_0;
    if (T_1_29.num == true) {

  LINE(355);
        {
        err = debugOPquit_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_30;
    err = debugOPprefix(cmnd, STR_restart, CLU_3, &T_1_30);
    if (err != ERR_ok) goto ex_0;
    if (T_1_30.num == true) {

  LINE(357);
        {
        err = debugOPrestart_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_31;
    err = debugOPprefix(cmnd, STR_rebuild, CLU_3, &T_1_31);
    if (err != ERR_ok) goto ex_0;
    if (T_1_31.num == true) {

  LINE(359);
        {
        err = debugOPrebuild_cmd(args);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_32;
    err = stringOPempty(cmnd, &T_1_32);
    if (err != ERR_ok) goto ex_0;
    if (T_1_32.num == true) {

  LINE(361);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        err = stringOPempty(debugOPprocess_commandsOPlast_command, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        T_2_2.num = T_2_1.num ^ 1;
        if (T_2_2.num == true) {

  LINE(363);
            {
            err = streamOPputl(debugOPtyo, debugOPprocess_commandsOPlast_command);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(364);
            {
            err = debugOPprocess_commands(debugOPprocess_commandsOPlast_command);
            if (err != ERR_ok) goto ex_1;
            }
            goto end_1;
            ex_1:
                if (err == ERR_cont) {signal(ERR_cont);}
                else {
                    goto ex_0;}
            end_1:;

  LINE(366);
            {
            {signal (ERR_ok);}}
            }
            }/* end if */
        }
    else {
    CLUREF T_1_33;
    CLUREF T_1_34;
    CLUREF T_1_35;
    err = stringOPsize(cmnd, &T_1_33);
    if (err != ERR_ok) goto ex_0;
    T_1_34.num = (T_1_33.num == 0)? true : false;
    T_1_35.num = T_1_34.num ^ 1;
    if (T_1_35.num == true) {

  LINE(370);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        err = stringOPfetch(cmnd, CLU_1, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        T_2_2.ch = '%';
        T_2_3.num = (T_2_1.ch == T_2_2.ch)? true : false;
        if (T_2_3.num == true) {
            {
            {signal (ERR_ok);}}
            }
            }/* end if */

  LINE(371);
        {
        err = streamOPputs(debugOPtyo, STR_unknown_040command_072_040);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(372);
        {
        err = streamOPputs(debugOPtyo, cmnd);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(373);
        {
        err = streamOPputs(debugOPtyo, STR__012);
        if (err != ERR_ok) goto ex_0;
        }
        }
        }}}}}}}}}}}}}}}}}}}}}}}}}}}}}/* end if */

  LINE(375);
    {
    {signal (ERR_ok);}}
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE process_commands ****/


/**** BEGIN PROCEDURE prefix ****/

errcode debugOPprefix(s, cmnd, cnt, ret_1)
CLUREF s;
CLUREF cmnd;
CLUREF cnt;
CLUREF *ret_1;
    {
    errcode err;
    errcode ecode2;
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
    enter_proc(378);

  LINE(379);
    {
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    CLUREF T_1_4;
    CLUREF T_1_5;
    CLUREF T_1_6;
    CLUREF T_1_7;
    T_1_2.num = s.num;
    T_1_3.num = cmnd.num;
    err = _bytevecOPnc_indexv(T_1_2, T_1_3, CLU_1, &T_1_4);
    if (err != ERR_ok) goto ex_0;
    T_1_5.num = (T_1_4.num == 1)? true : false;
    T_1_1.num = T_1_5.num;
    if (T_1_5.num) {
        err = stringOPsize(s, &T_1_6);
        if (err != ERR_ok) goto ex_0;
        T_1_7.num = (T_1_6.num >= cnt.num)? true : false;
        T_1_1.num = T_1_7.num;
    }
    ret_1->num = T_1_1.num;
    }
    {signal (ERR_ok);}}
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE prefix ****/

static int debugOPquit_cmd_own_init = 0;

/**** BEGIN PROCEDURE quit_cmd ****/

errcode debugOPquit_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
        if (debugOPquit_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPquit_cmd_own_init = 1;
    }
    enter_proc(386);

  LINE(387);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(388);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    T_1_3.num = T_1_2.num ^ 1;
    if (T_1_3.num == true) {

  LINE(389);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040quit_040command_012);
        if (err != ERR_ok) goto ex_0;
        }
        }
        }/* end if */

  LINE(390);
    {
    err = _exit(CLU_0);
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE quit_cmd ****/

static int debugOPrestart_cmd_own_init = 0;

/**** BEGIN PROCEDURE restart_cmd ****/

errcode debugOPrestart_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF save;
    CLUREF fn;
        if (debugOPrestart_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPrestart_cmd_own_init = 1;
    }
    enter_proc(393);

  LINE(394);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(395);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    T_1_3.num = T_1_2.num ^ 1;
    if (T_1_3.num == true) {

  LINE(396);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040restart_040command_012);
        if (err != ERR_ok) goto ex_0;
        }
        }
        }/* end if */

  LINE(397);
    {
        {CLUREF T_1_1;
        sequenceOPnew2(CLU_0, &T_1_1);
        save.num = T_1_1.num;
        }
        }

  LINE(398);
    {
        {CLUREF T_1_1;
        err = file_nameOPcreate(STR__057bin_057, STR_csh, STR_, STR_, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        fn.num = T_1_1.num;
        }
        }

  LINE(399);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    err = _get_xjname(&T_1_1);
    if (err != ERR_ok) goto ex_0;
    err = stringOPconcat(STR__055f_040_055e_040_055c_040, T_1_1, &T_1_2);
    if (err != ERR_ok) goto ex_0;
    err = _jobOPexec(fn, T_1_2, save);
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE restart_cmd ****/

static int debugOPrebuild_cmd_own_init = 0;

/**** BEGIN PROCEDURE rebuild_cmd ****/

errcode debugOPrebuild_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF save;
    CLUREF fn;
        if (debugOPrebuild_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPrebuild_cmd_own_init = 1;
    }
    enter_proc(402);

  LINE(403);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(404);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    T_1_3.num = T_1_2.num ^ 1;
    if (T_1_3.num == true) {

  LINE(405);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040quit_040command_012);
        if (err != ERR_ok) goto ex_0;
        }
        }
        }/* end if */

  LINE(406);
    {
        {CLUREF T_1_1;
        sequenceOPnew2(CLU_0, &T_1_1);
        save.num = T_1_1.num;
        }
        }

  LINE(407);
    {
        {CLUREF T_1_1;
        err = file_nameOPcreate(STR__057bin_057, STR_csh, STR_, STR_, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        fn.num = T_1_1.num;
        }
        }

  LINE(409);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    err = _get_xjname(&T_1_1);
    if (err != ERR_ok) goto ex_0;
    err = stringOPconcat(STR__055f_040_055e_040_055c_040make_073, T_1_1, &T_1_2);
    if (err != ERR_ok) goto ex_0;
    err = _jobOPexec(fn, T_1_2, save);
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE rebuild_cmd ****/

static int debugOPreset_cmd_own_init = 0;

/**** BEGIN PROCEDURE reset_cmd ****/

errcode debugOPreset_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
        if (debugOPreset_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPreset_cmd_own_init = 1;
    }
    enter_proc(412);

  LINE(413);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(414);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    T_1_3.num = T_1_2.num ^ 1;
    if (T_1_3.num == true) {

  LINE(415);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040reset_040command_012);
        if (err != ERR_ok) goto ex_0;
        }
        }
        }/* end if */

  LINE(416);
    {
    err = symOPclear_owns();
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE reset_cmd ****/

static int debugOPnext_cmd_own_init = 0;

/**** BEGIN PROCEDURE next_cmd ****/

errcode debugOPnext_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF count;
    CLUREF arglist;
    CLUREF s;
        if (debugOPnext_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPnext_cmd_own_init = 1;
    }
    enter_proc(419);

  LINE(420);
    {
        {count.num = 1;
        }
        }

  LINE(421);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(422);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num > 1)? true : false;
    if (T_1_2.num == true) {

  LINE(423);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040next_040command_012);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(424);
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(426);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 1)? true : false;
    if (T_1_2.num == true) {

  LINE(427);
        {
        CLUREF T_3_1;
        CLUREF T_3_2;
        if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
            err = ERR_bounds;
            goto ex_1;}
        T_3_1.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
        err = intOPparse(T_3_1, &T_3_2);
        if (err != ERR_ok) goto ex_1;
        count.num = T_3_2.num;
        }
            goto end_1;
            ex_1:
                {
                    CLUREF s;
                    s = _pclu_erstr(err);

  LINE(429);
                    {
                    err = streamOPputl(debugOPtyo, STR__012Bad_040argument_040to_040next_040command_012);
                    if (err != ERR_ok) goto ex_0;
                    }

  LINE(430);
                    {
                    {signal (ERR_ok);}}
                }
            end_1:;

  LINE(432);
        {
        CLUREF T_2_1;
        T_2_1.num = (count.num < 1)? true : false;
        if (T_2_1.num == true) {

  LINE(433);
            {
            err = streamOPputl(debugOPtyo, STR__012Bad_040argument_040to_040next_040command_012);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(434);
            {
            {signal (ERR_ok);}}
            }
            }/* end if */
        }
        }/* end if */

  LINE(437);
    {
    debugOPcurrent_state.vec->data[3]  = count.num;
    }

  LINE(438);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = debugOPdisplay.vec->data[1];
    err = externalize(T_1_1, &T_1_2);
    if (err != ERR_ok) goto ex_0;
    err = ctl_ptsOPbp_add(T_1_2, STR_t, CLU_0);
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE next_cmd ****/

static int debugOPcont_cmd_own_init = 0;

/**** BEGIN PROCEDURE cont_cmd ****/

errcode debugOPcont_cmd(cmdl, args)
CLUREF cmdl;
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
        if (debugOPcont_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPcont_cmd_own_init = 1;
    }
    enter_proc(442);

  LINE(443);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(444);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    T_1_3.num = T_1_2.num ^ 1;
    if (T_1_3.num == true) {

  LINE(445);
        {
        CLUREF T_2_1;
        err = sequenceOPa2s(arglist, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        err = set_argv(T_2_1);
        if (err != ERR_ok) goto ex_0;
        }
        }
        }/* end if */

  LINE(447);
    {
    CLUREF T_2_1;
    CLUREF T_2_2;
    T_2_1.num = debugOPdisplay.vec->data[1];
    err = externalize(T_2_1, &T_2_2);
    if (err != ERR_ok) goto ex_1;
    err = ctl_ptsOPbp_remove(T_2_2, STR_t, CLU_0);
    if (err != ERR_ok) goto ex_1;
    }
        goto end_1;
        ex_1:
            if ((err == ERR_not_found)) {
            }
            else {
                goto ex_0;
            }
        end_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE cont_cmd ****/

static int debugOPbreak_cmd_own_init = 0;

/**** BEGIN PROCEDURE break_cmd ****/

errcode debugOPbreak_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF line;
    CLUREF func;
    CLUREF arglist;
    CLUREF arg;
    CLUREF why;
        if (debugOPbreak_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPbreak_cmd_own_init = 1;
    }
    enter_proc(452);

  LINE(455);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    err = stringOPsize(args, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {
        {
        err = debugOPerr_out(STR_missing_040argument);
        if (err != ERR_ok) goto ex_0;
        }
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(458);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(459);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
        T_1_2.num = arglist.array->ext_high; 
        T_1_3 = arglist;
        for (T_1_1.num = arglist.array->ext_low; T_1_1.num <= T_1_2.num; T_1_1.num++) {
            if (T_1_1.num > T_1_3.array->ext_high || T_1_1.num < T_1_3.array->ext_low) {
                err = ERR_failure;
                elist[0].str = array_bounds_exception_STRING;
                goto ex_0;}
            arg.num = T_1_3.array->store->data[T_1_1.num - T_1_3.array->ext_low + T_1_3.array->int_low];

  LINE(460);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            CLUREF T_3_3;
            CLUREF T_3_4;
            err = stringOPfetch(arg, CLU_1, &T_3_1);
            if (err != ERR_ok) goto ex_1;
            err = stringOPindexc(T_3_1, STR_0123456789, &T_3_2);
            if (err != ERR_ok) goto ex_1;
            T_3_3.num = (T_3_2.num == 0)? true : false;
            T_3_4.num = T_3_3.num ^ 1;
            if (T_3_4.num == true) {

  LINE(462);
                {
                CLUREF T_4_1;
                err = intOPparse(arg, &T_4_1);
                if (err != ERR_ok) goto ex_1;
                line.num = T_4_1.num;
                }

  LINE(463);
                {
                CLUREF T_4_1;
                CLUREF T_4_2;
                T_4_1.num = debugOPdisplay.vec->data[1];
                err = externalize(T_4_1, &T_4_2);
                if (err != ERR_ok) goto ex_1;
                err = ctl_ptsOPbp_add(T_4_2, STR_l, line);
                if (err != ERR_ok) goto ex_1;
                }
                }
            else {

  LINE(465);
                {
                func.num = arg.num;
                }

  LINE(466);
                {
                err = ctl_ptsOPbp_add(func, STR_f, CLU_0);
                if (err != ERR_ok) goto ex_1;
                }
                }}/* end if */
                goto end_1;
                ex_1:
                    if ((err == ERR_not_found)) {

  LINE(470);
                        {
                        CLUREF T_3_1;
                        err = stringOPconcat(arg, STR__040not_040found, &T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        err = streamOPputl(debugOPtyo, T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        }
                    }
                    else if ((err == ERR_error)) {
                    CLUREF why;
                    why.num = elist[0].num;

  LINE(472);
                        {
                        err = debugOPerr_out(why);
                        if (err != ERR_ok) goto ex_0;
                        }
                    }
                    else {
                        goto ex_0;
                    }
                end_1:;
        }
    }
    end_inline_for_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE break_cmd ****/

static int debugOPtrace_cmd_own_init = 0;

/**** BEGIN PROCEDURE trace_cmd ****/

errcode debugOPtrace_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF each_arg;
    CLUREF signame;
        if (debugOPtrace_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPtrace_cmd_own_init = 1;
    }
    enter_proc(477);

  LINE(479);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    err = stringOPsize(args, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {
        {
        err = debugOPerr_out(STR_missing_040argument);
        if (err != ERR_ok) goto ex_0;
        }
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(480);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(481);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
        T_1_2.num = arglist.array->ext_high; 
        T_1_3 = arglist;
        for (T_1_1.num = arglist.array->ext_low; T_1_1.num <= T_1_2.num; T_1_1.num++) {
            if (T_1_1.num > T_1_3.array->ext_high || T_1_1.num < T_1_3.array->ext_low) {
                err = ERR_failure;
                elist[0].str = array_bounds_exception_STRING;
                goto ex_0;}
            each_arg.num = T_1_3.array->store->data[T_1_1.num - T_1_3.array->ext_low + T_1_3.array->int_low];

  LINE(482);
            {
                {signame.num = each_arg.num;
                }
                }

  LINE(483);
            {
            err = ctl_ptsOPsig_add(signame);
            if (err != ERR_ok) goto ex_0;
            }
        }
    }
    end_inline_for_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE trace_cmd ****/

static int debugOPuntrace_cmd_own_init = 0;

/**** BEGIN PROCEDURE untrace_cmd ****/

errcode debugOPuntrace_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF arg;
        if (debugOPuntrace_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPuntrace_cmd_own_init = 1;
    }
    enter_proc(487);

  LINE(490);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    err = stringOPsize(args, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {
        {
        err = debugOPerr_out(STR_missing_040argument);
        if (err != ERR_ok) goto ex_0;
        }
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(491);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(492);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
        T_1_2.num = arglist.array->ext_high; 
        T_1_3 = arglist;
        for (T_1_1.num = arglist.array->ext_low; T_1_1.num <= T_1_2.num; T_1_1.num++) {
            if (T_1_1.num > T_1_3.array->ext_high || T_1_1.num < T_1_3.array->ext_low) {
                err = ERR_failure;
                elist[0].str = array_bounds_exception_STRING;
                goto ex_0;}
            arg.num = T_1_3.array->store->data[T_1_1.num - T_1_3.array->ext_low + T_1_3.array->int_low];

  LINE(493);
            {
            CLUREF T_2_1;
            T_2_1 = arg;
            arg.num = T_2_1.num;
            }

  LINE(494);
            {
            err = ctl_ptsOPsig_remove(arg);
            if (err != ERR_ok) goto ex_1;
            }
                goto end_1;
                ex_1:
                    if ((err == ERR_not_found)) {

  LINE(496);
                        {
                        CLUREF T_3_1;
                        CLUREF T_3_2;
                        err = stringOPconcat(STR__012, arg, &T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        err = stringOPconcat(T_3_1, STR__040not_040a_040traced_040signal_012, &T_3_2);
                        if (err != ERR_ok) goto ex_0;
                        err = streamOPputl(debugOPtyo, T_3_2);
                        if (err != ERR_ok) goto ex_0;
                        }
                    }
                    else {
                        goto ex_0;
                    }
                end_1:;
        }
    }
    end_inline_for_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE untrace_cmd ****/

static int debugOPstep_cmd_own_init = 0;

/**** BEGIN PROCEDURE step_cmd ****/

errcode debugOPstep_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF func;
    CLUREF arglist;
    CLUREF arg;
    CLUREF why;
        if (debugOPstep_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPstep_cmd_own_init = 1;
    }
    enter_proc(501);

  LINE(504);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    err = stringOPsize(args, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {
        {
        err = debugOPerr_out(STR_missing_040argument);
        if (err != ERR_ok) goto ex_0;
        }
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(506);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(507);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
        T_1_2.num = arglist.array->ext_high; 
        T_1_3 = arglist;
        for (T_1_1.num = arglist.array->ext_low; T_1_1.num <= T_1_2.num; T_1_1.num++) {
            if (T_1_1.num > T_1_3.array->ext_high || T_1_1.num < T_1_3.array->ext_low) {
                err = ERR_failure;
                elist[0].str = array_bounds_exception_STRING;
                goto ex_0;}
            arg.num = T_1_3.array->store->data[T_1_1.num - T_1_3.array->ext_low + T_1_3.array->int_low];

  LINE(508);
            {
            func.num = arg.num;
            }

  LINE(509);
            {
            err = ctl_ptsOPbp_add(func, STR_s, CLU_0);
            if (err != ERR_ok) goto ex_1;
            }
                goto end_1;
                ex_1:
                    if ((err == ERR_not_found)) {

  LINE(512);
                        {
                        CLUREF T_3_1;
                        err = stringOPconcat(arg, STR__040not_040found, &T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        err = streamOPputl(debugOPtyo, T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        }
                    }
                    else if ((err == ERR_error)) {
                    CLUREF why;
                    why.num = elist[0].num;

  LINE(514);
                        {
                        err = debugOPerr_out(why);
                        if (err != ERR_ok) goto ex_0;
                        }
                    }
                    else {
                        goto ex_0;
                    }
                end_1:;
        }
    }
    end_inline_for_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE step_cmd ****/

static int debugOPunstep_cmd_own_init = 0;

/**** BEGIN PROCEDURE unstep_cmd ****/

errcode debugOPunstep_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF func;
    CLUREF arglist;
    CLUREF arg;
    CLUREF why;
        if (debugOPunstep_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPunstep_cmd_own_init = 1;
    }
    enter_proc(519);

  LINE(522);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    err = stringOPsize(args, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {
        {
        err = debugOPerr_out(STR_missing_040argument);
        if (err != ERR_ok) goto ex_0;
        }
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(524);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(525);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
        T_1_2.num = arglist.array->ext_high; 
        T_1_3 = arglist;
        for (T_1_1.num = arglist.array->ext_low; T_1_1.num <= T_1_2.num; T_1_1.num++) {
            if (T_1_1.num > T_1_3.array->ext_high || T_1_1.num < T_1_3.array->ext_low) {
                err = ERR_failure;
                elist[0].str = array_bounds_exception_STRING;
                goto ex_0;}
            arg.num = T_1_3.array->store->data[T_1_1.num - T_1_3.array->ext_low + T_1_3.array->int_low];

  LINE(526);
            {
            func.num = arg.num;
            }

  LINE(527);
            {
            err = ctl_ptsOPbp_remove(func, STR_s, CLU_0);
            if (err != ERR_ok) goto ex_1;
            }
                goto end_1;
                ex_1:
                    if ((err == ERR_not_found)) {

  LINE(530);
                        {
                        CLUREF T_3_1;
                        err = stringOPconcat(arg, STR__040not_040found, &T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        err = streamOPputl(debugOPtyo, T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        }
                    }
                    else if ((err == ERR_error)) {
                    CLUREF why;
                    why.num = elist[0].num;

  LINE(532);
                        {
                        err = debugOPerr_out(why);
                        if (err != ERR_ok) goto ex_0;
                        }
                    }
                    else {
                        goto ex_0;
                    }
                end_1:;
        }
    }
    end_inline_for_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE unstep_cmd ****/

static int debugOPprint_cmd_own_init = 0;

/**** BEGIN PROCEDURE print_cmd ****/

errcode debugOPprint_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF each_arg;
    CLUREF dval;
        if (debugOPprint_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPprint_cmd_own_init = 1;
    }
    enter_proc(537);

  LINE(541);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    err = stringOPsize(args, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {
        {
        err = debugOPerr_out(STR_missing_040argument);
        if (err != ERR_ok) goto ex_0;
        }
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(542);
    {
        {CLUREF T_1_1;
        CLUREF T_1_2;
        err = slower(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        err = parse_line(T_1_1, &T_1_2);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_2.num;
        }
        }

  LINE(543);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
        T_1_2.num = arglist.array->ext_high; 
        T_1_3 = arglist;
        for (T_1_1.num = arglist.array->ext_low; T_1_1.num <= T_1_2.num; T_1_1.num++) {
            if (T_1_1.num > T_1_3.array->ext_high || T_1_1.num < T_1_3.array->ext_low) {
                err = ERR_failure;
                elist[0].str = array_bounds_exception_STRING;
                goto ex_0;}
            each_arg.num = T_1_3.array->store->data[T_1_1.num - T_1_3.array->ext_low + T_1_3.array->int_low];

  LINE(544);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            err = stringOPconcat(each_arg, STR__072_040, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            err = pstreamOPstart(debugOPpst_tyo, T_2_1, &T_2_2);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(546);
            {

  LINE(547);
                {
                    {CLUREF T_4_1;
                    err = dvarOPget_dexpr(each_arg, &T_4_1);
                    if (err != ERR_ok) goto ex_1;
                    dval.num = T_4_1.num;
                    }
                    }

  LINE(548);
                {
                CLUREF T_4_1;
                CLUREF T_4_2;
                err = debugOPeval_dexpr(dval, &T_4_1, &T_4_2);
                if (err != ERR_ok) goto ex_1;
                }
                }
                goto end_1;
                ex_1:
                    if ((err == ERR_not_found)) {

  LINE(551);
                        {
                        CLUREF T_4_1;
                        CLUREF T_4_2;
                        T_4_1.num = debugOPdisplay.vec->data[2];
                        T_4_2.num = debugOPdisplay.vec->data[1];
                        err = debugopprint_val(debugOPpst_tyo, T_4_1, T_4_2, each_arg);
                        if (err != ERR_ok) goto ex_2;
                        }
                            goto end_2;
                            ex_2:
                                if ((err == ERR_not_found)) {

  LINE(554);
                                    {
                                    CLUREF T_4_1;
                                    err = pstreamOPtext(debugOPpst_tyo, STR__077_077_077_040unknown_040variable, &T_4_1);
                                    if (err != ERR_ok) goto ex_0;
                                    }
                                }
                                else if ((err == ERR_not_possible)) {

  LINE(556);
                                    {
                                    CLUREF T_4_1;
                                    err = pstreamOPtext(debugOPpst_tyo, STR__077_077_077_040no_040print_040function, &T_4_1);
                                    if (err != ERR_ok) goto ex_0;
                                    }
                                }
                                else {
                                    goto ex_0;
                                }
                            end_2:;
                    }
                    else {
                        goto ex_0;
                    }
                end_1:;

  LINE(559);
            {
            CLUREF T_2_1;
            err = pstreamOPstop(debugOPpst_tyo, STR_, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(560);
            {
            CLUREF T_2_1;
            err = pstreamOPpause(debugOPpst_tyo, STR_, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            }
        }
    }
    end_inline_for_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE print_cmd ****/

static int debugOPwidth_cmd_own_init = 0;

/**** BEGIN PROCEDURE width_cmd ****/

errcode debugOPwidth_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
        if (debugOPwidth_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPwidth_cmd_own_init = 1;
    }
    enter_proc(564);

  LINE(565);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    err = stringOPsize(args, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {

  LINE(567);
        {
        CLUREF T_2_1;
        err = pstreamOPstart(debugOPpst_tyo, STR_width_072_040, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(568);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        err = pstreamOPget_max_width(debugOPpst_tyo, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        err = intOPunparse(T_2_1, &T_2_2);
        if (err != ERR_ok) goto ex_0;
        err = pstreamOPtext(debugOPpst_tyo, T_2_2, &T_2_3);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(569);
        {
        CLUREF T_2_1;
        err = pstreamOPstop(debugOPpst_tyo, STR_, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(570);
        {
        CLUREF T_2_1;
        err = pstreamOPpause(debugOPpst_tyo, STR_, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {

  LINE(572);
        {
            {CLUREF T_2_1;
            err = parse_line(args, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            arglist.num = T_2_1.num;
            }
            }

  LINE(573);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_1.num = arglist.array->ext_size;
        T_2_2.num = (T_2_1.num == 1)? true : false;
        T_2_3.num = T_2_2.num ^ 1;
        if (T_2_3.num == true) {

  LINE(574);
            {
            err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040width_040command_012);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(575);
            {
            {signal (ERR_ok);}}
            }
            }/* end if */

  LINE(577);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
            err = ERR_bounds;
            goto ex_0;}
        T_2_1.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
        err = intOPparse(T_2_1, &T_2_2);
        if (err != ERR_ok) goto ex_0;
        err = pstreamOPset_max_width(debugOPpst_tyo, T_2_2);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(578);
        {
        err = dbg_envOPdump();
        if (err != ERR_ok) goto ex_0;
        }
        }}/* end if */
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE width_cmd ****/

static int debugOPdepth_cmd_own_init = 0;

/**** BEGIN PROCEDURE depth_cmd ****/

errcode debugOPdepth_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
        if (debugOPdepth_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPdepth_cmd_own_init = 1;
    }
    enter_proc(582);

  LINE(583);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    err = stringOPsize(args, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {

  LINE(585);
        {
        CLUREF T_2_1;
        err = pstreamOPstart(debugOPpst_tyo, STR_depth_072_040, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(586);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        err = pstreamOPget_max_depth(debugOPpst_tyo, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        err = intOPunparse(T_2_1, &T_2_2);
        if (err != ERR_ok) goto ex_0;
        err = pstreamOPtext(debugOPpst_tyo, T_2_2, &T_2_3);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(587);
        {
        CLUREF T_2_1;
        err = pstreamOPstop(debugOPpst_tyo, STR_, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(588);
        {
        CLUREF T_2_1;
        err = pstreamOPpause(debugOPpst_tyo, STR_, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {

  LINE(590);
        {
            {CLUREF T_2_1;
            err = parse_line(args, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            arglist.num = T_2_1.num;
            }
            }

  LINE(591);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_1.num = arglist.array->ext_size;
        T_2_2.num = (T_2_1.num == 1)? true : false;
        T_2_3.num = T_2_2.num ^ 1;
        if (T_2_3.num == true) {

  LINE(592);
            {
            err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040depth_040command_012);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(593);
            {
            {signal (ERR_ok);}}
            }
            }/* end if */

  LINE(595);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
            err = ERR_bounds;
            goto ex_0;}
        T_2_1.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
        err = intOPparse(T_2_1, &T_2_2);
        if (err != ERR_ok) goto ex_0;
        err = pstreamOPset_max_depth(debugOPpst_tyo, T_2_2);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(596);
        {
        err = dbg_envOPdump();
        if (err != ERR_ok) goto ex_0;
        }
        }}/* end if */
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE depth_cmd ****/

static int debugOPalias_cmd_own_init = 0;

/**** BEGIN PROCEDURE alias_cmd ****/

errcode debugOPalias_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
        if (debugOPalias_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPalias_cmd_own_init = 1;
    }
    enter_proc(600);

  LINE(601);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(602);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {

  LINE(603);
        {
        err = aliasOPshow_alias(STR_all);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {
    CLUREF T_1_3;
    CLUREF T_1_4;
    T_1_3.num = arglist.array->ext_size;
    T_1_4.num = (T_1_3.num == 1)? true : false;
    if (T_1_4.num == true) {

  LINE(605);
        {
        CLUREF T_2_1;
        if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
            err = ERR_bounds;
            goto ex_0;}
        T_2_1.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
        err = aliasOPshow_alias(T_2_1);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {

  LINE(606);
        {
        err = aliasOPadd_alias(args, arglist);
        if (err != ERR_ok) goto ex_0;
        }
        }}}/* end if */
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE alias_cmd ****/

static int debugOPunalias_cmd_own_init = 0;

/**** BEGIN PROCEDURE unalias_cmd ****/

errcode debugOPunalias_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
        if (debugOPunalias_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPunalias_cmd_own_init = 1;
    }
    enter_proc(610);

  LINE(611);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(612);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {

  LINE(613);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040few_040arguments_040to_040unalias_040command_012);
        if (err != ERR_ok) goto ex_0;
        }
        }
        }/* end if */

  LINE(615);
    {
    err = aliasOPremove_alias(arglist);
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE unalias_cmd ****/

static int debugOPexecute_cmd_own_init = 0;

/**** BEGIN PROCEDURE execute_cmd ****/

errcode debugOPexecute_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF fn;
    CLUREF st;
    CLUREF npstr;
    CLUREF line;
        if (debugOPexecute_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPexecute_cmd_own_init = 1;
    }
    enter_proc(618);

  LINE(619);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(620);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {

  LINE(621);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040few_040arguments_040to_040execute_040command_012);
        if (err != ERR_ok) goto ex_0;
        }
        }
        }/* end if */

  LINE(623);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num > 1)? true : false;
    if (T_1_2.num == true) {

  LINE(624);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040execute_040command_012);
        if (err != ERR_ok) goto ex_0;
        }
        }
        }/* end if */

  LINE(626);
    {
        {CLUREF T_2_1;
        CLUREF T_2_2;
        if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
            err = ERR_bounds;
            goto ex_1;}
        T_2_1.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
        err = file_nameOPparse(T_2_1, &T_2_2);
        if (err != ERR_ok) goto ex_1;
        fn.num = T_2_2.num;
        }
        }
        goto end_1;
        ex_1:
            if ((err == ERR_bad_format)) {

  LINE(628);
                {
                CLUREF T_2_1;
                CLUREF T_2_2;
                if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
                    err = ERR_bounds;
                    goto ex_0;}
                T_2_1.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
                err = stringOPconcat(STR_can_047t_040parse_040file_040name_040, T_2_1, &T_2_2);
                if (err != ERR_ok) goto ex_0;
                err = debugOPerr_out(T_2_2);
                if (err != ERR_ok) goto ex_0;
                }

  LINE(629);
                {
                {signal (ERR_ok);}}
            }
            else {
                goto ex_0;
            }
        end_1:;

  LINE(631);
    {
        {CLUREF T_2_1;
        err = streamOPopen(fn, STR_read, &T_2_1);
        if (err != ERR_ok) goto ex_2;
        st.num = T_2_1.num;
        }
        }
        goto end_2;
        ex_2:
            if ((err == ERR_not_possible)) {
            CLUREF npstr;
            npstr.num = elist[0].num;

  LINE(633);
                {
                CLUREF T_2_1;
                CLUREF T_2_2;
                CLUREF T_2_3;
                CLUREF T_2_4;
                if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
                    err = ERR_bounds;
                    goto ex_0;}
                T_2_1.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
                err = stringOPconcat(STR_can_047t_040open_040file_040name_040, T_2_1, &T_2_2);
                if (err != ERR_ok) goto ex_0;
                err = stringOPconcat(T_2_2, STR__072_040, &T_2_3);
                if (err != ERR_ok) goto ex_0;
                err = stringOPconcat(T_2_3, npstr, &T_2_4);
                if (err != ERR_ok) goto ex_0;
                err = debugOPerr_out(T_2_4);
                if (err != ERR_ok) goto ex_0;
                }

  LINE(635);
                {
                {signal (ERR_ok);}}
            }
            else {
                goto ex_0;
            }
        end_2:;

  LINE(637);
    for (;;) {
        if (true != true) { break; }

  LINE(638);
        {
            {CLUREF T_3_1;
            err = streamOPgetl(st, &T_3_1);
            if (err != ERR_ok) goto ex_3;
            line.num = T_3_1.num;
            }
            }

  LINE(639);
        {
        err = streamOPputl(debugOPtyo, line);
        if (err != ERR_ok) goto ex_3;
        }

  LINE(640);
        {
        CLUREF T_3_1;
        err = strip_blanks(line, &T_3_1);
        if (err != ERR_ok) goto ex_3;
        line.num = T_3_1.num;
        }

  LINE(641);
        {
        CLUREF T_3_1;
        err = stringOPempty(line, &T_3_1);
        if (err != ERR_ok) goto ex_3;
        if (T_3_1.num == true) {
            continue;
            }
            }/* end if */

  LINE(642);
        {
        CLUREF T_3_1;
        CLUREF T_3_2;
        CLUREF T_3_3;
        CLUREF T_3_4;
        CLUREF T_3_5;
        CLUREF T_3_6;
        CLUREF T_3_7;
        err = stringOPfetch(line, CLU_1, &T_3_2);
        if (err != ERR_ok) goto ex_3;
        T_3_3.ch = '%';
        T_3_4.num = (T_3_2.ch == T_3_3.ch)? true : false;
        T_3_1.num = T_3_4.num;
        if (!T_3_4.num) {
            err = stringOPfetch(line, CLU_1, &T_3_5);
            if (err != ERR_ok) goto ex_3;
            T_3_6.ch = '#';
            T_3_7.num = (T_3_5.ch == T_3_6.ch)? true : false;
            T_3_1.num = T_3_7.num;
        }
        if (T_3_1.num == true) {
            continue;
            }
            }/* end if */

  LINE(643);
        {
        err = debugOPprocess_commands(line);
        if (err != ERR_ok) goto ex_4;
        }
            goto end_4;
            ex_4:
                if ((err == ERR_cont)) {

  LINE(645);
                    {
                    err = debugOPerr_out(STR_run_057continue_040not_040supported_040in_040command_040file);
                    if (err != ERR_ok) goto ex_3;
                    }
                }
                else {
                    goto ex_3;
                }
            end_4:;
        }
        end_while_1:;
        goto end_3;
        ex_3:
            if ((err == ERR_end_of_file)) {

  LINE(648);
                {
                {signal (ERR_ok);}}
            }
            else {
                goto ex_0;
            }
        end_3:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE execute_cmd ****/

static int debugOPeval_cmd_own_init = 0;

/**** BEGIN PROCEDURE eval_cmd ****/

errcode debugOPeval_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF e;
    CLUREF np_str;
        if (debugOPeval_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPeval_cmd_own_init = 1;
    }
    enter_proc(651);

  LINE(652);
    {

  LINE(654);
        {
        CLUREF T_3_1;
        CLUREF T_3_2;
        err = pc_slower(args, &T_3_1);
        if (err != ERR_ok) goto ex_1;
        err = aliasOPexpand_alias(T_3_1, &T_3_2);
        if (err != ERR_ok) goto ex_1;
        args.num = T_3_2.num;
        }

  LINE(656);
        {
            {CLUREF T_4_1;
            err = dparse(args, &T_4_1);
            if (err != ERR_ok) goto ex_2;
            e.num = T_4_1.num;
            }
            }
            goto end_2;
            ex_2:
                {

  LINE(658);
                    {
                    err = debugOPerr_out(STR_error_040in_040parsing);
                    if (err != ERR_ok) goto ex_1;
                    }

  LINE(659);
                    {
                    {signal (ERR_ok);}}
                }
            end_2:;

  LINE(660);
        {
        CLUREF T_3_1;
        CLUREF T_3_2;
        err = debugOPeval_dexpr(e, &T_3_1, &T_3_2);
        if (err != ERR_ok) goto ex_1;
        }
        }
        goto end_1;
        ex_1:
            if ((err == ERR_not_possible)) {
            CLUREF np_str;
            np_str.num = elist[0].num;

  LINE(663);
                {
                err = debugOPerr_out(np_str);
                if (err != ERR_ok) goto ex_0;
                }
            }
            else if (errcmp(err, "ERR_too_many")) {

  LINE(665);
                {
                err = debugOPerr_out(STR_possible_040alias_040loop);
                if (err != ERR_ok) goto ex_0;
                }
            }
            else {

  LINE(667);
                {
                err = debugOPerr_out(STR_evaluation_040aborted);
                if (err != ERR_ok) goto ex_0;
                }
            }
        end_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE eval_cmd ****/

extern errcode debugOPeval_dexpr_IB_1();
static int debugOPeval_dexpr_own_init = 0;

/**** BEGIN PROCEDURE eval_dexpr ****/

errcode debugOPeval_dexpr(e, ret_1, ret_2)
CLUREF e;
CLUREF *ret_1;
CLUREF *ret_2;
    {
    struct {
        errcode err;
        errcode ecode2;
        CLUREF es;
        CLUREF signame;
        CLUREF sig;
        CLUREF x;
        CLUREF i;
        CLUREF c;
        CLUREF b;
        CLUREF ch;
        CLUREF s;
        CLUREF r;
        CLUREF od;
        CLUREF a;
        CLUREF e;
        } locals;
    locals.e = e;
        if (debugOPeval_dexpr_own_init == 0) {
        if (debug_own_init == 0) {
            locals.err = debug_own_init_proc();
            if (locals.err != ERR_ok) goto ex_0;
            }
        debugOPeval_dexpr_own_init = 1;
    }
    enter_proc(751);

  LINE(752);
    {
        {CLUREF T_1_1;
        locals.err = estackOPcreate(&T_1_1);
        if (locals.err != ERR_ok) goto ex_0;
        locals.es.num = T_1_1.num;
        }
        }

  LINE(753);
    {
        {locals.signame = STR_;
        }
        }

  LINE(754);
    {
    locals.err = debugOPeval(locals.e, locals.es);
    if (locals.err != ERR_ok) goto ex_2;
    }
    goto end_2;
    ex_2:
        if (locals.err == ERR_not_possible) {signal(ERR_not_possible);}
        else {
            goto ex_1;}
    end_2:;
        goto end_1;
        ex_1:
            if (errcmp(locals.err, "ERR_signalling")) {
            CLUREF sig;
            locals.sig.num = elist[0].num;

  LINE(757);
                {
                locals.signame.num = locals.sig.num;
                }

  LINE(758);
                {
                CLUREF T_2_1;
                locals.err = pstreamOPstart(debugOPpst_tyo, STR_Signal_072_040, &T_2_1);
                if (locals.err != ERR_ok) goto ex_0;
                }

  LINE(759);
                {
                CLUREF T_2_1;
                locals.err = pstreamOPtext(debugOPpst_tyo, locals.sig, &T_2_1);
                if (locals.err != ERR_ok) goto ex_0;
                }

  LINE(760);
                {
                CLUREF T_2_1;
                locals.err = pstreamOPstop(debugOPpst_tyo, STR_, &T_2_1);
                if (locals.err != ERR_ok) goto ex_0;
                }

  LINE(761);
                {
                CLUREF T_2_1;
                locals.err = pstreamOPpause(debugOPpst_tyo, STR_, &T_2_1);
                if (locals.err != ERR_ok) goto ex_0;
                }
            }
            else {
                goto ex_0;
            }
        end_1:;

  LINE(766);
    {
        locals.err = estackOPelements(locals.es, debugOPeval_dexpr_IB_1, &locals, &locals.ecode2);
        if (locals.err == ERR_iterbodyreturn) {
        ret_1->num = elist[0].num;
        ret_2->num = elist[1].num;
        signal(ERR_ok);}
        if (locals.err == ERR_iterbodysignal) {signal(locals.ecode2);}
        if (locals.err == ERR_break) locals.err = ERR_ok;
        if (locals.err == ERR_iterbodyexit) locals.err = locals.ecode2;
        if (locals.err != ERR_ok) goto ex_0;
        }

  LINE(816);
    {
    {
    ret_1->num = locals.signame.num;
    }
    {
    ret_2->num = locals.es.num;
    }
    {signal (ERR_ok);}}
    goto end_0;
    ex_0:
        {
            if (locals.err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(locals.err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE eval_dexpr ****/


/**** BEGIN ITERATOR BODIES for eval_dexpr ****/

errcode debugOPeval_dexpr_IB_1(iv_1, locals, iecode)
errcode *iecode;
CLUREF iv_1;
struct {
    errcode err;
    errcode ecode2;
    CLUREF es;
    CLUREF signame;
    CLUREF sig;
    CLUREF x;
    CLUREF i;
    CLUREF c;
    CLUREF b;
    CLUREF ch;
    CLUREF s;
    CLUREF r;
    CLUREF od;
    CLUREF a;
    CLUREF e;
    } *locals;
{
    locals->x.num = iv_1.num;
    enter_iter_body_proc(774);

  FB_LINE(769);
    {
    switch (locals->x.cell->tag) {
    case 6: 
         {CLUREF T_2_1;
        T_2_1.num = locals->x.cell->value;
        locals->i.num = T_2_1.num;

  FB_LINE(771);
            {
            CLUREF T_3_1;
            locals->err = dvarOPget_dexpr(locals->i, &T_3_1);
            if (locals->err != ERR_ok) goto ex_1;
            locals->x.num = T_3_1.num;
            }
            break;
            }
    default: {
    }
    }
    }
        goto end_1;
        ex_1:
            if ((locals->err == ERR_not_found)) {
            }
            else {
                goto ex_0;
            }
        end_1:;

  FB_LINE(776);
    {
    switch (locals->x.cell->tag) {
    case 4: 
         {CLUREF T_1_1;
        T_1_1.num = locals->x.cell->value;
        locals->c.num = T_1_1.num;

  FB_LINE(778);
            {
            CLUREF T_2_1;
            locals->err = pstreamOPstart(debugOPpst_tyo, STR__072_040, &T_2_1);
            if (locals->err != ERR_ok) goto ex_0;
            }

  FB_LINE(779);
            {
            switch (locals->c.cell->tag) {
            case 3: 
                 {CLUREF T_2_1;
                T_2_1.num = locals->c.cell->value;
                locals->i.num = T_2_1.num;

  FB_LINE(781);
                    {
                    locals->err = intOPprint(locals->i, debugOPpst_tyo);
                    if (locals->err != ERR_ok) goto ex_0;
                    }
                    break;
                    }
            case 1: 
                 {CLUREF T_2_2;
                T_2_2.num = locals->c.cell->value;
                locals->b.num = T_2_2.num;

  FB_LINE(783);
                    {
                    locals->err = boolOPprint(locals->b, debugOPpst_tyo);
                    if (locals->err != ERR_ok) goto ex_0;
                    }
                    break;
                    }
            case 4: 
                 {

  FB_LINE(785);
                    {
                    locals->err = nullOPprint(CLU_0, debugOPpst_tyo);
                    if (locals->err != ERR_ok) goto ex_0;
                    }
                    break;
                    }
            case 2: 
                 {CLUREF T_2_3;
                T_2_3.num = locals->c.cell->value;
                locals->ch.num = T_2_3.num;

  FB_LINE(787);
                    {
                    locals->err = charOPprint(locals->ch, debugOPpst_tyo);
                    if (locals->err != ERR_ok) goto ex_0;
                    }
                    break;
                    }
            case 6: 
                 {CLUREF T_2_4;
                T_2_4.num = locals->c.cell->value;
                locals->s.num = T_2_4.num;

  FB_LINE(789);
                    {
                    locals->err = stringOPprint(locals->s, debugOPpst_tyo);
                    if (locals->err != ERR_ok) goto ex_0;
                    }
                    break;
                    }
            case 5: 
                 {CLUREF T_2_5;
                T_2_5.num = locals->c.cell->value;
                locals->r.num = T_2_5.num;

  FB_LINE(791);
                    {
                    locals->err = realOPprint(locals->r, debugOPpst_tyo);
                    if (locals->err != ERR_ok) goto ex_0;
                    }
                    break;
                    }
            }
            }

  FB_LINE(793);
            {
            CLUREF T_2_1;
            locals->err = pstreamOPstop(debugOPpst_tyo, STR_, &T_2_1);
            if (locals->err != ERR_ok) goto ex_0;
            }

  FB_LINE(794);
            {
            CLUREF T_2_1;
            locals->err = pstreamOPpause(debugOPpst_tyo, STR_, &T_2_1);
            if (locals->err != ERR_ok) goto ex_0;
            }
            break;
            }
    case 6: 
         {CLUREF T_1_2;
        T_1_2.num = locals->x.cell->value;
        locals->i.num = T_1_2.num;

  FB_LINE(796);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            locals->err = stringOPconcat(locals->i, STR__072_040, &T_2_1);
            if (locals->err != ERR_ok) goto ex_0;
            locals->err = pstreamOPstart(debugOPpst_tyo, T_2_1, &T_2_2);
            if (locals->err != ERR_ok) goto ex_0;
            }

  FB_LINE(797);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            T_3_1.num = debugOPdisplay.vec->data[2];
            T_3_2.num = debugOPdisplay.vec->data[1];
            locals->err = debugopprint_val(debugOPpst_tyo, T_3_1, T_3_2, locals->i);
            if (locals->err != ERR_ok) goto ex_2;
            }
                goto end_2;
                ex_2:
                    if ((locals->err == ERR_not_found)) {

  FB_LINE(800);
                        {
                        CLUREF T_3_1;
                        locals->err = pstreamOPtext(debugOPpst_tyo, STR__077_077_077_040unknown_040variable, &T_3_1);
                        if (locals->err != ERR_ok) goto ex_0;
                        }
                    }
                    else if ((locals->err == ERR_not_possible)) {

  FB_LINE(802);
                        {
                        CLUREF T_3_1;
                        locals->err = pstreamOPtext(debugOPpst_tyo, STR__077_077_077_040no_040print_040function, &T_3_1);
                        if (locals->err != ERR_ok) goto ex_0;
                        }
                    }
                    else {
                        goto ex_0;
                    }
                end_2:;

  FB_LINE(804);
            {
            CLUREF T_2_1;
            locals->err = pstreamOPstop(debugOPpst_tyo, STR_, &T_2_1);
            if (locals->err != ERR_ok) goto ex_0;
            }

  FB_LINE(805);
            {
            CLUREF T_2_1;
            locals->err = pstreamOPpause(debugOPpst_tyo, STR_, &T_2_1);
            if (locals->err != ERR_ok) goto ex_0;
            }
            break;
            }
    case 9: 
         {CLUREF T_1_3;
        T_1_3.num = locals->x.cell->value;
        locals->od.num = T_1_3.num;

  FB_LINE(807);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            T_2_1.num = locals->od.vec->data[1];
            T_2_2.num = locals->od.vec->data[0];
            locals->err = print_result(debugOPpst_tyo, T_2_1, T_2_2);
            if (locals->err != ERR_ok) goto ex_0;
            }
            break;
            }
    case 1: 
         {CLUREF T_1_4;
        T_1_4.num = locals->x.cell->value;
        locals->a.num = T_1_4.num;

  FB_LINE(809);
            {
            locals->err = logit(STR_acons_072_040eval_137dexpr);
            if (locals->err != ERR_ok) goto ex_0;
            }
            break;
            }
    case 10: 
         {CLUREF T_1_5;
        T_1_5.num = locals->x.cell->value;
        locals->s.num = T_1_5.num;

  FB_LINE(811);
            {
            locals->err = logit(STR_scons_072_040eval_137dexpr);
            if (locals->err != ERR_ok) goto ex_0;
            }
            break;
            }
    default: {

  FB_LINE(813);
        {
        locals->err = logit(STR_others_072_040eval_137dexpr);
        if (locals->err != ERR_ok) goto ex_0;
        }
    }
    }
    }
    {signal(ERR_ok);}
    ex_0:
        {
            *iecode = locals->err;
            {signal(ERR_iterbodyexit);}}
    end_0: {signal(ERR_ok);}
    }/* end debugOPeval_dexpr_IB_1 */

/**** END ITERATOR BODIES for eval_dexpr ****/

struct OPS *_tagcell_of__obj_table;
struct OPS *_tagcell_of__obj_ops;
struct OPS *_tagcell_of__obj_ops;
OWNPTR _tagcell_of__obj_owns;
static int debugOPeval_own_init = 0;

/**** BEGIN PROCEDURE eval ****/

errcode debugOPeval(e, es)
CLUREF e;
CLUREF es;
    {
    errcode err;
    errcode ecode2;
    CLUREF a;
    CLUREF each_dexpr;
    CLUREF o;
    CLUREF exists;
    CLUREF arg1;
    CLUREF argcount;
    CLUREF is_iter;
    CLUREF is_sel;
    CLUREF valops;
    CLUREF valcount;
    CLUREF addr;
    CLUREF sigds;
    CLUREF tops;
    CLUREF oops;
    CLUREF info;
    CLUREF loc;
    CLUREF typ;
    CLUREF opnm;
    CLUREF nm;
    CLUREF alt_op;
    CLUREF arg1nm;
    CLUREF arg1val;
    CLUREF i;
    CLUREF d;
    CLUREF each_f;
    CLUREF opsaddr;
    CLUREF jj;
    CLUREF pref;
    CLUREF s;
    CLUREF t;
    CLUREF j;
    CLUREF saved_current_module;
    CLUREF signm;
    CLUREF sd;
    CLUREF sz;
    CLUREF sigvalops;
    CLUREF ithops;
    CLUREF ops_name;
    CLUREF start;
    CLUREF ao;
    CLUREF each_val;
    CLUREF opers;
    CLUREF reqs;
    CLUREF ownreqs;
    CLUREF r;
    CLUREF each_d;
    CLUREF v;
    CLUREF tagc;
    CLUREF c;
        if (debugOPeval_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPeval_own_init = 1;
    }
    enter_proc(819);

  LINE(820);
    {
    switch (e.cell->tag) {
    case 3: 
         {CLUREF T_1_1;
        T_1_1.num = e.cell->value;
        a.num = T_1_1.num;

  LINE(822);
            {
            CLUREF T_4_1;
            CLUREF T_4_2;
            CLUREF T_4_3;
            CLUREF T_4_4;
            CLUREF T_4_5;
                T_4_1.num = a.vec->data[1];
                T_4_2.num = T_4_1.num;
                T_4_4.num = T_4_2.vec->size; 
                T_4_5 = T_4_2;
                for (T_4_3.num = 1; T_4_3.num <= T_4_4.num; T_4_3.num++) {
                    each_dexpr.num = T_4_5.vec->data[T_4_3.num - 1];

  LINE(823);
                    {
                    err = debugOPeval(each_dexpr, es);
                    if (err != ERR_ok) goto ex_2;
                    }
                }
            }
            end_inline_for_1:;
            goto end_2;
            ex_2:
                if (errcmp(err, "ERR_signalling")) {signal("ERR_signalling");}
                else {
                    goto ex_1;}
            end_2:;
            goto end_1;
            ex_1:
                if (err == ERR_not_possible) {signal(ERR_not_possible);}
                else {
                    goto ex_0;}
            end_1:;

  LINE(827);
            {
            CLUREF T_4_1;
            CLUREF T_4_2;
            CLUREF T_4_3;
            CLUREF T_4_4;
            CLUREF T_4_5;
                T_4_1.num = a.vec->data[0];
                T_4_2.num = T_4_1.num;
                T_4_4.num = T_4_2.vec->size; 
                T_4_5 = T_4_2;
                for (T_4_3.num = 1; T_4_3.num <= T_4_4.num; T_4_3.num++) {
                    each_dexpr.num = T_4_5.vec->data[T_4_3.num - 1];

  LINE(828);
                    {
                    err = debugOPeval(each_dexpr, es);
                    if (err != ERR_ok) goto ex_4;
                    }
                }
            }
            end_inline_for_2:;
            goto end_4;
            ex_4:
                if (errcmp(err, "ERR_signalling")) {signal("ERR_signalling");}
                else {
                    goto ex_3;}
            end_4:;
            goto end_3;
            ex_3:
                if (err == ERR_not_possible) {signal(ERR_not_possible);}
                else {
                    goto ex_0;}
            end_3:;

  LINE(832);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            T_2_1.num = a.vec->data[0];
            T_2_2.num = T_2_1.num;
            T_2_3.num = T_2_2.vec->size;
            err = debugOPeval_assn(es, T_2_3);
            if (err != ERR_ok) goto ex_0;
            }
            break;
            }
    case 2: 
         {CLUREF T_1_2;
        T_1_2.num = e.cell->value;
        o.num = T_1_2.num;

  LINE(834);
            {
            CLUREF T_4_1;
            CLUREF T_4_2;
            CLUREF T_4_3;
            CLUREF T_4_4;
            CLUREF T_4_5;
                T_4_1.num = o.vec->data[0];
                T_4_2.num = T_4_1.num;
                T_4_4.num = T_4_2.vec->size; 
                T_4_5 = T_4_2;
                for (T_4_3.num = 1; T_4_3.num <= T_4_4.num; T_4_3.num++) {
                    each_dexpr.num = T_4_5.vec->data[T_4_3.num - 1];

  LINE(835);
                    {
                    err = debugOPeval(each_dexpr, es);
                    if (err != ERR_ok) goto ex_6;
                    }
                }
            }
            end_inline_for_3:;
            goto end_6;
            ex_6:
                if (errcmp(err, "ERR_signalling")) {signal("ERR_signalling");}
                else {
                    goto ex_5;}
            end_6:;
            goto end_5;
            ex_5:
                if (err == ERR_not_possible) {signal(ERR_not_possible);}
                else {
                    goto ex_0;}
            end_5:;

  LINE(839);
            {
                {exists.tf = true;
                }
                }

  LINE(840);
            {
                {CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                T_3_1.num = o.vec->data[0];
                T_3_2.num = T_3_1.num;
                if (1 < 1 || 1 > T_3_2.vec->size ) {
                    err = ERR_bounds;
                    goto ex_7;}
                T_3_3.num = T_3_2.vec->data[1 - 1];
                arg1.num = T_3_3.num;
                }
                }
                goto end_7;
                ex_7:
                    if ((err == ERR_bounds)) {

  LINE(842);
                        {
                        exists.tf = false;
                        }

  LINE(843);
                        {
                        CLUREF T_3_1;
                        CellAlloc(8, nil, T_3_1);
                        arg1.num = T_3_1.num;
                        }
                    }
                    else {
                        goto ex_0;
                    }
                end_7:;

  LINE(845);
            {
            err = debugOPfixup_rep(o, exists, arg1);
            if (err != ERR_ok) goto ex_8;
            }
            goto end_8;
            ex_8:
                if (err == ERR_not_possible) {signal(ERR_not_possible);}
                else {
                    goto ex_0;}
            end_8:;

  LINE(857);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            T_2_1.num = o.vec->data[1];
            err = debugOPis_regular_apply(T_2_1, &T_2_2);
            if (err != ERR_ok) goto ex_0;
            if (T_2_2.num == true) {

  LINE(859);
                {
                CLUREF T_4_1;
                CLUREF T_4_2;
                T_4_1.num = o.vec->data[1];
                err = debugOPfind_rtn_info(T_4_1, &T_4_2);
                if (err != ERR_ok) goto ex_9;
                info.num = T_4_2.num;
                }
                goto end_9;
                ex_9:
                    if (err == ERR_not_possible) {signal(ERR_not_possible);}
                    else {
                        goto ex_0;}
                end_9:;

  LINE(861);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                CLUREF T_3_4;
                T_3_1.num = o.vec->data[3];
                T_3_2.num = o.vec->data[2];
                err = inst_from_info(info, T_3_1, T_3_2, &T_3_3, &T_3_4);
                if (err != ERR_ok) goto ex_0;
                tops.num = T_3_3.num;
                oops.num = T_3_4.num;
                }

  LINE(862);
                {
                CLUREF T_3_1;
                T_3_1.num = info.vec->data[5];
                argcount.num = T_3_1.num;
                }

  LINE(863);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                T_3_1.num = o.vec->data[0];
                T_3_2.num = T_3_1.vec->size;
                T_3_3.num = (argcount.num > T_3_2.num)? true : false;
                if (T_3_3.num == true) {
                    {
                    elist[0] = STR_too_040few_040arguments;
                    {signal (ERR_not_possible);}}
                    }
                    }/* end if */

  LINE(864);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                T_3_1.num = o.vec->data[0];
                T_3_2.num = T_3_1.vec->size;
                T_3_3.num = (argcount.num < T_3_2.num)? true : false;
                if (T_3_3.num == true) {
                    {
                    elist[0] = STR_too_040many_040arguments;
                    {signal (ERR_not_possible);}}
                    }
                    }/* end if */

  LINE(865);
                {
                CLUREF T_3_1;
                T_3_1.num = info.vec->data[2];
                is_iter.num = T_3_1.num;
                }

  LINE(866);
                {
                is_sel.tf = false;
                }

  LINE(867);
                {
                CLUREF T_3_1;
                T_3_1.num = info.vec->data[6];
                valops.num = T_3_1.num;
                }

  LINE(868);
                {
                CLUREF T_3_1;
                T_3_1.num = valops.vec->size;
                valcount.num = T_3_1.num;
                }

  LINE(869);
                {
                CLUREF T_3_1;
                T_3_1.num = info.vec->data[4];
                addr.num = T_3_1.num;
                }

  LINE(870);
                {
                CLUREF T_3_1;
                T_3_1.num = info.vec->data[7];
                sigds.num = T_3_1.num;
                }
                }
            else {

  LINE(873);
                {
                    {CLUREF T_3_1;
                    CLUREF T_3_2;
                    CLUREF T_3_3;
                    T_3_1.ch = '$';
                    T_3_2.num = o.vec->data[1];
                    err = stringOPindexc(T_3_1, T_3_2, &T_3_3);
                    if (err != ERR_ok) goto ex_0;
                    loc.num = T_3_3.num;
                    }
                    }

  LINE(874);
                {
                    {CLUREF T_3_1;
                    CLUREF T_3_2;
                    CLUREF T_3_3;
                    T_3_1.num = o.vec->data[1];
                    T_3_2.num = loc.num - 1;
                     if ((T_3_2.num >= 0 && loc.num < 0 && (-1) < 0) || 
                         (T_3_2.num <= 0 && loc.num > 0 && (-1) > 0)) {
                        err = ERR_overflow;
                        goto ex_0;}
                    err = stringOPsubstr(T_3_1, CLU_1, T_3_2, &T_3_3);
                    if (err != ERR_ok) goto ex_0;
                    typ.num = T_3_3.num;
                    }
                    }

  LINE(875);
                {
                    {CLUREF T_3_1;
                    CLUREF T_3_2;
                    CLUREF T_3_3;
                    T_3_1.num = o.vec->data[1];
                    T_3_2.num = loc.num + 1;
                     if ((T_3_2.num > 0 && loc.num < 0 && 1 < 0) || 
                         (T_3_2.num < 0 && loc.num > 0 && 1 > 0)) {
                        err = ERR_overflow;
                        goto ex_0;}
                    err = stringOPrest(T_3_1, T_3_2, &T_3_3);
                    if (err != ERR_ok) goto ex_0;
                    opnm.num = T_3_3.num;
                    }
                    }

  LINE(878);
                {
                CLUREF T_3_1;
                T_3_1.num = ((typ.str->size != STR_rep.str->size)? false :
                    !(bcmp(typ.str->data, STR_rep.str->data, typ.str->size)));
                if (T_3_1.num == true) {

  LINE(880);
                    {
                        {CLUREF T_4_1;
                        if (arg1.cell->tag != 6) {err = ERR_wrong_tag; goto ex_0;}
                        T_4_1.num = arg1.cell->value;
                        arg1nm.num = T_4_1.num;
                        }
                        }

  LINE(882);
                    {

  LINE(883);
                        {
                        CLUREF T_6_1;
                        err = dvarOPget_dexpr(arg1nm, &T_6_1);
                        if (err != ERR_ok) goto ex_10;
                        arg1.num = T_6_1.num;
                        }

  LINE(884);
                        {
                        CLUREF T_6_1;
                        CLUREF T_6_2;
                        if (arg1.cell->tag != 9) {err = ERR_wrong_tag; goto ex_10;}
                        T_6_1.num = arg1.cell->value;
                        T_6_2.num = T_6_1.vec->data[1];
                        arg1val.num = T_6_2.num;
                        }

  LINE(885);
                        {
                        CLUREF T_6_1;
                        CLUREF T_6_2;
                        CLUREF T_6_3;
                        if (arg1.cell->tag != 9) {err = ERR_wrong_tag; goto ex_10;}
                        T_6_1.num = arg1.cell->value;
                        T_6_2.num = T_6_1.vec->data[0];
                        T_6_3.num = T_6_2.num;
                        tops.num = T_6_3.num;
                        }
                        }
                        goto end_10;
                        ex_10:
                            if ((err == ERR_not_found)) {

  LINE(888);
                                {
                                CLUREF T_5_1;
                                CLUREF T_5_2;
                                CLUREF T_5_3;
                                CLUREF T_5_4;
                                T_5_1.num = debugOPdisplay.vec->data[2];
                                T_5_2.num = debugOPdisplay.vec->data[1];
                                err = debugopnm2val_ops(T_5_1, T_5_2, arg1nm, &T_5_3, &T_5_4);
                                if (err != ERR_ok) goto ex_0;
                                arg1val.num = T_5_3.num;
                                tops.num = T_5_4.num;
                                }
                            }
                            else {
                                goto ex_0;
                            }
                        end_10:;

  LINE(892);
                    {
                    CLUREF T_5_1;
                    CLUREF T_5_2;
                    CLUREF T_5_3;
                    CLUREF T_5_4;
                    err = rep_find_valops(opnm, tops, &T_5_1, &T_5_2, &T_5_3, &T_5_4);
                    if (err != ERR_ok) goto ex_11;
                    typ.num = T_5_1.num;
                    valcount.num = T_5_2.num;
                    valops.num = T_5_3.num;
                    alt_op.num = T_5_4.num;
                    }
                        goto end_11;
                        ex_11:
                            if ((err == ERR_not_found)) {

  LINE(895);
                                {
                                CLUREF T_5_1;
                                CLUREF T_5_2;
                                err = stringOPconcat(STR_operation_040_076_076_040, opnm, &T_5_1);
                                if (err != ERR_ok) goto ex_0;
                                err = stringOPconcat(T_5_1, STR__040_074_074_040does_040not_040exist, &T_5_2);
                                if (err != ERR_ok) goto ex_0;
                                elist[0] = T_5_2;
                                {signal (ERR_not_possible);}}
                            }
                            else {
                                goto ex_0;
                            }
                        end_11:;
                    }
                else {

  LINE(899);
                    {
                        {i.num = 0;
                        }
                        }

  LINE(900);
                    {
                    CLUREF T_4_1;
                    CLUREF T_4_2;
                    CLUREF T_4_3;
                    CLUREF T_4_4;
                    CLUREF T_4_5;
                        T_4_1.num = o.vec->data[3];
                        T_4_2.num = T_4_1.num;
                        T_4_4.num = T_4_2.vec->size; 
                        T_4_5 = T_4_2;
                        for (T_4_3.num = 1; T_4_3.num <= T_4_4.num; T_4_3.num++) {
                            d.num = T_4_5.vec->data[T_4_3.num - 1];

  LINE(901);
                            {
                                {CLUREF T_5_1;
                                if (d.cell->tag != 5) {err = ERR_wrong_tag; goto ex_0;}
                                T_5_1.num = d.cell->value;
                                each_f.num = T_5_1.num;
                                }
                                }

  LINE(902);
                            {
                                {CLUREF T_5_1;
                                CLUREF T_5_2;
                                CLUREF T_5_3;
                                T_5_1.num = each_f.vec->data[1];
                                T_5_2.num = T_5_1.num;
                                err = debugOPteval(T_5_2, &T_5_3);
                                if (err != ERR_ok) goto ex_0;
                                opsaddr.num = T_5_3.num;
                                }
                                }

  LINE(903);
                            {
                            CLUREF T_5_1;
                            T_5_1.num = each_f.vec->data[0];
                            err = add_selector_info2(T_5_1, i, opsaddr);
                            if (err != ERR_ok) goto ex_0;
                            }

  LINE(904);
                            {
                            CLUREF T_5_1;
                            T_5_1.num = i.num + 1;
                             if ((T_5_1.num > 0 && i.num < 0 && 1 < 0) || 
                                 (T_5_1.num < 0 && i.num > 0 && 1 > 0)) {
                                err = ERR_overflow;
                                goto ex_0;}
                            i.num = T_5_1.num;
                            }
                        }
                    }
                    end_inline_for_4:;

  LINE(906);
                    {
                    CLUREF T_4_1;
                    CLUREF T_4_2;
                    CLUREF T_4_3;
                    T_4_1.num = o.vec->data[3];
                    T_4_2.num = T_4_1.vec->size;
                    err = find_selector_ops2(typ, T_4_2, &T_4_3);
                    if (err != ERR_ok) goto ex_0;
                    tops.num = T_4_3.num;
                    }

  LINE(907);
                    {
                    CLUREF T_5_1;
                    CLUREF T_5_2;
                    CLUREF T_5_3;
                    err = find_valops(typ, opnm, tops, &T_5_1, &T_5_2, &T_5_3);
                    if (err != ERR_ok) goto ex_12;
                    valcount.num = T_5_1.num;
                    valops.num = T_5_2.num;
                    alt_op.num = T_5_3.num;
                    }
                        goto end_12;
                        ex_12:
                            if ((err == ERR_not_found)) {

  LINE(910);
                                {
                                CLUREF T_5_1;
                                CLUREF T_5_2;
                                err = stringOPconcat(STR_operation_040_076_076_040, opnm, &T_5_1);
                                if (err != ERR_ok) goto ex_0;
                                err = stringOPconcat(T_5_1, STR__040_074_074_040does_040not_040exist, &T_5_2);
                                if (err != ERR_ok) goto ex_0;
                                elist[0] = T_5_2;
                                {signal (ERR_not_possible);}}
                            }
                            else {
                                goto ex_0;
                            }
                        end_12:;
                    }}/* end if */

  LINE(913);
                {
                CLUREF T_3_1;
                T_3_1.num = (alt_op.num == 0)? true : false;
                if (T_3_1.num == true) {

  LINE(915);
                    {
                    CLUREF T_4_1;
                    CLUREF T_4_2;
                    err = stringOPconcat(typ, STR_OP, &T_4_1);
                    if (err != ERR_ok) goto ex_0;
                    err = stringOPconcat(T_4_1, opnm, &T_4_2);
                    if (err != ERR_ok) goto ex_0;
                    nm.num = T_4_2.num;
                    }
                    }
                else {

  LINE(917);
                    {
                        {CLUREF T_4_1;
                        CLUREF T_4_2;
                        T_4_1.ch = '_';
                        err = stringOPindexc(T_4_1, opnm, &T_4_2);
                        if (err != ERR_ok) goto ex_0;
                        jj.num = T_4_2.num;
                        }
                        }

  LINE(918);
                    {
                        {CLUREF T_4_1;
                        err = stringOPsubstr(opnm, CLU_1, jj, &T_4_1);
                        if (err != ERR_ok) goto ex_0;
                        pref.num = T_4_1.num;
                        }
                        }

  LINE(919);
                    {
                    CLUREF T_4_1;
                    CLUREF T_4_2;
                    CLUREF T_4_3;
                    CLUREF T_4_4;
                    err = stringOPconcat(typ, STR_OP, &T_4_1);
                    if (err != ERR_ok) goto ex_0;
                    err = stringOPconcat(T_4_1, pref, &T_4_2);
                    if (err != ERR_ok) goto ex_0;
                    err = intOPunparse(alt_op, &T_4_3);
                    if (err != ERR_ok) goto ex_0;
                    err = stringOPconcat(T_4_2, T_4_3, &T_4_4);
                    if (err != ERR_ok) goto ex_0;
                    nm.num = T_4_4.num;
                    }
                    }}/* end if */

  LINE(921);
                {
                oops.num = tops.num;
                }

  LINE(922);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                T_3_1.num = o.vec->data[0];
                T_3_2.num = T_3_1.vec->size;
                argcount.num = T_3_2.num;
                }

  LINE(923);
                {
                is_iter.tf = false;
                }

  LINE(924);
                {
                is_sel.tf = true;
                }

  LINE(925);
                {
                CLUREF T_3_1;
                err = symOPget_address(nm, &T_3_1);
                if (err != ERR_ok) goto ex_0;
                addr.num = T_3_1.num;
                }

  LINE(926);
                {
                CLUREF T_3_1;
                err = sequenceOPnew(&T_3_1);
                if (err != ERR_ok) goto ex_0;
                sigds.num = T_3_1.num;
                }
                }}/* end if */

  LINE(930);
            {
                {CLUREF T_2_1;
                err = _vecOPcreate(CLU_20, &T_2_1);
                if (err != ERR_ok) goto ex_0;
                s.num = T_2_1.num;
                }
                }

  LINE(931);
            {
                {CLUREF T_2_1;
                err = estackOPsize(es, &T_2_1);
                if (err != ERR_ok) goto ex_0;
                t.num = T_2_1.num;
                }
                }

  LINE(932);
            {
                {j.num = 1;
                }
                }

  LINE(934);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
                T_2_1.num = t.num - argcount.num;
                 if ((T_2_1.num >= 0 && t.num < 0 && (-argcount.num) < 0) || 
                     (T_2_1.num <= 0 && t.num > 0 && (-argcount.num) > 0)) {
                    err = ERR_overflow;
                    goto ex_0;}
                T_2_2.num = T_2_1.num + 1;
                 if ((T_2_2.num > 0 && T_2_1.num < 0 && 1 < 0) || 
                     (T_2_2.num < 0 && T_2_1.num > 0 && 1 > 0)) {
                    err = ERR_overflow;
                    goto ex_0;}
                T_2_4.num = t.num;
                for (T_2_3.num = T_2_2.num; T_2_3.num <= T_2_4.num; T_2_3.num++) {
                    i.num = T_2_3.num;

  LINE(935);
                    {
                    CLUREF T_4_1;
                    CLUREF T_4_2;
                    err = estackOPfetch(es, i, &T_4_1);
                    if (err != ERR_ok) goto ex_13;
                    err = debugOPdexpr2obj(T_4_1, &T_4_2);
                    if (err != ERR_ok) goto ex_13;
                    err = _vecOPstore(s, j, T_4_2);
                    if (err != ERR_ok) goto ex_13;
                    }
                    goto end_13;
                    ex_13:
                        if (err == ERR_not_possible) {signal(ERR_not_possible);}
                        else {
                            goto ex_0;}
                    end_13:;

  LINE(937);
                    {
                    CLUREF T_3_1;
                    T_3_1.num = j.num + 1;
                     if ((T_3_1.num > 0 && j.num < 0 && 1 < 0) || 
                         (T_3_1.num < 0 && j.num > 0 && 1 > 0)) {
                        err = ERR_overflow;
                        goto ex_0;}
                    j.num = T_3_1.num;
                    }
                }
            }
            end_inline_for_5:;

  LINE(939);
            {
            CLUREF T_2_1;
            T_2_1.num = t.num - argcount.num;
             if ((T_2_1.num >= 0 && t.num < 0 && (-argcount.num) < 0) || 
                 (T_2_1.num <= 0 && t.num > 0 && (-argcount.num) > 0)) {
                err = ERR_overflow;
                goto ex_0;}
            err = estackOPtrim(es, CLU_1, T_2_1);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(942);
            {
                {CLUREF T_2_1;
                T_2_1.num = debugOPcurrent_state.vec->data[2];
                saved_current_module.num = T_2_1.num;
                }
                }

  LINE(943);
            {
            if (is_iter.num == true) {

  LINE(944);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                T_3_1.num = o.vec->data[3];
                T_3_2.num = o.vec->data[2];
                err = iter_yieldOPsetup(valops, T_3_1, T_3_2, info, debugOPpst_tyo);
                if (err != ERR_ok) goto ex_0;
                }
                }
                }/* end if */

  LINE(946);
            {
            err = call_clu(addr, tops, oops, s, CLU_1, is_iter, is_sel, argcount, valcount);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(948);
            {
            debugOPcurrent_state.vec->data[2]  = saved_current_module.num;
            }

  LINE(949);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
            if (1 < 1 || 1 > s.vec->size ) {
                err = ERR_bounds;
                goto ex_0;}
            T_2_1.num = s.vec->data[1 - 1];
            T_2_2.num = 0;
            T_2_3.num = (T_2_1.num == T_2_2.num)? true : false;
            T_2_4.num = T_2_3.num ^ 1;
            if (T_2_4.num == true) {

  LINE(950);
                {
                err = estackOPtrim(es, CLU_1, CLU_0);
                if (err != ERR_ok) goto ex_0;
                }

  LINE(951);
                {
                    {CLUREF T_3_1;
                    CLUREF T_3_2;
                    CLUREF T_3_3;
                    if (1 < 1 || 1 > s.vec->size ) {
                        err = ERR_bounds;
                        goto ex_0;}
                    T_3_1.num = s.vec->data[1 - 1];
                    err = _pclu_erstr2(T_3_1, &T_3_2);
                    if (err != ERR_ok) goto ex_0;
                    T_3_3.num = T_3_2.num;
                    signm.num = T_3_3.num;
                    }
                    }

  LINE(952);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                    T_3_2.num = sigds.vec->size; 
                    T_3_3 = sigds;
                    for (T_3_1.num = 1; T_3_1.num <= T_3_2.num; T_3_1.num++) {
                        sd.num = T_3_3.vec->data[T_3_1.num - 1];

  LINE(953);
                        {
                        CLUREF T_4_1;
                        CLUREF T_4_2;
                        T_4_1.num = sd.vec->data[0];
                        err = debugopcmp_sig(signm, T_4_1, &T_4_2);
                        if (err != ERR_ok) goto ex_0;
                        if (T_4_2.num == true) {

  LINE(954);
                            {
                            j.num = 2;
                            }

  LINE(955);
                            {
                                {CLUREF T_5_1;
                                err = debugopget_sigvalcount(sd, &T_5_1);
                                if (err != ERR_ok) goto ex_0;
                                sz.num = T_5_1.num;
                                }
                                }

  LINE(956);
                            {
                            CLUREF T_5_1;
                            CLUREF T_5_2;
                                T_5_2.num = sz.num;
                                for (T_5_1.num = 1; T_5_1.num <= T_5_2.num; T_5_1.num++) {
                                    i.num = T_5_1.num;

  LINE(957);
                                    {
                                        {CLUREF T_6_1;
                                        err = debugopget_nth_sigvalops(sd, i, info, tops, oops, &T_6_1);
                                        if (err != ERR_ok) goto ex_0;
                                        sigvalops.num = T_6_1.num;
                                        }
                                        }

  LINE(958);
                                    {
                                    CLUREF T_6_1;
                                    CLUREF T_6_2;
                                    CLUREF T_6_3;
                                    RecordAlloc(2, T_6_1);
                                    if (j.num < 1 || j.num > s.vec->size ) {
                                        err = ERR_bounds;
                                        goto ex_0;}
                                    T_6_2.num = s.vec->data[j.num - 1];
                                    T_6_1.vec->data[1]  = T_6_2.num;
                                    T_6_1.vec->data[0]  = sigvalops.num;
                                    CellAlloc(9, T_6_1.num, T_6_3);
                                    err = estackOPpush(es, T_6_3);
                                    if (err != ERR_ok) goto ex_0;
                                    }

  LINE(961);
                                    {
                                    CLUREF T_6_1;
                                    T_6_1.num = j.num + 1;
                                     if ((T_6_1.num > 0 && j.num < 0 && 1 < 0) || 
                                         (T_6_1.num < 0 && j.num > 0 && 1 > 0)) {
                                        err = ERR_overflow;
                                        goto ex_0;}
                                    j.num = T_6_1.num;
                                    }
                                }
                            }
                            end_inline_for_7:;
                            }
                            }/* end if */
                    }
                }
                end_inline_for_6:;

  LINE(965);
                {
                elist[0] = signm;
                {signal ("ERR_signalling");}}
                }
                }/* end if */

  LINE(968);
            {
            CLUREF T_2_1;
            T_2_1.num = is_iter.num ^ 1;
            if (T_2_1.num == true) {

  LINE(969);
                {
                j.num = 2;
                }

  LINE(970);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                    T_3_2.num = valcount.num;
                    for (T_3_1.num = 1; T_3_1.num <= T_3_2.num; T_3_1.num++) {
                        i.num = T_3_1.num;

  LINE(972);
                        {
                        if (is_sel.num == true) {

  LINE(974);
                            {
                            CLUREF T_5_1;
                            T_5_1.num = valops.num;
                            ithops.num = T_5_1.num;
                            }
                            }
                        else {

  LINE(976);
                            {
                            CLUREF T_6_1;
                            err = debugopget_nth_op(valops, i, info, tops, oops, &T_6_1);
                            if (err != ERR_ok) goto ex_14;
                            ithops.num = T_6_1.num;
                            }
                                goto end_14;
                                ex_14:
                                    if ((err == ERR_not_found)) {
                                    CLUREF ops_name;
                                    ops_name.num = elist[0].num;

  LINE(978);
                                        {
                                        CLUREF T_6_1;
                                        CLUREF T_6_2;
                                        CLUREF T_6_3;
                                        CLUREF T_6_4;
                                        T_6_1.num = o.vec->data[3];
                                        T_6_2.num = o.vec->data[2];
                                        err = inst_from_name(ops_name, info, T_6_1, T_6_2, &T_6_3);
                                        if (err != ERR_ok) goto ex_0;
                                        T_6_4.num = T_6_3.num;
                                        ithops.num = T_6_4.num;
                                        }
                                    }
                                    else {
                                        goto ex_0;
                                    }
                                end_14:;
                            }}/* end if */

  LINE(982);
                        {
                        CLUREF T_4_1;
                        CLUREF T_4_2;
                        CLUREF T_4_3;
                        RecordAlloc(2, T_4_1);
                        if (j.num < 1 || j.num > s.vec->size ) {
                            err = ERR_bounds;
                            goto ex_0;}
                        T_4_2.num = s.vec->data[j.num - 1];
                        T_4_1.vec->data[1]  = T_4_2.num;
                        T_4_1.vec->data[0]  = ithops.num;
                        CellAlloc(9, T_4_1.num, T_4_3);
                        err = estackOPpush(es, T_4_3);
                        if (err != ERR_ok) goto ex_0;
                        }

  LINE(983);
                        {
                        CLUREF T_4_1;
                        T_4_1.num = j.num + 1;
                         if ((T_4_1.num > 0 && j.num < 0 && 1 < 0) || 
                             (T_4_1.num < 0 && j.num > 0 && 1 > 0)) {
                            err = ERR_overflow;
                            goto ex_0;}
                        j.num = T_4_1.num;
                        }
                    }
                }
                end_inline_for_8:;
                }
                }/* end if */
            break;
            }
    case 1: 
         {CLUREF T_1_3;
        T_1_3.num = e.cell->value;
        a.num = T_1_3.num;

  LINE(987);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            T_2_1.num = a.vec->data[2];
            T_2_2.num = ((T_2_1.str->size != STR_array.str->size)? false :
                !(bcmp(T_2_1.str->data, STR_array.str->data, T_2_1.str->size)));
            if (T_2_2.num == true) {

  LINE(990);
                {
                    {CLUREF T_4_1;
                    CLUREF T_4_2;
                    CLUREF T_4_3;
                    CLUREF T_4_4;
                    T_4_1.num = a.vec->data[1];
                    T_4_2.num = T_4_1.num;
                    err = debugOPdexpr2obj(T_4_2, &T_4_3);
                    if (err != ERR_ok) goto ex_15;
                    T_4_4.num = T_4_3.num;
                    start.num = T_4_4.num;
                    }
                    }
                goto end_15;
                ex_15:
                    if (err == ERR_not_possible) {signal(ERR_not_possible);}
                    else {
                        goto ex_0;}
                end_15:;

  LINE(992);
                {
                    {CLUREF T_3_1;
                    CLUREF T_3_2;
                    CLUREF T_3_3;
                    T_3_1.num = a.vec->data[3];
                    T_3_2.num = T_3_1.vec->size;
                    err = arrayOPpredict(start, T_3_2, &T_3_3);
                    if (err != ERR_ok) goto ex_0;
                    ao.num = T_3_3.num;
                    }
                    }

  LINE(995);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                CLUREF T_3_4;
                CLUREF T_3_5;
                    T_3_1.num = a.vec->data[3];
                    T_3_2.num = T_3_1.num;
                    T_3_4.num = T_3_2.vec->size; 
                    T_3_5 = T_3_2;
                    for (T_3_3.num = 1; T_3_3.num <= T_3_4.num; T_3_3.num++) {
                        each_val.num = T_3_5.vec->data[T_3_3.num - 1];

  LINE(996);
                        {
                        CLUREF T_5_1;
                        err = debugOPdexpr2obj(each_val, &T_5_1);
                        if (err != ERR_ok) goto ex_16;
                        {
                        if ((ao.array->int_low + ao.array->ext_size + 1) < ao.array->int_size) {
                            ao.array->store->data[ao.array->int_low + ao.array->ext_size] = T_5_1.num;
                            ao.array->ext_size++; ao.array->ext_high++;}
                        else {
                            err = arrayOPaddh(ao, T_5_1);
                            if (err != ERR_ok) goto ex_16;}
                        }
                        }
                        goto end_16;
                        ex_16:
                            if (err == ERR_not_possible) {signal(ERR_not_possible);}
                            else {
                                goto ex_0;}
                        end_16:;
                    }
                }
                end_inline_for_9:;

  LINE(1000);
                {
                    {CLUREF T_3_1;
                    CLUREF T_3_2;
                    CLUREF T_3_3;
                    CLUREF T_3_4;
                    T_3_1.num = a.vec->data[0];
                    if (1 < 1 || 1 > T_3_1.vec->size ) {
                        err = ERR_bounds;
                        goto ex_0;}
                    T_3_2.num = T_3_1.vec->data[1 - 1];
                    T_3_3.num = T_3_2.num;
                    err = debugOPteval(T_3_3, &T_3_4);
                    if (err != ERR_ok) goto ex_0;
                    opers.num = T_3_4.num;
                    }
                    }

  LINE(1001);
                {
                    {CLUREF T_3_1;
                    err = symOPget_address(STR_array_137of_137t_137reqs_137actual, &T_3_1);
                    if (err != ERR_ok) goto ex_0;
                    reqs.num = T_3_1.num;
                    }
                    }

  LINE(1002);
                {
                err = clu_add_parm_info_type(CLU_0, opers, reqs);
                if (err != ERR_ok) goto ex_0;
                }

  LINE(1003);
                {
                CLUREF T_3_1;
                err = symOPget_address(STR_array_137ops_137actual, &T_3_1);
                if (err != ERR_ok) goto ex_0;
                opers.num = T_3_1.num;
                }

  LINE(1004);
                {
                    {CLUREF T_3_1;
                    err = symOPget_address(STR_array_137ownreqs, &T_3_1);
                    if (err != ERR_ok) goto ex_0;
                    ownreqs.num = T_3_1.num;
                    }
                    }

  LINE(1005);
                {
                    {CLUREF T_3_1;
                    err = clu_find_type_instance(opers, CLU_1, ownreqs, &T_3_1);
                    if (err != ERR_ok) goto ex_0;
                    tops.num = T_3_1.num;
                    }
                    }

  LINE(1008);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                CLUREF T_3_4;
                RecordAlloc(2, T_3_1);
                T_3_2.num = ao.num;
                T_3_1.vec->data[1]  = T_3_2.num;
                T_3_3.num = tops.num;
                T_3_1.vec->data[0]  = T_3_3.num;
                CellAlloc(9, T_3_1.num, T_3_4);
                err = estackOPpush(es, T_3_4);
                if (err != ERR_ok) goto ex_0;
                }
                }
            else {
            CLUREF T_2_3;
            CLUREF T_2_4;
            T_2_3.num = a.vec->data[2];
            T_2_4.num = ((T_2_3.str->size != STR_sequence.str->size)? false :
                !(bcmp(T_2_3.str->data, STR_sequence.str->data, T_2_3.str->size)));
            if (T_2_4.num == true) {

  LINE(1014);
                {
                    {CLUREF T_3_1;
                    sequenceOPnew2(CLU_0, &T_3_1);
                    s.num = T_3_1.num;
                    }
                    }

  LINE(1016);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                CLUREF T_3_4;
                CLUREF T_3_5;
                    T_3_1.num = a.vec->data[3];
                    T_3_2.num = T_3_1.num;
                    T_3_4.num = T_3_2.vec->size; 
                    T_3_5 = T_3_2;
                    for (T_3_3.num = 1; T_3_3.num <= T_3_4.num; T_3_3.num++) {
                        each_val.num = T_3_5.vec->data[T_3_3.num - 1];

  LINE(1017);
                        {
                        CLUREF T_5_1;
                        CLUREF T_5_2;
                        err = debugOPdexpr2obj(each_val, &T_5_1);
                        if (err != ERR_ok) goto ex_17;
                        err = sequenceOPaddh(s, T_5_1, &T_5_2);
                        if (err != ERR_ok) goto ex_17;
                        s.num = T_5_2.num;
                        }
                        goto end_17;
                        ex_17:
                            if (err == ERR_not_possible) {signal(ERR_not_possible);}
                            else {
                                goto ex_0;}
                        end_17:;
                    }
                }
                end_inline_for_10:;

  LINE(1021);
                {
                    {CLUREF T_3_1;
                    CLUREF T_3_2;
                    CLUREF T_3_3;
                    CLUREF T_3_4;
                    T_3_1.num = a.vec->data[0];
                    if (1 < 1 || 1 > T_3_1.vec->size ) {
                        err = ERR_bounds;
                        goto ex_0;}
                    T_3_2.num = T_3_1.vec->data[1 - 1];
                    T_3_3.num = T_3_2.num;
                    err = debugOPteval(T_3_3, &T_3_4);
                    if (err != ERR_ok) goto ex_0;
                    opers.num = T_3_4.num;
                    }
                    }

  LINE(1022);
                {
                    {CLUREF T_3_1;
                    err = symOPget_address(STR_sequence_137of_137t_137reqs_137actual, &T_3_1);
                    if (err != ERR_ok) goto ex_0;
                    reqs.num = T_3_1.num;
                    }
                    }

  LINE(1023);
                {
                err = clu_add_parm_info_type(CLU_0, opers, reqs);
                if (err != ERR_ok) goto ex_0;
                }

  LINE(1024);
                {
                CLUREF T_3_1;
                err = symOPget_address(STR_sequence_137ops_137actual, &T_3_1);
                if (err != ERR_ok) goto ex_0;
                opers.num = T_3_1.num;
                }

  LINE(1025);
                {
                    {CLUREF T_3_1;
                    err = symOPget_address(STR_sequence_137ownreqs, &T_3_1);
                    if (err != ERR_ok) goto ex_0;
                    ownreqs.num = T_3_1.num;
                    }
                    }

  LINE(1026);
                {
                    {CLUREF T_3_1;
                    err = clu_find_type_instance(opers, CLU_1, ownreqs, &T_3_1);
                    if (err != ERR_ok) goto ex_0;
                    tops.num = T_3_1.num;
                    }
                    }

  LINE(1029);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                CLUREF T_3_4;
                RecordAlloc(2, T_3_1);
                T_3_2.num = s.num;
                T_3_1.vec->data[1]  = T_3_2.num;
                T_3_3.num = tops.num;
                T_3_1.vec->data[0]  = T_3_3.num;
                CellAlloc(9, T_3_1.num, T_3_4);
                err = estackOPpush(es, T_3_4);
                if (err != ERR_ok) goto ex_0;
                }
                }
            else {

  LINE(1033);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                T_3_1.num = a.vec->data[2];
                err = stringOPconcat(STR__040unexpected_040type_040, T_3_1, &T_3_2);
                if (err != ERR_ok) goto ex_0;
                err = stringOPconcat(T_3_2, STR__040in_040acons_057eval, &T_3_3);
                if (err != ERR_ok) goto ex_0;
                err = logit(T_3_3);
                if (err != ERR_ok) goto ex_0;
                }
                }}}/* end if */
            break;
            }
    case 10: 
         {CLUREF T_1_4;
        T_1_4.num = e.cell->value;
        s.num = T_1_4.num;

  LINE(1038);
            {
                {CLUREF T_2_1;
                CLUREF T_2_2;
                T_2_1.num = s.vec->data[2];
                T_2_2.num = T_2_1.vec->size;
                sz.num = T_2_2.num;
                }
                }

  LINE(1039);
            {
                {CLUREF T_2_1;
                err = _vecOPcreate(sz, &T_2_1);
                if (err != ERR_ok) goto ex_0;
                r.num = T_2_1.num;
                }
                }

  LINE(1042);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
                T_2_1.num = s.vec->data[2];
                T_2_3.num = T_2_1.vec->size; 
                for (T_2_2.num = 1; T_2_2.num <= T_2_3.num; T_2_2.num++) {
                    i.num = T_2_2.num;

  LINE(1043);
                    {
                    CLUREF T_4_1;
                    CLUREF T_4_2;
                    CLUREF T_4_3;
                    CLUREF T_4_4;
                    T_4_1.num = s.vec->data[2];
                    T_4_2.num = T_4_1.num;
                    if (i.num < 1 || i.num > T_4_2.vec->size ) {
                        err = ERR_bounds;
                        goto ex_18;}
                    T_4_3.num = T_4_2.vec->data[i.num - 1];
                    err = debugOPdexpr2obj(T_4_3, &T_4_4);
                    if (err != ERR_ok) goto ex_18;
                    err = _vecOPstore(r, i, T_4_4);
                    if (err != ERR_ok) goto ex_18;
                    }
                    goto end_18;
                    ex_18:
                        if (err == ERR_not_possible) {signal(ERR_not_possible);}
                        else {
                            goto ex_0;}
                    end_18:;
                }
            }
            end_inline_for_11:;

  LINE(1047);
            {
                {i.num = 0;
                }
                }

  LINE(1048);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
            CLUREF T_2_5;
                T_2_1.num = s.vec->data[0];
                T_2_2.num = T_2_1.num;
                T_2_4.num = T_2_2.vec->size; 
                T_2_5 = T_2_2;
                for (T_2_3.num = 1; T_2_3.num <= T_2_4.num; T_2_3.num++) {
                    each_d.num = T_2_5.vec->data[T_2_3.num - 1];

  LINE(1049);
                    {
                        {CLUREF T_3_1;
                        if (each_d.cell->tag != 5) {err = ERR_wrong_tag; goto ex_0;}
                        T_3_1.num = each_d.cell->value;
                        each_f.num = T_3_1.num;
                        }
                        }

  LINE(1050);
                    {
                        {CLUREF T_3_1;
                        CLUREF T_3_2;
                        CLUREF T_3_3;
                        T_3_1.num = each_f.vec->data[1];
                        T_3_2.num = T_3_1.num;
                        err = debugOPteval(T_3_2, &T_3_3);
                        if (err != ERR_ok) goto ex_0;
                        opsaddr.num = T_3_3.num;
                        }
                        }

  LINE(1051);
                    {
                    CLUREF T_3_1;
                    T_3_1.num = each_f.vec->data[0];
                    err = add_selector_info2(T_3_1, i, opsaddr);
                    if (err != ERR_ok) goto ex_0;
                    }

  LINE(1052);
                    {
                    CLUREF T_3_1;
                    T_3_1.num = i.num + 1;
                     if ((T_3_1.num > 0 && i.num < 0 && 1 < 0) || 
                         (T_3_1.num < 0 && i.num > 0 && 1 > 0)) {
                        err = ERR_overflow;
                        goto ex_0;}
                    i.num = T_3_1.num;
                    }
                }
            }
            end_inline_for_12:;

  LINE(1054);
            {
                {CLUREF T_2_1;
                CLUREF T_2_2;
                T_2_1.num = s.vec->data[1];
                err = find_selector_ops2(T_2_1, sz, &T_2_2);
                if (err != ERR_ok) goto ex_0;
                tops.num = T_2_2.num;
                }
                }

  LINE(1056);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
            RecordAlloc(2, T_2_1);
            T_2_2.num = r.num;
            T_2_1.vec->data[1]  = T_2_2.num;
            T_2_3.num = tops.num;
            T_2_1.vec->data[0]  = T_2_3.num;
            CellAlloc(9, T_2_1.num, T_2_4);
            err = estackOPpush(es, T_2_4);
            if (err != ERR_ok) goto ex_0;
            }
            break;
            }
    case 13: 
         {CLUREF T_1_5;
        T_1_5.num = e.cell->value;
        v.num = T_1_5.num;

  LINE(1062);
            {
                {CLUREF T_2_1;
                CLUREF T_2_2;
                T_2_1.num = v.vec->data[0];
                T_2_2.num = T_2_1.vec->size;
                sz.num = T_2_2.num;
                }
                }

  LINE(1064);
            {
                {CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                CLUREF T_3_4;
                CLUREF T_3_5;
                T_3_1.num = v.vec->data[1];
                T_3_2.num = v.vec->data[3];
                T_3_3.num = T_3_2.num;
                err = debugOPdexpr2obj(T_3_3, &T_3_4);
                if (err != ERR_ok) goto ex_19;
                generic_CLU_proc.type_owns = _tagcell_of__obj_ops->type_owns;
                generic_CLU_proc.proc = _tagcellOPcreate;
                CUR_PROC_VAR.proc = &generic_CLU_proc;
                err = _tagcellOPcreate(T_3_1, T_3_4, &T_3_5);
                if (err != ERR_ok) goto ex_19;
                tagc.num = T_3_5.num;
                }
                }
            goto end_19;
            ex_19:
                if (err == ERR_not_possible) {signal(ERR_not_possible);}
                else {
                    goto ex_0;}
            end_19:;

  LINE(1068);
            {
                {i.num = 0;
                }
                }

  LINE(1069);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
            CLUREF T_2_5;
                T_2_1.num = v.vec->data[0];
                T_2_2.num = T_2_1.num;
                T_2_4.num = T_2_2.vec->size; 
                T_2_5 = T_2_2;
                for (T_2_3.num = 1; T_2_3.num <= T_2_4.num; T_2_3.num++) {
                    each_d.num = T_2_5.vec->data[T_2_3.num - 1];

  LINE(1070);
                    {
                        {CLUREF T_3_1;
                        if (each_d.cell->tag != 5) {err = ERR_wrong_tag; goto ex_0;}
                        T_3_1.num = each_d.cell->value;
                        each_f.num = T_3_1.num;
                        }
                        }

  LINE(1071);
                    {
                        {CLUREF T_3_1;
                        CLUREF T_3_2;
                        CLUREF T_3_3;
                        T_3_1.num = each_f.vec->data[1];
                        T_3_2.num = T_3_1.num;
                        err = debugOPteval(T_3_2, &T_3_3);
                        if (err != ERR_ok) goto ex_0;
                        opsaddr.num = T_3_3.num;
                        }
                        }

  LINE(1072);
                    {
                    CLUREF T_3_1;
                    T_3_1.num = each_f.vec->data[0];
                    err = add_selector_info2(T_3_1, i, opsaddr);
                    if (err != ERR_ok) goto ex_0;
                    }

  LINE(1073);
                    {
                    CLUREF T_3_1;
                    T_3_1.num = i.num + 1;
                     if ((T_3_1.num > 0 && i.num < 0 && 1 < 0) || 
                         (T_3_1.num < 0 && i.num > 0 && 1 > 0)) {
                        err = ERR_overflow;
                        goto ex_0;}
                    i.num = T_3_1.num;
                    }
                }
            }
            end_inline_for_13:;

  LINE(1075);
            {
                {CLUREF T_2_1;
                CLUREF T_2_2;
                T_2_1.num = v.vec->data[2];
                err = find_selector_ops2(T_2_1, sz, &T_2_2);
                if (err != ERR_ok) goto ex_0;
                tops.num = T_2_2.num;
                }
                }

  LINE(1077);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
            RecordAlloc(2, T_2_1);
            T_2_2.num = tagc.num;
            T_2_1.vec->data[1]  = T_2_2.num;
            T_2_3.num = tops.num;
            T_2_1.vec->data[0]  = T_2_3.num;
            CellAlloc(9, T_2_1.num, T_2_4);
            err = estackOPpush(es, T_2_4);
            if (err != ERR_ok) goto ex_0;
            }
            break;
            }
    case 4: 
         {CLUREF T_1_6;
        T_1_6.num = e.cell->value;
        c.num = T_1_6.num;

  LINE(1082);
            {
            err = estackOPpush(es, e);
            if (err != ERR_ok) goto ex_0;
            }
            break;
            }
    case 6: 
         {CLUREF T_1_7;
        T_1_7.num = e.cell->value;
        i.num = T_1_7.num;

  LINE(1084);
            {
            err = estackOPpush(es, e);
            if (err != ERR_ok) goto ex_0;
            }
            break;
            }
    case 9: 
         {CLUREF T_1_8;
        T_1_8.num = e.cell->value;
        o.num = T_1_8.num;

  LINE(1086);
            {
            err = estackOPpush(es, e);
            if (err != ERR_ok) goto ex_0;
            }
            break;
            }
    case 8: 
    case 5: 
         {

  LINE(1088);
            {
            elist[0] = STR_no_040expr_0401;
            {signal (ERR_failure);}}
            break;
            }
    default: {

  LINE(1090);
        {
        elist[0] = STR_no_040expr_0402;
        {signal (ERR_failure);}}
    }
    }
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE eval ****/

static int debugOPfixup_rep_own_init = 0;

/**** BEGIN PROCEDURE fixup_rep ****/

errcode debugOPfixup_rep(o, exists, arg1)
CLUREF o;
CLUREF exists;
CLUREF arg1;
    {
    errcode err;
    errcode ecode2;
    CLUREF loc;
    CLUREF typ;
    CLUREF opnm;
    CLUREF nm;
    CLUREF tops;
    CLUREF arg1nm;
    CLUREF arg1val;
    CLUREF actnm;
    CLUREF aops;
    CLUREF tparmcount;
    CLUREF index;
    CLUREF tparms;
    CLUREF ith;
    CLUREF ithparm;
    CLUREF acttyp;
        if (debugOPfixup_rep_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPfixup_rep_own_init = 1;
    }
    enter_proc(1096);

  LINE(1097);
    {
    CLUREF T_1_1;
    T_1_1.num = exists.num ^ 1;
    if (T_1_1.num == true) {
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(1098);
    {
        {CLUREF T_1_1;
        CLUREF T_1_2;
        CLUREF T_1_3;
        T_1_1.ch = '$';
        T_1_2.num = o.vec->data[1];
        err = stringOPindexc(T_1_1, T_1_2, &T_1_3);
        if (err != ERR_ok) goto ex_0;
        loc.num = T_1_3.num;
        }
        }

  LINE(1099);
    {
    CLUREF T_1_1;
    T_1_1.num = (loc.num == 0)? true : false;
    if (T_1_1.num == true) {
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(1100);
    {
        {CLUREF T_1_1;
        CLUREF T_1_2;
        CLUREF T_1_3;
        T_1_1.num = o.vec->data[1];
        T_1_2.num = loc.num - 1;
         if ((T_1_2.num >= 0 && loc.num < 0 && (-1) < 0) || 
             (T_1_2.num <= 0 && loc.num > 0 && (-1) > 0)) {
            err = ERR_overflow;
            goto ex_0;}
        err = stringOPsubstr(T_1_1, CLU_1, T_1_2, &T_1_3);
        if (err != ERR_ok) goto ex_0;
        typ.num = T_1_3.num;
        }
        }

  LINE(1101);
    {
        {CLUREF T_1_1;
        CLUREF T_1_2;
        CLUREF T_1_3;
        T_1_1.num = o.vec->data[1];
        T_1_2.num = loc.num + 1;
         if ((T_1_2.num > 0 && loc.num < 0 && 1 < 0) || 
             (T_1_2.num < 0 && loc.num > 0 && 1 > 0)) {
            err = ERR_overflow;
            goto ex_0;}
        err = stringOPrest(T_1_1, T_1_2, &T_1_3);
        if (err != ERR_ok) goto ex_0;
        opnm.num = T_1_3.num;
        }
        }

  LINE(1103);
    {
        {tops.num = 0;
        }
        }

  LINE(1104);
    {
    CLUREF T_1_1;
    T_1_1.num = ((typ.str->size != STR_rep.str->size)? false :
        !(bcmp(typ.str->data, STR_rep.str->data, typ.str->size)));
    if (T_1_1.num == true) {

  LINE(1106);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_1.num = o.vec->data[0];
        T_2_2.num = T_2_1.num;
        if (1 < 1 || 1 > T_2_2.vec->size ) {
            err = ERR_bounds;
            goto ex_0;}
        T_2_3.num = T_2_2.vec->data[1 - 1];
        arg1.num = T_2_3.num;
        }

  LINE(1107);
        {
            {CLUREF T_2_1;
            if (arg1.cell->tag != 6) {err = ERR_wrong_tag; goto ex_0;}
            T_2_1.num = arg1.cell->value;
            arg1nm.num = T_2_1.num;
            }
            }

  LINE(1109);
        {

  LINE(1111);
            {
            CLUREF T_4_1;
            err = dvarOPget_dexpr(arg1nm, &T_4_1);
            if (err != ERR_ok) goto ex_1;
            arg1.num = T_4_1.num;
            }

  LINE(1112);
            {
            CLUREF T_4_1;
            CLUREF T_4_2;
            if (arg1.cell->tag != 9) {err = ERR_wrong_tag; goto ex_1;}
            T_4_1.num = arg1.cell->value;
            T_4_2.num = T_4_1.vec->data[1];
            arg1val.num = T_4_2.num;
            }

  LINE(1113);
            {
            CLUREF T_4_1;
            CLUREF T_4_2;
            CLUREF T_4_3;
            if (arg1.cell->tag != 9) {err = ERR_wrong_tag; goto ex_1;}
            T_4_1.num = arg1.cell->value;
            T_4_2.num = T_4_1.vec->data[0];
            T_4_3.num = T_4_2.num;
            tops.num = T_4_3.num;
            }
            }
            goto end_1;
            ex_1:
                if ((err == ERR_not_found)) {

  LINE(1118);
                    {
                    CLUREF T_4_1;
                    CLUREF T_4_2;
                    CLUREF T_4_3;
                    CLUREF T_4_4;
                    T_4_1.num = debugOPdisplay.vec->data[2];
                    T_4_2.num = debugOPdisplay.vec->data[1];
                    err = debugopnm2val_ops(T_4_1, T_4_2, arg1nm, &T_4_3, &T_4_4);
                    if (err != ERR_ok) goto ex_2;
                    arg1val.num = T_4_3.num;
                    tops.num = T_4_4.num;
                    }
                        goto end_2;
                        ex_2:
                            if ((err == ERR_not_found)) {

  LINE(1122);
                                {
                                CLUREF T_4_1;
                                CLUREF T_4_2;
                                err = stringOPconcat(STR_no_040variable_040named_040_076_076_040, arg1nm, &T_4_1);
                                if (err != ERR_ok) goto ex_0;
                                err = stringOPconcat(T_4_1, STR__040_074_074_040found, &T_4_2);
                                if (err != ERR_ok) goto ex_0;
                                elist[0] = T_4_2;
                                {signal (ERR_not_possible);}}
                            }
                            else {
                                goto ex_0;
                            }
                        end_2:;
                }
                else {
                    goto ex_0;
                }
            end_1:;

  LINE(1125);
        {
        CLUREF T_2_1;
        T_2_1.num = (tops.num == 0)? true : false;
        if (T_2_1.num == true) {
            {
            {signal (ERR_ok);}}
            }
            }/* end if */

  LINE(1129);
        {
            {CLUREF T_3_1;
            err = symOPget_name(tops, &T_3_1);
            if (err != ERR_ok) goto ex_3;
            actnm.num = T_3_1.num;
            }
            }
            goto end_3;
            ex_3:
                if ((err == ERR_not_found)) {

  LINE(1134);
                    {
                        {CLUREF T_4_1;
                        CLUREF T_4_2;
                        CLUREF T_4_3;
                        CLUREF T_4_4;
                        T_4_1.num = tops.num;
                        err = find_tgen(T_4_1, &T_4_2, &T_4_3, &T_4_4);
                        if (err != ERR_ok) goto ex_4;
                        aops.num = T_4_2.num;
                        tparmcount.num = T_4_3.num;
                        index.num = T_4_4.num;
                        }
                        }
                        goto end_4;
                        ex_4:
                            if ((err == ERR_not_found)) {

  LINE(1136);
                                {
                                {signal (ERR_ok);}}
                            }
                            else {
                                goto ex_0;
                            }
                        end_4:;

  LINE(1137);
                    {
                        {CLUREF T_3_1;
                        err = sequenceOPnew(&T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        tparms.num = T_3_1.num;
                        }
                        }

  LINE(1138);
                    {
                    CLUREF T_3_1;
                    CLUREF T_3_2;
                        T_3_2.num = tparmcount.num;
                        for (T_3_1.num = 1; T_3_1.num <= T_3_2.num; T_3_1.num++) {
                            ith.num = T_3_1.num;

  LINE(1139);
                            {
                                {CLUREF T_4_1;
                                CLUREF T_4_2;
                                T_4_1.num = ith.num - 1;
                                 if ((T_4_1.num >= 0 && ith.num < 0 && (-1) < 0) || 
                                     (T_4_1.num <= 0 && ith.num > 0 && (-1) > 0)) {
                                    err = ERR_overflow;
                                    goto ex_0;}
                                err = find_tgen_parm(index, T_4_1, &T_4_2);
                                if (err != ERR_ok) goto ex_0;
                                ithparm.num = T_4_2.num;
                                }
                                }

  LINE(1140);
                            {
                            CLUREF T_4_1;
                            CLUREF T_4_2;
                            CLUREF T_4_3;
                            CLUREF T_4_4;
                            CLUREF T_4_5;
                            RecordAlloc(1, T_4_1);
                            T_4_2.num = ithparm.num;
                            T_4_1.vec->data[0]  = T_4_2.num;
                            CellAlloc(7, T_4_1.num, T_4_3);
                            T_4_4.num = T_4_3.num;
                            err = sequenceOPaddh(tparms, T_4_4, &T_4_5);
                            if (err != ERR_ok) goto ex_0;
                            tparms.num = T_4_5.num;
                            }
                        }
                    }
                    end_inline_for_1:;

  LINE(1144);
                    {
                    o.vec->data[3]  = tparms.num;
                    }

  LINE(1145);
                    {
                    CLUREF T_3_1;
                    CLUREF T_3_2;
                    T_3_1.num = aops.num;
                    err = symOPget_name(T_3_1, &T_3_2);
                    if (err != ERR_ok) goto ex_0;
                    actnm.num = T_3_2.num;
                    }
                }
                else {
                    goto ex_0;
                }
            end_3:;

  LINE(1147);
        {
        CLUREF T_2_1;
        err = string_lindexs(STR__137ops_137actual, actnm, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        loc.num = T_2_1.num;
        }

  LINE(1148);
        {
            {CLUREF T_2_1;
            CLUREF T_2_2;
            T_2_1.num = loc.num - 1;
             if ((T_2_1.num >= 0 && loc.num < 0 && (-1) < 0) || 
                 (T_2_1.num <= 0 && loc.num > 0 && (-1) > 0)) {
                err = ERR_overflow;
                goto ex_0;}
            err = stringOPsubstr(actnm, CLU_1, T_2_1, &T_2_2);
            if (err != ERR_ok) goto ex_0;
            acttyp.num = T_2_2.num;
            }
            }

  LINE(1149);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        err = stringOPconcat(acttyp, STR_OP, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        err = stringOPconcat(T_2_1, opnm, &T_2_2);
        if (err != ERR_ok) goto ex_0;
        nm.num = T_2_2.num;
        }

  LINE(1150);
        {
        o.vec->data[1]  = nm.num;
        }
        }
    else {

  LINE(1153);
        {
        {signal (ERR_ok);}}
        }}/* end if */
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE fixup_rep ****/

static int debugOPteval_own_init = 0;

/**** BEGIN PROCEDURE teval ****/

errcode debugOPteval(t, ret_1)
CLUREF t;
CLUREF *ret_1;
    {
    errcode err;
    errcode ecode2;
    CLUREF id;
    CLUREF tg;
    CLUREF tformals;
    CLUREF aname;
    CLUREF a;
    CLUREF i;
    CLUREF opers;
    CLUREF each_parm;
    CLUREF reqs;
    CLUREF ownreqs;
    CLUREF tops;
    CLUREF sl;
    CLUREF d;
    CLUREF each_f;
    CLUREF opsaddr;
    CLUREF it;
        if (debugOPteval_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPteval_own_init = 1;
    }
    enter_proc(1158);

  LINE(1159);
    {
    switch (t.cell->tag) {
    case 6: 
         {CLUREF T_1_1;
        T_1_1.num = t.cell->value;
        id.num = T_1_1.num;

  LINE(1161);
            {
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            err = stringOPconcat(id, STR__137ops_137actual, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            err = symOPget_address(T_2_1, &T_2_2);
            if (err != ERR_ok) goto ex_0;
            ret_1->num = T_2_2.num;
            }
            {signal (ERR_ok);}}
            break;
            }
    case 12: 
         {CLUREF T_1_2;
        T_1_2.num = t.cell->value;
        tg.num = T_1_2.num;

  LINE(1164);
            {
                {CLUREF T_2_1;
                err = arrayOPnew(&T_2_1);
                if (err != ERR_ok) goto ex_0;
                tformals.num = T_2_1.num;
                }
                }

  LINE(1165);
            {
                {CLUREF T_2_1;
                CLUREF T_2_2;
                T_2_1.num = tg.vec->data[0];
                err = stringOPconcat(STR_tformals_137, T_2_1, &T_2_2);
                if (err != ERR_ok) goto ex_0;
                aname.num = T_2_2.num;
                }
                }

  LINE(1166);
            {
                {CLUREF T_2_1;
                err = symOPget_address(aname, &T_2_1);
                if (err != ERR_ok) goto ex_0;
                a.num = T_2_1.num;
                }
                }

  LINE(1167);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
                T_2_1.num = tg.vec->data[1];
                T_2_2.num = T_2_1.vec->size;
                T_2_4.num = T_2_2.num;
                for (T_2_3.num = 1; T_2_3.num <= T_2_4.num; T_2_3.num++) {
                    i.num = T_2_3.num;

  LINE(1168);
                    {
                    CLUREF T_3_1;
                    err = debugopget_nth_formal(a, i, &T_3_1);
                    if (err != ERR_ok) goto ex_0;
                    {
                    if ((tformals.array->int_low + tformals.array->ext_size + 1) < tformals.array->int_size) {
                        tformals.array->store->data[tformals.array->int_low + tformals.array->ext_size] = T_3_1.num;
                        tformals.array->ext_size++; tformals.array->ext_high++;}
                    else {
                        err = arrayOPaddh(tformals, T_3_1);
                        if (err != ERR_ok) goto ex_0;}
                    }
                    }
                }
            }
            end_inline_for_1:;

  LINE(1171);
            {
                {i.num = 0;
                }
                }

  LINE(1172);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
            CLUREF T_2_5;
                T_2_1.num = tg.vec->data[1];
                T_2_2.num = T_2_1.num;
                T_2_4.num = T_2_2.vec->size; 
                T_2_5 = T_2_2;
                for (T_2_3.num = 1; T_2_3.num <= T_2_4.num; T_2_3.num++) {
                    each_parm.num = T_2_5.vec->data[T_2_3.num - 1];

  LINE(1173);
                    {
                    CLUREF T_3_1;
                    err = debugOPteval(each_parm, &T_3_1);
                    if (err != ERR_ok) goto ex_0;
                    opers.num = T_3_1.num;
                    }

  LINE(1174);
                    {
                        {CLUREF T_3_1;
                        CLUREF T_3_2;
                        CLUREF T_3_3;
                        CLUREF T_3_4;
                        CLUREF T_3_5;
                        CLUREF T_3_6;
                        CLUREF T_3_7;
                        T_3_1.num = tg.vec->data[0];
                        err = stringOPconcat(T_3_1, STR__137of_137, &T_3_2);
                        if (err != ERR_ok) goto ex_0;
                        T_3_3.num = i.num + 1;
                         if ((T_3_3.num > 0 && i.num < 0 && 1 < 0) || 
                             (T_3_3.num < 0 && i.num > 0 && 1 > 0)) {
                            err = ERR_overflow;
                            goto ex_0;}
                        if (T_3_3.num < tformals.array->ext_low || T_3_3.num > tformals.array->ext_high ) {
                            err = ERR_bounds;
                            goto ex_0;}
                        T_3_4.num = tformals.array->store->data[T_3_3.num - tformals.array->ext_low + tformals.array->int_low];
                        err = stringOPconcat(T_3_2, T_3_4, &T_3_5);
                        if (err != ERR_ok) goto ex_0;
                        err = stringOPconcat(T_3_5, STR__137reqs_137actual, &T_3_6);
                        if (err != ERR_ok) goto ex_0;
                        err = symOPget_address(T_3_6, &T_3_7);
                        if (err != ERR_ok) goto ex_0;
                        reqs.num = T_3_7.num;
                        }
                        }

  LINE(1176);
                    {
                    err = clu_add_parm_info_type(i, opers, reqs);
                    if (err != ERR_ok) goto ex_0;
                    }

  LINE(1177);
                    {
                    CLUREF T_3_1;
                    T_3_1.num = i.num + 1;
                     if ((T_3_1.num > 0 && i.num < 0 && 1 < 0) || 
                         (T_3_1.num < 0 && i.num > 0 && 1 > 0)) {
                        err = ERR_overflow;
                        goto ex_0;}
                    i.num = T_3_1.num;
                    }
                }
            }
            end_inline_for_2:;

  LINE(1179);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            T_2_1.num = tg.vec->data[0];
            err = stringOPconcat(T_2_1, STR__137ops_137actual, &T_2_2);
            if (err != ERR_ok) goto ex_0;
            err = symOPget_address(T_2_2, &T_2_3);
            if (err != ERR_ok) goto ex_0;
            opers.num = T_2_3.num;
            }

  LINE(1180);
            {
                {CLUREF T_2_1;
                err = symOPget_address(STR_array_137ownreqs, &T_2_1);
                if (err != ERR_ok) goto ex_0;
                ownreqs.num = T_2_1.num;
                }
                }

  LINE(1181);
            {
                {CLUREF T_2_1;
                err = clu_find_type_instance(opers, CLU_1, ownreqs, &T_2_1);
                if (err != ERR_ok) goto ex_0;
                tops.num = T_2_1.num;
                }
                }

  LINE(1182);
            {
            {
            ret_1->num = tops.num;
            }
            {signal (ERR_ok);}}
            break;
            }
    case 11: 
         {CLUREF T_1_3;
        T_1_3.num = t.cell->value;
        sl.num = T_1_3.num;

  LINE(1184);
            {
                {i.num = 0;
                }
                }

  LINE(1185);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
            CLUREF T_2_5;
                T_2_1.num = sl.vec->data[1];
                T_2_2.num = T_2_1.num;
                T_2_4.num = T_2_2.vec->size; 
                T_2_5 = T_2_2;
                for (T_2_3.num = 1; T_2_3.num <= T_2_4.num; T_2_3.num++) {
                    d.num = T_2_5.vec->data[T_2_3.num - 1];

  LINE(1186);
                    {
                        {CLUREF T_3_1;
                        if (d.cell->tag != 5) {err = ERR_wrong_tag; goto ex_0;}
                        T_3_1.num = d.cell->value;
                        each_f.num = T_3_1.num;
                        }
                        }

  LINE(1187);
                    {
                        {CLUREF T_3_1;
                        CLUREF T_3_2;
                        CLUREF T_3_3;
                        T_3_1.num = each_f.vec->data[1];
                        T_3_2.num = T_3_1.num;
                        err = debugOPteval(T_3_2, &T_3_3);
                        if (err != ERR_ok) goto ex_0;
                        opsaddr.num = T_3_3.num;
                        }
                        }

  LINE(1188);
                    {
                    CLUREF T_3_1;
                    T_3_1.num = each_f.vec->data[0];
                    err = add_selector_info2(T_3_1, i, opsaddr);
                    if (err != ERR_ok) goto ex_0;
                    }

  LINE(1189);
                    {
                    CLUREF T_3_1;
                    T_3_1.num = i.num + 1;
                     if ((T_3_1.num > 0 && i.num < 0 && 1 < 0) || 
                         (T_3_1.num < 0 && i.num > 0 && 1 > 0)) {
                        err = ERR_overflow;
                        goto ex_0;}
                    i.num = T_3_1.num;
                    }
                }
            }
            end_inline_for_3:;

  LINE(1191);
            {
                {CLUREF T_2_1;
                CLUREF T_2_2;
                CLUREF T_2_3;
                CLUREF T_2_4;
                T_2_1.num = sl.vec->data[0];
                T_2_2.num = sl.vec->data[1];
                T_2_3.num = T_2_2.vec->size;
                err = find_selector_ops2(T_2_1, T_2_3, &T_2_4);
                if (err != ERR_ok) goto ex_0;
                tops.num = T_2_4.num;
                }
                }

  LINE(1192);
            {
            {
            ret_1->num = tops.num;
            }
            {signal (ERR_ok);}}
            break;
            }
    case 7: 
         {CLUREF T_1_4;
        T_1_4.num = t.cell->value;
        it.num = T_1_4.num;

  LINE(1194);
            {
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            T_2_1.num = it.vec->data[0];
            T_2_2.num = T_2_1.num;
            ret_1->num = T_2_2.num;
            }
            {signal (ERR_ok);}}
            break;
            }
    default: {

  LINE(1196);
        {
        err = logit(STR__040losing_040in_040teval_040);
        if (err != ERR_ok) goto ex_0;
        }
    }
    }
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE teval ****/

static int debugOPis_regular_apply_own_init = 0;

/**** BEGIN PROCEDURE is_regular_apply ****/

errcode debugOPis_regular_apply(opnm, ret_1)
CLUREF opnm;
CLUREF *ret_1;
    {
    errcode err;
    errcode ecode2;
    CLUREF loc;
    CLUREF typ;
        if (debugOPis_regular_apply_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPis_regular_apply_own_init = 1;
    }
    enter_proc(1200);

  LINE(1201);
    {
        {CLUREF T_1_1;
        CLUREF T_1_2;
        T_1_1.ch = 'O';
        err = stringOPindexc(T_1_1, opnm, &T_1_2);
        if (err != ERR_ok) goto ex_0;
        loc.num = T_1_2.num;
        }
        }

  LINE(1202);
    {
    CLUREF T_1_1;
    T_1_1.num = (loc.num == 0)? true : false;
    if (T_1_1.num == true) {
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        T_2_1.ch = '$';
        err = stringOPindexc(T_2_1, opnm, &T_2_2);
        if (err != ERR_ok) goto ex_0;
        loc.num = T_2_2.num;
        }
        }
        }/* end if */

  LINE(1203);
    {
    CLUREF T_1_1;
    T_1_1.num = (loc.num == 0)? true : false;
    if (T_1_1.num == true) {
        {
        {
        ret_1->tf = true;
        }
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(1204);
    {
        {CLUREF T_1_1;
        CLUREF T_1_2;
        T_1_1.num = loc.num - 1;
         if ((T_1_1.num >= 0 && loc.num < 0 && (-1) < 0) || 
             (T_1_1.num <= 0 && loc.num > 0 && (-1) > 0)) {
            err = ERR_overflow;
            goto ex_0;}
        err = stringOPsubstr(opnm, CLU_1, T_1_1, &T_1_2);
        if (err != ERR_ok) goto ex_0;
        typ.num = T_1_2.num;
        }
        }

  LINE(1205);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    CLUREF T_1_4;
    CLUREF T_1_5;
    CLUREF T_1_6;
    CLUREF T_1_7;
    CLUREF T_1_8;
    CLUREF T_1_9;
    T_1_5.num = ((typ.str->size != STR_record.str->size)? false :
        !(bcmp(typ.str->data, STR_record.str->data, typ.str->size)));
    T_1_4.num = T_1_5.num;
    if (!T_1_5.num) {
        T_1_6.num = ((typ.str->size != STR_struct.str->size)? false :
            !(bcmp(typ.str->data, STR_struct.str->data, typ.str->size)));
        T_1_4.num = T_1_6.num;
    }
    T_1_3.num = T_1_4.num;
    if (!T_1_4.num) {
        T_1_7.num = ((typ.str->size != STR_oneof.str->size)? false :
            !(bcmp(typ.str->data, STR_oneof.str->data, typ.str->size)));
        T_1_3.num = T_1_7.num;
    }
    T_1_2.num = T_1_3.num;
    if (!T_1_3.num) {
        T_1_8.num = ((typ.str->size != STR_variant.str->size)? false :
            !(bcmp(typ.str->data, STR_variant.str->data, typ.str->size)));
        T_1_2.num = T_1_8.num;
    }
    T_1_1.num = T_1_2.num;
    if (!T_1_2.num) {
        T_1_9.num = ((typ.str->size != STR_rep.str->size)? false :
            !(bcmp(typ.str->data, STR_rep.str->data, typ.str->size)));
        T_1_1.num = T_1_9.num;
    }
    if (T_1_1.num == true) {

  LINE(1208);
        {
        {
        ret_1->tf = false;
        }
        {signal (ERR_ok);}}
        }
    else {
        {
        {
        ret_1->tf = true;
        }
        {signal (ERR_ok);}}
        }}/* end if */
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE is_regular_apply ****/

static int debugOPdexpr2obj_own_init = 0;

/**** BEGIN PROCEDURE dexpr2obj ****/

errcode debugOPdexpr2obj(d, ret_1)
CLUREF d;
CLUREF *ret_1;
    {
    errcode err;
    errcode ecode2;
    CLUREF c;
    CLUREF m;
    CLUREF b;
    CLUREF ch;
    CLUREF st;
    CLUREF r;
    CLUREF n;
    CLUREF ob;
    CLUREF id;
        if (debugOPdexpr2obj_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPdexpr2obj_own_init = 1;
    }
    enter_proc(1211);

  LINE(1212);
    {
    switch (d.cell->tag) {
    case 4: 
         {CLUREF T_1_1;
        T_1_1.num = d.cell->value;
        c.num = T_1_1.num;

  LINE(1214);
            {
            switch (c.cell->tag) {
            case 3: 
                 {CLUREF T_2_1;
                T_2_1.num = c.cell->value;
                m.num = T_2_1.num;

  LINE(1216);
                    {
                    {
                    CLUREF T_3_1;
                    T_3_1.num = m.num;
                    ret_1->num = T_3_1.num;
                    }
                    {signal (ERR_ok);}}
                    break;
                    }
            case 1: 
                 {CLUREF T_2_2;
                T_2_2.num = c.cell->value;
                b.num = T_2_2.num;

  LINE(1218);
                    {
                    {
                    CLUREF T_3_1;
                    T_3_1.num = b.num;
                    ret_1->num = T_3_1.num;
                    }
                    {signal (ERR_ok);}}
                    break;
                    }
            case 2: 
                 {CLUREF T_2_3;
                T_2_3.num = c.cell->value;
                ch.num = T_2_3.num;

  LINE(1220);
                    {
                    {
                    CLUREF T_3_1;
                    T_3_1.num = ch.num;
                    ret_1->num = T_3_1.num;
                    }
                    {signal (ERR_ok);}}
                    break;
                    }
            case 6: 
                 {CLUREF T_2_4;
                T_2_4.num = c.cell->value;
                st.num = T_2_4.num;

  LINE(1222);
                    {
                    {
                    CLUREF T_3_1;
                    T_3_1.num = st.num;
                    ret_1->num = T_3_1.num;
                    }
                    {signal (ERR_ok);}}
                    break;
                    }
            case 5: 
                 {CLUREF T_2_5;
                T_2_5.num = c.cell->value;
                r.num = T_2_5.num;

  LINE(1224);
                    {
                    {
                    CLUREF T_3_1;
                    T_3_1.num = r.num;
                    ret_1->num = T_3_1.num;
                    }
                    {signal (ERR_ok);}}
                    break;
                    }
            case 4: 
                 {CLUREF T_2_6;
                T_2_6.num = c.cell->value;
                n.num = T_2_6.num;

  LINE(1226);
                    {
                    {
                    CLUREF T_3_1;
                    T_3_1.num = n.num;
                    ret_1->num = T_3_1.num;
                    }
                    {signal (ERR_ok);}}
                    break;
                    }
            }
            }
            break;
            }
    case 9: 
         {CLUREF T_1_2;
        T_1_2.num = d.cell->value;
        ob.num = T_1_2.num;

  LINE(1229);
            {
            {
            CLUREF T_2_1;
            T_2_1.num = ob.vec->data[1];
            ret_1->num = T_2_1.num;
            }
            {signal (ERR_ok);}}
            break;
            }
    case 6: 
         {CLUREF T_1_3;
        T_1_3.num = d.cell->value;
        id.num = T_1_3.num;

  LINE(1231);
            {
            {
            CLUREF T_3_1;
            err = dvarOPget_value(id, &T_3_1);
            if (err != ERR_ok) goto ex_1;
            ret_1->num = T_3_1.num;
            }
            {signal (ERR_ok);}}
                goto end_1;
                ex_1:
                    if ((err == ERR_not_found)) {

  LINE(1233);
                        {
                        {
                        CLUREF T_4_1;
                        CLUREF T_4_2;
                        CLUREF T_4_3;
                        CLUREF T_4_4;
                        T_4_1.num = debugOPdisplay.vec->data[2];
                        T_4_2.num = debugOPdisplay.vec->data[1];
                        err = slower(id, &T_4_3);
                        if (err != ERR_ok) goto ex_2;
                        err = debugopget_val(T_4_1, T_4_2, T_4_3, &T_4_4);
                        if (err != ERR_ok) goto ex_2;
                        ret_1->num = T_4_4.num;
                        }
                        {signal (ERR_ok);}}
                            goto end_2;
                            ex_2:
                                if ((err == ERR_not_found)) {

  LINE(1237);
                                    {
                                    CLUREF T_4_1;
                                    CLUREF T_4_2;
                                    err = stringOPconcat(STR_no_040variable_040named_040_076_076_040, id, &T_4_1);
                                    if (err != ERR_ok) goto ex_0;
                                    err = stringOPconcat(T_4_1, STR__040_074_074_040found, &T_4_2);
                                    if (err != ERR_ok) goto ex_0;
                                    elist[0] = T_4_2;
                                    {signal (ERR_not_possible);}}
                                }
                                else {
                                    goto ex_0;
                                }
                            end_2:;
                    }
                    else {
                        goto ex_0;
                    }
                end_1:;
            break;
            }
    default: {

  LINE(1241);
        {
        err = logit(STR_dexpr2obj_040losing);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1242);
        {
        {
        CLUREF T_2_1;
        T_2_1.num = 0;
        ret_1->num = T_2_1.num;
        }
        {signal (ERR_ok);}}
    }
    }
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE dexpr2obj ****/

static int debugOPeval_assn_own_init = 0;

/**** BEGIN PROCEDURE eval_assn ****/

errcode debugOPeval_assn(a, n)
CLUREF a;
CLUREF n;
    {
    errcode err;
    errcode ecode2;
    CLUREF j;
    CLUREF i;
    CLUREF value;
    CLUREF c;
    CLUREF b;
    CLUREF ch;
    CLUREF m;
    CLUREF s;
    CLUREF r;
    CLUREF n1;
    CLUREF a1;
    CLUREF o;
    CLUREF id;
    CLUREF d;
        if (debugOPeval_assn_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPeval_assn_own_init = 1;
    }
    enter_proc(1246);

  LINE(1248);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
        T_1_2.num = n.num;
        for (T_1_1.num = 1; T_1_1.num <= T_1_2.num; T_1_1.num++) {
            i.num = T_1_1.num;

  LINE(1249);
            {
            CLUREF T_2_1;
            T_2_1.num = i.num + n.num;
             if ((T_2_1.num > 0 && i.num < 0 && n.num < 0) || 
                 (T_2_1.num < 0 && i.num > 0 && n.num > 0)) {
                err = ERR_overflow;
                goto ex_0;}
            j.num = T_2_1.num;
            }

  LINE(1250);
            {
                {CLUREF T_2_1;
                T_2_1.num = 0;
                value.num = T_2_1.num;
                }
                }

  LINE(1251);
            {
            CLUREF T_2_1;
            err = estackOPfetch(a, i, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            switch (T_2_1.cell->tag) {
            case 4: 
                 {CLUREF T_2_2;
                T_2_2.num = T_2_1.cell->value;
                c.num = T_2_2.num;

  LINE(1253);
                    {
                    switch (c.cell->tag) {
                    case 1: 
                         {CLUREF T_3_1;
                        T_3_1.num = c.cell->value;
                        b.num = T_3_1.num;

  LINE(1255);
                            {
                            CLUREF T_4_1;
                            T_4_1.num = b.num;
                            value.num = T_4_1.num;
                            }
                            break;
                            }
                    case 2: 
                         {CLUREF T_3_2;
                        T_3_2.num = c.cell->value;
                        ch.num = T_3_2.num;

  LINE(1257);
                            {
                            CLUREF T_4_1;
                            T_4_1.num = ch.num;
                            value.num = T_4_1.num;
                            }
                            break;
                            }
                    case 3: 
                         {CLUREF T_3_3;
                        T_3_3.num = c.cell->value;
                        m.num = T_3_3.num;

  LINE(1259);
                            {
                            CLUREF T_4_1;
                            T_4_1.num = m.num;
                            value.num = T_4_1.num;
                            }
                            break;
                            }
                    case 6: 
                         {CLUREF T_3_4;
                        T_3_4.num = c.cell->value;
                        s.num = T_3_4.num;

  LINE(1261);
                            {
                            CLUREF T_4_1;
                            T_4_1.num = s.num;
                            value.num = T_4_1.num;
                            }
                            break;
                            }
                    case 5: 
                         {CLUREF T_3_5;
                        T_3_5.num = c.cell->value;
                        r.num = T_3_5.num;

  LINE(1263);
                            {
                            CLUREF T_4_1;
                            T_4_1.num = r.num;
                            value.num = T_4_1.num;
                            }
                            break;
                            }
                    case 4: 
                         {CLUREF T_3_6;
                        T_3_6.num = c.cell->value;
                        n1.num = T_3_6.num;

  LINE(1265);
                            {
                            CLUREF T_4_1;
                            T_4_1.num = n1.num;
                            value.num = T_4_1.num;
                            }
                            break;
                            }
                    }
                    }
                    break;
                    }
            case 1: 
                 {CLUREF T_2_3;
                T_2_3.num = T_2_1.cell->value;
                a1.num = T_2_3.num;

  LINE(1268);
                    {
                    err = logit(STR_acons_072_040eval_137assn);
                    if (err != ERR_ok) goto ex_0;
                    }
                    break;
                    }
            case 10: 
                 {CLUREF T_2_4;
                T_2_4.num = T_2_1.cell->value;
                s.num = T_2_4.num;

  LINE(1270);
                    {
                    err = logit(STR_scons_072_040eval_137assn);
                    if (err != ERR_ok) goto ex_0;
                    }
                    break;
                    }
            case 9: 
                 {CLUREF T_2_5;
                T_2_5.num = T_2_1.cell->value;
                o.num = T_2_5.num;

  LINE(1272);
                    {
                    CLUREF T_3_1;
                    T_3_1.num = o.vec->data[1];
                    value.num = T_3_1.num;
                    }
                    break;
                    }
            case 6: 
                 {CLUREF T_2_6;
                T_2_6.num = T_2_1.cell->value;
                id.num = T_2_6.num;

  LINE(1274);
                    {
                    CLUREF T_4_1;
                    err = dvarOPget_value(id, &T_4_1);
                    if (err != ERR_ok) goto ex_1;
                    value.num = T_4_1.num;
                    }
                        goto end_1;
                        ex_1:
                            if ((err == ERR_not_found)) {

  LINE(1276);
                                {
                                CLUREF T_5_1;
                                CLUREF T_5_2;
                                CLUREF T_5_3;
                                CLUREF T_5_4;
                                T_5_1.num = debugOPdisplay.vec->data[2];
                                T_5_2.num = debugOPdisplay.vec->data[1];
                                err = slower(id, &T_5_3);
                                if (err != ERR_ok) goto ex_2;
                                err = debugopget_val(T_5_1, T_5_2, T_5_3, &T_5_4);
                                if (err != ERR_ok) goto ex_2;
                                value.num = T_5_4.num;
                                }
                                    goto end_2;
                                    ex_2:
                                        if ((err == ERR_not_found)) {

  LINE(1280);
                                            {
                                            CLUREF T_5_1;
                                            err = stringOPconcat(id, STR__040not_040found, &T_5_1);
                                            if (err != ERR_ok) goto ex_0;
                                            err = debugOPerr_out(T_5_1);
                                            if (err != ERR_ok) goto ex_0;
                                            }

  LINE(1281);
                                            {
                                            {signal (ERR_not_possible);}}
                                        }
                                        else {
                                            goto ex_0;
                                        }
                                    end_2:;
                            }
                            else {
                                goto ex_0;
                            }
                        end_1:;
                    break;
                    }
            default: {

  LINE(1285);
                {
                err = logit(STR_others_072_040eval_137assn_0402);
                if (err != ERR_ok) goto ex_0;
                }
            }
            }
            }

  LINE(1287);
            {
            CLUREF T_2_1;
            err = estackOPfetch(a, j, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            switch (T_2_1.cell->tag) {
            case 6: 
                 {CLUREF T_2_2;
                T_2_2.num = T_2_1.cell->value;
                id.num = T_2_2.num;

  LINE(1289);
                    {
                    CLUREF T_4_1;
                    CLUREF T_4_2;
                    CLUREF T_4_3;
                    T_4_1.num = debugOPdisplay.vec->data[2];
                    T_4_2.num = debugOPdisplay.vec->data[1];
                    err = slower(id, &T_4_3);
                    if (err != ERR_ok) goto ex_3;
                    err = debugopset_val(T_4_1, T_4_2, T_4_3, value);
                    if (err != ERR_ok) goto ex_3;
                    }
                        goto end_3;
                        ex_3:
                            if ((err == ERR_not_found)) {

  LINE(1292);
                                {
                                    {CLUREF T_4_1;
                                    err = estackOPfetch(a, i, &T_4_1);
                                    if (err != ERR_ok) goto ex_0;
                                    d.num = T_4_1.num;
                                    }
                                    }

  LINE(1293);
                                {
                                CLUREF T_5_1;
                                if (d.cell->tag == 6) T_5_1.num = true; else T_5_1.num = false;
                                if (T_5_1.num == true) {

  LINE(1294);
                                    {
                                    CLUREF T_6_1;
                                    CLUREF T_6_2;
                                    if (d.cell->tag != 6) {err = ERR_wrong_tag; goto ex_4;}
                                    T_6_1.num = d.cell->value;
                                    err = dvarOPget_dexpr(T_6_1, &T_6_2);
                                    if (err != ERR_ok) goto ex_4;
                                    d.num = T_6_2.num;
                                    }
                                    }
                                    }/* end if */
                                    goto end_4;
                                    ex_4:
                                        if ((err == ERR_not_found)) {
                                        }
                                        else {
                                            goto ex_0;
                                        }
                                    end_4:;

  LINE(1298);
                                {
                                err = dvarOPset_value(id, d);
                                if (err != ERR_ok) goto ex_5;
                                }
                                    goto end_5;
                                    ex_5:
                                        if ((err == ERR_not_found)) {

  LINE(1300);
                                            {
                                            CLUREF T_5_1;
                                            err = pstreamOPstart(debugOPpst_tyo, STR_, &T_5_1);
                                            if (err != ERR_ok) goto ex_0;
                                            }

  LINE(1301);
                                            {
                                            CLUREF T_5_1;
                                            err = pstreamOPtext(debugOPpst_tyo, id, &T_5_1);
                                            if (err != ERR_ok) goto ex_0;
                                            }

  LINE(1302);
                                            {
                                            CLUREF T_5_1;
                                            err = pstreamOPtext(debugOPpst_tyo, STR__072_040_077_077_077_040Unknown_040variable, &T_5_1);
                                            if (err != ERR_ok) goto ex_0;
                                            }

  LINE(1303);
                                            {
                                            CLUREF T_5_1;
                                            err = pstreamOPstop(debugOPpst_tyo, STR_, &T_5_1);
                                            if (err != ERR_ok) goto ex_0;
                                            }

  LINE(1304);
                                            {
                                            CLUREF T_5_1;
                                            err = pstreamOPpause(debugOPpst_tyo, STR_, &T_5_1);
                                            if (err != ERR_ok) goto ex_0;
                                            }

  LINE(1305);
                                            {
                                            CLUREF T_5_1;
                                            T_5_1.num = i.num - 1;
                                             if ((T_5_1.num >= 0 && i.num < 0 && (-1) < 0) || 
                                                 (T_5_1.num <= 0 && i.num > 0 && (-1) > 0)) {
                                                err = ERR_overflow;
                                                goto ex_0;}
                                            err = estackOPtrim(a, CLU_1, T_5_1);
                                            if (err != ERR_ok) goto ex_0;
                                            }

  LINE(1306);
                                            {
                                            {signal (ERR_ok);}}
                                        }
                                        else {
                                            goto ex_0;
                                        }
                                    end_5:;
                            }
                            else if ((err == ERR_not_possible)) {

  LINE(1309);
                                {
                                CLUREF T_4_1;
                                err = pstreamOPstart(debugOPpst_tyo, STR_, &T_4_1);
                                if (err != ERR_ok) goto ex_0;
                                }

  LINE(1310);
                                {
                                CLUREF T_4_1;
                                err = pstreamOPtext(debugOPpst_tyo, id, &T_4_1);
                                if (err != ERR_ok) goto ex_0;
                                }

  LINE(1311);
                                {
                                CLUREF T_4_1;
                                err = pstreamOPtext(debugOPpst_tyo, STR__072_040_077_077_077_040no_040print_040function, &T_4_1);
                                if (err != ERR_ok) goto ex_0;
                                }

  LINE(1312);
                                {
                                CLUREF T_4_1;
                                err = pstreamOPstop(debugOPpst_tyo, STR_, &T_4_1);
                                if (err != ERR_ok) goto ex_0;
                                }

  LINE(1313);
                                {
                                CLUREF T_4_1;
                                err = pstreamOPpause(debugOPpst_tyo, STR_, &T_4_1);
                                if (err != ERR_ok) goto ex_0;
                                }

  LINE(1314);
                                {
                                CLUREF T_4_1;
                                T_4_1.num = i.num - 1;
                                 if ((T_4_1.num >= 0 && i.num < 0 && (-1) < 0) || 
                                     (T_4_1.num <= 0 && i.num > 0 && (-1) > 0)) {
                                    err = ERR_overflow;
                                    goto ex_0;}
                                err = estackOPtrim(a, CLU_1, T_4_1);
                                if (err != ERR_ok) goto ex_0;
                                }

  LINE(1315);
                                {
                                {signal (ERR_ok);}}
                            }
                            else {
                                goto ex_0;
                            }
                        end_3:;
                    break;
                    }
            default: {

  LINE(1318);
                {
                err = logit(STR_others_072_040eval_137assn_0403);
                if (err != ERR_ok) goto ex_0;
                }
            }
            }
            }

  LINE(1320);
            {
            CLUREF T_2_1;
            err = estackOPfetch(a, j, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            err = estackOPstore(a, i, T_2_1);
            if (err != ERR_ok) goto ex_0;
            }
        }
    }
    end_inline_for_1:;

  LINE(1322);
    {
    err = estackOPtrim(a, CLU_1, n);
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE eval_assn ****/


/**** BEGIN PROCEDURE find_normal_ops ****/

errcode debugOPfind_normal_ops(nm, ret_1)
CLUREF nm;
CLUREF *ret_1;
    {
    errcode err;
    errcode ecode2;
    CLUREF r;
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
    enter_proc(1325);

  LINE(1326);
    {
        {CLUREF T_2_1;
        err = debugOPfind_rtn_info(nm, &T_2_1);
        if (err != ERR_ok) goto ex_1;
        r.num = T_2_1.num;
        }
        }
    goto end_1;
    ex_1:
        if (err == ERR_not_possible) {signal(ERR_not_possible);}
        else {
            goto ex_0;}
    end_1:;

  LINE(1327);
    {
    {
    CLUREF T_1_1;
    T_1_1.num = r.vec->data[6];
    ret_1->num = T_1_1.num;
    }
    {signal (ERR_ok);}}
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE find_normal_ops ****/


/**** BEGIN PROCEDURE find_signal_ops ****/

errcode debugOPfind_signal_ops(sig, nm, ret_1)
CLUREF sig;
CLUREF nm;
CLUREF *ret_1;
    {
    errcode err;
    errcode ecode2;
    CLUREF r;
    CLUREF each_d;
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
    enter_proc(1330);

  LINE(1331);
    {
        {CLUREF T_2_1;
        err = debugOPfind_rtn_info(nm, &T_2_1);
        if (err != ERR_ok) goto ex_1;
        r.num = T_2_1.num;
        }
        }
    goto end_1;
    ex_1:
        if (err == ERR_not_possible) {signal(ERR_not_possible);}
        else {
            goto ex_0;}
    end_1:;

  LINE(1332);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    CLUREF T_1_4;
        T_1_1.num = r.vec->data[7];
        T_1_3.num = T_1_1.vec->size; 
        T_1_4 = T_1_1;
        for (T_1_2.num = 1; T_1_2.num <= T_1_3.num; T_1_2.num++) {
            each_d.num = T_1_4.vec->data[T_1_2.num - 1];

  LINE(1333);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            T_2_1.num = each_d.vec->data[0];
            T_2_2.num = ((sig.str->size != T_2_1.str->size)? false :
                !(bcmp(sig.str->data, T_2_1.str->data, sig.str->size)));
            if (T_2_2.num == true) {
                {
                {
                CLUREF T_3_1;
                T_3_1.num = each_d.vec->data[1];
                ret_1->num = T_3_1.num;
                }
                {signal (ERR_ok);}}
                }
                }/* end if */
        }
    }
    end_inline_for_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE find_signal_ops ****/

static int debugOPfind_rtn_info_own_init = 0;

/**** BEGIN PROCEDURE find_rtn_info ****/

errcode debugOPfind_rtn_info(nm, ret_1)
CLUREF nm;
CLUREF *ret_1;
    {
    errcode err;
    errcode ecode2;
    CLUREF ri;
        if (debugOPfind_rtn_info_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPfind_rtn_info_own_init = 1;
    }
    enter_proc(1337);

  LINE(1338);
    {
        {CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        CLUREF T_2_4;
        err = stringOPconcat(STR_dbg_137info_137, nm, &T_2_1);
        if (err != ERR_ok) goto ex_1;
        err = stringOPconcat(T_2_1, STR__137data, &T_2_2);
        if (err != ERR_ok) goto ex_1;
        err = symOPget_address(T_2_2, &T_2_3);
        if (err != ERR_ok) goto ex_1;
        T_2_4.num = T_2_3.num;
        ri.num = T_2_4.num;
        }
        }
        goto end_1;
        ex_1:
            if ((err == ERR_not_found)) {

  LINE(1341);
                {
                CLUREF T_2_1;
                CLUREF T_2_2;
                CLUREF T_2_3;
                err = externalize(nm, &T_2_1);
                if (err != ERR_ok) goto ex_0;
                err = stringOPconcat(STR_proc_057iter_040_076_076_040, T_2_1, &T_2_2);
                if (err != ERR_ok) goto ex_0;
                err = stringOPconcat(T_2_2, STR__040_074_074_040does_040not_040exist_040, &T_2_3);
                if (err != ERR_ok) goto ex_0;
                elist[0] = T_2_3;
                {signal (ERR_not_possible);}}
            }
            else {
                goto ex_0;
            }
        end_1:;

  LINE(1343);
    {
    {
    ret_1->num = ri.num;
    }
    {signal (ERR_ok);}}
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE find_rtn_info ****/

static int debugOPhelp_cmd_own_init = 0;

/**** BEGIN PROCEDURE help_cmd ****/

errcode debugOPhelp_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF each_arg;
    CLUREF found;
    CLUREF each_cmd;
        if (debugOPhelp_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPhelp_cmd_own_init = 1;
    }
    enter_proc(1346);

  LINE(1347);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(1348);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {

  LINE(1350);
        {
        err = streamOPputl(debugOPtyo, STR_);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1351);
        {
        err = streamOPputl(debugOPtyo, STR_Category_072_011Commands);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1352);
        {
        err = streamOPputl(debugOPtyo, STR_);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1353);
        {
        err = streamOPputl(debugOPtyo, STR_Breakpoints_072_011break_054_040step_054_040unstep_054_040show_054_040delete);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1354);
        {
        err = streamOPputl(debugOPtyo, STR_Signal_040Tracing_072_011trace_054_040untrace_054_040show_054_040delete);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1355);
        {
        err = streamOPputl(debugOPtyo, STR_Running_072_011continue_054_040run_054_040next_054_040restart_054_040rebuild);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1356);
        {
        err = streamOPputl(debugOPtyo, STR_Display_072_011print_054_040width_054_040depth_054_040help_054_040where_054_040up_054_040down_054_040list_054_040func);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1357);
        {
        err = streamOPputl(debugOPtyo, STR_Invocation_072_011eval_054_040alias_054_040unalias_054_040execute_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040_040);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1358);
        {
        err = streamOPputl(debugOPtyo, STR_Other_072_011_011quit);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1359);
        {
        err = streamOPputl(debugOPtyo, STR_);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {

  LINE(1364);
        {
        err = streamOPputl(debugOPtyo, STR_);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1365);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
            T_2_2.num = arglist.array->ext_high; 
            T_2_3 = arglist;
            for (T_2_1.num = arglist.array->ext_low; T_2_1.num <= T_2_2.num; T_2_1.num++) {
                if (T_2_1.num > T_2_3.array->ext_high || T_2_1.num < T_2_3.array->ext_low) {
                    err = ERR_failure;
                    elist[0].str = array_bounds_exception_STRING;
                    goto ex_0;}
                each_arg.num = T_2_3.array->store->data[T_2_1.num - T_2_3.array->ext_low + T_2_3.array->int_low];

  LINE(1366);
                {
                    {found.tf = false;
                    }
                    }

  LINE(1367);
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                CLUREF T_3_3;
                    T_3_2.num = debugOPcmd_desc.array->ext_high; 
                    T_3_3 = debugOPcmd_desc;
                    for (T_3_1.num = debugOPcmd_desc.array->ext_low; T_3_1.num <= T_3_2.num; T_3_1.num++) {
                        if (T_3_1.num > T_3_3.array->ext_high || T_3_1.num < T_3_3.array->ext_low) {
                            err = ERR_failure;
                            elist[0].str = array_bounds_exception_STRING;
                            goto ex_0;}
                        each_cmd.num = T_3_3.array->store->data[T_3_1.num - T_3_3.array->ext_low + T_3_3.array->int_low];

  LINE(1368);
                        {
                        CLUREF T_4_1;
                        CLUREF T_4_2;
                        CLUREF T_4_3;
                        CLUREF T_4_4;
                        CLUREF T_4_5;
                        T_4_2.num = each_cmd.vec->data[1];
                        err = stringOPindexs(each_arg, T_4_2, &T_4_3);
                        if (err != ERR_ok) goto ex_0;
                        T_4_4.num = (T_4_3.num == 1)? true : false;
                        T_4_1.num = T_4_4.num;
                        if (!T_4_4.num) {
                            T_4_5.num = ((each_arg.str->size != STR_all.str->size)? false :
                                !(bcmp(each_arg.str->data, STR_all.str->data, each_arg.str->size)));
                            T_4_1.num = T_4_5.num;
                        }
                        if (T_4_1.num == true) {

  LINE(1370);
                            {
                            found.tf = true;
                            }

  LINE(1371);
                            {
                            CLUREF T_5_1;
                            CLUREF T_5_2;
                            CLUREF T_5_3;
                            CLUREF T_5_4;
                            T_5_1.num = each_cmd.vec->data[1];
                            err = stringOPconcat(T_5_1, STR__040, &T_5_2);
                            if (err != ERR_ok) goto ex_0;
                            T_5_3.num = each_cmd.vec->data[0];
                            err = stringOPconcat(T_5_2, T_5_3, &T_5_4);
                            if (err != ERR_ok) goto ex_0;
                            err = streamOPputl(debugOPtyo, T_5_4);
                            if (err != ERR_ok) goto ex_0;
                            }
                            }
                            }/* end if */
                    }
                }
                end_inline_for_2:;

  LINE(1373);
                {
                CLUREF T_3_1;
                T_3_1.num = found.num ^ 1;
                if (T_3_1.num == true) {

  LINE(1374);
                    {
                    CLUREF T_4_1;
                    err = stringOPconcat(STR_sorry_054_040no_040information_040about_040, each_arg, &T_4_1);
                    if (err != ERR_ok) goto ex_0;
                    err = streamOPputl(debugOPtyo, T_4_1);
                    if (err != ERR_ok) goto ex_0;
                    }
                    }
                    }/* end if */
            }
        }
        end_inline_for_1:;

  LINE(1377);
        {
        err = streamOPputl(debugOPtyo, STR_);
        if (err != ERR_ok) goto ex_0;
        }
        }}/* end if */
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE help_cmd ****/

static int debugOPwhere_cmd_own_init = 0;

/**** BEGIN PROCEDURE where_cmd ****/

errcode debugOPwhere_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF top;
    CLUREF utop;
    CLUREF s;
    CLUREF leadsp;
    CLUREF maxlineno;
    CLUREF maxnm;
    CLUREF ri;
    CLUREF line;
    CLUREF i;
    CLUREF nmlen;
    CLUREF lineln;
    CLUREF nm;
        if (debugOPwhere_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPwhere_cmd_own_init = 1;
    }
    enter_proc(1381);

  LINE(1382);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(1383);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num > 1)? true : false;
    if (T_1_2.num == true) {

  LINE(1384);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040where_040command_012);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1385);
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(1389);
    {
        {CLUREF T_1_1;
        err = debugopframe_count(&T_1_1);
        if (err != ERR_ok) goto ex_0;
        top.num = T_1_1.num;
        }
        }

  LINE(1390);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 1)? true : false;
    if (T_1_2.num == true) {

  LINE(1391);
        {
            {CLUREF T_3_1;
            CLUREF T_3_2;
            if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
                err = ERR_bounds;
                goto ex_1;}
            T_3_1.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
            err = intOPparse(T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_1;
            utop.num = T_3_2.num;
            }
            }
            goto end_1;
            ex_1:
                {
                    CLUREF s;
                    s = _pclu_erstr(err);

  LINE(1393);
                    {
                    err = streamOPputl(debugOPtyo, STR__012Bad_040argument_040to_040where_040command_012);
                    if (err != ERR_ok) goto ex_0;
                    }

  LINE(1394);
                    {
                    {signal (ERR_ok);}}
                }
            end_1:;

  LINE(1396);
        {
        CLUREF T_2_1;
        T_2_1.num = (utop.num < 1)? true : false;
        if (T_2_1.num == true) {

  LINE(1397);
            {
            err = streamOPputl(debugOPtyo, STR__012Bad_040argument_040to_040where_040command_012);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1398);
            {
            {signal (ERR_ok);}}
            }
            }/* end if */

  LINE(1400);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        T_2_2.num = (utop.num < top.num)? true : false;
        T_2_1.num = T_2_2.num;
        if (T_2_2.num) {
            T_2_3.num = (utop.num > 0)? true : false;
            T_2_1.num = T_2_3.num;
        }
        if (T_2_1.num == true) {
            {
            top.num = utop.num;
            }
            }
            }/* end if */
        }
        }/* end if */

  LINE(1404);
    {
        {CLUREF T_1_1;
        err = debugOPdigits(top, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        leadsp.num = T_1_1.num;
        }
        }

  LINE(1405);
    {
        {maxlineno.num = 0;
        }
        }

  LINE(1406);
    {
        {maxnm.num = 0;
        }
        }

  LINE(1409);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
        T_1_2.num = top.num;
        T_1_3.num = 1;
        for (T_1_1.num = 1; ((T_1_3.num == 0) || ((T_1_3.num > 0)? (T_1_1.num <= T_1_2.num) : (T_1_1.num >= T_1_2.num))); T_1_1.num += T_1_3.num) {
            i.num = T_1_1.num;

  LINE(1410);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            err = debugopframe_info(i, &T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_2;
            ri.num = T_3_1.num;
            line.num = T_3_2.num;
            }
                goto end_2;
                ex_2:
                    if ((err == ERR_none)) {

  LINE(1412);
                        continue;
                    }
                    else {
                        goto ex_0;
                    }
                end_2:;

  LINE(1414);
            {
                {CLUREF T_2_1;
                CLUREF T_2_2;
                CLUREF T_2_3;
                err = debugopget_name(ri, &T_2_1);
                if (err != ERR_ok) goto ex_0;
                err = externalize(T_2_1, &T_2_2);
                if (err != ERR_ok) goto ex_0;
                err = stringOPsize(T_2_2, &T_2_3);
                if (err != ERR_ok) goto ex_0;
                nmlen.num = T_2_3.num;
                }
                }

  LINE(1415);
            {
            CLUREF T_2_1;
            T_2_1.num = (nmlen.num > maxnm.num)? true : false;
            if (T_2_1.num == true) {
                {
                maxnm.num = nmlen.num;
                }
                }
                }/* end if */

  LINE(1416);
            {
                {CLUREF T_2_1;
                err = debugOPdigits(line, &T_2_1);
                if (err != ERR_ok) goto ex_0;
                lineln.num = T_2_1.num;
                }
                }

  LINE(1417);
            {
            CLUREF T_2_1;
            T_2_1.num = (lineln.num > maxlineno.num)? true : false;
            if (T_2_1.num == true) {
                {
                maxlineno.num = lineln.num;
                }
                }
                }/* end if */
        }
    }
    end_inline_for_1:;

  LINE(1421);
    {
    err = streamOPputs(debugOPtyo, STR__012);
    if (err != ERR_ok) goto ex_0;
    }

  LINE(1422);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
        T_1_2.num = top.num;
        T_1_3.num = 1;
        for (T_1_1.num = 1; ((T_1_3.num == 0) || ((T_1_3.num > 0)? (T_1_1.num <= T_1_2.num) : (T_1_1.num >= T_1_2.num))); T_1_1.num += T_1_3.num) {
            i.num = T_1_1.num;

  LINE(1423);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            err = debugopframe_info(i, &T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_3;
            ri.num = T_3_1.num;
            line.num = T_3_2.num;
            }
                goto end_3;
                ex_3:
                    if ((err == ERR_none)) {

  LINE(1425);
                        {
                        err = streamOPputs(debugOPtyo, STR__040_040);
                        if (err != ERR_ok) goto ex_0;
                        }

  LINE(1426);
                        {
                        CLUREF T_3_1;
                        CLUREF T_3_2;
                        err = debugOPdigits(i, &T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        T_3_2.num = leadsp.num - T_3_1.num;
                         if ((T_3_2.num >= 0 && leadsp.num < 0 && (-T_3_1.num) < 0) || 
                             (T_3_2.num <= 0 && leadsp.num > 0 && (-T_3_1.num) > 0)) {
                            err = ERR_overflow;
                            goto ex_0;}
                        err = streamOPputspace(debugOPtyo, T_3_2);
                        if (err != ERR_ok) goto ex_0;
                        }

  LINE(1427);
                        {
                        CLUREF T_3_1;
                        err = intOPunparse(i, &T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        err = streamOPputs(debugOPtyo, T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        }

  LINE(1428);
                        {
                        err = streamOPputl(debugOPtyo, STR__072_040OWN_040INIT_040PROC);
                        if (err != ERR_ok) goto ex_0;
                        }

  LINE(1429);
                        continue;
                    }
                    else {
                        goto ex_0;
                    }
                end_3:;

  LINE(1431);
            {
                {CLUREF T_2_1;
                err = debugopget_name(ri, &T_2_1);
                if (err != ERR_ok) goto ex_0;
                nm.num = T_2_1.num;
                }
                }

  LINE(1432);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            T_2_1.num = debugOPdisplay.vec->data[1];
            T_2_2.num = ((nm.str->size != T_2_1.str->size)? false :
                !(bcmp(nm.str->data, T_2_1.str->data, nm.str->size)));
            if (T_2_2.num == true) {

  LINE(1434);
                {
                err = streamOPputs(debugOPtyo, STR__052_076);
                if (err != ERR_ok) goto ex_0;
                }
                }
            else {

  LINE(1436);
                {
                err = streamOPputs(debugOPtyo, STR__040_040);
                if (err != ERR_ok) goto ex_0;
                }
                }}/* end if */

  LINE(1438);
            {
            CLUREF T_2_1;
            err = externalize(nm, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            nm.num = T_2_1.num;
            }

  LINE(1439);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            err = debugOPdigits(i, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            T_2_2.num = leadsp.num - T_2_1.num;
             if ((T_2_2.num >= 0 && leadsp.num < 0 && (-T_2_1.num) < 0) || 
                 (T_2_2.num <= 0 && leadsp.num > 0 && (-T_2_1.num) > 0)) {
                err = ERR_overflow;
                goto ex_0;}
            err = streamOPputspace(debugOPtyo, T_2_2);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1440);
            {
            CLUREF T_2_1;
            err = intOPunparse(i, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            err = streamOPputs(debugOPtyo, T_2_1);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1441);
            {
            err = streamOPputs(debugOPtyo, STR__072_040);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1442);
            {
            err = streamOPputs(debugOPtyo, nm);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1443);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
            CLUREF T_2_5;
            CLUREF T_2_6;
            T_2_1.num = 1 + maxnm.num;
             if ((T_2_1.num > 0 && 1 < 0 && maxnm.num < 0) || 
                 (T_2_1.num < 0 && 1 > 0 && maxnm.num > 0)) {
                err = ERR_overflow;
                goto ex_0;}
            err = stringOPsize(nm, &T_2_2);
            if (err != ERR_ok) goto ex_0;
            T_2_3.num = T_2_1.num - T_2_2.num;
             if ((T_2_3.num >= 0 && T_2_1.num < 0 && (-T_2_2.num) < 0) || 
                 (T_2_3.num <= 0 && T_2_1.num > 0 && (-T_2_2.num) > 0)) {
                err = ERR_overflow;
                goto ex_0;}
            T_2_4.num = T_2_3.num + maxlineno.num;
             if ((T_2_4.num > 0 && T_2_3.num < 0 && maxlineno.num < 0) || 
                 (T_2_4.num < 0 && T_2_3.num > 0 && maxlineno.num > 0)) {
                err = ERR_overflow;
                goto ex_0;}
            err = debugOPdigits(line, &T_2_5);
            if (err != ERR_ok) goto ex_0;
            T_2_6.num = T_2_4.num - T_2_5.num;
             if ((T_2_6.num >= 0 && T_2_4.num < 0 && (-T_2_5.num) < 0) || 
                 (T_2_6.num <= 0 && T_2_4.num > 0 && (-T_2_5.num) > 0)) {
                err = ERR_overflow;
                goto ex_0;}
            err = streamOPputspace(debugOPtyo, T_2_6);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1445);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            err = debugopget_fname(ri, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            T_2_2.num = -1;
            err = srcOPlist(debugOPtyo, T_2_1, nm, line, line, T_2_2, CLU_1, CLU_0);
            if (err != ERR_ok) goto ex_0;
            }
        }
    }
    end_inline_for_2:;

  LINE(1447);
    {
    err = streamOPputs(debugOPtyo, STR__012);
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE where_cmd ****/


/**** BEGIN PROCEDURE digits ****/

errcode debugOPdigits(num, ret_1)
CLUREF num;
CLUREF *ret_1;
    {
    errcode err;
    errcode ecode2;
    CLUREF sign;
    CLUREF count;
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
    enter_proc(1450);

  LINE(1451);
    {
        {sign.num = 0;
        }
        }

  LINE(1452);
    {
    CLUREF T_1_1;
    T_1_1.num = (num.num < 0)? true : false;
    if (T_1_1.num == true) {
        {
        sign.num = 1;
        }
        {
        CLUREF T_2_1;
        err = intOPminus(num, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        num.num = T_2_1.num;
        }
        }
        }/* end if */

  LINE(1453);
    {
        {count.num = 1;
        }
        }

  LINE(1454);
    for (;;) {
        if (true != true) { break; }

  LINE(1455);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        err = intOPpower(CLU_10, count, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        T_2_2.num = (num.num > T_2_1.num)? true : false;
        if (T_2_2.num == true) {
            {
            CLUREF T_3_1;
            T_3_1.num = count.num + 1;
             if ((T_3_1.num > 0 && count.num < 0 && 1 < 0) || 
                 (T_3_1.num < 0 && count.num > 0 && 1 > 0)) {
                err = ERR_overflow;
                goto ex_0;}
            count.num = T_3_1.num;
            }
            continue;
            }
        else {

  LINE(1456);
            goto end_while_1;
            }}/* end if */
        }
        end_while_1:;

  LINE(1458);
    {
    {
    CLUREF T_1_1;
    T_1_1.num = count.num + sign.num;
     if ((T_1_1.num > 0 && count.num < 0 && sign.num < 0) || 
         (T_1_1.num < 0 && count.num > 0 && sign.num > 0)) {
        err = ERR_overflow;
        goto ex_0;}
    ret_1->num = T_1_1.num;
    }
    {signal (ERR_ok);}}
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE digits ****/

static int debugOPfunc_cmd_own_init = 0;

/**** BEGIN PROCEDURE func_cmd ****/

errcode debugOPfunc_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF func;
    CLUREF info;
    CLUREF fnm;
        if (debugOPfunc_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPfunc_cmd_own_init = 1;
    }
    enter_proc(1461);

  LINE(1462);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(1463);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    if (T_1_2.num == true) {

  LINE(1464);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040few_040arguments_040to_040func_040command_012);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1465);
        {
        {signal (ERR_ok);}}
        }
    else {
    CLUREF T_1_3;
    CLUREF T_1_4;
    T_1_3.num = arglist.array->ext_size;
    T_1_4.num = (T_1_3.num > 1)? true : false;
    if (T_1_4.num == true) {

  LINE(1467);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040func_040command_012);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1468);
        {
        {signal (ERR_ok);}}
        }
        }}/* end if */

  LINE(1470);
    {
        {CLUREF T_1_1;
        err = internalize(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        func.num = T_1_1.num;
        }
        }

  LINE(1471);
    {
        {CLUREF T_1_1;
        err = debugOPfind_rtn_info(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        info.num = T_1_1.num;
        }
        }

  LINE(1472);
    {
        {CLUREF T_1_1;
        err = debugopget_fname(info, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        fnm.num = T_1_1.num;
        }
        }

  LINE(1473);
    {
    debugOPdisplay.vec->data[1]  = args.num;
    }

  LINE(1474);
    {
    CLUREF T_1_1;
    err = srcOPfind_module(fnm, func, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    debugOPdisplay.vec->data[0]  = T_1_1.num;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE func_cmd ****/

static int debugOPup_cmd_own_init = 0;

/**** BEGIN PROCEDURE up_cmd ****/

errcode debugOPup_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF delta;
    CLUREF new_frame;
    CLUREF ri;
    CLUREF line;
    CLUREF fnm;
        if (debugOPup_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPup_cmd_own_init = 1;
    }
    enter_proc(1477);

  LINE(1478);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(1479);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    CLUREF T_1_4;
    CLUREF T_1_5;
    CLUREF T_1_6;
    T_1_2.num = arglist.array->ext_size;
    T_1_3.num = (T_1_2.num == 0)? true : false;
    T_1_1.num = T_1_3.num;
    if (!T_1_3.num) {
        T_1_4.num = arglist.array->ext_size;
        T_1_5.num = (T_1_4.num == 1)? true : false;
        T_1_1.num = T_1_5.num;
    }
    T_1_6.num = T_1_1.num ^ 1;
    if (T_1_6.num == true) {

  LINE(1480);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040up_040command_012);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1481);
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(1484);
    {
    CLUREF T_2_1;
    CLUREF T_2_2;
    err = stringOPsize(args, &T_2_1);
    if (err != ERR_ok) goto ex_1;
    T_2_2.num = (T_2_1.num == 0)? true : false;
    if (T_2_2.num == true) {
        {
        delta.num = 1;
        }
        }
    else {

  LINE(1485);
        {
        CLUREF T_3_1;
        err = intOPparse(args, &T_3_1);
        if (err != ERR_ok) goto ex_1;
        delta.num = T_3_1.num;
        }
        }}/* end if */
        goto end_1;
        ex_1:
            {

  LINE(1487);
                {
                err = debugOPerr_out(STR_can_047t_040parse_040argument);
                if (err != ERR_ok) goto ex_0;
                }
            }
        end_1:;

  LINE(1489);
    {
        {CLUREF T_1_1;
        CLUREF T_1_2;
        T_1_1.num = debugOPdisplay.vec->data[2];
        T_1_2.num = T_1_1.num - delta.num;
         if ((T_1_2.num >= 0 && T_1_1.num < 0 && (-delta.num) < 0) || 
             (T_1_2.num <= 0 && T_1_1.num > 0 && (-delta.num) > 0)) {
            err = ERR_overflow;
            goto ex_0;}
        new_frame.num = T_1_2.num;
        }
        }

  LINE(1490);
    for (;;) {
        if (true != true) { break; }

  LINE(1491);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        CLUREF T_2_3;
        CLUREF T_2_4;
        T_2_2.num = (new_frame.num < 1)? true : false;
        T_2_1.num = T_2_2.num;
        if (!T_2_2.num) {
            T_2_3.num = debugOPcurrent_state.vec->data[4];
            T_2_4.num = (new_frame.num > T_2_3.num)? true : false;
            T_2_1.num = T_2_4.num;
        }
        if (T_2_1.num == true) {

  LINE(1493);
            {
            err = debugOPerr_out(STR_not_040that_040many_040frames);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1494);
            {
            {signal (ERR_ok);}}
            }
        else {

  LINE(1497);
            {
            CLUREF T_4_1;
            CLUREF T_4_2;
            err = debugopframe_info(new_frame, &T_4_1, &T_4_2);
            if (err != ERR_ok) goto ex_2;
            ri.num = T_4_1.num;
            line.num = T_4_2.num;
            }
                goto end_2;
                ex_2:
                    if ((err == ERR_none)) {

  LINE(1499);
                        {
                        CLUREF T_4_1;
                        T_4_1.num = new_frame.num - 1;
                         if ((T_4_1.num >= 0 && new_frame.num < 0 && (-1) < 0) || 
                             (T_4_1.num <= 0 && new_frame.num > 0 && (-1) > 0)) {
                            err = ERR_overflow;
                            goto ex_0;}
                        new_frame.num = T_4_1.num;
                        }

  LINE(1500);
                        {
                        err = streamOPputl(debugOPtyo, STR_skipping_040over_040an_040own_040init_040procedure);
                        if (err != ERR_ok) goto ex_0;
                        }

  LINE(1501);
                        continue;
                    }
                    else {
                        goto ex_0;
                    }
                end_2:;

  LINE(1503);
            {
            debugOPdisplay.vec->data[2]  = new_frame.num;
            }

  LINE(1504);
            {
            CLUREF T_3_1;
            err = debugopget_name(ri, &T_3_1);
            if (err != ERR_ok) goto ex_0;
            debugOPdisplay.vec->data[1]  = T_3_1.num;
            }

  LINE(1505);
            {
            debugOPdisplay.vec->data[0]  = line.num;
            }

  LINE(1506);
            {
                {CLUREF T_3_1;
                err = debugopget_fname(ri, &T_3_1);
                if (err != ERR_ok) goto ex_0;
                fnm.num = T_3_1.num;
                }
                }

  LINE(1507);
            {
            err = streamOPputspace(debugOPtyo, CLU_2);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1508);
            {
            CLUREF T_3_1;
            err = intOPunparse(new_frame, &T_3_1);
            if (err != ERR_ok) goto ex_0;
            err = streamOPputs(debugOPtyo, T_3_1);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1509);
            {
            err = streamOPputs(debugOPtyo, STR__072_040);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1510);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            T_3_1.num = debugOPdisplay.vec->data[1];
            err = externalize(T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_0;
            err = streamOPputs(debugOPtyo, T_3_2);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1511);
            {
            err = streamOPputspace(debugOPtyo, CLU_2);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1512);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            T_3_1.num = debugOPdisplay.vec->data[1];
            T_3_2.num = -1;
            err = srcOPlist(debugOPtyo, fnm, T_3_1, line, line, T_3_2, CLU_1, CLU_0);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1514);
            {
            {signal (ERR_ok);}}
            }}/* end if */
        }
        end_while_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE up_cmd ****/

static int debugOPdown_cmd_own_init = 0;

/**** BEGIN PROCEDURE down_cmd ****/

errcode debugOPdown_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
    CLUREF delta;
    CLUREF new_frame;
    CLUREF ri;
    CLUREF line;
    CLUREF fnm;
        if (debugOPdown_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPdown_cmd_own_init = 1;
    }
    enter_proc(1519);

  LINE(1520);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(1521);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    CLUREF T_1_4;
    CLUREF T_1_5;
    CLUREF T_1_6;
    T_1_2.num = arglist.array->ext_size;
    T_1_3.num = (T_1_2.num == 0)? true : false;
    T_1_1.num = T_1_3.num;
    if (!T_1_3.num) {
        T_1_4.num = arglist.array->ext_size;
        T_1_5.num = (T_1_4.num == 1)? true : false;
        T_1_1.num = T_1_5.num;
    }
    T_1_6.num = T_1_1.num ^ 1;
    if (T_1_6.num == true) {

  LINE(1522);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040down_040command_012);
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1523);
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(1526);
    {
    CLUREF T_2_1;
    CLUREF T_2_2;
    err = stringOPsize(args, &T_2_1);
    if (err != ERR_ok) goto ex_1;
    T_2_2.num = (T_2_1.num == 0)? true : false;
    if (T_2_2.num == true) {
        {
        delta.num = 1;
        }
        }
    else {

  LINE(1527);
        {
        CLUREF T_3_1;
        err = intOPparse(args, &T_3_1);
        if (err != ERR_ok) goto ex_1;
        delta.num = T_3_1.num;
        }
        }}/* end if */
        goto end_1;
        ex_1:
            {

  LINE(1529);
                {
                err = debugOPerr_out(STR_parse_040argument);
                if (err != ERR_ok) goto ex_0;
                }
            }
        end_1:;

  LINE(1531);
    {
        {CLUREF T_1_1;
        CLUREF T_1_2;
        T_1_1.num = debugOPdisplay.vec->data[2];
        T_1_2.num = T_1_1.num + delta.num;
         if ((T_1_2.num > 0 && T_1_1.num < 0 && delta.num < 0) || 
             (T_1_2.num < 0 && T_1_1.num > 0 && delta.num > 0)) {
            err = ERR_overflow;
            goto ex_0;}
        new_frame.num = T_1_2.num;
        }
        }

  LINE(1532);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    CLUREF T_1_4;
    T_1_2.num = (new_frame.num < 1)? true : false;
    T_1_1.num = T_1_2.num;
    if (!T_1_2.num) {
        T_1_3.num = debugOPcurrent_state.vec->data[4];
        T_1_4.num = (new_frame.num > T_1_3.num)? true : false;
        T_1_1.num = T_1_4.num;
    }
    if (T_1_1.num == true) {

  LINE(1534);
        {
        err = debugOPerr_out(STR_not_040that_040many_040frames);
        if (err != ERR_ok) goto ex_0;
        }
        }
    else {

  LINE(1536);
        for (;;) {
            if (true != true) { break; }

  LINE(1537);
            {
            debugOPdisplay.vec->data[2]  = new_frame.num;
            }

  LINE(1539);
            {
            CLUREF T_4_1;
            CLUREF T_4_2;
            err = debugopframe_info(new_frame, &T_4_1, &T_4_2);
            if (err != ERR_ok) goto ex_2;
            ri.num = T_4_1.num;
            line.num = T_4_2.num;
            }
                goto end_2;
                ex_2:
                    if ((err == ERR_none)) {

  LINE(1541);
                        {
                        CLUREF T_4_1;
                        T_4_1.num = new_frame.num + 1;
                         if ((T_4_1.num > 0 && new_frame.num < 0 && 1 < 0) || 
                             (T_4_1.num < 0 && new_frame.num > 0 && 1 > 0)) {
                            err = ERR_overflow;
                            goto ex_0;}
                        new_frame.num = T_4_1.num;
                        }

  LINE(1542);
                        {
                        err = streamOPputl(debugOPtyo, STR_skipping_040over_040an_040own_040init_040procedure);
                        if (err != ERR_ok) goto ex_0;
                        }

  LINE(1543);
                        continue;
                    }
                    else {
                        goto ex_0;
                    }
                end_2:;

  LINE(1545);
            {
            CLUREF T_3_1;
            err = debugopget_name(ri, &T_3_1);
            if (err != ERR_ok) goto ex_0;
            debugOPdisplay.vec->data[1]  = T_3_1.num;
            }

  LINE(1546);
            {
            debugOPdisplay.vec->data[0]  = line.num;
            }

  LINE(1547);
            {
                {CLUREF T_3_1;
                err = debugopget_fname(ri, &T_3_1);
                if (err != ERR_ok) goto ex_0;
                fnm.num = T_3_1.num;
                }
                }

  LINE(1548);
            {
            err = streamOPputspace(debugOPtyo, CLU_2);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1549);
            {
            CLUREF T_3_1;
            err = intOPunparse(new_frame, &T_3_1);
            if (err != ERR_ok) goto ex_0;
            err = streamOPputs(debugOPtyo, T_3_1);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1550);
            {
            err = streamOPputs(debugOPtyo, STR__072_040);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1551);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            T_3_1.num = debugOPdisplay.vec->data[1];
            err = externalize(T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_0;
            err = streamOPputs(debugOPtyo, T_3_2);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1552);
            {
            err = streamOPputspace(debugOPtyo, CLU_2);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1553);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            T_3_1.num = debugOPdisplay.vec->data[1];
            T_3_2.num = -1;
            err = srcOPlist(debugOPtyo, fnm, T_3_1, line, line, T_3_2, CLU_1, CLU_0);
            if (err != ERR_ok) goto ex_0;
            }

  LINE(1555);
            {
            {signal (ERR_ok);}}
            }
            end_while_1:;
        }}/* end if */
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE down_cmd ****/

static int debugOPlist_cmd_own_init = 0;
CLUREF debugOPlist_cmdOPsave_fn;
CLUREF debugOPlist_cmdOPsave_mod;

/**** BEGIN PROCEDURE list_cmd ****/

errcode debugOPlist_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF mod;
    CLUREF line;
    CLUREF fn;
    CLUREF ri;
    CLUREF first;
    CLUREF last;
    CLUREF arglist;
        if (debugOPlist_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPlist_cmd_own_init = 1;
        {
            {debugOPlist_cmdOPsave_fn = STR_;
            }
            }
        {
            {debugOPlist_cmdOPsave_mod = STR_;
            }
            }
    }
    enter_proc(1560);

  LINE(1564);
    {
        {CLUREF T_1_1;
        T_1_1.num = debugOPdisplay.vec->data[1];
        mod.num = T_1_1.num;
        }
        }

  LINE(1565);
    {
        {CLUREF T_1_1;
        T_1_1.num = debugOPdisplay.vec->data[0];
        line.num = T_1_1.num;
        }
        }

  LINE(1567);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    T_1_1.num = ((mod.str->size != debugOPlist_cmdOPsave_mod.str->size)? false :
        !(bcmp(mod.str->data, debugOPlist_cmdOPsave_mod.str->data, mod.str->size)));
    T_1_2.num = T_1_1.num ^ 1;
    if (T_1_2.num == true) {

  LINE(1569);
        {
            {CLUREF T_2_1;
            err = debugOPfind_rtn_info(mod, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            ri.num = T_2_1.num;
            }
            }

  LINE(1570);
        {
        CLUREF T_2_1;
        err = debugopget_fname(ri, &T_2_1);
        if (err != ERR_ok) goto ex_0;
        fn.num = T_2_1.num;
        }

  LINE(1571);
        {
        debugOPlist_cmdOPsave_fn.num = fn.num;
        }

  LINE(1572);
        {
        debugOPlist_cmdOPsave_mod.num = mod.num;
        }
        }
    else {

  LINE(1574);
        {
        fn.num = debugOPlist_cmdOPsave_fn.num;
        }
        }}/* end if */

  LINE(1577);
    {
    CLUREF T_1_1;
    err = stringOPempty(args, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    if (T_1_1.num == true) {

  LINE(1579);
        {
        CLUREF T_2_1;
        T_2_1.num = line.num - 5;
         if ((T_2_1.num >= 0 && line.num < 0 && (-5) < 0) || 
             (T_2_1.num <= 0 && line.num > 0 && (-5) > 0)) {
            err = ERR_overflow;
            goto ex_0;}
        first.num = T_2_1.num;
        }

  LINE(1580);
        {
        CLUREF T_2_1;
        T_2_1.num = (first.num < 1)? true : false;
        if (T_2_1.num == true) {
            {
            first.num = 1;
            }
            }
            }/* end if */

  LINE(1581);
        {
        CLUREF T_2_1;
        T_2_1.num = first.num + 10;
         if ((T_2_1.num > 0 && first.num < 0 && 10 < 0) || 
             (T_2_1.num < 0 && first.num > 0 && 10 > 0)) {
            err = ERR_overflow;
            goto ex_0;}
        last.num = T_2_1.num;
        }
        }
    else {

  LINE(1583);
        {
            {CLUREF T_2_1;
            err = parse_line(args, &T_2_1);
            if (err != ERR_ok) goto ex_0;
            arglist.num = T_2_1.num;
            }
            }

  LINE(1584);
        {
        CLUREF T_2_1;
        CLUREF T_2_2;
        T_2_1.num = arglist.array->ext_size;
        T_2_2.num = (T_2_1.num == 1)? true : false;
        if (T_2_2.num == true) {

  LINE(1586);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
                err = ERR_bounds;
                goto ex_0;}
            T_3_1.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
            err = intOPparse(T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_0;
            first.num = T_3_2.num;
            }

  LINE(1587);
            {
            CLUREF T_3_1;
            T_3_1.num = first.num + 10;
             if ((T_3_1.num > 0 && first.num < 0 && 10 < 0) || 
                 (T_3_1.num < 0 && first.num > 0 && 10 > 0)) {
                err = ERR_overflow;
                goto ex_0;}
            last.num = T_3_1.num;
            }
            }
        else {
        CLUREF T_2_3;
        CLUREF T_2_4;
        T_2_3.num = arglist.array->ext_size;
        T_2_4.num = (T_2_3.num == 2)? true : false;
        if (T_2_4.num == true) {

  LINE(1590);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
                err = ERR_bounds;
                goto ex_0;}
            T_3_1.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
            err = intOPparse(T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_0;
            first.num = T_3_2.num;
            }

  LINE(1591);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            if (2 < arglist.array->ext_low || 2 > arglist.array->ext_high ) {
                err = ERR_bounds;
                goto ex_0;}
            T_3_1.num = arglist.array->store->data[2 - arglist.array->ext_low + arglist.array->int_low];
            err = intOPparse(T_3_1, &T_3_2);
            if (err != ERR_ok) goto ex_0;
            last.num = T_3_2.num;
            }
            }
        else {

  LINE(1593);
            {
            CLUREF T_3_1;
            err = pstreamOPtext(debugOPpst_tyo, STR__077_077_077_040unknown_040variable, &T_3_1);
            if (err != ERR_ok) goto ex_0;
            }
            }}}/* end if */
        }}/* end if */

  LINE(1596);
    {
    err = srcOPlist(debugOPtyo, fn, mod, first, last, line, CLU_1, CLU_1);
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE list_cmd ****/

static int debugOPdelete_cmd_own_init = 0;

/**** BEGIN PROCEDURE delete_cmd ****/

errcode debugOPdelete_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF line;
    CLUREF func;
    CLUREF arglist;
    CLUREF arg;
    CLUREF why;
        if (debugOPdelete_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPdelete_cmd_own_init = 1;
    }
    enter_proc(1599);

  LINE(1605);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(1606);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    CLUREF T_1_4;
    CLUREF T_1_5;
    T_1_2.num = arglist.array->ext_size;
    T_1_3.num = (T_1_2.num == 1)? true : false;
    T_1_1.num = T_1_3.num;
    if (T_1_3.num) {
        if (1 < arglist.array->ext_low || 1 > arglist.array->ext_high ) {
            err = ERR_bounds;
            goto ex_0;}
        T_1_4.num = arglist.array->store->data[1 - arglist.array->ext_low + arglist.array->int_low];
        T_1_5.num = ((T_1_4.str->size != STR_all.str->size)? false :
            !(bcmp(T_1_4.str->data, STR_all.str->data, T_1_4.str->size)));
        T_1_1.num = T_1_5.num;
    }
    if (T_1_1.num == true) {

  LINE(1608);
        {
        err = ctl_ptsOPclear();
        if (err != ERR_ok) goto ex_0;
        }

  LINE(1609);
        {
        {signal (ERR_ok);}}
        }
        }/* end if */

  LINE(1611);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
        T_1_2.num = arglist.array->ext_high; 
        T_1_3 = arglist;
        for (T_1_1.num = arglist.array->ext_low; T_1_1.num <= T_1_2.num; T_1_1.num++) {
            if (T_1_1.num > T_1_3.array->ext_high || T_1_1.num < T_1_3.array->ext_low) {
                err = ERR_failure;
                elist[0].str = array_bounds_exception_STRING;
                goto ex_0;}
            arg.num = T_1_3.array->store->data[T_1_1.num - T_1_3.array->ext_low + T_1_3.array->int_low];

  LINE(1612);
            {
            CLUREF T_3_1;
            CLUREF T_3_2;
            CLUREF T_3_3;
            CLUREF T_3_4;
            err = stringOPfetch(arg, CLU_1, &T_3_1);
            if (err != ERR_ok) goto ex_1;
            err = stringOPindexc(T_3_1, STR_0123456789, &T_3_2);
            if (err != ERR_ok) goto ex_1;
            T_3_3.num = (T_3_2.num == 0)? true : false;
            T_3_4.num = T_3_3.num ^ 1;
            if (T_3_4.num == true) {

  LINE(1614);
                {
                CLUREF T_4_1;
                err = intOPparse(arg, &T_4_1);
                if (err != ERR_ok) goto ex_1;
                line.num = T_4_1.num;
                }

  LINE(1615);
                {
                CLUREF T_4_1;
                CLUREF T_4_2;
                T_4_1.num = debugOPdisplay.vec->data[1];
                err = externalize(T_4_1, &T_4_2);
                if (err != ERR_ok) goto ex_1;
                err = ctl_ptsOPbp_remove(T_4_2, STR_l, line);
                if (err != ERR_ok) goto ex_1;
                }
                }
            else {

  LINE(1617);
                {
                func.num = arg.num;
                }

  LINE(1618);
                {
                err = ctl_ptsOPbp_remove(func, STR_f, CLU_0);
                if (err != ERR_ok) goto ex_1;
                }
                }}/* end if */
                goto end_1;
                ex_1:
                    if ((err == ERR_not_found)) {

  LINE(1621);
                        {
                        CLUREF T_3_1;
                        err = stringOPconcat(arg, STR__040not_040found_040, &T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        err = streamOPputl(debugOPtyo, T_3_1);
                        if (err != ERR_ok) goto ex_0;
                        }
                    }
                    else if ((err == ERR_error)) {
                    CLUREF why;
                    why.num = elist[0].num;

  LINE(1623);
                        {
                        err = debugOPerr_out(why);
                        if (err != ERR_ok) goto ex_0;
                        }
                    }
                    else {
                        goto ex_0;
                    }
                end_1:;
        }
    }
    end_inline_for_1:;
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE delete_cmd ****/

static int debugOPshow_cmd_own_init = 0;

/**** BEGIN PROCEDURE show_cmd ****/

errcode debugOPshow_cmd(args)
CLUREF args;
    {
    errcode err;
    errcode ecode2;
    CLUREF arglist;
        if (debugOPshow_cmd_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPshow_cmd_own_init = 1;
    }
    enter_proc(1628);

  LINE(1629);
    {
        {CLUREF T_1_1;
        err = parse_line(args, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        arglist.num = T_1_1.num;
        }
        }

  LINE(1630);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
    CLUREF T_1_3;
    T_1_1.num = arglist.array->ext_size;
    T_1_2.num = (T_1_1.num == 0)? true : false;
    T_1_3.num = T_1_2.num ^ 1;
    if (T_1_3.num == true) {

  LINE(1631);
        {
        err = streamOPputl(debugOPtyo, STR__012Too_040many_040arguments_040to_040the_040show_040command_012);
        if (err != ERR_ok) goto ex_0;
        }
        }
        }/* end if */

  LINE(1634);
    {
    err = ctl_ptsOPprint(debugOPtyo);
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE show_cmd ****/

static int debugOPerr_out_own_init = 0;
CLUREF debugOPerr_outOPpe;

/**** BEGIN PROCEDURE err_out ****/

errcode debugOPerr_out(why)
CLUREF why;
    {
    errcode err;
    errcode ecode2;
        if (debugOPerr_out_own_init == 0) {
        if (debug_own_init == 0) {
            err = debug_own_init_proc();
            if (err != ERR_ok) goto ex_0;
            }
        debugOPerr_out_own_init = 1;
        {
            {CLUREF T_0_1;
            err = streamOPerror_output(&T_0_1);
            if (err != ERR_ok) goto ex_0;
            debugOPerr_outOPpe.num = T_0_1.num;
            }
            }
    }
    enter_proc(1637);

  LINE(1639);
    {
    err = streamOPputs(debugOPerr_outOPpe, STR__012ERROR_072_040);
    if (err != ERR_ok) goto ex_0;
    }

  LINE(1640);
    {
    err = streamOPputs(debugOPerr_outOPpe, why);
    if (err != ERR_ok) goto ex_0;
    }

  LINE(1641);
    {
    err = streamOPputs(debugOPerr_outOPpe, STR__012_012);
    if (err != ERR_ok) goto ex_0;
    }
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: {signal(ERR_ok);}
    }

/**** END PROCEDURE err_out ****/

typedef struct{
    int count;
    OWNPTR type_owns;
    OWNPTR op_owns;
    struct OP_ENTRY entry[2];
} debug_OPS;

CLU_proc debug_oe_cli = {{0,0,0,0}, debugOPcli, 0};
CLU_proc debug_oe_teval = {{0,0,0,0}, debugOPteval, 0};

debug_OPS debug_ops_actual = {2, (OWNPTR)&debug_own_init, (OWNPTR)&debug_own_init, {
    {&debug_oe_cli, "cli"},
    {&debug_oe_teval, "teval"}}};

struct OPS *debug_ops = (struct OPS *)&debug_ops_actual;

/**** END CLUSTER debug ****/

extern errcode stringOPs2ac();
extern errcode arrayOPindexes();
extern errcode arrayOPstore();
extern errcode lower();
extern errcode stringOPac2s();

/**** BEGIN PROCEDURE pc_slower ****/

errcode pc_slower(s, ret_1)
CLUREF s;
CLUREF *ret_1;
    {
    errcode err;
    errcode ecode2;
    CLUREF a;
    CLUREF active;
    CLUREF i;
    enter_proc(1646);

  LINE(1648);
    {
        {CLUREF T_1_1;
        err = stringOPs2ac(s, &T_1_1);
        if (err != ERR_ok) goto ex_0;
        a.num = T_1_1.num;
        }
        }

  LINE(1649);
    {
        {active.tf = true;
        }
        }

  LINE(1650);
    {
    CLUREF T_1_1;
    CLUREF T_1_2;
        T_1_2.num = a.array->ext_high; 
        for (T_1_1.num = a.array->ext_low; T_1_1.num <= T_1_2.num; T_1_1.num++) {
            i.num = T_1_1.num;

  LINE(1651);
            {
            CLUREF T_2_1;
            CLUREF T_2_2;
            CLUREF T_2_3;
            CLUREF T_2_4;
            CLUREF T_2_5;
            CLUREF T_2_6;
            CLUREF T_2_7;
            if (i.num < a.array->ext_low || i.num > a.array->ext_high ) {
                err = ERR_bounds;
                goto ex_0;}
            T_2_2.num = a.array->store->data[i.num - a.array->ext_low + a.array->int_low];
            T_2_3.ch = '\'';
            T_2_4.num = (T_2_2.ch == T_2_3.ch)? true : false;
            T_2_1.num = T_2_4.num;
            if (!T_2_4.num) {
                if (i.num < a.array->ext_low || i.num > a.array->ext_high ) {
                    err = ERR_bounds;
                    goto ex_0;}
                T_2_5.num = a.array->store->data[i.num - a.array->ext_low + a.array->int_low];
                T_2_6.ch = '\"';
                T_2_7.num = (T_2_5.ch == T_2_6.ch)? true : false;
                T_2_1.num = T_2_7.num;
            }
            if (T_2_1.num == true) {

  LINE(1652);
                {
                CLUREF T_3_1;
                T_3_1.num = active.num ^ 1;
                active.num = T_3_1.num;
                }
                }
                }/* end if */

  LINE(1653);
            {
            if (active.num == true) {
                {
                CLUREF T_3_1;
                CLUREF T_3_2;
                if (i.num < a.array->ext_low || i.num > a.array->ext_high ) {
                    err = ERR_bounds;
                    goto ex_0;}
                T_3_1.num = a.array->store->data[i.num - a.array->ext_low + a.array->int_low];
                err = lower(T_3_1, &T_3_2);
                if (err != ERR_ok) goto ex_0;
                {
                if (i.num < a.array->ext_low || i.num > a.array->ext_high) {
                    err = ERR_bounds;
                    goto ex_0;}
                a.array->store->data[i.num + a.array->int_low - a.array->ext_low] = T_3_2.num;
                }
                }
                }
                }/* end if */
        }
    }
    end_inline_for_1:;

  LINE(1655);
    {
    {
    CLUREF T_1_1;
    err = stringOPac2s(a, &T_1_1);
    if (err != ERR_ok) goto ex_0;
    ret_1->num = T_1_1.num;
    }
    {signal (ERR_ok);}}
    goto end_0;
    ex_0:
        {
            if (err == ERR_failure) {signal(ERR_failure);}
            elist[0] = _pclu_erstr(err);
            {signal(ERR_failure);}
        }
    end_0: elist[0].str = no_return_values_STRING;
        {signal(ERR_failure);}
    }

/**** END PROCEDURE pc_slower ****/

