%echiquier% /ccarre { newpath moveto 0 50 rlineto 50 0 rlineto 0 -50 rlineto closepath fill } def /cpawn { gsave 15 10 translate newpath 0 0 moveto 7 17 lineto 2 22 lineto 10 30 lineto 18 22 lineto 13 17 lineto 20 0 lineto closepath setrgbcolor fill grestore } def /crook { gsave 15 10 translate newpath 3 0 moveto 3 20 lineto 0 20 lineto 0 30 lineto 3 30 lineto 3 26 lineto 8 26 lineto 8 30 lineto 13 30 lineto 13 26 lineto 17 26 lineto 17 30 lineto 20 30 lineto 20 20 lineto 17 20 lineto 17 0 lineto closepath setrgbcolor fill grestore } def %Grand carre% 100 220 translate newpath 0 0 moveto 0 400 rlineto 400 0 rlineto 0 -400 rlineto closepath stroke %casses noires% 2 { 4 { 1 2 7 { 1 0 0 ccarre 100 0 translate } for -400 100 translate } repeat 180 rotate -400 0 translate } repeat 1 0 0 crook gsave 300 150 translate 1 0 0 crook grestore gsave 100 200 translate 0 1 0 crook grestore gsave 50 100 translate 1 0 0 cpawn grestore gsave 200 50 translate 1 0 0 cpawn grestore gsave 50 300 translate 0 1 0 cpawn grestore gsave 250 300 translate 0 1 0 cpawn grestore gsave 350 200 translate 0 1 0 cpawn grestore