PROGRAM Bauhaus (input,output);


TYPE %include 'edwin:types.pas'
     pointa = array [1..10] of pointfm;
     %include 'edwin:specs.pas'
     %include 'edwin:shapes.pas'


VAR jaw : array [1..10] of pointfm;


    a,b,c,d : integer;

PROCEDURE eye;
BEGIN
     Viewport(a,b,c,d);
     rectangle (320,605,425,720);
     moveabs (320,720);
     linerel (-45,0);
     moveabs (425,605);
     linerel (0,-45)
END;


PROCEDURE face;
BEGIN
     rectangle (504,440,522,841)
END;


PROCEDURE jaws;
BEGIN
     jaw[1].x := 440;          jaw[1].y := 290;
     jaw[2].x := 440;          jaw[2].y := 390;
     jaw[3].x := 403;          jaw[3].y := 390;
     jaw[4].x := 403;          jaw[4].y := 405;
     jaw[5].x := 440;          jaw[5].y := 405;
     jaw[6].x := 440;          jaw[6].y := 440;
     jaw[7].x := 473;          jaw[7].y := 440;
     jaw[8].x := 473;          jaw[8].y := 290;
     polygon (8,jaw)
END;


PROCEDURE chin;
BEGIN
     moveabs (325,290);
     linerel (45,0);
END;


PROCEDURE readstring ;

VAR ch : char;

BEGIN
     read (ch);
     WHILE ch <> '.' DO BEGIN
           character (ch);
           read (ch)
     END
END;


PROCEDURE heading;
BEGIN
     moveabs (200,880);
     setcharfont (26);
     setcharsize (80);
     readstring ;
     moveabs (20,75);
     setcharsize (50);
     readstring
END;


BEGIN
     initialisefor (defaultdevice);
     a:=0; b:=0; c:=0; d:=0;
     InquireViewport(a,b,c,d);
     newframe;
     setcharquality (1);
     heading;
     moveabs (512,512);
     circle (330);
     setshademode (1);
     eye;
     face;
     chin;
     jaws;
     terminateedwin
END.
