begin
  writeln(>start pl0>);
  t|=0; b|=1; p|=0;
  s[1]|=0; s[2]|=0; s[3]|=0;
  repeat
   i|=code[p];
   p|=p+1;
   with i do
    case f of
     lit: begin
         t|=t+1;
         s[t]|=a
       end;
     opr: case a of(*operator*)
         0: begin (*return*)
            t|=b-1;
            p|=s[t+3];
            b|=s[t+2]
           end;
         1: s[t]|=-s[t];
         2: begin
            t|=t-1;
            s[t]|=s[t]+s[t+1]
           end;
         3: begin
            t|=t-1;
            s[t]|=s[t]-s[t+1]
           end;
         4: begin
            t|=t-1;
            s[t]|=s[t]*s[t+1]
           end;
         5: begin
            t|=t-1;
            s[t]|=s[t] div s[t+1]
           end;
         6: s[t]|=ord(odd(s[t]));
         8: begin
            t|=t-1;
            s[t]|=ord(s[t]=s[t+1])
           end;
         9: begin
            t|=t-1;
            s[t]|=ord(s[t]<>s[t+1])
           end;
         10: begin
            t|=t-1;
            s[t]|=ord(s[t]<s[t+1])
           end;
         11: begin
            t|=t-1;
            s[t]|=ord(s[t]>=s[t+1])
           end;
         12: begin
            t|=t-1;
            s[t]|=ord(s[t]>s[t+1])
           end;
         13: begin
            t|=t-1;
            s[t]|=ord(s[t]<=s[t+1])
           end;
         14: begin
            write(s[t]);
            write(fa2,s[t]);
            t|=t-1
           end;
         15: begin
            writeln;
            writeln(fa2)
           end;
         16: begin
            t|=t+1;
            write(> ? >);
            write(fa2,>? >);
            readln(s[t]);
            writeln(fa2,s[t])
           end;
         end;
     lod: begin
         t|=t+1;
         s[t]|=s[base(l)+a]
        end;
     sto: begin
         s[base(l)+a]|=s[t]; (*writeln(s[t])*)
         t|=t-1
        end;
     cal: begin (*generat new block mark*)
         s[t+1]|=base(l);
         s[t+2]|=b;
         s[t+3]|=p;
         b|=t+1;
         p|=a
        end;
     int: t|=t+a;
     jmp: p|=a;
     jpc: begin
         if s[t]=0
          then p|=a;
         t|=t-1
        end;
    end (*with,case*)
   until p=0;
   closef(fa2)
 end (*interpret*);