procedure gen(x:fct;y, z:integer);
   begin
    if cx>cxmax
     then
      begin
       write(>program too long>);
       goto 99
      end;
    with code[cx] do
     begin
      f|=x;
      l|=y;
      a|=z
     end;
    cx|=cx+1
  end (*gen*);

procedure test(s1,s2:symset;n:integer);
begin
 if not(sym in s1)
  then
   begin
    error(n);
    s1|=s1+s2;
    while not(sym in s1) do getsym
   end
end(*test*);