#include <perms.h>

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

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

  //     2    %integerfn fn(%integer a,b,c)

  int FN(int A, int B, int C) {
    //     3      %result = a+b+c

    return A + B + C;

    //     4    %end

  } /* end of FN */

  //     5
  //     6    %integer i = fn(fn(1,2,3),4,fn(5,fn(6,7,8),9))

  int I;
  I = FN(FN(1, 2, 3), 4, FN(5, FN(6, 7, 8), 9));

  //     7
  //     8  %endofprogram

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