u=1cm; r=3pt; beginfig(1); z0=(0,0); z1=z0+u*dir150; z2=z0+u*dir30; z3=z0+u*dir-30; z4=z0+u*dir-150; draw z0--z1--z4--z0--z2--z3--z0; pickup pencircle scaled 2r; for i=0 upto 4: draw z[i]; endfor label.ulft(btex$a$etex, z1+r*dir150); label.urt(btex$b$etex, z2+r*dir30); label.top(btex$c$etex, z0+r*dir90); label.llft(btex$d$etex, z4+r*dir-150); label.lrt(btex$e$etex, z3+r*dir-30); endfig; beginfig(2); for i=0 upto 4: z[i] = u*dir(-360/5*i+90); endfor z[5]=(0,-u/4); draw z0--z1--z2--z3--z4--z0; draw z4--z1--z5--z3; draw z0--z5--z2; draw z0..z4+u*dir-135..z3; pickup pencircle scaled 2r; for i=0 upto 5: draw z[i]; endfor label.urt(btex$a$etex, z0+r*dir45); label.urt(btex$c$etex, z1+r*dir45); label.lrt(btex$f$etex, z2+r*dir-45); label.bot(btex$e$etex, z3+r*dir-90); label.ulft(btex$b$etex, z4+r*dir-135); label.ulft(btex$d$etex, z5+r*dir-135); endfig; beginfig(3); for i=0 upto 4: z[i] = u*dir(-360/5*i+90); endfor for i=0 upto 3: for j=i upto 4: draw z[i]--z[j]; endfor; endfor pickup pencircle scaled 2r; for i=0 upto 4: draw z[i]; endfor label.top(btex$a$etex, z[0]+r*dir90); label.rt(btex$b$etex, z[1]+r*dir0); label.lrt(btex$c$etex, z[2]+r*dir-45); label.llft(btex$d$etex, z[3]+r*dir-135); label.lft(btex$e$etex, z[4]+r*dir180); endfig; beginfig(4); z0=(0,0); z1=2u*dir90; z2=2u*dir-30; z3=2u*dir-150; z4=2u/3*dir30; z5=2u/3*dir150; z6=2u/3*dir-90; draw z0--z4--z1--z0--z5--z3--z0--z6--z2--z0; draw z1--z2--z3--z1; pickup pencircle scaled 2r; for i=0 upto 6: draw z[i]; endfor label.ulft(btex$d$etex, z0+r*dir90); label.top(btex$a$etex, z1+r*dir90); label.lrt(btex$g$etex, z2+r*dir-45); label.llft(btex$f$etex, z3+r*dir-135); label.bot(btex$c$etex, z4+r*dir-90); label.top(btex$b$etex, z5+r*dir90); label.lft(btex$e$etex, z6+r*dir180); endfig; beginfig(5); z0=(0,0); z1=z0+u*dir120; z2=z1+u*dir60; z3=z1+u*dir180; z4=z0+u*dir-120; z5=z4+u*dir180; z6=z4+u*dir-60; z7=z0+3u/2*dir0; z8=z9+u*dir0; z9=z7+u*dir60; z10=z7+u*dir-60; z11=z10+u*dir0; z12=z10+u*dir-120; draw z0--z1--z2; draw z1--z3; draw z0--z4--z5; draw z4--z6; draw z0--z7--z9--z8; draw z7--z10--z11; draw z10--z12; pickup pencircle scaled 2r; for i=0 upto 12: draw z[i]; endfor label.urt(btex$a$etex, z2+r*dir45); label.lft(btex$b$etex, z3+r*dir180); label.rt(btex$c$etex, z1+r*dir0); label.lft(btex$d$etex, z0+r*dir180); label.rt(btex$e$etex, z4+4*dir0); label.lft(btex$f$etex, z5+r*dir180); label.bot(btex$g$etex, z6+r*dir-90); label.rt(btex$h$etex, z8+r*dir0); label.ulft(btex$i$etex, z9+r*dir135); label.rt(btex$j$etex, z7+r*dir0); label.rt(btex$k$etex, z11+r*dir0); label.lft(btex$l$etex, z10+r*dir180); label.bot(btex$m$etex, z12+r*dir-90); endfig; beginfig(6); z0=(0,0); z1=z0+2u*dir45; z2=z0+2u*dir-45; z3=z1+2u*dir-45; z4=z3+2u*dir45; z5=z3+2u*dir-45; z6=z4+2u*dir-45; draw z0--z1--z4--z3--z5--z2--z0; draw z1--z2; draw z0--z3--z6; pickup pencircle scaled 2r; for i=0 upto 6: draw z[i]; endfor label.lft(btex$a$etex, z0+r*dir180); label.ulft(btex$b$etex, z1+r*dir135); label.llft(btex$c$etex, z2+r*dir-135); label.ulft(btex$d$etex, z3+r*dir135); label.urt(btex$e$etex, z4+r*dir45); label.lrt(btex$f$etex, z5+r*dir-45); label.rt(btex$g$etex, z6+r*dir0); endfig; beginfig(7); z0=(0,0); pickup pencircle scaled 2r; draw z0; endfig; beginfig(8); z0=(0,0); z1=z0+u*dir0; pickup pencircle scaled 2r; draw z0; draw z1; endfig; beginfig(9); z0=(0,0); z1=z0+u*dir0; draw z0--z1; pickup pencircle scaled 2r; draw z0; draw z1; endfig; beginfig(10); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir60; pickup pencircle scaled 2r; for i=0 upto 2: draw z[i]; endfor endfig; beginfig(11); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir60; draw z0--z2; pickup pencircle scaled 2r; for i=0 upto 2: draw z[i]; endfor endfig; beginfig(12); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir60; draw z0--z2--z1; pickup pencircle scaled 2r; for i=0 upto 2: draw z[i]; endfor endfig; beginfig(13); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir60; draw z0--z2--z1--z0; pickup pencircle scaled 2r; for i=0 upto 2: draw z[i]; endfor endfig; beginfig(14); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; beginfig(15); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; draw z0--z1; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; beginfig(16); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; draw z2--z0--z1; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; beginfig(17); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; draw z0--z1; draw z2--z3; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; beginfig(18); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; draw z2--z0--z1--z3; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; beginfig(19); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; draw z2--z0--z1--z2; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; beginfig(20); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; draw z2--z0--z1; draw z0--z3; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; beginfig(21); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; draw z0--z1--z3--z2--z0; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; beginfig(22); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; draw z1--z2--z0--z1--z3; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; beginfig(23); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; draw z1--z2--z0--z1--z3--z2; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; beginfig(24); z0=(0,0); z1=z0+u*dir0; z2=z0+u*dir-90; z3=z2+u*dir0; draw z1--z2--z0--z1--z3--z2; draw z0--z3; pickup pencircle scaled 2r; for i=0 upto 3: draw z[i]; endfor endfig; % Q_4 beginfig(25); for i=0 upto 7: z[i]=2u*dir(i*45); z[i+8]=5u*dir(i*45); endfor for i=0 upto 5: draw z[i]--z[i+2]; draw z[i+8]--z[i+10]; endfor draw z6--z0; draw z7--z1; draw z14--z8; draw z15--z9; for i=1 step 2 until 5: draw z[i]--z[i+1]; draw z[i+8]--z[i+9]; endfor draw z7--z0; draw z15--z8; for i=0 upto 7: draw z[i]--z[i+8]; endfor pickup pencircle scaled 2r; for i=0 upto 15: draw z[i]; endfor label.lrt("1001", z0+r*dir-45); label.rt("1100", z1+r*dir0); label.urt("1000", z2+r*dir45); label.urt("1110", z3+r*dir45); label.ulft("1010", z4+r*dir135); label.lft("1111", z5+r*dir180); label.llft("1011", z6+r*dir-135); label.llft("1101", z7+r*dir-135); label.rt("0001", z8+r*dir0); label.urt("0100", z9+r*dir45); label.top("0000", z10+r*dir90); label.ulft("0110", z11+r*dir135); label.lft("0010", z12+r*dir180); label.llft("0111", z13+r*dir-135); label.bot("0011", z14+r*dir-90); label.lrt("0101", z15+r*dir-45); endfig; w:=10pt; beginfig(26); z0=(0,0); z1=z0+u*dir0; z2=z1+u*dir0; draw z0--z1--z2; pickup pencircle scaled w; for i=0 upto 2: draw z[i] withcolor white; label("C",z[i]); endfor endfig; beginfig(27); z0=(0,0); for i=1 upto 4: z[i]=z[i-1]+u*dir0; endfor draw z0--z1--z2--z3--z4; pickup pencircle scaled w; for i=0 upto 4: draw z[i] withcolor white; label("C",z[i]); endfor endfig; beginfig(28); z0=(0,0); for i=1 upto 3: z[i]=z[i-1]+u*dir0; endfor z4=z1+u*dir-90; draw z0--z1--z2--z3; draw z1--z4; pickup pencircle scaled w; for i=0 upto 4: draw z[i] withcolor white; label("C",z[i]); endfor endfig; beginfig(29); z0=(0,0); for i=1 upto 4: z[i]=z[0]+u*dir(i*90); endfor draw z3--z0--z1; draw z2--z0--z4; pickup pencircle scaled w; for i=0 upto 4: draw z[i] withcolor white; label("C",z[i]); endfor endfig; beginfig(30); z0=(0,0); for i=1 upto 5: z[i]=z[i-1]+u*dir0; endfor draw z0--z1--z2--z3--z4--z5; pickup pencircle scaled w; for i=0 upto 5: draw z[i] withcolor white; label("C",z[i]); endfor endfig; beginfig(31); z0=(0,0); for i=1 upto 4: z[i]=z[i-1]+u*dir0; endfor z5=z1+u*dir-90; draw z0--z1--z2--z3--z4; draw z1--z5; pickup pencircle scaled w; for i=0 upto 5: draw z[i] withcolor white; label("C",z[i]); endfor endfig; beginfig(32); z0=(0,0); for i=1 upto 4: z[i]=z[i-1]+u*dir0; endfor z5=z2+u*dir-90; draw z0--z1--z2--z3--z4; draw z2--z5; pickup pencircle scaled w; for i=0 upto 5: draw z[i] withcolor white; label("C",z[i]); endfor endfig; beginfig(33); z0=(0,0); for i=1 upto 3: z[i]=z[i-1]+u*dir0; endfor z4=z1+u*dir-90; z5=z2+u*dir-90; draw z0--z1--z2--z3; draw z1--z4; draw z2--z5; pickup pencircle scaled w; for i=0 upto 5: draw z[i] withcolor white; label("C",z[i]); endfor endfig; beginfig(34); z0=(0,0); for i=1 upto 3: z[i]=z[i-1]+u*dir0; endfor z4=z1+u*dir90; z5=z1+u*dir-90; draw z0--z1--z2--z3; draw z4--z1--z5; pickup pencircle scaled w; for i=0 upto 5: draw z[i] withcolor white; label("C",z[i]); endfor endfig; w:=24pt; beginfig(35); y0=4u; y1=y2=3u; y3=y4=y5=y6=2u; y7=y8=y9=y10=y11=u; y12=y13=0; x12=0; x7=u; x13=2u; x3=3u; x8=4u; x1=5u; x4=6u; x0=7u; x5=8u; x9=9u; x2=10u; x10=11u; x6=12u; x11=13u; draw z0--z1--z3--z7--z12; draw z1--z4; draw z3--z8; draw z7--z13; draw z0--z2--z5--z9; draw z2--z6--z10; draw z6--z11; pickup pencircle scaled w; for i=0 upto 13: draw z[i] withcolor white; endfor label("now",z0); label("is",z1); label("the",z2); label("for",z3); label("men",z4); label("of",z5); label("time",z6); label("all",z7); label("good",z8); label("party",z9); label("their",z10); label("to",z11); label("aid",z12); label("come",z13); endfig; beginfig(36); y0=3u; y1=y2=y3=2u; y4=y5=y6=y7=y8=y9=u; y10=y11=y12=0; x4=0; x1=u; x5=2u; x6=3u; x0=x2=4u; x7=5u; x8=x10=6u; x3=7u; x11=8u; x9=9u; x12=10u; draw z0--z1--z4; draw z1--z5; draw z0--z2--z6; draw z2--z7; draw z0--z3--z8--z10; draw z3--z9--z11; draw z9--z12; pickup pencircle scaled 2r; for i=0 upto 12: draw z[i]; endfor label.top(btex$d$etex,z0+r*dir90); label.ulft(btex$c$etex,z1+r*dir135); label.urt(btex$e$etex,z2+r*dir45); label.urt(btex$j$etex,z3+r*dir45); label.bot(btex$a$etex,z4+r*dir-90); label.bot(btex$b$etex,z5+r*dir-90); label.bot(btex$f$etex,z6+r*dir-90); label.bot(btex$g$etex,z7+r*dir-90); label.lrt(btex$i$etex,z8+r*dir-45); label.urt(btex$l$etex,z9+r*dir45); label.bot(btex$h$etex,z10+r*dir-90); label.bot(btex$k$etex,z11+r*dir-90); label.bot(btex$m$etex,z12+r*dir-90); endfig; beginfig(37); y0=3u; y1=y2=y3=2u; y4=y5=y6=y7=y8=u; y9=y10=y11=y12=0; x9=0; x4=u; x10=2u; x1=3u; x11=4u; x5=5u; x12=6u; x0=x2=x6=7u; x7=8u; x3=9u; x8=10u; draw z0--z1--z4--z9; draw z4--z10; draw z1--z5--z11; draw z5--z12; draw z0--z2--z6; draw z0--z3--z7; draw z3--z8; pickup pencircle scaled 2r; for i=0 upto 12: draw z[i]; endfor label.top(btex$j$etex,z0+r*dir90); label.ulft(btex$d$etex,z1+r*dir135); label.lft(btex$i$etex,z2+r*dir180); label.urt(btex$l$etex,z3+r*dir45); label.ulft(btex$c$etex,z4+r*dir135); label.urt(btex$e$etex,z5+r*dir45); label.bot(btex$h$etex,z6+r*dir-90); label.bot(btex$k$etex,z7+r*dir-90); label.bot(btex$m$etex,z8+r*dir-90); label.bot(btex$a$etex,z9+r*dir-90); label.bot(btex$b$etex,z10+r*dir-90); label.bot(btex$f$etex,z11+r*dir-90); label.bot(btex$g$etex,z12+r*dir-90); endfig; beginfig(38); y0=5u; y1=4u; y2=y3=3u; y4=y5=2u; y6=y7=y8=y9=u; y10=y11=y12=0; x6=0; x4=u; x7=2u; x2=3u; x10=x8=4u; x5=5u; x11=6u; x9=7u; x12=8u; x0=x1=9u; x3=10u; draw z0--z1--z2--z4--z6; draw z4--z7; draw z2--z5--z8--z10; draw z5--z9--z11; draw z9--z12; draw z1--z3; pickup pencircle scaled 2r; for i=0 upto 12: draw z[i]; endfor label.top(btex$f$etex,z0+r*dir90); label.bot(btex$e$etex,z1+r*dir-90); label.ulft(btex$d$etex,z2+r*dir135); label.bot(btex$g$etex,z3+r*dir-90); label.ulft(btex$c$etex,z4+r*dir135); label.urt(btex$j$etex,z5+r*dir45); label.bot(btex$a$etex,z6+r*dir-90); label.bot(btex$b$etex,z7+r*dir-90); label.lft(btex$i$etex,z8+r*dir180); label.urt(btex$l$etex,z9+r*dir45); label.bot(btex$h$etex,z10+r*dir-90); label.bot(btex$k$etex,z11+r*dir-90); label.bot(btex$m$etex,z12+r*dir-90); endfig; beginfig(39); z0=(0,0); z1=z0+2u*dir45; z2=z0+2u*dir-45; z3=z1+2u*dir-45; z4=z3+2u*dir45; z5=z3+2u*dir-45; z6=z4+2u*dir-45; draw z0--z1--z2--z5--z3--z4; draw z3--z6; pickup pencircle scaled 2r; for i=0 upto 6: draw z[i]; endfor label.lft(btex$a$etex, z0+r*dir180); label.ulft(btex$b$etex, z1+r*dir135); label.llft(btex$c$etex, z2+r*dir-135); label.ulft(btex$d$etex, z3+r*dir135); label.urt(btex$e$etex, z4+r*dir45); label.lrt(btex$f$etex, z5+r*dir-45); label.rt(btex$g$etex, z6+r*dir0); label.ulft("1",0.5[z0,z1]); label.rt("2",0.5[z1,z2]); label.bot("3",0.5[z2,z5]); label.urt("4",0.5[z3,z5]); label.ulft("5",0.5[z3,z4]); label.top("6",0.5[z3,z6]); endfig; beginfig(40); z0=(0,0); z1=z0+2u*dir45; z2=z0+2u*dir-45; z3=z1+2u*dir-45; z4=z3+2u*dir45; z5=z3+2u*dir-45; z6=z4+2u*dir-45; draw z0--z1--z4; draw z0--z3--z6; draw z0--z2--z5; pickup pencircle scaled 2r; for i=0 upto 6: draw z[i]; endfor label.lft(btex$a$etex, z0+r*dir180); label.ulft(btex$b$etex, z1+r*dir135); label.llft(btex$c$etex, z2+r*dir-135); label.ulft(btex$d$etex, z3+r*dir135); label.urt(btex$e$etex, z4+r*dir45); label.lrt(btex$f$etex, z5+r*dir-45); label.rt(btex$g$etex, z6+r*dir0); label.ulft("1",0.5[z0,z1]); label.top("1",0.5[z0,z3]); label.llft("1",0.5[z0,z2]); label.top("2",0.5[z1,z4]); label.top("2",0.5[z3,z6]); label.bot("2",0.5[z2,z5]); endfig; end;