'BEGIN' 'COMMENT' 'LIBRARY' 1; 'INTEGER' I, J, CASE; 'PROCEDURE' CHECKB(BOOL, ANSWER); 'VALUE' ANSWER; 'BOOLEAN' BOOL; 'INTEGER' ANSWER; 'BEGIN' 'BOOLEAN' B; 'PROCEDURE' FAIL; 'BEGIN' OUTREAL(99, I); OUTREAL(99, J); OUTREAL(99, CASE) 'END'; 'FOR' I := 0, 1 'DO' 'FOR' J := 0, 1 'DO' 'BEGIN' B := ANSWER 'DIV' 2 * 2 = ANSWER; 'IF' B 'THEN' 'BEGIN' 'IF' BOOL 'THEN' 'ELSE' FAIL 'END' 'ELSE' 'IF' BOOL 'THEN' FAIL; ANSWER := ANSWER 'DIV' 2; 'END'; CASE := CASE + 1 'END' CHECKB; CASE := 1; CHECKB(J = 0 'OR' I = 0, 8); CHECKB(J = 0 'AND' I = 0, 14); CHECKB(J = 0 'EQUIV' I = 0, 6); CHECKB(J = 0 'IMPL' I = 0, 4); CHECKB(J = 0, 10); CHECKB( 'NOT' (J = 0), 5); OUTREAL(99, CASE) 'END'