{
test program for semantics
}

program test003 ;
type tz	= ty;
     ta	= tx;
     tx	= integer;
     ty	= array[0..3] of integer;
   tu	= tz;
   tb	= tc;
   tc	=  boolean;
var x	  : integer;
    y	  : boolean;
    z	  : array[1..3] of integer;
   va	  : tx;
   uz, vz : tz;
   b	  : boolean;
   a	  : integer;
   w	  : string;
   
function func(x: integer;  y:integer ):integer;
begin
   t := x + y;
   x := z[75]
end;
procedure pro(zxcv	: integer);
begin
   x := x
end;

begin
   y := 1;
   b := not (x > y);
   x := func(x,1);
   pro(777);
   if z = z then z:=z+x ;
   a:= b-c div d;
   x := -y*z + 5;
   w := "my-string";
   a := x * (y+z)

end.   

