#include <perms.h>
int _imp_mainep(int _imp_argc, char **_imp_argv) {
  _imp_enter();
  static int FAIL = 0;
  _imp_string S;
  _imp_string T;
  _imp_string U;
  auto void CHECK(_imp_string P, _imp_string Q, _imp_string R);
  S = _imp_str_literal("");
  T = S;
  if (T != _imp_str_literal("")) PRINTSTRING(_imp_str_literal("BUG0"));
  CHECK(S, T, _imp_str_literal(""));
  S = _imp_str_literal("ABCD");
  T = S;
  CHECK(S, T, _imp_str_literal("ABCD"));
  if (_imp_str_literal("MAST") > _imp_str_literal("MEST") ||
      _imp_str_literal("MEST") > _imp_str_literal("MOST")) {
    FAIL = 1;
    PRINTSTRING(_imp_str_literal("BUG1"));
  }
  S = _imp_str_literal("MAST");
  T = _imp_str_literal("MEST");
  U = _imp_str_literal("MOST");
  if (S > T || T > U) {
    FAIL = 1;
    PRINTSTRING(_imp_str_literal("BUG2"));
  }
  if (FAIL == 0) PRINTSTRING(_imp_str_literal("TEST OK"));
  auto void CHECK(_imp_string P, _imp_string Q, _imp_string R) {
    _imp_enter();
    if (P != S || Q != R || P != Q || Q != R) {
      FAIL = 1;
      PRINTSTRING(_imp_str_literal("CHECK FAILS"));
    }
    _imp_leave();
  }

  _imp_leave();
  exit(0);
  return (0);
}
