%%
%% This is file `hminl.mf',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% humanist.dtx  (with options: `min')
%% 
%%  Copyright 1999 Peter R. Wilson
%% 
%%  This program is provided under the terms of the
%%  LaTeX Project Public License distributed from CTAN
%%  archives in directory macros/latex/base/lppl.txt.
%% 
%% Author: Peter Wilson (CUA)
%%         now at: peter.r.wilson@boeing.com
%% 

cmchar "HMIN letter a";
beginchar("a", 2sb#+hstretch*(11/11x_height#+jut#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
path pth[];
pair pr[];
pickup quill;
n1 := w - 2pcshiftx -jut; % effective letter width
rt x1 = w-pcshiftx-jut; top y1=h;
x2 = x1; bot y2=0;
z16 = 1/6[z2,z1];
rt x6 = x16; y6=y16;
lft x4 = pcshiftx; y4 = 1/2h;
pth1 := z1{down}..z2;
pr1 := direction 1 of pth1;
z20 = z2 shifted -10pr1;

z11 = point 3/13 of pth1; z15 = point 10/13 of pth1;
lft x13 = pcshiftx; y13=1/4h;
%%ductus:=true;
if ductus:
  pickup stylus;
else:
  % draw stem
  draw pth1;
  draw_roundserif(1,2,srad);
  draw_roundserif(2,20,srad);
  % draw bowl
%%  draw z1{-pdir}..z4{down}..z6{pdir};
  draw z11{-pdir}..z13{down}..z15{pdir};
fi
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,11,12,13,14,15,100);
endchar; % end "a"

cmchar "HMIN letter b";
beginchar("b", 2sb#+hstretch*(13/11x_height#+jut#),
               asc_height#, 0);
adjust_fit(0,0);
numeric n[];
path pth[];
pcshiftx := sb;
pickup quill;
n1:=w-2pcshiftx;    % actual letter width
n2:=h/ascratio;    % top of bowl
%%ductus:=true;
lft x1 = pcshiftx+jut; top y1=h;
x2=x1; bot y2=0;
x12=x2; bot y12=y2;
x3 = x1; y3=1/2n2;
rt x5 = w-pcshiftx; y5=y3;
x4 = 1/2[x3,x5]; bot y4=0;
x6=x4; top y6=n2;
pth1 := z1..z3{down}..z4{right}.. z5{up};
z98=(0,3/4n2); z99=(w,y98);
pth2 := z98--z99;
z7 = pth1 intersectionpoint pth2;
if ductus:
  pickup stylus;
fi
%%draw z1..z3{down}..z4{right}..z5{up}..z6{left}..z7{-pdir};
draw z1--z2;
draw_flatserif(1,2,srad);
draw z12..z4{right}..z5{up}..z6{left}..z7{-pdir};
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,100);
endchar; % end "b"

