#include <perms.h>

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

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

  //     2     %integer no options = 1

  int NOOPTIONS;
  NOOPTIONS = 1;

  //     3
  //     4     %routine get option(%integer %name opt)

  void GETOPTION(int *OPT) {
    //     5        %for opt = 1, 1, no options %cycle

    // %for *OPT = 1, 1, NOOPTIONS %cycle
    {
      int _final = NOOPTIONS;
      if (invalid_for_loop(1, 1, _final)) _imp_signal(5, 1, 0, "Illegal cycle *OPT = 1, 1, NOOPTIONS");
      *OPT = 0;
    L_0001:
      if (*OPT == _final) goto L_0002;
      *OPT += 1;

      //     6        %repeat

      goto L_0001;
    }

  L_0002:;

  //     7     %end

    return;
  } /* end of GETOPTION */

  //     8
  //     9    %integer x

  int X;

  //    10
  //    11    get option(x)

  GETOPTION(/*?*/ &X);

  //    12
  //    13  %endofprogram

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