%constinteger  nl=10
%conststring(1) snl="
"
%primintegerfnspec rem(%integer p,q)
%primroutinespec  readsymbol(%name p)
%primrealfnspec float(%integer n)
%primstring(1)%fnspec tostring(%integer p)
%primstring(255)%fnspec substring(%string(255) s,%integer f,t)
%primintegerfnspec  free space
%primroutinespec  svc(%integer n,%record(*)%name r)
%primintegerfnspec addr(%name p)
%primintegermapspec integer(%integer n)
%primshortintegermapspec shortinteger(%integer n)
%primbyteintegermapspec byteinteger(%integer n)
%primstring(*)%mapspec  string(%integer n)
%primrecord(*)%mapspec record(%integer n)
%primrealmapspec real(%integer n)
%primlongrealmapspec longreal(%integer n)
%primbyteintegermapspec length(%string(255) s)
%primbyteintegermapspec charno(%string(255) s,%integer n)
%primintegerfnspec int(%real x)
%primintegerfnspec intpt(%real x)
%primroutinespec  iocp(%integer n)
%primintegerfnspec typeof(%name n)
%primintegerfnspec sizeof(%name n)
%primrealfnspec fracpt(%real x)
%externalroutinespec prompt(%string(15)  S)
%externalintegerfnspec next symbol
%externalroutinespec  skip symbol
%externalroutinespec  print symbol(%integer sym)
%externalroutinespec  print string(%string(255)  s)
%externalroutinespec  write(%integer  v,p)
%externalroutinespec  select input(%integer  n)
%externalroutinespec  select output(%integer  n)
%externalroutinespec  open input(%integer  n, %string(31) fd)
%externalroutinespec open output(%integer  n,%string(31) fd)
%externalroutinespec  close input
%externalroutinespec  close output
%externalroutinespec reset input
%externalroutinespec reset output
%externalstring(8)%fnspec  time
%externalstring(9)%fnspec  date
%externalintegerfnspec  cpu time
%externalintegermapspec comreg(%integer  n)
%externalroutinespec read(%name  x)
%externalroutinespec  print(%real  val, %integer  before, after)
%externalroutinespec  print fl(%real val, %integer  places)
%externalroutinespec space
%externalroutinespec  spaces(%integer  n)
%externalroutinespec  newline
%externalroutinespec  newlines(%integer n)
%recordformat  filefm(%integer  unit,owner,N1,N2)
%recordformat  parmfm(%short dsno,dact,ssno,sact, 
                        (%string(23) text %or
                        (%record(filefm) file %or %integer  P1,P2,P3,P4),
                         %integer P5,P6) )
%recordformat  eventfm(%integer  event, sub, extra,
                       %string(63)  message,
                       %integer  pc, x)
%externalrecord(eventfm)%spec  event
%endofperm
