cmchar "Uppercase Greek Omega";
beginchar(oct"012",13u#,cap←height#,0);
showvariable x,y;
italcorr .75cap←height#*slant-.5u#;
showvariable x,y;
adjust←fit(0,0);
showvariable x,y;
pickup tiny.nib; pos1(vair,90); pos2(cap←curve,180);
showvariable x,y;
pos3(vair,180); pos4(cap←curve,0); pos5(vair,0);
showvariable x,y;
x1=.5w; top y1r=h+o; lft x2r=hround u; y2=y4=2/3h; x4=w-x2;
showvariable x,y;
rt x3l=hround(1/3(w+.5u)+.5hair); bot y3=bot y5=0; x5=w-x3;
showvariable x,y;
filldraw stroke z3e{up}...{up}z2e
 & pulled←super←arc.e(2,1)(.5superpull)
 & pulled←super←arc.e(1,4)(.5superpull)
 & z4e{down}...{down}z5e;  % bowl
showvariable x,y;
numeric arm←thickness; path p; p=z3{up}...{up}z2;
showvariable x,y;
arm←thickness=vround(if hefty:slab+2stem←corr else:.75[slab,cap←vstem] fi);
showvariable x,y;
pickup crisp.nib; pos6(arm←thickness,-90); pos7(fudged.hair,-180);
showvariable x,y;
bot y6r=0; x6=x3; lft x7r=hround .8u; y7=good.y(y6l+.5beak);
showvariable x,y;
(x,y)=p intersectionpoint((0,y6l)--(w,y6l)); x6l:=x;
showvariable x,y;
arm(6,7,a,.5beak←darkness,-1.2beak←jut);  % left arm and beak
showvariable x,y;
pos8(arm←thickness,-90); pos9(fudged.hair,0);
showvariable x,y;
y8=y6; y9=y7; x8+x6=x9+x7=w; x8l:=w-x6l;
showvariable x,y;
arm(8,9,b,.5beak←darkness,1.2beak←jut);  % right arm and beak
showvariable x,y;
math←fit(0,.5ic#); penlabels(1,2,3,4,5,6,7,8,9); endchar;