cmchar "HMIN letter c";
beginchar("c", 2sb#+hstretch*(11/11x_height#),
               x_height#, 0);
adjust_fit(0,0);
numeric n[];
pcshiftx := sb;
pickup quill;
n1:=w-2pcshiftx;     % actual letter width
n2:=6/5w-2pcshiftx;  % width of full bowl
x1=pcshiftx + 1/2n1; top y1 = h;
lft x2 = pcshiftx; y2 = 1/2h;
x3 = x1; bot y3 = 0;
rt x4 = w-pcshiftx; y4 = 1/4h;
x24 = x4; y24 = 3/4h;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z24..z1{left}..z2{down}..z3{right}..z4{pdir};
ductus:=false;
penlabels(1,2,3,4,5,6,14,16,17,18,100);
endchar; % end "c"

cmchar "HMIN letter d";
beginchar("d", 2sb#+hstretch*(13/11x_height#+jut#),
               asc_height#, 0);
adjust_fit(0,0);
numeric n[];
path pth[];
pcshiftx := sb;
pickup quill;
n1 = h/ascratio;    %  x-height
rt x1=w-pcshiftx-jut; top y1=h;
x2 = x1; bot y2=0;
x3 = x1; y3 = 1/4n1;
lft x5 = pcshiftx; y5=1/2n1;
x4 = 1/2[x3,x5]; bot y4 = 0;
x6=x4; top y6 = n1;
x7=x3; y7=3/4n1;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
draw z3..z4{left}..z5{up}..z6{right}..z7;
ductus:=false;
penlabels(0,1,2,3,4,5,6,7,8,100);
endchar; % end "d"

cmchar "CMIN letter e";
beginchar("e", sb#+hstretch*(12/11x_height#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
path pth[];
pickup quill;
n1 := w-pcshiftx;    % actual letter width
n2 := 7/8n1;   % width of bowl
x1 = pcshiftx + 5/8n2; top y1=h;
lft x2 = pcshiftx; y2 = 1/2h;
x3 = pcshiftx + 1/2n2; bot y3 = 0;
rt x4 = pcshiftx + n2; y4 = 1/4h;
z98=(0,5/8h); z99=(2w,y98);
pth1 := z98--z99;
pth2 := z1{left}..z2{down}..z3{right};
z7 = pth1 intersectionpoint pth2;
rt x17 = w; y17=y7;
rt x8 =pcshiftx+n2; y8=y2;
pth3 := z1{right}..z8{down}..z3{left};
z9 = pth1 intersectionpoint pth3;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z9{up}..z1{left}..z2{down}..z3{right}..z4{pdir};
draw z7--z17;
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,17,70,100);
endchar; % end "e"

cmchar "HMIN letter f";
beginchar("f", 2sb#+hstretch*(11/11x_height#+jut#),
               (asc_height#), 0);
adjust_fit(0,0);
numeric n[];
pcshiftx := sb;
pickup quill;
n1 := h/ascratio;      % x-height
%% stem
lft x1=lft x2=pcshiftx+jut; top y1=n1; bot y2=0;
%% flick
x4=x2; y4 = 1/2n1;
rt x6=w-pcshiftx; y6 = 2/3h;
x5 = 2/3[x4,x6]; top y5=h;
%% bar
x14=pcshiftx; top y14=n1;
rt x16 = w -pcshiftx; y16 = y14;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);            % stem
draw_roundserif(2,1,srad);
draw z1{up}...z5{right}...z6;    % top
draw z14--z16;      % bar
ductus:=false;
ductus:=false;
penlabels(1,2,3,4,5,6,7,14,15,16,100);
endchar; % end "f"

cmchar "CMIN letter g";
beginchar("g", 2sb#+hstretch*(16/11x_height#),
               x_height#, desc_depth#);
adjust_fit(0,0);
path pth[];
pair vec[];
numeric n[];
pcshiftx := sb;
pickup quill;
n1 := 4/5w - 2pcshiftx;  % width of top o
%% top O
x1 = x3 = pcshiftx + 1/2n1; top y1=h; bot y3=1/8h;
lft x4 = pcshiftx; rt x2 = pcshiftx+n1; y2 = y4 = 1/2[y1,y3];

%% top flick
lft x11 = rt x1; y11=y1;
rt x13 = w-pcshiftx; y13 = h;

%% bottom O
x31=x3; top y31= -1/8d;
x33=x31; top y33 = -d;
lft x32 = x2; y32 = 1/2[y31,y33];
lft x34 = pcshiftx; y34=y32;

%% link
x44=1/2[x34,x31]; y44=1/2[y3,y31];

%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1..z2..z3..z4..cycle;    % top O
draw z11{right}..z13{pdir};    % flick
draw z31{right}..z32{down}..z33{left}..{up}z34..cycle;  % bottom O
draw z3{left}..z44{down}..z31{right};  % link
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,11,12,13,31,32,33,34,35,36,100);
endchar; % end "g"

cmchar "HMIN letter h";
beginchar("h", 2sb#+hstretch*(13/11x_height#+jut#),
               asc_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
pickup quill;
numeric n[];
%% stem
lft x1=lft x2=pcshiftx+jut;
top y1=h; bot y2=0;
%% bowl
n1 := h/ascratio;    % x-height
z3=(x1,6/8n1);
rt x5 = w-pcshiftx; y5=1/2n1;
x4=1/2[x3,x5]; top y4 = n1;
%%lft x6=x4; bot y6=0;
x6=1/2[x4,x5];
bot y6=0;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);                       % stem
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
draw z3..z4{right}..z5{down}..z6{-pdir};

ductus:=false;
penlabels(1,2,3,4,5,6,100);
endchar; % end "h"

cmchar "CMIN letter i";
beginchar("i", 2sb#+hstretch*(thick#+2jut#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
pickup quill;
lft x1=lft x2=pcshiftx+jut;
top y1=h; bot y2=0;
%% dot
x22 = x21=x1;
bot y22 = 2h - bot y1;
bot y21 = top y22;
%%ductus:=true;
draw_tstem(1,2,srad);
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
draw z21--z22;             %% dot
ductus:=false;
penlabels(1,2,100);
endchar; % end "i"

cmchar "CMIN letter j";
beginchar("j", sb#+hstretch*(3/8x_height#),
               x_height#, desc_depth#);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
%% stem
rt x1 = w-pcshiftx; top y1 = h;
x2=x1; y2=-1/2d;
%% dot
x22 = x21=x1;
bot y22 = 2h - bot y1;
bot y21 = top y22;
%% bottom hook
lft x3 = 0; bot y3 = -d;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1--z2;               % stem
draw_flatserif(1,2,srad);
draw z21--z22;             % dot
draw z2{down}..z3{-pdir};               % hook
ductus:=false;
penlabels(1,2,3,100);
endchar; % end "j"

cmchar "HMIN letter k";
beginchar("k", 2sb#+hstretch*(14/11x_height#+jut#),
               asc_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
path pth[];
numeric n[];
pickup quill;
%% stem
n1 = h/ascratio;                 % x-height
lft x1=lft x2=pcshiftx+jut;
top y1=h; bot y2=0;
%% top arm
%%z3=(x1,1/2n1);
x3 = x1; top y3 = 1/2n1;
rt x5=5/8[x1,w-pcshiftx]; top y5=n1;
x4=1/2[x3,x5]; top y4=n1;
pth1 := z3{pdir}..z5{up};

x29=x1; top y29 = 7/8n1;
rt x25=5/8[x1,w-pcshiftx]; y25=6/8[y3,y29];
x27=1/2[x29,x25]; top y27=n1;
pth1 := z3{pdir}..z25{up}..z27{left}..z29;
pth1 := z3{pdir}..z25..z27{left}..z29;

%% lower arm
pth2 := (rt x1,0)--(rt x1,h);
z13 = pth1 intersectionpoint pth2;
pickup threequarterquill;
lft x14 = x13; bot y14 = y13;
rt x7=w-pcshiftx; bot y7=0;

pth3 := z14{pdir}..z25..z27{left}..z29;
pickup quill;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);            % stem
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
%%draw pth1;                        % upper arm
draw pth3;                        % upper arm
pickup threequarterquill;
%%draw z14{down}..z7{-ppdir};              % lower arm
%%draw z14{down}..z7;              % lower arm
draw z14{-ppdir}..z7{right};              % lower arm
pickup quill;
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,13,14,100);
endchar; % end "k"

cmchar "HMIN letter l";
beginchar("l", 2sb#+hstretch*(9/11x_height#+jut#),
               asc_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
lft x1=pcshiftx+jut; top y1=h;
n1 := top y1 - y1;
x2=x1; bot y2 =3n1;
rt x4 = w-pcshiftx; bot y4=n1;
x3=1/2[x2,x4]; bot y3=0;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1--z2..z3{right}..z4;
draw_flatserif(1,2,srad);
ductus:=false;
penlabels(1,2,3,4,100);
endchar; % end "l"

cmchar "HMIN letter m";
beginchar("m", 2sb#+hstretch*(19/11x_height#+2jut#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
path pth[];
pickup quill;
%% left stem
lft x1=pcshiftx+jut; top y1=h;
x2=x1; bot y2=0;
%% start of bowl
x13=x1; y13=3/4h;
%% bottom of right and middle stems
rt x6 = w -pcshiftx - jut; y6=y2;
z4 = 1/2[z2,z6];
%% top of middle and right stems
x3=x4; y3=y1;
x5=x6; y5=y13;
%% top of bowls
x14=2/3[x13,x3]; top y14 = h;
x33=x4; y33=y13;
x34=2/3[x33,x5]; y34 = y14;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);                             % left half
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
draw z13{pdir}..z14{right}..z33{down}--z4;
draw_roundserif(4,3,srad);
draw z33{pdir}..z34{right}..z5{down}--z6;
draw_roundserif(6,5,srad);
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,13,14,33,34,100);
endchar; % end "m"

cmchar "HMIN letter n";
beginchar("n", 2sb#+hstretch*(12/11x_height#+2jut#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
pickup quill;
%% left stem
lft x1=pcshiftx+jut; top y1=h;
x2=x1; bot y2=0;
x13=x1; y13=3/4h;
%% right stem
rt x4 = w-pcshiftx-jut; y4=y2;
x3 = x4; y3 = y13;
x14 = 2/3[x13,x3]; top y14 = h;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);                % left stem
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
draw z13{pdir}..z14{right}..z3{down}--z4;
draw_roundserif(4,3,srad);
ductus:=false;
penlabels(1,2,3,4,5,6,13,14,100);
endchar; % end "n"

cmchar "CMIN letter o";
beginchar("o", 2sb#+hstretch*(15/11x_height#),   % could be 15/11
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
pickup quill;
lft x1=pcshiftx; rt x3=w-pcshiftx; y1=y3=h/2;
x2=x4=w/2; top y2=h+o; bot y4=-o;
draw z1..z2..z3..z4..cycle;
z5=(pcshiftx,-o);
obowl(5, w-2pcshiftx, h+2o);
%%ductus:=true;
if ductus:
  pickup stylus;
  draw obfirst; draw obsecond; draw obouter; draw obinner;
else:
%%  fill obouter; unfill obinner;
fi
ductus:=false;
penlabels(1,2,3,4,5,100);
endchar; % end "o"

cmchar "CMIN letter p";
beginchar("p", 2sb#+hstretch*(13/11x_height#+jut#),
               x_height#, desc_depth#);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
%% stem
lft x1=lft x2=pcshiftx+jut;
top y1=h; bot y2=-d;
%% bowl                        % from "d"
z3=3/4[(x1,0),z1];
rt x5 = w-pcshiftx; y5=1/2h;
x4=1/2[x3,x5]; top y4 = h;
x6=x4; bot y6=0;
z7=1/4[(x1,0),z1];

%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);                         % stem
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad)
draw z3{pdir}..z4{right}..z5{down}..z6{left}..z7;    % bowl (from d)
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,100);
endchar; % end "p"

cmchar "CMIN letter q";
beginchar("q", 2sb#+hstretch*(13/11x_height#+jut#),
               x_height#, desc_depth#);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
%% right stem
rt x1=w-pcshiftx-jut; top y1=h;
x2=x1; bot y2=-d;
%% bowl
z3=1/4[(x1,0),z1];
lft x5=pcshiftx; y5=1/2h;
x4=1/2[x3,x5]; bot y4=0;
x6=x4; top y6=h;
z7=3/4[(x1,0),z1];
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);
%%draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
draw z3{-pdir}..z4{left}..z5{up}..z6{right}..z7;
ductus:=false;
penlabels(0,1,2,3,4,5,6,7,8,100);
endchar; % end "q"

cmchar "CMIN letter r";
beginchar("r", 2sb#+hstretch*(10/11x_height#+jut#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
%% stem
lft x1=lft x2=pcshiftx+jut;
top y1=h; bot y2=0;
%% bowl
z3=3/4[z2,z1];
rt x5 = w-pcshiftx; y5=y3;
x4=1/2[x3,x5]; top y4 = h;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);                         % stem
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
draw z3{pdir}..z4{right}..z5{down};
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,100);
endchar; % end "r"

cmchar "HMIN letter s";
beginchar("s", 2sb#+hstretch*(11/11x_height#+jut#), % 13/11 seems too wide
               x_height#, 0);
adjust_fit(0,0);
numeric n[];
pcshiftx := sb;
pickup quill;
x2=x4=x6=1/2w;
rt x1 = rt x5 = w-pcshiftx;
lft x3 = lft x7 = pcshiftx;
top y2=h; bot y6=0;
y4 = 7/16[y6,y2];
n1 := top y2 - y2;
y3 = 1/2[y4,y2]; y5 = 1/2[y4,y6];
y1 = y2-n1;
y7 = y6+n1;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1..z2{left}..z3{down}..z4..z5{down}..z6{left}..z7;
ductus:=false;
penlabels(1,2,3,4,5,6,7,11,17,20,26,27,28,100);
endchar; % end "s"

cmchar "CMIN letter t";
beginchar("t", 2sb#+hstretch*(8/11x_height#+jut#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
%% bar
lft x11 = pcshiftx; rt x12=w-pcshiftx;
top y11= top y12=h;
n1 := top y11 - y11;
%% stem
lft x1=pcshiftx+jut; bot y1=h+n1;
x2=x1; bot y2 = 2n1;
rt x4 = w-pcshiftx; bot y4 = n1;
x3 = 1/2[x2,x4]; bot y3=0;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z11--z12;                 % bar
draw z1--z2..z3..z4;    % stem
ductus:=false;
penlabels(1,2,3,4,5,6,11,12,100);
endchar; % end "t"

cmchar "CMIN letter u";
beginchar("u", 2sb#+hstretch*(11/11x_height#+2jut#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
%% left stem
lft x1 = pcshiftx + jut; top y1 = h;
x13=x1; y13=1/3h;
rt x3=w-pcshiftx-jut; y3=y1;
x4=x3; bot y4=0;
z33=1/4[z4,z3];  % start of bowl
x14=1/3[x1,x3]; bot y14=0;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1--z13{down}..z14{right}..z33{pdir};
draw_flatserif(1,13,srad);
draw_tstem(3,4,srad);           % right stem
draw_flatserif(3,4,srad);
draw_roundserif(4,3,srad);
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,11,13,14,16,33,100);
endchar; % end "u"

cmchar "CMIN letter v";
beginchar("v", 2sb#+hstretch*(13/11x_height#+jut#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
path pth[];
numeric n[];
pickup quill;
%% left stem top
lft x1 = pcshiftx + jut; top y1 = h;
bot y3 = 0;
%% right stem
rt x5=w-pcshiftx; top y5 = h;
x3=5/8[x1,x5];

z11=(x1,0); z15=(x5,0);
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1{down}..z3;        % left stem
draw_flatserif(1,11,srad);
draw z5{down}..z3;                % right stem
draw_flatserif(5,15,srad);
ductus:=false;
penlabels(1,2,3,4,5,11,13,14,23,26,100);
endchar; % end "v"

cmchar "CMIN letter w";
beginchar("w", 2sb#+hstretch*(21/11x_height#+jut#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
pickup quill;
%% left stem
lft x1 = pcshiftx + jut; top y1 = h;
x13=x1; y13=1/3h;
rt x5=w-pcshiftx-jut; y5=y1;
x6=x5; bot y6=0;
z53=1/4[z6,z5];  % start of bowl
z3 = 1/2[z1,z5];
z33=(x3,y13);
x14=1/3[x1,x3]; bot y14=0;
x34=1/3[x3,x5]; y34=y14;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1--z13{down}..z14{right}..z33{pdir};  % left
draw_flatserif(1,13,srad);
draw z3--z33{down}..z34{right}..z53{pdir};  % middle
draw_flatserif(3,33,srad);
draw_tstem(5,6,srad);           % right stem
draw_flatserif(5,6,srad);
draw_roundserif(6,5,srad);
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,11,13,14,33,34,53,16,100);
endchar; % end "w"

cmchar "CMIN letter x";
beginchar("x", 2sb#+hstretch*(13/11x_height#+jut#),
               x_height#, 0);
adjust_fit(0,0);
path pth[];
numeric n[];
pcshiftx := sb;
pickup quill;

lft x1 = pcshiftx + jut; y1=h;
rt x2 = w - pcshiftx - jut; y2 =0;

lft x21=pcshiftx; bot y21=0;
rt x22=w-pcshiftx; top y22=h;
z12=14/24[z1,z2];

%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1--z2;
draw_roundserif(1,2,srad);
draw_roundserif(2,1,srad);

draw z21..z12..z22{up};

ductus:=false;
penlabels(1,2,3,4,5,6,7,8,10,25,251,252,40,50,150,60,160,100);
endchar; % end "x"

cmchar "CMIN letter y";
beginchar("y", 2sb#+hstretch*(14/11x_height#+jut#),
               x_height#, desc_depth#);
adjust_fit(0,0);
pcshiftx := sb;
path pth[];
numeric n[];
pickup quill;
%% left stem top
lft x1 = pcshiftx + jut; top y1 = h;
bot y3 = 0;
%% right stem
rt x5=w-pcshiftx; top y5 = h;
lft x9=-1/2w; bot y9 = -d;
pth1 := z9{right}..z5{up};
pth2 := (0,y3)--(w,y3);
z99 = pth1 intersectionpoint pth2;
x3 = x99;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1{down}..z3;        % left stem
draw_flatserif(1,3,srad);
draw pth1;                % right stem
draw_flatserif(5,3,srad);
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,10,100);
endchar; % end "y"

cmchar "CMIN letter z";
beginchar("z", 2sb#+hstretch*(12/11x_height#),
               x_height#, 0);
adjust_fit(0,0);
numeric n[];
path pth[];
pcshiftx := sb;
pickup quill;
%% top bar ends
lft x1 = pcshiftx; rt x2 = w-pcshiftx;
top y1 = top y2 = h;
%% bottom bar
x3=x1; x5=x2; x4=1/2[x3,x5];
bot y3 = bot y4 = 0;
bot y5 = y4;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1--z2;              % top bar
draw z3--z4..z5;          % bottom bar
draw z2--z3;              % diagonal
ductus:=false;
penlabels(1,2,3,4,5,6,10o,10i,20o,20i,100);
endchar; % end "z"

