#include <perms.h>

//          Edinburgh IMP77 Compiler - Version 8.4
//
//     1  %begin

int main(int argc, char **argv) { /*%begin*/
  _imp_initialise(argc, argv);

  //     2    %integer fred, jim, i

  int FRED;
  int JIM;
  int I;

  //     3    %for fred = 1, 10, jim %cycle

  // %for FRED = 1, 10, JIM %cycle
  {
    int _final = JIM;
    if (invalid_for_loop(1, 10, _final)) _imp_signal(5, 1, 0, "Illegal cycle FRED = 1, 10, JIM");
    FRED = -9;
  L_0001:
    if (FRED == _final) goto L_0002;
    FRED += 10;

    //     4      %if i = 55 %then %continue

    if (I != 55) goto L_0004;
    goto L_0003;
  L_0004:;

  //     5      %if i = 99 %then %exit

    if (I != 99) goto L_0005;
    goto L_0002;
  L_0005:;

  //     6      i = i+1

    I = I + 1;

    //     7    %repeat

  L_0003:;
    goto L_0001;
  }

L_0002:;

//     8  %endofprogram

  _imp_stop(0);
  return 0;
end_0:;
}