summaryrefslogtreecommitdiff
path: root/fonts/gothic/ygoth
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /fonts/gothic/ygoth
Initial commit
Diffstat (limited to 'fonts/gothic/ygoth')
-rw-r--r--fonts/gothic/ygoth/ygotbase.mf79
-rw-r--r--fonts/gothic/ygoth/ygoth.mf134
-rw-r--r--fonts/gothic/ygoth/ygoth.tfmbin0 -> 1236 bytes
-rw-r--r--fonts/gothic/ygoth/ygothgen.mf452
-rw-r--r--fonts/gothic/ygoth/ygothlig.mf1578
-rw-r--r--fonts/gothic/ygoth/ygothlow.mf768
-rw-r--r--fonts/gothic/ygoth/ygothmis.mf177
-rw-r--r--fonts/gothic/ygoth/ygothnum.mf229
-rw-r--r--fonts/gothic/ygoth/ygothupp.mf2399
9 files changed, 5816 insertions, 0 deletions
diff --git a/fonts/gothic/ygoth/ygotbase.mf b/fonts/gothic/ygoth/ygotbase.mf
new file mode 100644
index 0000000000..f450a47d0f
--- /dev/null
+++ b/fonts/gothic/ygoth/ygotbase.mf
@@ -0,0 +1,79 @@
+def podi(suffix $)=
+z$.1=z$l-(2apex_o,0);
+penpos$.2(stem,40); z$.2l=z$.1;
+penpos$.3(stem,40);
+z$.3r-z$.2r=whatever*dir-50;
+y$.3l=-apex_o;
+penstroke z$.3e--z$.2e
+enddef;
+
+def qeri(suffix $)=
+z$.1=z$r+(2apex_o,0);
+penpos$.2(stem,40); z$.2r=z$.1;
+penpos$.3(stem,40);
+z$.2r-z$.3r=whatever*dir-50;
+y$.3r=y$+foot+apex_o;
+penstroke z$.2e--z$.3e
+enddef;
+
+def panwqeri(suffix $)=
+z$.1=z$r+(2apex_o,0);
+penpos$.2(stem,40); z$.2r=z$.1;
+penpos$.3(stem,40);
+z$.2r-z$.3r=whatever*dir-50;
+y$.3r=y$+foot+apex_o;
+penstroke z$.2e--z$.3e;
+penpos$.4(hair,-50);
+z$.4l=z$.3r; z$.5=whatever[z$.3r,z$.3l];
+x$.5=x$l-1.233stem; x$.6=x$.5;
+z$.6-z$.4r=whatever*(z$.5-z$.3);
+filldraw z$.5--z$.4l--z$.4r--z$.6--z$.5
+& cycle;
+unfilldraw z$.5--(x$.5,y$.3l)
+--z$.3l--z$.5 & cycle;
+enddef;
+
+def katwpodi(suffix $)=
+z$.1=z$l-(2apex_o,0);
+penpos$.2(stem,40); z$.2l=z$.1;
+penpos$.3(stem,40);
+z$.3r-z$.2r=whatever*dir-50;
+y$.3l=-apex_o;
+penstroke z$.3e--z$.2e;
+penpos$.4(hair,-50);
+z$.4r=z$.3l; z$.5=whatever[z$.3r,z$.3l];
+x$.5=x$r+1.233stem; x$.6=x$.5;
+z$.6-z$.4l=whatever*(z$.5-z$.3);
+filldraw z$.5--z$.4r--z$.4l--z$.6--z$.5
+& cycle;
+unfilldraw z$.5--(x$.5,y$.3l)
+--z$.3l--z$.5 & cycle;
+enddef;
+
+def Umlaut(suffix $) =
+penpos$.1(stem,45); penpos$.2(stem,45);
+penpos$.3(stem,45); penpos$.4(stem,45);
+penpos$.5(stem,-45); penpos$.6(stem,-45);
+y$.1=y$.3;
+z$.5l=z$.1l; z$.5r=z$.2l;
+z$.6l=z$.3l; z$.6r=z$.4l;
+%
+%
+%
+0.5[y$.1,y$.2]=x_height+2apex_o+2/3stem;
+x$.3l-x$.2r=0;
+%
+%
+%
+0.5[x$.2r,x$.3l]=x$;
+penstroke z$.1e--z$.2e;
+penstroke z$.3e--z$.4e;
+enddef;
+
+def ygoth_dot (suffix $) =
+penpos$.1(stem,45); penpos$.2(stem,45);
+penpos$.3(stem,-45);
+z$.1l=z$.3l; z$.2l=z$.3r;
+z$=.5[z$.1l,z$.2r];
+penstroke z$.1e--z$.2e;
+enddef;
diff --git a/fonts/gothic/ygoth/ygoth.mf b/fonts/gothic/ygoth/ygoth.mf
new file mode 100644
index 0000000000..a4c68d7cdb
--- /dev/null
+++ b/fonts/gothic/ygoth/ygoth.mf
@@ -0,0 +1,134 @@
+if unknown cmbase: input cmbase fi
+input ygotbase; % -sl 15-3-1991
+
+font_identifier:="ygoth"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=170/36pt#; % height of lowercase without ascenders
+%x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=8/36pt#; % lowercase hairline breadth
+%hair#:=9/36pt#; % lowercase hairline breadth
+%stem#:=25/36pt#; % lowercase stem breadth
+stem#:=30/36pt#; % lowercase stem breadth
+curve#:=30/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=33/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+%cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_hair#:=8/36pt#;
+cap_amount#:=8/36pt#;
+%cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_stem#:=36/36pt#;
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=35/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=28/36pt#; % protrusion of lowercase serifs
+cap_jut#:=37/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+mode_setup;
+font_setup;
+cap_amount:=8/36pt;
+foot:=27/36pt;
+num_height:=1.242x_height;
+boolean ligature; ligature:=false;
+
+
+%readfrom("ygothbase"); % -sl 15-3-1991
+%readfrom("ygothgen_l"); % -sl 15-3-1991
+input ygothgen % -sl 15-3-1991
+%generate ycurrent; % switch to the driver file%
+%generate ygothupper; % switch to the driver file
+generate ygothupp; % -sl 15-3-1991
+%generate ygothlower;
+generate ygothlow; % -sl 15-3-1991
+generate ygothlig;
+generate ygothnum;
+%generate ygothmisc;
+generate ygothmis; % -sl 15-3-1991
+
+font_slant slant; font_x_height x_height#;
+font_normal_space 6u#+2letter_fit#;
+ font_normal_stretch 3u#; font_normal_shrink 2u#;
+ font_quad 18u#+4letter_fit#;
+ font_extra_space 2u#;
+
+ligtable oct"140": "s"=:oct"052", "t"=:oct"075", "`"=:oct"137";
+ligtable oct"052": "i"=:oct"057";
+ligtable "a": "e"=:oct"032";
+ligtable "b": "e"=:oct"001", "a"=:oct"000", "o"=:oct"002";
+ligtable "c": "h"=:oct"003", "k"=:oct"004", "t"=:oct"005";
+ligtable "d": "e"=:oct"007", "a"=:oct"006", "o"=:oct"010";
+ligtable "h": "e"=:oct"012", "a"=:oct"011", "o"=:oct"022";
+ligtable "i": "j"=:oct"026";
+ligtable "f": "i"=:oct"014", "f"=:oct"013", "l"=:oct"015";
+ %"'" kern itc#, "?" kern itc#, "!" kern itc#, ")" kern itc#, "]" kern itc#;
+ligtable oct"013": "i"=:oct"016", "l"=:oct"017";
+ %"'" kern itc#, "?" kern itc#, "!" kern itc#, ")" kern itc#, "]" kern itc#;
+ligtable "l": "l"=:oct"035";
+ligtable "p": "p"=:oct"043", "e"=:oct"024","a"=:oct"023","o"=:oct"025";
+ligtable "q": "q"=:oct"044", "z"=:oct"027";
+ligtable "s": "s"=:oct"046", "t"=:oct"074", "z"=:oct"031", ":"=:oct"140",
+"i" kern -u#;
+ligtable "o": "e"=:oct"033";
+ligtable oct"046": "i"=:oct"053";
+ligtable "t": "z"=:oct"076";
+ligtable "v": "e"=:oct"036", "a"=:oct"030", "u"=:oct"037";
+ligtable "-": "-"=:oct"173";
+ligtable oct"173": "-"=:oct"174";
+ligtable "'": "'"=:oct"042";
+ligtable oct"042": "a"=:oct"133", "e"=:oct"134", "o"=:oct"135", "u"=:oct"136",
+"s"=:oct"031";
+end.
diff --git a/fonts/gothic/ygoth/ygoth.tfm b/fonts/gothic/ygoth/ygoth.tfm
new file mode 100644
index 0000000000..de8128cd3f
--- /dev/null
+++ b/fonts/gothic/ygoth/ygoth.tfm
Binary files differ
diff --git a/fonts/gothic/ygoth/ygothgen.mf b/fonts/gothic/ygoth/ygothgen.mf
new file mode 100644
index 0000000000..81f1538d81
--- /dev/null
+++ b/fonts/gothic/ygoth/ygothgen.mf
@@ -0,0 +1,452 @@
+def ygoth_a(suffix $) =
+w':=6.278u; penpos501(stem,0);
+z501=(x$+0.726w',foot);
+penpos502(stem,0);
+z502=(x501,0.732x_height);
+penstroke z501e--z502e;
+penpos511(stem,0); z511l=(x$+apex_o,y501);
+podi(511);
+if not ligature: podi(501); fi
+z512-z511l+(2apex_o,0)=whatever*dir-50;
+y512=-apex_o; penpos512'(hair,-50);
+z512'r=z512; z512.2-z512'l=whatever*(z501l-z512);
+x512.2=x501l;
+filldraw z512'r--z501l--z512.2--z512'l--z512'r & cycle;
+%
+%
+%
+penpos517(stem,0); z517=(x511,0.438x_height);
+penpos508(hair,-90); penpos509(hair,-90);
+z508r=z517r; z509r=(x501l,y508r);
+z510=whatever[z517l,z508l]; x510=x$;
+z510'=whatever[z510,z511]; x510'=x$+apex_o;
+filldraw z510--z508l--z508r--z510'--z510 & cycle;
+penstroke z508e--z509e; penstroke z511e--z517e;
+%
+%
+%
+penpos505(hair,125); z505=(x$+0.243w',0.830x_height);
+z504-z505r=whatever*dir35; y504=x_height+apex_o;
+penpos506(stem,40); z506r=z504;
+penpos503(stem,40); z503-z506=whatever*dir-30;
+x503=x501r; z506'=whatever[z506l,z503l];
+x506'=x$+0.5w'; penpos507(hair,180);
+y507=0.5[x_height,y517]; penpos505'(hair,125);
+z505'r=whatever[z505r,z504]; y505'r=0.9x_height;%0.856h;
+x507=x$+0.12w'; penpos509'(hair,-90);
+z509'=0.5[z508,z509];
+z503''=whatever[z503r,z506r]; x503''=x502r;
+if ligature: filldraw z503''--z504 & z504---z505'r...z507r...z509'r{right}
+& z509'r--z509'l & z509'l{left}...z507l...z505'l{z504-z505r}...
+z506'---(x502l,y503)---z503l--z503--z503'' & cycle;
+else:
+filldraw z503r--z504 & z504---z505'r...z507r...z509'r{right}
+& z509'r--z509'l & z509'l{left}...z507l...z505'l{z504-z505r}...
+z506'---(x502l,y503)---z503l--z503r & cycle; fi
+z520=1/3[z517r,z511r]; z521=1/3[z508r,z509r];
+filldraw z520{up}..z521{right} &
+z521--z508r--z520 & cycle;
+filldraw z502r--z503--(x502l,y503)--z502l--z502r & cycle;
+enddef;
+
+
+def ygoth_c (suffix $) =
+w':=4.306u; penpos401(stem,0); penpos402(stem,0);
+z401l=(x$+apex_o,foot);
+z402l=(x401l,0.748x_height);
+penpos403(stem,60); penpos404(stem,60);
+z404l=z401l-(apex_o,0); z403-z404=whatever*dir-30;
+y403l=-apex_o; penstroke z403e--z404e;
+penstroke z401e--z402e;
+penpos405(hair,-60); z405r-z403l=whatever*dir30;
+x405r=w'+apex_o; z403'=whatever[z404l,z403l];
+z403'-z405l=whatever*(z403l-z405r);
+z405'=whatever[z403',z405l];
+z405'-z404r=whatever*(z403r-z404r);
+filldraw z403l--z405r--z405l--z405'--z403r--z403l &
+cycle;
+%
+%
+%
+z406=(x$+0.581w',x_height+apex_o);
+z409=z402l-(apex_o,0);
+penpos407(stem,60); z406-z407r=whatever*dir150;
+x407r=x$+w'; z408'=whatever[z409,z406];
+z408'-z407l=whatever*(z406-z407r);
+z408=whatever[z408',z407l]; x408=x408'+apex_o;
+z410-z409=whatever*(z405r-z405l);
+x410=x402l; z408''=whatever[z408,z407l]; x408''=x402r;
+filldraw z410--z409 & flex(z409,z408,z406) & z406--z407r
+--z407l--z408''--z402r--z402l--z410 & cycle;
+penpos409.5(hair,-60); penpos408.5(hair,-60);
+penpos406.5(hair,-60); z409.5l=z409; z408.5l=z408;
+z406.5l=z406;
+penstroke z409.5e..z408.5e..z406.5e;
+enddef;
+
+def ygoth_e (suffix $) =
+w':=5u; penpos601(stem,0);
+z601l=(x$+apex_o,foot);
+z602'=(x$+0.5w',-apex_o); z601'=z601l-(apex_o,0);
+penpos602(stem,0); z602=(x601,0.804x_height);
+penpos603(stem,angle(z602'-z601')+90);
+z603l=z602';
+penpos604(stem,angle(z602'-z601')+90);
+z604l=z601'; penstroke z601e--z602e;
+penstroke z603e--z604e;
+penpos615(hair,-60); z615r=z602';
+z616-z615r=whatever*dir30; x616=x$+w'-apex_o;
+x616=x616'; z616'-z615l=whatever*(z616-z615r);
+z616''=whatever[z615,z616'];
+y616''=0.5[foot,y616'];
+filldraw z603r{z603-z604}...z616''---z616' &
+z616'--z616--z615r--z615l--z603r & cycle;
+%
+%
+%
+z606=(x$+0.611w',x_height+apex_o);
+z610-z606=whatever*dir-45; x610=x$+w';
+penpos622(hair,angle(z610-z606));
+penpos621(hair,angle(z610-z606));
+penpos620(hair,angle(z610-z606));
+penpos621'(hair,angle(z610-z606));
+z622=z602l-(apex_o,0); z620l=z606; z621'l=0.5[z622l,z620l];
+z621l=z621';
+penstroke z622e..z621e..z620e;
+z608=(x601r,0.637[y602,y601]); penpos609(hair,angle(z610-z606));
+penpos610'(hair,angle(z610-z606));
+z609r=z608; z610'r=z610;
+penstroke z609e--z610'e;
+penpos611(stem,angle(z610-z606)+90); z611r=z610;
+z630=whatever[z622l,z606];
+z630-z611l=whatever*(z606-z610);
+z631=(z630--z611l) intersectionpoint
+(z622..z621..z620);
+filldraw z631..z620--z610--z611l--z631 & cycle;
+z633=(z622..z621..z620) intersectionpoint
+(z601r--(x601r,x_height));
+filldraw z602r--z633..z602l--z602r & cycle;
+enddef;
+
+def ygoth_s (suffix $) =
+w':=4.389u; penpos201(stem,0);
+z201l=(x$+apex_o,foot); z202=(x201,1.144x_height);
+penpos202(stem,0);
+penstroke z201e--z202e; z201'=z201l-(apex_o,0);
+penpos205(hair,-60);
+z205r-z201'=whatever*dir-50; y205r=-apex_o;
+penpos206(hair,-60); z206-z205=whatever*dir30;
+y206=foot; penpos203(stem,50);
+z203l=z201'; z207-z203r=whatever*(z205r-z201');
+z207=whatever[z205r,z206r];
+filldraw z201'--z205r--z206r--z206l--z205l--z201' &
+cycle;
+filldraw z201'--z203r--z207--z205r--z201' & cycle;
+%
+%
+%
+penpos220(hair,-40); penpos221(hair,-40);
+penpos222(hair,-40);
+z222l=(2/3[x201l,x206],1.405x_height);
+penpos208(stem,angle(z222l-z202l)); z208r=z222l;
+z209-z222l=whatever*dir-40; x209=x$+w'-hair;
+z210-z209=whatever*dir240;
+z210-z208l=whatever*(z209-z222l);
+z211=whatever[z208l,z210]; x211=x202r;
+z220l=z202l; penpos221'(hair,-40); z221'l=z208l;
+z221l=z221';
+penstroke z220e..z221e..z222e;
+filldraw z221..z222 & z222--z209--
+z210--z221 & cycle;
+z211'=(z220..z221..z222) intersectionpoint
+(z201r--(x201r,2x_height));
+filldraw z202l..z211' & z211'--z202r--z202l
+& cycle;
+x251=x252=x201l; y250=y251=0.732x_height;
+y252=y251+4/5stem; x250=x251-hair;
+filldraw z250--z252--z251--z250 & cycle;
+enddef;
+
+def ygoth_makru_s (suffix $) =
+w':=4.389u; penpos201(stem,0);
+z201l=(x$+apex_o,foot); z202=(x201,1.144x_height);
+penpos202(stem,0);
+penstroke z201e--z202e; z201'=z201l-(apex_o,0);
+penpos205(hair,-60);
+z205r-z201'=whatever*dir-50; y205r=-apex_o;
+penpos206(hair,-60); z206-z205=whatever*dir30;
+y206=foot; penpos203(stem,50);
+z203l=z201'; z207-z203r=whatever*(z205r-z201');
+z207=whatever[z205r,z206r];
+penpos270(0.5hair,0); x270l=x201l; y270=-0.3x_height;
+penpos271(stem,0); z271=(x201,0);
+penstroke z270e--z271e--z201e;
+%
+%
+%
+penpos220(hair,-40); penpos221(hair,-40);
+penpos222(hair,-40);
+z222l=(2/3[x201l,x206],1.405x_height);
+penpos208(stem,angle(z222l-z202l)); z208r=z222l;
+z209-z222l=whatever*dir-40; x209=x$+w'-hair;
+z210-z209=whatever*dir240;
+z210-z208l=whatever*(z209-z222l);
+z211=whatever[z208l,z210]; x211=x202r;
+z220l=z202l; penpos221'(hair,-40); z221'l=z208l;
+z221l=z221';
+penstroke z220e..z221e..z222e;
+filldraw z221..z222 & z222--z209--
+z210--z221 & cycle;
+z211'=(z220..z221..z222) intersectionpoint
+(z201r--(x201r,2x_height));
+filldraw z202l..z211' & z211'--z202r--z202l
+& cycle;
+x251=x252=x201l; y250=y251=0.732x_height;
+y252=y251+4/5stem; x250=x251-hair;
+filldraw z250--z252--z251--z250 & cycle;
+enddef;
+
+def ygoth_h (suffix $) =
+w':=6.111u; d':=2.778u;
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(x$+0.243w',foot); z2=(x1,1.271x_height);
+z9l=z1l-(apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=x$+w'-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e;
+penstroke z3e--z4e;
+podi(1);
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x3r+apex_o,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+z21=0.267[z2l,z2r];
+z20=(x6,0.5[1.431x_height,y2]);
+penpos20(3/4hair,-135);
+z22=(0.545[x21,x20],1.431x_height-apex_o);
+z21'=(x1r,1/4[y21,y6]);
+filldraw z21..z22..{down}z20l & z20l--z20r
+& z20r{up}..z21'{down} & z21'--z2r--z21 &
+cycle;
+penpos18(hair,angle(z6-z17));
+x18r=x$;y18r=1/3[1.431x_height,y21];
+z21''=(x1l,0.5[y21,y6]);
+filldraw z21''{up}..{z18-z21}z18l &
+z18l--z18r--z21--z2l--z21'' & cycle;
+%
+%
+%
+z40=z3r+(apex_o,-0.5y3r); z41=(x3l-0.6hair,0);
+penpos42(hair,90); z42l=(x1,-d');
+filldraw z3r{down}..z40 & z40{dir225}..
+z42l{left} & z42l--z42r & z42r{right}..
+z3l{up} & z3l--z3r & cycle;
+enddef;
+
+def ygoth_k (suffix $) =
+w':=6.111u; d':=2.778u;
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(x$+0.243w',foot); z2=(x1,1.271x_height);
+z9l=z1l-(apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; %z3r-z7=whatever*dir30;
+z3r=(x$+w'-apex_o,foot);
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e;
+%penstroke z3e--z4e;
+podi(1);
+%
+%
+%
+penpos5(1.1stem,30); z6=(x3l,x_height);
+z6-z17=whatever*dir30; x17=x1r;
+z5r-z6=whatever*dir-60; x5r=x3r;
+penpos6'(hair,-60);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+z21=0.267[z2l,z2r];
+z20=(0.821[x1r,x3l],0.5[1.431x_height,y2]);
+penpos20(3/4hair,-135);
+z22=(0.545[x21,x20],1.431x_height-apex_o);
+z21'=(x1r,1/4[y21,y6]);
+filldraw z21..z22..{down}z20l & z20l--z20r
+& z20r{up}..z21'{down} & z21'--z2r--z21 &
+cycle;
+penpos18(hair,angle(z6-z17));
+x18r=x$;y18r=1/3[1.431x_height,y21];
+z21''=(x1l,0.5[y21,y6]);
+filldraw z21''{up}..{z18-z21}z18l &
+z18l--z18r--z21--z2l--z21'' & cycle;
+%
+%
+%
+penpos30(hair,-60); z30r=z5r; x31=x32=x1r;
+z31-z30r=whatever*(z17-z6);
+z32-z30l=whatever*(z17-z6);
+filldraw z31--z32--z30l--z30r--z31 & cycle;
+penpos4.5(stem,0); penpos33(stem,angle(z30r-z31));
+x4.5=x3; z4.5-z33=whatever*dir-25;
+penpos33'(1.2hair,angle(z30r-z31));
+z33'r=z5l; z33r=z5l; podi(3);
+penstroke z3e--z4.5e;
+penpos34(stem,angle(z30r-z31));
+x34r=x$+w'+apex_o;
+z34r-z33r=whatever*dir-25;
+penstroke z34e--z33e;
+if y34r > y4.5:
+filldraw z4.5r--(x4.5r,y34r)--(x4.5l,y34r)
+--z4.5l--z4.5r & cycle; fi
+enddef;
+
+def ygoth_o (suffix $) =
+w':=6.111u;
+penpos801(stem,0); penpos802(stem,0);
+penpos803(stem,0); penpos804(stem,0);
+penpos808(stem,60); penpos809(stem,60);
+z801=(x$+0.243w',foot); z802=(x801,0.888x_height);
+z809l=z801l-(apex_o,0);
+x807=0.359[x801r,x803l]; y807=-apex_o;
+z808l=z807; z803r-z807=whatever*dir30;
+x803r=x$+w'-apex_o;
+z804r=(x803r,0.88x_height); %0.833
+z807'=whatever[z809r,z808r]; z807'=whatever[z807,z803r];
+z807''=whatever[z807,z803r]; x807''=x803l;
+penstroke z808e--z809e;
+penstroke z803e--z804e;
+filldraw z808r--z807'--z807--z808r & cycle;
+filldraw z807''--z803l--z803r--z807'' & cycle;
+penpos700(hair,angle(z803r-z807)-90);
+penpos701(hair,angle(z803r-z807)-90);
+z700r=z807; z701r=whatever[z807,z803r]; x701l=x803r;
+penstroke z700e--z701e;
+%
+%
+%
+penpos805(stem,60); z817=(x801r,0.824x_height);
+z806=(0.821[x801r,x803l],x_height);
+z805r=(x701r,y804);
+penpos806'(hair,angle(z806-z817)-90);
+z806'l=z806; z817'-z806'r=whatever*(z817-z806);
+x817'=x801r; z805.1=whatever[z817',z806'r];
+z805.1-z805l=whatever*(z806-z805r);
+filldraw z805r--z806--z817--z817'--z805.1--z805l--z805r
+& cycle;
+%
+%
+%
+penpos802'(stem,0); z802'r=z817';
+z831=whatever[z806,z805r]; x831=x801l;
+z830=whatever[z831,z805r];
+z830-z802'l=whatever*(z802'r-z806'r);
+x834=x$; z834=whatever[z805.1,z805l];
+z832=(x831-0.5hair,y831+hair);
+z833=(2(x832-x$),y834); z835=whatever[z802'l,z830];
+z835=whatever[z834,z805.1];
+penpos750(hair,angle(z830-z802'l)-90);
+z750l=0.5[z802'l,z830];
+filldraw z802'r--z806'r--z806--z830
+& flex(z830,z750r,z802'l) & z802'l--z802'r & cycle;
+penstroke z801e--z802'e;
+enddef;
+
+def ygoth_t (suffix $) =
+w':=4.389u; h':=1.242x_height;
+penpos501(stem,0);
+z501l=(x$+apex_o,foot); z502=(x501,x_height-foot);
+penpos502(stem,0);
+penstroke z501e--z502e; z501'=z501l-(apex_o,0);
+penpos505(hair,-60);
+z505r-z501'=whatever*dir-50; y505r=-apex_o;
+penpos506(hair,-60); z506-z505=whatever*dir30;
+y506=foot; penpos503(stem,50);
+z503l=z501'; z507-z503r=whatever*(z505r-z501');
+z507=whatever[z505r,z506r];
+filldraw z501'--z505r--z506r--z506l--z505l--z501' &
+cycle;
+filldraw z501'--z503r--z507--z505r--z501' & cycle;
+%
+%
+%
+penpos510(0.767stem,90); penpos521(hair,0);
+z510l=(x501r+stem,y502); z520=(x501l-0.5stem,y502);
+z522=(x501r,y510r); z521=(x501r,h');
+filldraw z510l--z520--z521l--z521r..z522{down}
+& z522--z510r--z510l & cycle;
+enddef;
+
+def ygoth_u (suffix $) =
+w':=5.5u;
+penpos601(stem,0); penpos602(stem,0);
+penpos603(stem,0); penpos604(stem,0);
+x601l=x$+hair;
+x602=x601; x604l=x603l=x601r+1.233stem;
+y601=y603=foot; y602=y604=x_height-foot;
+penstroke z601e--z602e;
+penstroke z603e--z604e;
+ podi(603); katwpodi(601);
+if not ligature: qeri(602); fi qeri(604);
+enddef;
+
+def ygoth_z (suffix $) =
+w':=4.306u; d':=3.333u;
+penpos701(hair,-40); penpos702(hair,-40);
+penpos703(hair,-40); penpos704(hair,-40);
+penpos705(1.1stem,50); penpos706(1.1stem,50);
+penpos707(1.3stem,50); penpos710(hair,-90);
+y701l=0.242x_height;
+x701l=x$-2apex_o; x702r=x$+w'+apex_o; y710r=-d';
+z702r-z701r=whatever*dir50;
+penstroke z701e--z702e;
+z704r-z702r=whatever*dir150;
+y704l=x_height+apex_o;
+z704l-z703l=whatever*(z701-z702);
+x703l=x701l; z705=0.5[z703r,z704r];
+z706r-z705r=whatever*(z702r-z704r);
+z706=whatever[z701l,z702l];
+z707=whatever[z701r,z702r];
+x707=1/3[x701l+2apex_o,x702r-apex_o];
+z709=(x702r,0.163x_height);
+z708=(0.632[x701l+2apex_o,x702r-apex_o],0);
+x710=0.123[x701l+2apex_o,x702r-apex_o];
+penstroke z703e--z704e;
+penstroke z706e--z705e;
+filldraw z710r{right}..z709{dir70}
+& z709..z707r{z702l-z702r}
+& z707r--z707l & z707l{z702r-z702l}..z708{down}..
+z710l{left} & z710l--z710r & cycle;
+z711=(z707l{z702r-z702l}..z708{down}..
+z710l{left}) intersectionpoint
+((x707,0)--z707);
+filldraw z711--z707--z701r & z701r{z707-z701r}..
+{z701r-z701l}z711 & cycle;
+z712=whatever[z705l,z706l];
+x712=x705; filldraw z712{z705l-z706l}..z703r{z703r-z704r}
+& z703r--z705--z712 & cycle;
+enddef; \ No newline at end of file
diff --git a/fonts/gothic/ygoth/ygothlig.mf b/fonts/gothic/ygoth/ygothlig.mf
new file mode 100644
index 0000000000..8973089b3b
--- /dev/null
+++ b/fonts/gothic/ygoth/ygothlig.mf
@@ -0,0 +1,1578 @@
+.cmchar "The gothic ligature sz";
+.beginchar(oct"031",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+1.6u#);
+z0=(hair,0); ygoth_makru_s(0); z50=(apex_o+stem,0);
+ygoth_z(50);
+.endchar;
+
+.cmchar "The gothic ligature fi";
+.beginchar(oct"014",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+1.3u#);
+z0=(hair,0); ygoth_s(0);
+penpos260(4/5stem,-90); penpos261(4/5stem,-90);
+y260r=y261r=0.732x_height;
+x260=x0+apex_o+stem;
+x261=x0+apex_o+2stem;
+penstroke z260e--z261e;
+penpos1(stem,0); penpos2(stem,0);
+z1l=(x206l,foot);
+z2=(x1,x_height-foot);
+podi(1); qeri(2); penstroke z1e--z2e;
+z261.5=0.5[z260,z261]; penpos261.5(stem,-90);
+unfilldraw z261.5r--z261r--z261l--z261.5l--
+z261.5r & cycle;
+%
+%
+%
+z5.1=z2r+(2apex_o,0);
+penpos5.2(stem,40); z5.2r=z5.1;
+penpos5.3(stem,40);
+z5.2r-z5.3r=whatever*dir-50;
+y5.3r=y2+foot+apex_o;
+z3=z5.3r+(0,0.5hair);
+penpos4(0.8stem,0); y4=1.379x_height;
+x4r=x2r+hair;
+filldraw z3--z4l--z4r--z3 & cycle;
+penpos3'(x3-x210,0); penpos4'(x3-x210,0);
+z3'r=z3; z4'r=z4l;
+unfilldraw z3'r--z4'r--z4'l--z3'l--z3'r &
+cycle;
+.endchar;
+
+.cmchar "The gothic ligature ffi";
+.beginchar(oct"016",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#-u#,cap_serif_fit#+5.3u#);
+z0=(hair,0); ygoth_s(0);
+transform metatopish;
+metatopish=identity
+shifted (x201l-x206l,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+%
+%
+%
+penpos260(4/5stem,-90); penpos261(4/5stem,-90);
+y260r=y261r=0.732x_height;
+x260=x0+apex_o+stem;
+x261=x0+apex_o+2stem;
+penstroke z260e--z261e;
+penpos1(stem,0); penpos2(stem,0);
+z1l=(x206l,foot);
+z2=(x1,x_height-foot);
+podi(1); qeri(2); penstroke z1e--z2e;
+z261.5=0.5[z260,z261]; penpos261.5(stem,-90);
+unfilldraw z261.5r--z261r--z261l--z261.5l--
+z261.5r & cycle;
+%
+%
+%
+penpos275(4/5stem,-90); z275=(2x201l-x206l,y261);
+penstroke z275e--z260e;
+penpos276(stem,angle(z222l-z202l));
+z276l=whatever[z211+(x201l-x206l,0),z210+(x201l-x206l,0)];
+x276r=x201r;
+filldraw z276r--z209+(x201l-x206l,0)--
+z210+(x201l-x206l,0)--z276l--z276r & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+%
+%
+%
+z5.1=z2r+(2apex_o,0);
+penpos5.2(stem,40); z5.2r=z5.1;
+penpos5.3(stem,40);
+z5.2r-z5.3r=whatever*dir-50;
+y5.3r=y2+foot+apex_o;
+z3=z5.3r+(0,0.5hair);
+penpos4(0.8stem,0); y4=1.379x_height;
+x4r=x2r+hair;
+filldraw z3--z4l--z4r--z3 & cycle;
+penpos3'(x3-x210,0); penpos4'(x3-x210,0);
+z3'r=z3; z4'r=z4l;
+unfilldraw z3'r--z4'r--z4'l--z3'l--z3'r &
+cycle;
+transform metatopish;
+metatopish=identity
+shifted (4u,0);
+picture krufo;
+krufo:= currentpicture transformed
+metatopish;
+picture currentpicture;
+currentpicture=krufo;
+.endchar;
+
+.cmchar "The gothic ligature fl";
+.beginchar(oct"015",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+2.7u#);
+z0=(hair,0); ygoth_s(0); z100=(x206l,0);
+penpos260(4/5stem,-90); penpos261(4/5stem,-90);
+y260r=y261r=0.732x_height;
+x260=x0+apex_o+stem;
+x261=x0+apex_o+2stem;
+penstroke z260e--z261e;
+%
+%
+%
+w':=4.278u; h':=1.431x_height;
+penpos301(stem,0); penpos302(stem,0);
+penpos303(stem,0); penpos304(stem,0);
+penpos308(stem,60); penpos309(stem,60);
+z301=(x206l+0.243w'-apex_o,foot); z302=(x301,0.888h');
+penstroke z301e--z302e; podi(301);
+%
+%
+%
+z321=0.267[z302l,z302r];
+z320l=(x206l-apex_o+1.243w',0.5[h',y302]);
+penpos320(3/4hair,-135);
+z322=(0.7[x321,x320],h'-apex_o);
+z321'=(x301r,1/4[y321,x_height]);
+penpos325(0.7hair,-90); z325l=z322;
+filldraw z321..z325l{right} & z325l--z325r &
+z325r{left}..z321'{down} & z321'--z302r--z321 &
+cycle;
+.endchar;
+
+.cmchar "The gothic ligature ffl";
+.beginchar(oct"017",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+5.5u#);
+z0=(hair,0); ygoth_s(0); z100=(x206l,0);
+transform metatopish;
+metatopish=identity
+shifted (x201l-x206l,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+penpos260(4/5stem,-90); penpos261(4/5stem,-90);
+y260r=y261r=0.732x_height;
+x260=x0+apex_o+stem;
+x261=x0+apex_o+2stem;
+penstroke z260e--z261e;
+%
+%
+%
+penpos275(4/5stem,-90); z275=(2x201l-x206l,y261);
+penstroke z275e--z260e;
+penpos276(stem,angle(z222l-z202l));
+z276l=whatever[z211+(x201l-x206l,0),z210+(x201l-x206l,0)];
+x276r=x201r;
+filldraw z276r--z209+(x201l-x206l,0)--
+z210+(x201l-x206l,0)--z276l--z276r & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+%
+%
+%
+w':=4.278u; h':=1.431x_height;
+penpos301(stem,0); penpos302(stem,0);
+penpos303(stem,0); penpos304(stem,0);
+penpos308(stem,60); penpos309(stem,60);
+z301=(x206l+0.243w'-apex_o,foot); z302=(x301,0.888h');
+penstroke z301e--z302e; podi(301);
+%
+%
+%
+z321=0.267[z302l,z302r];
+z320l=(x206l-apex_o+1.243w',0.5[h',y302]);
+penpos320(3/4hair,-135);
+z322=(0.7[x321,x320],h'-apex_o);
+z321'=(x301r,1/4[y321,x_height]);
+penpos325(0.7hair,-90); z325l=z322;
+filldraw z321..z325l{right} & z325l--z325r &
+z325r{left}..z321'{down} & z321'--z302r--z321 &
+cycle;
+
+
+transform metatopish;
+metatopish=identity
+shifted (3u,0);
+picture krufo;
+krufo:= currentpicture transformed
+metatopish;
+picture currentpicture;
+currentpicture=krufo;
+.endchar;
+
+.cmchar "The gothic ligature ff";
+.beginchar(oct"013",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+3u#);
+z0=(hair,0); ygoth_s(0); z100=(x206l,0);
+transform metatopish;
+metatopish=identity
+shifted (x201l-x206l,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+penpos260(4/5stem,-90); penpos261(4/5stem,-90);
+y260r=y261r=0.732x_height;
+x260=x0+apex_o+stem;
+x261=x0+apex_o+2stem;
+penstroke z260e--z261e;
+%
+%
+%
+penpos275(4/5stem,-90); z275=(2x201l-x206l,y261);
+penstroke z275e--z260e;
+penpos276(stem,angle(z222l-z202l));
+z276l=whatever[z211+(x201l-x206l,0),z210+(x201l-x206l,0)];
+x276r=x201r;
+filldraw z276r--z209+(x201l-x206l,0)--
+z210+(x201l-x206l,0)--z276l--z276r & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+transform metatopish;
+metatopish=identity
+shifted (3u,0);
+picture krufo;
+krufo:= currentpicture transformed
+metatopish;
+picture currentpicture;
+currentpicture=krufo;
+.endchar;
+
+.cmchar "The gothic ligature tz";
+.beginchar(oct"076",4.389u#,1.242x_height#,0);
+.adjust_fit(2cap_serif_fit#+0.3u#,cap_serif_fit#+1.7u#);
+z0=(0,0); ygoth_t(0); z100=(x522,0);
+ygoth_z(100);
+z704'=whatever[z704l,z703l]; y704'=y510;
+filldraw z522{right}..z704l{z704-z703} &
+z704l--z704'--z522 & cycle;
+.endchar;
+
+.cmchar "The gothic ligature ss";
+.beginchar(oct"046",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#+0.6u#,cap_serif_fit#+2.5u#);
+z0=(hair,0); ygoth_makru_s(0); z100=(x206l,0);
+transform metatopish;
+metatopish=identity
+shifted (x201l-x206l,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+penpos260(4/5stem,-90); penpos261(4/5stem,-90);
+y260r=y261r=0.732x_height;
+x260=x0+apex_o+stem;
+x261=x0+apex_o+2stem;
+%
+%
+%
+penpos275(4/5stem,-90); z275=(2x201l-x206l,y261);
+penpos276(stem,angle(z222l-z202l));
+z276l=whatever[z211+(x201l-x206l,0),z210+(x201l-x206l,0)];
+x276r=x201r;
+filldraw z276r--z209+(x201l-x206l,0)--
+z210+(x201l-x206l,0)--z276l--z276r & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+transform metatopish;
+metatopish=identity
+shifted (2.5u,0);
+picture krufo;
+krufo:= currentpicture transformed
+metatopish;
+picture currentpicture;
+currentpicture=krufo;
+.endchar;
+
+.cmchar "The gothic ligature ssi";
+.beginchar(oct"053",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#+0.65u#,cap_serif_fit#+3.8u#);
+z0=(hair,0); ygoth_makru_s(0);
+transform metatopish;
+metatopish=identity
+shifted (x201l-x206l,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+%
+%
+%
+penpos260(4/5stem,-90); penpos261(4/5stem,-90);
+y260r=y261r=0.732x_height;
+x260=x0+apex_o+stem;
+x261=x0+apex_o+2stem;
+penpos1(stem,0); penpos2(stem,0);
+z1l=(x206l,foot);
+z2=(x1,x_height-foot);
+podi(1); qeri(2); penstroke z1e--z2e;
+z261.5=0.5[z260,z261]; penpos261.5(stem,-90);
+unfilldraw z261.5r--z261r--z261l--z261.5l--
+z261.5r & cycle;
+%
+%
+%
+penpos275(4/5stem,-90); z275=(2x201l-x206l,y261);
+penpos276(stem,angle(z222l-z202l));
+z276l=whatever[z211+(x201l-x206l,0),z210+(x201l-x206l,0)];
+x276r=x201r;
+filldraw z276r--z209+(x201l-x206l,0)--
+z210+(x201l-x206l,0)--z276l--z276r & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+%
+%
+%
+z5.1=z2r+(2apex_o,0);
+penpos5.2(stem,40); z5.2r=z5.1;
+penpos5.3(stem,40);
+z5.2r-z5.3r=whatever*dir-50;
+y5.3r=y2+foot+apex_o;
+z3=z5.3r+(0,0.5hair);
+penpos4(0.8stem,0); y4=1.379x_height;
+x4r=x2r+hair;
+filldraw z3--z4l--z4r--z3 & cycle;
+penpos3'(x3-x210,0); penpos4'(x3-x210,0);
+z3'r=z3; z4'r=z4l;
+unfilldraw z3'r--z4'r--z4'l--z3'l--z3'r &
+cycle;
+transform metatopish;
+metatopish=identity
+shifted (2.5u,0);
+picture krufo;
+krufo:= currentpicture transformed
+metatopish;
+picture currentpicture;
+currentpicture=krufo;
+.endchar;
+
+.cmchar "The gothic ligature st";
+.beginchar(oct"074",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#+0.3u#,cap_serif_fit#+1.6u#);
+z0=(0,0); ygoth_makru_s(0);
+z100=(x209-stem+0.5u,0); ygoth_t(100);
+.endchar;
+
+.cmchar "The gothic ligature ct";
+.beginchar(oct"005",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#+0.2u#,cap_serif_fit#+2.9u#);
+z0=(0,0); ygoth_c(0);
+z100=(x405'+apex_o,0); ygoth_t(100);
+%
+%
+%
+penpos450(hair,90);
+penpos451(hair,angle(z520-z521l));
+penpos452(hair,0); z452=(x410,1/3[y521,y522]);
+z450r=z406; z451l=z521l;
+penstroke z450e..z452e..
+z451e{z510r-z521l};
+.endchar;
+
+.cmchar "The gothic ligature ch";
+.beginchar(oct"003",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+5u#);
+z0=(0,0); ygoth_c(0);
+z100=(x405'-hair,0); ygoth_h(100);
+.endchar;
+
+.cmchar "The gothic ligature ck";
+.beginchar(oct"004",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+5.4u#);
+z0=(0,0); ygoth_c(0);
+z100=(x405'-hair,0); ygoth_k(100);
+.endchar;
+
+
+.cmchar "The gothic ligature ll";
+.beginchar(oct"035",4.278u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+2u#);
+penpos301(stem,0); penpos302(stem,0);
+penpos303(stem,0); penpos304(stem,0);
+penpos308(stem,60); penpos309(stem,60);
+z301=(0.243w,foot); z302=(x301,0.888h);
+penstroke z301e--z302e; podi(301);
+%
+%
+%
+z321=0.267[z302l,z302r]; z320l=(w,0.5[h,y302]);
+penpos320(3/4hair,-135);
+z322=(0.7[x321,x320],h-apex_o);
+z321'=(x301r,1/4[y321,x_height]);
+penpos325(0.7hair,-90); z325l=z322;
+filldraw z321..z325l{right} & z325l--z325r &
+z325r{left}..z321'{down} & z321'--z302r--z321 &
+cycle;
+transform metatopish;
+metatopish=identity
+shifted (x320r-x301l-hair,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+penpos318(hair,45);
+x318r=0;y318r=1/3[h,y321];
+z321''=(x301l,0.5[y321,x_height]);
+filldraw z321''{up}..{z318-z321}z318l &
+z318l--z318r--z321--z302l--z321'' & cycle;
+%
+%
+%
+penpos328(hair,180);
+z328r=z302l+(x320r-x301l-hair,0);
+penstroke z325e{right}..z328e;
+.endchar;
+
+.cmchar "The gothic ligature oldstyle ssi";
+.beginchar(oct"057",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#+0.5u#,cap_serif_fit#+4u#);
+z0=(hair,0); ygoth_s(0);
+transform metatopish;
+metatopish=identity
+shifted (x201l-x206l,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+%
+%
+%
+penpos260(4/5stem,-90); penpos261(4/5stem,-90);
+y260r=y261r=0.732x_height;
+x260=x0+apex_o+stem;
+x261=x0+apex_o+2stem;
+penpos1(stem,0); penpos2(stem,0);
+z1l=(x206l,foot);
+z2=(x1,x_height-foot);
+podi(1); qeri(2); penstroke z1e--z2e;
+z261.5=0.5[z260,z261]; penpos261.5(stem,-90);
+unfilldraw z261.5r--z261r--z261l--z261.5l--
+z261.5r & cycle;
+%
+%
+%
+penpos275(4/5stem,-90); z275=(2x201l-x206l,y261);
+penpos276(stem,angle(z222l-z202l));
+z276l=whatever[z211+(x201l-x206l,0),z210+(x201l-x206l,0)];
+x276r=x201r;
+filldraw z276r--z209+(x201l-x206l,0)--
+z210+(x201l-x206l,0)--z276l--z276r & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+%
+%
+%
+z5.1=z2r+(2apex_o,0);
+penpos5.2(stem,40); z5.2r=z5.1;
+penpos5.3(stem,40);
+z5.2r-z5.3r=whatever*dir-50;
+y5.3r=y2+foot+apex_o;
+z3=z5.3r+(0,0.5hair);
+penpos4(0.8stem,0); y4=1.379x_height;
+x4r=x2r+hair;
+filldraw z3--z4l--z4r--z3 & cycle;
+penpos3'(x3-x210,0); penpos4'(x3-x210,0);
+z3'r=z3; z4'r=z4l;
+unfilldraw z3'r--z4'r--z4'l--z3'l--z3'r &
+cycle;
+transform metatopish;
+metatopish=identity
+shifted (2.5u,0);
+picture krufo;
+krufo:= currentpicture transformed
+metatopish;
+picture currentpicture;
+currentpicture=krufo;
+.endchar;
+
+.cmchar "The gothic ligature oldstyle st";
+.beginchar(oct"075",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#+0.3u#,cap_serif_fit#+1.6u#);
+z0=(0,0); ygoth_s(0);
+z100=(x209-stem+0.5u,0); ygoth_t(100);
+.endchar;
+
+.cmchar "The gothic ligature oldstyle ss";
+.beginchar(oct"052",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#+0.5u#,cap_serif_fit#+2.5u#);
+z0=(hair,0); ygoth_s(0); z100=(x206l,0);
+transform metatopish;
+metatopish=identity
+shifted (x201l-x206l,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+penpos260(4/5stem,-90); penpos261(4/5stem,-90);
+y260r=y261r=0.732x_height;
+x260=x0+apex_o+stem;
+x261=x0+apex_o+2stem;
+%
+%
+%
+penpos275(4/5stem,-90); z275=(2x201l-x206l,y261);
+penpos276(stem,angle(z222l-z202l));
+z276l=whatever[z211+(x201l-x206l,0),z210+(x201l-x206l,0)];
+x276r=x201r;
+filldraw z276r--z209+(x201l-x206l,0)--
+z210+(x201l-x206l,0)--z276l--z276r & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+unfilldraw z220l..z221l..z222l--
+(x201l,y222)--z220l & cycle;
+transform metatopish;
+metatopish=identity
+shifted (2.5u,0);
+picture krufo;
+krufo:= currentpicture transformed
+metatopish;
+picture currentpicture;
+currentpicture=krufo;
+.endchar;
+
+.cmchar "The gothic scandinavian o-slash";
+.beginchar(oct"034",6.111u#,x_height#,0);
+.adjust_fit(cap_serif_fit#-0.5u#,cap_serif_fit#);
+z0=(0,0); ygoth_o(0);
+z40=whatever[z809r,z808r]; x40=x801r;
+z41=whatever[z805l,z805.1]; x41=x803l;
+penpos40'(hair,angle(z41-z40)-90);
+z40'l=whatever[z40,z41]; y40'r=-2apex_o;
+penpos41'(hair,angle(z41-z40)-90);
+z41'l-z40'l=whatever*(z41-z40'r);;
+y41'l=x_height+2apex_o;
+penstroke z40'e--z41'e;
+.endchar;
+
+.cmchar "The gothic ligature oe";
+.beginchar(oct"033",6.111u#,x_height#,0);
+.adjust_fit(cap_serif_fit#-0.6u#,cap_serif_fit#+3.1u#);
+z0=(0,0); ygoth_o(0); z217=(x803l-apex_o,0);
+ygoth_e(217);
+unfilldraw z601l--z601'--(x601',y604r)--
+(x601l,y604r)--z601l & cycle;
+.endchar;
+
+.cmchar "The gothic ligature ae";
+.beginchar(oct"032",6.111u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+2.4u#);
+z0=(0,0); ligature:=true;
+ygoth_a(0); z217=(x502l-apex_o,0);
+ygoth_e(217);
+.endchar;
+
+.cmchar "The gothic ligature be";
+.beginchar(oct"001",6.111u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+3u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(2apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+z21=0.267[z2l,z2r]; z20=(x6,0.5[h,y2]);
+penpos20(3/4hair,-135);
+z22=(0.545[x21,x20],h-apex_o);
+z21'=(x1r,1/4[y21,y6]);
+filldraw z21..z22..{down}z20l & z20l--z20r
+& z20r{up}..z21'{down} & z21'--z2r--z21 &
+cycle;
+penpos18(hair,angle(z6-z17));
+x18r=0;y18r=1/3[h,y21];
+z21''=(x1l,0.5[y21,y6]);
+filldraw z21''{up}..{z18-z21}z18l &
+z18l--z18r--z21--z2l--z21'' & cycle;
+z500=whatever[z5l,z5r]; x500=x501=x3r;
+z501=whatever[z6,z5r];
+unfilldraw z500--z5r--z501--z500 & cycle;
+z217=(x3l-apex_o,0); ygoth_e(217);
+unfilldraw z601l--z601'--(x601',y604r)--
+(x601l,y604r)--z601l & cycle;
+.endchar;
+
+.cmchar "The gothic ligature de";
+.beginchar(oct"007",6.111u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+3.15u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.88x_height); %0.833
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos2'(stem,0); z2'r=z17';
+z31=whatever[z6,z5r]; x31=x1l;
+z30=whatever[z31,z5r];
+z30-z2'l=whatever*(z2'r-z6'r);
+x34=0; z34=whatever[z5.1,z5l];
+z32=(x31-0.5hair,y31+hair);
+z33=(2x32,y34); z35=whatever[z2'l,z30];
+z35=whatever[z34,z5.1];
+filldraw z2'r--z6'r--z6--z31--z34--z35
+--z2'l--z2'r & cycle;
+filldraw z34{up}..z32 & z32..{down}z33 &
+z33--z34 & cycle;
+penstroke z1e--z2'e;
+%
+%
+%
+penpos150(1.2hair,angle(z5.1-z35));
+z150l=z35;
+unfilldraw z2'r{up}..{z30-z35}z150r & z150r
+--z5.1--z2'r & cycle;
+unfilldraw z2'r{up}..{z30-z35}z150r & z150r
+--z5.1--z2'r & cycle;
+z500=whatever[z5l,z5r]; x500=x501=x3r;
+z501=whatever[z6,z5r];
+unfilldraw z500--z5r--z501--z500 & cycle;
+z217=(x3l-apex_o,0); ygoth_e(217);
+unfilldraw z601l--z601'--(x601',y604r)--
+(x601l,y604r)--z601l & cycle;
+.endchar;
+
+.cmchar "The gothic ligature he";
+.beginchar(oct"012",6.111u#,1.431x_height#,2.778u#);
+.adjust_fit(cap_serif_fit#+0.2u#,cap_serif_fit#+3.15u#);
+z0=(0,0); ygoth_h(0);
+z500=whatever[z5l,z5r]; x500=x501=x3r;
+z501=whatever[z6,z5r];
+unfilldraw z500--z5r--z501--z500 & cycle;
+z217=(x3l-apex_o,0); ygoth_e(217);
+unfilldraw z601l--z601'--(x601',y604r)--
+(x601l,y604r)--z601l & cycle;
+.endchar;
+
+.cmchar "The gothic ligature pp";
+.beginchar(oct"043",6.111u#,x_height#,0.431x_height#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+3.7u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,h-foot);
+z9l=z1l-(3apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos6.5(hair,angle(z6-z17)-90);
+z6.5l=whatever[z17,z6'l];
+y6.5l=x_height+hair;
+penstroke z6'e--z6.5e;
+%
+%
+%
+penpos200(stem,0); z200=(x2,-0.271x_height);
+z21=0.267[z200l,z200r]; z20=(x6,0.5[-d,y200]);
+penpos20(3/4hair,-45);
+z22=(0.545[x21,x20],-d+apex_o);
+z21'=(x1r,1/4[y21,0]);
+filldraw z21..z22..{up}z20r & z20r--z20l
+& z20l{down}..z21'{up} & z21'--z200r--z21 &
+cycle;
+penpos18(hair,angle(z9-z8));
+x18r=0;y18r=1/3[-d,y21];
+z21''=(x1l,0.5[y21,0]);
+filldraw z21''{down}..{z18-z21}z18r &
+z18r--z18l--z21--z200l--z21'' & cycle;
+penstroke z200e--z1e;
+transform metatopish;
+metatopish=identity
+shifted (-x1l+x3l,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+qeri(2);
+.endchar;
+
+.cmchar "The gothic ligature qq";
+.beginchar(oct"044",6.111u#,x_height#,0.431x_height#);
+.adjust_fit(cap_serif_fit#-0.5u#,cap_serif_fit#+4u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.88x_height); %0.833
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101r=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r+hair,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos2'(stem,0); z2'r=z17';
+z31=whatever[z6,z5r]; x31=x1l;
+z30=whatever[z31,z5r];
+z30-z2'l=whatever*(z2'r-z6'r);
+x34=0; z34=whatever[z5.1,z5l];
+z32=(x31-0.5hair,y31+hair);
+z33=(2x32,y34); z35=whatever[z2'l,z30];
+z35=whatever[z34,z5.1];
+penpos150(0.9hair,angle(z30-z2'l)-90);
+z150l=0.5[z2'l,z30];
+filldraw z2'r--z6'r--z6--z30
+& flex(z30,z150r,z2'l) & z2'l--z2'r & cycle;
+penstroke z1e--z2'e;
+%
+%
+%
+penpos200(stem,0); z200=(x3,-0.271x_height);
+z210=0.267[z200r,z200l]; z201=(x7,0.5[-d,y200]);
+penpos201(3/4hair,45);
+z220=(0.545[x201,x210],-d+apex_o);
+z210'=(x3l,1/4[y210,0]);
+filldraw z210..z220..{up}z201l & z201l--z201r
+& z201r{down}..z210'{up} & z210'--z200r--z210 &
+cycle;
+penpos180(hair,angle(z17-z6));
+x180r=w; y180r=1/3[-d,y210];
+z210''=(x3r,0.5[y210,0]);
+filldraw z210''{down}..{z180-z210}z180l &
+z180l--z180r--z210--z200r--z210'' & cycle;
+penstroke z200e--z3e;
+transform metatopish;
+metatopish=identity
+shifted (-x1l+x3l,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+.endchar;
+
+.cmchar "The gothic ligature ij";
+.beginchar(oct"026",2.889u#,1.431x_height#,2.778u#);
+.adjust_fit(cap_serif_fit#+0.5u#,cap_serif_fit#+2.2u#);
+penpos101(stem,0); penpos102(stem,0);
+x101l=x102l=apex_o; y101=foot; y102=x_height-foot;
+podi(101); qeri(102); penstroke z101e--z102e;
+%
+%
+%
+z105.1=z102r+(2apex_o,0);
+penpos105.2(stem,40); z105.2r=z105.1;
+penpos105.3(stem,40);
+z105.2r-z105.3r=whatever*dir-50;
+y105.3r=y102+foot+apex_o;
+z103=z105.3r+(0,0.5hair);
+penpos104(0.8stem,0); y104=1.379x_height;
+x104r=x102r+hair;
+filldraw z103--z104l--z104r--z103 & cycle;
+%
+%
+%
+penpos1(stem,0); penpos2(stem,0);
+x1l=x2l=x101r+1.233stem; y1=foot; y2=x_height-foot;
+panwqeri(2); penstroke z1e--z2e;
+%
+%
+%
+z5.1=z2r+(2apex_o,0);
+penpos5.2(stem,40); z5.2r=z5.1;
+penpos5.3(stem,40);
+z5.2r-z5.3r=whatever*dir-50;
+y5.3r=y2+foot+apex_o;
+z3=z5.3r+(0,0.5hair);
+penpos4(0.8stem,0); y4=1.379x_height;
+x4r=x2r+hair;
+filldraw z3--z4l--z4r--z3 & cycle;
+%
+%
+%
+z40=z1r+(apex_o,-0.5y1r); z41=(x1l-0.6hair,0);
+penpos42(hair,90); z42l=(x1l-1.733stem,-d);
+filldraw z1r{down}..z40 & z40{dir225}..
+z42l{left} & z42l--z42r & z42r{right}..
+z1l{up} & z1l--z1r & cycle;
+.endchar;
+
+.cmchar "The gothic letter a with Umlaut";
+.beginchar(oct"133",6.278u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#-.2u#);
+z0=(0,0); ligature:= false; ygoth_a(0);
+z100=z506r;Umlaut(100);
+.endchar;
+
+.cmchar "The gothic letter e with Umlaut";
+.beginchar(oct"134",4.306u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+0.8u#);
+z0=(0,0); ygoth_e(0); Umlaut(606);
+.endchar;
+
+.cmchar "The gothic letter o with Umlaut";
+.beginchar(oct"135",4.306u#,x_height#,0);
+.adjust_fit(cap_serif_fit#-0.6u#,cap_serif_fit#+2u#);
+z0=(0,0); ygoth_o(0); Umlaut(830);
+.endchar;
+
+.cmchar "The gothic letter u with Umlaut";
+.beginchar(oct"136",5.5u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+0.2u#);
+z0=(0,0); ygoth_u(0);
+z100=(0.5[x601r,x603l]-2/3hair,0);
+Umlaut(100);
+.endchar;
+
+.cmchar "The gothic dotless i";
+.beginchar(oct"020",2.889u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#+0.3u#,cap_serif_fit#-.7u#);
+penpos1(stem,0); penpos2(stem,0);
+x1l=x2l=apex_o; y1=foot; y2=x_height-foot;
+podi(1); qeri(2); penstroke z1e--z2e;
+.endchar;
+
+.cmchar "The gothic dotless j";
+.beginchar(oct"021",2.889u#,1.431x_height#,2.778u#);
+.adjust_fit(cap_serif_fit#+0.3u#,cap_serif_fit#-u#);
+penpos1(stem,0); penpos2(stem,0);
+x1l=x2l=apex_o; y1=foot; y2=x_height-foot;
+qeri(2); penstroke z1e--z2e;
+%
+%
+%
+z40=z1r+(apex_o,-0.5y1r); z41=(x1l-0.6hair,0);
+penpos42(hair,90); z42l=(x1l-1.733stem,-d);
+filldraw z1r{down}..z40 & z40{dir225}..
+z42l{left} & z42l--z42r & z42r{right}..
+z1l{up} & z1l--z1r & cycle;
+.endchar;
+
+.cmchar "The gothic ligature ba";
+.beginchar(oct"000",6.111u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+4.2u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(2apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height+apex_o);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+z21=0.267[z2l,z2r]; z20=(x6,0.5[h,y2]);
+penpos20(3/4hair,-135);
+z22=(0.545[x21,x20],h-apex_o);
+z21'=(x1r,1/4[y21,y6]);
+filldraw z21..z22..{down}z20l & z20l--z20r
+& z20r{up}..z21'{down} & z21'--z2r--z21 &
+cycle;
+penpos18(hair,angle(z6-z17));
+x18r=0;y18r=1/3[h,y21];
+z21''=(x1l,0.5[y21,y6]);
+filldraw z21''{up}..{z18-z21}z18l &
+z18l--z18r--z21--z2l--z21'' & cycle;
+z0=(x7',0); ygoth_a(0);
+.endchar;
+
+.cmchar "The gothic ligature bo";
+.beginchar(oct"002",6.111u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+3.7u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(2apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height+apex_o);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+z21=0.267[z2l,z2r]; z20=(x6,0.5[h,y2]);
+penpos20(3/4hair,-135);
+z22=(0.545[x21,x20],h-apex_o);
+z21'=(x1r,1/4[y21,y6]);
+filldraw z21..z22..{down}z20l & z20l--z20r
+& z20r{up}..z21'{down} & z21'--z2r--z21 &
+cycle;
+penpos18(hair,angle(z6-z17));
+x18r=0;y18r=1/3[h,y21];
+z21''=(x1l,0.5[y21,y6]);
+filldraw z21''{up}..{z18-z21}z18l &
+z18l--z18r--z21--z2l--z21'' & cycle;
+z0=(x8r,0); ygoth_o(0);
+.endchar;
+
+.cmchar "The gothic ligature da";
+.beginchar(oct"006",6.111u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+4.4u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.88x_height); %0.833
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos2'(stem,0); z2'r=z17';
+z31=whatever[z6,z5r]; x31=x1l;
+z30=whatever[z31,z5r];
+z30-z2'l=whatever*(z2'r-z6'r);
+x34=0; z34=whatever[z5.1,z5l];
+z32=(x31-0.5hair,y31+hair);
+z33=(2x32,y34); z35=whatever[z2'l,z30];
+z35=whatever[z34,z5.1];
+filldraw z2'r--z6'r--z6--z31--z34--z35
+--z2'l--z2'r & cycle;
+filldraw z34{up}..z32 & z32..{down}z33 &
+z33--z34 & cycle;
+penstroke z1e--z2'e;
+%
+%
+%
+penpos150(1.2hair,angle(z5.1-z35));
+z150l=z35;
+unfilldraw z2'r{up}..{z30-z35}z150r & z150r
+--z5.1--z2'r & cycle;
+unfilldraw z2'r{up}..{z30-z35}z150r & z150r
+--z5.1--z2'r & cycle;
+z0=(x7',0); ygoth_a(0);
+.endchar;
+
+.cmchar "The gothic ligature do";
+.beginchar(oct"010",6.111u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+4u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.88x_height); %0.833
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos2'(stem,0); z2'r=z17';
+z31=whatever[z6,z5r]; x31=x1l;
+z30=whatever[z31,z5r];
+z30-z2'l=whatever*(z2'r-z6'r);
+x34=0; z34=whatever[z5.1,z5l];
+z32=(x31-0.5hair,y31+hair);
+z33=(2x32,y34); z35=whatever[z2'l,z30];
+z35=whatever[z34,z5.1];
+filldraw z2'r--z6'r--z6--z31--z34--z35
+--z2'l--z2'r & cycle;
+filldraw z34{up}..z32 & z32..{down}z33 &
+z33--z34 & cycle;
+penstroke z1e--z2'e;
+%
+%
+%
+penpos150(1.2hair,angle(z5.1-z35));
+z150l=z35;
+unfilldraw z2'r{up}..{z30-z35}z150r & z150r
+--z5.1--z2'r & cycle;
+unfilldraw z2'r{up}..{z30-z35}z150r & z150r
+--z5.1--z2'r & cycle;
+z0=(x8r,0); ygoth_o(0);
+.endchar;
+
+.cmchar "The gothic ligature ho";
+.beginchar(oct"022",6.111u#,1.431x_height#,2.778u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+3.8u#);
+z0=(0,0); ygoth_h(0);
+z50=(x8r,0); ygoth_o(50);
+.endchar;
+
+.cmchar "The gothic ligature ha";
+.beginchar(oct"011",6.111u#,1.431x_height#,2.778u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+4.3u#);
+z0=(0,0); ygoth_h(0);
+z50=(x7',0); ygoth_a(50);
+.endchar;
+
+.cmchar "The gothic ligature pa";
+.beginchar(oct"023",6.111u#,x_height#,0.431x_height#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+4.4u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,h-foot);
+qeri(2); z9l=z1l-(3apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos6.5(hair,angle(z6-z17)-90);
+z6.5l=whatever[z17,z6'l];
+y6.5l=x_height+hair;
+penstroke z6'e--z6.5e;
+%
+%
+%
+penpos200(stem,0); z200=(x2,-0.271x_height);
+z21=0.267[z200l,z200r]; z20=(x6,0.5[-d,y200]);
+penpos20(3/4hair,-45);
+z22=(0.545[x21,x20],-d+apex_o);
+z21'=(x1r,1/4[y21,0]);
+filldraw z21..z22..{up}z20r & z20r--z20l
+& z20l{down}..z21'{up} & z21'--z200r--z21 &
+cycle;
+penpos18(hair,angle(z9-z8));
+x18r=0;y18r=1/3[-d,y21];
+z21''=(x1l,0.5[y21,0]);
+filldraw z21''{down}..{z18-z21}z18r &
+z18r--z18l--z21--z200l--z21'' & cycle;
+penstroke z200e--z1e;
+z50=(x7',0); ygoth_a(50);
+.endchar;
+
+.cmchar "The gothic ligature po";
+.beginchar(oct"025",6.111u#,x_height#,0.431x_height#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+4u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,h-foot);
+qeri(2); z9l=z1l-(3apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos6.5(hair,angle(z6-z17)-90);
+z6.5l=whatever[z17,z6'l];
+y6.5l=x_height+hair;
+penstroke z6'e--z6.5e;
+%
+%
+%
+penpos200(stem,0); z200=(x2,-0.271x_height);
+z21=0.267[z200l,z200r]; z20=(x6,0.5[-d,y200]);
+penpos20(3/4hair,-45);
+z22=(0.545[x21,x20],-d+apex_o);
+z21'=(x1r,1/4[y21,0]);
+filldraw z21..z22..{up}z20r & z20r--z20l
+& z20l{down}..z21'{up} & z21'--z200r--z21 &
+cycle;
+penpos18(hair,angle(z9-z8));
+x18r=0;y18r=1/3[-d,y21];
+z21''=(x1l,0.5[y21,0]);
+filldraw z21''{down}..{z18-z21}z18r &
+z18r--z18l--z21--z200l--z21'' & cycle;
+penstroke z200e--z1e;
+z50=(x8r,0); ygoth_o(50);
+.endchar;
+
+.cmchar "The gothic ligature pe";
+.beginchar(oct"024",6.111u#,x_height#,0.431x_height#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+3.4u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,h-foot);
+qeri(2); z9l=z1l-(3apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos6.5(hair,angle(z6-z17)-90);
+z6.5l=whatever[z17,z6'l];
+y6.5l=x_height+hair;
+penstroke z6'e--z6.5e;
+%
+%
+%
+penpos200(stem,0); z200=(x2,-0.271x_height);
+z21=0.267[z200l,z200r]; z20=(x6,0.5[-d,y200]);
+penpos20(3/4hair,-45);
+z22=(0.545[x21,x20],-d+apex_o);
+z21'=(x1r,1/4[y21,0]);
+filldraw z21..z22..{up}z20r & z20r--z20l
+& z20l{down}..z21'{up} & z21'--z200r--z21 &
+cycle;
+penpos18(hair,angle(z9-z8));
+x18r=0;y18r=1/3[-d,y21];
+z21''=(x1l,0.5[y21,0]);
+filldraw z21''{down}..{z18-z21}z18r &
+z18r--z18l--z21--z200l--z21'' & cycle;
+penstroke z200e--z1e;
+z50=(x7',0); ygoth_e(50);
+.endchar;
+
+.cmchar "The gothic ligature ve";
+.beginchar(oct"036",6.111u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+3.4u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,x_height-foot);
+z9l=z1l-(2apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos6.5(hair,angle(z6-z17)-90);
+z6.5l=whatever[z17,z6'l];
+y6.5l=x_height+hair;
+penstroke z6'e--z6.5e;
+penpos202(hair,-45); x202l=x1l;
+y202l=1.333x_height;
+z203=(x1r,0.5[y2,x_height]);
+z204=(x1l,y2-0.5stem);
+penpos205(stem,45); x205=x1l;
+y205l=x_height-hair;
+penstroke z2e{up}..z205e{dir(angle(z205r-z205l)+90)}
+..z202e{dir45};
+z50=(x7',0); ygoth_e(50);
+.endchar;
+
+.cmchar "The gothic ligature va";
+.beginchar(oct"030",6.111u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+4.3u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,x_height-foot);
+z9l=z1l-(2apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos6.5(hair,angle(z6-z17)-90);
+z6.5l=whatever[z17,z6'l];
+y6.5l=x_height+hair;
+penstroke z6'e--z6.5e;
+penpos202(hair,-45); x202l=x1l;
+y202l=1.333x_height;
+z203=(x1r,0.5[y2,x_height]);
+z204=(x1l,y2-0.5stem);
+penpos205(stem,45); x205=x1l;
+y205l=x_height-hair;
+penstroke z2e{up}..z205e{dir(angle(z205r-z205l)+90)}
+..z202e{dir45};
+z50=(x7',0); ygoth_a(50);
+.endchar;
+
+.cmchar "The gothic ligature vu";
+.beginchar(oct"037",6.111u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+4u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,x_height-foot);
+z9l=z1l-(2apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos6.5(hair,angle(z6-z17)-90);
+z6.5l=whatever[z17,z6'l];
+y6.5l=x_height+hair;
+penstroke z6'e--z6.5e;
+penpos202(hair,-45); x202l=x1l;
+y202l=1.333x_height;
+z203=(x1r,0.5[y2,x_height]);
+z204=(x1l,y2-0.5stem);
+penpos205(stem,45); x205=x1l;
+y205l=x_height-hair;
+penstroke z2e{up}..z205e{dir(angle(z205r-z205l)+90)}
+..z202e{dir45}; ligature:=true;
+z50=(x8r+0.5u,0); ygoth_u(50);
+.endchar;
+
+.cmchar "The gothic ligature qz";
+.beginchar(oct"027",6.111u#,x_height#,0.431x_height#);
+.adjust_fit(cap_serif_fit#-.5u#,cap_serif_fit#+4.3u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.88x_height); %0.833
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101r=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r+hair,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos2'(stem,0); z2'r=z17';
+z31=whatever[z6,z5r]; x31=x1l;
+z30=whatever[z31,z5r];
+z30-z2'l=whatever*(z2'r-z6'r);
+x34=0; z34=whatever[z5.1,z5l];
+z32=(x31-0.5hair,y31+hair);
+z33=(2x32,y34); z35=whatever[z2'l,z30];
+z35=whatever[z34,z5.1];
+penpos150(0.9hair,angle(z30-z2'l)-90);
+z150l=0.5[z2'l,z30];
+filldraw z2'r--z6'r--z6--z30
+& flex(z30,z150r,z2'l) & z2'l--z2'r & cycle;
+penstroke z1e--z2'e;
+%
+%
+%
+penpos200(stem,0); z200=(x3,-0.271x_height);
+z210=0.267[z200r,z200l]; z201=(x7,0.5[-d,y200]);
+penpos201(3/4hair,45);
+z220=(0.545[x201,x210],-d+apex_o);
+z210'=(x3l,1/4[y210,0]);
+filldraw z210..z220..{up}z201l & z201l--z201r
+& z201r{down}..z210'{up} & z210'--z200r--z210 &
+cycle;
+penpos180(hair,angle(z17-z6));
+x180r=w; y180r=1/3[-d,y210];
+z210''=(x3r,0.5[y210,0]);
+filldraw z210''{down}..{z180-z210}z180l &
+z180l--z180r--z210--z200r--z210'' & cycle;
+penstroke z200e--z3e;
+z0=(x3r,0); ygoth_z(0);
+.endchar; \ No newline at end of file
diff --git a/fonts/gothic/ygoth/ygothlow.mf b/fonts/gothic/ygoth/ygothlow.mf
new file mode 100644
index 0000000000..bd893026f2
--- /dev/null
+++ b/fonts/gothic/ygoth/ygothlow.mf
@@ -0,0 +1,768 @@
+
+.cmchar "The gothic letter a";
+.beginchar("a",6.278u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#-0.3u#);
+z0=(0,0); ygoth_a(0); .endchar;
+
+.cmchar "The gothic letter b";
+.beginchar("b",6.111u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(2apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+z21=0.267[z2l,z2r]; z20=(x6,0.5[h,y2]);
+penpos20(3/4hair,-135);
+z22=(0.545[x21,x20],h-apex_o);
+z21'=(x1r,1/4[y21,y6]);
+filldraw z21..z22..{down}z20l & z20l--z20r
+& z20r{up}..z21'{down} & z21'--z2r--z21 &
+cycle;
+penpos18(hair,angle(z6-z17));
+x18r=0;y18r=1/3[h,y21];
+z21''=(x1l,0.5[y21,y6]);
+filldraw z21''{up}..{z18-z21}z18l &
+z18l--z18r--z21--z2l--z21'' & cycle;
+.endchar;
+
+.cmchar "The gothic letter c";
+.beginchar("c",4.306u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+z0=(0,0); ygoth_c(0);
+.endchar;
+
+.cmchar "The gothic letter d";
+.beginchar("d",6.111u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.88x_height); %0.833
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos2'(stem,0); z2'r=z17';
+z31=whatever[z6,z5r]; x31=x1l;
+z30=whatever[z31,z5r];
+z30-z2'l=whatever*(z2'r-z6'r);
+x34=0; z34=whatever[z5.1,z5l];
+z32=(x31-0.5hair,y31+hair);
+z33=(2x32,y34); z35=whatever[z2'l,z30];
+z35=whatever[z34,z5.1];
+filldraw z2'r--z6'r--z6--z31--z34--z35
+--z2'l--z2'r & cycle;
+filldraw z34{up}..z32 & z32..{down}z33 &
+z33--z34 & cycle;
+penstroke z1e--z2'e;
+%
+%
+%
+penpos150(1.2hair,angle(z5.1-z35));
+z150l=z35;
+unfilldraw z2'r{up}..{z30-z35}z150r & z150r
+--z5.1--z2'r & cycle;
+unfilldraw z2'r{up}..{z30-z35}z150r & z150r
+--z5.1--z2'r & cycle;
+.endchar;
+
+.cmchar "The gothic letter e";
+.beginchar("e",4.306u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+.7u#);
+z0=(0,0); ygoth_e(0);
+.endchar;
+
+.cmchar "The gothic letter f";
+.beginchar("f",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#-.2u#);
+z0=(hair,0); ygoth_s(0);
+penpos260(4/5stem,-90); penpos261(4/5stem,-90);
+y260r=y261r=0.732x_height;
+x260=x0+apex_o+stem;
+x261=x0+apex_o+2stem;
+penstroke z260e--z261e;
+.endchar;
+
+.cmchar "The gothic letter g";
+.beginchar("g",7.556u#,x_height#,3u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#-0.3u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+x1l=x2l=apex_o; x3l=x4l=0.574w;
+penpos5(1.083stem,63); penpos6(1.083stem,63);
+penpos20(2hair,-51); penpos21(2hair,-45);
+penpos22(2hair,-28);
+y1=0.108x_height; %y2=0.788x_height;
+y3=0.235x_height; y4=0.843x_height;
+y5r=x_height; x5l=x2r; y2=y5l;
+z6r=(w,0.915x_height); y20l=y2; x20=x1l;
+z21r=z2r; z22l=whatever[z5r,z5l]; y22l=h+apex_o;
+penpos6'(1.083stem,63);
+z6'l=whatever[z5l,z6l]; x6'=x6-hair;
+penstroke z1e--z2e; penstroke z3e--z4e;
+penstroke z6'e--z5e; penstroke z20e..z21e..z22e;
+penpos6''(1.083stem,63);
+z6''=whatever[z6l,z6r]; z6''l=1/5[z6l,z6r];
+penstroke z6'e{z6-z5}..z6''e;
+%
+%
+%
+penpos16(stem,65); z16l=(0,y1);
+penpos7(hair,-41);
+z7r=(x1l,-d); penpos8(hair,-41); z8l=z3l;
+z7'=whatever[z7l,z8l]; y7'=-d;
+filldraw z7'--z8l--z8r--z7r--z7' & cycle;
+z15'=whatever[z16l,(x1r,0)];
+z15'=whatever[z7r,z8r]; z15-z16r=
+whatever*(z15'-z16l); z15=whatever[z7r,z8r];
+filldraw z16l--z16r--z15--z15'--z16l &
+cycle;
+penpos9(stem,30); z9l=z3l;
+x12=x6r; z12-z9r=whatever*dir-60;
+penpos10(whatever,45); z10r=z12;
+z10l-z9l=whatever*(z12-z9r);
+z13''=whatever[z7l,z8l]; x13''=x1r;
+penpos11'(hair,-45);
+z11'r=z12; z11''=whatever[z9l,z10l];
+z11''-z11'l=whatever*(z10l-z10r);
+penpos13'(stem,angle(z11''-z13'')+90);
+z13'r=z13''; z11-z13'l=whatever*(z11''-z13'');
+z11=whatever[z10l,z10r];
+z13=whatever[z7l,z8l];
+z13=whatever[z13'l,z11];
+filldraw z13--z11--z12--z11'l--z11''--
+z13'r--z13 & cycle;
+penstroke z10e--z9e;
+filldraw z7r{z15-z7r}..z13'l{z11-z13}
+& z13'l--z13--z7r & cycle;
+.endchar;
+
+.cmchar "The gothic letter h";
+.beginchar("h",6.111u#,1.431x_height#,2.778u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+0.2u#);
+z0=(0,0); ygoth_h(0);
+.endchar;
+
+.cmchar "The gothic letter i";
+.beginchar("i",2.889u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#+0.6u#,cap_serif_fit#-.7u#);
+penpos1(stem,0); penpos2(stem,0);
+x1l=x2l=apex_o; y1=foot; y2=x_height-foot;
+podi(1); qeri(2); penstroke z1e--z2e;
+%
+%
+%
+z5.1=z2r+(2apex_o,0);
+penpos5.2(stem,40); z5.2r=z5.1;
+penpos5.3(stem,40);
+z5.2r-z5.3r=whatever*dir-50;
+y5.3r=y2+foot+apex_o;
+z3=z5.3r+(0,0.5hair);
+penpos4(0.8stem,0); y4=1.379x_height;
+x4r=x2r+hair;
+filldraw z3--z4l--z4r--z3 & cycle;
+.endchar;
+
+.cmchar "The gothic letter j";
+.beginchar("j",2.889u#,1.431x_height#,2.778u#);
+.adjust_fit(cap_serif_fit#+0.6u#,cap_serif_fit#-.85u#);
+penpos1(stem,0); penpos2(stem,0);
+x1l=x2l=apex_o; y1=foot; y2=x_height-foot;
+qeri(2); penstroke z1e--z2e;
+%
+%
+%
+z5.1=z2r+(2apex_o,0);
+penpos5.2(stem,40); z5.2r=z5.1;
+penpos5.3(stem,40);
+z5.2r-z5.3r=whatever*dir-50;
+y5.3r=y2+foot+apex_o;
+z3=z5.3r+(0,0.5hair);
+penpos4(0.8stem,0); y4=1.379x_height;
+x4r=x2r+hair;
+filldraw z3--z4l--z4r--z3 & cycle;
+%
+%
+%
+z40=z1r+(apex_o,-0.5y1r); z41=(x1l-0.6hair,0);
+penpos42(hair,90); z42l=(x1l-1.733stem,-d);
+filldraw z1r{down}..z40 & z40{dir225}..
+z42l{left} & z42l--z42r & z42r{right}..
+z1l{up} & z1l--z1r & cycle;
+.endchar;
+
+.cmchar "The gothic letter k";
+.beginchar("k",6.111u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+.4u#);
+z0=(0,0); ygoth_k(0);
+.endchar;
+
+.cmchar "The gothic letter l";
+.beginchar("l",4.278u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#-u#);
+penpos301(stem,0); penpos302(stem,0);
+penpos303(stem,0); penpos304(stem,0);
+penpos308(stem,60); penpos309(stem,60);
+z301=(0.243w,foot); z302=(x301,0.888h);
+penstroke z301e--z302e; podi(301);
+%
+%
+%
+z321=0.267[z302l,z302r]; z320l=(w,0.5[h,y302]);
+penpos320(3/4hair,-135);
+z322=(0.7[x321,x320],h-apex_o);
+z321'=(x301r,1/4[y321,x_height]);
+penpos325(0.7hair,-90); z325l=z322;
+filldraw z321..z325l{right} & z325l--z325r &
+z325r{left}..z321'{down} & z321'--z302r--z321 &
+cycle;
+penpos318(hair,45);
+x318r=0;y318r=1/3[h,y321];
+z321''=(x301l,0.5[y321,x_height]);
+filldraw z321''{up}..{z318-z321}z318l &
+z318l--z318r--z321--z302l--z321'' & cycle;
+.endchar;
+
+.cmchar "The gothic letter m";
+.beginchar("m",9u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos5(stem,0); penpos6(stem,0);
+x1l=hair;
+x2=x1; x4l=x3l=x1r+1.233stem;
+x6l=x5l=x3r+1.233stem;
+y1=y3=y5=foot; y2=y4=y6=x_height-foot;
+penstroke z1e--z2e; penstroke z3e--z4e;
+penstroke z5e--z6e;
+podi(1); podi(3); podi(5);
+qeri(2); panwqeri(4); panwqeri(6);
+.endchar;
+
+.cmchar "The gothic letter n";
+.beginchar("n",5.5u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+.2u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+x1l=hair;
+x2=x1; x4l=x3l=x1r+1.233stem;
+y1=y3=foot; y2=y4=x_height-foot;
+penstroke z1e--z2e; penstroke z3e--z4e;
+podi(1); podi(3);
+qeri(2); panwqeri(4);
+.endchar;
+
+.cmchar "The gothic letter o";
+.beginchar("o",6.111u#,x_height#,0);
+.adjust_fit(cap_serif_fit#-.4u#,cap_serif_fit#+0.2u#);
+z0=(0,0); ygoth_o(0);
+.endchar;
+
+.cmchar "The gothic letter p";
+.beginchar("p",6.111u#,x_height#,0.431x_height#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,h-foot);
+qeri(2); z9l=z1l-(3apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos6.5(hair,angle(z6-z17)-90);
+z6.5l=whatever[z17,z6'l];
+y6.5l=x_height+hair;
+penstroke z6'e--z6.5e;
+%
+%
+%
+penpos200(stem,0); z200=(x2,-0.271x_height);
+z21=0.267[z200l,z200r]; z20=(x6,0.5[-d,y200]);
+penpos20(3/4hair,-45);
+z22=(0.545[x21,x20],-d+apex_o);
+z21'=(x1r,1/4[y21,0]);
+filldraw z21..z22..{up}z20r & z20r--z20l
+& z20l{down}..z21'{up} & z21'--z200r--z21 &
+cycle;
+penpos18(hair,angle(z9-z8));
+x18r=0;y18r=1/3[-d,y21];
+z21''=(x1l,0.5[y21,0]);
+filldraw z21''{down}..{z18-z21}z18r &
+z18r--z18l--z21--z200l--z21'' & cycle;
+penstroke z200e--z1e;
+.endchar;
+
+.cmchar "The gothic letter q";
+.beginchar("q",6.111u#,x_height#,0.431x_height#);
+.adjust_fit(cap_serif_fit#-.3u#,cap_serif_fit#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,0.888h);
+z9l=z1l-(apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.88x_height); %0.833
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101r=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r+hair,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos2'(stem,0); z2'r=z17';
+z31=whatever[z6,z5r]; x31=x1l;
+z30=whatever[z31,z5r];
+z30-z2'l=whatever*(z2'r-z6'r);
+x34=0; z34=whatever[z5.1,z5l];
+z32=(x31-0.5hair,y31+hair);
+z33=(2x32,y34); z35=whatever[z2'l,z30];
+z35=whatever[z34,z5.1];
+penpos150(0.9hair,angle(z30-z2'l)-90);
+z150l=0.5[z2'l,z30];
+filldraw z2'r--z6'r--z6--z30
+& flex(z30,z150r,z2'l) & z2'l--z2'r & cycle;
+penstroke z1e--z2'e;
+%
+%
+%
+penpos200(stem,0); z200=(x3,-0.271x_height);
+z210=0.267[z200r,z200l]; z201=(x7,0.5[-d,y200]);
+penpos201(3/4hair,45);
+z220=(0.545[x201,x210],-d+apex_o);
+z210'=(x3l,1/4[y210,0]);
+filldraw z210..z220..{up}z201l & z201l--z201r
+& z201r{down}..z210'{up} & z210'--z200r--z210 &
+cycle;
+penpos180(hair,angle(z17-z6));
+x180r=w; y180r=1/3[-d,y210];
+z210''=(x3r,0.5[y210,0]);
+filldraw z210''{down}..{z180-z210}z180l &
+z180l--z180r--z210--z200r--z210'' & cycle;
+penstroke z200e--z3e;
+.endchar;
+
+.cmchar "The gothic letter r";
+.beginchar("r",4.389u#,x_height#,0);
+.adjust_fit(2cap_serif_fit#+0.3u#,cap_serif_fit#);
+penpos1(stem,0); z1l=(apex_o,foot);
+z2'=(0.5w,-apex_o); z1'=z1l-(2apex_o,0);
+penpos2(stem,0); z2=(x1,0.804x_height);
+penpos3(stem,angle(z2'-z1')+90);
+z3l=z2';
+penpos4(stem,angle(z2'-z1')+90);
+z4l=z1'; penstroke z1e--z2e; qeri(2);
+penstroke z3e--z4e;
+penpos15(hair,-60); z15r=z2';
+z16-z15r=whatever*dir30; x16=w-apex_o;
+x16=x16'; z16'-z15l=whatever*(z16-z15r);
+z16''=whatever[z15,z16'];
+y16''=0.5[foot,y16'];
+filldraw z3r{z3-z4}...z16''---z16' &
+z16'--z16--z15r--z15l--z3r & cycle;
+%
+%
+%
+penpos10(hair,-60); z10r=(x1r,2/3x_height);
+penpos11(1.1stem,27); z11r=(w,0.739x_height);
+z12-z10l=whatever*dir60; y12=x_height+hair;
+z13-z11r=whatever*(z10l-z12);
+z14-z11l=whatever*(z12-z11r);
+z14-z10r=whatever*(z12-z10l);
+z13=whatever[z14,z11l];
+filldraw z10l--z12--z11r--z13--z14--z10r--
+z10l & cycle;
+z15'=whatever[z10l,z12]; x15'=x10r;
+unfilldraw z15'--(x15',x_height)--z12--z15'
+& cycle;
+.endchar;
+
+.cmchar "The gothic letter long s";
+.beginchar("s",4.389u#,11.944u#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+z0=(hair,0); ygoth_s(0);
+.endchar;
+
+.cmchar "The gothic letter short s";
+.beginchar(oct"140",5.2u#,x_height#,0);
+.adjust_fit(cap_serif_fit#+.7u#,cap_serif_fit#+.3u#);
+penpos1(hair,-45); penpos2(hair,-45);
+z1r=(0,foot); z2l=(w,0.9h);
+penstroke z1e--z2e;
+%
+% panw meroc
+%
+penpos3(stem,angle(z2-z1)); z3=whatever[z1l,z2l];
+penpos4(stem,angle(z2-z1));
+z4-z3=whatever*(z1l-z1r);
+z4l=(-2apex_o,0.458h);
+penstroke z3e--z4e;
+y5=y4l; penpos5(stem,0); x5l=0;
+penpos6(stem,0); x6=x5; y6=h-foot;
+penstroke z5e--z6e;
+penpos7(stem,60); x7=0.5w; y7r=h;
+z7l-z9=whatever*dir147;
+z7r-z8=whatever*dir147;
+z9=whatever[z1l,z2l]; z8=whatever[z1l,z2l];
+penpos10(hair,-66); z10l=whatever[z7l,z9];
+x10l=x6r; penpos11(hair,-90); z11l=z6l;
+penpos12(hair,angle(z8-z7r)); z12l=z7r;
+filldraw z9--z7l--z7r--z8--z9 & cycle;
+penstroke z11e{z6r-z6l}..{z7r-z7l}z12e;
+z13=whatever[z7l,z7r]; y13=h+apex_o;
+z13'=0.3[z7r,z8];
+filldraw z7r--z13 & z13..{z8-z12}z13'
+& z13'--z7r & cycle;
+penpos14(0.4stem,0);
+x14l=x2l; y14=h+hair;
+filldraw z2l{z2l-z1l}..z14l{dir110} &
+flex(z14l,z14+(0,apex_o),z14r) &
+z14r{down}..z2r{z1r-z2r} & z2r--z2l & cycle;
+z10'=whatever[z7l,z9]; x10'=0;
+z10''=(z10'--z9) intersectionpoint
+(z11{right}..z12{z7r-z7l});
+filldraw z10''..z7r{z7r-z7l} & z7r--z7l--
+z10'' & cycle;
+%
+% katw meroc
+%
+penpos20(stem,60); z20r=(w+2apex_o,0.542h);
+z21-z20r=whatever*(z12-z8);
+z22-z20l=whatever*(z12-z8);
+z21=whatever[z1r,z2r];
+z22=whatever[z1r,z2r];
+filldraw z20r--z21--z22--z20l--z20r & cycle;
+penpos23(stem,0); x23r=w; y23=y20r;
+penpos24(stem,0); x24=x23; y24=0.216h;%0.216h;
+penstroke z24e--z23e;
+penpos25(hair,-50); x25l=x24r;
+z25r-z24r=whatever*dir30;
+penpos26(hair,-50); z26r=whatever[z24r,z25r];
+y26r=-apex_o; penstroke z26e--z25e;
+z31=whatever[z1r,z2r];
+z31-z26r=whatever*dir140;
+penpos27(stem,50); z27l=z26r;
+z29-z27r=whatever*(z31-z27l);
+z29=whatever[z1r,z2r];
+z28=whatever[z26r,z25r];
+z28=whatever[z29,z27r];
+filldraw z31--z26r--z28--z29--z31 & cycle;
+z32=whatever[z26,z25]; x32=x24l;
+filldraw z32--z24r--z24l--z32 & cycle;
+penpos30(0.6stem,45); x30r=x4l;
+y30r=-hair;
+filldraw z30r{dir135}..z1r{z2r-z1r} &
+z1r--z1l & z1l{z1r-z2r}..{dir290}z30l
+& z30l--z30r & cycle;
+.endchar;
+
+.cmchar "The gothic letter t";
+.beginchar("t",4.389u#,1.242x_height#,0);
+.adjust_fit(2cap_serif_fit#,cap_serif_fit#-u#);
+z0=(0,0); ygoth_t(0);
+.endchar;
+
+.cmchar "The gothic letter u";
+.beginchar("u",5.5u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+.2u#);
+z0=(0,0); ligature:=false;
+ygoth_u(0);
+.endchar;
+
+.cmchar "The gothic letter v";
+.beginchar("v",6.111u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,x_height-foot);
+z9l=z1l-(2apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+penpos6.5(hair,angle(z6-z17)-90);
+z6.5l=whatever[z17,z6'l];
+y6.5l=x_height+hair;
+penstroke z6'e--z6.5e;
+penpos202(hair,-45); x202l=x1l;
+y202l=1.333x_height;
+z203=(x1r,0.5[y2,x_height]);
+z204=(x1l,y2-0.5stem);
+penpos205(stem,45); x205=x1l;
+y205l=x_height-hair;
+penstroke z2e{up}..z205e{dir(angle(z205r-z205l)+90)}
+..z202e{dir45};
+.endchar;
+
+.cmchar "The gothic letter w";
+.beginchar("w",10.7u#,x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#-.8u#);
+w:=6.111u;
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+penpos8(stem,60); penpos9(stem,60);
+z1=(0.243w,foot); z2=(x1,x_height-foot);
+z9l=z1l-(2apex_o,0);
+x7=0.359[x1r,x3l]; y7=-apex_o;
+z8l=z7; z3r-z7=whatever*dir30;
+x3r=w-apex_o;
+z4r=(x3r,0.833x_height);
+z7'=whatever[z9r,z8r]; z7'=whatever[z7,z3r];
+z7''=whatever[z7,z3r]; x7''=x3l;
+penstroke z1e--z2e; penstroke z8e--z9e;
+penstroke z3e--z4e;
+filldraw z8r--z7'--z7--z8r & cycle;
+filldraw z7''--z3l--z3r--z7'' & cycle;
+penpos100(hair,angle(z3r-z7)-90);
+penpos101(hair,angle(z3r-z7)-90);
+z100r=z7; z101r=whatever[z7,z3r]; x101l=x3r;
+penstroke z100e--z101e;
+%
+%
+%
+penpos5(stem,60); z17=(x1r,0.824x_height);
+z6=(0.821[x1r,x3l],x_height);
+z5r=(x101r,y4);
+penpos6'(hair,angle(z6-z17)-90);
+z6'l=z6; z17'-z6'r=whatever*(z17-z6);
+x17'=x1r; z5.1=whatever[z17',z6'r];
+z5.1-z5l=whatever*(z6-z5r);
+filldraw z5r--z6--z17--z17'--z5.1--z5l--z5r
+& cycle;
+%
+%
+%
+transform metatopish;
+metatopish=identity
+shifted (x3-x1,0);
+addto currentpicture also currentpicture
+transformed metatopish;
+z201=whatever[z9r,z7'];
+z201=whatever[z100l,z101l];
+z200=whatever[z100l,z101l];
+x200=x3l;
+unfilldraw z200--z201--(x201,y9r)--
+(x200,y9r)--z200 & cycle;
+%
+%
+%
+penpos6.5(hair,angle(z6-z17)-90);
+z6.5l=whatever[z17,z6'l];
+y6.5l=x_height+hair;
+penstroke z6'e--z6.5e;
+penpos202(hair,-45); x202l=x1l;
+y202l=1.333x_height;
+z203=(x1r,0.5[y2,x_height]);
+z204=(x1l,y2-0.5stem);
+penpos205(stem,45); x205=x1l;
+y205l=x_height-hair;
+penstroke z2e{up}..z205e{dir(angle(z205r-z205l)+90)}
+..z202e{dir45};
+.endchar;
+
+.cmchar "The gothic letter x";
+.beginchar("x",4.389u#,x_height#,0);
+.adjust_fit(2cap_serif_fit#+.3u#,cap_serif_fit#);
+penpos1(stem,0); z1l=(apex_o,foot);
+z2'=(0.5w,-apex_o); z1'=z1l-(apex_o,0);
+penpos2(stem,0); z2=(x1,0.804x_height);
+penpos3(stem,angle(z2'-z1')+90);
+z3l=z2';
+penpos4(stem,angle(z2'-z1')+90);
+z4l=z1'; penstroke z1e--z2e; qeri(2);
+penstroke z3e--z4e;
+penpos15(hair,-60); z15r=z2';
+z16-z15r=whatever*dir30; x16=w-apex_o;
+x16=x16'; z16'-z15l=whatever*(z16-z15r);
+z16''=whatever[z15,z16'];
+y16''=0.5[foot,y16'];
+filldraw z3r{z3-z4}...z16''---z16' &
+z16'--z16--z15r--z15l--z3r & cycle;
+%
+%
+%
+penpos10(hair,-60); z10r=(x1r,2/3x_height);
+penpos11(1.1stem,27); z11r=(w,0.739x_height);
+z12-z10l=whatever*dir60; y12=x_height+hair;
+z13-z11r=whatever*(z10l-z12);
+z14-z11l=whatever*(z12-z11r);
+z14-z10r=whatever*(z12-z10l);
+z13=whatever[z14,z11l];
+filldraw z10l--z12--z11r--z13--z14--z10r--
+z10l & cycle;
+z15'=whatever[z10l,z12]; x15'=x10r;
+unfilldraw z15'--(x15',x_height)--z12--z15'
+& cycle;
+%
+%
+%
+penpos100(1.2hair,angle(z3r-z4r));
+penpos101(hair,angle(z3r-z4r));
+z100l=z4l; z100-z101=whatever*(z4r-z4l);
+y101=-.8stem; penstroke z101e--z100e;
+.endchar;
+
+.cmchar "The gothic letter y";
+.beginchar("y",5.5u#,x_height#,3.056u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+.1u#);
+penpos1(stem,0); penpos2(stem,0);
+penpos3(stem,0); penpos4(stem,0);
+x1l=hair;
+x2=x1; x4l=x3l=x1r+1.233stem;
+y1=foot; y2=y4=x_height-foot;
+y3=0.242x_height;
+penstroke z1e--z2e; penstroke z3e--z4e;
+qeri(2); panwqeri(4);
+penpos101(hair,-70); penpos100(hair,-70);
+x101l=x4r; y101r=y3;
+z101-z100=whatever*dir18;
+x100r=x1r;
+penstroke z100e--z101e;
+z100.5=whatever[z100,z101]; x100.5=x4l;
+filldraw z100.5--z3l--z3r--z100.5 & cycle;
+penpos102(1.2hair,180);
+penpos103(hair,-90); penpos104(hair,0);
+z102=(x1l-0.1stem,-.5d);
+z104=(0.361[x1r,x3l],-0.611d);
+x103=0.522[x102,x104]; y103r=-d;
+filldraw z1l{down}..z102r..z103r..z104r{up}
+& z104r--z104l & z104l{down}..z103l..z102l
+..z100r{z101-z100} & z100r--z1r--z1l &
+cycle;
+penpos200(stem,0); z200r=z104r;
+filldraw z200r..z200l..z200r..cycle;
+.endchar;
+
+.cmchar "The gothic letter z";
+.beginchar("z",4.306u#,x_height#,3.333u#);
+.adjust_fit(cap_serif_fit#+.2u#,cap_serif_fit#+.2u#);
+z0=(0,0); ygoth_z(0);
+.endchar;
+
diff --git a/fonts/gothic/ygoth/ygothmis.mf b/fonts/gothic/ygoth/ygothmis.mf
new file mode 100644
index 0000000000..b35cbc9bcb
--- /dev/null
+++ b/fonts/gothic/ygoth/ygothmis.mf
@@ -0,0 +1,177 @@
+.cmchar "The gothic point";
+.beginchar(".",5u#,1.431x_height#,0);
+.adjust_fit(0,0);
+z1=(0.5w,-apex_o+0.707stem);
+ygoth_dot(1);
+.endchar;
+
+.cmchar "The gothic colon";
+.beginchar(":",5u#,1.431x_height#,0);
+.adjust_fit(0,0);
+z1=(0.5w,-apex_o+0.707stem);
+ygoth_dot(1);
+z2=(0.5w,x_height+apex_o-0.707stem);
+ygoth_dot(2)
+.endchar;
+
+.cmchar "The gothic semicolon";
+.beginchar(";",5u#,1.431x_height#,0);
+.adjust_fit(0,0);
+z1=(0.5w,-apex_o+0.707stem);
+ygoth_dot(1);
+z2=(0.5w,x_height+apex_o-0.707stem);
+ygoth_dot(2)
+penpos3(hair,-90); penpos4(stem,45);
+z3l=(0.5w-0.707stem,-stem);
+z4l=(0.5w,-apex_o);
+penstroke z3e..z4e{up};
+.endchar;
+
+.cmchar "The gothic comma";
+.beginchar(",",5u#,1.431x_height#,0);
+.adjust_fit(0,0);
+z2=(0.5w,-apex_o+0.707stem);
+ygoth_dot(2)
+penpos3(hair,-90); penpos4(stem,45);
+z3l=(0.5w-0.707stem,-stem);
+z4l=(0.5w,-apex_o);
+penstroke z3e..z4e{up};
+.endchar;
+
+.cmchar "The gothic exclamation point";
+.beginchar("!",5u#,1.431x_height#,0);
+.adjust_fit(0,0);
+z1=(0.5w,-apex_o+0.707stem);
+ygoth_dot(1);
+z2=(0.5w,cap_height+apex_o-0.707stem);
+ygoth_dot(2);
+penpos3(1.414stem,0); penpos4(hair,0);
+x3=x4=0.5w; y3=y2; y4=y1+1.414stem;
+penstroke z4e--z3e;
+.endchar;
+
+.cmchar "The gothic question mark";
+.beginchar("?",7.591u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(hair,25); z1=(0.171w,0.514h);
+z1'=(0.293w,0.88h); z2=(0.5w,cap_height+apex_o);
+penpos4(cap_stem,0);
+z4l=(0.673w,0.676h);%x_height);
+penpos5(hair,0); penpos6(hair,-15);
+z7=(0.38w,0.077h); z3=(x2,0.82h);
+z8=(0.624w,0.225h); z6=(0,0);
+z5=(0.5w,-apex_o+2.121stem);
+penpos9(1.15cap_stem,-128);
+x9l=w; y9r=-apex_o;
+z10=(0.5w,-apex_o+0.707stem);
+ygoth_dot(10);
+penpos50(0.5cap_stem,-45); penpos51(cap_stem,45);
+z50l=z2; z51r=z2;
+penstroke z1e{dir115}...z50e{dir45};
+penstroke z5e{up}..z4e{up}..z51e{dir135};
+.endchar;
+
+.cmchar "Left parenthesis";
+.beginchar("(",7u#,body_height#,paren_depth#);
+italcorr body_height#*slant-.5u#;
+.adjust_fit(0,0); pickup fine.nib;
+pos1(vair,0); pos2(.75[hair,stem],0); pos3(vair,0);
+rt x1r=rt x3r=hround(w-u); lft x2l=hround(x1-4u if monospace: +4/3u fi);
+top y1=h; y2=.5[y1,y3]=math_axis;
+filldraw stroke z1e{3(x2e-x1e),y2-y1}...z2e
+ ...{3(x3e-x2e),y3-y2}z3e; % arc
+penlabels(1,2,3); .endchar;
+
+.cmchar "Right parenthesis";
+.beginchar(")",7u#,body_height#,paren_depth#);
+italcorr math_axis#*slant-.5u#;
+.adjust_fit(0,0); pickup fine.nib;
+pos1(vair,0); pos2(.75[hair,stem],0); pos3(vair,0);
+lft x1l=lft x3l=hround u; rt x2r=hround(x1+4u if monospace: -4/3u fi);
+top y1=h; y2=.5[y1,y3]=math_axis;
+filldraw stroke z1e{3(x2e-x1e),y2-y1}...z2e
+ ...{3(x3e-x2e),y3-y2}z3e; % arc
+penlabels(1,2,3); .endchar;
+
+.cmchar "Opening Gaensefuesschen";
+.beginchar(oct"137",7u#+max(2u#,dot_size#),asc_height#,0);
+italcorr asc_height#*slant+dot_size#-4.1u#;
+.adjust_fit(0,0);
+x2+.5dot_size=hround(w-.6u); y2-.5dot_size=0;
+x2-x1=hround(1.5u+max(2u,dot_size)); y2=y1;
+comma(1,a,dot_size,.25u,comma_depth); % left dot and tail
+comma(2,b,dot_size,.25u,comma_depth); % right dot and tail
+penlabels(1,2); .endchar;
+
+
+.cmchar "Closing Gaensefuesschen";
+.beginchar(oct"042",7u#+max(2u#,dot_size#),asc_height#,0);
+italcorr asc_height#*slant-.1u#;
+.adjust_fit(0,0);
+x1-.5dot_size=hround .6u;
+ y1+.5dot_size=h-comma_depth;
+x2-x1=hround(1.5u+max(2u,dot_size)); y2=y1;
+ammoc(1,a,dot_size,.25u,comma_depth); % left dot and tail
+ammoc(2,b,dot_size,.25u,comma_depth); % right dot and tail
+penlabels(1,2);
+.endchar;
+
+.cmchar "The gothic apostrophe";
+.beginchar("'",2hair#+stem#,1.431x_height#,0);
+.adjust_fit(0,0);
+penpos1(0.5stem,0);
+penpos2(stem,0);
+z1l=(hair,h-foot-0.707stem); z2l=(x1l,h);
+penstroke z1e--z2e;
+.endchar;
+
+.cmchar "The gothic hyphen";
+.beginchar("-",2u#,1.431x_height#,0);
+.adjust_fit(cap_serif_fit#+0.3u#,cap_serif_fit#);
+penpos1(stem,-90); penpos2(stem,-90);
+penpos3(stem,-90); penpos4(stem,-90);
+x1=x2=0; x3=x4=w; z3-z1=whatever*dir40;
+z4-z2=whatever*dir40;
+0.5[y2,y3]=.5x_height; y1-y2=2.5stem;
+penstroke z1e--z3e; penstroke z2e--z4e;
+.endchar;
+
+
+.cmchar "Closing quotes";
+.beginchar(oct"042",7u#+max(2u#,dot_size#),asc_height#,0);
+italcorr asc_height#*slant+dot_size#-4.1u#;
+.adjust_fit(0,0);
+x1-.5dot_size=hround .6u; y2+.5dot_size=h;
+x2-x1=hround(1.5u+max(2u,dot_size)); y2=y1;
+comma(1,a,dot_size,.25u,comma_depth); % left dot and tail
+comma(2,b,dot_size,.25u,comma_depth); % right dot and tail
+penlabels(1,2); .endchar;
+
+.cmchar "Opening quotes";
+.beginchar(oct"137",7u#+max(2u#,dot_size#),asc_height#,0);
+italcorr asc_height#*slant-.1u#;
+.adjust_fit(0,0);
+x2+.5dot_size=hround(w-.6u); y1+.5dot_size=h-comma_depth;
+x2-x1=hround(1.5u+max(2u,dot_size)); y2=y1;
+ammoc(1,a,dot_size,.25u,comma_depth); % left dot and tail
+ammoc(2,b,dot_size,.25u,comma_depth); % right dot and tail
+penlabels(1,2); .endchar;
+
+.cmchar "En dash";
+.beginchar(oct"173",9u#,x_height#,0);
+italcorr .61803x_height#*slant+.5u#;
+.adjust_fit(0,0);
+pickup crisp.nib; pos1(vair,90); pos2(vair,90);
+top y1r=top y2r=vround(.61803h+.5vair); lft x1=-eps; rt x2=w+eps;
+filldraw stroke z1e--z2e; % bar
+penlabels(1,2); .endchar;
+
+.cmchar "Em dash";
+.beginchar(oct"174",18u#,x_height#,0);
+italcorr .61803x_height#*slant+.5u#;
+.adjust_fit(letter_fit#,letter_fit#);
+pickup crisp.nib; pos1(vair,90); pos2(vair,90);
+top y1r=top y2r=vround(.61803h+.5vair); lft x1=-eps; rt x2=w+eps;
+filldraw stroke z1e--z2e; % bar
+penlabels(1,2); .endchar;
+
diff --git a/fonts/gothic/ygoth/ygothnum.mf b/fonts/gothic/ygoth/ygothnum.mf
new file mode 100644
index 0000000000..f2d1580652
--- /dev/null
+++ b/fonts/gothic/ygoth/ygothnum.mf
@@ -0,0 +1,229 @@
+.cmchar "The gothic numeral 1";
+.beginchar("1",4.591u#,1.242x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(cap_stem,0); penpos2(cap_stem,0);
+x1=x2=0.68w; y1=0.211h; y2=0.827h;
+y6=y1; x6=x1r+0.235cap_stem;
+penpos5(hair,-45); y5=0; x5=0.08w;
+penpos4(cap_hair,-26); y4=h; x4r=x1r;
+penpos3(hair,-72); x3=0; y3=0.704h;
+penpos7(cap_stem,0); x7=x1; y7=0.289h;
+z8=(z3{dir18}..{dir64}z4) intersectionpoint
+(z7l--(x7l,h));
+penstroke z3e{dir18}..{dir64}z4e;
+filldraw z1l--z8..z4--z4r--z1r--z1l &
+cycle;
+filldraw z5l{z1-z5}..z7l{up} & z7l--z7r &
+z7r{down}..z6 & z6{left}..{z5-z1}z5r &
+z5r--z5l & cycle;
+.endchar;
+
+.cmchar "The gothic numeral 2";
+.beginchar("2",7.591u#,1.242x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(hair,25); z1=(0.171w,0.514h);
+z1'=(0.293w,0.88h); z2=(0.624w,h+apex_o);
+penpos4(cap_stem,180); z4r=(0.673w,0.676h);
+penpos5(cap_hair,-32); penpos6(hair,-15);
+z7=(0.38w,0.077h); z3=(0.424w,0.82h);
+z8=(0.624w,0.225h); z6=(0,0);
+z5=(0.229w,0.225h);
+penpos9(1.15cap_stem,-128);
+x9l=w; y9r=-apex_o;
+filldraw z6l{dir75}..z5l..z4r{up}..z3{left}
+..z1r{dir-65} & z1r--z1l &
+z1l{dir115}...z1'---z2 & z2{dir-40}..
+z4l{down}..z5r..z6r{dir-105} & z6r--z6l &
+cycle;
+filldraw z6l{dir75}..z8{right}..z9l &
+z9l--z9r & z9r..z7{left}..z6r{dir-105} &
+z6r--z6l & cycle;
+.endchar;
+
+.cmchar "The gothic numeral 3";
+.beginchar("3",7.517u#,1.242x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(hair,0); z1=(0.177w,0.729h);
+z1'=(0.281w,0.9h); z2=(0.645w,h+apex_o);
+penpos3(1.15cap_stem,-164);
+z3=(0.837w,0.676h); penpos4(cap_hair,-90);
+z4=(0.232w,0.521h); z5=(w-1.13cap_stem,0.232h);
+z6=(w,0.303h); penpos7(cap_hair,90);
+z7l=(0.448w,-apex_o); z8=(0,0.134h);
+penpos10(hair,-45); x10l=x1;
+z10l-z8=whatever*dir57;
+filldraw z1l{up}...z1'---z2 &
+z2..{dir-74}z3l & z3l..{left}z4r &
+z4r--z4l & z4l{right}..z3r &
+z3r{dir106}..z1r{down} & z1r--z1l & cycle;
+filldraw z4l{right}..z6{down}..z7l..z8
+& z8--z10l--z10r & z10r{dir-95}..z7r..
+z5{up}..z4r{left} & z4r--z4l & cycle;
+.endchar;
+
+.cmchar "The gothic numeral 4";
+.beginchar("4",8.813u#,1.242x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(hair,-47); z2=(0,0.345h);
+z1r-z2=whatever*dir47; y1r=h;
+z2'-z1l=whatever*(z2-z1r); x2'=x2;
+penpos4(stem,-90); x4=.5[x1r,w]; y4r=y2;
+z3=whatever[z2,z1r]; y3=y4l;
+penpos7(cap_stem,0); x7r=x1r;
+y7=0.197h; z6=whatever[z2,z1r];
+x6=x7l; penpos5(hair,-30);
+x5r=w; z5r-z4r=whatever*dir55;
+penpos8(cap_hair,-90);
+z8=(0.273w,0); z9=(x8+1/3cap_stem,y8r);
+penpos10(cap_hair,-90); z10=(0.782w,0.077h);
+filldraw z2'--z1l--z1r---z7r...z10l &
+z10l--z10r & z10r{left}...z9---z8r &
+z8r--z8l{right}..z7l{up}--z6--z2--z2' &
+cycle;
+filldraw z2--z3---z4l...z5l{z5-z4r} &
+z5l--z5r--z4r--z2 & cycle;
+.endchar;
+
+.cmchar "The gothic numeral 5";
+.beginchar("5",7.332u#,1.242x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(hair,-68); penpos2(1.17cap_stem,62);
+z1=(w,h); z1r=z2r;
+penpos5(1.5cap_hair,-10); z5l=(0.354w,h+apex_o);
+penpos6(hair,-34);
+z6=(0.0707w,0.458h);
+z2'-z5l=whatever*(z5r-z5l);
+z2'=whatever[z2l,z2r];
+z4'-z2l=whatever*(z5-z2');
+z4'=whatever[z6r,z5r];
+penpos7(cap_stem,-90); z7=(0.439w,0.637h);
+z9=(w,0.394h); z8=(0.783w,0.285h);
+penpos10(1.5cap_hair,90);
+z10l=(x7,-apex_o); penpos11(1.06cap_stem,40);
+z11l=(-apex_o,0.183h); penpos12(hair,-50);
+z12l=z11r;
+z3=2/3[z5,z2'];
+penstroke z6e--z5e; filldraw z4'--z5r---
+z3...z1l & z1l--z1r--z2l--z4' & cycle;
+filldraw z6r{dir56}..z7r..z8{down}..z10r
+{left}..z12r{up} & z12r--z11r--z11l &
+z11l..z10l{right}..z9{up}..z7l..z6l{dir-124}
+& z6l--z6r & cycle;
+.endchar;
+
+.cmchar "The gothic numeral 6";
+.beginchar("6",7.332u#,1.242x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(hair,90); z1=(0.889w,h);
+penpos2(1.059cap_stem,-153);
+z2r=(0,0.465h); penpos3(1.1cap_stem,-133);
+z3r=(0.535w,-apex_o); penpos4(cap_hair,-43);
+z4r=z3; penpos5(1.059cap_stem,35);
+z5r=(w,0.387h);
+z6=(0.394w,0.549h); z7=(0.586w,0.746h);
+penpos8(cap_hair,-50);
+z7-z8l=whatever*dir40; x8=x2;
+penstroke z1e{left}..z2e..z3e;
+filldraw z4r---z3l...z5r{up}..z7 &
+z7--z8l--z8r{z7-z8l}..z6{right}..z5l{down}..
+z4l{z3r-z3l} & z4l--z4r & cycle;
+.endchar;
+
+.cmchar "The gothic numeral 7";
+.beginchar("7",7.591u#,1.242x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos4(1.765cap_stem,23); x4=0.39w;
+y4l=-hair; penpos5(hair,-45); z5r=(w,h);
+penpos1(cap_hair,-20); penpos2(cap_hair,-20);
+z1l=(0,0.729h); z2-z1=whatever*dir70;
+y2r=h; penpos3(1.078cap_stem,70);
+z3=whatever[z1,z2]; y3r=h;
+z6=(z3l--(w,y3l)) intersectionpoint
+(z4..z5{dir45});
+z3'=0.284[z3l,z6];
+filldraw z1r{z2-z1}..z3'{right} &
+z3'--z2r--z2l--z1l--z1r & cycle;
+filldraw z3l--z6..z5r--z3r--z3l & cycle;
+filldraw z4r{z3'-z4r}..z5r{dir45} &
+z5r--z5l & z5l{dir225}..z4l & z4l--z4r &
+cycle;
+.endchar;
+
+.cmchar "The gothic numeral 8";
+.beginchar("8",7.332u#,1.242x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(1.176cap_stem,-142);
+penpos2(0.824cap_stem,-147);
+penpos3(cap_hair,117);
+penpos4(0.824cap_stem,-151);
+penpos5(1.412cap_stem,-126);
+z1l=(0.465w,h+apex_o); z2l=(w-hair,0.796h);
+z3=(0.5w,0.531h); z4r=(0,0.248h);
+z5r=(2/3w,-apex_o);
+penstroke z1e{dir-10}..
+z2e{down}..z3e{dir203}..
+z4e{down}..z5e{right};
+penpos6(cap_hair,-36); z6r=z5;
+penpos7(0.824cap_stem,41); x7r=w; y7l=y4;
+z8=z3; penpos8(cap_stem,75);
+penpos9(0.853cap_stem,45);
+x9l=hair; y9=y2r; penpos10(cap_hair,-52);
+z10l=z1r; z11=(z1r..z2r{down})
+intersectionpoint ((x1l,0)--(x1l,h));
+penstroke z6e{z5l-z5r}..z7e{up}..z8e{dir165}
+..z9e{up}..z10e{z1l-z1r};
+filldraw z10r{z1l-z1r}..z11..z2r{down} &
+z2r--z2 & z2{up}..z1 & z1--z10l--z10r &
+cycle; .endchar;
+
+.cmchar "The gothic numeral 9";
+.beginchar("9",7.332u#,1.242x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(hair,90); z1=(0.889w,h);
+penpos2(1.059cap_stem,-153);
+z2r=(0,0.465h); penpos3(1.1cap_stem,-133);
+z3r=(0.535w,-apex_o); penpos4(cap_hair,-43);
+z4r=z3; penpos5(1.059cap_stem,35);
+z5r=(w,0.387h);
+z6=(0.394w,0.549h); z7=(0.586w,0.746h);
+penpos8(cap_hair,-50);
+z7-z8l=whatever*dir40; x8=x2;
+penstroke z1e{left}..z2e..z3e;
+filldraw z4r---z3l...z5r{up}..z7 &
+z7--z8l--z8r{z7-z8l}..z6{right}..z5l{down}..
+z4l{z3r-z3l} & z4l--z4r & cycle;
+transform metatopish;
+metatopish=identity
+reflectedabout ((0,0.5h),(w,0.5h));
+picture krufo;
+krufo:= currentpicture transformed
+metatopish;
+picture currentpicture;
+currentpicture=krufo;
+transform metatopish;
+metatopish=identity
+reflectedabout ((0.5w,0),(0.5w,h));
+picture krufo;
+krufo:= currentpicture transformed
+metatopish;
+picture currentpicture;
+currentpicture=krufo;
+.endchar;
+
+.cmchar "The gothic numeral 0";
+.beginchar("0",7.332u#,1.242x_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(1.059cap_stem,-143);
+penpos2(cap_stem,-140);
+penpos3(1.05cap_stem,-136);
+penpos4(1.1cap_stem,-142);
+penpos5(cap_hair,128);
+penpos6(cap_hair,127);
+z1l=(0.535w,h+apex_o); z4r=(w-x1l,-apex_o);
+z2l=(w,0.528h); x3r=0; y3=y2l+apex_o;
+z5l=z4; z6r=z1;
+penstroke z1e{dir-25}..z2e{down}..
+z5e{z4r-z4l};
+penstroke z6e{z1r-z1l}..z3e{down}..
+z4e{dir-31};
+.endchar;
diff --git a/fonts/gothic/ygoth/ygothupp.mf b/fonts/gothic/ygoth/ygothupp.mf
new file mode 100644
index 0000000000..27b06293d6
--- /dev/null
+++ b/fonts/gothic/ygoth/ygothupp.mf
@@ -0,0 +1,2399 @@
+.cmchar "The gothic letter A";
+.beginchar("A",10.65u#,1.065cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+x1=x2=.75w; y1=0.157h; y2=0.762h;
+penpos1(cap_stem,0);
+penpos2(cap_stem,0);
+penpos3(stem,-90);
+x3=x1l; y3=0.4h; x4=0.15w;
+y4=y1-cap_hair; penpos4(cap_hair,-30);
+x5=x1; z5-z4=whatever*dir60;
+penpos5(cap_hair,-30);
+penpos6(cap_hair,60);
+penpos7(cap_curve,-120);
+z7l=z5l; y6r=y3r;
+z6=whatever[z5l,z4l];
+penstroke z6e{dir150}...{dir-30}z7e;
+penstroke z4e--z5e;
+penstroke z1e--z2e;
+y3.1=y3r; y3.2=y3l;
+z3.1=whatever[z4r,z5r];
+z3.2=whatever[z4r,z5r];
+filldraw z3r--z3.1 & z3.1--z3.2
+& z3.2--z3l & z3l--z3r & cycle;
+penpos8(cap_stem,60);
+penpos9(cap_stem,60);
+y8l=0; x8l=0.45w;
+z9-z8=whatever*dir150;
+z9=whatever[z4r,z5r];
+penstroke z8e...z9e;
+y1.1=0; x1.1=0.8w;
+penpos1.2(cap_hair,-42);
+z1.2r-z1.1=whatever*dir48;
+x1.2r=w=x1.3;
+z1.3-z1.2l=whatever*(z1.2r-z1.1);
+x1.4=x1r; x1.5=x1l;
+z1.5-z8l=whatever*(z1.2r-z1.1);
+y1.4=y1.3;
+filldraw z1l--z1.1 & z1.1--z1.2r
+& z1.2r--z1.3 & z1.3--z1.2l...
+z1.4{up} & z1.4--z1r & z1r--z1l
+& cycle;
+x1.6=x1l;
+z1.6-z8r=whatever*(z1.5-z8l);
+filldraw z8l--z1.5 & z1.5--z1.6
+& z1.6--z8r & z8r--z8l & cycle;
+x5.1=x1.1;
+z5.1=whatever[z5r,z5l];
+x5.3=x5.2=w; y5.2=0.5[y5.1,h];
+y5.3=y5.2-0.5cap_hair;
+x2.1=x2l; z2.1=whatever[z4r,z5r];
+filldraw z5r--z5.1 &
+z5.1{z5.1-(0,y3l)}...{right}z5.2
+& z5.2--z5.3 & z5.3{left}...
+{down}z2r & z2r--z2l &
+z2l--z2.1 & z2.1--z5r & cycle;
+x4.1=x4; y4.1=0;
+filldraw z4l{z4l-z5l}...
+z4.1{right}...z4r{dir120} &
+z4r--z4l & cycle;
+x10=x3.2;
+y10=y2;
+x5.15=x5.1; y5.15=0.75[y2,y5.1];
+filldraw z10{z5.1-z10}...
+z2.1{right} & z2.1--z5.15 &
+z5.15{left}...z10{dir225} &
+cycle;
+transform katebasma;
+katebasma=identity
+shifted (0,-apex_o);
+%transform megalwma;
+%megalwma=identity scaled 1.065;
+picture krufo;
+%krufo= currentpicture transformed
+%megalwma;
+krufo:= currentpicture transformed
+katebasma;
+picture currentpicture;
+currentpicture=krufo;
+.endchar;
+
+
+.cmchar "The gothic letter B";
+.beginchar("B",10.72u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+x1=x2=0.39w; y2=0.85h;
+y1=y7=y18=1/6h;
+penpos1(cap_stem,0);
+penpos2(cap_stem,0);
+penstroke z1e--z2e;
+penpos3(cap_hair,0);
+penpos2'(cap_stem,180); z2'=z2;
+x3l=0; y3=y2;
+x3.5=0.5[x3,x2];
+penpos3.5(0.5[cap_hair,cap_stem],
+-90); y3.5l=h+apex_o;
+penstroke z3e{dir60}...z3.5e...
+z2'e{down};
+penpos4(1.2cap_hair,-90);
+penpos9(1.2cap_hair,-90);
+x4=x3r;
+y4r=0.56h;
+y9l=y12.2-2cap_hair=0.56h;
+z4.1-z4l=whatever*(z2r-z4r);
+y4.1=y2;
+filldraw z4r--z2r--z4.1--z4l--z4r &
+cycle;
+penpos5(1.2cap_hair,-90); z5l=z2r;
+penpos6(whatever,angle(z2r-z4r)-90);
+z6l=whatever[z4r,z5l];
+z6r-z5r=whatever*(z5l-z4r);
+y6l=h+apex_o;
+filldraw z5l--z6l--z6r--z5r--z5l
+& cycle;
+x7=0.54w; penpos7(0.9cap_hair,0);
+z8.1=whatever[z4r,z6l];
+x8.1=x7l; x8.2=x7r;
+z8.2=whatever[z4r,z6l];
+filldraw z7r--z8.2--z8.1--z7l--z7r
+& cycle;
+penpos11(1.118cap_stem,
+angle(z6l-z4r));
+z11=whatever[z4r,z6l]; x11r=x6l;
+x9l=x7l;
+z10.1-z6=whatever*(z6r-z6l);
+z10.1-z9l=whatever*(z6l-z4r);
+z10.4=whatever[z9l,z10.1];
+z10.4-z11l=whatever*(z10.1-z6);
+filldraw z10.4--z11l--z11r--z10.1
+--z10.4 & cycle;
+z10.2-z9r=whatever*(z10.1-z9l);
+z10.2=whatever[z6,z10.1];
+z12.1=whatever[z9r,z10.2];
+z12.1=whatever[z11l,z10.4];
+filldraw z9l--z10.1--z10.2--z9r
+--z9l & cycle;
+x12.2=w;
+z12.4=(x7l,y9l);
+%z12.4=whatever[z9l,z10.1];
+%x12.4=x7r;
+x12.2-x12.3=1.2cap_stem;
+z12.3-z12.4=whatever*(z12.2-z12.1);
+filldraw z12.4--z12.1--z12.2--z12.3
+--z12.4 & cycle;
+x1.1=x1l; y1.1=0.247h;
+x13.2=x1l; y13.2=0.56h;
+z13.1-z13.2=
+whatever*dir(angle(z6l-z4r)+100);
+z13.1=whatever[z4r,z5l];
+filldraw z4l{dir-30}...z1.1{down}
+& z1.1--z13.2--z13.1--z4l &
+cycle;
+unfill z4l{dir-30}...z1.1{down}
+& z1.1--(x4l,y1.1)--z4l &
+cycle;
+z15=(0,-apex_o); z17=(0.73w,-apex_o);
+x18=w; z19=(x12.3,y18);
+filldraw z15{dir80}...{right}(x1,y1.1)
+...(w,-apex_o){dir-50} &
+(w,-apex_o)--z17 & z17{dir135}...
+z15{dir225} & cycle;
+x18.2=x18.1=x12.3+cap_stem;
+y18.2=7/8[y18,y12.2];
+y18.1=1/8[y18,y12.2];
+filldraw z12.3--(x12.3,y12.2)--z12.2 &
+z12.2{left}...z18.2{down}--
+z18.1{down}...z18{right} &
+z18--(w,-apex_o)--(0.8w,-apex_o)
+--z12.3 & cycle;
+unfilldraw z17{dir60}...z18{right}
+& z18--(w,-apex_o)--z17 &
+cycle;
+unfilldraw z17{dir60}...z18{right}
+& z18--(w,-apex_o)--z17 &
+cycle;
+.endchar;
+
+.cmchar "The gothic letter C";
+.beginchar("C",11.39u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#-0.5u#);
+penpos1(0.765cap_stem,0);
+z1l=(0,0.5h);
+penpos2(cap_stem,37.5);
+z2l=(2/3w,-apex_o);
+penpos3(cap_hair,-40);
+penpos4(cap_hair,0);
+z4r-z2r=whatever*dir153;
+x4=0.5w; %x3r=x4r;
+penpos2'(cap_stem,37.5);
+x2'r=0.36w-0.5cap_stem;
+z2'-z2=whatever*(z4r-z2r);
+z4'=(x4,h); penpos4'(cap_hair,0);
+%penstroke z4e--z4'e;
+penpos2.1(cap_hair,angle(z2'-z2));
+z2.1=z2'l;
+z5=whatever[z2'l,z2'r];
+z6=whatever[z2'l,z2'r];
+x5=x4r; x6=0.86w;
+penpos5(whatever,-90);
+z5l-z2.1l=whatever*(z5-z2.1);
+penpos6(whatever,-27.5);
+z6l-z2.1l=whatever*(z6-z2.1);
+z7.1=whatever[z5l,z6l];
+x7.1=x2'r; x7.2=x7.1+1.2cap_stem;
+z7.2=whatever[z5l,z6l];
+z14'=(x2l,h);
+z3l=z14';
+penpos8.1(1.2cap_hair,-40);
+z8.1=(x7.1,0.8h);
+penstroke z2e..z2'e..z1e{up}...
+z8.1e---z3e{dir24};
+z8.2=(z1{up}..z3{dir34})
+intersectionpoint (z7.2--(x7.2,h));
+penpos12(1.2cap_stem,angle(z8.2-z8.1));
+ z12r=z14';
+%
+%
+%
+filldraw z7.1--z7.2--z8.2--z8.1--
+z7.1 & cycle;
+x7.3=x7.2+slab; y7.3=0.5[y7.1,y7.2];
+filldraw z7.1--
+z7.3 & z7.3..{z8.2-z7.2}z7.2
+& z7.2--z7.1 & cycle;
+%
+%
+%
+x9=w-slab; penpos9(cap_hair,-90);
+z9r=whatever[z2l,z2r];
+z9.1=whatever[z2.1,z2l];
+z9.1-z9l=whatever*(z2l-z9r);
+filldraw z9.1--z2l--z9r--z9l--
+z9.1 & cycle;
+z9.2=whatever[z9.1,z9l];
+x9.2=0.5[x2,x9];
+z9.4=whatever[z9.1,z9];
+z9.4=whatever[z4r,z2r];
+filldraw z7.1{z2r-z4r}..
+z9l{z9-z9.2} & z9l--z2l--z7.1
+& cycle;
+%
+%
+%
+penpos11'(cap_stem,-27.5);
+z11'l=whatever[z5l,z6l];
+y11'r=y1+0.8slab;
+z10=whatever[z6l,z6r];
+z10-z11'r=whatever*(z6r-z5r);
+z10.1=whatever[z6,z10];
+z10.2=whatever[z11'r,z10];
+x10.1=x10.2=w;
+penpos13(0.8cap_hair,angle(z6-z5));
+z13=whatever[z6r,z5r];
+z13r=z6r;
+%
+%
+%
+z13.1-z3l=whatever*(z3r-z3l);
+x13.1=x9-cap_hair;
+z13.2-z13.1=whatever*(z12r-z12l);
+z13.2-z12l=whatever*(z13.1-z3);
+filldraw z12l--z13.2--z13.1--z12r
+--z12l & cycle;
+z13.3=0.5[z13.2,z13.1];
+z13.4=1/3[z6r,z5r];
+z14=whatever[z12r,z13.1];
+y14=h+apex_o;
+penpos15(cap_hair,-90);
+x15=x9; z15r=whatever[z13.2,z13.1];
+z15.1=whatever[z12r,z13.1];
+z15.1-z15l=whatever*(z13.2-z13.1);
+filldraw z13.1--z15r--z15l--
+z15.1--z13.1 & cycle;
+%
+%
+%
+x20=x2l=x20'; y20=y2;
+z20'=whatever[z12,z13.3];
+penpos20(cap_hair,0);
+penpos20'(cap_hair,0);
+penstroke z20e--z20'e;
+z30=whatever[z13.2,z13.1];
+z30-z8.2=whatever*(z13.1-z14);
+z31=(x7.1,y7.2);
+filldraw z31{down}..z2' & z2'--
+z7.1--z31 & cycle;
+%
+%
+%
+z30'-z13.2=whatever*(z13.1-z14');
+z15r-z30'=whatever*dir(angle(z12l-z13.2)+90);
+filldraw z13.2--z30'--z15r--z13.2
+& cycle;
+.endchar;
+
+
+.cmchar "The gothic letter D";
+.beginchar("D",12.055u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(cap_stem,0);
+penpos2(cap_stem,0);
+penpos3(cap_stem,90);
+penpos4(cap_stem,90);
+z1r=(w,-apex_o); z2r=(w,h-1.5cap_stem);
+z3r=(w-1.5cap_stem,h); z4r=(0.19w,h);
+penpos5(0.5cap_hair,0);
+z5l=(0,h+2apex_o);
+penstroke z1e--z2e{up}...z3e{left}
+--z4e{left}...z5e{up};
+penpos6(0.8cap_hair,-45);
+x6l=0; y6r=-apex_o;
+z6.4=(0.83w,-apex_o);
+z6.3=(w,0.8cap_stem-apex_o);
+x6.2=0.5w; y6.2=0.28h;
+x6.1=0.433w;
+z6.1-z6l=whatever*dir30;
+filldraw z6r{dir30}...z6.4{dir-45}
+& z6.4--z6.3 & z6.3{dir140}...
+z6.2{left}...z6.1---z6l &
+z6l--z6r & cycle;
+unfilldraw z6.4{dir60}...
+(w,cap_stem){right} &
+(w,cap_stem)--(w,-apex_o)--
+z6.4 & cycle;
+unfilldraw z6.4{dir60}...
+(w,cap_stem){right} &
+(w,cap_stem)--(w,-apex_o)--
+z6.4 & cycle;
+x7=x8=0.5w; x9=x10=0.6w;
+y8=y10=y3l; y7=y9=0.225h;
+penpos7(0.9cap_hair,0);
+penpos8(0.9cap_hair,0);
+penpos9(0.9cap_hair,0);
+penpos10(0.9cap_hair,0);
+penstroke z7e--z8e;
+penstroke z9e--z10e;
+x11=x12=0.5[x9r,x1l];
+y11=0.59h; y12=0.44h;
+penpos11(0.9cap_hair,-90);
+penpos12(0.9cap_hair,-90);
+x11.1=x12.1=x9r; x11.2=x12.2=x1l;
+penpos11.1(0.9cap_hair,-90);
+penpos11.2(0.9cap_hair,-90);
+penpos12.1(0.9cap_hair,-90);
+penpos12.2(0.9cap_hair,-90);
+y11.1r=y11l=y11.2r;
+y12.1l=y12r=y12.2l;
+penstroke z11.1e...{right}z11e...
+z11.2e;
+penstroke z12.1e...{right}z12e...
+z12.2e;
+penpos6'(cap_hair,-45);
+z6'r=z6l; penpos13(0.9cap_hair,-45);
+z13-z6'l=whatever*(z6.1-z6l);
+x13=1/3cap_stem; penpos14(cap_stem,0);
+penpos15(cap_stem,0);
+penpos16(0.9cap_hair,-45);
+y14=y12; y15=y11;
+x14=x15=1/3w; z16r=z8l;
+x13.1=x14l;
+z13.1-z13r=whatever*(z6.1-z6l);
+filldraw z13r{dir45}--z13.1..
+z14r{up}--z15r{up}..z16r{dir45}
+& z16r--z16l & z16l{dir225}..
+z15l{down}--z14l{down}..z13l{dir225}
+& z13l--z13r & cycle;
+x17=0.6cap_stem; y17=y12l;
+x17.1=0.5[x17,x14l]; y17.1=1/3[y11,y12];
+filldraw z13l{dir45}..z14{up}..
+z17.1{left}..z17{down} & z17{up}..
+(x14l-2apex_o,0.5[y13.1,y15])
+{down}..
+z13l{dir225} & cycle;
+z20=(z6.3{dir140}...
+z6.2{left}...z6.1---z6l)
+intersectionpoint (z1l--z2l);
+penpos20(.5cap_stem,0);
+%filldraw z20r..z20l..cycle;
+
+.endchar;
+
+.cmchar "The gothic letter E";
+.beginchar("E",11.39u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(0.765cap_stem,0);
+z1l=(0,0.5h);
+penpos2(cap_stem,37.5);
+z2l=(2/3w,-apex_o);
+penpos3(cap_hair,-66);
+penpos4(cap_hair,0);
+z4r-z2r=whatever*dir153;
+x4=0.6w; x3r=x4r; y3r=0.9h;
+penpos2'(cap_stem,37.5);
+x2'r=0.36w-0.5cap_stem;
+z2'-z2=whatever*(z4r-z2r);
+penstroke z2e--z2'e..z1e{up}..
+z3e{dir34};
+z4'=(x4,h); penpos4'(cap_hair,0);
+penstroke z4e--z4'e;
+penpos2.1(cap_hair,angle(z2'-z2));
+z2.1=z2'l;
+z5=whatever[z2'l,z2'r];
+z6=whatever[z2'l,z2'r];
+x5=x4r; x6=0.86w;
+penpos5(whatever,-90);
+z5l-z2.1l=whatever*(z5-z2.1);
+penpos6(whatever,-27.5);
+z6l-z2.1l=whatever*(z6-z2.1);
+filldraw z5r--z6r--z6l--z5l--z5r
+& cycle;
+z7.1=whatever[z5l,z6l];
+x7.1=x2'r; x7.2=x7.1+1.2cap_stem;
+z7.2=whatever[z5l,z6l];
+x8.1=x7.1; x8.2=x7.2;
+z3-z8.1=whatever*dir24;
+z8.2=whatever[z8.1,z3];
+filldraw z7.1--z7.2--z8.2--z8.1--
+z7.1 & cycle;
+x7.3=x7.2; y7.3=0.5[y7.1,y7.2];
+filldraw z7.1{z7.2-z7.1}..{right}
+z7.3 & z7.3--z7.2--z7.1 & cycle;
+x9=w-slab; penpos9(cap_hair,-90);
+z9r=whatever[z2l,z2r];
+z9.1=whatever[z2.1,z2l];
+z9.1-z9l=whatever*(z2l-z9r);
+filldraw z9.1--z2l--z9r--z9l--
+z9.1 & cycle;
+z9.2=whatever[z9.1,z9l];
+x9.2=0.5[x2,x9];
+z9.4=whatever[z9.1,z9];
+z9.4=whatever[z4r,z2r];
+filldraw z4r{z2r-z4r}..
+z9.2{z9-z9.2} & z9.2--z9.4--z4r
+& cycle;
+penpos11'(cap_stem,-27.5);
+z11'l=whatever[z5l,z6l];
+y11'r=y1+0.8slab;
+z10=whatever[z6l,z6r];
+z10-z11'r=whatever*(z6r-z5r);
+filldraw z11'l--z11'r--z10
+--z6r--z11'l & cycle;
+z10.1=whatever[z6,z10];
+z10.2=whatever[z11'r,z10];
+x10.1=x10.2=w;
+unfilldraw z10.1--z10--z10.2--
+z10.1 & cycle;
+penpos12(whatever,angle(z8.2-z8.1));
+z12l=z3l; y12r=h;
+penpos13(0.8cap_hair,angle(z6-z5));
+z13=whatever[z6r,z5r];
+z13r=z6r; z13.2=whatever[z3r,z13l];
+y13.2=y6r;
+z13.1-z13.2=whatever*(z12r-z12l);
+z13.1-z12r=whatever*(z13.2-z3r);
+filldraw z3r--z13.2--z13.1--z12r
+--z12l--z3r & cycle;
+z13.3=0.5[z13.2,z13.1];
+z13.4=1/3[z6r,z5r];
+filldraw z13.4--z6r & z6r{up}..
+{z13.1-z13.3}z13.3 &
+z13.3--z13.2 & z13.2{down}..
+{z5r-z6r}z13.4 & cycle;
+z14=whatever[z12r,z13.1];
+y14=h+apex_o;
+filldraw z12{z12r-z12l}..{dir60}
+z14 & z14--z12r--z12 & cycle;
+penpos15(cap_hair,-90);
+x15=w; z15r=whatever[z13.2,z13.1];
+z15.1=whatever[z12r,z13.1];
+z15.1-z15l=whatever*(z13.2-z13.1);
+if x15>x13.1: filldraw z13.1--z15r--z15l--
+z15.1--z13.1 & cycle; fi
+
+
+.endchar;
+
+
+.cmchar "The gothic letter F";
+.beginchar("F",13.6u#,cap_height#,2.5u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(0.5cap_hair,0);
+y1=-d+apex_o; x1l=0;
+z2=(0.085w,0.5y1);
+penpos6(0.8cap_stem,0);
+penpos7(0.5cap_stem,0);
+penpos8(0.8cap_stem,0);
+x7=0.555w; y7=2/3u;
+z6r=z7l; z8l=z7r;
+x3=0.5x6l; y3=0;
+x4=0.75[x3,x6l]; y4=0.2y1;
+y5=-d-apex_o; x5=3/4x6l;
+x10=0.5[x6l,x6]; y10=-3/5d;
+penpos10(0.9cap_hair,-90);
+penpos9(0.8cap_stem,0);
+penpos6'(0.8cap_stem,0);
+penpos9'(0.8cap_stem,0);
+x9=x9'=x8; x6'=x6;
+y6'=y9'=0.82h; y9=0.2h;
+filldraw z1r{dir60}..z2{right}..
+z5{right}..z9r{up}--z9'r &
+z9'r--z9'l--z8l & z8l{down}..
+z10r{z10r-z8r} & z10r--z10l &
+z10l{z8l-z10l}..z6r{up}--z6'r
+& z6'r--z6'l--z6l & z6l{down}..
+z4{left}..z3{left}..z1l{dir270} &
+z1l--z1r & cycle;
+%
+% mpara
+%
+penpos11(0.9cap_stem,-90);
+penpos12(0.9cap_stem,-90);
+y11=y12=0.538h; x11=x6l; x12=x8r;
+penpos13(0.8cap_hair,-60);
+y13=y11r-0.45cap_stem;
+x13=0.127w; z11.1=whatever[z11l,z12l];
+z12.1=whatever[z11l,z12l];
+x11-x11.1=x12.1-x12=0.18w;
+z12.2=whatever[z11r,z12r];
+x12.2=0.8[x12,x12.1];
+filldraw z13r{dir45}..z11r{right}
+--z11l--z11.1--
+z13l--z13r & cycle;
+filldraw z12r--z12.2
+& z12.2--z12.1--z12l--z12r & cycle;
+%
+% panw meroc
+%
+numeric jhta; jhta:=32;
+penpos14(cap_stem,90-jhta); y14r=h+apex_o;
+x14r=x9r+cap_hair;
+penpos15(cap_stem,90-jhta); x15r=w-apex_o;
+z15r-z14r=whatever*dir(180-jhta);
+penpos17(0.8cap_hair,-jhta);
+z17r=whatever[z15l,z15r];
+x17r=w; z16=whatever[z14l,z15l];
+z9'r-z16=whatever*(z15l-z15r);
+z18=whatever[z14r,z15r];
+x18=0.75[x14r,x15r];
+filldraw z6'l{right}..z14r{z14r-z14l}
+& z14r--z18{z15r-z14r}..
+{z15r-z15l}z17l & z17l--z17r--z15l
+--z16--z9'r--z6'l & cycle;
+%
+%
+%
+z19=z6'l+(-0.4cap_hair,0.4cap_hair);
+penpos19(0.1cap_hair,45);
+z19.1=z6'l+(0,-cap_hair);
+z19.2=z6'l+(cap_hair,0);
+filldraw z19.1{up}..{z19-z6'l}z19l
+& z19l--z19r & z19r{z6'l-z19}..
+z19.2{right} & z19.2--z19.1 &
+cycle;
+%
+%
+%
+penpos20(0.5cap_stem,0);
+penpos21(0.5cap_stem,0);
+x20=x21=x7; y20=y9'-cap_hair;
+y21=y20-0.5cap_hair;
+filldraw z21l{up}..z20{right}..
+z21r{down} & z21r--z9'l--z6'r--
+z21l & cycle;
+.endchar;
+
+
+.cmchar "The gothic letter G";
+.beginchar("G",12.6u#,cap_height#,0); %prin htan 11.6u#
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(0.8cap_hair,111);
+penpos2(0.9cap_stem,-150);
+penpos3(0.8cap_hair,-57.5);
+penpos4(cap_stem,0);
+penpos5(1.765cap_stem,48);
+z1=(0.43w,0.87h); z2=(0.115w,0.318h);
+z3=(0.742w,0.141h);
+z4r=(w,0.427h);
+z6=(0.517w,-apex_o);
+y5=0.6h; x5l=x6+cap_hair;
+filldraw z1r..z2r..z6 & z6..z3r
+..z4r{up}..z5r & z5r--z5l &
+z5l{z5r-z5l}..z4l..z3l..z2l..z1l
+& z1l--z1r & cycle;
+%
+%
+%
+penpos6'(cap_hair,0);
+penpos7(cap_hair,0);
+x6'l=x7l=x6; y7=y1r;
+y6'=y6+0.5cap_stem;
+penstroke z6'e--z7e;
+penpos8(cap_hair,-42);
+penpos9(cap_hair,-42);
+z8r=z5l; z9r=whatever[z5l,z5r];
+x9r=w-slab;
+penstroke z8e--z9e;
+penpos11(cap_hair,48); z11l=z5r;
+penpos10(whatever,48);
+z10l=z1r; y10r=h+apex_o;
+z11.1=whatever[z11,z9r];
+z11.1-z10r=whatever*(z11r-z1r);
+z11.2=0.5[z10r,z11.1];
+filldraw z1r--z11r--z9r--z9l &
+z9l{z8l-z9l}..z11.2{z10r-z11.1}
+--z10r & z10r--z1r & cycle;
+%
+%
+%
+x14=0.3445w=x14';
+penpos14(1.05cap_stem,0);
+penpos14'(1.05cap_stem,0);
+penpos12(cap_hair,-60);
+penpos13(cap_hair,-60);
+z12l=z2; z13r-z12r=whatever*(z2l-z2r);
+x13r=x14r+apex_o;
+penstroke z12e--z13e;
+z14.1=whatever[z12l,z13l];
+x14.1=x14l; y14=y13r;
+y14'=h;
+z15=(z1r..z2r..z6)
+intersectionpoint (z14l--z14'l);
+x15.05=x15; y15.05=0.5[y15,y1];
+z15'=whatever[z1,z15.05];
+x15'=0.5[x15,x1];
+x13.1=x14r; y13.1=y13l+cap_hair;
+filldraw z2l{z2l-z2r}..z14l{up}
+& z14l--z15--z15'--z1r--z13.1
+& z13.1{down}..z13r & z13r--z12r
+--z2l & cycle;
+%
+% grammoulec
+%
+z20=(z5l{z5r-z5l}..z4l..z3l..
+z2l..z1l) intersectionpoint
+(z6'r--(x6'r,1/3h));
+y16=2/3[y20,y8r];
+y18=1/3[y20,y8r];
+x16=x18=x20;
+penpos16(cap_hair,-90);
+penpos17(cap_hair,-90);
+penpos18(cap_hair,-90);
+penpos19(cap_hair,-90);
+x17=x19=0.5[x4l,x4];
+z17-z16=whatever*(z13-z12);
+z19-z18=whatever*(z13-z12);
+penstroke z18e--z19e;
+penstroke z16e--z17e;
+%
+%
+%
+z21=whatever[z6'l,z7l];
+z21=whatever[z11r,z1r];
+filldraw z1l{dir21}...z21{z11r-z21}
+& z21--z10l--z1l & cycle;
+.endchar;
+
+
+.cmchar "The gothic letter H";
+.beginchar("H",11.444u#,cap_height#,2.61u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(0.45cap_stem,0);
+penpos2(0.9cap_stem,0);
+penpos3(0.9cap_stem,0);
+x1=0.367w; z2r=z1l; z3l=z1r;
+y1=0.323h;
+penpos4(0.9cap_stem,0);
+penpos5(0.9cap_stem,0);
+x4=x3; x5=x2; y5=0.706h;
+y4=0.8h;
+penstroke z2e--z5e;
+penstroke z3e--z4e;
+penpos6(0.6cap_hair,-90);
+penpos7(cap_hair,-90);
+x6=5/6[x4l,x4r]; x7=0.84w;
+y6l=y7l=h;
+penstroke z5e{up}..z6e{right};
+penstroke z4e{up}..z7e{right};
+%
+%
+%
+penpos8(cap_hair,-90);
+z10=(x2r,0.426h); z9-z10=whatever*dir45;
+x9=x7; z8l=whatever[z10,z9];
+x8=x4r;
+penpos10'(1.12cap_stem,angle(z9-z8l));
+z10'r=z9; penpos11(cap_stem,0);
+x11r=w; y11=y10;
+penpos12(cap_hair,-45);
+y12l=0; x12l=0.607w;
+penstroke z12e{dir45}..z11e{up}..z10'e;
+z10''-z8r=whatever*(z10'-z8l);
+x10''=x10';
+filldraw z8l--z10'--z10''--z8r--
+z8l & cycle;
+%
+% dexi stroggulo
+%
+penpos12'(0.9cap_stem,0);
+x12'=x12l; y12'=-d-apex_o+0.45cap_stem;
+filldraw z12l{dir225}..z12'l{down}
+..z12'r{up}..z12r{z12l-z12r}
+& z12r--z12l & cycle;
+%
+% aristero stroggulo
+%
+penpos13(0.9cap_stem,90);
+y13=-apex_o-0.45cap_stem;
+x13=0.5cap_hair+0.45cap_stem;
+x13'=x13-apex_o; y13'=-apex_o;
+x14=0; y14=2/3y13;
+x15=x13; x16=x2l;
+penpos20(0.6cap_hair,-90);
+y20r=0.1636h; x20=2/3[x2l,x2r];
+y16=0.5[y20r,y2]; y15=0.5[y14,y16];
+x17=x3r; y17=2/3[y20r,y3];
+z18=(x3l,y20r); z19=(x12',y18);
+penpos21(cap_hair,-90);
+y21r=y19+apex_o; x21=x9-0.7cap_stem;
+z23=(x20,0.5y19);
+z22'=whatever[z3l,z18];
+z22'-z21r=whatever*(z10-z9);
+z22=(z13'..z23{right}..z12'r)
+intersectionpoint (z21r--z22');
+%
+filldraw z13'..z23{right}..z22
+& z22--z21r--z21l & z21l{z22-z21r}
+..z19{left}--z18 & z18--z17--z3r
+--z3l & z3l{down}..z20r{dir215}
+& z20r--z20l & z20l{z1-z20l}..
+z2r{up} & z2r--z2l--z16 &
+z16{down}..z15..z14{down}..
+z13l{right}..z13r{left}--z13'
+& cycle;
+%
+% pterugia
+%
+penpos24(0.5cap_hair,0);
+penpos25(0.75cap_stem,-90);
+penpos26(0.62cap_stem,-90);
+x24l=0; y25l=h+apex_o;
+y26=0.5[y24,y25l];
+y24=0.85h; x25=1/8w; x26=0.271w;
+penstroke z24e{up}..z25e{right}..
+z26e..z6e{right};
+x27=0; y27=0.547h; y28=2/3[y27,y5];
+x28=0.5x5l; x30=x29=x5l; y29=5/6[y27,y28];
+y32=y2;
+x30-x32=min(cap_stem,x30-0.5cap_hair);
+x31=0.5[x32,x30]; y31=y10;
+y30=3/3[y32,y31];
+x33=0.43[x32,x30]; y33=1/5[y32,y31];
+filldraw z16{up}..z33..z32 &
+z32{up}..z31..z30 &
+z30{up}..z27{left} &
+z27{up}..z28..z29{dir-30} & z29--z16
+& cycle;
+%
+% grammoulec
+%
+penpos34(0.8cap_hair,-90);
+penpos35(0.8cap_hair,-90);
+penpos36(0.8cap_hair,-90);
+penpos37(0.8cap_hair,-90);
+penpos38(0.8cap_hair,-90);
+penpos39(0.8cap_hair,-90);
+x34=x35=x17; x36=x37=w-cap_stem;
+x38=x39=1/2[x34,x36];
+y34l=y36r=y27;
+y38l=y34r; y39r=y35l;
+y35r=y37l=y32;
+penstroke z34e..z38e..z36e;
+penstroke z35e..z39e..z37e;
+
+.endchar;
+
+
+.cmchar "The gothic letter I";
+.beginchar("I",10.555u#,cap_height#,2.167u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos2(1/3cap_stem,-58);
+y2r=-d-apex_o; x2r=0.321w;
+x3=0.442w; y3=-apex_o;
+penpos4(1/3cap_stem,-53); y4l=0;
+x4l=0.637w; x5=0.579w;
+y5=0.144h; penpos5(0.7cap_stem,0);
+y5.1=y5.4=0.386h; y5.2=y5.3=0.45h;
+penpos6(1/3cap_stem,-51);
+penpos7(1/3cap_stem,-30);
+y6r=y7r=0.83h; x7r=x5.4=0.86w;
+x5.3=x5.4-0.9cap_stem;
+x5.1=x3; x5.2=x5.1+0.9cap_stem;
+x6r=0.758w;
+penpos8(0.5cap_hair,-45);
+z8=(w,h);
+filldraw z2r..z5r..z5.2..z6r..z8r
+& z8r--z8l & z8l..z6l..z5.1..z5l..
+z3..z2l & z2l--z2r & cycle;
+filldraw z2r..z4r..z5.4..z7r..
+z8r & z8r--z8l & z8l..z7l..z5.3
+..z4l..z2l & z2l--z2r & cycle;
+%
+% panw meroc
+%
+penpos9(cap_hair,0); x9l=0;
+y9=y6r; penpos10(0.88cap_stem,-90);
+y10l=h+apex_o; x10=0.276w;
+penpos11(cap_stem,-90);
+y11r=y9; x11=x5.2;
+penstroke z9e{up}..z10e..z11e..
+z8e;
+%
+% mpalla
+%
+penpos12(cap_stem,90); x12=0.134w;
+y12r=y9-apex_o;
+filldraw z12r..z12l..cycle;
+filldraw z12l{left}..z9l{up} &
+z9l--z9r & z9r{down}..z12{right}
+& z12--z12l & cycle;
+%
+% katw meroc
+%
+penpos1(cap_hair,0); z1=(0,-d);
+z13=(0.279w,0.031h);
+filldraw z1r..z2r{z2r-z2l} &
+z2r--z3 & z3..z13{left}..z1l{down}
+& z1l--z1r & cycle;
+%
+% pterugia
+%
+x14=0.5[x5.1,x5.2]; y14=y15=y5.2;
+x15=x17=0.2w; y17=1/4h;
+x18=1/2[x17,x5l]; y18=1/4[y17,y5.1];
+filldraw z15{dir77}..z14--z5l
+& z5l{up}..z18..z17 &
+z17{dir76}..z5.1{right} &
+z5.1..z15{dir198} & cycle;
+.endchar;
+
+
+.cmchar "The gothic letter J, which is the same as I";
+.beginchar("J",10.555u#,cap_height#,2.167u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos2(1/3cap_stem,-58);
+y2r=-d-apex_o; x2r=0.321w;
+x3=0.442w; y3=-apex_o;
+penpos4(1/3cap_stem,-53); y4l=0;
+x4l=0.637w; x5=0.579w;
+y5=0.144h; penpos5(0.7cap_stem,0);
+y5.1=y5.4=0.386h; y5.2=y5.3=0.45h;
+penpos6(1/3cap_stem,-51);
+penpos7(1/3cap_stem,-30);
+y6r=y7r=0.83h; x7r=x5.4=0.86w;
+x5.3=x5.4-0.9cap_stem;
+x5.1=x3; x5.2=x5.1+0.9cap_stem;
+x6r=0.758w;
+penpos8(0.5cap_hair,-45);
+z8=(w,h);
+filldraw z2r..z5r..z5.2..z6r..z8r
+& z8r--z8l & z8l..z6l..z5.1..z5l..
+z3..z2l & z2l--z2r & cycle;
+filldraw z2r..z4r..z5.4..z7r..
+z8r & z8r--z8l & z8l..z7l..z5.3
+..z4l..z2l & z2l--z2r & cycle;
+%
+% panw meroc
+%
+penpos9(cap_hair,0); x9l=0;
+y9=y6r; penpos10(0.88cap_stem,-90);
+y10l=h+apex_o; x10=0.276w;
+penpos11(cap_stem,-90);
+y11r=y9; x11=x5.2;
+penstroke z9e{up}..z10e..z11e..
+z8e;
+%
+% mpalla
+%
+penpos12(cap_stem,90); x12=0.134w;
+y12r=y9-apex_o;
+filldraw z12r..z12l..cycle;
+filldraw z12l{left}..z9l{up} &
+z9l--z9r & z9r{down}..z12{right}
+& z12--z12l & cycle;
+%
+% katw meroc
+%
+penpos1(cap_hair,0); z1=(0,-d);
+z13=(0.279w,0.031h);
+filldraw z1r..z2r{z2r-z2l} &
+z2r--z3 & z3..z13{left}..z1l{down}
+& z1l--z1r & cycle;
+%
+% pterugia
+%
+x14=0.5[x5.1,x5.2]; y14=y15=y5.2;
+x15=x17=0.2w; y17=1/4h;
+x18=1/2[x17,x5l]; y18=1/4[y17,y5.1];
+filldraw z15{dir77}..z14--z5l
+& z5l{up}..z18..z17 &
+z17{dir76}..z5.1{right} &
+z5.1..z15{dir198} & cycle;
+.endchar;
+
+.cmchar "The gothic letter K";
+.beginchar("K",13.111u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+z1=(0,0); x2=1/3w; x3=0.37w;
+x4=0.40w; x5=0.52w; x6=0.614w;
+y2=0.3h; y3=0.506h; y4=0.7h;
+y5=0.886h;
+penpos1(cap_hair,-63);
+penpos2(cap_stem,-23);
+penpos3(cap_stem,-10);
+penpos4(0.765cap_stem,-21);
+penpos5(1/3cap_stem,-41);
+penpos6(cap_hair,-58);
+penpos1'(0.05cap_hair,-63);
+z1'l=z1l;
+y6l=h+apex_o;
+penstroke z1'e..z2e..z3e..z4e..
+z5e..z6e{dir32};
+penpos7(cap_hair,-33);
+penpos8(0.88cap_stem,-115);
+x7=slab; x8=0.26w; x8.1=0.345w;
+x8.2=0.466w; y7=0.785h; y8=0.919h;
+y8.1=0.796h; y8.2=0.92h;
+filldraw z7r..z8r..z8.1..z6l{dir32} &
+ z6l{dir212}..z8.2..z8l..z7l
+& z7l--z7r & cycle;
+penpos10(cap_hair,-23);
+penpos10'(1.5cap_hair,-23);
+penpos11(cap_hair,-10);
+penpos11'(1.5cap_hair,-10);
+penpos12(cap_hair,-21);
+penpos12'(1.5cap_hair,-21);
+penpos13(cap_hair,-41);
+penpos13'(cap_hair,-41);
+penpos14(cap_hair,-58);
+penpos9(cap_hair,-65);
+z2r=z10'l; z10'r=z10l;
+z3r=z11'l; z11'r=z11l;
+z4r=z12'l; z12'r=z12l;
+z5r=z13'l; z13'r=z13l;
+x14=0.684w; x9=0.3w; y14l=h;
+y9r=0.06h;
+penstroke z9e..z10e..z11e..z12e
+..z13e..z14e;
+%
+%
+%
+x15=x10r; y15=0.1w;
+penpos15(0.8cap_stem,-90);
+penpos16(1.176cap_stem,-126.5);
+y16r=-apex_o; x16l=x14;
+filldraw z1r..z9r..z15r..z16r
+& z16r--z16l & z16l..z15l{left}
+..z1l
+& z1l--z1r & cycle;
+%
+% panw podi
+%
+penpos17(cap_hair,-60);
+penpos18(cap_hair,-60);
+z18r=z12r; z17l=z11r;
+x20=0.773w;
+penpos20(cap_hair,-60);
+penpos19(cap_hair,-60);
+z20-z18=whatever*dir30;
+z19-z17=whatever*(z20-z18);
+z19=whatever[z20l,z20r];
+z17''=whatever[z17r,z19r];
+x17''=0;
+z17'=(z9..z10..z11..z12..z13..z14)
+intersectionpoint (z17''--z19r);
+filldraw z17'--z11--z11r--z17r--
+z17' & cycle;
+penstroke z18e--z20e;
+penstroke z17e--z19e;
+penpos21(cap_stem,angle(z19-z17));
+penpos22(cap_stem,angle(z19-z17));
+z21=2/3[z17,z19];
+z22-z21=whatever*(z20l-z20r);
+z22=whatever[z18,z20];
+penstroke z21e--z22e;
+%
+% katw podi
+%
+penpos22'(1.09cap_stem,angle(z19-z17));
+penpos23(1.09cap_stem,angle(z19-z17));
+penpos24(1.09cap_stem,angle(z19-z17));
+z22'l=z17r; x23=x14; y23=y17r;
+x24=0.82w; y24=y16l;
+penstroke z22'e{z22'r-z22'l}..
+z23e{z24-z23}--z24e;
+z25=(0.86w,-apex_o);
+penpos26(cap_hair,-90);
+z26r-z25=whatever*(z16l-z16r);
+x26=w;
+filldraw z24r{z24-z23}..
+z26l{z26r-z25} & z26l--z26r &
+z26r--z25 & z25{left}..z24l
+{z23-z24} & z24l--z24r & cycle;
+penpos27(cap_hair,angle(z16l-z16r)-90);
+z27r=z16;
+z29=whatever[z23,z24];
+z29-z16=whatever*(z16l-z16r);
+z28=whatever[z23,z24];
+z28-z27l=whatever*(z29-z16);
+filldraw z27r--z29--z28--z27l--
+z27r & cycle;
+%
+% pterugia
+%
+z2''=z2; penpos2''(0.7cap_hair,
+angle(z2r-z2l));
+x27.1=x8r; y27.1=y10;
+x28.1=0.093w+cap_hair; y28.1=0.377h;
+x29.1=0.127w+cap_hair; y29.1=0.605h;
+filldraw z1l{z10-z1}..z27.1{up}..
+z28.1{left} & z28.1{dir60}..z2''r
+& z2''r--z2''l &
+ z2''l..z29.1{left} & z29.1{dir60}..
+z3 & z3--z2..z1r{z1-z10} &
+ z1r--z1l & cycle;
+
+
+.endchar;
+
+
+.cmchar "The gothic letter L";
+.beginchar("L",11.27u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+z1=(0,0); x2=0.43w; x3=0.46w;
+x4=0.495w; x5=0.66w; x6=0.74w;
+y2=0.31h; y3=0.515h; y4=0.71h;
+y5=0.933h;
+penpos1(cap_hair,-67.5);
+penpos2(cap_stem,-10);
+penpos3(1.06cap_stem,-7.5);
+penpos4(0.823cap_stem,-9);
+penpos5(1/3cap_stem,-36);
+penpos6(cap_hair,-55);
+penpos1'(0.05cap_hair,-67.5);
+z1'l=z1l;
+y6l=h+apex_o;
+penstroke z1'e{dir22.5}..z2e..z3e..z4e..
+z5e..z6e{dir35};
+penpos7(cap_hair,-30);
+penpos8(0.85cap_stem,-100);
+x7=1/8w; x8=0.35w; x8.1=x3;
+x8.2=0.625w; y7=0.77h; y8l=h+apex_o;
+y8.1=0.86h; y8.2=0.955h;
+filldraw z7r..z8r..z8.1..z6l{dir35} &
+ z6l{dir215}..z8.2..z8l..z7l{dir240}
+& z7l--z7r & cycle;
+penpos10(0.56cap_stem,-14);
+penpos10'(1.4cap_hair,-14);
+penpos11(0.91cap_stem,-7.5);
+penpos11'(1.5cap_hair,-7.5);
+penpos12(0.82cap_stem,-9);
+penpos12'(1.3cap_hair,-9);
+penpos13(0.56cap_stem,-36);
+penpos13'(0.7cap_hair,-36);
+penpos14(0.75cap_hair,-90);
+penpos9(cap_hair,-90);
+z2r=z10'l; z10'r=z10l;
+z3r=z11'l; z11'r=z11l;
+z4r=z12'l; z12'r=z12l;
+z5r=z13'l; z13'r=z13l;
+x14=w-slab; x9=0.325w; y14l=h-slab;
+y9r=0.085h;
+penstroke z9e..z10e..z11e..z12e
+..z13e..z14e{right};
+%
+%
+%
+x15=x5r; y15=0.134w;
+penpos15(0.82cap_stem,-90);
+penpos16(1.06cap_stem,-126.5);
+y16r=-apex_o; x16l=x14;
+penpos30(cap_hair,angle(z16l-z16r)-90);
+z30r=whatever[z16l,z16r];
+x30r=w+apex_o;
+filldraw z1r..z9r..z15r..z16r
+& z16r--z30r--z30l
+& z30l{z16r-z16l}..z15l{left}
+..z1l
+& z1l--z1r & cycle;
+%
+%
+% pterugia
+%
+z2''=z2; penpos2''(0.7cap_hair,
+angle(z2r-z2l));
+z27.1=(z1l{dir22.5}..z2l..z3l..
+z4l..z5l..z6.)
+intersectionpoint (z9r--(x9r,h));
+x28.1=x7r+cap_hair; y28.1=0.4h;
+x29.1=x7r+0.5cap_hair; y29.1=0.58h;
+filldraw z27.1{up}..
+z28.1{left} & z28.1{dir60}..z2''r
+& z2''r--z2''l &
+ z2''l..z29.1{left} & z29.1{dir60}..
+z3 & z3--z2--z27.1 & cycle;
+%
+%
+%
+
+.endchar;
+
+.cmchar "The gothic letter M";
+.beginchar("M",16.39u#,cap_height#,2u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+numeric theta; theta=-45;
+penpos1(cap_stem,0);
+penpos2(cap_stem,0);
+penpos3(cap_stem,0);
+penpos4(cap_stem,0);
+penpos4''(cap_stem,0);
+z4''=(x4,y4+cap_hair);
+penpos5(2/3cap_stem,0);
+penpos7(2/3cap_stem,0);
+x1=x3=0.525w;
+x2=x4=0.86w;
+x5=x7=1/4w;
+y1=y2=y5=0.2h;
+y3=0.7h; y4=0.7h; y7=0.623h;
+penstroke z5e--z7e;
+penstroke z1e--z3e;
+penstroke z2e--z4e;
+penpos6(cap_hair,0);
+penpos6'(1.5cap_hair,0);
+penpos8(cap_hair,0);
+penpos8'(1.5cap_hair,0);
+z6'l=z5r; z6l=z6'r;
+z8'l=z7r; z8l=z8'r;
+penstroke z6e--z8e;
+penpos11(cap_hair,-90);
+z11=z3r; penpos1'(1.7cap_stem,0);
+x1'=x1; y1'=0.5y1;
+z14=(0.534w,-apex_o);
+penpos13(cap_hair,0);
+x13=0.5[x1r,x2l]; z13'=z13;
+y13=y1; penpos13'(cap_hair,90-theta);
+penpos15(cap_hair,90-theta);
+z15l=whatever[z14,z13'l];
+x15r=0.5[x13,x2l];
+z15'=whatever[z1'l,z14];
+z15'=whatever[z13'r,z15r];
+filldraw z1l{down}..z1'l{left}
+& z1'l--z14--z1'r &
+z1'r{left}..z1r{up} &
+z1r--z1l & cycle;
+filldraw z15'--z14--z15l--
+z15r--z15' & cycle;
+z13.1=whatever[z13l,z15'];
+x13.1=x1r;
+z13.2=0.5[z13.1,z13l];
+filldraw z1r{down}..
+z13.2{z15r-z15'} & z13.2--
+z14--z1'--z1r & cycle;
+y12=h+apex_o;
+z12-z11l=whatever*(z15r-z14);
+x11.1=x13r;
+z11.1-z11=whatever*(z12-z11l);
+z11.2=whatever[z11,z11.1];
+ x11.2=x13l;
+filldraw z13r--z11.1--z11.2
+--z13l--z13r & cycle;
+z11.3=0.5[z11.1,z11.2];
+z16-z12=whatever*(z4l-z11.3);
+z16-z4''r=whatever*(z12-z11l);
+penpos18(cap_hair,theta);
+z18r=whatever[z4''r,z16];
+x18r=w-apex_o;
+penpos18'(cap_hair,theta);
+z18'r=z4''r;
+penstroke z18'e--z18e;
+z11.4-z11r=whatever*(z11.3-z11);
+z11.4-z4''l=whatever*(z12-z16);
+filldraw z11r--z11.4--z4''l--
+z4''r--z16--z12--z11l--z11r &
+cycle;
+z9=(0.271w,0.8h+cap_hair);
+%z17-z9=whatever*(z12-z11l);
+y17=h+apex_o;x180=x11;
+y180=y11+cap_stem;
+z180-z17=whatever*(z16-z12);
+penpos19(cap_hair,-90);
+penpos19'(cap_hair,-60);
+x19=x19'=x17;
+y19=y19'=0.9h+cap_hair;
+z3'=z3l+(0,-3cap_hair);
+%x20=0.5[x6r,x1l];
+%y20=3/4[y8,y19];
+z20=(z8r{up}..z19'r)
+intersectionpoint
+((0,y9-cap_hair)--
+(w,y9-cap_hair));
+filldraw z8r{up}..z20
+..z19'r & z19'r--z19'l &
+z19'l..z8l{down} &
+z8l--z8r & cycle;
+filldraw z7r{up}..z19r &
+z19r--z19l & z19l--z17---z9...z7l{down}
+& z7l--z7r & cycle;
+%
+%
+%
+filldraw z3l{up}
+..z9{z9-z17}
+& z9--z17--z180--z3r--z3l
+& cycle;
+z21=(x2l,y1');
+z22-z21=whatever*(z14-z1'l);
+y22=y14;
+penpos23(cap_hair,-45);
+z23r-z22=whatever*dir45;
+x23r=w;
+filldraw z2l--z21--z22--
+z23r--z23l & z23l{z22-z23r}..
+{up}z2r & z2r--z2l & cycle;
+y24=y26=0.462h-0.4cap_stem;
+y25=y27=y24+0.8cap_stem;
+x25=x1l-0.15cap_stem;
+x27=x13r+0.6cap_stem;
+x24=x1l-0.6cap_stem;
+x26=x13r+0.15cap_stem;
+filldraw z24--z25--z27--z26--
+z24 & cycle;
+z10=(0,-d); penpos10(cap_hair,0);
+penpos30(cap_stem,-90);
+x30=x5l;
+y30r=2/3y10;
+penpos31(0.5cap_stem,-90);
+x31=0.5[x10,x5]; y31r=0;
+penstroke z10e{up}..z31e{right}..
+z5e{up};
+penstroke z10e{up}..z30e{right}
+..z6e{up};
+y33=y24; z31'=z31+(2cap_hair,0);
+z34=(z9{z9-z17}..z31'{down})
+intersectionpoint
+((0,y25)--z25);
+y32=y33-0.5cap_hair;
+x32=2cap_hair; x33=0.5[x32,x34];
+%
+%
+%
+filldraw z5l{up}..z33..z32
+& z32{up}..z34{right} &
+z34{dir80}..z9{z17-z9} & z9--z5l
+& cycle;
+filldraw z4''l--z4''r--z4r--z4l--z4''l
+& cycle;
+.endchar;
+
+.cmchar "The gothic letter N";
+.beginchar("N",12.78u#,cap_height#,2u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(cap_hair,0); z1l=(0,-d);
+penpos2(cap_stem,0); x2=0.323w;
+y2=0.43h; y3=0.834h;
+x5=0.572w; x3=x2l;
+y5=h+apex_o; z4=whatever[z3,z5];
+x4=x2r; y6=y3; x6=0.7w;
+penpos6(cap_stem,47);
+z7=(0.753w,0.533h);
+%z8=(0.893w,0.646h);
+z8=(0.893w,0.6h);
+z8'=(0.57w,y3);
+penpos9(2/3cap_stem,-22);
+x9=0.77w; y9=y2;
+penpos10(cap_hair,-35);
+z10=(0.557w,-0.556d);
+penpos11'(1.5cap_amount,0);
+penpos11(cap_hair,0);
+z12.1=whatever[z3,z5];
+z12.2=whatever[z3,z5];
+z12.3=whatever[z3,z5];
+z11'l=(x2r,0.2h);
+z11l=z11'r;
+x12.1=x4; x12.2=x11'r;
+x12.3=x11r; z3'=(x2,y3);
+filldraw z2l--z3--z4--z2r--z2l &
+cycle; filldraw
+z5{dir-31}..z8{down}..z10r{dir234} &
+z10r--z10l & z10l{dir54}..z7{up}
+..z8'..z3' & z3'--z3--z5 & cycle;
+filldraw z11l--z12.2--z12.3--
+z11r--z11l & cycle;
+z14=(0.275w,-0.5cap_amount);
+penpos14(1.08cap_stem,-90);
+penstroke z1e{up}..z14e{right}..z11e{up};
+penpos15(2/3cap_stem,0);
+z15r=z11'l;
+penstroke z1e{up}..z15e{up}..
+z2e{up};
+penpos13(1.32cap_stem,-121);
+z13r=(x8-0.5cap_amount,-apex_o);
+penstroke z10e{dir54}..z13e{dir-30};
+penpos16(cap_hair,-31);
+z16r=whatever[z13r,z13l];
+x16r=w;
+penpos16'(cap_hair,-31);
+z16'r=z13r;
+penstroke z16'e--z16e;
+penpos20(cap_hair,-90);
+penpos21(cap_hair,-90);
+penpos22(cap_hair,-90);
+penpos23(cap_hair,-90);
+penpos24(cap_hair,-90);
+penpos25(cap_hair,-90);
+z23=(x11r,y2); x20=x23;
+x22=x25=x7;
+x21=x24=0.5[x23,x25];
+y21=y24+cap_stem; y21l=y20r;
+y24r=y23l; y25l=y24r;
+y22r=y20l;
+penstroke z20e..z21e..z22e;
+penstroke z23e..z24e..z25e;
+z26=(0.083w,0.623h);
+filldraw (x2l,0.48h){up}..z26 &
+z26{dir40}..(x2r,0.48h){down} &
+(x2r,0.48h)--(x2l,0.48h) &
+cycle;
+z27=(x26,0.47h);
+filldraw z15l{up}..z27{left} & z27{dir40}
+..z2r & z2r--z15l & cycle;
+z28=(x26+0.5cap_amount,0.265h);
+filldraw z15l{up}..z28{dir210} &
+z28{dir60}..(x15r,y28) & (x15r,y28)--
+z15l & cycle;
+.endchar;
+
+.cmchar "The gothic letter O";
+.beginchar("O",12.86u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(cap_stem,-90);
+x1=0.6w; y1r=-apex_o;
+penpos2(0.8cap_stem,180);
+y2=0.467w; x2r=0;
+penpos7(0.8cap_stem,0); y7=0.53h;
+x7r=w; penpos5(cap_hair,0);
+z5r=z1;
+x4.1=x1-cap_hair; y4.1=h;
+z4.2=(z7r{up}..z4.1{dir158})
+intersectionpoint
+((x1,0)--(x1,h));
+z3.1=(0.0756w,0.628h);
+z3.1-z3.2=whatever*(z4.1-z4.2);
+z3.2-z4.2=whatever*(z3.1-z4.1);
+z3.3=whatever[z3.2,z4.2];
+x3.3=0.216w;
+penstroke z2e{down}..z1e{dir-16};
+filldraw z2l{up}...z3.3{z4.2-z3.3}
+---z4.2 & z4.2--z4.1 &
+z4.1---z3.1...z2r{down} &
+z2r--z2l & cycle;
+filldraw z5r--z4.2--z4.1--z5l--
+z5r & cycle;
+%
+%
+%
+penpos1'(cap_hair,-90);
+z1'r=z1;
+penpos2'(0.4cap_stem,180);
+z2'r=z2;
+penpos6(1.1cap_stem,63);
+z6r=(x4.1-cap_hair,h+apex_o);
+penpos8(cap_hair,angle(z4.2-z3.2)-90);
+z8=(0.78w,0.161h);
+filldraw z1l{dir-16}...
+z8l{z4.2-z3.2}..
+z7l{up}..z6l{left} & z6l--z6r &
+z6r..z7r{down}...
+z8r{z3.2-z4.2}..{dir-117}z1r &
+z1r--z1l & cycle;
+z10=(z2l{down}..z1l{dir-16})
+intersectionpoint ((0.3w,0)--
+(0.3w,h));
+z11-z10=whatever*(z4.1-z3.1);
+x11=x10+cap_stem;
+z12=whatever[z3.2,z4.2];
+z13=whatever[z3.2,z4.2];
+x12=x10; x13=x11;
+filldraw z10--z11--z13--z12--z10
+& cycle;
+z15'=whatever[z10,z11];
+x15'=0;
+z15=(z2r{down}..z1r{dir-16})
+intersectionpoint
+(z15'--z11);
+penpos15''(0.1cap_hair,-90);
+z15''r=z15;
+z14=(x10,0.5[y10,y2]);
+filldraw z15''l{z11-z10}..z14{up}
+& z14--z10 & z10--z15''r &
+z15''r--z15''l & cycle;
+z16=whatever[z4.1,z3.1];
+z17=whatever[z4.1,z3.1];
+y17=y6l; x16=x11;
+filldraw z6l{left}--z17 &
+z17---z16...z6r{z6r-z6l} &
+z6r--z6l & cycle;
+z11.1=whatever[z10,z11];
+x11.1=x11+2/3cap_hair;
+z11.2=(x11,y2);
+filldraw z11.2{down}..z11.1 &
+z11.1--z11--z11.2 & cycle;
+%
+% 2 grammoulec
+%
+penpos20(cap_hair,-90);
+penpos21(cap_hair,-90);
+penpos22(cap_hair,-90);
+penpos23(cap_hair,-90);
+z22r=(x1,y2); z20r=(x1,0.29h);
+z23'-z22r=whatever*(z3.2-z4.2);
+z21'-z20r=whatever*(z3.2-z4.2);
+x21'=x23'=0;
+z23''=whatever[z23',z22r];
+z21''=whatever[z21',z20r];
+x21''=x23''=w;
+z23r=(z8{z4.2-z3.2}..z7{up}..
+z6) intersectionpoint
+(z23'--z23'');
+z21r=(z8{z4.2-z3.2}..z7{up}..
+z6) intersectionpoint
+(z21'--z21'');
+penstroke z22e--z23e;
+penstroke z20e--z21e;
+.endchar;
+
+.cmchar "The gothic letter P";
+.beginchar("P",12.33u#,cap_height#,2.72u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos4(cap_stem,0);
+z4r=(0.48w,-d);
+penpos4'(0.5cap_stem,-90);
+z4'r=z4l;
+penpos6(4/3cap_amount,0);
+penpos5(cap_hair,0);
+z6l=z4r; z5l=z6r;
+penpos4''(0.5cap_stem,-90);
+z4''r=z5r;
+penpos3(cap_stem,0);
+penpos7(cap_hair,0);
+x3=x4; x7=x5;
+y3=0.8h; y7=h;
+penstroke z4e--z3e;
+penstroke z5e--z7e;
+penstroke z4'e--z4''e;
+penpos17(cap_hair,90); x17=x5r;
+y17=y3;
+y18=y17; x18=x17+1.5cap_amount;
+y16=h+apex_o; x16=0.765w;
+penpos19(1.06cap_stem,43);
+y19=y18+1/4cap_amount;
+x19=0.8w;
+penpos20(cap_stem,0);
+x20r=w; y20=0.423h;
+x15=0.9685w; y15=0.193h;
+z13=(0.8w,-apex_o);
+z14=0.5[z13,z15]+(0,3/4cap_amount);
+penpos12(0.85cap_stem,-90);
+x12=x4; y12=0.175h;
+z11=(0.23w,0.242h);
+z10=(x11-0.3cap_amount,y11-0.8cap_stem);
+penpos9(cap_hair,0);
+z9=(0.108w,0);
+penpos19.5(1.09cap_stem,22);
+x19.5=0.63[x19,x20];
+y19.5=0.433[y19,y20];
+filldraw z17r--z16 & z16..
+z19.5r..z20r..z15 & z15..z14..z13 &
+z13..z20l{dir94}..z19l{dir125}..z18..z17l &
+z17l--z17r & cycle;
+z14'=(z9l{dir82}..z11..
+z12l..z14) intersectionpoint
+(z13..z20l{dir94}..
+z19l{dir123}..z18..z17l);
+z14.5=0.5[z14',z14];
+filldraw z9l{dir82}..z11..z12l..z14.5
+& z14.5--z13 & z13..z12r..z10..
+z9r{dir262} & z9r--z9l & cycle;
+unfilldraw (x6l,0)--(x6l,y20)--
+(x6r,y20)--(x6r,0)--(x6l,0) &
+cycle;
+penpos1(cap_hair,0);
+z1l=(0,y3);
+z1'=(0.5[x1r,x3l],y1+3cap_amount);
+z2=0.5[z3r,(x3r,h+apex_o)];
+z2'=(0.266w,h);
+filldraw z1r..z1'..z3l & z3l--
+z3r--z2 & z2..z2'..z1l &
+z1l--z1r & cycle;
+penpos21(1.32cap_stem,50);
+penpos23(0.5cap_hair,-40);
+z21l=(0.063w,0.5w); z23l=z21l;
+z21.2=(x4r,y20); z21.1=(x4l,y11);
+filldraw z21.2--z21r--z21l--z23r &
+z23r{dir30}..z21.1{down} &
+z21.1--z21.2 & cycle;
+%
+%
+%
+x25=x28=x5r;
+y25=0.59h; y28=0.386h;
+penpos25(cap_hair,-90);
+penpos26(cap_hair,-90);
+penpos27(cap_hair,-90);
+penpos28(cap_hair,-90);
+penpos29(cap_hair,-90);
+penpos30(cap_hair,-90);
+x30=x20l+apex_o;
+y30l=y28r;
+y25l=y27r; x27=x30;
+x26=x29=0.5[x25,x27];
+y26l=y25r; y29r=y28l;
+penstroke z25e..z26e..z27e;
+penstroke z28e..z29e..z30e;
+.endchar;
+
+
+.cmchar "The gothic letter Q";
+.beginchar("Q",12.86u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(cap_stem,-90);
+x1=0.6w; y1r=-apex_o;
+penpos2(0.8cap_stem,180);
+y2=0.467w; x2r=0;
+penpos7(0.8cap_stem,0); y7=0.53h;
+x7r=w; penpos5(cap_hair,0);
+z5r=z1;
+x4.1=x1-cap_hair; y4.1=h;
+z4.2=(z7r{up}..z4.1{dir158})
+intersectionpoint
+((x1,0)--(x1,h));
+z3.1=(0.0756w,0.628h);
+z3.1-z3.2=whatever*(z4.1-z4.2);
+z3.2-z4.2=whatever*(z3.1-z4.1);
+z3.3=whatever[z3.2,z4.2];
+x3.3=0.216w;
+penstroke z2e{down}..z1e{dir-16};
+filldraw z2l{up}...z3.3{z4.2-z3.3}
+---z4.2 & z4.2--z4.1 &
+z4.1---z3.1...z2r{down} &
+z2r--z2l & cycle;
+filldraw z5r--z4.2--z4.1--z5l--
+z5r & cycle;
+%
+%
+%
+penpos1'(cap_hair,-90);
+z1'r=z1;
+penpos2'(0.4cap_stem,180);
+z2'r=z2;
+penpos6(1.1cap_stem,63);
+z6r=(x4.1-cap_hair,h+apex_o);
+penpos8(cap_hair,angle(z4.2-z3.2)-90);
+z8=(0.78w,0.161h);
+filldraw z1l{dir-16}...
+z8l{z4.2-z3.2}..
+z7l{up}..z6l{left} & z6l--z6r &
+z6r..z7r{down}...
+z8r{z3.2-z4.2}..{dir-117}z1r &
+z1r--z1l & cycle;
+z10=(z2l{down}..z1l{dir-16})
+intersectionpoint ((0.3w,0)--
+(0.3w,h));
+z11-z10=whatever*(z4.1-z3.1);
+x11=x10+cap_stem;
+z12=whatever[z3.2,z4.2];
+z13=whatever[z3.2,z4.2];
+x12=x10; x13=x11;
+filldraw z10--z11--z13--z12--z10
+& cycle;
+z15'=whatever[z10,z11];
+x15'=0;
+z15=(z2r{down}..z1r{dir-16})
+intersectionpoint
+(z15'--z11);
+penpos15''(0.1cap_hair,-90);
+z15''r=z15;
+z14=(x10,0.5[y10,y2]);
+filldraw z15''l{z11-z10}..z14{up}
+& z14--z10 & z10--z15''r &
+z15''r--z15''l & cycle;
+z16=whatever[z4.1,z3.1];
+z17=whatever[z4.1,z3.1];
+y17=y6l; x16=x11;
+filldraw z6l{left}--z17 &
+z17---z16...z6r{z6r-z6l} &
+z6r--z6l & cycle;
+z11.1=whatever[z10,z11];
+x11.1=x11+2/3cap_hair;
+z11.2=(x11,y2);
+filldraw z11.2{down}..z11.1 &
+z11.1--z11--z11.2 & cycle;
+%
+% 2 grammoulec
+%
+penpos20(cap_hair,-90);
+penpos21(cap_hair,-90);
+penpos22(cap_hair,-90);
+penpos23(cap_hair,-90);
+z22r=(x1,y2); z20r=(x1,0.29h);
+z23'-z22r=whatever*(z3.2-z4.2);
+z21'-z20r=whatever*(z3.2-z4.2);
+x21'=x23'=0;
+z23''=whatever[z23',z22r];
+z21''=whatever[z21',z20r];
+x21''=x23''=w;
+z23r=(z8{z4.2-z3.2}..z7{up}..
+z6) intersectionpoint
+(z23'--z23'');
+z21r=(z8{z4.2-z3.2}..z7{up}..
+z6) intersectionpoint
+(z21'--z21'');
+penstroke z22e--z23e;
+penstroke z20e--z21e;
+%
+% Q
+%
+z33=(x7l-cap_hair,-apex_o);
+z34-z33=whatever*dir45;
+x34=w;
+penpos33'(cap_stem,angle(z34-z33));
+z33'l=z33;
+z33-z33''=whatever*dir-50;
+x33''=0;
+z33'r-z33.1''=whatever*(z33-z33'');
+x33.1''=0;
+z30=(z1..z8..z7{up})
+intersectionpoint (z33''--z33);
+z31=(z1..z8..z7{up})
+intersectionpoint (z33.1''--z33'r);
+filldraw z30--z31--z33'r--z33--
+z30 & cycle;
+penpos35(cap_hair,-90);
+z35r=z34;
+filldraw z31{z33'r-z31}..z35l{
+z34-z33} & z35l--z35r & z35r--
+z33 & z33--z31 & cycle;
+z100=(z1r{dir63}..z33{z33-z30})
+intersectionpoint
+(0.5[z1r,z33]--(0.5[x1r,x33],h));
+filldraw z1..
+%z100+(0,0.5cap_hair)..
+z33{z33-z30} & z33--z30--z1
+ & cycle;
+.endchar;
+
+.cmchar "The gothic letter R";
+.beginchar("R",10.72u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#+2.05u#);
+x1=x2=0.39w; y2=0.85h;
+y1=y7=y18=1/6h;
+penpos1(cap_stem,0);
+penpos2(cap_stem,0);
+penstroke z1e--z2e;
+penpos3(cap_hair,0);
+penpos2'(cap_stem,180); z2'=z2;
+x3l=0; y3=y2;
+x3.5=0.5[x3,x2];
+penpos3.5(0.5[cap_hair,cap_stem],
+-90); y3.5l=h+apex_o;
+penstroke z3e{dir60}...z3.5e...
+z2'e{down};
+penpos4(1.2cap_hair,-90);
+penpos9(1.2cap_hair,-90);
+x4=x3r;
+y4r=0.56h;
+y9l=y12.2-2cap_hair=0.5h;
+z4.1-z4l=whatever*(z2r-z4r);
+y4.1=y2;
+filldraw z4r--z2r--z4.1--z4l--z4r &
+cycle;
+penpos5(1.2cap_hair,-90); z5l=z2r;
+penpos6(whatever,angle(z2r-z4r)-90);
+z6l=whatever[z4r,z5l];
+z6r-z5r=whatever*(z5l-z4r);
+y6l=h+apex_o;
+filldraw z5l--z6l--z6r--z5r--z5l
+& cycle;
+x7=0.54w; penpos7(0.9cap_hair,0);
+z8.1=whatever[z4r,z6l];
+x8.1=x7l; x8.2=x7r;
+z8.2=whatever[z4r,z6l];
+filldraw z7r--z8.2--z8.1--z7l--z7r
+& cycle;
+penpos11(1.118cap_stem,
+angle(z6l-z4r));
+z11=whatever[z4r,z6l]; x11r=x6l;
+x9l=x7l;
+z10.1-z6=whatever*(z6r-z6l);
+z10.1-z9l=whatever*(z6l-z4r+(0,1/3cap_stem));
+z10.4=whatever[z9l,z10.1];
+z10.4-z11l=whatever*(z10.1-z6);
+filldraw z10.4--z11l--z11r--z10.1
+--z10.4 & cycle;
+z10.2-z9r=whatever*(z10.1-z9l);
+z10.2=whatever[z6,z10.1];
+z12.1=whatever[z9r,z10.2];
+z12.1=whatever[z11l,z10.4];
+filldraw z9l--z10.1--z10.2--z9r
+--z9l & cycle;
+x12.2=w;
+z12.4=(x7l,y9l);
+x12.2-x12.3=1.2cap_stem;
+z12.3-z12.4=whatever*(z12.2-z12.1);
+x1.1=x1l; y1.1=0.247h;
+x13.2=x1l; y13.2=0.56h;
+z13.1-z13.2=
+whatever*dir(angle(z6l-z4r)+100);
+z13.1=whatever[z4r,z5l];
+filldraw z4l{dir-30}...z1.1{down}
+& z1.1--z13.2--z13.1--z4l &
+cycle;
+unfill z4l{dir-30}...z1.1{down}
+& z1.1--(x4l,y1.1)--z4l &
+cycle;
+z15=(0,-apex_o); z17=(0.73w,-apex_o);
+x18=w; z19=(x12.3,y18);
+%
+%
+%
+penpos40(1.09cap_stem,-114);
+z40r=(x7r+0.5cap_stem,-apex_o);
+filldraw z15{dir80}%...{right}(x1,y1.1)
+...z40l{dir-24} &
+z40l--z40r & z40r{dir156}...
+z15{dir225} & cycle;
+penpos41(cap_hair,-24);
+penpos41'(0.5cap_stem,-114);
+z41'r=z40l; z41r=z41'l;
+penpos40'(cap_hair,-24);
+z40'r=z40;
+penstroke z40'e--z41e;
+x18.2=x18.1=x12.3+cap_stem;
+y18.2=7/8[y18,y12.2];
+y18.1=1/8[y18,y12.2];
+z101=0.5[z9r,z10.2];
+z104=(1.09w,1.1176cap_stem);
+penpos105(cap_hair,-37);
+z105r=(1.192w,0.193h);
+z106=(w,-apex_o);
+z107=whatever[z106,z40l];
+x107=x106-0.44cap_stem;
+penpos103(0.9cap_stem,-157);
+penpos102(cap_stem,-138);
+z102l=z101+(0.6cap_amount,-0.7cap_amount);
+z103l=(w+1.1cap_hair,0.18h);
+z100=whatever[z9r,z101];
+x100=x7r;
+filldraw z101..z102l..z103l..
+z104..z105l{dir52} &
+z105l--z105r & z105r--z106 &
+z106---z107...%z103r---
+z102r{dir(angle(z102l-z102r)+90)}
+...z100 & z100--
+z100+(0,0.3cap_amount)--z101 & cycle;
+.endchar;
+
+.cmchar "The gothic letter S";
+.beginchar("S",12.28u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(1.32cap_stem,44);
+penpos2(cap_stem,70);
+penpos2'(0.82cap_stem,90);
+penpos3(cap_hair,-16);
+penpos4(0.5cap_stem,180);
+penpos5(cap_hair,-90);
+penpos6(1.3cap_hair,-24);
+penpos7(1.148cap_stem,50);
+penpos8(0.975cap_stem,90);
+penpos9(1.1cap_stem,90);
+penpos10(0.56cap_stem,0);
+penpos11(cap_hair,-39);
+penpos12(cap_hair,-46);
+penpos13(0.65cap_stem,0);
+penpos14(cap_stem,90);
+penpos15(1.07cap_stem,90);
+penpos16(0.56cap_stem,0);
+penpos3'(cap_hair,-16);
+penpos20(cap_stem,-106);
+penpos19(1.2cap_hair,-50);
+x1=0.718w; x2=0.55w; x3=0.367w;
+x2'=0.252w; x4r=0;
+x5=0.164w; x6=0.725w;
+x7=0.734w; x8=x1l; x9=x2';
+x10=x4l; x11r=x5; z12r=z1;
+x13r=w; x14=x1r-1/4cap_amount;
+x15=0.302w; x16=x10r; x17=x10;
+ x18=x15; x20=0.595w;
+z3'-z3=whatever*dir74;
+y3'l=h+apex_o;
+y1l=-apex_o; y2=0.114h;
+y3=0.143h; y2'=0.157h;
+y4=0.027h; y5=-0.067h; y6=0.211h;
+y7=0.374h; y8r=0.462h;
+y9=0.365h; y10=0.52h;
+y11=0.659h; y13=y10; y14=0.652h;
+y15=0.628h; y16=0.789h;
+y17=0.839h;
+z19l=0.285[z17,z18];
+y18=h+apex_o; y20=y19;
+penpos5'(cap_hair,-66);
+z5'=(0.5w,0);
+penstroke z3e--z3'e;
+penstroke z1e{dir141}..z2'e..z4e..
+z5e{right}..z5'e..z6e{dir66}..z7e..z8e{left}..z9e..z10e..
+z11e{dir51};
+filldraw z1--z1r{z1r-z1l}...z13r{up}..
+z14r{left}..z15r..z16r..%z19r..
+z20r{z20l-z18} & z20r--z20l--z18
+& z18---z17...z16l{down}..
+z15l{right}..z14l{right}..
+z13l..z12l{z1l-z1r} &
+z12l--z1 & cycle;
+.endchar;
+
+.cmchar "The gothic letter T";
+.beginchar("T",12.82u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(cap_hair,121);
+penpos3(cap_stem,211);
+penpos5(cap_hair,-45);
+x3l=0.288w; x1=0.455w; x5r=w-0.6cap_amount;
+y1=0.9h; y3l=0.324h; y5=0.277h;
+z4=(0.613w,-apex_o);
+filldraw z1r..z3r..
+{dir-15}z4 & z4{dir25}..z5r &
+z5r--z5l & z5l..z3l..z1l &
+z1l--z1r & cycle;
+penpos6(cap_hair,0);
+penpos7(cap_stem,-90);
+penpos8(0.853cap_stem,-90);
+penpos9(cap_hair,-35);
+x6l=0; x9=w; x7=0.347w;
+x8=0.779w;
+y6=0.7h; y7l=h+apex_o;
+y8l=0.915h; y9=h-cap_amount;
+penstroke z6e{up}..z7e..z8e..z9e;
+%
+%
+%
+penpos10(cap_hair,0);
+penpos10'(cap_hair,0);
+x10l=x10'l=0.64w;
+z10'=whatever[z7,z8];
+y10=0.5cap_stem;
+penstroke z10e--z10'e;
+%
+%
+%
+z20=(z6r{up}..z7r..z8r..z9r)
+intersectionpoint
+(z5l..z3l..z1l);
+penpos11(cap_stem,0);
+penpos12(cap_stem,0);
+y11=0.44h;
+x11l=x12l=x20;
+z12=whatever[z7,z8];
+z21=(z1..z3..z5)
+intersectionpoint
+((0.3w,0)--(0.3w,y11));
+penpos21(1.2cap_hair,-50);
+penstroke z21e{dir40}..z11e{up}
+--z12e;
+.endchar;
+
+.cmchar "The gothic letter U";
+.beginchar("U",13.72u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(cap_hair,90);
+penpos4(cap_hair,-90);
+z2=(0.053w,0.404h);
+z2'=(x2+cap_stem,0.462h);
+z3=(0.409w,-apex_o);
+z3'=(x3,0.123h);
+z1=(0.555w,0.888h);
+z4=(0.735w,0.215h);
+filldraw z1r{left}..z2..z3{dir-18}
+& z3--z4r--z4l &
+z4l{dir209}..z3'..z2'..z1l{right}
+& z1l--z1r & cycle;
+%
+%
+%
+penpos5(cap_hair,0);
+penpos6(cap_hair,0);
+z5r=whatever[z3,z4r];
+x5r=x1; z6=(x5,h+apex_o);
+penstroke z5e--z6e;
+%
+%
+%
+z7=(z1{left}..0.5[z2,z2']..
+0.5[z3,z3']..z4)
+intersectionpoint
+((0.255w,0)--(0.255w,y2));
+penpos7(cap_hair,-50);
+penpos8(cap_stem,0);
+y8=0.561h; x8r=x5l-cap_amount;
+penpos9(cap_hair,-43);
+y9=0.928h; x9=x5;
+penstroke z7e{dir41}..z8e{up}
+..z9e{dir48};
+%
+%
+%
+x10=0; y10=0.673h;
+penpos10(cap_hair,0);
+penpos11(cap_stem,-90);
+x11=0.19w; y11l=h+apex_o;
+penpos12(0.588cap_stem,-90);
+z12=(0.457w,0.906h);
+penstroke z10e{up}..z11e{right}..
+z12e..z6e{up};
+%
+%
+%
+penpos20(cap_stem,0);
+penpos21(cap_stem,0);
+z20l=z4l;
+z21=(x20,0.841h);
+penstroke z20e--z21e;
+%
+%
+%
+z25=(x20l,0.405y20);
+z26=(x25+0.824cap_stem,-apex_o);
+penpos27(cap_hair,-45);
+z27r-z26=whatever*dir47;
+x27r=w;
+filldraw z20l--z25--z26--z27r--
+z27l & z27l{z26-z27}..{up}z20r
+& z20r--z20l & cycle;
+%
+%
+%
+penpos24(cap_hair,145);
+z24=(0.291[x5r,x20l],0.789h);
+z23=(x20l,h+apex_o);
+z22=z21r+(0.6cap_hair,cap_hair);
+filldraw z21l{up}..z24l{z24r-z23}
+& z24l--z24r--z23--z22 &
+z22..{down}z21r & z21r--z21l
+& cycle;
+%
+%
+%
+z250=(x1,0.574h);
+z270=(x1,0.413h);
+z260=(x20l,y250);
+z280=(x20l,y270);
+penpos250(cap_hair,-90);
+penpos260(cap_hair,-90);
+penpos270(cap_hair,-90);
+penpos280(cap_hair,-90);
+penpos290(cap_hair,-90);
+penpos300(cap_hair,-90);
+x290=x300=0.5[x250,x260];
+y290l=y250r; y300r=y270l;
+penstroke z250e..z290e..z260e;
+penstroke z270e..z300e..z280e;
+.endchar;
+
+.cmchar "The gothic letter V";
+.beginchar("V",15.44u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(cap_hair,0);
+penpos2(0.765cap_stem,-90);
+penpos4(cap_hair,-100);
+x1=0; y1=y3=0.83h; y2l=h+apex_o;
+x2=0.094w; x3=0.205w;
+h-y3'=0.4cap_stem; x3'=0.288w;
+y4l=h; x4=0.549w;
+filldraw z1r{up}..z2r..z3..
+z4r{dir-13} & z4r--z4l &
+z4l{dir167}..z3'..z2l..z1l{down}
+& z1l--z1r & cycle;
+%
+%
+%
+penpos5(cap_hair,-90);
+penpos6(1.118cap_stem,20);
+penpos7(0.882cap_stem,0);
+y5r=0; x5=0.197w; y6=0.516h;
+x6=1/3w; z7=(0.3w,0.744h);
+penstroke z5e{right}..z6e..z7e
+..z4e{dir-13};
+%
+%
+%
+penpos8(cap_hair,-90); x8=x6;
+y8=0; z9=(0.78w,0.657h);
+z9'=(x9+1.5cap_hair,y9);
+z10=(0.586w,h-1.06cap_stem);
+z11=(0.545[x10,x9],h);
+z13=(w,y10-0.5cap_amount);
+z12=(0.5[x9',w],h-0.6cap_amount);
+z10'=(0.345[x10,x9],y10+0.7cap_amount);
+filldraw z5r..z8r..z9'{up}..
+z11{left}..z10{down} &
+z10{dir27}..z10'{right}..z9{down}..z8l..z5l
+& z5l--z5r & cycle;
+filldraw z9{up}..z12{right}..z13{down}
+& z13{dir146}..z9'{down} & z9'--z9 &
+cycle;
+%
+%
+%
+penpos14(cap_hair,0);
+penpos15(cap_hair,18);
+penpos16(cap_hair,0);
+z14l=(0.46w,0.408h);
+z15l=(0.432w,0.628h);
+z16l=(0.387w,0.87h);
+penstroke z5e{right}..z14e{up}..
+z15e..z16e{up}..z4e{dir-13};
+%
+%
+%
+x17=0.152[x14r,x9];
+x18=0.405[x14r,x9];
+y17=0.691h; y18=0.556h;
+filldraw z15{z15r-z15l}..z17{right}
+..z18{dir241} & z18{dir152}..
+z14r{down} & z14r--z14..z15 &
+cycle;
+.endchar;
+
+.cmchar "The gothic letter W";
+.beginchar("W",14.556u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(1.2cap_hair,-42.5);
+penpos2(cap_stem,0);
+penpos3(cap_hair,180);
+y1l=0; x3=0; y3=y2=0.7h;
+x2r=0.349w; x1l=0.05w;
+z2'=(0.143w,0.897h);
+penpos2'(cap_stem,60);
+penstroke z1e{dir47.5}..z2e{up}..z2'e..
+z3e{down};
+%
+%
+%
+penpos4(cap_hair,-34);
+penpos5(1.06cap_stem,0);
+penpos6(1.4cap_stem,35);
+z4r=(0.42w,0); z6r=(0.6w,h+apex_o);
+z5r=(0.672w,0.632h);
+penstroke z4e{dir56}..z5e{up}..z6e{dir125};
+%
+%
+%
+penpos7(cap_hair,-44);
+penpos8(1.06cap_stem,0);
+penpos9(1.4cap_stem,35);
+y7r=0; x8r=w; y9r=h+apex_o;
+x7r=0.626w; y8=0.655h; x9r=w-0.4cap_stem;
+penstroke z7e{dir46}..z8e{up}..
+z9e{dir125};
+%
+%
+%
+z10'=(x2r,0.161h);
+z10=(z1l{dir47.5}..z10'..z7r)
+intersectionpoint
+(z4{dir56}..z5{up});
+filldraw z1r{dir47.5}..z4r{z4r-z4l}
+& z4r--z10 & z10..z10'..
+z1l{dir227.5} & z1l--z1r &
+cycle;
+%
+%
+%
+z11'=(x5r,0.175h);
+z11.1=(0.935w,0);
+z11=(z7{dir46}..z8{up})
+intersectionpoint (z4l{dir56}..
+z11'..z11.1);
+filldraw z4r{dir56}..z7r{z7r-z7l}
+& z7r--z11 & z11..z11'..
+z4l{dir236} & z4l--z4r & cycle;
+%
+%
+%
+penpos6.1(cap_hair,-55);
+penpos6.2(cap_hair,-55);
+penpos9.1(cap_hair,-55);
+penpos9.2(cap_hair,-55);
+z6.1l=z6; z9.1l=z9;
+z6.2l=whatever[z6l,z6r];
+z9.2l=whatever[z9l,z9r];
+x6.2=x2; x9.2=x5;
+penstroke z6.2e--z6.1e;
+penstroke z9.2e--z9.1e;
+%
+%
+%
+penpos100(cap_hair,-90);
+penpos110(cap_hair,-90);
+penpos120(cap_hair,-90);
+penpos130(cap_hair,-90);
+penpos140(cap_hair,-90);
+penpos150(cap_hair,-90);
+penpos160(cap_hair,-90);
+penpos170(cap_hair,-90);
+penpos180(cap_hair,-90);
+penpos190(cap_hair,-90);
+penpos200(cap_hair,-90);
+x100=x2; y100=0.677h; z120=z5;
+y110l=y120-cap_amount;
+x110=0.47[x100,x120];
+y130=y110; y140=y120; x140=x8;
+x130=0.47[x120,x140];
+penstroke z100e..z110e..z120e;
+penstroke z120e..z130e..z140e;
+%
+z150=(x2l,0.309h);
+y170l=y180r=y150;
+x170=x180=x6.1r;
+z200=((0,y180r)--(w,y180r))
+intersectionpoint
+(z7{dir46}..z8{up});
+y190=y160=y180l+cap_hair;
+x160=0.536[x150,x170];
+x190=0.532[x180,x200];
+penstroke z150e..z160e..z170e;
+penstroke z170e..z190e..z200e;
+%
+%
+%
+z21=(x3l,0.404h);
+z20=(x1r,y21+0.5cap_amount);
+z22=(0.095w,0.552h);
+filldraw z1l{dir47.5}..z20{left}
+..z21 & z21{up}..z22{right}..
+z1r{dir227.5} & z1r--z1l & cycle;
+.endchar;
+
+.cmchar "The gothic letter X";
+.beginchar("X",8.556u#,cap_height#,1.11u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+z1=(0.442w,0.202h);
+penpos1(cap_stem,0);
+penpos2(cap_stem,0);
+x2=x1; y2=0.843h;
+penstroke z1e--z2e;
+z3=(0,-d); penpos3(0.5cap_hair,-45);
+z4=(x1l,0.108h);
+z5=(0.61w,-apex_o);
+penpos6(cap_hair,-45);
+z6r-z5=whatever*(z4-z3r);
+x6r=w-cap_amount;
+z5'-z6l=whatever*(z5-z6r);
+z5'=whatever[z4,z5];
+z7-z1r=whatever*(z5-z4);
+z7=whatever[z5',z6l];
+filldraw z3r--z4--z5--z6r--
+z6l--z7--z1r--z1l--z3l--z3r
+& cycle;
+%
+%
+%
+penpos8(cap_hair,-34);
+x8=cap_amount; y8=0.74h;
+z9=(x2l-0.5cap_hair,h+apex_o);
+z9'=whatever[z9,z2r];
+z9'-z8r=whatever*(z9-z8l);
+penpos9.5(1.1cap_stem,angle(z9'-z8r));
+z9.5r=z9';
+z10=z9.5l;
+z10'-z10=whatever*(z2r-z9);
+x10'=x2l;
+filldraw z8l--z9--z2r--z10'--
+z10--z8r--z8l & cycle;
+%
+%
+%
+penpos11(cap_hair,-49);
+penpos11'(cap_hair,-49);
+penpos12(1.176cap_stem,-145);
+penpos13(1.176cap_stem,-145);
+x11=x2; y11=0.717h;
+z11'l=z2r;
+z12.5=whatever[z11l,z11'l];
+y12.5=h+apex_o;
+z13l=(w,y2);
+z12l=0.5[z12.5,z13l];
+z12.3=0.3[z12.5,z13l];
+z12.1=whatever[z11l,z12.5];
+y12.1=y12.3;
+filldraw z11l--z11'l---z12.1...
+z12.3---z12l--z13l & z13l--z13r
+& z13r---z12r...z11'r---z11r &
+z11r--z11l & cycle;
+%
+%
+%
+z4.1=whatever[z3r,z4];
+z4.2=whatever[z4,z5];
+y4.1=y4.2=0.5y4;
+filldraw z4.1{z4-z3r}..
+z4.2{z5-z4} & z4.2--z4--z4.1 &
+cycle;
+%
+%
+%
+penpos14(1.4cap_hair,-90);
+penpos15(1.4cap_hair,-90);
+penpos16(1.4cap_hair,-90);
+penpos17(1.4cap_hair,-90);
+penpos14'(1.4cap_amount,-90);
+x14=x16=x8; x15=x17=x13;
+x14'=0;
+y14'=0.475h;
+y14r=y15r=y14'l;
+y16l=y17l=y14'r;
+penstroke z14e--z15e;
+penstroke z16e--z17e;
+.endchar;
+
+.cmchar "The gothic letter Y";
+.beginchar("Y",9.167u#,cap_height#,4/3u#);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(cap_stem,0);
+penpos4(cap_hair,0);
+penpos5(cap_hair,90);
+penpos6(cap_hair,130);
+penpos7(cap_hair,90);
+penpos8(cap_hair,0);
+penpos9(cap_hair,-90);
+x1=0.285w; y1=0.8h;%762
+z2=(x1l,0.535y1);
+z4l=(0,0.045h);
+z3=(0.5x2,0.629[y2,y4]);
+y5l=-d; x5=0.218w;
+z6l=(0.491w,0);
+z7=(0.679w,0.1h);
+z8=(0.788w,0.5y4);
+z9r=(0.63w,-d);
+z9'=(x9,y9r+2cap_hair);
+z11=(w,0.283h);
+z12=z11+(0,1.2cap_hair);
+z10=(x2,0.12h);
+z12-z13=whatever*(z11-z10);
+x13=x1r;
+z12'=whatever[z12,z13];
+x12'=x11-cap_hair;
+filldraw z9'..z9r..z9'..cycle;
+filldraw z9r{right}..z8r..z7r..
+z6r..z5r..z4r{up}...z10---z11 &
+z11--z12'--z13--z1r--z1l---
+z2...z3...z4l{down}..z5l..z6l..
+z7l..z8l..z9l{left} &
+z9l--z9r & cycle;
+%
+%
+%
+z17=(0.788w,h+apex_o);
+z14=(0,0.9h);%avant:848
+y15=h+apex_o;
+z15-z14=whatever*(z17-z1r);
+z16=whatever[z1r,z17];
+x16=x1r+2cap_amount;
+z18-z17=whatever*(z16-z15);
+x18=w; penpos18'(cap_stem,0);
+x18'r=w-cap_amount;
+y18'=y18;
+z19=whatever[z12,z13];
+z19''=whatever[z12,z13];
+x19''=x18'r;
+x19=x18'l;
+filldraw z19--z18'l--z18'r--
+z19''--z19 & cycle;
+penpos15'(cap_hair,angle(z15-z14));
+z15'r=z15;
+z15.1-z15'l=whatever*(z16-z15);
+x15.1=x13.2=x16+cap_hair;
+z15.2=whatever[z15,z16];
+x15.2=x15.1;
+filldraw z15.1--z15'l--z15'r--
+z15.2--z15.1 & cycle;
+filldraw z14--z15--z16--z1r--
+z1l & z1l{up}..{left}z14 &
+cycle;
+x13.1=x16; z13.1=whatever[z13,z12];
+z13.2=whatever[z13,z12];
+z16'=whatever[z16,z17]; x16'=x13.2;
+filldraw z13.1--z16--z16'--z13.2
+--z13.1 & cycle;
+%
+%
+%
+penpos20(1.1cap_stem,angle(z17-z16));
+z20r=z17;
+z21-z20l=whatever*(z18-z17);
+x21=x19;
+penpos17'(cap_hair,angle(z18-z17));
+z17'l=z17;
+z16''-z17'r=whatever*(z16-z17);
+x16''=x16;
+filldraw z16--z17--z17'r--z16''
+--z16 & cycle;
+filldraw z20r--z18 & z18..
+{down}(x19'',y18-0.5cap_stem) &
+(x19'',y18-0.5cap_stem)--z18'r--
+z18'l--z21--z20l--z20r & cycle;
+z11.5=whatever[z10,z11];
+x11.5=x19;
+filldraw z11..{up}
+(x19'',y11+0.5cap_stem)
+& (x19'',y11+0.5cap_stem)--
+z19''--z19--z11.5--
+z11 & cycle;
+%
+%
+%
+x31=x33=x19; x30=x32=x13.2;
+x35=x37=x2; x34=x36=-apex_o;
+penpos30(cap_hair,-90);
+penpos31(cap_hair,-90);
+penpos32(cap_hair,-90);
+penpos33(cap_hair,-90);
+penpos34(0.5cap_hair,-90);
+penpos36(0.5cap_hair,-90);
+penpos35(0.647cap_stem,-90);
+penpos37(0.647cap_stem,-90);
+y31=0.3[y18,y19];
+y33=0.6[y18,y19];
+z31-z30=whatever*dir20;
+z33-z32=whatever*dir20;
+y34=y35=0.5[y30,y31];
+y36=y37=0.5[y32,y33];
+penstroke z30e--z31e;
+penstroke z32e--z33e;
+penstroke z34e--z35e;
+penstroke z36e--z37e;
+.endchar;
+
+.cmchar "The gothic letter Z";
+.beginchar("Z",10.667u#,cap_height#,0);
+.adjust_fit(cap_serif_fit#,cap_serif_fit#);
+penpos1(1.414cap_hair,-90);
+penpos2(1.414cap_hair,-90);
+penpos3(1.414cap_hair,-90);
+penpos4(1.414cap_hair,-90);
+penpos5(1.414cap_hair,-90);
+penpos6(1.414cap_hair,-90);
+x1=x2=x5=cap_amount;
+x3=x4=x6=w;
+y2r=-apex_o;
+y5r=y2l; y1r=y5l;
+y3l=h+apex_o; y6l=y3r; y4l=y6r;
+penstroke z1e--z3e;
+penstroke z2e--z4e;
+%
+%
+%
+z7=(0.281w,0.076h);
+z8=(0.505w,0.22h);
+z9=(0.708w,-apex_o);
+z10=(0.839w,0.103h);
+penpos11(cap_hair,0);
+x11r=w; y11=0.224h;
+penpos12(0.91cap_stem,0);
+z12r=z11r;
+filldraw z2r{z4-z2}..z7..z9..
+z11r{up}
+& z11r--z11l & z11l{down}..z10
+..z8..z2l{z2-z4} & z2l--z2r &
+cycle;
+filldraw z12r..z12l..z12r..cycle;
+%
+%
+%
+y17=y14=0.673h;
+penpos14(cap_hair,180);
+penpos15(0.88cap_stem,0);
+penpos16(cap_hair,90);
+penpos17(cap_hair,0);
+x14=0.297w;
+x17l=0; z15r=z14l;
+filldraw z15r..z15l..z15r..cycle;
+x16=0.148w; y16=0.565h;
+z18=(0.255w,0.843h);
+z19=(0.349w,h+apex_o);
+z20=(0.656w,0.758h);
+z21=(0.781w,0.892h);
+filldraw z14r{down}..z16r..z17r
+..z18..z20..z3r{z3-z1} & z3r--z3l
+& z3l{z1-z3}..z21..z19..z17l..
+z16l..z14l{up} & z14l--z14r &
+cycle;
+.endchar;