#include <perms.h>
int _imp_mainep(int _imp_argc, char **_imp_argv) {
  _imp_enter();
  typedef struct F1 {
    int I;
    int J;
    int K;
    int L;

  } F1;

  typedef struct F2 {
    F1 A[8 - 0 + 1];
    int P;

  } F2;
  F2 R;
  F2 RP;
  F2 *RR;
  F1 *RN;
  int I;
  int J;
  int K;
  int L;
  RR = &RP;
  I = ADDR(R.A[0]);
  RN = &R.A[0];
  J = ADDR(R.A[0].K);
  K = ADDR(RR->A[0]);
  L = ADDR(RR->A[0].K);
  RN = &RR->A[0];
  if (I + 8 == J && ADDR(R) + 4 == I && K + 8 == L && ADDR(RR) + 4 == K &&
      K == ADDR(RN)) {
    PRINTSTRING(_imp_str_literal("\nTEST OK    (BYTE ADDRESS ANSWERS)\n"));
  }
  if (I + 4 == J && ADDR(R) + 2 == I && K + 4 == L && ADDR(RR) + 2 == K &&
      K == ADDR(RN)) {
    PRINTSTRING(_imp_str_literal("\nTEST OK (WORD ADDRESS ANSWERS)\n"));
  }
  PRINTSTRING(_imp_str_literal("\nWRONG ANSWERS\n"));
  _imp_leave();
  exit(0);
  return (0);
}
