#include <perms.h>
int _imp_mainep(int _imp_argc, char **_imp_argv) {
  _imp_string Param;
  static int Failures = 0;
  static int Aa[10 /*1:10*/] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
  int Sigma(int A) {
    int I;
    int J = 0;
    for (I = 1; I <= 10; I++) J += A;
    return (J);
  }
  int Sigma2(int A) {
    int I;
    int J = 0;
    for (I = 1; I <= 10; I++) J = J + J + A;
    return (J);
  }
  int Sigma3(int A) {
    int I;
    int J = 0;
    for (I = 1; I <= 10; I++) J = J + J + J + A;
    return (J);
  }
  int Change(int A) {
    int I;
    int J = 0;
    for (I = 1; I <= 10; I++) A = A * 2;
    for (I = 3; I <= 9; I++) J += A;
    return (J);
  }
  int Check(int A) {
    int I;
    int J = 0;
    for (I = 1; I <= 10; I++)
      if (A == I * 2) J++;
    return (J);
  }
  void Do(void F(int X), int Res) {
    int I;
    void Pass(void) {
      Printstring(_imp_str_literal(" Pass"));
      Newline();
    }
    void Fail(void) {
      Printstring(_imp_str_literal(" FAIL :"));
      Printstring(_imp_str_literal(" Was expecting"));
      Write(Res, 1);
      Printstring(_imp_str_literal(" and got"));
      Write(I, 1);
      Newline();
      Failures++;
    }
    I = F;
    if (I == Res)
      Pass();
    else
      Fail();
  }
  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);
  }
  Newline();
  Printstring(_imp_str_literal("Integer array names as parameters"));
  Newline();
  Printstring(_imp_str_literal("---------------------------------"));
  Newline();
  Do(Sigma(), 55);
  Do(Sigma2(), 2036);
  Do(Sigma3(), 44281);
  Do(Change(), 84);
  Do(Check(), 10);
  Selectoutput(0);
  Write(Failures, 1);
  Printstring(_imp_str_literal(" failure(s)"));
  Newline();
  exit(0);
  return (1);
}
