%%
%% This is file `tgothl.mf',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% tgothic.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 "TGOTH letter a";
beginchar("a", 2sb#+hstretch*((3+widedmin+wided)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
path pth[];
pair pr[];
pickup quill;
%% left hand
lft x1 = pcshiftx + widedmin*stem_width; y1 = 1/2h;
x2 = x1; y2 = 0;
draw_downdiamondstem(1,2,wided,widedmin,diawd,diang);
%% right stem
rt x3 = w - pcshiftx - wided*stem_width; y3=h;
x4=x3; y4=0;
z34=1/2[z3,z4];
draw_updiamondstem(3,34,1.0,0.1,diawd,diang);
draw_downdiamondstem(34,4,wided,widedmin,diawd,diang);
%% swirl
x11=rt x1; y11 = top y1;
pickup stylus;
draw z3d--z3c..{-ppdir}z11;
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,11,12,13,14,15,100);
endchar; % end "a"

cmchar "TGOTH letter b";
beginchar("b", 2sb#+hstretch*((3 + widedmin + narrowdmin)*stem_width#),
               asc_height#, 0);
adjust_fit(0,0);
numeric n[];
numeric st; st := stem_width;
path pth[];
pcshiftx := sb;
pickup quill;
n1:=w-2pcshiftx;    % actual letter width
n2:=h/ascratio;    % top of bowl
%%ductus:=true;
lft x1 = pcshiftx + widedmin*st; y1=h;
x2 = x1; y2=0;
z3=1/2[z1,z2];
draw_upforkstem(1,3);
draw_downdiamondstem(3,2,1.0,widedmin,diawd,diang);
lft x6 = x2c; bot y6 = y2c;
x4 = x6; y4=n2;
draw_updiamondstem(4,6,narrowd,narrowdmin,diawd,diang);
x7 = x1; z7 = whatever[z4d,z4c];
pickup stylus;
draw z4d--z7;
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,100);
endchar; % end "b"

cmchar "TGOTH letter c";
beginchar("c", 2sb#+hstretch*((3+wided)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
numeric n[];
numeric st;
st := stem_width;
pcshiftx := sb;
pickup quill;
%% left
lft x1 = pcshiftx+wided*st; y1 = 3/4h;
x2 = x1; y2 = 0;
draw_downdiamondstem(1,2,wided,widedmin,diawd,diang);
%% top
lft x3 = rt x1; bot y3 = top y1;
rt x4 = w - pcshiftx;
z3 - z4 = -whatever*ppdir;
draw z3--z4;
z11-z2c = z2c - z2d;
pickup stylus;
draw z2d--z11;
ductus:=false;
penlabels(1,2,3,4,5,6,14,16,17,18,100);
endchar; % end "c"

cmchar "TGOTH letter d";
beginchar("d", 2sb#+hstretch*((3+widedmin+narrowdmin)*stem_width#),
               asc_height#, 0);
adjust_fit(0,0);
numeric n[];
numeric st; st := stem_width;
path pth[];
pcshiftx := sb;
pickup quill;
n1 = h/ascratio;    %  x-height
%% left
n2 := st*(cosd diang);
lft x1 = pcshiftx + widedmin*st; top y1 = 12/16n1;
x2=x1; y2=0;
draw_downdiamondstem(1,2, 1.0, widedmin, diawd,diang);
%% right
rt x3 = w-pcshiftx-narrowdmin*st; y3=h;
x4 = x3; bot y4 = y2c;
draw_updiamondstem(3,4, 2.0, narrowdmin, diawd,diang);
x31 = lft x1; y31 = bot y1;
x32 = rt x1; y32 = top y1;
z33 = whatever[z31,z32] = whatever[z3e,z3c];
pickup stylus;
draw z31--z33;
ductus:=false;
penlabels(0,1,2,3,4,5,6,7,8,100);
endchar; % end "d"

cmchar "TGOTH letter e";
beginchar("e", 2sb#+hstretch*((3+wided)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
numeric st;
st := stem_width;
path pth[];
pickup quill;
%% left
lft x1 = pcshiftx+wided*st; y1 = 3/4h;
x2 = x1; y2 = 0;
draw_downdiamondstem(1,2,wided,widedmin,diawd,diang);
%% top
lft x3 = rt x1; bot y3 = top y1;
rt x4 = w - pcshiftx;
z3 - z4 = -whatever*ppdir;
draw z3--z4;
x5 = x1;
z4-z5 = whatever*pdir;
pickup stylus;
draw z4--z5;
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,17,27,34,70,100);
endchar; % end "e"

cmchar "TGOTH letter f";
beginchar("f", 2sb#+hstretch*((3+widedmin)*stem_width#),
               (asc_height#), 0);
adjust_fit(0,0);
numeric n[];
numeric st; st := stem_width;
pcshiftx := sb;
pickup quill;
n1 := h/ascratio;      % x-height
%% stem
lft x1=lft x2=pcshiftx+widedmin*st; y2=0; top y1 = h - (top y2 - bot y2);
draw_downdiamondstem(1,2,wided,widedmin,diawd,diang);
%% top bar
lft x3 = rt x1; rt x5 = w-pcshiftx; bot y3 = top y1; y5=y3;
draw z3--z5;
%% middle bar
lft x7 = pcshiftx; rt x9 = x5;
y7 = y9 = 10/16h;
draw z7--z9;
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,14,15,16,100);
endchar; % end "f"

cmchar "TGOTH letter g";
beginchar("g", 2sb#+hstretch*((4)*stem_width#),
               x_height#, desc_depth#);
adjust_fit(0,0);
path pth[];
pair vec[];
numeric n[];
numeric st; st := stem_width;
pcshiftx := sb;
pickup quill;
%% left
lft x1 = pcshiftx;
x2 = x1; bot y2 = 0; top y1 = h - (top y2 - bot y2);
draw z1--z2;
x3 = x4 = x1 + 2st; y4 = y2;
lft x13 = rt x1; bot y13 = top y1;
(z3-z13) = whatever*(dir -diang);
draw z13--z3--z4;
z34 = 1/2[z13,z3]; rt x37 = w-pcshiftx; top y37 = h;
draw z34{right}..{pdir}z37;
pickup stylus;
bot y5 = -d;
(z4-z5) = whatever*pdir;
draw z4--z5;
pickup quill;
%% bottom loop
z21 = z2;
lft x25 = x5; bot y25=-d;
x29 = 1/2[x3,x37];
(z29-z21) = whatever*(dir -diang);
x23 = x29; y23 = 1/2[y29,y25];
draw z21{dir - diang}..z23{down}..{left}z25;
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 "TGOTH letter h";
beginchar("h", 2sb#+hstretch*((3 + narrowd + narrowdmin)*stem_width#),
               asc_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
pickup quill;
numeric n[];
n1 = h/ascratio;
%% stem
lft x1=lft x2=pcshiftx + narrowdmin*stem_width;
y1=h; y2=0;
z12 = 1/2[z1,z2];
draw_upforkstem(1,12);
draw_downdiamondstem(12,2,narrowd,narrowdmin,diawd,diang);
%% bowl
x3 = x1 + 2stem_width; x4 = x3;
y3 = n1; y4=0;
z34 = 1/2[z3,z4];
draw_updiamondstem(3,34,narrowd,narrowdmin,diawd,diang);
draw_downdiamondstem(34,4,narrowd,narrowdmin,diawd,diang);
x7 = x1; z7 = whatever[z3d,z3c];
pickup stylus;
draw z3d--z7;
penlabels(1,2,3,4,5,6,100);
endchar; % end "h"

cmchar "TGOTH letter i";
beginchar("i", 2sb#+hstretch*(2stem_width#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
pickup quill;
x1 = x2 = 1/2w; y1 = h; y2 = 0;
z12 = 1/2[z1,z2];
draw_updiamondstem(1,12,1/2,1/2,diawd,diang);
draw_downdiamondstem(12,2,1/2,1/2,diawd,diang);
x3= x1-thin; bot y3 = h + 1/2stem_width;
z4 = (x3+3thin,y3);
pickup halfquill;
draw z3--z4;
penlabels(1,2,100);
endchar; % end "i"

cmchar "TGOTH letter j";
beginchar("j", sb#+hstretch*(5/2stem_width#),
               x_height#, desc_depth#);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
%% stem
rt x1 = w-pcshiftx - 1/2stem_width; y1 = h;
x2=x1; y2=-1/2d;
%% bottom hook
lft x3 = pcshiftx; bot y3 = -d;
draw_updiamondstem(1,2,narrowd,narrowdmin,diawd,diang);
draw z2{down}..z3{-pdir};               % hook
ductus:=false;
penlabels(1,2,3,100);
endchar; % end "j"

cmchar "TGOTH letter k";
beginchar("k", 2sb#+hstretch*((3 + narrowd + narrowdmin)*stem_width#),
               asc_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
path pth[];
numeric n[];
numeric st; st := stem_width;
pickup quill;
%% stem
n1 = h/ascratio;                 % x-height
lft x1=lft x2=pcshiftx + narrowdmin*st;
y1=h; y2=0;
z12 = 1/2[z1,z2];
draw_upforkstem(1,12);
draw_downdiamondstem(12,2, narrowd, narrowdmin, diawd,diang);
%% right leg
x3 = x1 + 2st; y3 = 8/16n1;
x4 = x3; y4 = 0;
z34 = 1/2[z3,z4];
draw_downdiamondstem(34,4, narrowd, narrowdmin, diawd,diang);
draw z3--z34;
lft x5 = rt x1;
(z3-z5) = whatever*(dir -diang);
draw z5--z3;

%% top arm
x6 = 1/2[x3, rt x3];
(z6-z5) = whatever*(pdir);
rt x8 = lft x5; top y8 = bot y5+thick;
(z7-z8) = whatever*(z6-z5);
(z7-z6)=whatver*(z5-z3);
draw z6--z7;
pickup stylus;
draw z5--z6--z7--z8;

ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,13,14,100);
endchar; % end "k"

cmchar "TGOTH letter l";
beginchar("l", 2sb#+hstretch*((2 + widedmin)*stem_width#),
               asc_height#, 0);
adjust_fit(0,0);
numeric st; st := stem_width;
pcshiftx := sb;
pickup quill;
lft x1=pcshiftx + widedmin*st; y1=h;
x2=x1; y2 =0;
z3 = 1/2[z1,z2];
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw_upforkstem(1,3);
draw_downdiamondstem(3,2,1.0,widedmin,diawd,diang);
ductus:=false;
penlabels(1,2,3,4,100);
endchar; % end "l"

cmchar "TGOTH letter m";
beginchar("m", 2sb#+hstretch*((5+wided+narrowd)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
path pth[];
pickup quill;
%% left stem
lft x1=pcshiftx+wided*stem_width; y1 = y3 = y5 = h;
x2=x1; y2=y4=y6=0;
z12=1/2[z1,z2];
draw_updiamondstem(1,12,wided,widedmin,diawd,diang);
draw_downdiamondstem(12,2,narrowd,narrowdmin,diawd,diang);
%% right stem
rt x5 = rt x6 = w-pcshiftx-narrowd*stem_width;
z56 = 1/2[z5,z6];
draw_updiamondstem(5,56,wided,widedmin,diawd,diang);
draw_downdiamondstem(56,6,narrowd,narrowdmin,diawd,diang);
%% middle stem
z3=1/2[z1,z5]; z4 = 1/2[z2,z6]; z34=1/2[z3,z4];
draw_updiamondstem(3,34,wided,widedmin,diawd,diang);
draw_downdiamondstem(34,4,narrowd,narrowdmin,diawd,diang);
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,13,14,33,34,100);
endchar; % end "m"

cmchar "TGOTH letter n";
beginchar("n", 2sb#+hstretch*((3+wided+narrowd)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
%% left stem
lft x1 = pcshiftx + wided*stem_width; y1 = h;
x2 = x1; y2 = 0;
z12 = 1/2[z1,z2];
draw_updiamondstem(1,12,wided,widedmin,diawd,diang);
draw_downdiamondstem(12,2,narrowd,narrowdmin,diawd,diang);
%% right stem
rt x3 = w-pcshiftx - narrowd*stem_width; y3=y1;
x4=x3;y4=y2;
z34=1/2[z3,z4];
draw_updiamondstem(3,34,wided,widedmin,diawd,diang);
draw_downdiamondstem(34,4,narrowd,narrowdmin,diawd,diang);
penlabels(1,2,3,4,5,6,13,14,100);
endchar; % end "n"

cmchar "TGOTH letter o";
beginchar("o", 2sb#+hstretch*((3 + narrowdmin + narrowdmin)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
numeric st; st := stem_width;
pickup quill;
%% bottom left
lft x12 = pcshiftx + narrowdmin*st; y12 = 1/2h;
x2 = x12; y2 = 0;
draw_downdiamondstem(12,2, 1.0, narrowdmin, diawd,diang);
%% right
rt x3 = w - pcshiftx - narrowdmin*st; x4=x3;
y3 = h; bot y4 = y2c;
draw_updiamondstem(3,4, 1.0, narrowdmin, diawd,diang);
%% top left
x1 = x12; top y1 = y3c;
draw z1--z12;
ductus:=false;
penlabels(1,2,3,4,5,100);
endchar; % end "o"

cmchar "TGOTH letter p";
beginchar("p", 2sb#+hstretch*((3 + wided + widedmin)*stem_width#),
               x_height#, desc_depth#);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
numeric st; st := stem_width;
pickup quill;
%% stem
lft x1=lft x2=pcshiftx+wided*st;
y1=h; y2=-d;
z12 = 1/2[z1,z2];
draw_updiamondstem(1,12,wided,widedmin,diawd,diang);
draw_downforkstem(12,2);
%% bowl
x3 = x4 = x1 + 2st;
y3 = y1; bot y4 = 0;
draw_updiamondstem(3,4,wided,widedmin,diawd,diang);
lft x5 = pcshiftx; y5 = y4;
draw z5--z4;
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,100);
endchar; % end "p"

cmchar "TGOTH letter q";
beginchar("q", 2sb#+hstretch*((3 + widedmin)*stem_width#),
               x_height#, desc_depth#);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
numeric st; st := stem_width;
pickup quill;
%% left/bottom of bowl
y99 = 0;
lft x1 = pcshiftx +widedmin*st; top y1 = h - (top y99 - bot y99);
x2 = x1; y2 = 0;
draw_downdiamondstem(1,2, 1.0, widedmin,diawd,diang);
%% rest
x3 = x1 + 2st; x4 = x3; y3 = y1; y4 = -d;
lft x5 = rt x1; bot y5 = top y1;
draw_downforkstem(3,4);
draw z5--z3;
ductus:=false;
penlabels(0,1,2,3,4,5,6,7,8,100);
endchar; % end "q"

cmchar "TGOTH letter r";
beginchar("r", 2sb#+hstretch*((3+wided)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
numeric st; st := stem_width;
pickup quill;
%% stem
lft x1=lft x2=pcshiftx + wided*st;
y1=h; y2=0;
z12 = 1/2[z1,z2];
draw_updiamondstem(1,12,wided,widedmin,diawd,diang);
draw_downdiamondstem(12,2,wided,widedmin,diawd,diang);
%% bar
lft x3 = rt x1; rt x4 = w-pcshiftx; top y3 = top y4 = h;
draw z3--z4;
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,100);
endchar; % end "r"

cmchar "TGOTH letter s";
beginchar("s", 2sb#+hstretch*((4)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
numeric n[];
numeric st; st := stem_width;
pcshiftx := sb;
pickup stylus;
%% the diagonal
lft x2 = pcshiftx; bot y2 = 0;
rt x1 = w-pcshiftx; top y1 = h;
draw z1--z2;
pickup quill;
z211 = 13/32[z2,z1];   %% 10/32 too small, 16/32 too large
z213 = 24/32[z2,z1];   %% 26/32 too large
z212 = 1/2[z211,z213];
%% bottom bowl
lft x21 = x2; bot y21 = 0;
rt x22 = w - pcshiftx; bot y22 = 0;
x23 = x22; z24 = z212;
(z24-z23) = whatever*(dir (180-diang));
draw z21{pdir}..z22--z23--z24;
%% top bowl
z14 = z211; z11 = z213;
lft x12 = lft x13 = pcshiftx;
(z13-z14) = whatever*(dir (180-diang));
(z12-z11) = whatever*(dir (180-diang));
draw z11--z12--z13--z14;
ductus:=false;
penlabels(1,2,3,4,5,6,7,11,12,13,14,15,16,17,20,21,22,23,24,25,26,27,28,100);
endchar; % end "s"

cmchar "TGOTH letter t";
beginchar("t", 2sb#+hstretch*((2+1.0)*stem_width#),
               asc_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
numeric st; st := stem_width;
pickup quill;
%% bar
lft x3 = pcshiftx; top y1 = h;
top y3 = bot y1;
rt x4 = w-pcshiftx; y4=y3;
draw z3--z4;
%% stem
lft x1 = rt x3;
x2 = x1; y2 = 0;
draw_downdiamondstem(1,2,wided,widedmin,diawd,diang);
ductus:=false;
penlabels(1,2,3,4,5,6,11,12,100);
endchar; % end "t"

cmchar "TGOTH letter u";
beginchar("u", 2sb#+hstretch*((3+narrowd+wided)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
pickup quill;
%% left stem
lft x1 = pcshiftx + narrowd*stem_width; y1 = h;
x2 = x1; y2 = 0;
z12 = 1/2[z1,z2];
draw_updiamondstem(1,12,narrowd,narrowdmin,diawd,diang);
draw_downdiamondstem(12,2,wided,widedmin,diawd,diang);
rt x3 = w - pcshiftx - wided*stem_width; y3=y1;
x4=x3;y4=y2;
z34=1/2[z3,z4];
draw_updiamondstem(3,34,narrowd,narrowdmin,diawd,diang);
draw_downdiamondstem(34,4,wided,widedmin,diawd,diang);
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,11,13,14,16,33,100);
endchar; % end "u"

cmchar "TGOTH letter v";
beginchar("v", 2sb#+hstretch*((4 + narrowdmin)*stem_width#),
               asc_height#, 0);
adjust_fit(0,0);
numeric n[]; numeric st;
pcshiftx := sb;
st := stem_width;
n1 := h/ascratio;  % x-height
pickup quill;
%% bottom left stem
%% right and bottom left stems
rt x23 = w - pcshiftx - narrowdmin*st; y23 = n1; x24=x23;
x1 = x23 - 2st; y1 = 1/2n1;
x2 = x1; y2 = 0;
draw_downdiamondstem(1,2, 1.0, widedmin, diawd, diang);
bot y24 = y2c;
draw_updiamondstem(23, 24, narrowd, narrowdmin, diawd, diang);
%% curly bit
x11=x1; top y11 = h;
lft x12 = pcshiftx; y12 = 1/2[y11,y1];
draw z11{down}..z12{down}..{down}z1;
ductus:=false;
penlabels(1,2,3,4,5,11,13,14,23,26,100);
endchar; % end "v"

cmchar "TGOTH letter w";
beginchar("w", 2sb#+hstretch*((5+wided+narrowd)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
pickup quill;
%% left stem
lft x1 = pcshiftx + narrowd*stem_width; y1 = y3 = y5 = h;
x2 = x1; y2 = y4 = y6 = 0;
z12=1/2[z1,z2];
draw_updiamondstem(1,12, narrowd, narrowdmin, diawd, diang);
draw_downdiamondstem(12,2, wided, widedmin, diawd, diang);
%% right stem
rt x5 = w -pcshiftx-wided*stem_width; x6 = x5;
z56 = 1/2[z5,z6];
draw_updiamondstem(5,56, narrowd, narrowdmin, diawd, diang);
draw_downdiamondstem(56,6, wided, widedmin, diawd, diang);
%% middle stem
z3 = 1/2[z1,z5]; z4 = 1/2[z2,z6]; z34 = 1/2[z3,z4];
draw_updiamondstem(3,34, narrowd, narrowdmin, diawd, diang);
draw_downdiamondstem(34,4, wided, widedmin, diawd, diang);
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,11,13,14,33,34,53,16,100);
endchar; % end "w"

cmchar "TGOTH letter x";
beginchar("x", 2sb#+hstretch*((4)*stem_width#),
               x_height#, 0);
adjust_fit(0,0);
path pth[];
numeric n[];
numeric st; st := stem_width;
pcshiftx := sb;
pickup quill;
%% upright
x1 = 1/2w; y1 = h;
x2 = x1; y2 = 0;
z12 = 1/2[z1,z2];
draw_updiamondstem(1,12, 1.5, widedmin,diawd,2/3diang);
draw_downdiamondstem(12,2, 1.5, widedmin,diawd,2/3diang);
%% top right bar
lft x3 = rt x1; top y3 = h;
rt x4 = w - pcshiftx; y4=y3;
draw z3--z4;
%% middle bar
n1 := h-y3;
lft x5 = pcshiftx; rt x6 = w - pcshiftx;
y5 = 1/2h - n1; y6 = 1/2h;
z56 = 1/2[z5,z6];
draw z5{pdir}..z56..{pdir}z6;
%% bottom left
pickup stylus;
lft x11 = pcshiftx; bot y11 = 0;
draw z2e--z11;
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 "TGOTH letter y";
beginchar("y", 2sb#+hstretch*((3 + narrowd+ narrowdmin)*stem_width#),
               x_height#, desc_depth#);
adjust_fit(0,0);
pcshiftx := sb;
path pth[];
numeric n[];
numeric st; st = stem_width;
pickup quill;
%% right side
rt x3 = w - pcshiftx - narrowdmin*st; y3 = h;
x33 = x3; y33 = 0;
%%draw_updiamondstem(3,4,narrowd,narrowdmin, diawd,diang);
%% left side
x1 = x3 - 2st; y1 = y3;
x2 = x1; y2 = 0;
n1 := top y2 - y2;
draw_updiamondstem(1,2,narrowd,narrowdmin, diawd,diang);
%% tail
x11 = rt x2; y11 = top y2;
x12 = lft x2; y12 = bot y2;
pickup stylus;
lft x14 = x1 - 2st; y14 = -d + n1;
x15 = x14+n1; bot y15 = -d;
z4 = whatever[z11,z12] = whatever[z3,z33];
x10=x4; bot y10 = y4;
draw z10--z11--z12..{down}z14..{-ppdir}z15;
pickup quill;
draw_updiamondstem(3,4,narrowd,narrowdmin, diawd,diang);
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,10,11,12,14,15,33,100);
endchar; % end "y"

cmchar "TGOTH letter z";
beginchar("z", 2sb#+hstretch*(3stem_width#),
               x_height#, 0);
adjust_fit(0,0);
numeric n[];
numeric st; st := stem_width;
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/2; 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/2; y4=y34;
x34 = 1/2[x3,x4];
pth2 := z3{pdir}..z34{right}..z4{pdir};
%% centre bar
z5 = 1/2[z1,z3]; z6 = 1/2[z2,z4]; z56 = 1/2[z5,z6];
pth3 := z5{pdir}..z56{right}..z6{pdir};
draw pth1; draw pth2; draw pth3;              %  bars
draw z2--z3;
ductus:=false;
penlabels(1,2,3,4,5,6,10o,10i,20o,20i,100);
endchar; % end "z"

