#include <perms.h>

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

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

  //     2
  //     3    %integer a, b, c, d, e

  int A;
  int B;
  int C;
  int D;
  int E;

  //     4
  //     5    e = 2; d = 3; c = 4; b = 5

  E = 2;
  D = 3;
  C = 4;
  B = 5;

  //     6    a = b + c + d

  A = B + C + D;

  //     7    a = (b + c) + d

  A = B + C + D;

  //     8
  //     9    printstring("broken")

  _imp_PRINTSTRING(_imp_str_literal("broken"));

  //    10    write(a, 1)

  _imp_WRITE(A, 1);

  //    11    newline

  _imp_NEWLINE();

  //    12
  //    13    a = b + (c + d)

  A = B + (C + D);

  //    14    a = b + c + d + e

  A = B + C + D + E;

  //    15    a = (b + c) + d + e

  A = B + C + D + E;

  //    16
  //    17  %endofprogram

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