program t1 is constant s1 = 'string'; type t1 = boolean; t3 = record a,b : t1;c,c1:char endrec; var a, b, c:t1; s2:string; ar:array (1..5, 3..6, 7..9) of t3; procedure p1(var v:t1; value:t3) is forward; function f1(var fv:t1; value:t3) return integer is constant p1c = 5; type p1type = t1; p1type2 = char; var p1v, p1v2:t3; p1v3: p1type; begin end; Begin ar(1, 3, c).a := 5; End.