begin
   integer
     I,
     J,
     CASE;
   real
     X,
     Y;
   procedure REQUAL(A, B);
      value
        A,
        B;
      real
        A,
        B;
      if A ≠ B then
      begin
         OUTREAL(99, A);
         OUTREAL(99, B);
         OUTREAL(99, CASE)
      end
      else
        CASE ≔ CASE + 1;
   CASE ≔ 1;
   X ≔ 2·0;
   Y ≔ 3·0;
   I ≔ 2;
   J ≔ 3;
   REQUAL(X⭡I, 4·0);
   if I⭡J ≠ 8 then
   begin
      OUTREAL(99, I⭡J);
      OUTREAL(99, 8);
   end;
   REQUAL(X⭡0, 1·0);
   if I⭡0 ≠ 1 then
   begin
      OUTREAL(99, I⭡0);
      OUTREAL(99, 1)
   end;
   REQUAL(X⭡( - I), 1·0 / (2·0 × 2·0));
   REQUAL(I⭡( - I), 1·0 / (2·0 × 2·0));
   REQUAL(X⭡Y, EXP(Y × LN(X)));
   REQUAL(J⭡Y, EXP(Y × LN(J)));
   REQUAL(0·0⭡X, 0·0);
   REQUAL(0⭡X, 0·0);
   comment   SHOULD FAIL;
   REQUAL(( - X)⭡Y, - 1)
end