#include <perms.h>
int _imp_mainep(int _imp_argc, char **_imp_argv) {
  _imp_string Param;
  int J;
  int K;
  int Error;
  int Up;
  int Down;
  static int Sw_sw;
  static void *Sw[256 /*100:355*/] = {
      &&Sw_default, &&Sw_101,     &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_105,     &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_109,
      &&Sw_default, &&Sw_111,     &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_121,     &&Sw_122,     &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_140,     &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_145,     &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_160,     &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_165,     &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_182,     &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_193,     &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_200,     &&Sw_201,     &&Sw_202,     &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_255,     &&Sw_256,     &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_296,     &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_301,     &&Sw_default, &&Sw_default, &&Sw_304,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_324,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default,
      &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_default, &&Sw_354,
      &&Sw_355,
  };
  __label__ Alpha;
  __label__ Beta;
  __label__ Gamma;
  __label__ Delta;
  __label__ Out;
  __label__ Cont;
  static int Failures = 0;
  void Pass(void) {
    Printstring(_imp_str_literal("Pass"));
    Newline();
  }
  void Fail(void) {
    Printstring(_imp_str_literal("FAIL"));
    Newline();
    Failures++;
  }
  Param = Cliparam();
  if (Param == _imp_str_literal(""))
    Selectoutput(2);
  else if (Param == _imp_str_literal("s") || Param == _imp_str_literal("S"))
    Selectoutput(0);
  else if (Param == _imp_str_literal("j") || Param == _imp_str_literal("J")) {
    Openoutput(2, _imp_str_literal("journal"));
    Selectoutput(2);
  } else {
    Openoutput(2, Param);
    Selectoutput(2);
  }
  Newlines(2);
  Printstring(_imp_str_literal("Control Transfer Statements"));
  Newline();
  Printstring(_imp_str_literal("==========================="));
  Newlines(3);
  Printstring(_imp_str_literal("Test the -> Statement and %Switch"));
  Newline();
  Printstring(_imp_str_literal("---------------------------------"));
  Newline();
  Up = 0;
  Down = 0;
  goto Delta;
Alpha:
  Up++;
  goto Gamma;
Beta:
  Down++;
  goto Out;
Gamma:
  Up++;
  goto Beta;
Delta:
  Down++;
  goto Alpha;
Out:;
  if (Up == Down && Down == 2)
    Pass();
  else
    Fail();
  Up = 100;
  Error = 0;
  for (J = 990; J <= 3540; J += 10) {
    goto *Sw[Sw_sw = (J / 10 + 1) - 100];
  Sw_140:
    if (Up != 140) Error++;
    goto Cont;
  Sw_255:
    if (Up != 255) Error++;
    goto Cont;
  Sw_105:
    if (Up != 105) Error++;
    goto Cont;
  Sw_304:
    if (Up != 304) Error++;
    goto Cont;
  Sw_182:
    if (Up != 182) Error++;
    goto Cont;
  Sw_354:
    if (Up != 354) Error++;
    goto Cont;
  Sw_111:
    if (Up != 111) Error++;
    goto Cont;
  Sw_193:
    if (Up != 193) Error++;
    goto Cont;
  Sw_121:
    if (Up != 121) Error++;
    goto Cont;
  Sw_201:
    if (Up != 201) Error++;
    goto Cont;
  Sw_296:
    if (Up != 296) Error++;
    goto Cont;
  Sw_160:
    if (Up != 160) Error++;
    goto Cont;
  Sw_122:
    if (Up != 122) Error++;
    goto Cont;
  Sw_101:
    if (Up != 101) Error++;
    goto Cont;
  Sw_202:
    if (Up != 202) Error++;
    goto Cont;
  Sw_301:
    if (Up != 301) Error++;
    goto Cont;
  Sw_355:
    if (Up != 355) Error++;
    goto Cont;
  Sw_200:
    if (Up != 200) Error++;
    goto Cont;
  Sw_324:
    if (Up != 324) Error++;
    goto Cont;
  Sw_default:
    goto Cont;
  Sw_109:
    if (Up != 109) Error++;
    goto Cont;
  Sw_256:
    if (Up != 256) Error++;
    goto Cont;
  Sw_145:
    if (Up != 145) Error++;
    goto Cont;
  Sw_165:
    if (Up != 165) Error++;
  Cont:
    Up++;
  }
  if (Error == 0 && Up == 356)
    Pass();
  else
    Fail();
  Selectoutput(0);
  Write(Failures, 1);
  Printstring(_imp_str_literal(" failure(s)"));
  Newline();
  exit(0);
  return (1);
}
