program test(Output);
const Three = 2 + 1;   NULL = NIL;   PI = 3.14159;   Plus = '+';   Fred = 'Fred';
type Week = ( Mon, Tue, Wed, Thu, Fri, Sat, Sun );
	Weekday = Mon..Fri;
	Weekend = Sat..Sun;
type Count = ( Zero, One, Two, Ten = 10, Eleven );
var day	  : Week;
	wday  : Weekday;
	wend  : Weekend;
	lunch : array[Week] of Integer;
	cnt	  :  Count;
begin
	day := Sat;
	wday := day; // invalid but allowed
	wend := day; // valid
	day := Mon;
	wday := day; // valid
	wend := day; // invalid but allowed
	day := wday; // valid
	day := wend; // valid
	if day = wday then
		Writeln( day );
	if day <= Fri then
		Writeln( 'weekday');
	case day of
	  Mon..Fri :
		Writeln( 'weekday');
	  Sat..Sun :
		Writeln( 'weekend')
	end;
	day := Mon;
	while day <= Sat do begin
		Write( day, ' ' );
		day := succ( day );
	end;
	Writeln();
	for day := Mon to Sat do begin
		Write( day, ' ' );
	end;
	Writeln();
	for day := Mon to Sat do
		Write( lunch[day], ' ' );
	Writeln();
	for cnt := Zero to Eleven do begin
		Write( ord( cnt ), ' ' );
	end;
	Writeln();
end.

{ Local Variables: }
{ tab-width: 4 }
{ pascal-indent-level: 4 }
{ compile-command: "fpc test.pas" }
{ End: }
