def laimoc_swab = penpos1.1(stem,0); penpos1.3(stem,0); penpos1.4(hair,90); penpos1.5(hair,-90); y1.1=y1.1'=foot; x1.1l=x1.2=0.413stem; x1.1'=x1.4=0; x1.3=x1.1; x1.5=x1.1r+0.761stem; y1.5l=cap_height+apex_o; z1.5l-z1.4r=whatever*dir17; y1.3=0.828cap_height; y1.2=0.273cap_height; filldraw z1.1'...z1.2---z1.3l... z1.4l & z1.4l--z1.4r--z1.5l--z1.5r & z1.5r{left}...z1.3r---z1.1r & z1.1r--z1.1' & cycle enddef; def podi_swab (expr theta) = penpos2.1(1.304stem,theta); penpos2.2(1.304stem,theta); z2.1l=(0,foot); z2.1l-z2.2l=whatever*dir151; y2.2l=-apex_o; penpos2.3(hair,theta-90); z2.3r=z2.2; z2.05=(2/3apex_o,2/3apex_o); penpos2.1'(1.304stem,theta); z2.1'=0.5[z2.1,z2.2]+z2.05; penstroke z2.2e..z2.1'e..z2.1e enddef; def long_s = numeric w',h',d'; w':=6.038u; h':=1.414x_height; d':=3.208u; penpos1.1(2/3hair,0); z1.1=(0.313w',-d'); penpos1.2(1.283stem,0); z1.2=(0.344w',0.589h'); penpos1.4(hair,90); z1.4l=(0,y1.2-1/3stem); z1.3=(z1.1l..{dir92.5}z1.2l) intersectionpoint ((0,y1.4l)--(w',y1.4l)); z1.5=(0.35w',0.761h'); penpos1.6(0.957stem,-118); z1.6l=(0.669w',h'); penpos1.7(1.174stem,-125); z1.7l=(w',0.962h'); penpos1.8(hair,-35); z1.8r=z1.7l; z1.9-z1.8l=whatever*(z1.7l-z1.7r); x1.9=0.9w'; penpos1.11(2/3stem,-90); y1.11=y1.2; x1.11=0.763w'; penpos1.12(2/3stem,-90); z1.12=z1.2; filldraw z1.1r..z1.2r{dir87} & z1.2r{dir126}..z1.5{up}..z1.6r{right} ..z1.7r{right}--z1.8r--z1.8l--z1.9 & z1.9{left}..z1.6l{left}.. z1.4r{dir218}--z1.4l{right}-- z1.3{dir272.5}..z1.1l--z1.1r & cycle; if isitf: filldraw z1.11r--z1.12r-- z1.12l--z1.5{down}...(x1.2r,y1.11l){right} ---z1.11l--z1.11r & cycle; fi enddef; def dexi_podi_swab (expr yy) = penpos1.2(stem,0); z1.2r=(1.63stem,0.694x_height); penpos1.1(whatever,24); penpos1.3(whatever,43); x1.1l=x1.2l; z1.3l=z1.2l; x1.1r=x1.2r=x1.3r; y1.1l=yy; penpos1.4(1.348stem,43); x1.4l=0; y1.4r=x_height+apex_o; penstroke z1.1e---z1.3e... z1.4e{dir133} enddef; def aristero_podi_swab (expr xx) = w':=5.057u; penpos2.1(stem,0); z2.1l=(xx+1.261stem,0.694x_height); penpos2.2(whatever,34); z2.2l=(x2.1l,-apex_o); x2.2r=xx+w'; penpos2.3(hair,-90); z2.3r=z2.2r; z2.4=(x2.1r,0.378x_height); z2.6=(xx+0.545w',x_height+apex_o); penpos2.5(hair,-90); z2.5l-z2.6=whatever*dir-40; x2.5=xx+0.9w'; penpos2.7(hair,-90); z2.6-z2.7l=whatever*dir33; x2.7=xx; z2.8-z2.7r=whatever*(z2.6-z2.7l); z2.8=whatever[z2.6,z2.5r]; penpos2.9(1.217stem,33); z2.9r=z2.8; z2.9l-z2.11=whatever*(z2.6-z2.5l); x2.11=x2.1l; filldraw z2.7r--z2.9l--z2.11-- z2.2l--z2.3r--z2.3l{z2.2l-z2.2r}..{up} z2.4---z2.1r...z2.5r{right}-- z2.5l--z2.6--z2.7l--z2.7r & cycle enddef; def e_umlaut(suffix $) = penpos$.1(2u,45); z$.1=z$; pickup pensquare yscaled 0.5hair xscaled 0.3[hair,stem] rotated 30; z$.2=z$.1r; z$.3=z$.1l; rt x$.4=rt x$.2; top y$.4=y$; draw z$.3--z$.2..z$.3..z$.4; enddef;