%%
%% This is file `cminu.mf',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% carolmin.dtx  (with options: `maj')
%% 
%%  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 "CMIN letter A";
beginchar("A", 2sb#+caprat*hstretch*(3/4x_height#+jut#),
               caprat*x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
path pth[];
pair pr[];
pickup quill;
n1 := w - 2pcshiftx -jut; % effective letter width
x1 = pcshiftx + 6/8n1; top y1=h;
rt x2 = pcshiftx + n1; 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 "CMIN letter B";
beginchar("B", 2sb#+caprat*hstretch*(3/4x_height#+clubjut#),
               caprat*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+clubjut; top y1=h;
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_clubserif(1,3,0.75);
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,100);
endchar; % end "B"

cmchar "CMIN letter C";
beginchar("C", 2sb#+caprat*hstretch*(5/8x_height#),
               caprat*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 "CMIN letter D";
beginchar("D", 2sb#+caprat*hstretch*(5/8x_height#+jut#),
               caprat*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_clubserif(1,2,0.25);
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#+caprat*hstretch*(8/8x_height#),
               caprat*x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
path pth[];
pickup quill;
n1 := w-pcshiftx;    % actual letter width
n2 := 6/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,3/8h); z99=(w,y98);
z98=(0,2/8h); z99=(w,y98);
pth1 := z98--z99;
pth2 := z1{left}..z2{down}..z3{right};
z7 = pth1 intersectionpoint pth2;
rt x9 = w-pcshiftx; y9 = 3/4h;
z8=1/2[z7,z9];

z70 = z7 shifted 10pdir;
z17 = whatever[z7,z70];
%%x17 = w-pcshiftx;
top y17 = h;

rt x27=w-pcshiftx; top y27=h;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z7{pdir}..z1{left}..z2{down}..z3{right}..z4{pdir};
%%draw z7{pdir}..z8{right}..z9{pdir};
%%draw z7--z17;
draw z7--z27;
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,17,70,100);
endchar; % end "E"

cmchar "CMIN letter F";
beginchar("F", 2sb#+caprat*hstretch*(3/4x_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
z14=1/2[z4,z1];
rt x16 = w -pcshiftx; top y16 = 1/2[y14,y6];
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);            % stem
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
draw z4{up}...z5{right}...z6;    % top
draw z14{right}..z16{pdir};      % 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#+caprat*hstretch*(5/4x_height#),
               caprat*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
z31=z3;
x33 = w-pcshiftx; y33 = -1/2d;
x35=x31; bot y35 = -d;
rt x36 = lft x4; y36 = 1/2[y35,y33];

%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1..z2..z3..z4..cycle;    % top O
draw z11{right}..z13{pdir};    % flick
draw z31{right}..z33{down}..z35{left}..z36;
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 "CMIN letter H";
beginchar("H", 2sb#+caprat*hstretch*(6/8x_height#+clubjut#),
               caprat*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
z3=1/2[z2,z1];
rt x5 = w-pcshiftx; y5=y3;
x4=1/2[x3,x5]; top y4 = h/ascratio;
%%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_clubserif(1,2,0.5);
draw_roundserif(2,1,srad);
draw z3{pdir}..z4..z5..z6{-pdir};

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

cmchar "CMIN letter I";
beginchar("I", 2sb#+caprat*hstretch*(thick#+2jut#),
               caprat*x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
pickup quill;
lft x1=lft x2=pcshiftx+jut;
top y1=h; bot y2=0;
%%ductus:=true;
draw_tstem(1,2,srad);
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
ductus:=false;
penlabels(1,2,100);
endchar; % end "I"

cmchar "CMIN letter J";
beginchar("J", sb#+caprat*hstretch*(3/8x_height#),
               caprat*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;
%% 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 z2{down}..z3{-pdir};               % hook
ductus:=false;
penlabels(1,2,3,100);
endchar; % end "J"

cmchar "CMIN letter K";
beginchar("K", 2sb#+caprat*hstretch*(7/8x_height#+clubjut#),
               caprat*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+clubjut;
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};
%% 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;
pickup quill;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);            % stem
draw_clubserif(1,2,0.5);
draw_roundserif(2,1,srad);
draw pth1;                        % 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 "CMIN letter L";
beginchar("L", 2sb#+caprat*hstretch*(thick#+clubjut#+jut#),
               caprat*asc_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
pickup quill;
lft x1=pcshiftx+clubjut; top y1=h;
x2=x1; bot y2 =0;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);
draw_clubserif(1,2,0.5);
draw_roundserif(2,1,srad);
ductus:=false;
penlabels(1,2,3,4,100);
endchar; % end "L"

cmchar "CMIN letter M";
beginchar("M", 2sb#+caprat*hstretch*(x_height#+2jut#),
               caprat*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 "CMIN letter N";
beginchar("N", 2sb#+caprat*hstretch*(5/8x_height#+2jut#),
               caprat*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#+caprat*hstretch*(3/4x_height#),
               caprat*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#+caprat*hstretch*(3/4x_height#+jut#),
               caprat*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#+caprat*hstretch*(3/4x_height#+jut#),
               caprat*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#+caprat*hstretch*(7/8x_height#+jut#),
               caprat*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{pdir};
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,100);
endchar; % end "R"

cmchar "CMIN letter S";
beginchar("S", 2sb#+caprat*hstretch*(3/4x_height#+clubjut#),
               caprat*asc_height#, 0);
adjust_fit(0,0);
numeric n[];
pcshiftx := sb;
pickup quill;
n1 := h/ascratio;  % x-height
%% stem
lft x1=lft x2=pcshiftx+clubjut; 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;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_tstem(1,2,srad);            % stem
draw_clubserif(1,2,0.5);
draw_roundserif(2,1,srad);
draw z4{up}...z5{right}...z6;
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#+caprat*hstretch*(x_height#),
               caprat*x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
%% bar
top y3=h; n3 := h - top y3;
lft x1 = pcshiftx; rt x2=w-pcshiftx;
%%top y1 = y3-n3; bot y2=y3+n3;
y1 = y3-n3; y2=y3;
n1 := w;     % width of bowl
n2 := h;     % height of bowl
x3=1/2[x1,x2];
lft x4 = pcshiftx + 1/8n1; y4 = 1/2h;
x5=x3; bot y5 = 0;
rt x6 = pcshiftx + 3/4n1; top y6 = 1/4h;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1{pdir}..z3..z2{pdir};           % bar
draw z3..z4{down}..z5{right}..z6{pdir};
ductus:=false;
penlabels(1,2,3,4,5,6,11,12,100);
endchar; % end "T"

cmchar "CMIN letter U";
beginchar("U", 2sb#+caprat*hstretch*(5/8x_height#+2jut#),
               caprat*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#+caprat*hstretch*(3/4x_height#+jut#),
               caprat*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 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;
rt x23=w-pcshiftx; y23=3/4h;
lft x26=x14; top y26=h;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1--z13{down}..z14{right}; % left stem
draw_flatserif(1,13,srad);
draw z14{pdir}..z23{up}..z26;

ductus:=false;
penlabels(1,2,3,4,5,11,13,14,23,26,100);
endchar; % end "V"

cmchar "CMIN letter W";
beginchar("W", 2sb#+caprat*hstretch*(x_height#+2jut#),
               caprat*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#+caprat*hstretch*(x_height#),
               caprat*x_height#, 0);
adjust_fit(0,0);
path pth[];
numeric n[];
pcshiftx := sb;
pickup quill;
n1 := w-2pcshiftx;    % total width
n2 := thick;          % triangle side
%% diag top left to bottom right
lft x1=pcshiftx; bot y1=2/3h;
x2=pcshiftx+1/7n1; top y2=h;
x5=pcshiftx+11/14n1; bot y5=-1/4d;
rt x6=pcshiftx+n1; top y6=1/6h;
z25 = 1/3[z2,z5];
pth1 := z2{right}..z5{right};
z251 = point 1/3 of pth1;
z252 = point 2/3 of pth1;
%% diag bottom left to top right
lft x10 = -w + 2pcshiftx; bot y10=-d;
x50=x5; top y50=h;
rt x60 = w -pcshiftx; bot y60=2/3h;
x40=pcshiftx+8/14n1; y40=h;

x150=x2; bot y150 = 0;
lft x160 = pcshiftx; top y160=1/3h;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1..z2{right}..z5{right}..z6;    % top left to bottom right
%%draw z10{1/2pdir}..z25..z50{right}..z60;   % bottom left to top right
draw z251..z50{right}..z60;   % middle to top right
draw z252..z150{left}..z160;  % middle to bottom left
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#+caprat*hstretch*(7/8x_height#+jut#),
               caprat*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#+caprat*hstretch*(x_height#),
               caprat*x_height#, 0);
adjust_fit(0,0);
numeric n[];
path pth[];
pcshiftx := sb;
pickup quill;
%% top bar ends
top y12 = h;
n1 := h - y12;
lft x1 = pcshiftx; rt x2 = w-pcshiftx;
%%y1 = y12-n1; y2=y12+n1;
y1 = y12-n1; y2=y12;
x12 = 1/2[x1,x2];
pth1 := z1{pdir}..z12{right}..z2{pdir};
%% bottom bar ends
bot y34 = 0;
x3=x1; x4=x2;
%%y3=y34-n1; y4=y34+n1;
y3=y34-n1; y4=y34;
x34 = 1/2[x3,x4];
pth2 := z3{pdir}..z34{right}..z4{pdir};
%% diagonal
z5=z3;
pth3 := z5--(3/4w,h+jut);
z6 = pth3 intersectionpoint pth1;
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw pth1; draw pth2;              %  bars
draw z5--z6;
ductus:=false;
penlabels(1,2,3,4,5,6,10o,10i,20o,20i,100);
endchar; % end "Z"

