#include "perms.h"

                                                                //      1  %begin
#line 1 "58.imp"
int main(int argc, char **argv) {
  __label__ _imp_endofblock;
  _imp_initialise(argc, argv);
                                                                //      2    %integer i
_imp_current_line = 2; _imp_current_file = "58.imp";
#line 2 "58.imp"
int I;
                                                                //      3    %switch lab('a':'d')
_imp_current_line = 3; _imp_current_file = "58.imp";
#line 3 "58.imp"
static int sw1_LAB_idx;
static const void * /*SWITCH*/ sw1_LAB[4] = { &&sw1_LAB_97, &&sw1_LAB_98, &&sw1_LAB_99, &&sw1_LAB_100,  };
                                                                //      4    i = 'b'
_imp_current_line = 4; _imp_current_file = "58.imp";
#line 4 "58.imp"
I = 98;
                                                                //      5    ->lab(i)
_imp_current_line = 5; _imp_current_file = "58.imp";
#line 5 "58.imp"
sw1_LAB_idx = I; if ((97 <= sw1_LAB_idx) && (sw1_LAB_idx <= 100)) goto *(sw1_LAB-97)[sw1_LAB_idx];  /* Bounds=97:100 */ else {
   /*_imp_signal(8, 2, sw1_LAB_idx);*/
   fprintf(stderr, "%%SWITCH index LAB(%d) not in range 97:100 at %s:%d\n",
           sw1_LAB_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
                                                                //      6  lab('a'):
_imp_current_line = 6; _imp_current_file = "58.imp";
#line 6 "58.imp"
sw1_LAB_97:;
                                                                //      7  lab('c'):
_imp_current_line = 7; _imp_current_file = "58.imp";
#line 7 "58.imp"
sw1_LAB_99:;
                                                                //      8  lab('d'): %stop
_imp_current_line = 8; _imp_current_file = "58.imp";
#line 8 "58.imp"
sw1_LAB_100:;
_imp_current_line = 8; _imp_current_file = "58.imp";
#line 8 "58.imp"
exit(0);
                                                                //      9  %endofprogram
_imp_current_line = 9; _imp_current_file = "58.imp";
#line 9 "58.imp"
return 0;
sw1_LAB_98:;
/*_imp_signal(6,3,sw1_LAB_idx,"SWITCH LABEL NOT SET - sw1_LAB");*/
fprintf(stderr, "%%SWITCH LABEL NOT SET - sw1_LAB(%d): at line %s:%d", sw1_LAB_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__), (_imp_current_line != 0 ? _imp_current_line : __LINE__));
exit(1);
_imp_endofblock: ;
} // End of block _imp_main at level 1
#line 9 "58.imp"
// End of file
// COMPILE WITH: gcc12 -DVALGRIND_AVAILABLE -UPARM_OPT -DPARM_UNASS -DPARM_CHECK -O -g -ftrivial-auto-var-init=pattern -fmerge-constants -fno-strict-aliasing -Wall -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unused-label -Wno-unused-function -Wno-maybe-uninitialized -Wno-uninitialized -frecord-gcc-switches -fsanitize=undefined -fsanitize=float-divide-by-zero -fsanitize-undefined-trap-on-error -fsanitize=float-cast-overflow -fno-sanitize-recover=all -fstack-protector -Wno-frame-address -fno-omit-frame-pointer -Wno-return-type -Wno-comment -ftrapv -ggdb3 -gdwarf-4 -I. -I.. -c -o 58.o 58.c -lm
