-% % try control points to do this in ps
-% currentpicture:=currentpicture shifted (-x5/2,(x5-x4)/2);
-%
-% s7 := 0.4*(x5-x1);
-% x7 = x1 + s7 * cosd(0);
-% y7 = y1 + s7 * sind(0);
-%
-% s8 := -0.25*(x5-x1);
-% x8 := x5 + s8 * cosd(alpha);
-% y8 := y5 + s8 * sind(alpha);
-%
-% s9 := 0.5*(x5-x4);
-% x9 := x4 + s9 * cosd(0);
-% y9 := y4 + s9 * sind(0);
-%
-% s10 := -0.15*(x5-x4);
-% x10 := x5 + s10 * cosd(alpha);
-% y10 := y5 + s10 * sind(alpha);
-%
-% draw z5..controls z8 and z7..z1--z2--z3..{up}z4
-% ..controls z9 and z10..z6..cycle;
-%
-% labels(1,2,3,4,5,6,7,8,9,10);
- addto currentpicture also currentpicture yscaled -1;
-endchar;
+ penpos5 (hair, angle tipdir);
+ penpos6 (hair, 90 + angle tipdir);
+
+ z5 = z6;
+
+ pickup pencircle scaled 1;
+
+ fill (z1
+ -- z3l{up}
+ .. z4r{right}
+ -- z2{right}
+ .. z6r{tipdir}
+ .. z5r
+ .. z6l{-tipdir}
+ ..tension 1.1.. z7{left}
+ & z7
+ -- z1
+ & cycle) yscaled updown;
+
+ if updown = 1:
+ penlabels (1, 2, 3, 4, 5, 6, 7, 8);
+ fi;
+endgroup;