summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-09-30 21:47:28 +0000
committerKarl Berry <karl@freefriends.org>2006-09-30 21:47:28 +0000
commitb2c122e17d4f53f916a6421de7eeed70e8943982 (patch)
tree0a6443dc317594105bd8d925fb6aca29e8fcae3b /Master/texmf-dist/fonts
parent9573b5b481deba97256d67e7207ba3126e876401 (diff)
new font/latex package xq (29sep06)
git-svn-id: svn://tug.org/texlive/trunk@2226 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/fonts')
-rw-r--r--Master/texmf-dist/fonts/source/public/xq/hints.mf619
-rw-r--r--Master/texmf-dist/fonts/source/public/xq/xqbase.mf3746
-rw-r--r--Master/texmf-dist/fonts/source/public/xq/xqlarge.mf12
-rw-r--r--Master/texmf-dist/fonts/source/public/xq/xqnormal.mf12
-rw-r--r--Master/texmf-dist/fonts/tfm/public/xq/xqlarge.tfmbin0 -> 464 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/xq/xqnormal.tfmbin0 -> 464 bytes
6 files changed, 4389 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/xq/hints.mf b/Master/texmf-dist/fonts/source/public/xq/hints.mf
new file mode 100644
index 00000000000..9a836e6af4e
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/xq/hints.mf
@@ -0,0 +1,619 @@
+% hints.mf --- an attempt at PostScript Type-1 Hints in METAFONT for use
+% with PS2MF.
+%
+% Copyright (c) 1992 I. Lee Hetherington, all rights reserved. I have
+% not yet decided on what copyright restrictions I will place here.
+% Probably something like TeX's copyright. I think the GNU copyleft
+% is far too extreme.
+%
+% The general scheme for hint implementation is apply vertical (hstem)
+% and horizontal (vstem) hints separately. For each direction, we
+% first collect the stems in a sorted list. At this point we reject
+% overlapping or duplicate stems. When we first need to use the
+% hints, we make sure that piecewise linear transformations are
+% computed. These METAFONT transformations depend on the stem or
+% inter-stem region a particular x- or y-coordinate falls in. These
+% transformations are easily computed once the stems specified in
+% character space are placed in pixel space. This stem placement is
+% more complicated in the vertical direction because of the BlueValues
+% font-level hints.
+%
+% Currently the implemented hints are BlueValues, OtherBlues,
+% BlueScale, BlueShift, BlueFuzz, hstem, hstem3, vstem, vstem3, `Hint
+% Replacement', and `Flex'. The hints FamilyBlues, FamilyOtherBlues
+% are not implemented as we only apply hints at the font and character
+% level, not across an entire font family. The hints StdHW, StdVW,
+% StemSnapH, and StemSnapV are not implemented. It would probably not
+% be very difficult to add these. The ForceBold, LanguageGroup,
+% RndStemUp, and ExpansionFactor are also not implemented.
+%
+% Hint replacement ignores previous stem hints unless the same stem
+% was used previously. In this case, the stem is placed the same as
+% it was before. If after replacement a single stem is respecified
+% without the other original stems, we can place it as it was placed
+% before. However, *both* edges of the stem must be identical. This
+% may now be irrelevant since stems are placed independently now
+% (except in the case of hstem3 and vstem3, of course).
+%
+% I make no claim to that these hints have exactly the same effect as
+% Adobe PostScript font rasterizer. The hints and their interactions
+% can be quite complicated. The hint implementation in this file is
+% based solely on my interpretation of their effects given their
+% description in the book "Adobe Type 1 Font Format, Version 1.1".
+%
+% There is certainly room for improvement: both with respect to hint
+% effects and implementation efficiency. Running METAFONT can take
+% quite a while. I've made some attempt at caching placement results
+% using METAFONT vector to reduce redundant computation. One
+% improvement I can think of is replacing the stem gathering and
+% sorting (h_insert and v_insert) with C code in PS2MF. Another is
+% predetermining which stems are effected by the blue values. Most of
+% the other placement/transformation opertions need to be done in
+% METAFONT because these operations are dependent on device resolution
+% and magnification.
+%
+% I welcome comments, suggestions, fixes, and improvements. I plan on
+% commenting this code more when I get a chance. The comments are
+% pretty sparse at the moment.
+%
+% If you want to disable the hint mechanism, specify `hinting:=0'
+% before this file is included. METAFONT will run much faster but
+% will produce inconsistent stem widths at low resolutions. At higher
+% resolutions these hints are much less important.
+%
+% 1.0 beta 3/30/92 I. Lee Hetherington (ilh@lcs.mit.edu)
+
+if unknown hinting: hinting := 1; fi
+
+% expansion and slanting (same as `xscaled expansion slanted slanting')
+if unknown expansion: expansion := 1; fi
+if unknown slanting: slanting := 0; fi
+
+% make sure character space units are defined
+if unknown FX#: FX# := 0.001pt#; fi
+if unknown FY#: FY# := 0.001pt#; fi
+FX# := FX# * expansion; % incorporate expansion here so hints know about it
+u# := FX#;
+v# := FY#;
+define_pixels(u,v,FX,FY);
+
+boolean debug; debug := false;
+
+% like round but rounds to the nearest half
+def roundhalf(expr x) = (round(x+0.5)-0.5) enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% horizontal (vstem) hints
+
+extra_beginchar := extra_beginchar & "h_init;numeric h[][]sc;";
+
+% initialize structures
+def h_init =
+ numeric h.r,h[]s,h[]p,h[]pc;
+ boolean h.triple;
+ transform h[]t;
+ h.r := 1;
+ h.triple := false;
+enddef;
+
+% insert new stem into sorted list
+% requires that stems don't overlap
+% toss duplicates
+def h_insert(expr a, b) =
+ boolean flag; flag:=false; % temporary flag to exit loop
+ if h.r = 1: % no stems thus far
+ h[1]s := a;
+ h[2]s := b;
+ h.r := 3;
+ elseif a > h[h.r-1]s: % at end
+ h[h.r]s := a;
+ h[h.r+1]s := b;
+ h.r := h.r + 2;
+ else: % we need to search for location and shift elements
+ for i = 1 step 2 until h.r-2:
+ exitif ((h[i]s >= a) and (h[i]s <= b)) or
+ ((h[i+1]s >= a) and (h[i+1]s <= b));
+ if a < h[i]s:
+ % insert here, so shift remaining elements up by two
+ for j = h.r-1 downto i:
+ h[j+2]s := h[j]s;
+ endfor
+ h[i]s := a;
+ h[i+1]s := b;
+ h.r := h.r + 2;
+ flag := true;
+ fi
+ exitif flag;
+ endfor
+ fi
+enddef;
+
+% horizontal stem width (for vstem's)
+def hsw(expr a,b) = max(1, round(abs(a-b)*u)) enddef;
+
+% place stems in pixel space
+def h_place =
+ if h.triple:
+ h2p - h1p = vsw(h1s, h2s) - 1;
+ h4p - h3p = vsw(h3s, h4s) - 1;
+ h6p - h5p = vsw(h5s, h6s) - 1;
+ if unknown h[h1s][h2s]sc: % cached?
+ h3p - h2p = h5p - h4p;
+ h1p = roundhalf(h1p - (0.5[h1p,h2p] - 0.5[h1s,h2s]*u));
+ h3p = roundhalf(h3p - (0.5[h3p,h4p] - 0.5[h3s,h4s]*u));
+ h[h1s][h2s]sc := h1p;
+ h[h3s][h4s]sc := h3p;
+ h[h5s][h6s]sc := h5p;
+ else:
+ h1p = h[h1s][h2s]sc;
+ h3p = h[h3s][h4s]sc;
+ h5p = h[h5s][h6s]sc;
+ fi
+ elseif h.r > 1:
+ for i = 1 step 2 until h.r-2:
+ h[i+1]p - h[i]p = hsw(h[i]s,h[i+1]s) - 1;
+ if unknown h[h[i]s][h[i+1]s]sc: % cached?
+ h[i]p = roundhalf(h[i]p - (0.5[h[i]p,h[i+1]p] - 0.5[h[i]s,h[i+1]s]*u));
+ h[h[i]s][h[i+1]s]sc := h[i]p;
+ else:
+ h[i]p = h[h[i]s][h[i+1]s]sc;
+ fi
+ endfor
+ fi
+ if debug:
+ for i = 1 upto h.r-1:
+ message "h" & decimal(i) & ": " & decimal(h[i]s) &
+ " (" & decimal(h[i]p) & ")";
+ endfor
+ fi
+enddef;
+
+% build separate transformations for each region
+def h_transforms =
+ if unknown h1p: h_place; fi
+ if h.r = 1: h[0]t := identity xscaled u;
+ else:
+ % first region (not stem)
+ h[0]t := identity shifted (-h[1]s,0)
+ xscaled u
+ shifted (h[1]p,0);
+ % last region (not stem)
+ h[h.r-1]t := identity shifted (-h[h.r-1]s,0)
+ xscaled u
+ shifted (h[h.r-1]p,0);
+ % other regions
+ for i = 1 upto h.r - 2:
+ h[i]t := identity shifted (-h[i]s,0)
+ xscaled
+ (if h[i+1]p = h[i]p: 0
+ else: ((h[i+1]p - h[i]p) / (h[i+1]s - h[i]s)) fi)
+ shifted (h[i]p,0);
+ endfor
+ fi
+ if debug:
+ for i = 0 upto h.r-1:
+ show xxpart h[i]t;
+ endfor
+ fi
+enddef;
+
+% find region according to x-coordinate
+def h_region(expr x) =
+ if h.r = 1: 0
+ elseif x < h[1]s: 0
+ elseif x >= h[h.r-1]s: (h.r - 1)
+ else:
+ for i = 2 upto h.r-1:
+ if x < h[i]s: (i - 1) fi
+ exitif (x < h[i]s);
+ endfor
+ fi
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% vertical (hstem) hints with support for BlueValues, OtherBlueValues,
+% BlueScale, BlueShift, and BlueFuzz
+
+extra_beginchar := extra_beginchar & "v_init;numeric v[][]sc;";
+
+% initialize structures
+def v_init =
+ numeric v.r,v[]s,v[]p,v[]pc;
+ boolean v.triple;
+ transform v[]t;
+ v.r := 1;
+ v.triple := false;
+enddef;
+
+% insert new stem into sorted list
+% requires that stems don't overlap
+def v_insert(expr a, b) =
+ boolean flag; flag:=false; % temporary flag to exit loop
+ if v.r = 1: % no stems thus far
+ v[1]s := a;
+ v[2]s := b;
+ v.r := 3;
+ elseif a > v[v.r-1]s: % at end
+ v[v.r]s := a;
+ v[v.r+1]s := b;
+ v.r := v.r + 2;
+ else: % we need to search for location and shift elements
+ for i = 1 step 2 until v.r-2:
+ exitif ((v[i]s >= a) and (v[i]s <= b)) or
+ ((v[i+1]s >= a) and (v[i+1]s <= b));
+ if a < v[i]s:
+ % insert here, so shift remaining elements up by two
+ for j = v.r-1 downto i:
+ v[j+2]s := v[j]s;
+ endfor
+ v[i]s := a;
+ v[i+1]s := b;
+ v.r := v.r + 2;
+ flag := true;
+ fi
+ exitif flag;
+ endfor
+ fi
+enddef;
+
+% Blue stuff
+boolean suppress; % suppress overshoot
+suppress := v < blue_scale;
+
+def find_bot_blue(expr y) =
+ numeric blue.pos, blue.over;
+ for i = 1 upto bot_blues.n:
+ exitif known blue.pos;
+ if (y >= bot_blues[i]o - blue_fuzz) and (y <= bot_blues[i]p):
+ blue.pos := bot_blues[i]p;
+ blue.over := bot_blues[i]o;
+ fi
+ endfor
+enddef;
+
+def find_top_blue(expr y) =
+ numeric blue.pos, blue.over;
+ for i = 1 upto top_blues.n:
+ exitif known blue.pos;
+ if (y >= top_blues[i]p) and (y <= top_blues[i]o + blue_fuzz):
+ blue.pos := top_blues[i]p;
+ blue.over := top_blues[i]o;
+ fi
+ endfor
+enddef;
+
+% vertical stem width (for hstem's)
+def vsw(expr a,b) = max(1, round(abs(a-b)*v)) enddef;
+
+% place stems in pixel space paying attention to blue stuff
+% (currently ignore v.triple)
+% CHECK CACHING IN HERE. MIGHT NOT NEED TO DO BLUE STUFF SO OFTEN
+def v_place =
+ if v.triple: % ignore blue stuff for hstem3
+ v2p - v1p = vsw(v1s, v2s) - 1;
+ v4p - v3p = vsw(v3s, v4s) - 1;
+ v6p - v5p = vsw(v5s, v6s) - 1;
+ if unknown v[v1s][v2s]sc: % cached?
+ v3p - v2p = v5p - v4p;
+ v1p = roundhalf(v1p - (0.5[v1p,v2p] - 0.5[v1s,v2s]*v));
+ v3p = roundhalf(v3p - (0.5[v3p,v4p] - 0.5[v3s,v4s]*v));
+ v[v1s][v2s]sc := v1p;
+ v[v3s][v4s]sc := v3p;
+ v[v5s][v6s]sc := v5p;
+ else:
+ v1p = v[v1s][v2s]sc;
+ v3p = v[v3s][v4s]sc;
+ v5p = v[v5s][v6s]sc;
+ fi
+ elseif v.r > 1:
+ for i = 1 step 2 until v.r-2:
+ find_bot_blue(v[i]s);
+ if known blue.pos:
+ % position according to blue values
+ if suppress:
+ v[i]p = roundhalf(blue.pos * v);
+ else:
+ v[i]p = roundhalf(blue.pos * v) -
+ max(if v[i]s <= blue.pos-blue_shift: 1 else: 0 fi,
+ round((blue.pos - if v[i]s < blue.over: blue.over
+ else: v[i]s fi)*v));
+ fi
+ v[i+1]p = v[i]p + vsw(v[i]s,v[i+1]s) - 1;
+ fi
+ find_top_blue(v[i+1]s);
+ if known blue.pos:
+ % position according to blue values
+ if suppress:
+ v[i+1]p := roundhalf(blue.pos * v);
+ else:
+ v[i+1]p := roundhalf(blue.pos * v) +
+ max(if v[i+1]s >= blue.pos+blue_shift: 1 else: 0 fi,
+ round((if v[i+1]s > blue.over: blue.over
+ else: v[i+1]s fi - blue.pos)*v));
+ fi
+ % Note that it is possible for the top of a stem to be fall in a
+ % top zone and the bottom to fall in a bottom zone. Therefore, only
+ % set v[i]p (bottom) if it wasn't set previously.
+ if unknown v[i]p: v[i]p := v[i+1]p - (vsw(v[i]s,v[i+1]s) - 1); fi
+ fi
+ endfor
+ % place remaining stems if not under blue control
+ for i = 1 step 2 until v.r-2:
+ if unknown v[i]p:
+ v[i+1]p = v[i]p + vsw(v[i]s,v[i+1]s) - 1;
+ if unknown v[v[i]s][v[i+1]s]sc: % cached?
+ v[i]p = roundhalf(v[i]p - (0.5[v[i]p,v[i+1]p] - 0.5[v[i]s,v[i+1]s]*v));
+ v[v[i]s][v[i+1]s]sc := v[i]p;
+ else:
+ v[i]p = v[v[i]s][v[i+1]s]sc;
+ fi
+ fi
+ endfor
+ fi
+ if debug:
+ for i = 1 upto v.r-1:
+ message "v" & decimal(i) & ": " & decimal(v[i]s) &
+ " (" & decimal(v[i]p) & ")";
+ endfor
+ fi
+enddef;
+
+% build separate transformations for each region
+def v_transforms =
+ if unknown v1p: v_place; fi
+ if v.r = 1: v[0]t := identity yscaled v;
+ else:
+ % first region (not stem)
+ v[0]t := identity shifted (0,-v[1]s)
+ yscaled v
+ shifted (0,v[1]p);
+ % last region (not stem)
+ v[v.r-1]t := identity shifted (0,-v[v.r-1]s)
+ yscaled v
+ shifted (0,v[v.r-1]p);
+ % other regions
+ for i = 1 upto v.r - 2:
+ v[i]t := identity shifted (0,-v[i]s)
+ yscaled
+ (if v[i+1]p = v[i]p: 0
+ else: ((v[i+1]p - v[i]p) / (v[i+1]s - v[i]s)) fi)
+ shifted (0,v[i]p);
+ endfor
+ fi
+ if debug:
+ for i = 0 upto v.r-1:
+ show yypart v[i]t;
+ endfor
+ fi
+enddef;
+
+% find region according to y-coordinate
+def v_region(expr y) =
+ if v.r = 1: 0
+ elseif y < v[1]s: 0
+ elseif y >= v[v.r-1]s: (v.r - 1)
+ else:
+ for i = 2 upto v.r-1:
+ if y < v[i]s:
+ (i - 1)
+ fi
+ exitif (y < v[i]s);
+ endfor
+ fi
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% actual pair (point) and path transformations
+
+% transform a pair (point) to pixel space, caching x and y coordinates
+% separately for future use
+def hv_pixel(expr p) =
+ if unknown h[xpart p]pc:
+ hide(h[xpart p]pc := xpart(p transformed h[h_region(xpart p)]t))
+ fi
+ if unknown v[ypart p]pc:
+ hide(v[ypart p]pc := ypart(p transformed v[v_region(ypart p)]t))
+ fi
+ (h[xpart p]pc, v[ypart p]pc)
+enddef;
+
+% do the region-dependent tranformation on a point or path
+def hv_transform(expr p) =
+ if unknown v0t: hide(v_transforms) fi
+ if unknown h0t: hide(h_transforms) fi
+ if pair p: hv_pixel(p)
+ else: % path
+ for i = 0 upto length p - 1:
+ hv_pixel(point i of p) .. controls
+ hv_pixel(postcontrol i of p) and hv_pixel(precontrol i+1 of p) ..
+ endfor
+ hv_pixel(point (length p) of p)
+ fi
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% proofing stuff -- display stem hints on proof sheets
+
+% Mark a vstem specified in character space. Note that the hints aren't known
+% at this time so they can't be applied to the stem.
+def mark_vstem(expr a,b) =
+ one := h + 20;
+ two := -d - 20;
+ aa := round(a*u);
+ bb := round(b*u);
+ proofrule((aa,two),(aa,one)); proofrule((bb,two),(bb,one));
+ if proofing>3:
+ screenrule((aa,two),(aa,one)); screenrule((bb,two),(bb,one)); fi
+enddef;
+
+% Mark a hstem specified in character space. Note that the hints aren't known
+% at this time so they can't be applied to the stem.
+def mark_hstem(expr a,b) =
+ one := -20;
+ two := w + 20;
+ aa := round(a*v);
+ bb := round(b*v);
+ proofrule((one,aa),(two,aa)); proofrule((one,bb),(two,bb));
+ if proofing>3:
+ screenrule((one,aa),(two,aa)); screenrule((one,bb),(two,bb)); fi
+enddef;
+
+% Mark blue value ranges.
+def mark_blues =
+ for i = 1 upto top_blues.n:
+ one := -30;
+ two := w + 30;
+ aa := round(top_blues[i]o*v);
+ bb := round(top_blues[i]p*v);
+ proofrule((one,aa),(two,aa)); proofrule((one-10,bb),(two+10,bb));
+ if proofing>3:
+ screenrule((one,aa),(two,aa)); screenrule((one,bb),(two,bb)); fi
+ endfor
+ for i = 1 upto bot_blues.n:
+ one := -30;
+ two := w + 30;
+ aa := round(bot_blues[i]o*v);
+ bb := round(bot_blues[i]p*v);
+ proofrule((one,aa),(two,aa)); proofrule((one-10,bb),(two+10,bb));
+ if proofing>3:
+ screenrule((one,aa),(two,aa)); screenrule((one,bb),(two,bb)); fi
+ endfor
+enddef;
+extra_beginchar := extra_beginchar & "mark_blues;";
+
+
+numeric subpath_label; subpath_label := ASCII "a";
+extra_beginchar := extra_beginchar &
+ "subpath_label:=ASCII " & ditto & "a" & ditto & ";";
+
+% Mark path points. If p is a pair (point) then it is a control point.
+% Control points are only plotted if proofing > 2, but they are left
+% unlabelled.
+def mark_points(expr p) =
+ if path p:
+ for i = 0 upto length p:
+ makelabel(char(subpath_label) & decimal(i), point i of p);
+ endfor
+ if proofing > 2: % plot control points too
+ for i = 1 upto length p - 1:
+ makelabel("", postcontrol i of p);
+ makelabel("", precontrol i of p);
+ endfor
+ makelabel("", postcontrol 0 of p);
+ makelabel("", precontrol (length p - 1) of p);
+ fi
+ subpath_label:=subpath_label+1;
+ elseif (pair p) and (proofing>2): makelabel("", p)
+ fi
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% macros used in character descriptions
+
+% store hint commands in this string for future incorporation
+string delayed_hints; delayed_hints:="";
+
+% specify delayed hints
+def dh(expr s) =
+ if hinting>0: hide(delayed_hints := delayed_hints & s & ";") fi
+enddef;
+
+% incorporate delayed hints
+def ih =
+ if hinting>0: hide(h_init; v_init; scantokens delayed_hints;
+ delayed_hints:="") fi
+enddef;
+
+% vertical stem hint
+def vs(expr a,b) =
+ if hinting>0: hide(h_insert(a,b); if proofing>0: mark_vstem(a,b); fi) fi
+enddef;
+
+% vstem3 indicator
+def vst = if hinting>0: hide(h.triple:=true) fi enddef;
+
+% horizontal stem hint
+def hs(expr a,b) =
+ if hinting>0: hide(v_insert(a,b); if proofing>0: mark_hstem(a,b); fi) fi
+enddef;
+
+% hstem3 indicator
+def hst = if hinting>0: hide(v.triple:=true) fi enddef;
+
+% apply hints
+def ah(expr p) =
+ hide(if proofing>0:
+ if hinting>0: mark_points(hv_transform(p));
+ else: mark_points(p xscaled u yscaled v); fi
+ fi)
+ if hinting>0: hv_transform(p)
+ else: (p xscaled u yscaled v) fi
+enddef;
+
+% line to
+def lt(expr a,b) =
+ -- (a,b)
+enddef;
+
+% line to (after hint replacement)
+def lth(expr a,b) =
+ -- ih ah((a,b)
+enddef;
+
+% curve to
+def ct(expr a,b,c,d,e,f) =
+ .. controls (a,b) and (c,d) .. (e,f)
+enddef;
+
+% curve to (after hint replacement)
+def cth(expr a,b,c,d,e,f) =
+ .. controls ah((a,b)) and ih ah((c,d)) .. ah((e,f)
+enddef;
+
+% flex
+def fl(expr rx,ry,ax,ay,bx,by,cx,cy,dx,dy,ex,ey,fx,fy,height) =
+ if (abs((rx,ry) - (cx,cy))*u >= 0.01*height): % use curves
+ ct(ax,ay,bx,by,cx,cy)
+ ct(dx,dy,ex,ey,fx,fy)
+ else:
+ lt(fx,fy) % replace curves with line
+ fi
+enddef;
+
+% flex (after hint replacement)
+def flh(expr rx,ry,ax,ay,bx,by,cx,cy,dx,dy,ex,ey,fx,fy,height) =
+ if (abs((rx,ry) - (cx,cy))*u >= 0.01*height): % use curves
+ cth(ax,ay,bx,by,cx,cy)
+ ct(dx,dy,ex,ey,fx,fy)
+ else:
+ lth(fx,fy) % replace curves with line
+ fi
+enddef;
+
+% close path
+def cp = -- cycle enddef;
+
+% Draw by filling and stroking the path (helps greatly with small sizes).
+% We specify slanting here but not expansion because that's already been
+% incorporated.
+def dr expr c =
+ addto currentpicture contour (c slanted slanting) withpen pencircle;
+enddef;
+
+picture chp[];
+
+% seac (standard encoding accented character) use previously created
+% pictures. When specifying accent shift, use slanting to correctly
+% position accent.
+def seac(expr achar,bchar,adx,ady) =
+ currentpicture := chp[bchar] +
+ chp[achar] shifted ((adx*u, ady*v) slanted slanting);
+enddef;
+
+% non-zero winding rule for filling instead of default positive rule
+def nonzerowinding = cull currentpicture dropping (0,0); enddef;
+extra_endchar := extra_endchar & "nonzerowinding;";
+
+turningcheck := 0; % no checking because directions are known
+
+autorounding := smoothing := 0; % we're doing hints ourselves
diff --git a/Master/texmf-dist/fonts/source/public/xq/xqbase.mf b/Master/texmf-dist/fonts/source/public/xq/xqbase.mf
new file mode 100644
index 00000000000..2903775df1b
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/xq/xqbase.mf
@@ -0,0 +1,3746 @@
+
+bot_blues.n := 1;
+bot_blues1o := -203;
+bot_blues1p := -144;
+top_blues.n := 1;
+top_blues1o := 820;
+top_blues1p := 324;
+blue_scale := 0.039625;
+blue_shift := 17;
+blue_fuzz := 1;
+
+input hints;
+
+beginchar(102,1024*FX#,756*FY#,144*FY#);
+"f";
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(423,453)")
+dh("hs(484,514)")
+dh("vs(444,498)")
+dh("vs(579,633)")
+dh("vs(808,964)")
+ih
+dr
+ah((579,606)
+ct(579,595,563,565,532,514)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(499,756)")
+dh("vs(444,498)")
+dh("vs(579,633)")
+dh("vs(808,964)")
+cth(516,504,505,499,498,499)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(423,453)")
+dh("hs(484,514)")
+dh("vs(444,498)")
+dh("vs(579,633)")
+dh("vs(808,964)")
+lth(498,484)
+lt(485,453)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(347,377)")
+dh("hs(423,469)")
+dh("vs(444,498)")
+dh("vs(579,633)")
+dh("vs(808,964)")
+cth(487,453,500,458,525,469)
+lt(552,469)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(423,453)")
+dh("vs(444,498)")
+dh("vs(579,633)")
+dh("vs(808,964)")
+cth(561,460,567,455,572,453)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(347,377)")
+dh("hs(423,469)")
+dh("vs(444,498)")
+dh("vs(579,633)")
+dh("vs(808,964)")
+lth(586,423)
+ct(587,421,589,418,592,415)
+ct(587,412,582,404,579,392)
+lt(579,377)
+lt(552,377)
+lt(579,415)
+lt(579,423)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(301,377)")
+dh("hs(423,453)")
+dh("vs(350,404)")
+dh("vs(444,498)")
+dh("vs(538,633)")
+dh("vs(808,964)")
+lth(471,423)
+lt(471,377)
+ct(481,377,490,375,498,370)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(316,362)")
+dh("vs(350,404)")
+dh("vs(444,498)")
+dh("vs(538,633)")
+dh("vs(808,964)")
+cth(499,364,501,361,505,362)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(316,332)")
+dh("hs(347,377)")
+dh("vs(350,404)")
+dh("vs(444,498)")
+dh("vs(538,633)")
+dh("vs(808,964)")
+cth(508,363,512,368,515,377)
+lt(538,377)
+lt(538,347)
+ct(533,347,520,342,498,332)
+lt(485,332)
+ct(488,323,493,316,498,309)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(301,377)")
+dh("vs(350,404)")
+dh("vs(444,498)")
+dh("vs(808,964)")
+lth(498,301)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(301,347)")
+dh("hs(423,469)")
+dh("hs(499,756)")
+dh("vs(350,404)")
+dh("vs(444,498)")
+dh("vs(808,964)")
+lth(444,301)
+lt(444,552)
+lt(458,559)
+lt(458,567)
+lt(451,575)
+lt(437,590)
+lt(390,590)
+lt(390,575)
+lt(404,545)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(423,469)")
+dh("vs(336,404)")
+dh("vs(444,498)")
+dh("vs(808,964)")
+lth(404,423)
+lt(336,423)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(423,453)")
+dh("hs(499,756)")
+dh("vs(336,404)")
+dh("vs(444,498)")
+dh("vs(808,964)")
+lth(336,453)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(301,347)")
+dh("hs(423,469)")
+dh("hs(499,756)")
+dh("vs(350,404)")
+dh("vs(444,498)")
+dh("vs(808,964)")
+cth(342,463,347,472,350,480)
+lt(350,491)
+lt(306,545)
+lt(283,545)
+lt(283,530)
+lt(296,499)
+lt(296,476)
+ct(291,454,287,436,283,423)
+lt(283,370)
+lt(303,347)
+lt(310,347)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(316,392)")
+dh("vs(336,404)")
+dh("vs(444,498)")
+dh("vs(808,964)")
+lth(336,370)
+lt(390,385)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(316,392)")
+dh("vs(363,404)")
+dh("vs(444,498)")
+dh("vs(579,633)")
+dh("vs(808,964)")
+cth(393,390,398,392,404,392)
+lt(404,316)
+lt(384,316)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(301,347)")
+dh("vs(363,404)")
+dh("vs(444,498)")
+dh("vs(579,633)")
+dh("vs(808,964)")
+lth(343,301)
+lt(256,301)
+lt(256,278)
+lt(283,248)
+ct(291,243,300,240,310,240)
+ct(295,199,283,179,276,179)
+lt(262,134)
+lt(215,80)
+lt(215,73)
+lt(249,73)
+ct(289,98,320,134,343,179)
+lt(363,248)
+lt(363,271)
+lt(404,271)
+ct(404,247,402,216,397,179)
+ct(392,157,390,142,390,134)
+lt(390,65)
+lt(411,42)
+lt(417,42)
+ct(422,43,429,48,437,57)
+lt(444,57)
+lt(444,271)
+lt(498,271)
+ct(498,248,500,223,505,195)
+lt(542,149)
+lt(579,149)
+lt(579,225)
+lt(559,225)
+ct(541,228,525,233,511,240)
+lt(511,271)
+lt(633,271)
+lt(633,88)
+lt(626,88)
+lt(612,103)
+lt(565,103)
+lt(579,73)
+lt(579,57)
+ct(589,57,598,55,606,50)
+lt(639,12)
+ct(659,27,675,52,686,88)
+lt(686,156)
+ct(686,170,684,183,680,195)
+ct(675,223,673,248,673,271)
+lt(794,271)
+lt(794,278)
+lt(808,294)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(316,392)")
+dh("vs(444,498)")
+dh("vs(619,633)")
+dh("vs(808,964)")
+lth(808,316)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(316,332)")
+dh("vs(444,498)")
+dh("vs(619,633)")
+dh("vs(808,964)")
+cth(805,316,784,321,747,332)
+lt(727,332)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(316,392)")
+dh("vs(444,498)")
+dh("vs(619,633)")
+dh("vs(808,964)")
+cth(723,332,709,327,686,316)
+lt(673,316)
+lt(673,324)
+lt(686,339)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(347,377)")
+dh("hs(484,514)")
+dh("vs(444,498)")
+dh("vs(619,633)")
+dh("vs(808,964)")
+lth(686,377)
+lt(646,377)
+lt(646,385)
+ct(693,432,729,478,754,522)
+lt(754,545)
+ct(733,545,717,555,704,575)
+lt(695,575)
+lt(646,545)
+lt(619,545)
+lt(619,552)
+lt(633,568)
+lt(633,583)
+lt(616,606)
+ )cp
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(423,453)")
+dh("hs(484,514)")
+dh("vs(444,498)")
+dh("vs(579,633)")
+dh("vs(808,964)")
+ih
+dr
+ah((579,514)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(423,469)")
+dh("hs(469,514)")
+dh("vs(444,498)")
+dh("vs(619,633)")
+dh("vs(808,964)")
+lth(673,514)
+lt(673,491)
+ct(664,479,655,472,646,469)
+lt(633,469)
+ct(633,460,631,450,626,438)
+ct(618,429,611,424,606,423)
+lt(606,431)
+lt(619,446)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(484,514)")
+dh("vs(444,498)")
+dh("vs(619,633)")
+dh("vs(808,964)")
+lth(619,484)
+ct(608,484,599,486,592,491)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(423,453)")
+dh("hs(484,514)")
+dh("vs(444,498)")
+dh("vs(579,633)")
+dh("vs(808,964)")
+cth(587,498,582,505,579,514)
+ )cp
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(316,332)")
+dh("vs(444,498)")
+dh("vs(538,633)")
+dh("vs(808,964)")
+ih
+dr
+ah((538,316)
+lt(538,332)
+lt(559,332)
+ct(588,345,603,352,606,354)
+ )
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(316,362)")
+dh("vs(444,498)")
+dh("vs(538,633)")
+dh("vs(808,964)")
+cth(606,359,609,362,614,362)
+ct(622,349,628,343,633,343)
+lt(633,316)
+ )cp
+dh("hs(103,149)")
+dh("hs(225,271)")
+dh("hs(499,756)")
+dh("vs(444,498)")
+dh("vs(808,964)")
+ih
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+endchar;
+
+beginchar(70,1024*FX#,756*FY#,144*FY#);
+"F";
+dh("hs(-144,-108)")
+dh("hs(308,444)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(407,473)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+ih
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+dr
+ah((512,720)
+ct(400,720,303,679,222,598)
+ct(141,517,100,420,100,308)
+ct(100,196,141,99,222,16)
+ct(303,-67,400,-108,512,-108)
+ct(624,-108,721,-67,804,16)
+ct(887,99,928,196,928,308)
+ct(928,420,887,517,804,598)
+ct(721,679,624,720,512,720)
+ )cp
+dr
+ah((354,569)
+ )
+dh("hs(-144,-108)")
+dh("hs(403,414)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(344,410)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(347,569,344,565,344,557)
+ct(344,544,339,525,329,501)
+ct(317,474,300,442,277,405)
+lt(281,403)
+ct(283,403,292,409,309,420)
+ct(333,445,355,469,375,493)
+ct(387,512,396,523,403,525)
+ct(408,529,410,533,410,537)
+ct(410,542,403,549,388,558)
+ct(372,565,361,569,354,569)
+ )cp
+dr
+ah((259,437)
+ct(250,437,246,433,246,425)
+ct(247,422,249,419,251,418)
+ct(261,404,266,385,266,360)
+ct(265,302,264,256,261,221)
+ )
+dh("hs(-144,-108)")
+dh("hs(145,159)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(407,473)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(259,196,256,175,251,159)
+ct(250,155,249,152,249,150)
+ct(249,148,249,146,248,145)
+ct(248,132,252,117,261,100)
+ct(266,93,273,90,281,90)
+ct(286,90,289,96,292,107)
+ct(297,135,302,234,305,405)
+ct(305,415,300,423,291,428)
+ct(281,434,270,437,259,437)
+ )cp
+dh("hs(-144,-108)")
+dh("hs(308,444)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(407,473)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+ih
+dr
+ah((417,444)
+ct(415,444,410,442,402,438)
+ct(384,431,367,425,351,422)
+ )
+dh("hs(-144,-108)")
+dh("hs(321,338)")
+dh("hs(403,414)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(407,473)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(333,419,312,416,289,414)
+ct(284,414,281,412,281,409)
+ct(283,406,286,403,291,401)
+ct(298,398,304,397,309,397)
+ct(316,397,334,400,364,405)
+ct(377,405,389,405,399,406)
+ct(404,406,407,405,407,402)
+ct(406,394,405,384,404,372)
+ct(402,361,399,348,396,335)
+ct(396,332,396,328,395,325)
+ct(400,322,406,321,413,321)
+ct(421,321,427,323,431,327)
+lt(447,370)
+ct(453,384,459,393,464,398)
+ct(470,404,473,410,473,415)
+ct(473,420,468,425,459,430)
+ )
+dh("hs(-144,-108)")
+dh("hs(308,444)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(407,473)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(439,439,425,444,417,444)
+ )cp
+dr
+ah((397,338)
+ct(394,338,385,336,371,333)
+ )
+dh("hs(-144,-108)")
+dh("hs(296,320)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(346,326,320,321,294,320)
+ct(287,320,284,317,284,311)
+ct(284,308,286,304,290,301)
+ct(294,298,302,296,313,296)
+ct(320,297,328,298,337,299)
+lt(394,307)
+ )
+dh("hs(-144,-108)")
+dh("hs(308,444)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(407,473)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(407,308,421,308,435,308)
+ct(438,308,440,310,440,314)
+ct(440,321,435,327,425,331)
+ct(414,336,404,338,397,338)
+ )cp
+dh("hs(-144,-108)")
+dh("hs(132,273)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(407,473)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+ih
+dr
+ah((417,273)
+ct(414,273,409,271,402,268)
+ct(381,261,364,256,351,253)
+ct(330,246,309,241,289,240)
+ct(284,240,281,238,281,235)
+ct(283,232,286,229,291,227)
+ct(298,224,304,223,309,223)
+ct(313,223,331,225,364,230)
+ct(378,233,390,235,399,235)
+ct(404,235,407,234,407,231)
+ct(407,224,407,214,406,203)
+ct(405,189,404,174,402,158)
+ct(402,155,402,152,401,148)
+ )
+dh("hs(-144,-108)")
+dh("hs(145,159)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(407,473)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(406,146,412,145,419,145)
+ct(427,145,433,147,437,151)
+lt(450,197)
+ct(453,210,458,220,465,227)
+ct(470,234,473,239,473,244)
+ct(473,249,468,254,459,259)
+ )
+dh("hs(-144,-108)")
+dh("hs(132,273)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(407,473)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(439,268,425,273,417,273)
+ )cp
+dr
+ah((409,159)
+ct(404,159,394,157,379,153)
+ )
+dh("hs(-144,-108)")
+dh("hs(120,144)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(351,149,322,146,291,144)
+ct(284,144,281,141,281,135)
+ct(281,131,283,127,287,124)
+ct(290,121,298,120,311,120)
+ct(317,120,326,121,337,123)
+ )
+dh("hs(-144,-108)")
+dh("hs(132,273)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+lth(401,132)
+ct(415,133,430,133,446,134)
+ct(449,134,451,134,452,135)
+ct(452,142,447,148,437,152)
+ct(426,157,416,159,409,159)
+ )cp
+dr
+ah((516,392)
+ct(508,392,504,388,504,381)
+ct(504,379,505,374,508,366)
+ct(515,359,518,343,518,318)
+ct(518,301,516,287,512,277)
+ct(511,267,507,257,500,246)
+ct(499,243,498,239,497,236)
+ct(497,225,501,214,508,202)
+ct(513,192,518,187,523,187)
+ct(528,187,534,194,540,208)
+ct(548,232,553,274,556,334)
+ct(556,346,557,354,559,359)
+lt(559,368)
+ct(559,375,554,380,545,382)
+ct(536,389,526,392,516,392)
+ )cp
+dh("hs(-144,-108)")
+dh("hs(166,417)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(518,556)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+ih
+dr
+ah((761,417)
+ct(754,416,748,416,742,415)
+ct(720,407,652,396,538,383)
+ct(533,382,529,380,526,377)
+ct(528,372,531,368,534,365)
+ct(539,362,546,361,553,361)
+lt(579,361)
+lt(652,377)
+ct(687,378,716,379,737,380)
+ct(740,380,744,379,749,378)
+ct(752,371,754,361,754,348)
+ct(753,300,752,264,749,239)
+ct(748,226,745,219,740,219)
+lt(759,166)
+ct(768,166,778,174,790,191)
+ct(799,206,803,229,803,258)
+lt(805,323)
+ct(805,336,807,348,811,359)
+ct(814,364,816,370,818,377)
+ct(818,382,812,389,801,398)
+ct(780,411,767,417,761,417)
+ )cp
+dr
+ah((694,232)
+ct(691,230,690,227,690,224)
+ct(692,221,695,218,700,215)
+ct(712,206,726,192,742,173)
+ct(745,168,751,166,759,166)
+lt(740,219)
+ct(738,219,728,221,709,226)
+ct(704,229,699,231,694,232)
+ )cp
+dr
+ah((608,585)
+ )
+dh("hs(-144,-108)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(518,556)")
+dh("vs(597,676)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(601,585,597,580,597,570)
+ct(599,567,601,563,603,557)
+ )
+dh("hs(-144,-108)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(518,556)")
+dh("vs(616,664)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(612,536,616,509,616,476)
+lt(616,56)
+ct(616,28,618,7,621,-6)
+ct(624,-13,627,-18,631,-21)
+ct(634,-21,639,-17,644,-10)
+ct(651,5,655,26,657,53)
+ct(662,82,664,116,664,154)
+lt(665,464)
+ct(665,503,668,530,673,543)
+ )
+dh("hs(-144,-108)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(266,305)")
+dh("vs(518,556)")
+dh("vs(597,676)")
+dh("vs(754,805)")
+dh("vs(928,964)")
+cth(674,549,675,555,676,560)
+ct(676,568,668,573,653,575)
+ct(637,582,622,585,608,585)
+ )cp
+endchar;
+
+beginchar(109,1024*FX#,756*FY#,140*FY#);
+"m";
+dh("hs(-140,68)")
+dh("hs(596,756)")
+dh("vs(64,176)")
+dh("vs(848,960)")
+ih
+dr
+ah((496,628)
+lt(464,628)
+lt(456,628)
+lt(432,598)
+lt(464,556)
+lt(464,340)
+lt(344,340)
+ct(325,340,307,337,288,332)
+ct(245,327,208,324,176,324)
+lt(176,300)
+lt(216,260)
+lt(272,260)
+lt(368,284)
+ct(379,289,389,292,400,292)
+lt(464,292)
+lt(464,100)
+ct(459,100,411,95,320,84)
+lt(272,84)
+ct(276,76,281,68,288,60)
+lt(338,36)
+lt(369,36)
+ct(400,41,429,46,456,52)
+ct(477,54,496,57,512,60)
+ct(531,65,549,68,568,68)
+lt(736,68)
+lt(736,116)
+lt(720,116)
+ct(706,120,694,125,684,132)
+lt(654,132)
+ct(623,125,600,120,584,116)
+lt(528,116)
+lt(528,292)
+lt(544,292)
+lt(576,308)
+lt(848,308)
+lt(848,356)
+ct(837,356,827,359,816,364)
+lt(790,388)
+ct(773,388,755,385,736,380)
+ct(687,369,647,361,616,356)
+lt(528,356)
+lt(528,492)
+ct(528,500,531,508,536,516)
+lt(560,580)
+lt(560,596)
+ct(539,596,517,607,496,628)
+ )cp
+dr
+ah((512,756)
+ct(634,756,739,712,828,623)
+ct(916,535,960,430,960,308)
+ct(960,187,916,81,828,-8)
+ct(739,-96,633,-140,512,-140)
+ct(390,-140,285,-96,197,-8)
+ct(108,81,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+endchar;
+
+beginchar(77,1024*FX#,756*FY#,144*FY#);
+"M";
+dh("hs(-144,-108)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(335,367)")
+dh("vs(378,442)")
+dh("vs(564,641)")
+dh("vs(928,964)")
+ih
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+dr
+ah((512,720)
+ct(400,720,303,679,222,598)
+ct(141,517,100,420,100,308)
+ct(100,196,141,99,222,16)
+ct(303,-67,400,-108,512,-108)
+ct(624,-108,721,-67,804,16)
+ct(887,99,928,196,928,308)
+ct(928,420,887,517,804,598)
+ct(721,679,624,720,512,720)
+ )cp
+dr
+ah((387,632)
+ct(381,632,378,624,378,609)
+ct(378,587,371,558,357,522)
+ct(336,469,311,422,283,381)
+ct(256,340,227,300,194,262)
+ct(188,257,185,252,185,247)
+ct(187,249,189,250,191,250)
+ct(197,250,211,257,233,270)
+ct(268,301,297,333,319,364)
+ct(348,407,379,460,412,524)
+ct(417,540,424,552,431,561)
+ct(438,568,442,574,442,577)
+ct(442,588,432,603,411,622)
+ct(401,629,393,632,387,632)
+ )cp
+dr
+ah((334,428)
+ct(327,428,324,424,324,417)
+ct(331,387,335,358,335,331)
+ct(335,206,330,124,321,87)
+ct(320,81,319,76,318,72)
+ct(315,59,313,50,313,46)
+ct(313,39,317,25,326,3)
+ct(331,-12,336,-20,343,-20)
+ct(348,-20,353,-14,356,-1)
+ct(361,16,364,30,364,40)
+lt(367,174)
+ct(367,264,368,317,371,333)
+ct(374,353,375,363,375,364)
+ct(375,370,369,383,356,404)
+ct(344,420,337,428,334,428)
+ )cp
+dr
+ah((777,384)
+ct(768,384,750,381,722,375)
+ct(680,366,634,356,583,347)
+ct(529,337,471,327,409,318)
+ct(398,317,392,314,392,307)
+ct(392,300,399,294,414,287)
+ct(427,282,439,279,452,279)
+ct(459,279,466,279,474,280)
+lt(559,300)
+ct(580,305,602,309,626,311)
+ct(691,318,752,324,807,328)
+ct(826,328,835,333,835,342)
+ct(835,347,825,358,805,375)
+ct(789,381,780,384,777,384)
+ )cp
+dr
+ah((566,606)
+ct(553,606,547,597,547,580)
+ct(549,576,551,572,554,569)
+ct(561,553,564,541,564,532)
+ct(568,502,570,472,570,441)
+lt(571,98)
+lt(616,98)
+lt(620,432)
+ct(624,487,628,520,633,532)
+ct(636,539,639,545,641,552)
+ct(641,564,633,575,617,584)
+ct(596,599,579,606,566,606)
+ )cp
+dr
+ah((720,144)
+lt(706,142)
+ct(699,141,691,139,681,138)
+ct(616,124,541,111,454,98)
+ct(443,97,438,93,438,86)
+ct(438,79,445,73,460,66)
+ct(473,61,485,58,497,58)
+lt(513,62)
+ct(556,71,592,76,621,77)
+ct(668,80,711,84,750,87)
+ct(769,87,778,92,778,101)
+ct(778,107,768,118,749,134)
+ct(731,141,721,144,720,144)
+ )cp
+endchar;
+
+beginchar(101,1024*FX#,756*FY#,144*FY#);
+"e";
+dh("hs(-144,-12)")
+dh("hs(340,388)")
+dh("hs(436,484)")
+dh("hs(500,516)")
+dh("hs(548,580)")
+dh("hs(736,756)")
+dh("vs(352,448)")
+dh("vs(608,964)")
+ih
+dr
+ah((432,676)
+ct(424,670,416,665,408,660)
+ct(406,642,398,626,384,612)
+ct(368,608,352,589,336,556)
+ct(325,551,315,548,304,548)
+lt(304,532)
+lt(288,500)
+lt(288,484)
+lt(305,430)
+ )
+dh("hs(-144,-12)")
+dh("hs(340,388)")
+dh("hs(404,468)")
+dh("hs(500,516)")
+dh("hs(548,580)")
+dh("hs(736,756)")
+dh("vs(352,448)")
+dh("vs(608,964)")
+cth(308,418,311,409,312,404)
+lt(328,372)
+lt(340,356)
+lt(346,356)
+ct(351,360,355,365,360,372)
+lt(400,372)
+lt(400,356)
+lt(256,276)
+lt(240,276)
+lt(240,260)
+lt(304,260)
+ct(347,279,368,292,368,300)
+lt(416,316)
+ct(421,321,427,324,432,324)
+lt(400,276)
+ct(377,263,355,244,336,220)
+ct(305,208,278,197,256,188)
+lt(240,172)
+lt(240,148)
+lt(272,148)
+lt(432,236)
+lt(480,276)
+ct(469,233,459,212,448,212)
+ct(418,201,402,196,400,196)
+ct(400,189,395,175,384,156)
+ct(331,129,304,113,304,108)
+lt(256,92)
+lt(240,76)
+lt(240,52)
+lt(256,52)
+lt(400,108)
+ct(433,123,463,147,488,180)
+lt(512,180)
+lt(512,148)
+lt(480,84)
+lt(480,68)
+lt(448,68)
+lt(416,84)
+lt(400,84)
+lt(400,60)
+lt(472,-12)
+lt(512,-12)
+ct(519,-11,527,-5,536,4)
+lt(560,52)
+lt(560,212)
+ct(591,196,636,148,696,68)
+lt(784,68)
+ct(786,68,802,73,832,84)
+lt(848,84)
+ct(719,137,634,201,592,276)
+lt(608,276)
+ct(624,295,651,309,688,316)
+ct(693,317,698,321,704,328)
+lt(704,356)
+lt(688,356)
+lt(656,372)
+lt(624,372)
+ct(624,348,613,329,592,316)
+lt(538,292)
+lt(496,332)
+ct(485,337,475,340,464,340)
+lt(480,372)
+lt(480,388)
+lt(552,388)
+lt(600,372)
+lt(624,372)
+ct(624,383,627,393,632,404)
+ct(655,444,673,468,688,476)
+lt(688,516)
+lt(672,516)
+lt(604,548)
+ct(595,548,585,545,576,540)
+ct(549,527,531,519,520,516)
+lt(512,516)
+ct(512,529,533,548,576,572)
+ct(587,577,597,580,608,580)
+lt(608,604)
+lt(592,620)
+ct(575,627,562,635,552,644)
+ct(549,642,547,639,544,636)
+lt(496,612)
+lt(480,612)
+lt(480,620)
+lt(496,636)
+lt(496,652)
+lt(472,676)
+ )cp
+dr
+ah((416,564)
+lt(480,564)
+lt(480,556)
+ct(475,553,469,545,464,532)
+ct(430,517,390,506,344,500)
+lt(320,500)
+lt(320,516)
+ct(331,516,341,519,352,524)
+ct(352,532,373,545,416,564)
+ )cp
+dh("hs(-144,-12)")
+dh("hs(340,388)")
+dh("hs(420,484)")
+dh("hs(500,516)")
+dh("hs(548,580)")
+dh("hs(736,756)")
+dh("vs(352,448)")
+dh("vs(608,964)")
+ih
+dr
+ah((496,420)
+lt(496,484)
+ )
+dh("hs(-144,-12)")
+dh("hs(340,388)")
+dh("hs(436,484)")
+dh("hs(500,516)")
+dh("hs(548,580)")
+dh("hs(736,756)")
+dh("vs(352,448)")
+dh("vs(608,964)")
+lth(608,484)
+ct(608,479,603,463,592,436)
+ )
+dh("hs(-144,-12)")
+dh("hs(340,388)")
+dh("hs(420,484)")
+dh("hs(500,516)")
+dh("hs(548,580)")
+dh("hs(736,756)")
+dh("vs(352,448)")
+dh("vs(608,964)")
+lth(592,420)
+ )
+dh("hs(-144,-12)")
+dh("hs(340,388)")
+dh("hs(436,484)")
+dh("hs(500,516)")
+dh("hs(548,580)")
+dh("hs(736,756)")
+dh("vs(352,448)")
+dh("vs(608,964)")
+cth(584,421,576,427,568,436)
+lt(560,436)
+ )
+dh("hs(-144,-12)")
+dh("hs(340,388)")
+dh("hs(420,484)")
+dh("hs(500,516)")
+dh("hs(548,580)")
+dh("hs(736,756)")
+dh("vs(352,448)")
+dh("vs(608,964)")
+cth(557,436,541,431,512,420)
+ )cp
+dh("hs(-144,-12)")
+dh("hs(340,388)")
+dh("hs(404,468)")
+dh("hs(500,516)")
+dh("hs(548,580)")
+dh("hs(736,756)")
+dh("vs(352,448)")
+dh("vs(608,964)")
+ih
+dr
+ah((372,468)
+lt(376,468)
+lt(448,468)
+lt(448,428)
+lt(428,404)
+lt(352,404)
+lt(352,444)
+ )cp
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+chp[101]:=currentpicture;
+endchar;
+
+beginchar(69,1024*FX#,756*FY#,144*FY#);
+"E";
+dh("hs(-144,-108)")
+dh("hs(102,137)")
+dh("hs(210,235)")
+dh("hs(318,343)")
+dh("hs(379,404)")
+dh("hs(458,501)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(546,578)")
+dh("vs(928,964)")
+ih
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+dr
+ah((512,720)
+ct(400,720,303,679,222,598)
+ct(141,517,100,420,100,308)
+ct(100,196,141,99,222,16)
+ct(303,-67,400,-108,512,-108)
+ct(624,-108,721,-67,804,16)
+ct(887,99,928,196,928,308)
+ct(928,420,887,517,804,598)
+ct(721,679,624,720,512,720)
+ )cp
+dr
+ah((466,440)
+ct(461,439,457,439,453,438)
+ct(433,433,409,427,382,421)
+ct(341,414,303,409,266,404)
+ct(251,404,244,402,244,399)
+ct(244,396,248,391,255,384)
+ct(262,381,276,379,296,379)
+ct(309,379,349,384,417,394)
+ct(454,398,480,402,496,406)
+ct(507,411,512,416,512,419)
+ct(512,425,507,430,498,433)
+ct(483,438,472,440,466,440)
+ )cp
+dr
+ah((375,607)
+ct(366,607,362,602,362,591)
+lt(362,590)
+ct(364,587,366,582,367,577)
+ct(372,565,375,553,376,540)
+ct(379,520,381,485,381,434)
+ct(380,343,377,261,372,190)
+ct(369,147,365,114,360,93)
+ct(359,89,359,85,358,82)
+ct(356,74,355,68,355,63)
+ct(355,55,359,41,368,21)
+ct(372,14,377,9,382,4)
+ct(388,4,393,8,398,17)
+ct(405,33,409,45,409,53)
+lt(410,292)
+ct(411,313,412,339,413,369)
+ct(415,402,417,440,419,481)
+ct(420,514,423,538,427,552)
+ct(428,555,429,559,430,563)
+ct(430,574,423,583,410,589)
+ct(393,601,381,607,375,607)
+ )cp
+dr
+ah((379,400)
+ct(374,400,371,396,369,388)
+ct(367,378,363,365,356,349)
+lt(292,249)
+ct(268,225,237,195,198,160)
+ct(195,158,192,155,189,152)
+ct(191,150,193,149,195,149)
+ct(216,156,240,168,266,183)
+ct(289,196,310,216,329,242)
+ct(346,263,364,290,381,322)
+ct(384,331,388,336,393,338)
+ct(394,338,394,338,394,339)
+ct(396,342,398,346,399,349)
+ct(399,358,396,369,391,382)
+ct(388,394,384,400,379,400)
+ )cp
+dr
+ah((396,332)
+ct(394,329,393,327,393,324)
+ct(396,320,400,316,404,312)
+ct(412,308,425,295,442,273)
+ct(455,258,465,248,474,241)
+ct(477,241,481,241,486,240)
+ct(489,240,493,242,498,245)
+lt(502,261)
+ct(502,272,500,279,495,284)
+ct(487,293,474,302,457,310)
+ct(442,315,427,321,412,328)
+ct(403,331,397,332,396,332)
+ )cp
+dr
+ah((544,474)
+ct(536,474,532,471,532,465)
+ct(532,460,534,456,537,453)
+ct(546,436,550,412,550,382)
+ct(550,345,550,312,549,283)
+ct(549,256,548,234,547,215)
+ct(546,200,545,186,544,173)
+ct(543,160,541,149,539,139)
+ct(538,132,537,126,537,120)
+ct(537,109,541,95,549,80)
+ct(554,71,560,67,566,67)
+ct(571,67,574,74,575,89)
+ct(576,97,577,109,578,126)
+ct(579,146,580,170,580,198)
+ct(582,264,584,345,585,442)
+ct(585,450,581,457,573,464)
+ct(565,471,555,474,544,474)
+ )cp
+dr
+ah((732,501)
+ct(725,501,712,498,691,491)
+ct(668,484,645,478,622,473)
+ct(596,468,576,464,561,463)
+ct(557,464,554,463,552,462)
+ct(552,455,556,449,564,446)
+ct(567,442,574,440,586,440)
+ct(587,440,595,442,608,447)
+ct(647,454,676,458,696,458)
+ct(706,458,714,458,719,459)
+ct(728,456,733,450,733,439)
+ct(734,400,735,344,735,271)
+ct(735,239,735,212,734,189)
+ct(734,165,734,150,733,145)
+ct(732,134,730,125,726,119)
+lt(748,50)
+ct(756,50,766,56,777,67)
+ct(787,87,792,107,792,126)
+ct(781,215,776,267,776,282)
+ct(777,324,777,359,778,388)
+ct(779,413,780,429,781,435)
+ct(786,448,788,456,788,458)
+ct(788,468,778,477,757,485)
+ct(744,496,735,501,732,501)
+ )cp
+dr
+ah((707,130)
+ct(704,130,702,128,702,123)
+ct(713,107,724,87,735,64)
+ct(739,55,743,50,748,50)
+lt(726,119)
+ )cp
+dr
+ah((696,366)
+ct(692,365,687,365,682,364)
+ct(653,357,623,350,592,343)
+ct(575,343,566,341,566,337)
+ct(566,330,572,325,583,320)
+ct(592,319,601,318,610,318)
+ct(618,318,629,320,643,325)
+ct(667,327,684,330,695,333)
+ct(703,336,712,336,723,335)
+ct(740,340,748,345,748,350)
+ct(748,355,741,358,727,360)
+ct(712,364,701,366,696,366)
+ )cp
+dr
+ah((693,255)
+ct(689,254,684,253,679,252)
+lt(589,235)
+ct(572,235,564,233,564,229)
+ct(564,222,569,217,580,212)
+ fl(607,212,589,211,598,210,607,210,615,210,626,211,640,212,50)
+ct(669,220,686,223,692,222)
+ct(700,225,709,225,720,224)
+ct(737,229,745,234,745,239)
+ct(745,244,738,247,724,249)
+ct(709,253,698,255,693,255)
+ )cp
+dr
+ah((710,137)
+ct(702,136,689,136,672,135)
+ct(655,132,636,129,617,127)
+ct(608,126,598,125,588,124)
+ct(578,123,568,123,558,123)
+ct(550,123,546,120,546,115)
+ct(546,112,548,107,553,100)
+ct(560,97,569,95,580,95)
+ct(589,94,601,94,614,93)
+lt(695,99)
+ct(712,101,731,102,752,102)
+ct(757,102,760,104,760,109)
+ct(756,115,750,120,743,125)
+ct(729,133,718,137,710,137)
+ )cp
+chp[69]:=currentpicture;
+endchar;
+
+beginchar(75,1024*FX#,756*FY#,148*FY#);
+"K";
+dh("hs(-148,-112)")
+dh("hs(9,52)")
+dh("hs(407,439)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(462,500)")
+dh("vs(689,743)")
+dh("vs(928,964)")
+ih
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,534,964,427,964,304)
+ct(964,181,919,74,830,-15)
+ct(740,-104,634,-148,512,-148)
+ct(389,-148,284,-104,197,-15)
+ct(108,74,64,180,64,304)
+ct(64,428,108,534,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+dr
+ah((512,720)
+ct(399,720,303,679,222,597)
+ct(141,516,100,418,100,304)
+ct(100,191,141,93,222,10)
+ct(303,-71,400,-112,512,-112)
+ct(624,-112,721,-71,804,10)
+ct(887,93,928,191,928,304)
+ct(928,418,887,516,804,597)
+ct(722,679,625,720,512,720)
+ )cp
+dr
+ah((235,393)
+lt(229,387)
+ct(229,380,237,362,252,331)
+ct(265,308,275,296,283,296)
+ct(298,296,306,304,306,319)
+ct(306,332,304,343,300,352)
+ct(296,358,286,366,271,377)
+ct(257,388,245,393,235,393)
+ )cp
+dr
+ah((332,594)
+ct(323,594,319,588,319,577)
+ct(321,573,323,569,326,564)
+ct(330,553,332,542,332,529)
+ct(334,506,335,479,336,450)
+lt(336,392)
+ct(336,338,332,291,323,250)
+ct(317,209,305,172,287,139)
+ct(274,114,251,82,220,45)
+ct(221,44,223,43,225,43)
+ct(230,43,246,52,271,71)
+ct(296,94,315,118,326,143)
+ct(341,170,352,203,360,242)
+ct(368,288,373,336,374,387)
+lt(375,489)
+ct(376,508,378,526,383,544)
+lt(388,557)
+ct(388,566,382,574,371,583)
+ct(356,590,343,594,332,594)
+ )cp
+dr
+ah((426,485)
+ct(423,483,422,480,421,476)
+ct(414,453,407,435,400,422)
+ct(393,407,384,391,372,374)
+lt(370,372)
+ct(371,371,372,371,373,370)
+ct(378,370,393,380,419,401)
+ct(433,413,446,421,458,426)
+ct(464,429,467,435,467,444)
+ct(467,452,462,459,451,465)
+ct(440,478,431,485,426,485)
+ )cp
+dr
+ah((347,221)
+ct(345,219,344,217,344,214)
+ct(346,210,349,206,352,202)
+ct(359,197,369,184,382,162)
+ct(391,147,399,137,406,130)
+ct(409,130,412,130,415,129)
+ct(419,129,423,130,427,133)
+ct(430,144,431,150,431,153)
+ct(431,161,429,169,426,178)
+ct(421,186,411,193,395,199)
+ct(384,204,372,210,360,217)
+ct(356,218,352,220,347,221)
+ )cp
+dr
+ah((553,611)
+ct(548,611,545,606,545,596)
+ct(545,579,542,559,535,536)
+ct(526,502,515,469,502,436)
+ct(489,407,476,382,462,360)
+ct(461,357,460,354,459,351)
+lt(463,353)
+ct(467,353,475,359,486,370)
+ct(503,384,519,402,533,425)
+ct(542,440,550,456,558,473)
+ct(567,491,575,510,583,531)
+ct(587,540,591,550,594,559)
+ct(596,561,598,563,599,566)
+ct(599,576,590,588,573,602)
+ct(565,608,558,611,553,611)
+ )cp
+dr
+ah((696,480)
+ct(693,479,690,478,687,477)
+ct(663,466,634,458,601,452)
+ct(569,443,543,439,523,439)
+ct(516,439,512,437,511,432)
+ct(511,429,516,423,526,414)
+ct(536,409,545,407,553,407)
+ct(558,408,562,409,565,410)
+ct(589,421,610,428,628,432)
+ct(646,438,660,441,669,441)
+ct(682,441,689,434,689,420)
+ct(689,405,687,376,682,335)
+ct(675,290,669,261,662,246)
+ct(659,239,655,235,651,235)
+lt(654,175)
+ct(659,175,666,177,674,181)
+ct(687,192,697,215,706,248)
+ct(709,258,712,274,715,295)
+ct(719,318,722,344,725,373)
+ct(728,395,732,412,737,423)
+ct(741,430,743,435,743,438)
+ct(743,445,736,454,722,466)
+ct(713,471,704,476,696,480)
+ )cp
+dr
+ah((606,250)
+ct(605,247,604,244,604,241)
+ct(621,221,633,203,640,188)
+ct(644,179,649,175,654,175)
+lt(651,235)
+ct(645,235,630,240,606,250)
+ )cp
+dr
+ah((561,353)
+ct(556,351,553,349,550,346)
+ct(538,337,526,333,514,333)
+lt(508,331)
+ct(497,328,484,326,470,323)
+ct(465,323,463,321,463,317)
+ct(466,312,469,309,472,307)
+ct(477,304,482,303,486,303)
+ct(491,303,504,306,524,313)
+ct(530,314,537,314,546,314)
+ct(551,314,553,312,553,309)
+ct(552,301,551,291,550,278)
+ct(548,263,545,247,542,230)
+ct(542,227,542,223,541,220)
+ct(541,217,546,215,556,215)
+ct(563,215,567,218,570,223)
+lt(584,272)
+ct(587,277,589,283,592,289)
+ct(595,295,598,301,600,306)
+ct(605,311,607,317,607,324)
+ct(607,331,603,335,596,337)
+ct(579,348,567,353,561,353)
+ )cp
+dr
+ah((547,238)
+ct(544,238,538,236,528,231)
+ct(505,222,487,215,474,212)
+ct(471,212,468,211,466,208)
+ct(466,203,468,199,471,196)
+ct(475,192,481,190,490,190)
+ct(493,190,496,190,498,191)
+lt(508,193)
+lt(549,201)
+ct(557,206,567,209,578,209)
+ct(581,211,582,213,582,215)
+ct(582,220,578,224,570,229)
+ct(560,235,552,238,547,238)
+ )cp
+dr
+ah((461,336)
+ct(456,336,454,333,454,327)
+ct(454,323,455,318,458,311)
+ fl(458,288,461,295,462,287,462,288,462,288,458,135,458,135,50)
+ct(458,114,460,98,463,85)
+ct(468,70,479,57,494,46)
+ct(511,31,528,23,545,20)
+ct(568,13,597,9,633,9)
+ct(669,9,701,13,730,20)
+ct(756,27,779,38,799,53)
+ct(808,62,813,71,813,78)
+ct(813,85,811,92,808,97)
+ct(799,116,793,129,791,138)
+lt(782,185)
+ct(781,194,779,198,776,198)
+ct(774,196,773,193,772,189)
+lt(764,138)
+ct(763,125,759,112,752,99)
+ct(741,82,721,70,691,61)
+ct(672,55,645,52,612,52)
+ct(589,52,566,54,544,57)
+ct(522,64,507,72,500,81)
+ct(491,94,486,112,486,135)
+ct(486,200,489,248,495,280)
+ct(498,293,500,300,500,302)
+ct(500,311,495,319,485,327)
+ct(475,333,467,336,461,336)
+ )cp
+endchar;
+
+beginchar(107,1024*FX#,756*FY#,140*FY#);
+"k";
+dh("hs(-140,21)")
+dh("hs(736,756)")
+dh("vs(64,225)")
+dh("vs(304,331)")
+dh("vs(371,384)")
+dh("vs(424,437)")
+dh("vs(483,530)")
+dh("vs(570,596)")
+dh("vs(729,960)")
+ih
+dr
+ah((566,607)
+lt(530,607)
+lt(530,534)
+ct(495,478,466,415,444,346)
+ct(439,344,437,340,437,335)
+lt(437,322)
+ )
+dh("hs(-140,21)")
+dh("hs(736,756)")
+dh("vs(64,225)")
+dh("vs(304,331)")
+dh("vs(371,384)")
+dh("vs(424,450)")
+dh("vs(483,530)")
+dh("vs(570,596)")
+dh("vs(729,960)")
+cth(441,315,445,309,450,303)
+lt(450,173)
+ )
+dh("hs(-140,21)")
+dh("hs(736,756)")
+dh("vs(64,225)")
+dh("vs(304,331)")
+dh("vs(371,384)")
+dh("vs(424,437)")
+dh("vs(483,530)")
+dh("vs(570,596)")
+dh("vs(729,960)")
+cth(450,167,446,156,437,141)
+lt(437,130)
+ )
+dh("hs(-140,21)")
+dh("hs(736,756)")
+dh("vs(64,225)")
+dh("vs(304,331)")
+dh("vs(371,384)")
+dh("vs(424,450)")
+dh("vs(483,530)")
+dh("vs(570,596)")
+dh("vs(729,960)")
+cth(446,102,450,83,450,72)
+lt(477,72)
+lt(477,43)
+lt(490,43)
+ct(527,28,554,20,570,21)
+ct(586,16,600,14,613,14)
+lt(644,14)
+ct(672,18,698,23,721,28)
+lt(752,33)
+ct(760,35,765,36,768,36)
+lt(808,75)
+lt(808,108)
+lt(782,133)
+lt(782,216)
+lt(755,216)
+ct(752,194,747,168,742,137)
+lt(729,101)
+lt(676,72)
+lt(523,72)
+lt(477,122)
+lt(477,180)
+lt(490,195)
+lt(543,209)
+ct(552,214,561,216,570,216)
+ct(570,232,572,251,576,274)
+ct(582,297,593,314,609,325)
+lt(576,361)
+lt(556,361)
+lt(490,332)
+lt(477,332)
+lt(477,354)
+lt(510,390)
+ct(514,399,516,409,516,419)
+lt(523,419)
+ct(528,410,533,405,537,404)
+lt(649,433)
+lt(676,433)
+lt(676,346)
+ct(663,305,657,281,656,274)
+lt(633,245)
+lt(627,245)
+ct(622,249,618,254,616,260)
+lt(596,260)
+lt(596,238)
+lt(616,216)
+ct(624,192,633,178,642,173)
+lt(676,173)
+ct(676,184,678,198,682,216)
+lt(696,231)
+lt(709,274)
+ct(716,321,722,357,729,383)
+lt(729,455)
+lt(699,491)
+lt(696,491)
+ct(689,491,683,489,676,484)
+lt(636,469)
+ct(603,459,577,452,556,448)
+lt(543,448)
+lt(543,455)
+lt(563,477)
+lt(576,534)
+lt(596,556)
+lt(596,571)
+ )cp
+dr
+ah((371,592)
+lt(304,592)
+lt(304,578)
+lt(331,520)
+lt(331,336)
+ct(318,284,312,254,311,245)
+lt(298,216)
+lt(271,130)
+ct(268,124,261,119,251,115)
+lt(238,115)
+ct(238,106,236,97,231,86)
+lt(211,64)
+lt(211,43)
+lt(278,79)
+ct(315,148,339,184,351,187)
+ct(357,187,369,168,387,130)
+ )
+dh("hs(-140,21)")
+dh("hs(736,756)")
+dh("vs(64,225)")
+dh("vs(304,331)")
+dh("vs(371,384)")
+dh("vs(424,437)")
+dh("vs(483,530)")
+dh("vs(570,596)")
+dh("vs(729,960)")
+lth(424,130)
+ )
+dh("hs(-140,21)")
+dh("hs(736,756)")
+dh("vs(64,225)")
+dh("vs(304,331)")
+dh("vs(371,384)")
+dh("vs(424,450)")
+dh("vs(483,530)")
+dh("vs(570,596)")
+dh("vs(729,960)")
+lth(424,198)
+ct(418,193,413,196,410,209)
+ct(389,214,371,216,357,216)
+ct(357,225,359,239,364,260)
+lt(377,361)
+ )
+dh("hs(-140,21)")
+dh("hs(736,756)")
+dh("vs(64,225)")
+dh("vs(304,331)")
+dh("vs(371,384)")
+dh("vs(424,437)")
+dh("vs(483,530)")
+dh("vs(570,596)")
+dh("vs(729,960)")
+cth(387,380,403,390,424,390)
+lt(424,419)
+lt(463,419)
+lt(463,455)
+ )
+dh("hs(-140,21)")
+dh("hs(736,756)")
+dh("vs(64,225)")
+dh("vs(304,331)")
+dh("vs(371,384)")
+dh("vs(424,450)")
+dh("vs(483,530)")
+dh("vs(570,596)")
+dh("vs(729,960)")
+lth(450,469)
+lt(410,491)
+lt(384,419)
+lt(384,404)
+lt(371,404)
+lt(371,520)
+ct(375,525,379,531,384,539)
+lt(384,551)
+ct(384,556,382,560,377,563)
+ct(373,572,371,582,371,592)
+ )cp
+dr
+ah((245,404)
+lt(225,404)
+lt(225,361)
+ct(233,326,251,302,278,289)
+lt(284,289)
+lt(304,310)
+lt(304,354)
+ct(300,363,287,372,264,383)
+ )cp
+dr
+ah((477,231)
+ct(477,236,479,241,483,245)
+ct(484,262,490,281,503,303)
+lt(530,318)
+lt(530,245)
+ct(526,245,513,240,490,231)
+ )cp
+dr
+ah((512,756)
+ct(634,756,739,712,828,623)
+ct(916,535,960,430,960,308)
+ct(960,187,916,81,828,-8)
+ct(739,-96,633,-140,512,-140)
+ct(390,-140,285,-96,197,-8)
+ct(108,81,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+endchar;
+
+beginchar(112,1024*FX#,756*FY#,144*FY#);
+"p";
+dh("hs(84,164)")
+dh("hs(228,308)")
+dh("hs(532,580)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+ih
+dr
+ah((636,644)
+ct(632,644,628,641,624,636)
+lt(480,620)
+ )
+dh("hs(84,164)")
+dh("hs(228,308)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(384,464)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(384,604)
+ct(381,599,377,596,374,596)
+ct(370,601,367,606,364,612)
+lt(320,612)
+lt(320,332)
+ct(320,327,315,319,304,309)
+lt(304,301)
+ct(309,301,315,295,320,284)
+lt(320,260)
+lt(512,308)
+lt(696,308)
+lt(720,279)
+ct(720,270,717,258,712,244)
+ct(707,236,704,228,704,220)
+lt(704,132)
+lt(680,84)
+ )
+dh("hs(68,164)")
+dh("hs(228,308)")
+dh("hs(340,372)")
+dh("hs(436,484)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+cth(671,75,663,69,656,68)
+ )
+dh("hs(84,164)")
+dh("hs(228,308)")
+dh("hs(532,580)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+cth(653,68,637,73,608,84)
+lt(592,84)
+lt(592,44)
+lt(632,4)
+ct(637,-7,640,-17,640,-28)
+lt(684,-28)
+ct(684,-24,699,-8,728,20)
+ )
+dh("hs(68,164)")
+dh("hs(228,308)")
+dh("hs(340,372)")
+dh("hs(436,484)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(744,68)
+lt(760,100)
+ct(771,163,785,233,800,308)
+lt(800,340)
+lt(768,340)
+lt(709,356)
+lt(682,356)
+lt(616,340)
+lt(528,340)
+lt(528,388)
+lt(624,404)
+lt(672,404)
+lt(672,436)
+ )
+dh("hs(228,308)")
+dh("hs(452,484)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+cth(669,436,653,441,624,452)
+lt(592,452)
+ )
+dh("hs(228,308)")
+dh("hs(436,484)")
+dh("hs(532,580)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+cth(589,452,573,447,544,436)
+lt(528,436)
+ )
+dh("hs(228,308)")
+dh("hs(420,468)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(528,468)
+ )
+dh("hs(228,308)")
+dh("hs(452,484)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+cth(546,469,575,475,616,484)
+ )
+dh("hs(228,308)")
+dh("hs(436,484)")
+dh("hs(532,580)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(656,484)
+lt(656,508)
+lt(632,532)
+lt(560,532)
+ )
+dh("hs(228,308)")
+dh("hs(516,580)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+cth(552,526,544,521,536,516)
+lt(528,516)
+lt(528,580)
+ )
+dh("hs(84,164)")
+dh("hs(228,308)")
+dh("hs(532,580)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(616,580)
+lt(664,596)
+lt(688,596)
+lt(688,628)
+lt(664,628)
+ )cp
+dh("hs(228,308)")
+dh("hs(516,564)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(384,464)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+ih
+dr
+ah((384,564)
+ct(403,564,424,567,448,572)
+ )
+dh("hs(228,308)")
+dh("hs(516,580)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(384,464)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+cth(453,577,459,580,464,580)
+ )
+dh("hs(228,308)")
+dh("hs(516,564)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(384,464)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(464,516)
+lt(384,516)
+ )cp
+dh("hs(228,308)")
+dh("hs(420,468)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(368,464)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+ih
+dr
+ah((368,420)
+lt(368,468)
+lt(464,468)
+lt(464,420)
+ )cp
+dh("hs(228,308)")
+dh("hs(324,372)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(368,464)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+ih
+dr
+ah((368,324)
+lt(368,372)
+ )
+dh("hs(228,308)")
+dh("hs(340,372)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(480,372)
+lt(480,340)
+lt(456,340)
+ )
+dh("hs(228,308)")
+dh("hs(324,372)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(368,464)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(408,324)
+ )cp
+dr
+ah((560,260)
+lt(544,260)
+lt(544,236)
+lt(584,196)
+ )
+dh("hs(84,164)")
+dh("hs(228,308)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+cth(589,185,592,175,592,164)
+ )
+dh("hs(68,164)")
+dh("hs(228,308)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(656,164)
+lt(656,224)
+ct(649,220,644,224,640,236)
+ct(608,243,581,251,560,260)
+ )cp
+dr
+ah((224,244)
+ct(224,223,221,201,216,180)
+ct(207,167,199,160,192,160)
+ )
+dh("hs(84,164)")
+dh("hs(228,308)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(192,84)
+lt(248,84)
+lt(272,104)
+lt(272,244)
+ )cp
+dh("hs(-144,148)")
+dh("hs(228,308)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+ih
+dr
+ah((480,244)
+lt(432,244)
+lt(432,220)
+lt(472,180)
+ct(477,169,480,159,480,148)
+lt(528,148)
+lt(528,228)
+lt(512,228)
+ )cp
+dr
+ah((352,228)
+lt(320,228)
+ )
+dh("hs(84,164)")
+dh("hs(228,308)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(416,480)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+lth(344,164)
+lt(376,132)
+lt(416,132)
+lt(416,188)
+lt(400,204)
+ )cp
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ )
+dh("hs(-144,148)")
+dh("hs(228,308)")
+dh("hs(736,756)")
+dh("vs(64,304)")
+dh("vs(528,592)")
+dh("vs(656,704)")
+dh("vs(800,964)")
+cth(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+endchar;
+
+beginchar(80,1024*FX#,756*FY#,140*FY#);
+"P";
+dh("hs(-140,-104)")
+dh("hs(547,574)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(365,379)")
+dh("vs(486,538)")
+dh("vs(733,781)")
+dh("vs(924,960)")
+ih
+dr
+ah((512,756)
+ct(634,756,739,712,828,623)
+ct(916,535,960,430,960,308)
+ct(960,187,916,81,828,-8)
+ct(739,-96,633,-140,512,-140)
+ct(390,-140,285,-96,197,-8)
+ct(108,81,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+dr
+ah((512,720)
+ct(400,720,303,679,222,598)
+ct(141,517,100,420,100,308)
+ct(100,196,141,99,222,18)
+ct(303,-63,400,-104,512,-104)
+ct(624,-104,721,-63,802,18)
+ct(883,99,924,196,924,308)
+ct(924,420,883,517,802,598)
+ct(721,679,624,720,512,720)
+ )cp
+dr
+ah((641,607)
+ct(636,606,631,605,626,604)
+ct(602,598,573,592,540,586)
+ct(515,582,491,579,468,577)
+ct(445,575,422,574,401,574)
+ct(390,572,381,570,375,568)
+ct(375,564,379,559,386,552)
+ct(393,549,406,547,425,547)
+ct(448,547,497,552,571,562)
+ct(594,564,615,566,632,569)
+ct(647,571,659,573,666,575)
+ct(679,576,685,579,685,583)
+ct(685,590,681,595,672,599)
+ct(659,604,648,607,641,607)
+ )cp
+dr
+ah((347,585)
+ct(338,585,334,580,334,569)
+ct(336,565,339,560,342,555)
+ct(349,543,352,529,352,514)
+lt(350,431)
+ct(350,396,345,362,335,331)
+ct(332,324,330,318,327,313)
+ct(327,305,330,295,337,284)
+ct(344,272,350,266,356,266)
+ct(361,266,368,268,377,273)
+ct(382,274,388,276,393,279)
+lt(414,285)
+lt(469,298)
+ct(546,304,624,308,703,310)
+ct(723,310,733,302,733,286)
+ct(732,241,728,203,723,172)
+ct(719,141,708,118,689,102)
+ct(678,91,670,85,664,85)
+lt(670,12)
+ct(678,12,689,17,704,26)
+ct(731,43,749,66,758,97)
+ct(770,129,778,170,781,221)
+ct(782,254,789,277,800,291)
+ct(803,298,806,304,808,311)
+ct(808,317,797,324,775,333)
+ct(750,346,735,352,732,352)
+ct(723,351,712,351,701,350)
+ct(675,345,650,342,626,339)
+ct(602,339,569,336,526,331)
+lt(386,311)
+ct(381,311,379,316,379,325)
+ct(384,436,389,506,394,536)
+ct(399,547,401,553,401,556)
+ct(400,565,391,571,375,575)
+ct(364,582,355,585,347,585)
+ )cp
+dr
+ah((608,106)
+ct(605,106,603,103,603,96)
+ct(627,61,642,39,647,29)
+ct(656,18,663,12,670,12)
+lt(664,85)
+ct(661,85,642,92,608,106)
+ )cp
+dr
+ah((610,511)
+ct(603,510,593,507,582,504)
+ct(523,495,463,488,401,482)
+ct(382,479,372,476,372,471)
+ct(372,464,378,458,390,455)
+ct(401,454,411,453,421,453)
+ct(430,453,451,455,485,460)
+ct(510,462,532,464,551,467)
+ct(558,467,565,468,573,469)
+ct(582,471,587,472,586,471)
+ct(597,473,615,475,641,477)
+ct(660,480,670,485,670,491)
+ct(670,495,662,500,646,506)
+ct(627,509,615,511,610,511)
+ )cp
+dr
+ah((616,432)
+ct(608,430,598,427,586,424)
+ct(523,415,460,408,395,403)
+ct(375,400,365,397,365,392)
+ct(365,385,371,379,384,376)
+ct(395,375,405,374,415,374)
+ct(429,374,452,376,483,380)
+ct(510,382,534,384,553,387)
+ct(569,388,581,390,589,391)
+lt(647,398)
+ct(666,401,676,406,676,411)
+ct(676,415,668,420,652,426)
+ct(629,430,617,432,616,432)
+ )cp
+dr
+ah((488,571)
+ct(477,571,472,566,472,557)
+lt(478,543)
+ct(483,535,486,528,486,521)
+lt(488,316)
+lt(527,316)
+lt(538,508)
+ct(538,514,539,521,541,530)
+ct(542,535,543,538,543,540)
+ct(543,549,538,555,527,557)
+ct(511,566,498,571,488,571)
+ )cp
+dr
+ah((262,256)
+ct(258,252,256,247,255,240)
+ct(254,235,241,208,218,161)
+ct(217,155,216,150,215,146)
+ct(214,144,214,142,214,140)
+ct(214,131,216,122,219,114)
+ct(225,105,233,100,244,100)
+ct(248,100,252,103,257,108)
+ct(264,116,270,127,273,141)
+ct(281,164,285,184,285,201)
+ct(285,209,280,223,271,244)
+ct(269,252,266,256,262,256)
+ )cp
+dr
+ah((347,233)
+ct(343,233,341,230,340,223)
+ct(341,221,342,219,343,218)
+ct(359,188,372,168,382,158)
+ct(387,155,392,154,396,154)
+ct(412,154,420,162,420,178)
+ct(420,191,416,202,408,210)
+ct(399,215,386,220,368,226)
+ct(359,231,352,233,347,233)
+ )cp
+dr
+ah((463,245)
+ct(458,245,456,241,455,234)
+lt(459,230)
+ct(478,198,493,178,502,169)
+ct(509,166,514,165,518,165)
+ct(534,165,542,173,542,189)
+ct(542,203,538,214,529,221)
+ct(518,226,503,232,485,237)
+ct(476,242,468,245,463,245)
+ )cp
+dr
+ah((572,259)
+ct(568,259,566,255,565,248)
+lt(569,244)
+ct(592,211,610,190,623,180)
+ct(629,178,635,177,642,177)
+ct(658,177,666,185,666,200)
+ct(666,214,661,224,651,231)
+ct(638,240,620,247,599,252)
+ct(588,257,579,259,572,259)
+ )cp
+endchar;
+
+beginchar(87,1024*FX#,756*FY#,144*FY#);
+"W";
+dh("hs(-144,-108)")
+dh("hs(131,176)")
+dh("hs(177,228)")
+dh("hs(505,529)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(458,534)")
+dh("vs(642,724)")
+dh("vs(928,964)")
+ih
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+dr
+ah((512,720)
+ct(400,720,303,679,222,598)
+ct(141,517,100,420,100,308)
+ct(100,196,141,99,222,16)
+ct(303,-67,400,-108,512,-108)
+ct(624,-108,721,-67,804,16)
+ct(887,99,928,196,928,308)
+ct(928,420,887,517,804,598)
+ct(721,679,624,720,512,720)
+ )cp
+dr
+ah((631,568)
+ct(625,567,619,567,614,566)
+ct(587,561,554,555,517,550)
+ct(489,545,461,540,434,537)
+ct(409,533,384,530,359,529)
+ct(339,529,329,527,329,524)
+ct(329,520,333,515,341,509)
+ct(348,506,362,505,385,505)
+ct(414,505,469,509,550,518)
+ct(577,521,600,525,619,528)
+ct(636,531,650,533,659,535)
+ct(673,536,680,540,680,547)
+ct(680,554,675,558,666,561)
+ct(649,566,638,568,631,568)
+ )cp
+dr
+ah((318,443)
+ct(311,443,308,439,308,431)
+ct(310,428,312,426,314,426)
+ct(325,413,331,402,333,392)
+ct(337,375,341,355,344,330)
+lt(352,273)
+ct(352,264,355,256,362,248)
+ct(366,243,370,240,375,240)
+ct(378,240,381,241,384,244)
+ct(387,252,388,259,388,265)
+ct(388,283,384,324,375,389)
+ct(374,401,373,410,373,417)
+ct(373,425,364,431,346,436)
+ct(337,441,327,443,318,443)
+ )cp
+dr
+ah((645,482)
+ct(635,482,616,478,588,470)
+ct(506,451,420,440,329,436)
+ct(329,423,337,417,353,417)
+ct(398,417,442,421,486,429)
+ct(525,432,557,435,584,438)
+ct(605,441,620,442,629,442)
+ct(638,442,642,438,642,429)
+ct(642,409,639,385,634,357)
+ct(628,323,621,299,614,284)
+ct(612,281,611,277,610,273)
+ct(615,257,621,249,630,249)
+ct(645,249,656,256,661,269)
+lt(698,382)
+ct(703,403,709,418,718,426)
+ct(722,429,724,432,724,436)
+ct(724,444,714,452,694,460)
+ct(665,475,649,482,645,482)
+ )cp
+dr
+ah((587,388)
+ct(580,387,572,387,561,386)
+ct(505,377,448,368,390,359)
+ct(372,359,363,357,363,353)
+ct(363,345,369,339,380,336)
+ct(389,335,399,334,409,334)
+ct(422,334,442,336,469,340)
+ct(518,348,550,351,565,350)
+ct(572,351,580,352,588,353)
+ct(594,355,603,356,616,357)
+ct(634,361,643,366,643,371)
+ct(643,376,635,380,620,382)
+ct(604,386,593,388,587,388)
+ )cp
+dr
+ah((585,295)
+ct(576,295,558,293,531,289)
+ct(478,282,425,277,373,276)
+ct(366,276,363,273,363,266)
+ct(363,262,365,258,369,255)
+ct(373,252,381,250,394,250)
+ct(406,251,421,252,438,253)
+lt(545,261)
+ct(568,262,593,262,620,263)
+ct(627,263,630,265,630,269)
+ct(630,277,625,283,615,287)
+ct(601,292,591,295,585,295)
+ )cp
+dr
+ah((779,228)
+lt(695,215)
+ct(642,212,597,209,561,208)
+ct(540,207,512,205,477,202)
+ct(436,198,389,194,336,189)
+ct(274,180,228,176,197,176)
+ct(184,176,178,174,178,169)
+ct(178,166,186,160,201,149)
+ct(219,137,232,131,239,131)
+ct(243,131,258,134,284,139)
+ct(339,153,411,163,499,169)
+ct(580,175,652,179,715,181)
+ct(733,181,754,180,778,177)
+ct(796,177,812,177,825,178)
+ct(839,178,846,182,846,189)
+ct(846,196,837,204,820,213)
+ct(797,223,784,228,779,228)
+ )cp
+dr
+ah((469,644)
+ct(462,644,458,640,458,632)
+ct(460,626,462,620,464,613)
+ct(473,587,477,558,477,525)
+lt(477,50)
+ct(477,21,479,-1,482,-16)
+ct(485,-21,488,-25,491,-28)
+ct(495,-28,499,-24,504,-15)
+ct(510,-2,514,16,517,40)
+ct(521,72,523,112,523,159)
+lt(524,516)
+ct(524,555,526,584,531,603)
+ct(532,605,532,607,532,610)
+ct(533,615,534,619,534,621)
+ct(534,627,527,631,512,633)
+ct(498,640,484,644,469,644)
+ )cp
+endchar;
+
+beginchar(119,1024*FX#,756*FY#,144*FY#);
+"w";
+dh("hs(-144,-60)")
+dh("hs(196,244)")
+dh("hs(292,340)")
+dh("hs(468,532)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+ih
+dr
+ah((448,676)
+ct(448,671,451,665,456,660)
+lt(472,596)
+ct(477,591,480,585,480,580)
+lt(464,580)
+lt(432,564)
+lt(320,564)
+lt(320,532)
+ct(322,532,338,527,368,516)
+lt(384,516)
+ct(387,516,411,521,456,532)
+lt(480,532)
+lt(480,468)
+lt(304,468)
+lt(304,444)
+ct(323,394,336,343,344,292)
+ct(349,271,352,255,352,244)
+lt(480,244)
+lt(480,196)
+lt(224,196)
+lt(192,180)
+lt(176,180)
+lt(176,148)
+ct(187,148,197,145,208,140)
+lt(232,116)
+lt(244,116)
+ct(272,127,292,135,304,140)
+ct(312,145,320,148,328,148)
+lt(480,148)
+lt(480,-60)
+lt(512,-60)
+lt(512,116)
+lt(528,148)
+lt(528,164)
+lt(664,164)
+lt(702,180)
+lt(716,180)
+ct(724,174,735,169,748,164)
+lt(848,164)
+lt(848,204)
+ )
+dh("hs(-144,-60)")
+dh("hs(220,244)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+lth(832,220)
+lt(785,244)
+ct(769,244,753,241,736,236)
+ct(688,227,651,221,624,220)
+ )
+dh("hs(-144,-60)")
+dh("hs(212,260)")
+dh("hs(308,356)")
+dh("hs(500,548)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+cth(599,214,583,211,576,212)
+lt(528,212)
+lt(528,260)
+lt(584,260)
+ )
+dh("hs(-144,-60)")
+dh("hs(220,244)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+cth(595,254,609,249,628,244)
+lt(652,244)
+ )
+dh("hs(-144,-60)")
+dh("hs(212,260)")
+dh("hs(308,356)")
+dh("hs(500,548)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+cth(652,249,656,255,664,260)
+lt(680,308)
+ct(681,365,699,410,736,444)
+lt(736,460)
+ct(736,468,715,481,672,500)
+lt(624,500)
+ )
+dh("hs(-144,-60)")
+dh("hs(484,548)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+cth(621,500,597,495,552,484)
+lt(528,484)
+lt(528,524)
+lt(548,548)
+ )
+dh("hs(-144,-60)")
+dh("hs(500,548)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+lth(688,548)
+lt(688,596)
+lt(528,596)
+lt(528,676)
+ )cp
+dh("hs(-144,-60)")
+dh("hs(404,452)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+ih
+dr
+ah((600,452)
+lt(640,452)
+ )
+dh("hs(-144,-60)")
+dh("hs(388,436)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+lth(640,388)
+ct(635,388,629,391,624,396)
+ )
+dh("hs(-144,-60)")
+dh("hs(404,452)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+lth(624,404)
+lt(528,404)
+ )
+dh("hs(-144,-60)")
+dh("hs(388,436)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+lth(528,436)
+ct(541,436,557,439,576,444)
+ )
+dh("hs(-144,-60)")
+dh("hs(404,452)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+cth(584,449,592,452,600,452)
+ )cp
+dr
+ah((368,408)
+lt(368,436)
+lt(480,436)
+lt(480,388)
+lt(392,388)
+ )cp
+dh("hs(-144,-60)")
+dh("hs(308,356)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+ih
+dr
+ah((528,308)
+lt(528,356)
+lt(624,356)
+lt(624,332)
+lt(604,308)
+ )cp
+dh("hs(-144,-60)")
+dh("hs(292,340)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+ih
+dr
+ah((384,292)
+lt(384,340)
+lt(480,340)
+lt(480,292)
+ )cp
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ )
+dh("hs(-144,-60)")
+dh("hs(308,356)")
+dh("hs(676,756)")
+dh("vs(64,304)")
+dh("vs(384,480)")
+dh("vs(528,624)")
+dh("vs(624,640)")
+cth(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+endchar;
+
+beginchar(115,1024*FX#,756*FY#,144*FY#);
+"s";
+dh("hs(-144,-60)")
+dh("hs(276,340)")
+dh("hs(404,452)")
+dh("hs(532,564)")
+dh("hs(736,756)")
+dh("vs(320,352)")
+ih
+dr
+ah((504,676)
+lt(432,676)
+lt(432,636)
+lt(480,588)
+lt(480,580)
+ct(452,580,420,577,384,572)
+ct(336,567,293,564,256,564)
+lt(256,532)
+ct(275,532,296,529,320,524)
+ct(320,516,321,513,324,516)
+ct(327,516,331,519,336,524)
+lt(528,540)
+lt(640,556)
+ct(669,561,695,564,720,564)
+lt(720,612)
+lt(616,612)
+ct(608,612,600,609,592,604)
+ct(573,599,557,596,544,596)
+ct(544,607,541,623,536,644)
+ )cp
+dr
+ah((652,532)
+lt(592,532)
+lt(592,508)
+ct(571,465,557,430,552,404)
+ct(538,395,530,384,528,372)
+ fl(528,372,528,372,528,356,528,356,525,356,509,361,480,372,50)
+ )
+dh("hs(-144,-60)")
+dh("hs(276,340)")
+dh("hs(404,452)")
+dh("hs(532,564)")
+dh("hs(736,756)")
+dh("vs(320,352)")
+dh("vs(448,464)")
+lth(464,372)
+ )
+dh("hs(-144,-60)")
+dh("hs(276,340)")
+dh("hs(404,452)")
+dh("hs(532,564)")
+dh("hs(736,756)")
+dh("vs(64,464)")
+lth(464,276)
+ct(425,276,383,273,336,268)
+ct(277,263,219,261,160,260)
+lt(160,228)
+lt(176,228)
+ct(194,221,209,216,221,212)
+lt(271,212)
+ct(310,217,345,222,376,228)
+ct(389,226,401,227,410,231)
+ct(420,231,427,233,432,236)
+ct(443,241,453,244,464,244)
+lt(464,12)
+lt(480,-36)
+lt(480,-60)
+lt(496,-60)
+lt(496,-44)
+lt(528,20)
+lt(528,244)
+lt(832,244)
+lt(832,252)
+lt(848,268)
+lt(808,308)
+lt(768,308)
+ct(758,307,741,306,716,304)
+lt(600,292)
+lt(544,292)
+lt(544,348)
+ct(549,358,565,369,592,380)
+lt(616,404)
+ct(634,371,669,350,720,340)
+lt(720,396)
+ct(686,423,654,436,624,436)
+lt(624,452)
+ct(635,452,645,455,656,460)
+lt(672,476)
+lt(672,508)
+ )cp
+dr
+ah((412,516)
+ )
+dh("hs(-144,-60)")
+dh("hs(276,340)")
+dh("hs(404,452)")
+dh("hs(532,564)")
+dh("hs(736,756)")
+dh("vs(320,352)")
+dh("vs(448,464)")
+lth(352,516)
+lt(352,500)
+ct(326,436,310,404,304,404)
+lt(288,396)
+lt(256,364)
+lt(256,324)
+lt(336,364)
+lt(360,388)
+lt(404,340)
+lt(448,340)
+lt(448,404)
+ct(445,404,429,409,400,420)
+lt(384,420)
+ct(388,423,393,431,400,444)
+ct(411,449,421,452,432,452)
+lt(432,492)
+ )cp
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ )
+dh("hs(-144,-60)")
+dh("hs(276,340)")
+dh("hs(404,452)")
+dh("hs(532,564)")
+dh("hs(736,756)")
+dh("vs(64,464)")
+cth(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+chp[115]:=currentpicture;
+endchar;
+
+beginchar(83,1024*FX#,756*FY#,144*FY#);
+"S";
+dh("hs(-144,-108)")
+dh("hs(228,276)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(405,474)")
+dh("vs(564,626)")
+dh("vs(928,964)")
+ih
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+dr
+ah((512,720)
+ct(400,720,303,679,222,598)
+ct(141,517,100,420,100,308)
+ct(100,196,141,99,222,16)
+ct(303,-67,400,-108,512,-108)
+ct(624,-108,721,-67,804,16)
+ct(887,99,928,196,928,308)
+ct(928,420,887,517,804,598)
+ct(721,679,624,720,512,720)
+ )cp
+dr
+ah((571,611)
+ct(566,609,562,607,558,604)
+ct(539,589,512,572,477,551)
+ct(458,541,439,532,421,524)
+ct(405,516,390,510,375,505)
+ct(368,502,362,499,358,496)
+ct(358,493,365,491,378,491)
+ct(391,491,422,497,470,508)
+ct(535,529,582,541,613,544)
+ct(628,547,636,553,636,562)
+ct(636,567,628,576,613,588)
+ct(596,603,582,611,571,611)
+ )cp
+dr
+ah((352,537)
+ct(342,537,337,531,337,518)
+ct(339,515,341,513,343,511)
+ct(348,500,350,491,350,485)
+lt(391,231)
+lt(430,231)
+lt(401,468)
+ct(401,473,402,482,404,494)
+ct(406,499,407,504,407,508)
+ct(407,513,402,519,391,524)
+ct(376,533,363,537,352,537)
+ )cp
+dr
+ah((646,456)
+ct(643,456,630,452,605,443)
+ct(563,432,524,423,487,415)
+ct(454,408,424,402,397,397)
+lt(387,397)
+ct(387,392,394,387,409,382)
+ct(412,381,414,381,417,381)
+ct(424,380,429,379,433,379)
+ct(449,382,470,386,496,391)
+ct(579,407,642,416,687,419)
+ct(692,420,697,423,700,426)
+ct(700,430,694,436,681,444)
+ct(662,452,650,456,646,456)
+ )cp
+dr
+ah((570,408)
+ct(559,408,554,403,554,394)
+lt(558,385)
+ct(562,373,564,363,564,354)
+ct(564,345,563,333,561,316)
+ct(559,295,556,271,553,243)
+lt(587,243)
+lt(611,336)
+ct(612,345,616,354,622,362)
+ct(623,365,625,366,626,367)
+ct(626,376,619,385,605,394)
+ct(590,403,579,408,570,408)
+ )cp
+dr
+ah((750,276)
+ct(745,275,735,275,722,274)
+ct(703,270,682,266,657,262)
+ct(630,258,601,255,568,252)
+ct(499,248,433,244,372,239)
+ct(355,236,335,234,312,232)
+ct(286,229,257,227,224,226)
+ct(213,226,208,224,208,219)
+ct(208,212,216,206,233,203)
+ct(249,194,261,190,268,190)
+ct(267,190,277,192,300,196)
+ct(363,210,420,217,471,218)
+ct(541,223,601,226,652,227)
+ct(695,227,737,227,776,228)
+ct(800,228,812,230,812,235)
+ct(812,246,803,256,786,265)
+ct(765,272,753,276,750,276)
+ )cp
+dr
+ah((415,180)
+ct(408,180,405,178,405,174)
+ct(405,157,402,145,397,140)
+ct(383,121,360,97,328,70)
+ct(304,49,279,29,252,9)
+ct(254,8,257,8,260,8)
+ct(264,8,271,10,281,13)
+ct(293,16,310,23,332,34)
+ct(359,50,389,72,421,100)
+ct(434,111,448,121,464,130)
+ct(471,135,474,139,474,142)
+ct(474,152,465,160,448,167)
+ct(429,176,418,180,415,180)
+ )cp
+dr
+ah((551,171)
+ct(549,170,548,168,548,165)
+ct(548,162,554,155,565,144)
+ct(578,135,599,113,628,77)
+ct(650,46,668,28,681,22)
+ct(689,17,695,14,700,14)
+ct(705,14,709,17,713,23)
+ct(714,27,715,30,715,31)
+ct(717,35,718,39,718,42)
+ct(718,57,714,71,707,84)
+ct(697,101,677,117,647,133)
+ct(624,144,601,154,577,164)
+ct(563,169,554,171,551,171)
+ )cp
+chp[83]:=currentpicture;
+endchar;
+
+beginchar(76,1024*FX#,756*FY#,144*FY#);
+"L";
+dh("hs(-144,-108)")
+dh("hs(720,756)")
+dh("vs(64,100)")
+dh("vs(928,964)")
+ih
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+dr
+ah((512,720)
+ct(400,720,303,679,222,598)
+ct(141,517,100,420,100,308)
+ct(100,196,141,99,222,16)
+ct(303,-67,400,-108,512,-108)
+ct(624,-108,721,-67,804,16)
+ct(887,99,928,196,928,308)
+ct(928,420,887,517,804,598)
+ct(721,679,624,720,512,720)
+ )cp
+endchar;
+
+beginchar(108,1024*FX#,756*FY#,144*FY#);
+"l";
+dh("hs(736,756)")
+ih
+dr
+ah((512,756)
+ct(634,756,740,712,830,623)
+ct(919,535,964,430,964,308)
+ct(964,187,919,81,830,-10)
+ct(739,-99,633,-144,512,-144)
+ct(390,-144,285,-99,197,-10)
+ct(108,80,64,186,64,308)
+ct(64,431,108,536,197,623)
+ct(284,712,389,756,512,756)
+ )cp
+endchar;
+
+beginchar(48,1024*FX#,820*FY#,203*FY#);
+"zero";
+dh("hs(-203,-182)")
+dh("hs(148,164)")
+dh("hs(292,324)")
+dh("hs(452,468)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+dh("vs(656,672)")
+ih
+dr
+ah((496,-203)
+lt(496,820)
+lt(528,820)
+lt(528,324)
+lt(1023,324)
+lt(1023,292)
+lt(528,292)
+lt(528,-203)
+ )cp
+dr
+ah((656,452)
+lt(656,740)
+lt(672,740)
+lt(672,468)
+lt(944,468)
+lt(944,452)
+ )cp
+dr
+ah((656,-124)
+lt(656,164)
+lt(944,164)
+lt(944,148)
+lt(672,148)
+lt(672,-124)
+ )cp
+endchar;
+
+beginchar(49,1024*FX#,820*FY#,203*FY#);
+"one";
+dh("hs(-203,-182)")
+dh("hs(148,164)")
+dh("hs(292,324)")
+dh("hs(452,468)")
+dh("hs(800,820)")
+dh("vs(352,368)")
+dh("vs(496,528)")
+dh("vs(656,672)")
+dh("vst")
+ih
+dr
+ah((496,324)
+lt(496,820)
+lt(528,820)
+lt(528,324)
+lt(1023,324)
+lt(1023,292)
+lt(528,292)
+lt(528,-203)
+lt(496,-203)
+lt(496,292)
+lt(0,292)
+lt(0,324)
+ )cp
+dr
+ah((352,468)
+lt(352,740)
+lt(368,740)
+lt(368,452)
+lt(80,452)
+lt(80,468)
+ )cp
+dr
+ah((656,452)
+lt(656,740)
+lt(672,740)
+lt(672,468)
+lt(944,468)
+lt(944,452)
+ )cp
+dr
+ah((80,148)
+lt(80,164)
+lt(368,164)
+lt(368,-124)
+lt(352,-124)
+lt(352,148)
+ )cp
+dr
+ah((656,-124)
+lt(656,164)
+lt(944,164)
+lt(944,148)
+lt(672,148)
+lt(672,-124)
+ )cp
+endchar;
+
+beginchar(50,1024*FX#,820*FY#,203*FY#);
+"two";
+dh("hs(-203,-182)")
+dh("hs(148,164)")
+dh("hs(292,324)")
+dh("hs(452,468)")
+dh("hs(800,820)")
+dh("vs(352,368)")
+dh("vs(496,528)")
+ih
+dr
+ah((496,324)
+lt(496,820)
+lt(528,820)
+lt(528,-203)
+lt(496,-203)
+lt(496,292)
+lt(0,292)
+lt(0,324)
+ )cp
+dr
+ah((352,468)
+lt(352,740)
+lt(368,740)
+lt(368,452)
+lt(80,452)
+lt(80,468)
+ )cp
+dr
+ah((80,148)
+lt(80,164)
+lt(368,164)
+lt(368,-124)
+lt(352,-124)
+lt(352,148)
+ )cp
+endchar;
+
+beginchar(51,1024*FX#,820*FY#,200*FY#);
+"three";
+dh("hs(-200,-179)")
+dh("hs(292,323)")
+dh("hs(800,820)")
+dh("vs(497,528)")
+ih
+dr
+ah((528,292)
+lt(528,-200)
+lt(497,-200)
+lt(497,820)
+lt(528,820)
+lt(528,323)
+lt(1020,323)
+lt(1020,292)
+ )cp
+endchar;
+
+beginchar(52,1024*FX#,820*FY#,200*FY#);
+"four";
+dh("hs(-200,-179)")
+dh("hs(292,323)")
+dh("hs(800,820)")
+dh("vs(497,528)")
+ih
+dr
+ah((528,292)
+lt(528,-200)
+lt(497,-200)
+lt(497,292)
+lt(0,292)
+lt(0,323)
+lt(497,323)
+lt(497,820)
+lt(528,820)
+lt(528,323)
+lt(1020,323)
+lt(1020,292)
+ )cp
+endchar;
+
+beginchar(53,1024*FX#,820*FY#,200*FY#);
+"five";
+dh("hs(-200,-179)")
+dh("hs(292,323)")
+dh("hs(800,820)")
+dh("vs(497,528)")
+ih
+dr
+ah((497,323)
+lt(497,820)
+lt(528,820)
+lt(528,-200)
+lt(497,-200)
+lt(497,292)
+lt(0,292)
+lt(0,323)
+ )cp
+endchar;
+
+beginchar(54,1024*FX#,323*FY#,200*FY#);
+"six";
+dh("hs(-200,-179)")
+dh("hs(292,323)")
+dh("vs(497,528)")
+ih
+dr
+ah((497,292)
+lt(0,292)
+lt(0,323)
+lt(1020,323)
+lt(1020,292)
+lt(528,292)
+lt(528,-200)
+lt(497,-200)
+ )cp
+endchar;
+
+beginchar(55,1024*FX#,820*FY#,0*FY#);
+"seven";
+dh("hs(292,323)")
+dh("hs(800,820)")
+dh("vs(497,528)")
+ih
+dr
+ah((497,323)
+lt(497,820)
+lt(528,820)
+lt(528,323)
+lt(1020,323)
+lt(1020,292)
+lt(0,292)
+lt(0,323)
+ )cp
+endchar;
+
+beginchar(56,1024*FX#,323*FY#,200*FY#);
+"eight";
+dh("hs(-200,-179)")
+dh("hs(292,323)")
+dh("vs(497,528)")
+ih
+dr
+ah((1020,323)
+lt(1020,292)
+lt(528,292)
+lt(528,-200)
+lt(497,-200)
+lt(497,323)
+ )cp
+endchar;
+
+beginchar(57,1024*FX#,820*FY#,0*FY#);
+"nine";
+dh("hs(292,323)")
+dh("hs(800,820)")
+dh("vs(497,528)")
+ih
+dr
+ah((497,820)
+lt(528,820)
+lt(528,323)
+lt(1020,323)
+lt(1020,292)
+lt(497,292)
+ )cp
+endchar;
+
+beginchar(65,1024*FX#,323*FY#,200*FY#);
+"A";
+dh("hs(-200,-179)")
+dh("hs(292,323)")
+dh("vs(497,528)")
+ih
+dr
+ah((0,323)
+lt(528,323)
+lt(528,-200)
+lt(497,-200)
+lt(497,292)
+lt(0,292)
+ )cp
+chp[65]:=currentpicture;
+endchar;
+
+beginchar(66,1024*FX#,820*FY#,0*FY#);
+"B";
+dh("hs(292,323)")
+dh("hs(800,820)")
+dh("vs(497,528)")
+ih
+dr
+ah((497,820)
+lt(528,820)
+lt(528,292)
+lt(0,292)
+lt(0,323)
+lt(497,323)
+ )cp
+endchar;
+
+beginchar(67,1024*FX#,820*FY#,203*FY#);
+"C";
+dh("hs(-203,-182)")
+dh("hs(260,356)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+ih
+dr
+ah((0,796)
+lt(0,820)
+lt(24,820)
+lt(488,356)
+lt(496,356)
+lt(496,820)
+lt(528,820)
+lt(528,356)
+lt(536,356)
+lt(1000,820)
+lt(1023,820)
+lt(1023,796)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(464,560)")
+lth(560,332)
+lt(560,324)
+lt(1023,324)
+lt(1023,292)
+lt(560,292)
+lt(560,284)
+lt(1023,-180)
+lt(1023,-203)
+lt(1000,-203)
+ )
+dh("hs(-203,-182)")
+dh("hs(260,356)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(536,260)
+lt(528,260)
+lt(528,-203)
+lt(496,-203)
+lt(496,260)
+lt(488,260)
+lt(24,-203)
+lt(0,-203)
+lt(0,-180)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(464,560)")
+lth(464,284)
+lt(464,292)
+lt(0,292)
+lt(0,324)
+lt(464,324)
+lt(464,332)
+ )cp
+chp[67]:=currentpicture;
+endchar;
+
+beginchar(68,1024*FX#,820*FY#,203*FY#);
+"D";
+dh("hs(-203,-182)")
+dh("hs(260,324)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+ih
+dr
+ah((496,324)
+lt(496,820)
+lt(528,820)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(528,324)
+lt(1023,324)
+lt(1023,292)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(464,528)")
+lth(528,292)
+ )
+dh("hs(-203,-182)")
+dh("hs(260,324)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(528,-203)
+lt(496,-203)
+lt(496,260)
+lt(488,260)
+lt(24,-203)
+lt(0,-203)
+lt(0,-180)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(464,528)")
+lth(464,284)
+lt(464,292)
+lt(0,292)
+lt(0,324)
+ )cp
+endchar;
+
+beginchar(71,1024*FX#,820*FY#,203*FY#);
+"G";
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+ih
+dr
+ah((496,324)
+lt(496,820)
+lt(528,820)
+ )
+dh("hs(-203,-182)")
+dh("hs(260,324)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(528,324)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,560)")
+lth(1023,324)
+lt(1023,292)
+lt(560,292)
+lt(560,284)
+lt(1023,-180)
+lt(1023,-203)
+lt(1000,-203)
+ )
+dh("hs(-203,-182)")
+dh("hs(260,324)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(536,260)
+lt(528,260)
+lt(528,-203)
+lt(496,-203)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,560)")
+lth(496,292)
+lt(0,292)
+lt(0,324)
+ )cp
+endchar;
+
+beginchar(72,1024*FX#,820*FY#,203*FY#);
+"H";
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,560)")
+ih
+dr
+ah((496,324)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,356)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(496,820)
+lt(528,820)
+lt(528,356)
+lt(536,356)
+lt(1000,820)
+lt(1023,820)
+lt(1023,796)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,560)")
+lth(560,332)
+lt(560,324)
+lt(1023,324)
+lt(1023,292)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,356)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(528,292)
+lt(528,-203)
+lt(496,-203)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(496,292)
+lt(0,292)
+lt(0,324)
+ )cp
+endchar;
+
+beginchar(73,1024*FX#,820*FY#,203*FY#);
+"I";
+dh("hs(-203,-182)")
+dh("hs(292,356)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+ih
+dr
+ah((0,796)
+lt(0,820)
+lt(24,820)
+lt(488,356)
+lt(496,356)
+lt(496,820)
+lt(528,820)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(464,528)")
+lth(528,324)
+lt(1023,324)
+lt(1023,292)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(528,292)
+lt(528,-203)
+lt(496,-203)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,356)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(496,292)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(464,528)")
+lth(0,292)
+lt(0,324)
+lt(464,324)
+lt(464,332)
+ )cp
+chp[73]:=currentpicture;
+endchar;
+
+beginchar(74,1024*FX#,820*FY#,0*FY#);
+"J";
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,560)")
+ih
+dr
+ah((496,324)
+ )
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+lth(496,820)
+lt(528,820)
+lt(528,356)
+lt(536,356)
+lt(1000,820)
+lt(1023,820)
+lt(1023,796)
+ )
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,560)")
+lth(560,332)
+lt(560,324)
+lt(1023,324)
+lt(1023,292)
+lt(0,292)
+lt(0,324)
+ )cp
+endchar;
+
+beginchar(78,1024*FX#,820*FY#,0*FY#);
+"N";
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(496,528)")
+ih
+dr
+ah((0,796)
+lt(0,820)
+lt(24,820)
+lt(488,356)
+lt(496,356)
+lt(496,820)
+lt(528,820)
+ )
+dh("hs(292,324)")
+dh("hs(800,820)")
+dh("vs(464,528)")
+lth(528,324)
+lt(1023,324)
+lt(1023,292)
+lt(0,292)
+lt(0,324)
+lt(464,324)
+lt(464,332)
+ )cp
+chp[78]:=currentpicture;
+endchar;
+
+beginchar(79,1024*FX#,324*FY#,203*FY#);
+"O";
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("vs(496,560)")
+ih
+dr
+ah((0,292)
+lt(0,324)
+lt(1023,324)
+lt(1023,292)
+lt(560,292)
+lt(560,284)
+lt(1023,-180)
+lt(1023,-203)
+lt(1000,-203)
+lt(536,260)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("vs(496,528)")
+lth(528,260)
+lt(528,-203)
+lt(496,-203)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("vs(496,560)")
+lth(496,292)
+ )cp
+chp[79]:=currentpicture;
+endchar;
+
+beginchar(81,1024*FX#,324*FY#,203*FY#);
+"Q";
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("vs(464,528)")
+ih
+dr
+ah((0,292)
+lt(0,324)
+lt(1023,324)
+lt(1023,292)
+lt(528,292)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("vs(496,528)")
+lth(528,-203)
+lt(496,-203)
+lt(496,260)
+lt(488,260)
+lt(24,-203)
+lt(0,-203)
+lt(0,-180)
+ )
+dh("hs(-203,-182)")
+dh("hs(292,324)")
+dh("vs(464,528)")
+lth(464,284)
+lt(464,292)
+ )cp
+endchar;
+
+font_slant := 0.0000;
+font_normal_space := 250 * FX#;
+font_normal_stretch := 125 * FX#;
+font_normal_shrink := 83 * FX#;
+font_x_height := 400 * FY#;
+font_quad := 1024 * FX#;
+designsize := FontSize;
+font_coding_scheme := "TeX text";
+font_identifier := "Untitled2";
+end.
+% That's all, Folks!
diff --git a/Master/texmf-dist/fonts/source/public/xq/xqlarge.mf b/Master/texmf-dist/fonts/source/public/xq/xqlarge.mf
new file mode 100644
index 00000000000..4cf780093e5
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/xq/xqlarge.mf
@@ -0,0 +1,12 @@
+% Untitled2
+mode_setup;
+if unknown FontSize: FontSize := 10pt#; fi
+
+%FX# := FontSize * 1000.0000;
+%FY# := FontSize * 1000.0000;
+%FX# := FontSize * 0.001971;
+%FY# := FontSize * 0.001971;
+FX# := FontSize * 0.0031536;
+FY# := FontSize * 0.0031536;
+
+input xqbase;
diff --git a/Master/texmf-dist/fonts/source/public/xq/xqnormal.mf b/Master/texmf-dist/fonts/source/public/xq/xqnormal.mf
new file mode 100644
index 00000000000..5f405fa9692
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/xq/xqnormal.mf
@@ -0,0 +1,12 @@
+% Untitled2
+mode_setup;
+if unknown FontSize: FontSize := 10pt#; fi
+
+%FX# := FontSize * 1000.0000;
+%FY# := FontSize * 1000.0000;
+FX# := FontSize * 0.001971;
+FY# := FontSize * 0.001971;
+%FX# := FontSize * 0.0031536;
+%FY# := FontSize * 0.0031536;
+
+input xqbase;
diff --git a/Master/texmf-dist/fonts/tfm/public/xq/xqlarge.tfm b/Master/texmf-dist/fonts/tfm/public/xq/xqlarge.tfm
new file mode 100644
index 00000000000..f7cd4e089ec
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/xq/xqlarge.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/xq/xqnormal.tfm b/Master/texmf-dist/fonts/tfm/public/xq/xqnormal.tfm
new file mode 100644
index 00000000000..9ecc75d17bf
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/xq/xqnormal.tfm
Binary files differ