<> <> <> <> <> DIRECTORY P5 USING []; FOpTable: PROGRAM EXPORTS P5 = BEGIN <> Q: TYPE = PRIVATE RECORD [ push: [0..3], pop: [0..7], length: [0..3], mark: BOOL]; T: BOOL = TRUE; F: BOOL = FALSE; OpParms: PRIVATE ARRAY [0..256) OF Q = [ <> Q[0,0,0,F], Q[1,0,1,F], Q[0,1,1,F], Q[1,0,1,F], <> Q[0,1,1,F], Q[1,0,1,F], Q[1,0,1,F], Q[2,0,1,F], <> Q[0,2,1,F], Q[2,0,1,F], Q[0,2,1,F], Q[1,1,1,F], <> Q[0,2,1,F], Q[1,1,2,F], Q[0,2,2,F], Q[2,1,1,F], <> Q[0,3,1,F], Q[1,2,1,F], Q[0,3,1,F], Q[1,1,2,F], <> Q[0,2,2,F], Q[1,1,2,F], Q[0,2,2,F], Q[1,0,2,F], <> Q[1,0,2,F], Q[0,2,1,F], Q[0,2,2,F], Q[0,3,1,F], <> Q[1,0,3,F], Q[0,1,2,F], Q[0,1,2,F], Q[1,1,2,F], <> Q[1,1,2,F], Q[1,2,1,F], Q[1,3,1,F], Q[1,2,2,F], <> Q[1,1,1,F], Q[1,2,0,F], Q[1,2,0,F], Q[1,2,0,F], <> Q[1,2,0,F], Q[1,2,0,F], Q[1,3,0,F], Q[1,2,0,F], <> Q[1,1,0,F], Q[1,2,0,F], Q[1,2,0,F], Q[1,2,0,F], <> Q[1,2,0,F], Q[1,0,0,F], Q[0,1,0,F], Q[2,2,0,F], <> Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,1,0,F], <> Q[0,0,0,F], Q[0,1,0,F], Q[0,0,0,F], Q[0,0,1,F], <> Q[0,3,0,T], Q[0,3,0,T], Q[1,1,0,F], Q[0,1,0,F], <> Q[0,0,0,F], Q[1,0,1,F], Q[0,1,0,T], Q[0,1,0,F], <> Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,1,1,F], <> Q[1,0,1,F], Q[0,0,0,F], Q[0,3,0,T], Q[0,1,1,F], <> Q[1,0,1,F], Q[1,1,1,F], Q[0,1,1,F], Q[1,2,0,F], <> Q[1,2,0,F], Q[1,2,0,F], Q[1,2,0,F], Q[0,2,1,F], <> Q[0,2,1,F], Q[0,0,0,F], Q[0,0,0,F], Q[1,0,1,F], <> Q[1,0,1,F], Q[1,1,0,F], Q[1,1,0,F], Q[2,1,0,F], <> Q[0,0,0,F], Q[0,4,0,T], Q[0,2,0,T], Q[1,1,0,F], <> Q[1,1,1,F], Q[1,1,0,F], Q[2,4,0,T], Q[2,4,0,T], <> Q[1,4,0,T], Q[1,4,0,T], Q[2,4,0,T], Q[2,4,0,T], <> Q[2,4,0,T], Q[2,4,0,T], Q[2,4,0,T], Q[0,0,0,F], <> Q[0,0,0,F], Q[1,1,2,F], Q[1,2,0,F], Q[0,3,0,F], <> Q[1,1,0,F], Q[2,2,0,F], Q[1,2,0,F], Q[2,1,0,F], <> Q[1,1,0,T], Q[1,2,0,T], Q[0,3,0,T], Q[0,1,0,T], <> Q[0,1,0,T], Q[0,1,0,T], Q[0,3,0,T], Q[1,2,0,T], <> Q[1,4,0,T], Q[0,5,0,T], Q[0,2,0,T], Q[0,2,0,T], <> Q[0,2,0,T], Q[0,5,0,T], Q[1,2,1,F], Q[0,3,1,F], <> Q[2,2,1,F], Q[0,4,1,F], Q[1,1,2,F], Q[0,2,2,F], <> Q[1,1,2,F], Q[0,2,2,F], Q[1,0,2,F], Q[0,1,2,F], <> Q[1,0,2,F], Q[0,1,2,F], Q[1,3,1,F], Q[0,4,1,F], <> Q[1,2,2,F], Q[0,3,2,F], Q[0,5,0,T], Q[0,4,0,T], <> Q[1,3,0,F], Q[0,4,0,F], Q[2,1,0,F], Q[2,4,0,T], <> Q[2,4,0,T], Q[2,4,0,T], Q[2,4,0,T], Q[1,4,0,T], <> Q[2,3,0,T], Q[2,2,0,T], Q[2,2,0,T], Q[0,4,1,F], <> Q[0,4,1,F], Q[1,2,0,F], Q[2,3,0,F], Q[0,0,0,F], <<244-247>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<250-253>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<254-257>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<260-263>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<264-267>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<270-273>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<274-277>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<300-303>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<304-307>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<310-313>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<314-317>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<320-323>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<324-327>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<330-333>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<334-337>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<340-343>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<344-347>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<350-353>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<354-357>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<360-363>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<364-367>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<370-373>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], <<374-377>> Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F]]; PushEffect: PUBLIC PROC [b: [0..256)] RETURNS [[0..3]] = BEGIN RETURN [OpParms[b].push] END; PopEffect: PUBLIC PROC [b: [0..256)] RETURNS [[0..7]] = BEGIN RETURN [OpParms[b].pop] END; NumberOfParams: PUBLIC PROC [b: [0..256)] RETURNS [[0..3]] = BEGIN RETURN [OpParms[b].length] END; MinimalStack: PUBLIC PROC [b: [0..256)] RETURNS [BOOL] = BEGIN RETURN [OpParms[b].mark] END; END.