% \iffalse meta-comment
%
% allrunes.dtx
%
% Copyright 2001, 2002 Carl-Gustav Werner
% E-mail: Carl-Gustav.Werner@math.lu.se
%
% This program is provided under the terms of the
% LaTeX Project Public License distributed from CTAN
% archives in directory macros/latex/base/lppl.txt.
%
%
%<*driver>
\documentclass{ltxdoc}
\EnableCrossrefs
\CodelineIndex
\RecordChanges
\PageIndex
\usepackage[T1]{fontenc}
\usepackage{allrunes}
\begin{document}
\DeleteShortVerb{\|} % To make it possible to have | in tabulars
\DocInput{allrunes.dtx}
\end{document}
%</driver>
%
% \fi
%
% \CheckSum{5017}
%
% \changes{v1.0}{2001/03/23}{First public release}
% \changes{v1.01}{2001/07/14}{Removed a few remaining 8-bit characters from
%       frum.mf. They didn't work with the new MiKTeX
%       package handling system. Also restored a lost table,
%       added an example and corrected a few spelling
%       mistakes in the documentation.}
% \changes{v2.0}{2002/08/11}{Added type1 versions for the main types of the
%      allrunes fonts, and support for them in the LaTeX package. Merged the
%      former Scandinavian-Gothic and the Continental font families to a
%      Common Germanic font family. Renamed the commands for flipping and turning
%      runes. Made the commands for flipping and turning runes work for all
%      six font families. Inserted kerning information for the Common Germanic
%      and Anglo-Frisian font families. Complemented the font families with
%      a few more runes, especially the Medieval one. Corrected many spelling
%      mistakes in the documentation.}
%
% \newcommand{\currentversion}{2.0}
% \newcommand{\dateofcurrentversion}{2002/08/11}
%
% \newcommand{\package}[1]{\textsf{#1}}
% \newcommand{\ar}{\package{allrunes}}
% \newcommand{\file}[1]{\texttt{#1}}
% \newcommand{\MF}{\textsf{METAFONT}}
% \newcommand{\NFSS}{\textsf{NFSS}}
% \newcommand{\fu}{fu\th Ark:hnias}
% \newcommand{\trsize}[1]{\mbox{\fontsize{9}{14.5}\selectfont #1}}
% \newcommand{\rc}[1]{\textarc{#1}}
% \newcommand{\ra}[1]{\textara{#1}}
% \newcommand{\rn}[1]{\textarn{#1}}
% \newcommand{\rt}[1]{\textart{#1}}
% \newcommand{\rl}[1]{\textarl{#1}}
% \renewcommand{\rm}[1]{\textarm{#1}}
% \newcommand{\ts}[1]{\textsf{\textbf{#1}}}
% \newlength{\sharpiwidth}
% \newcommand{\sharpi}{\settowidth{\sharpiwidth}{-i}-\hspace{-0.52\sharpiwidth}i}
%
% \OnlyDescription     ^^A For short description of font and package.
% \title{The \ar\ Font and Package.\\ \normalsize{Version \currentversion}}
% \author{Carl-Gustav Werner\\
%         \small E--mail: \texttt{Carl-Gustav.Werner@math.lu.se}}
% \date{\dateofcurrentversion}
% \maketitle
% \begin{abstract}
%   The \ar\ font and package is aimed for
%   typesetting runes. It is supposed to cover all the Germanic runes.
%   Separate font families
%   are set up for six main types of runes: Common Germanic,
%   Anglo-Frisian, normal (Scandinavian),
%   short-twig (Scandinavian), staveless (Scandinavian) and medieval (Scandinavian).
%   Within each font family a lot of varieties are supplied. All varieties exists
%   as Metafont fonts and the main forms as type1 fonts as well.
% \end{abstract}
% \tableofcontents
%
% \CharacterTable
%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%   Digits        \0\1\2\3\4\5\6\7\8\9
%   Exclamation   \!     Double quote  \"     Hash (number) \#
%   Dollar        \$     Percent       \%     Ampersand     \&
%   Acute accent  \'     Left paren    \(     Right paren   \)
%   Asterisk      \*     Plus          \+     Comma         \,
%   Minus         \-     Point         \.     Solidus       \/
%   Colon         \:     Semicolon     \;     Less than     \<
%   Equals        \=     Greater than  \>     Question mark \?
%   Commercial at \@     Left bracket  \[     Backslash     \\
%   Right bracket \]     Circumflex    \^     Underscore    \_
%   Grave accent  \`     Left brace    \{     Vertical bar  \|
%   Right brace   \}     Tilde         \~}
%
% \section{Introduction}
%
% This package contains the \MF{} source and driver files for the
% \ar\ font families, type1 files for the main varieties, plus a \LaTeX{}
% package to utilize those fonts, along with a number of font definition
% files, as required by the New Font Selection Scheme (\NFSS{}).
%
% \subsection{About the Documentation}
%
% The full documentation of this font and package is rather large, something like 173
% pages actually. Most of it is the \MF{} programs for the characters for
% the fonts; to make them visible, just remove the
% \texttt{\bslash OnlyDescription} from the preamble of \texttt{allrunes.dtx}.
%
%
% \section{The Fonts}
% Both \MF{} source files and type1 font files are supplied. Since they are
% independent of each other, it is possible to install either the \MF{} files
% or the type1 files, or both of them.
%
% \subsection{The \MF{} files}
%
% \paragraph{Base File and Source Files}
% The names of the base file and the files containing the code for the characters of
% the \ar\ font all starts with the letters \texttt{fru}. The next five
% possible letters reflects
% what kind of code is contained within the file, e.g., the base file
% ends in \texttt{base}, the file containing the code for the
% word separators end in \texttt{sep}, and so forth.
%
% \paragraph{Font Driver Files}
% The font driver filenames has been chosen to conform to the
% \texttt{fontname} scheme, as far as possible.
%
% The filename all contain the three characters \texttt{fru}, where,
% according to the the \texttt{fontname} scheme, \texttt{f} stands
% for \textit{public} and \texttt{ru} for \textit{runic}.
%
% Next comes one of the following letters:
% \texttt{c} (\textit{Common Germanic}),
% \texttt{a} (\textit{Anglo-Frisian}),
% \texttt{n} (\textit{Normal}),
% \texttt{t} (\textit{Short-twig}),
% \texttt{l} (\textit{Staveless}) or
% \texttt{m} (\textit{Medieval})
% which represents which of the six rune font families it is.
%
% Then comes another letter, which is one of:
% \texttt{l} (\textit{Light face, without lines}),
% \texttt{m} (\textit{Medium, without lines}),
% \texttt{b} (\textit{Bold face, without lines}),
% \texttt{k} (\textit{Light face, with lines}),
% \texttt{n} (\textit{Medium, with lines}) or
% \texttt{c} (\textit{Bold face, with lines}),
% which represents the series, and with/without alignment lines.
%
% and finally comes one of following:
% \texttt{s} (\textit{Straight twigs, top twig not lowered}),
% \texttt{c} (\textit{Curved twigs, top twig not lowered}),
% \texttt{r} (\textit{Rounded twigs, top twig not lowered}),
% \texttt{t} (\textit{Straight twigs, top twig lowered}),
% \texttt{m} (\textit{Curved twigs, top twig lowered}) or
% \texttt{q} (\textit{Rounded twigs, top twig lowered}),
% which represents two kinds of shape --- the curvature of
% the twigs, and the position of the top twig.
%
% The most reasonable place for the \texttt{fru*.mf} files provided
% with this package is in a directory named\newline
% \indent\meta{mf--source--base--dir}\texttt{/public/allrunes/}.\newline
% This way of naming the font driver files will, if
% \texttt{kpathsea} is in use, put the \texttt{fru*.pk} files in\newline
% \indent\meta{pk--base--dir}\texttt{/public/allrunes/}\newline
% and the \texttt{fru*.tfm} files in\newline
% \indent\meta{tfm--base--dir}\texttt{/public/allrunes/}.
%
% \subsection{The type1 font files}
% The names of the type1 font files (the \texttt{fru*8z.pfb} files)
% are identical to the corresponding
% \texttt{fru*.mf} files, but with an additional \texttt{8z} appended to the
% filename. The default normal runes font f.x., corresponding to the
% \texttt{frunmn.mf}, is then called \texttt{frunmn8z.pfb} and the associated
% \texttt{tfm} file is called \texttt{frunmn8z.tfm} (which is in fact identical
% to the \texttt{frunmn.tfm} file).
%
% The most reasonable place for the \texttt{fru*8z.pfb} files provided
% with this package is in a directory named\newline
% \indent\meta{type1--base--dir}\texttt{/public/allrunes/}.\newline
% and the \texttt{fru*8z.tfm} files in\newline
% \indent\meta{tfm--base--dir}\texttt{/public/allrunes/}.
%
% The type1 font files are generated from the \MF{} font files with
% the program \texttt{pktrace} \cite{Nienhuys}.
%
% Note that so far only a few varieties of the \ar{} fonts is supplied as type1 fonts;
% essentially those actually used in this documentation. More of them can be
% fonud at the \ar{} homepage \cite{Werner}.
%
%
% \paragraph{The map file}
% To be able to use the type1 fonts, programs like \textsf{dvips} and
% \textsf{pdflatex} needs information about which \texttt{*.pfb} file
% a certain fontname corresponds to. This information is normally stored in
% a file \meta{dvips-base-dir}\texttt{/config/psfonts.map},
% but additional information may
% reside in other \texttt{*.map} files. In the \ar{} bundle, a such file called
% \texttt{allrunes.map} is supplied. There are several reasonable places for
% it, but \meta{dvips-base-dir}\texttt{/allrunes} would be fine.
% To then make \textsf{dvips} find it,
% edit the file \meta{dvips-base-dir}\texttt{/config/config.ps}, in which a line:\newline
% \indent\texttt{p +allrunes.map}\newline
% should be inserted somewhere \textit{after} the line:\newline
% \indent\texttt{p psfonts.map}\newline
% In a similar way, to make \textsf{pdflatex} find the \texttt{allrunes.map},
% insert a line:\newline
% \indent\texttt{map +allrunes.map}\newline
% somewhere \textit{after} the line:\newline
% \indent\texttt{map psfonts.map}.\newline
% in the file \meta{pdftex-base-dir}\texttt{/config/pdftex.cfg}.
% For other programs, similar configurations may have to be made.
%
% An alternative is to append the \texttt{allrunes.map} file to the
% \texttt{psfonts.map} file(s).

% \section{The \LaTeX{} files}
%
% To follow the scheme of the \MF{} files, it would be appropriate to
% place all \LaTeX{} files, namely the \texttt{ar?.fd} and the
% \texttt{allrunes.sty} files, in\newline
% \indent\meta{tex--base--dir}\texttt{/tex/latex/allrunes/}.
%
% \subsection{The \LaTeX\ and \NFSS\ Support}
%
% To use the \ar{} fonts with \LaTeX; load
% the \ar{} package with the command
% \begin{quote}
%   \verb|\usepackage{allrunes}|
% \end{quote}
% in the preamble of the document. Then the corresponding pk files,
% generated from the \MF{} files will be used. To use the type1 fonts
% load the \ar{} package with the option \texttt{type1}:
% \begin{quote}
%   \verb|\usepackage[type1]{allrunes}|
% \end{quote}
% This is the only option available.
%
% \subsection{Font Selection Commands}
%
%
% None of the font families is
% activated as default font, since the runes hardly ever will be used
% as the main font throughout an entire document. The commands and their
% corresponding declarations, together with some examples of the resulting
% output are:\\[2mm]
% \begin{tabular}{llll}
%   \verb|\textarc{|\textit{text}\verb|}| & \verb|\arcfamily| &
%     \emph{Common Germanic} runes &   \textarc{fu\th arkgwh} \\
%   \verb|\textara{|\textit{text}\verb|}| & \verb|\arafamily| &
%     \emph{Anglo-Frisian} runes &  \textara{fu\th orcgwh} \\
%   \verb|\textarn{|\textit{text}\verb|}| & \verb|\arnfamily| &
%     \emph{normal} runes & \textarn{\fu} \\
%   \verb|\textart{|\textit{text}\verb|}| & \verb|\artfamily| &
%     \emph{short-twig} runes & \textart{\fu} \\
%   \verb|\textarl{|\textit{text}\verb|}| & \verb|\arlfamily| &
%     \emph{staveless} runes &  \textarl{\withlines\fu} \\
%   \verb|\textarm{|\textit{text}\verb|}| & \verb|\armfamily| &
%     \emph{medieval} runes & \textarm{abcdefghi}\\
% \end{tabular}\\[2mm]
%
% \subsection{Shape and Series Selection Commands}
%
% Within each font family there is the opportunity to
% choose among a lot of varieties with
% the commands and declarations below. Note that almost all of
% those commands and declarations
% only has meaning for the rune font families in the \ar\ package.
% The exceptions are the two commands and declarations
% for selecting bold or medium text, which are standard \LaTeX.
%
% \noindent
% First there is the series: bold, medium or light (medium is default)\\[2mm]
% \begin{tabular}{lll}
%   \verb|\textbf{|\textit{text}\verb|}| & \verb|\bfseries| & \textarn{\textbf{\fu}}\\
%   \verb|\textmd{|\textit{text}\verb|}| & \verb|\mdseries| & \textarn{\textmd{\fu}}\\
%   \verb|\textlf{|\textit{text}\verb|}| & \verb|\lfseries| & \textarn{\textlf{\fu}}\\
% \end{tabular}\\[2mm]
% Then there is the choice whether to have alignment lines or not (without is default):\\[2mm]
% \begin{tabular}{lll}
%   \verb|\textwil{|\textit{text}\verb|}| & \verb|\withlines|    & \textarn{\textwil{\fu}}\\
%   \verb|\textwol{|\textit{text}\verb|}| & \verb|\withoutlines| & \textarn{\textwol{\fu}}\\
% \end{tabular}\\[2mm]
% Another parameter to vary is the curvature of the twigs (curved is default). This
% parameter has a slightly different meaning for the staveless runes.\\[2mm]
% \begin{tabular}{llll}
%   \verb|\textst{|\textit{text}\verb|}| & \verb|\straighttwigs| & \textarn{\textst{\fu}} & \textarl{\textwil{\textst{\fu}}} \\
%   \verb|\textcu{|\textit{text}\verb|}| & \verb|\curvedtwigs|   & \textarn{\textcu{\fu}} & \textarl{\textwil{\textcu{\fu}}} \\
%   \verb|\textro{|\textit{text}\verb|}| & \verb|\roundedtwigs|  & \textarn{\textro{\fu}} & \textarl{\textwil{\textro{\fu}}} \\
% \end{tabular}\\[2mm]
% For those runes that have a joint in the top, there is also an opportunity to
% chose whether it should
% be in the absolute top position (high twigs) or lowered a little (low twigs). The
% default is high twigs. This
% parameter has a slightly different meaning for the staveless runes.\\[2mm]
% \begin{tabular}{llll}
%   \verb|\texthi{|\textit{text}\verb|}| & \verb|\hightwigs| & \textarn{\texthi{\fu}} & \textarl{\textwil{\texthi{\fu}}} \\
%   \verb|\textlo{|\textit{text}\verb|}| & \verb|\lowtwigs|  & \textarn{\textlo{\fu}} & \textarl{\textwil{\textlo{\fu}}} \\
% \end{tabular}\\[2mm]
%
% Since in inscriptions, the runes sometimes (mainly in inscriptions with the Common Germanic
% runes) were written in
% just about any direction, there are commands for reversing them and to turn them round:\\[2mm]
% \begin{tabular}{lll}
%   \verb|\hflip{|\textit{rune}\verb|}| & \textarc{\hflip{f}}\\
%   \verb|\vflip{|\textit{rune}\verb|}| & \textarc{\vflip{f}}\\
%   \verb|\turn{|\textit{rune}\verb|}|  & \textarc{\turn{f}}\\
% \end{tabular}\\[2mm]
% Note that those three commands only take \textit{one} rune as argument.
%
% \subsection{Sizes}
% The \ar\ package honors all \LaTeX\ standard size changing commands. When
% using the \MF{} fonts, the standard sizes of \LaTeX: 5, 6, 7, 8, 9, 10, 10.95,
% 12, 14.4, 17.28, 20.74, 24.88, 29.86 and 35.83 pt are available. The type1
% fonts can be used in arbitrary sizes.
%
%
% \section{On runological design decisions}
% The purpose of this package is to make it possible writing a scientific
% paper or book about runes or runic inscriptions using \LaTeX. Since there exist
% no suitable official standard for runes, as far as the author knows\footnote{The
% Unicode Standard (see \cite{Unicode} on runes), is not enough for this purpose. F.x. are the
% staveless runes missing.} a few decisions, concerning the selection of runes, have to been made.
% Of course you can look up runes in any encyclopedia and copy them. But
% runes did appear in many varieties, and in order to fulfill the
% purpose above, you have to cover, preferably all, but at least a great deal of them. The
% original runes were cut or carved by individuals who probably didn't learn about
% runes in the same school. Therefore there is a more or less continuous
% variation in shape of the runes. You then
% have to decide on, when to consider
% these variations as just deviations from the main form, and when to consider
% them as a distinct form. With this in mind, I have formulated
% three possible, and rather different, principles for the design:
% \begin{itemize}
% \item Standard. Find all clearly distinguishable forms and skip all
%   finer variants. Design the runes similar to the ones used in most
%   literature on runes.
% \item Art. Be inspired of all original rune inscriptions and design
%   typographically consistent runic font families, possibly in
%   several different forms.
% \item Copy. Try to catch as many of all the existing varieties in
%   the original rune inscriptions without worrying to much about
%   consistent typography.
% \end{itemize}
% This resulting package --- \ar\ --- is of course a compromise
% between all three of the principles above:
%
% First there is a font family for each of the six main type of runes
% used: Common Germanic,
% Anglo-Frisian, normal (Scandinavian),
% short-twig (Scandinavian), staveless (Scandinavian), medieval (Scandinavian).
% For each font family there is a
% default shape/serie that is essentially identical to the most common
% types. Then there exist a few
% different shapes/series: bold/medium/light, with lines/without lines,
% straight/normal/rounded twigs and normal/\-lowered top twig, each of which is typographically
% consistent. (Which might result in some few runes that never have occurred in real
% inscriptions.) Within each font family all clearly distinguishable
% forms are defined, and together with all the typographical varieties
% $(6*3*2*3*2=216)$ this mimics really a lot of the existing varieties.
%
% \subsection{The font families}
% The partitioning of the runes in six main types is of course not
% undisputable. Having just one font family with all runes would have
% some definite advantages, i.e.\ runic characters that always had the
% same appearance wouldn't need to be duplicated. On the other hand, runic
% characters that did change their appearance through time and space would
% need rather cumbersome names to be called upon with. So, how to partition
% then? The distinction between the older futhark with 24 characters, and the
% younger (Scandinavian) with 16, is obvious. Also, the younger futhark have three well
% recognized subfutharks, the normal, the short-twig, and the staveless futhark \cite{Jansson}.
% The runes from England and Frisia, stands out from the main older futhark, with a
% few extra runes, 28 or 33 all in all, as another obvious partition \cite{Page}. That's the
% five easy ones.
%
% In Scandinavia the runes continued to thrive and develop well into the
% medieval period. The normal runes were
% complemented, not with new runes (well only very few, and not commonly recognized),
% but mostly with ''dotted'' runes. In the 12th century there were runes for all Scandinavian
% letters, around 29 ones, but the futhark were still considered to contain only 16 characters!
% Today, most runologists therefore set up an anachronistic alphabet with both dotted and un-dotted
% runes. Unfortunately there were some diversification. Some runes appeared
% only in Greenland, Iceland, Orkney, or Gotland --- and in the isolated province of Dalarna
% in Sweden a mix of runes and Latin
% letters developed, where it was in use into the 19th century. Five more medieval runic
% alphabets? Or
% one medieval runic alphabet containing several runes that never occurred together? I chose
% the later one, but excluded the runes from Dalarna. That makes six.
%
% When looking at the older futhark in close detail one can find
% a lot of different forms: the Scandinavian-Gothic 175-400,
% the Scandinavian 400-750, the Continental 400-750,
% the Frisian 400-750, the Anglo-Saxon
% 400-650 and the Anglo-Saxon 650-1100 \cite{Odenstedt}, \cite{Parsons99}.
% Here at least two font families are needed, one for the main one, and one for the
% Anglo-Frisian. But where to draw the line? The Frisian runes are closer to
% the main ones than to the late English, but they also share some very characteristic
% runes, not found elsewhere. Similar questions arise for the Continental and Scandinavian
% runes. When comparing the different rune forms listed in \cite{Odenstedt}, I have decided
% to just have the two obvious ones: Common Germanic (i.e. the Continental
% 400-750, Scandinavian-Gothic 175-400 and Scandinavian 400-750) and the
% Anglo-Frisian (Frisian 400-750, Anglo-Saxon 400-650 and Anglo-Saxon 650-1100).
% That makes six font families. I welcome comments.
%
% \subsection{Excluded runes}
% As mentioned above, the mix of medieval runes and Latin letters used in the province
% of Dalarna in Sweden, is not covered here.
%
% Cryptic or secret runes, f.x.\ like the different cipher runes on the
% stone from R\"ok in Sweden, is not covered. This might change in
% future releases.
%
% Magic runes is another category of runes. They are mostly varieties from the older
% futhark, with some features of a rune
% occurring several times, like the ''fir-tree'' on the stone from Kylver, which can
% be interpreted as a \textarn{t}-rune with its branches six times repeated.
% None of those are so far included, but might be in future releases.
%
% Both in inscriptions with the older futhark, and in medieval ones, there are bind-runes or ligatures,
% mostly in the form of two runes sharing the same main stem. Since there exist really
% many combinations, I do not try to cover those. An alternative would of course be to
% cover only those actually occurring in inscriptions.
%
% Finally, there exists several unique runes, known only from one inscription each. Some
% are included in the \ar\ package, mainly those who ''fit'' into the system,
% and where the uniqueness probably is due to the sparse number of preserved inscriptions.
% Runes whose uniqueness are due to apparently clumsy or ignorant carvers are most deliberately
% excluded from the \ar\ package.
% In many cases it is hard to decide in which of the two above categories a certain rune belongs to.
% I might however include some more of those unique runes in future releases.
%
%
% \section{Bugs and shortcomings}
% In addition to all the for me unknown bugs and shortcomings, there are
% the following known:
%
% I have not looked at all the runes in all the 216
% different forms in different sizes. Some might look less nice, due to
% errors in the parameterizations. Please tell me if you encounter any.
%
% The \verb|\vflip{}|, \verb|\hflip{}| and the \verb|\turn{}| command
% can not be used together with commands like
% \verb|\.| and \verb|\=|. To produce f.x.\ \textarn{\hflip{g}} you have to
% write \verb+\hflip{g}+, \textit{not} \verb+\hflip{\.k}+. (That's the reason
% why all the ''dotted'' runes have alternative names.) Probably it can be
% fixed if you use \verb+\DeclareTextComand+ instead of
% \verb|\DeclareTextComposite| (see~\cite{LaTeXfCPW}), but
% I didn't really figure out how to do it.
% Please tell me if you find a reasonable way to handle this.
%
% Perhaps a (virtual) font is needed for the transliteration. A few characters
% that are needed are not present in the European modern boldface sans serif font,
% like the {\ts\sharpi} and a
% suitable uppercase \ts{\footnotesize R}.
%
% I have now supplied kerning information for all
% the rune font families, but only (almost) for the non-flipped
% versions. There are simply to many combinations otherwise.
% As an example of what impact
% the kerning has, compare:\\
% \textarn{filaka:krimR} (with kerning) with:\\
% \textarn{f\mbox{}i\mbox{}l\mbox{}a\mbox{}k\mbox{}a\mbox{}:%
% \mbox{}k\mbox{}r\mbox{}i\mbox{}m\mbox{}R} (without kerning).\\
% The kerning is set for the default forms, and is by no means
% adjusted for the other forms. This should only result in
% displeasing appearances in very few cases, but they need nevertheless to
% be taken care of (and to be found).
%
% It would be nice to be able to letterspace runes, f.x.\ with the \package{soul}
% package. Unfortunately the \ar\ and the \package{soul} package does not
% work at all together.
%
% Since the same source is used for all fonts, in all sizes, there is no
% adaptation for discretization problems. Therefore you should not expect
% fine results on printers with resolution less than 1200~dpi. I find
% the 12~pt fonts acceptable, but not more, at 600~dpi, but not the 10~pt ones.
%
% I have cheated to get nonlinear scaling of the fonts. You will therefore sometimes get the
% ''Checksum mismatch'' error when generating the pk-files, but that will
% not cause any problems, as far as I know. When I understand how the driver
% files for the ec font are generated I'll do something similar for the allrunes
% fonts instead.
%
% The set of type1 fonts are not complete. This is intentional, since the
% complete set will use up approximately 30 MB, and I do not want to fill
% up CTAN with files that hardly ever will be used.
%
% The type1 fonts are generated from the \MF{} files with the program \texttt{pktrace} \cite{Nienhuys}.
% No manual adjustment is made and no hinting information is added. This
% might result in displeasing results, especially for small sizes, but I do not
% intend to fix such problems, unless it can be done in an automated way.
%
% The language of this paper. I'm not a native speaker of English, which you
% must have understood by now. Please tell me if you find spelling mistakes,
% grammatical errors, or just plain nonsense in the text.
%
% I'm not a professional runologist, and since I have only read a rather limited
% amount of runological literature, I might have got a few things wrong.
% Please tell me if you find anything that looks doubtful.
%
%
% \section{Some examples}
%
%
%
% In Pforzen, Bayern, Germany, a silver belt buckle was found with the following
% inscription:
% \begin{quotation}
% \noindent
% {\arcfamily  \large
% .aigil.andi.aIlrun\\
% l.ta\h u:ga\sthree o\vflip{\k}un.}
% \end{quotation}
%
% In M\"ojbro, Uppland, Sweden, a stone with an inscription and a
% picture was found. The inscription is written from right to
% left and from bottom to top:
% \begin{quotation}
% \noindent
% {\arcfamily  \large
% R\\
% \hflip{a}\hflip{n}ig\hflip{a}\hflip{l}\hflip{\sthree}i\hflip{a}\hflip{h}
% \hflip{a}\hflip{h}\hflip{a}\hflip{n}\hflip{a}\\
% \hspace*{9mm}R\hflip{a}d\hflip{a}\hflip{r}\hflip{a}\hflip{w}\hflip{a}\hflip{r}\hflip{f}
% }
% \end{quotation}
%
% In Torna H\"allestad, Sk\r ane, Sweden, three rune stones are set up
% in the wall of the church. The longest inscription of the three reads as
% follows:
% \begin{quotation}
% \noindent
% {\arnfamily  \large
% :askil:sati:stin:\th ansi:iftiR\\
% :tuka:kur\"ms:sun:saR:hulan:\\
% trutin:saR:flu:aigi:at:ub:\\
% :salu\"m\\
% satu:trikaR:iftiR:sin:bru\th r\\
% stin:A:biarki:stu\th an:runu\"m:\th iR:\\
% kur\"ms:tuka:kiku:nistiR}
% \end{quotation}
%
% In England, now at the British Museum, the stone cross from Lancaster
% has the following runic inscription:
% \begin{quotation}
% \noindent
% {\arafamily  \large
% gibi\d\ae\th fo\\
% r\ae cynibal\\
% \th cu\th bere}
% \end{quotation}
%
% In H\"og, H\"arjedalen, Sweden, a stone has an inscription made with staveless
% runes:
% \begin{quotation}
% \noindent
% {\arlfamily \large \withlines
% ku\th niutr\tripledot \th rusun\tripledot litritastin\th ina
% \tripledot akbrukir\th i\tripledot aftiRbru\th rsina\tripledot
% asbiurn:\\
% akatku\th laf}
% \end{quotation}
%
% On the font (a real font, a baptismal font) in the church of Burseryd, Gotland, Sweden,
% medieval runes are used. Except for the bind-runes, which are resolved here and
% shown as individual characters, the inscription looks like:
% \begin{quotation}
% \noindent
% {\armfamily \large
% :arinbiorn\tripledot g\o rth\=i\tripledot mik\tripledot\\
% uitkun\'t\=ir\tripledot pr\=ister\tripledot skr\=if:mik:\\
% ok\tripledot h\=ir\tripledot skal:um\tripledot stun\'t\tripledot stanta\tripledot
% }
% \end{quotation}
%
% \newpage
%
% \section{Tables for all the runic characters}
% On the following pages tables with all the runic characters
% in all the font families of the \ar\ font are listed, together with the most
% recognized transliteration of each rune, and the corresponding
% \LaTeX\ code in the \ar\ package.
%
% \subsection*{The Runic Word Separator Symbols}
% \begin{tabular}{|c|ll|}
%   \hline
%   Separator & \multicolumn{2}{c|}{\LaTeX}    \\
%   \hline
%   \rn{.}            & \verb|\dot|         & or \verb|.|\\
%   \rn{:}            & \verb|\doubledot|   & or \verb|:|\\
%   \rn{\tripledot}   & \verb|\tripledot|   & \\
%   \rn{\quaddot}     & \verb|\quaddot|     & \\
%   \rn{\pentdot}     & \verb|\pentdot|     & \\
%   \rn{.}            & \verb|\eye|         & or \verb|.|\\
%   \rn{:}            & \verb|\doubleeye|   & or \verb|:|\\
%   \rn{\tripleeye}   & \verb|\tripleeye|   & \\
%   \rn{\quadeye}     & \verb|\quadeye|     & \\
%   \rn{\penteye}     & \verb|\penteye|     & \\
%   \rn{!}            & \verb|\bar|         & or \verb|!|\\
%   \rn{\doublebar}   & \verb|\doublebar|   & \\
%   \rn{\triplebar}   & \verb|\triplebar|   & \\
%   \rn{+}            & \verb|\plus|        & or \verb|+|\\
%   \rn{\doubleplus}  & \verb|\doubleplus|  & \\
%   \rn{\tripleplus}  & \verb|\tripleplus|  & \\
%   \rn{\cross}       & \verb|\cross|       & or \verb|*|\\
%   \rn{\doublecross} & \verb|\doublecross| & \\
%   \rn{\triplecross} & \verb|\triplecross| & \\
%   \rn{\star}        & \verb|\star|        & \\
%   \hline
% \end{tabular}\\
%
% \noindent The runic writing system had no real punctuation marks,
% but word separator symbols. To make it simple, all of the symbols
% in the table above are
% part of all the six rune font families, listed below.
%
% I have used
% the \texttt{*} to produce the symbol \rn{*} instead of \rn{\star}, which
% of course had been more
% consequent. This is because I want to be able to access it, as being one of
% the most common word separators (together with the \rn{:}), as a
% single character.
%
% \pagebreak
%
% \subsection*{The Common Germanic Runes}
% \nopagebreak
% \noindent
% \begin{tabular}{|c|c|c|c|c|c|}
%   \hline
%   \multicolumn{3}{|c|}{Main runes} & \multicolumn{3}{c|} {Variant forms}    \\
%   \hline
%   Rune & Translit. & \LaTeX & Rune & Translit. & \LaTeX \\
%   \hline
%   \rc{f}   & \ts{f}   & \verb|f|   & \rc{F}      & \ts{f}   & \verb|F| \\
%   \rc{u}   & \ts{u}   & \verb|u|   & \rc{U}      & \ts{u}   & \verb|U| \\
%   \rc{\th} & \ts{\th} & \verb|\th| or \texttt{\th}
%                                    &             &          & \\
%   \rc{a}   & \ts{a}   & \verb|a|   &             &          & \\
%   \rc{r}   & \ts{r}   & \verb|r|   &             &          & \\
%   \rc{k}   & \ts{k}   & \verb|k|   & \rc{\k}     & \ts{k}   & \verb|\k|\\
%            &          &            & \rc{K}      & \ts{k}   & \verb|K|\\
%            &          &            & \rc{\K}     & \ts{k}   & \verb|\K|\\
%   \rc{g}   & \ts{g}   & \verb|g|   &             &          & \\
%   \rc{w}   & \ts{w}   & \verb|w|   &             &          & \\
%   \rc{h}   & \ts{h}   & \verb|h|   & \rc{H}      & \ts{h}   & \verb|H|\\
%   \rc{\h}  & \ts{h}   & \verb|\h|  &             &          & \\
%   \rc{n}   & \ts{n}   & \verb|n|   &             &          & \\
%   \rc{i}   & \ts{i}   & \verb|i|   &             &          & \\
%   \rc{j}   & \ts{j}   & \verb|j|   & \rc{\j}     & \ts{j}   & \verb|\j|\\
%            &          &            & \rc{J}      & \ts{j}   & \verb|J|\\
%            &          &            & \rc{A}      & \ts{A}   & \verb|A|\\
%            &          &            & \rc{\A}     & \ts{A}   & \verb|\A|\\
%   \rc{I}   & \ts{\"\i}~~or~~\ts{\d{e}} & \verb|I| or \texttt{\"i}
%                                    &             &          & \\
%   \rc{p}   & \ts{p}   & \verb|p|   & \rc{\p}     & \ts{p}   & \verb|\p|\\
%            &          &            & \rc{P}      & \ts{p}   & \verb|P|\\
%   \rc{R}   & \ts{z} or \ts{\footnotesize R} & \verb|R|
%                                    & \rc{\R}     & \ts{z} or \ts{\footnotesize R} & \verb|\R| \\
%            &          &            & \rc{\RR}    & \ts{z} or \ts{\footnotesize R} & \verb|\RR|\\
%   \rc{s}   & \ts{s}   & \verb|s|  or \verb|\sfour| & \rc{S}      & \ts{s}   & \verb|S| or \verb|\ssix|\\
%            &          &            & \rc{\s} & \ts{s}  & \verb|\s|\\
%            &          &            & \rc{\S} & \ts{s}  & \verb|\S|\\
%            &          &            & \rc{\sthree} & \ts{s}  & \verb|\sthree|\\
%            &          &            & \rc{\sfive}  & \ts{s}  & \verb|\sfive|\\
%            &          &            & \rc{\sseven} & \ts{s}  & \verb|\sseven|\\
%            &          &            & \rc{\seight} & \ts{s}  & \verb|\seight|\\
%   \rc{t}   & \ts{t}   & \verb|t|   & \rc{T}      & \ts{t}   & \verb|T|\\
%   \rc{b}   & \ts{b}   & \verb|b|   & \rc{B}      & \ts{b}   & \verb|B|\\
%   \rc{e}   & \ts{e}   & \verb|e|   & \rc{E}      & \ts{e}   & \verb|E|\\
%   \rc{m}   & \ts{m}   & \verb|m|   &             &          & \\
%   \rc{l}   & \ts{l}   & \verb|l|   &             &          & \\
%   \rc{\ng} & \ts{\ng} & \verb|\ng|  or \texttt{\ng}
%                                    & \rc{\NG}    & \ts{\ng} & \verb|\NG| or \texttt{\NG}\\
%            &          &            & \rc{\ing}   & \ts{\ng} or \ts{i\ng} & \verb|\ing|\\
%            &          &            & \rc{\Ing}   & \ts{\ng} or \ts{i\ng} & \verb|\Ing|\\
%            &          &            & \rc{\ING}   & \ts{\ng} or \ts{i\ng} & \verb|\ING|\\
%   \hline
% \end{tabular}\\
%
% \pagebreak
%
% \subsection*{The Common Germanic Runes (continued)}
% \nopagebreak
% \noindent
% \begin{tabular}{|c|c|c|c|c|c|}
%   \hline
%   \multicolumn{3}{|c|}{Main runes} & \multicolumn{3}{c|} {Variant forms}    \\
%   \hline
%   Rune & Translit. & \LaTeX & Rune & Translit. & \LaTeX \\
%   \hline
%   \rc{d}   & \ts{d}   & \verb|d|   & \rc{\d}     & \ts{d}   & \verb|\d|\\
%            &          &            & \rc{D}      & \ts{d}   & \verb|D|\\
%   \rc{o}   & \ts{o}   & \verb|o|   &             &          & \\
%   \hline
%            &          &            & \rc{\i}     & \ts{i}   & \verb|\i|\\
%            &          &            & \rc{\a}     & \ts{a}   & \verb|\a|\\
%   \hline
% \end{tabular}\\
%
% \noindent The main source for the runic characters is \cite{Odenstedt}.
%
% Note that the two main forms of the h-rune were not used together.
% The rune \rc{h} was used in Scandinavia, and the rune \rc{\h} was used on the
% Continent.
%
% Some of the variant forms have uncertain interpretations. I have chosen just one of
% the proposed ones. F.x. the \rc{\Ing} might be a double \rc{w} (w) or a ligature
% of \rc{i} (i) and \rc{\ng} (\ng), the \rc{\ING} might be a double \rc{\th} (\th) or a ligature
% of \rc{i} (i) and \rc{\ng} (\ng), and the \rc{D} might be a peculiar \rc{d} (d) or
% a big \rc{\NG} (\ng). See \cite{Odenstedt} for an overview of the arguments.
%
% Of the several
% zig-zag forms of the s-rune, only a few have occurred in inscriptions,
% but for the sake of symmetry, forms with all number of strokes from three
% to eight are included.
%
% The two runes in the last section are from the stone from R\"ok, from the part of the
% inscription written with common Germanic runes. They have been put
% in a separate section here, since being anachronistic, they do not
% really belong to the common Germanic runes.
%
% \pagebreak
%
% \subsection*{The Anglo-Frisian Runes}
% \noindent
% \begin{tabular}{|c|c|c|c|c|c|}
%   \hline
%   \multicolumn{3}{|c|}{Main runes} & \multicolumn{3}{c|} {Variant forms}    \\
%   \hline
%   Rune & Translit. & \LaTeX & Rune & Translit. & \LaTeX \\
%   \hline
%   \ra{f}   & \ts{f}   & \verb|f|   & \ra{F}      & \ts{f}   & \verb|F|\\
%   \ra{u}   & \ts{u}   & \verb|u|   & \ra{U}      & \ts{u}   & \verb|U|\\
%   \ra{\th} & \ts{\th} & \verb|\th| or \texttt{\th}
%                                    &             &          & \\
%   \ra{o}   & \ts{o}   & \verb|o|   &             &          & \\
%   \ra{r}   & \ts{r}   & \verb|r|   &             &          & \\
%   \ra{c}   & \ts{c}   & \verb|c|   & \ra{\c}     & \ts{c}   & \verb|\c|\\
%   \ra{g}   & \ts{g}   & \verb|g|   &             &          & \\
%   \ra{w}   & \ts{w}   & \verb|w|   &             &          & \\
%   \ra{h}   & \ts{h}   & \verb|h|   & \ra{\h}     & \ts{h}   & \verb|\h|  \\
%            &          &            & \ra{H}      & \ts{h}   & \verb|H|\\
%   \ra{n}   & \ts{n}   & \verb|n|   &             &          & \\
%   \ra{i}   & \ts{i}   & \verb|i|   &             &          & \\
%   \ra{j}   & \ts{j}   & \verb|j|   & \ra{\j}     & \ts{j}   & \verb|\j|\\
%            &          &            & \ra{J}      & \ts{j}   & \verb|J|\\
%   \ra{I}   & \ts{\sharpi} & \verb|I| or \texttt{\"i}
%                                    &             &          & \\
%   \ra{p}   & \ts{p}   & \verb|p|   & \ra{P}      & \ts{p}(?)& \verb|P|\\
%   \ra{x}   & \ts{x}   & \verb|x|   &             &          & \\
%   \ra{s}   & \ts{s}   & \verb|s|   & \ra{S}      & \ts{s}   & \verb|S|\\
%            &          &            & \ra{\sthree} & \ts{s}  & \verb|\sthree|\\
%            &          &            & \ra{\sfour} & \ts{s}   & \verb|\sfour|\\
%            &          &            & \ra{\sfive} & \ts{s}   & \verb|\sfive|\\
%            &          &            & \ra{\ssix}  & \ts{s}   & \verb|\ssix|\\
%            &          &            & \ra{\sseven} & \ts{s}   & \verb|\sseven|\\
%            &          &            & \ra{\seight} & \ts{s}   & \verb|\seight|\\
%   \ra{t}   & \ts{t}   & \verb|t|   &             &          & \\
%   \ra{b}   & \ts{b}   & \verb|b|   & \ra{B}      & \ts{b}   & \verb|B|\\
%   \ra{e}   & \ts{e}   & \verb|e|   &             &          & \\
%   \ra{m}   & \ts{m}   & \verb|m|   &             &          & \\
%   \ra{l}   & \ts{l}   & \verb|l|   &             &          & \\
%   \ra{\ng} & \ts{\ng} & \verb|\ng|  or \texttt{\ng}
%                                     &            &          & \\
%   \ra{d}   & \ts{d}   & \verb|d|   & \ra{\d}      & \ts{d}   & \verb|\d|\\
%            &          &            & \ra{D}     & \ts{d}   & \verb|D|\\
%   \ra{\oe} & \ts{\oe} & \verb|\oe| or \texttt{\oe}  & \ra{\OE} & \ts{\oe} & \verb|\OE| or \texttt{\OE} \\
%   \ra{a}   & \ts{a}   & \verb|a|   &             &          & \\
%   \ra{\ae} & \ts{\ae} & \verb|\ae| or \texttt{\ae}  &             &          & \\
%   \ra{y}   & \ts{y}   & \verb|y|   & \ra{\y}     & \ts{y}   & \verb|\y|\\
%            &          &            & \ra{Y}      & \ts{y}   & \verb|Y|\\
%   \ra{\ea} & \ts{\t ea} & \verb|\ea| &             &          & \\
%   \hline
% \end{tabular}
%
% \pagebreak
%
% \subsection*{The Anglo-Frisian Runes (continued)}
% \noindent
% \begin{tabular}{|c|c|c|c|c|c|}
%   \hline
%   \multicolumn{3}{|c|}{Main runes} & \multicolumn{3}{c|} {Variant forms}    \\
%   \hline
%   Rune & Translit. & \LaTeX & Rune & Translit. & \LaTeX \\%   \hline
%   \ra{\g} & \ts{\=g} & \verb|\g| & \ra{\G}    & \ts{\=g} & \verb|\G| \\
%   \ra{k}   & \ts{k}   & \verb|k|   &             &          & \\
%   \ra{\k} & \ts{\=k} & \verb|\k| &             &          & \\
%   \ra{\rex} & \ts{rex}(?)   & \verb|\rex|   &             &          & \\
%   \hline
%   \ra{q}   & \ts{q}   & \verb|q|   &             &          & \\
%   \ra{\stan} & \ts{st}(?)   & \verb|\stan|   & \ra{\STAN} & \ts{st}(?)   & \verb|\STAN|   \\
%   \hline
% \end{tabular}\\
%
% \noindent The main sources for the runic characters are \cite{Odenstedt}, \cite{Page} and \cite{Parsons99}.
%
% The table is divided in three sections. First comes the 28 ''real'' runes.
% Of the several
% zig-zag forms of the s-rune, only a few have occurred in inscriptions,
% but for the sake of symmetry, forms with all number of strokes from three
% to eight are included.
% The \ra{P} rune occurs, as far as I know,
% only on the Westeremden B inscription, see~\cite{Quak}, p.~84-85. There are some other strange runes
% in this inscription that I also might include.
%
% In the second section some runes are listed
% that never seem to have been part of the futhorc, nevertheless are known from ''real''
% inscriptions. The symbol \ra{\rex} only occurs on coins, and does not seem to be a widely
% accepted rune; it is described in
% \cite{Parsons99},~p.~84-85. In the last section, two (three) late Anglo-Saxon ''pseudo runes''
% have been listed. They have, as far as I know,
% never been used for ''real'' writing, but occur only in late manuscript futhorcs; probably
% as a product of runic antiquarians. Often a rune \ra{j} called \ts{ior} is taken to this group.
% I consider it equal to the main variant of \ts{j}. For these ''pseudo runes'',
% \cite{Parsons94} provided most of the information.
%
%
% When transliterating the runes there are several systems to choose from. I have used what I think is
% most common practice, bold sans serif, for all kinds of runes, even for the
% Anglo-Saxon runes. I'm however well aware of the the
% Dickins-Page system, with letterspaced medium roman characters within single
% quotes, which is preferred by at least some British runologists.
% More on this can be found in \cite{Derolez}. Compare \ts{\t eadric} with 'ea d r i c', for \ra{\ea dric}.
%
% \pagebreak
%
% \subsection*{The Normal Runes}
% \begin{tabular}{|c|c|c|c|c|c|}
%   \hline
%   \multicolumn{3}{|c|}{}                                            &
%   \multicolumn{3}{c|} {\raisebox{-1pt}[0cm][0cm]{Dotted runes and}} \\
%   \multicolumn{3}{|c|}{\raisebox{ 2ex}[0cm][0cm]{Main runes}}       &
%   \multicolumn{3}{c|} {\raisebox{ 1pt}[0cm][0cm]{variant forms}}    \\
%   \hline
%   Rune & Translit. & \LaTeX & Rune & Translit. & \LaTeX \\
%   \hline
%   \rn{f}   & \ts{f}     & \verb|f|   & \rn{F}    & \ts{f}     & \verb|F|\\
%   \rn{u}   & \ts{u}     & \verb|u|   & \rn{y}    & \ts{y}     & \verb|\.u| or \verb|y| \\
%   \rn{\th} & \ts{\th}   & \verb|\th| or \texttt{\th}
%                                      & \rn{\TH}  & \ts{\th}   & \verb|\TH| or \texttt{\TH}\\
%   \rn{A}   & \ts{\k{a}} & \verb|A|   & \rn{\A}   & \ts{\k{a}} & \verb|\A|\\
%   \rn{r}   & \ts{r}     & \verb|r|   &           &            & \\
%   \rn{k}   & \ts{k}     & \verb|k|   & \rn{g}    & \ts{g}     & \verb|\.k| or \verb|g| \\
%   \rn{h}   & \ts{h}     & \verb|h|   &           &            & \\
%   \rn{n}   & \ts{n}     & \verb|n|   &           &            & \\
%   \rn{i}   & \ts{i}     & \verb|i|   & \rn{e}    & \ts{e}     & \verb|\.i| or \verb|e| \\
%   \rn{a}   & \ts{a}     & \verb|a|   &           &            & \\
%   \rn{s}   & \ts{s}     & \verb|s|   & \rn{S}    & \ts{s}     & \verb|S|\\
%   \rn{t}   & \ts{t}     & \verb|t|   &           &            & \\
%   \rn{b}   & \ts{b}     & \verb|b|   & \rn{B}    & \ts{b}     & \verb|B|\\
%   \rn{m}   & \ts{m}     & \verb|m|   & \rn{\"m}  & \ts{m}     & \verb|\"m| or \verb|\m|\\
%            &            &            & \rn{M}    & \ts{m}     & \verb|M|\\
%            &            &            & \rn{\"M}  & \ts{m}     & \verb|\"M| or \verb|\M|\\
%   \rn{l}   & \ts{l}     & \verb|l|   &           &            & \\
%   \rn{R}   & \ts{R}     & \verb|R|   &           &            & \\
% \hline
% \end{tabular}\\
%
% \noindent
% The runic characters are compiled from the following sources:
% \cite {Ahlen}, \cite{DRI}, \cite{Enoksen}, \cite{Jansson} and \cite{Moltke}.
%
%
% \pagebreak
%
% \subsection*{The Short-Twig Runes}
% \noindent
% \begin{tabular}{|c|c|c|c|c|c|}
%   \hline
%   \multicolumn{3}{|c|}{Main runes} & \multicolumn{3}{c|} {Variant forms}    \\
%   \hline
%   Rune & Translit. & \LaTeX & Rune & Translit. & \LaTeX \\
%   \hline
%   \rt{f}   & \ts{f}     & \verb|f|   & \rt{F}    & \ts{f}     & \verb|F|\\
%   \rt{u}   & \ts{u}     & \verb|u|   & \rt{U}    & \ts{u}     & \verb|U| \\
%   \rt{\th} & \ts{\th}   & \verb|\th| or \texttt{\th}
%                                      & \rt{\TH}  & \ts{\th}   & \verb|\TH| or \texttt{\TH}\\
%   \rt{A}   & \ts{\k{a}} & \verb|A|   & \rt{\A}   & \ts{\k{a}} & \verb|\A|\\
%   \rt{r}   & \ts{r}     & \verb|r|   &           &            & \\
%   \rt{k}   & \ts{k}     & \verb|k|   &           &            & \\
%   \rt{h}   & \ts{h}     & \verb|h|   & \rt{\h}   & \ts{h}     & \verb|\h|\\
%   \rt{n}   & \ts{n}     & \verb|n|   &           &            & \\
%   \rt{i}   & \ts{i}     & \verb|i|   &           &            & \\
%   \rt{a}   & \ts{a}     & \verb|a|   &           &            & \\
%   \rt{s}   & \ts{s}     & \verb|s|   & \rt{\s}   & \ts{s}     & \verb|\s|\\
%   \rt{t}   & \ts{t}     & \verb|t|   & \rt{\t}   & \ts{t}     & \verb|\t|\\
%            &            &            & \rt{T}    & \ts{t}     & \verb|T| \\
%   \rt{b}   & \ts{b}     & \verb|b|   & \rt{\b}   & \ts{b}     & \verb|\b| \\
%   \rt{m}   & \ts{m}     & \verb|m|   & \rt{\m}   & \ts{m}     & \verb|\m|\\
%            &            &            & \rt{M}    & \ts{m}     & \verb|M|\\
%   \rt{l}   & \ts{l}     & \verb|l|   & \rt{\l}   & \ts{l}     & \verb|\l|\\
%            &            &            & \rt{L}    & \ts{l}     & \verb|L| \\
%   \rt{R}   & \ts{R}     & \verb|R|   & \rt{\R}   & \ts{R}     & \verb|\R|\\
% \hline
% \end{tabular}\\
%
% \noindent
% The runic characters are compiled from
% the following sources: \cite{Enoksen}, \cite{Jansson} and \cite{Moltke}.
%
% \pagebreak
%
% \subsection*{The Staveless Runes}
% \noindent
% \begin{tabular}{|c|c|c|c|c|c|}
%   \hline
%   \multicolumn{3}{|c|}{Main runes} & \multicolumn{3}{c|} {Variant forms}    \\
%   \hline
%   Rune & Translit. & \LaTeX & Rune & Translit. & \LaTeX \\
%   \hline
%   \rl{f}   & \ts{f}     & \verb|f| & & & \\
%   \rl{u}   & \ts{u}     & \verb|u| & & &  \\
%   \rl{\th} & \ts{\th}   & \verb|\th| or \texttt{\th} & & &  \\
%   \rl{A}   & \ts{\k{a}} & \verb|A| &  \rl{\A}   & \ts{\k{a}} & \verb|\A| \\
%   \rl{r}   & \ts{r}     & \verb|r| & & &  \\
%   \rl{k}   & \ts{k}     & \verb|k| & & &  \\
%   \rl{h}   & \ts{h}     & \verb|h| & & &  \\
%   \rl{n}   & \ts{n}     & \verb|n| & & &  \\
%   \rl{i}   & \ts{i}     & \verb|i| & & &  \\
%   \rl{a}   & \ts{a}     & \verb|a| & & &  \\
%   \rl{s}   & \ts{s}     & \verb|s| & & &  \\
%   \rl{t}   & \ts{t}     & \verb|t| & & &  \\
%   \rl{b}   & \ts{b}     & \verb|b| & & &  \\
%   \rl{m}   & \ts{m}     & \verb|m| & & &  \\
%   \rl{l}   & \ts{l}     & \verb|l| & & &  \\
%   \rl{R}   & \ts{R}     & \verb|R| & & &  \\
% \hline
% \end{tabular}\\
%
% \noindent The main source for the runic characters is \cite{Peterson94}.
%
% This font covers the staveless runes known mainly from H\"alsingland, Sweden. Other
% staveless runes occurred in S\"odermanland, Sweden; they are not covered here.
%
% The rune for \ts{\k{a}} has never been found
% in a typical inscription. Its assumed appearance, \rl{A},
% is based upon the symmetry considerations, and is a rather widely accepted guess.
% However, in a late Norwegian inscription, the form \rl{\A} was used, p.~244 in~\cite{Peterson94}.
%
% The height of the \rl{f}, \rl{k}, \rl{h} and \rl{s} runes could vary quite a lot;
% here only some kind of average form is used.
%
% \pagebreak
%
% \subsection*{The Medieval Runes}
% \begin{tabular}{|c|c|c|c|c|c|}
%   \hline
%   \multicolumn{3}{|c|}{Main runes} & \multicolumn{3}{c|} {Variant forms}    \\
%   \hline
%   Rune & Translit. & \LaTeX & Rune & Translit. & \LaTeX \\
%   \hline
%   \rm{a}   & \ts{a}     & \verb|a|   & \rm{\.a}  & \ts{a}     & \verb|\a| or \verb|\.a| \\
%            &            &            & \rm{\'a}  & \ts{a}     & \verb|\adot| or \verb|\'a|\\
%            &            &            & \rm{A}    & \ts{a}     & \verb|A| \\
%   \rm{b}   & \ts{b}     & \verb|b|   & \rm{B}    & \ts{b}     & \verb|B| \\
%   \rm{c}   & \ts{c}     & \verb|c|   & \rm{\.c}  & \ts{c}     & \verb|\c| or \verb|\.c| \\
%            &            &            & \rm{\^c}  & \ts{c}     & \verb|C| or \verb|\^c| \\
%   \rm{d}   & \ts{d}     & \verb|d| or \verb|\.t| &
%   \rm{\=t} & \ts{d}     & \verb|\tbar| or \verb|\=t|\\
%            &            &            & \rm{\'t}  & \ts{d}     & \verb|\tdot| or \verb|\'t|\\
%            &            &            & \rm{\~t}  & \ts{d}     & \verb|\tflag| or \verb|\~t|\\
%            &            &            & \rm{\^t}  & \ts{d}     & \verb|\tring| or \verb|\^t|\\
%            &            &            & \rm{D}    & \ts{d}     & \verb|D| or \verb|\.T| \\
%            &            &            & \rm{\"T}  & \ts{d}     & \verb|\D| or \verb|\"T|\\
%   \rm{e}   & \ts{e}     & \verb|e| or \verb|\.i| &
%   \rm{\e}  & \ts{e}     & \verb|\e| or \verb|\=i| \\
%            &            &            & \rm{\^i}  & \ts{e}     & \verb|E| or \verb|\^i|\\
%   \rm{f}   & \ts{f}     & \verb|f|   & \rm{F}    & \ts{f}     & \verb|F| \\
%   \rm{g}   & \ts{g}     & \verb|g| or \verb|\.k| &
%   \rm{G}   & \ts{g}     & \verb|G| or \verb|\'k| \\
%            &            &            & \rm{\=k}  & \ts{g}     & \verb|\g| or \verb|\=k|\\
%   \rm{h}   & \ts{h}     & \verb|h|   & \rm{\h}   & \ts{h}     & \verb|\h| \\
%            &            &            & \rm{H}    & \ts{h}     & \verb|H| \\
%   \rm{i}   & \ts{i}     & \verb|i|   &           &            & \\
%   \rm{k}   & \ts{k}     & \verb|k|   &           &            & \\
%   \rm{l}   & \ts{l}     & \verb|l|   & \rm{\.l}  & \ts{l}     & \verb|\l| or \verb|\.l|\\
%            &            &            & \rm{\=l}  & \ts{l}     & \verb|\lbar| or \verb|\=l|\\
%            &            &            & \rm{\'l}  & \ts{l}     & \verb|\ldot| or \verb|\'l|\\
%            &            &            & \rm{\~l}  & \ts{l}     & \verb|\lflag| or \verb|\~l|\\
%            &            &            & \rm{\^l}  & \ts{l}     & \verb|\lring| or \verb|\^l|\\
%   \rm{m}   & \ts{m}     & \verb|m|   & \rm{\m}   & \ts{m}     & \verb|\m| \\
%   \rm{n}   & \ts{n}     & \verb|n|   & \rm{\.n}  & \ts{n}     & \verb|\n| or \verb|\.n|\\
%            &            &            & \rm{\'n}  & \ts{n}     & \verb|\ndot| or \verb|\'n| \\
%            &            &            & \rm{N}    & \ts{n}     & \verb|N| \\
%            &            &            & \rm{\.N}  & \ts{n}     & \verb|\N| or \verb|\.N|\\
%   \rm{o}   & \ts{o}     & \verb|o|   &           &            & \\
%   \rm{p}   & \ts{p}     & \verb|p| or \verb|\"b|
%                                      & \rm{\.b}  & \ts{p}     & \verb|\p| or \verb|\.b| \\
%            &            &            & \rm{\P}   & \ts{p}     & \verb|\P| \\
%            &            &            & \rm{\"\P} & \ts{p}     & \verb|\Pdots| or \verb|\"\P| \\
%            &            &            & \rm{P}    & \ts{p}     & \verb|P| \\
%   \rm{q}   & \ts{q}     & \verb|q|   & \rm{\q}   & \ts{q}     & \verb|\q| \\
%            &            &            & \rm{\Q}   & \ts{q}     & \verb|\Q| \\
%   \rm{r}   & \ts{r}     & \verb|r|   & \rm{\.r}  & \ts{\"r}   & \verb|\rdot| or \verb|\.r|\\
%            &            &            & \rm{\r}   & \ts{r}     & \verb|\r| \\
%   \hline
% \end{tabular}
% \pagebreak
%
% \subsection*{The Medieval Runes (continued)}
% \begin{tabular}{|c|c|c|c|c|c|}
%   \hline
%   \multicolumn{3}{|c|}{Main runes} & \multicolumn{3}{c|} {Variant forms}    \\
%   \hline
%   Rune & Translit. & \LaTeX & Rune & Translit. & \LaTeX \\
%   \hline
%   \rm{s}   & \ts{s}     & \verb|s|   & \rm{S}    & \ts{s}     & \verb|S| \\
%            &            &            & \rm{\S}   & \ts{s}     & \verb|\S| \\
%   \rm{t}   & \ts{t}     & \verb|t|   & \rm{T}    & \ts{t}     & \verb|T| \\
%            &            &            & \rm{\T}   & \ts{t}     & \verb|\T| \\
%   \rm{\th} & \ts{\th}   & \verb|\th| or \texttt{\th}
%                                      & \rm{\TH}  & \ts{\th}   & \verb|\TH| or \texttt{\TH}\\
%            &            &            & \rm{\thth} & \ts{\th}   & \verb|\thth| \\
%   \rm{\dh} & \ts{\dh}   & \verb|\dh| or \texttt{\dh} or \verb|\.\th|
%                                      & \rm{\DH}  & \ts{\dh}   & \verb|\DH| or \texttt{\DH} or \verb|\.\TH|\\
%   \rm{u}   & \ts{u}     & \verb|u|   &           &            & \\
%   \rm{v}   & \ts{v}     & \verb|v| or \verb|\.u| &
%   \rm{\.f} & \ts{v}     & \verb|V| or \verb|\.f|\\
%            &            &            & \rm{\'f}  & \ts{v}     & \verb|\v| or \verb|\'f| \\
%            &            &            & \rm{\~f}  & \ts{v}     & \verb|\V| or \verb|\~f| \\
%   \rm{w}   & \ts{w}     & \verb|w|   &           &            & \\
%   \rm{x}   & \ts{x}     & \verb|x|   & \rm{\x}   & \ts{x}     & \verb|\x| \\
%            &            &            & \rm{X}    & \ts{x}     & \verb|X| \\
%            &            &            & \rm{\X}   & \ts{x}     & \verb|\X| \\
%   \rm{y}   & \ts{y}     & \verb|y|   & \rm{Y}    & \ts{y}     & \verb|Y| \\
%            &            &            & \rm{v}    & \ts{y}     & \verb|v| or \verb|\.u| \\
%            &            &            & \rm{\y}   & \ts{y}     & \verb|\y| or \verb|\"u| \\
%            &            &            & \rm{\Y}   & \ts{y}     & \verb|\Y| or \verb|\=u| \\
%   \rm{z}   & \ts{z}     & \verb|z|   & \rm{\z}   & \ts{z}     & \verb|\z| \\
%            &            &            & \rm{Z}    & \ts{z}     & \verb|Z| \\
%   \rm{\ae} & \ts{\ae}   & \texttt{\"a} or \texttt{\ae} or \verb|\ae| &           &            & \\
%   \rm{\o}  & \ts{\o}    & \verb|\o| or \texttt{\"o} or \texttt{\o}
%                                      & \rm{\O}   & \ts{\o}    & \verb|\O| or \texttt{\"O}, \texttt{\O} \\
%            &            &            & \rm{\oo}  & \ts{\o}    & \verb|\oo| \\
%            &            &            & \rm{\oO}  & \ts{\o}    & \verb|\oO| \\
%   \rm{\ey} & \ts{ey} or \ts{\o y}   & \verb|\ey|   &         &            & \\
%   \hline
%   \rm{\arlaug}   &         & \verb|\arlaug|   &           &            & \\
%   \rm{\tvimadur} &         & \verb|\tvimadur| &           &            & \\
%   \rm{\belgthor} &         & \verb|\belgthor| &           &            & \\
%   \hline
%   \rm{j}   & \ts{j}     & \verb|j|   &           &            & \\
%   \rm{\aa} & \ts{\r a}   & \texttt{\r a} or \verb|\aa|  &           &            & \\
% \hline
% \end{tabular}\\
%
% \noindent The main source for the medieval runic characters is \cite{Runmarkt}, with support
% from \cite{DRI}, \cite{Enoksen}, \cite{Jansson}, \cite{Moltke} and \cite{Haugen} (despite the
% claim in the later of ''ikke må oppfattatast som nokon autoritativ katalog''). Finally, the
% rune \textarm{\"\P} from Schleswig, is from \cite{Spurkland} and the rune \textarm{\.r} is
% from \cite{Larsson}.
%
% The table is divided in three sections. First come the ''real'' runes, as an alphabet, not
% as an futhark. Next, the three bind-runes that always occurred in rune
% staves (runic calendars) are listed. Finally come two runes used by, and invented by, modern
% Swedish rune carvers \cite{Dahlgren} to make it possible to use runes for writing
% in the Swedish language of today. I put them here, not because they are medieval
% (they are not), but because those modern rune carvers essentially use the medieval runes ---
% complemented with these two.
%
% Note that the runic symbols for c, s and z respectively, were to an large extent
% interchangeable. In the table above they are however not duplicated.
%
% \pagebreak
%
% \flushleft
% \begin{thebibliography}{99}
% \bibitem[\r Ahl\'en 1997]{Ahlen} \r Ahl\'en, Marit. 1997. \textit{Runristaren \"Opir}.
%   Runr\"on~12. Uppsala.
% \bibitem[Barnes 1994]{Barnes} Barnes, Michael P. 1994. \textit{The Runic Inscriptions
%   of Maeshowe, Orkney}. Runr\"on~8. Uppsala.
% \bibitem[Dahlgren 2000]{Dahlgren} Dahlgren, Kalle. 2000. \verb+http://www.runristare.se/+
% \bibitem[Derolez 1995]{Derolez} Derolez, Ren\'e. 1995.
%   'On the ''Otherness'' of the Anglo-Saxon Runes and the ''Perfect
%   Fit'' of the Fu\th ark'. In: \textit{Runeninschriften als
%   Quellen interdisziplin\"arer Forschung}. Erg\"anzungsb\"ande zum
%   Reallexikon der Germanischen Altertumskunde~15. Berlin/New York.
% \bibitem[\textit{DRI} 1941-1942]{DRI} \textit{Danmarks runeindskrifter}.
%   Ed.\ Jacobsen, Lis \& Moltke, Erik. K\o benhavn 1941-1942.
% \bibitem[Enoksen 1998]{Enoksen} Enoksen, Lars Magnar. 1998.
%   \textit{Runor. Historia, tydning, tolkning}. Lund.
% \bibitem[Haugen 1996]{Haugen} Haugen, Odd Einar. 1996.
%   \verb+http://gonzo.hd.uib.no/Runefonter/Gullskoen.html+
%   \textit{Alfabetisk oversyn over Gullskoen runefont, versjon 2.1}. Bergen.
% \bibitem[Haugen 2001]{Haugen2001} Haugen, Odd Einar. 2001.
%   \verb+http://gonzo.hd.uib.no/Runefonter/Gullhornet.html+
%   \textit{Gullhornet runefont. Oversyn over inventaret i versjon 1.0}. Bergen.
% \bibitem[Jansson 1987]{Jansson} Jansson, Sven B.\ F. 1987.
%   \textit{Runes in Sweden}. Stockholm.
% \bibitem[Larsson 2002]{Larsson} Larsson, Patrik. 2002. \textit{Yrrunan.
%   Användning och ljudvärde i nordiska runinskrifter}. Runr\"on~17. Uppsala.
% \bibitem[\textit{\LaTeX fCPW} 1999]{LaTeXfCPW} \textit{\LaTeX\ for class and package writers}.
%   Comes with the \LaTeXe\ distribution as \texttt{clsguide.tex}. 1999.
% \bibitem[Looijenga 1997]{Looijenga} Looijenga, Tineke. 1997.
%   \textit{Runes Around the North Sea and On the
%   Continent AD 150-700; Texts \& Contexts}. Groningen.
% \bibitem[Moltke 1985]{Moltke} Moltke, Erik. 1985. \textit{Runes and
%   Their Origin. Denmark and Elsewhere}. Copenhagen.
% \bibitem[Nienhuys 2002]{Nienhuys} Nienhuys, Han-Wen. 2002.
%   \verb+http://www.cs.uu.nl/~hanwen/pktrace/+
%   \textit{pktrace - Scalable PostScript Fonts for MetaFont}. Utrecht.
% \bibitem[Odenstedt 1990]{Odenstedt} Odenstedt, Bengt. 1990.
%   \textit{On the Origin and Early History of the Runic
%   Script. Typology and Graphic Variation in the
%   Older Futhark}. Uppsala.
% \bibitem[Page 1999]{Page} Page, R.\ I. 1999. \textit{An Introduction to
%   English Runes}. Second Edition. Woodbridge.
% \bibitem[Parsons 1994]{Parsons94} Parsons, David. 1994. 'Anglo-Saxon Runes in
%   Continental Manuscripts'. In: \textit{Runische Schriftkultur in
%   kontinental-skandinavischer und -angel\-s\"achsischer Wechselbeziehung}.
%   Erg\"anzungsb\"ande zum Reallexikon der Germanischen Altertumskunde~10. Berlin/New York.
% \bibitem[Parsons 1999]{Parsons99} Parsons, David N. 1999. \textit{Recasting the Runes.
%   The Reform of the Anglo-Saxon Futhorc}. Runr\"on~14. Uppsala.
% \bibitem[Peterson 1994]{Peterson94} Peterson, Lena. \textit{The Graphemic System of the
%   Staveless Runes}. In:~\cite{Proceedings94}.
% \bibitem[\textit{3:d ISRRI} 1994]{Proceedings94} \textit{Proceedings of the Third International
%   Symposium on Runes and Runic Inscriptions}. Runr\"on~9. Ed.\ James E.\ Knirk. Uppsala~1994.
% \bibitem[Quak 1994]{Quak} Quak, Arend. \textit{Zur Inschrift von Westeremden B}.
%   In:~\cite{Proceedings94}.
% \bibitem[\textit{Runm\"arkt} 1994]{Runmarkt} \textit{Runm\"arkt. Fr\r an brev till klotter.
%   Runorna under medeltiden}.
%   Ed.\ Benneth, Solbritt \& \r Ahl\'en, Marit. Stockholm~1994.
% \bibitem[Spurkland 1994]{Spurkland} Spurkland, Terje. \textarm{\P} \textit{and}
%   \textarm{\"b}\textit{: One Grapheme or Two?}. In:~\cite{Proceedings94}.
% \bibitem[Unicode 2000]{Unicode} \verb+http://www.unicode.org/charts/+
% \bibitem[Werner 2002]{Werner} Werner, Carl-Gustav.
%   \verb+http://www.maths.lth.se/~carl/allrunes/+
% \end{thebibliography}
%
% \StopEventually{\AtEndDocument{\PrintIndex\PrintChanges}}
%
%<*sty>
% \section{\LaTeX\ Support Files}
%
% \subsection{The style file --- \texttt{allrunes.sty}}
% \file{allrunes.sty}
%
%
% \subsubsection{Initializing}
%
% First we need to identify the package, its version and release
% date, etc.
%    \begin{macrocode}
\def\fileversion{v2.0}
\def\filedate{2002/08/11}
\ProvidesPackage{allrunes}[\filedate\space\fileversion\space allrunes package.]

%    \end{macrocode}
% The font selection scheme depends heavily on the ifthen package.
%    \begin{macrocode}
\RequirePackage{ifthen}

%    \end{macrocode}
% Most of the font declaring calls are so similar. Here we redefine
% it to save space and typing. If we want to use type1 fonts it
% becomes even easier.
%    \begin{macrocode}
\newcommand{\DeclareFontShapeWithSizes}[5]{%
  \DeclareFontShape{#1}{#2}{#3}{#4}{%
   <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83> #5}{}}

\DeclareOption{type1}{%
  \renewcommand{\DeclareFontShapeWithSizes}[5]{%
     \DeclareFontShape{#1}{#2}{#3}{#4}{<-> #58z}{}}}

\ProcessOptions\relax
%    \end{macrocode}
% Here the user interface, i.e. the commands for the user, for font
% changing are defined. First comes the series. Since
% bfdefault and mddefault are already defined in fonttext.ltx
% they are not defined here.
%    \begin{macrocode}
%\newcommand{\bfdefault}{bx} % bold
%\newcommand{\mddefault}{m}  % medium
\newcommand{\lfdefault}{l}   % light
\newcommand{\bldefault}{c}   % bold with lines
\newcommand{\mldefault}{n}   % medium with lines
\newcommand{\lldefault}{k}   % light with lines

%    \end{macrocode}
% The bfseries and mdseries are already defined in latex.ltx
% They are redefined here, hopefully this will not interfere
% with their usage outside the allrunes commands.
%    \begin{macrocode}
\DeclareRobustCommand{\lfseries}{%
  \ifthenelse{\equal{\f@series}{\mddefault}}%
              {\fontseries{\lfdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\mldefault}}%
              {\fontseries{\lldefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\bfdefault}}%
              {\fontseries{\lfdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\bldefault}}%
              {\fontseries{\lldefault}\selectfont}{}%
}

\DeclareRobustCommand{\mdseries}{%
  \not@math@alphabet\mdseries\relax
  \ifthenelse{\equal{\f@series}{\lfdefault}}%
              {\fontseries{\mddefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\lldefault}}%
              {\fontseries{\mldefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\bfdefault}}%
              {\fontseries{\mddefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\bldefault}}%
              {\fontseries{\mldefault}\selectfont}{}%
}

\DeclareRobustCommand{\bfseries}{%
  \not@math@alphabet\bfseries\mathbf
  \ifthenelse{\equal{\f@series}{\lfdefault}}%
              {\fontseries{\bfdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\lldefault}}%
              {\fontseries{\bldefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\mddefault}}%
              {\fontseries{\bfdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\mldefault}}%
              {\fontseries{\bldefault}\selectfont}{}%
}

\DeclareRobustCommand{\withlines}{%
  \ifthenelse{\equal{\f@series}{\bfdefault}}%
              {\fontseries{\bldefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\mddefault}}%
              {\fontseries{\mldefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\lfdefault}}%
              {\fontseries{\lldefault}\selectfont}{}%
}

\DeclareRobustCommand{\withoutlines}{%
  \ifthenelse{\equal{\f@series}{\bldefault}}%
              {\fontseries{\bfdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\mldefault}}%
              {\fontseries{\mddefault}\selectfont}{}%
  \ifthenelse{\equal{\f@series}{\lldefault}}%
              {\fontseries{\lfdefault}\selectfont}{}%
}


% textbf and textmd already defined in latex.ltx
%\DeclareTextFontCommand{\textbf}{\bfseries}
%\DeclareTextFontCommand{\textmd}{\mdseries}
\DeclareTextFontCommand{\textlf}{\lfseries}

\DeclareTextFontCommand{\textwol}{\withoutlines}
\DeclareTextFontCommand{\textwil}{\withlines}

%    \end{macrocode}
% The comes the shape
% which is not used for "shape" but for curvature of the twigs
% and the variation of the position of the twigs.
%
% The updefault is already defined in fonttext.ltx, and we keep it
% here as default, even if it's not "up"
%    \begin{macrocode}
%\newcommand{\updefault}{n} % curved
\newcommand{\stdefault}{s}  % straight
\newcommand{\rodefault}{r}  % rounded

\newcommand{\cwdefault}{m} % curved,   low twigs
\newcommand{\swdefault}{t} % straight, low twigs
\newcommand{\rwdefault}{q} % rounded,  low twigs

\DeclareRobustCommand{\curvedtwigs}{%
  \ifthenelse{\equal{\f@shape}{\stdefault}}%
              {\fontshape{\updefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\swdefault}}%
              {\fontshape{\cwdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\rodefault}}%
              {\fontshape{\updefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\rwdefault}}%
              {\fontshape{\cwdefault}\selectfont}{}%
}

\DeclareRobustCommand{\straighttwigs}{%
  \ifthenelse{\equal{\f@shape}{\updefault}}%
              {\fontshape{\stdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\cwdefault}}%
              {\fontshape{\swdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\rodefault}}%
              {\fontshape{\stdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\rwdefault}}%
              {\fontshape{\swdefault}\selectfont}{}%
}

\DeclareRobustCommand{\roundedtwigs}{%
  \ifthenelse{\equal{\f@shape}{\updefault}}%
              {\fontshape{\rodefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\cwdefault}}%
              {\fontshape{\rwdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\stdefault}}%
              {\fontshape{\rodefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\swdefault}}%
              {\fontshape{\rwdefault}\selectfont}{}%
}

\DeclareRobustCommand{\lowtwigs}{%
  \ifthenelse{\equal{\f@shape}{\updefault}}%
              {\fontshape{\cwdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\stdefault}}%
              {\fontshape{\swdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\rodefault}}%
              {\fontshape{\rwdefault}\selectfont}{}%
}

\DeclareRobustCommand{\hightwigs}{%
  \ifthenelse{\equal{\f@shape}{\cwdefault}}%
              {\fontseries{\updefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\swdefault}}%
              {\fontseries{\stdefault}\selectfont}{}%
  \ifthenelse{\equal{\f@shape}{\rwdefault}}%
              {\fontseries{\rodefault}\selectfont}{}%
}

\DeclareTextFontCommand{\textcu}{\curvedtwigs}
\DeclareTextFontCommand{\textst}{\straighttwigs}
\DeclareTextFontCommand{\textro}{\roundedtwigs}

\DeclareTextFontCommand{\textlo}{\lowtwigs}
\DeclareTextFontCommand{\texthi}{\hightwigs}

%    \end{macrocode}
% Here are the declaration of the runic word separators.
% Of course they should not be here! They should reside in the fd-files.
% And they do. Here only a command for defining them are defined, which is then
% used in the fd-files. Silly? Ugly? But it works.
%
% Some of them have more than one name to make things orthogonal.
% All definitions occurres in all encodings.
%    \begin{macrocode}
\newcommand{\DeclareRuneSeparators}[1]{%
  \DeclareTextSymbol{\dot}{#1}{46}        % .
  \DeclareTextSymbol{\doubledot}{#1}{58}  % :
  \DeclareTextSymbol{\tripledot}{#1}{59}
  \DeclareTextSymbol{\quaddot}{#1}{60}
  \DeclareTextSymbol{\pentdot}{#1}{61}

  \DeclareTextSymbol{\eye}{#1}{46}        % .
  \DeclareTextSymbol{\doubleeye}{#1}{58}  % :
  \DeclareTextSymbol{\tripleeye}{#1}{62}
  \DeclareTextSymbol{\quadeye}{#1}{63}
  \DeclareTextSymbol{\penteye}{#1}{64}

  \DeclareTextSymbol{\bar}{#1}{33}        % !
  \DeclareTextSymbol{\doublebar}{#1}{34}
  \DeclareTextSymbol{\triplebar}{#1}{35}

  \DeclareTextSymbol{\cross}{#1}{42}      % *
  \DeclareTextSymbol{\doublecross}{#1}{37}
  \DeclareTextSymbol{\triplecross}{#1}{38}

  \DeclareTextSymbol{\plus}{#1}{43}       % +
  \DeclareTextSymbol{\doubleplus}{#1}{44}
  \DeclareTextSymbol{\tripleplus}{#1}{45}

  \DeclareTextSymbol{\star}{#1}{36}
  %\DeclareTextSymbol{\doublestar}{#1}{37}
  %\DeclareTextSymbol{\triplestar}{#1}{}

} % end of newcommand{\DeclareRuneSeparators}

\input{arc.fd}
\input{ara.fd}
\input{arn.fd}
\input{art.fd}
\input{arl.fd}
\input{arm.fd}

%    \end{macrocode}
%
%</sty>
%
% \subsection{The Font Definition Files --- \texttt{ar?.fd}}
%
% What they really do, is to specify what font driver file should be
% loaded when the user switches font.
%
%<*arc>
%
% \subsubsection{The Common Germanic Runes}
%    \begin{macrocode}
% THE COMMON GERMANIC RUNES

\DeclareFontEncoding{LRC}{}{}
\DeclareFontSubstitution{LRC}{fruc}{m}{n}

\DeclareFontFamily{LRC}{fruc}{}
\DeclareFontShapeWithSizes{LRC}{fruc}{m}{n}{frucmn}
\DeclareFontShapeWithSizes{LRC}{fruc}{m}{m}{frucmm}
\DeclareFontShapeWithSizes{LRC}{fruc}{m}{s}{frucms}
\DeclareFontShapeWithSizes{LRC}{fruc}{m}{t}{frucmt}
\DeclareFontShapeWithSizes{LRC}{fruc}{m}{r}{frucmr}
\DeclareFontShapeWithSizes{LRC}{fruc}{m}{q}{frucmq}

\DeclareFontShapeWithSizes{LRC}{fruc}{l}{n}{frucln}
\DeclareFontShapeWithSizes{LRC}{fruc}{l}{m}{fruclm}
\DeclareFontShapeWithSizes{LRC}{fruc}{l}{s}{frucls}
\DeclareFontShapeWithSizes{LRC}{fruc}{l}{t}{fruclt}
\DeclareFontShapeWithSizes{LRC}{fruc}{l}{r}{fruclr}
\DeclareFontShapeWithSizes{LRC}{fruc}{l}{q}{fruclq}

\DeclareFontShapeWithSizes{LRC}{fruc}{bx}{n}{frucbn}
\DeclareFontShapeWithSizes{LRC}{fruc}{bx}{m}{frucbm}
\DeclareFontShapeWithSizes{LRC}{fruc}{bx}{s}{frucbs}
\DeclareFontShapeWithSizes{LRC}{fruc}{bx}{t}{frucbt}
\DeclareFontShapeWithSizes{LRC}{fruc}{bx}{r}{frucbr}
\DeclareFontShapeWithSizes{LRC}{fruc}{bx}{q}{frucbq}

\DeclareFontShapeWithSizes{LRC}{fruc}{n}{n}{frucnn}
\DeclareFontShapeWithSizes{LRC}{fruc}{n}{m}{frucnm}
\DeclareFontShapeWithSizes{LRC}{fruc}{n}{s}{frucns}
\DeclareFontShapeWithSizes{LRC}{fruc}{n}{t}{frucnt}
\DeclareFontShapeWithSizes{LRC}{fruc}{n}{r}{frucnr}
\DeclareFontShapeWithSizes{LRC}{fruc}{n}{q}{frucnq}

\DeclareFontShapeWithSizes{LRC}{fruc}{k}{n}{fruckn}
\DeclareFontShapeWithSizes{LRC}{fruc}{k}{m}{fruckm}
\DeclareFontShapeWithSizes{LRC}{fruc}{k}{s}{frucks}
\DeclareFontShapeWithSizes{LRC}{fruc}{k}{t}{fruckt}
\DeclareFontShapeWithSizes{LRC}{fruc}{k}{r}{fruckr}
\DeclareFontShapeWithSizes{LRC}{fruc}{k}{q}{fruckq}

\DeclareFontShapeWithSizes{LRC}{fruc}{c}{n}{fruccn}
\DeclareFontShapeWithSizes{LRC}{fruc}{c}{m}{fruccm}
\DeclareFontShapeWithSizes{LRC}{fruc}{c}{s}{fruccs}
\DeclareFontShapeWithSizes{LRC}{fruc}{c}{t}{frucct}
\DeclareFontShapeWithSizes{LRC}{fruc}{c}{r}{fruccr}
\DeclareFontShapeWithSizes{LRC}{fruc}{c}{q}{fruccq}

% USER COMMANDS FOR SELECTING FONT FAMILY

\newcommand{\arcdefault}{fruc}
\newcommand{\arcfamily}{\usefont{LRC}{\arcdefault}{m}{n}}
\DeclareTextFontCommand{\textarc}{\arcfamily}

% USER COMMANDS FOR ACCESSING SPECIAL SYMBOLS IN THE DIFFERENT
% FONT FAMILIES AND DIFFERENT ENCODINGS

\DeclareTextSymbol{\th}{LRC}{254}
\DeclareTextSymbol{\TH}{LRC}{222}
\DeclareTextSymbol{\A}{LRC}{161}
\DeclareTextSymbol{\a}{LRC}{225}
\DeclareTextSymbol{\k}{LRC}{171}
\DeclareTextSymbol{\K}{LRC}{131}
\DeclareTextSymbol{\h}{LRC}{232}
\DeclareTextSymbol{\i}{LRC}{193}
\DeclareTextSymbol{\j}{LRC}{170}
\DeclareTextSymbol{\p}{LRC}{160}
\DeclareTextSymbol{\R}{LRC}{154}
\DeclareTextSymbol{\RR}{LRC}{122}
\DeclareTextSymbol{\s}{LRC}{195}
\DeclareTextSymbol{\S}{LRC}{196}
\DeclareTextSymbol{\sthree}{LRC}{211}
\DeclareTextSymbol{\sfour}{LRC}{227}
\DeclareTextSymbol{\sfive}{LRC}{243}
\DeclareTextSymbol{\ssix}{LRC}{212}
\DeclareTextSymbol{\sseven}{LRC}{228}
\DeclareTextSymbol{\seight}{LRC}{244}
\DeclareTextSymbol{\ng}{LRC}{173}
\DeclareTextSymbol{\NG}{LRC}{141}
\DeclareTextSymbol{\ing}{LRC}{181}
\DeclareTextSymbol{\Ing}{LRC}{189}
\DeclareTextSymbol{\ING}{LRC}{157}
\DeclareTextSymbol{\d}{LRC}{164}

% Commands for mirroring runes
% Variants that are commented out are identical to the non-mirrored form
\DeclareTextCommand{\hflip}{LRC}{}
\DeclareTextCommand{\vflip}{LRC}{}
\DeclareTextCommand{\turn}{LRC}{}

\DeclareTextComposite{\hflip}{LRC}{f}{174}
\DeclareTextComposite{\vflip}{LRC}{f}{166}
\DeclareTextComposite{\turn}{LRC}{f}{182}

\DeclareTextComposite{\hflip}{LRC}{F}{142}
\DeclareTextComposite{\vflip}{LRC}{F}{134}
\DeclareTextComposite{\turn}{LRC}{F}{150}

\DeclareTextComposite{\hflip}{LRC}{u}{229}
\DeclareTextComposite{\vflip}{LRC}{u}{221}
\DeclareTextComposite{\turn}{LRC}{u}{237}

\DeclareTextComposite{\hflip}{LRC}{U}{205}
\DeclareTextComposite{\vflip}{LRC}{U}{197}
\DeclareTextComposite{\turn}{LRC}{U}{213}

\DeclareTextComposite{\hflip}{LRC}{\th}{238}
%\DeclareTextComposite{\vflip}{LRC}{\th}{254}
\DeclareTextComposite{\turn}{LRC}{\th}{238}

\DeclareTextComposite{\hflip}{LRC}{a}{177}
\DeclareTextComposite{\vflip}{LRC}{a}{169}
\DeclareTextComposite{\turn}{LRC}{a}{185}

\DeclareTextComposite{\hflip}{LRC}{\a}{233}
%\DeclareTextComposite{\vflip}{LRC}{\a}{225}
\DeclareTextComposite{\turn}{LRC}{\a}{233}

\DeclareTextComposite{\hflip}{LRC}{r}{242}
\DeclareTextComposite{\vflip}{LRC}{r}{234}
\DeclareTextComposite{\turn}{LRC}{r}{250}

\DeclareTextComposite{\hflip}{LRC}{k}{163}
%\DeclareTextComposite{\vflip}{LRC}{k}{107}
\DeclareTextComposite{\turn}{LRC}{k}{163}

%\DeclareTextComposite{\hflip}{LRC}{\k}{171}
\DeclareTextComposite{\vflip}{LRC}{\k}{187}
\DeclareTextComposite{\turn}{LRC}{\k}{187}

%\DeclareTextComposite{\hflip}{LRC}{K}{75}
\DeclareTextComposite{\vflip}{LRC}{K}{155}
\DeclareTextComposite{\turn}{LRC}{K}{155}

%\DeclareTextComposite{\hflip}{LRC}{\K}{131}
\DeclareTextComposite{\vflip}{LRC}{\K}{139}
\DeclareTextComposite{\turn}{LRC}{\K}{139}

%\DeclareTextComposite{\hflip}{LRC}{g}{103}
%\DeclareTextComposite{\vflip}{LRC}{g}{103}
%\DeclareTextComposite{\turn}{LRC}{g}{103}

\DeclareTextComposite{\hflip}{LRC}{w}{175}
\DeclareTextComposite{\vflip}{LRC}{w}{191}
\DeclareTextComposite{\turn}{LRC}{w}{183}

\DeclareTextComposite{\hflip}{LRC}{h}{168}
\DeclareTextComposite{\vflip}{LRC}{h}{168}
%\DeclareTextComposite{\turn}{LRC}{h}{104}

\DeclareTextComposite{\hflip}{LRC}{\h}{240}
\DeclareTextComposite{\vflip}{LRC}{\h}{240}
%\DeclareTextComposite{\turn}{LRC}{\h}{232}

\DeclareTextComposite{\hflip}{LRC}{H}{136}
\DeclareTextComposite{\vflip}{LRC}{H}{136}
%\DeclareTextComposite{\turn}{LRC}{H}{72}

\DeclareTextComposite{\hflip}{LRC}{n}{158}
\DeclareTextComposite{\vflip}{LRC}{n}{158}
%\DeclareTextComposite{\turn}{LRC}{n}{110}

%\DeclareTextComposite{\hflip}{LRC}{i}{105}
%\DeclareTextComposite{\vflip}{LRC}{i}{105}
%\DeclareTextComposite{\turn}{LRC}{i}{105}

\DeclareTextComposite{\hflip}{LRC}{\i}{201}
\DeclareTextComposite{\vflip}{LRC}{\i}{201}
%\DeclareTextComposite{\turn}{LRC}{\i}{193}

\DeclareTextComposite{\hflip}{LRC}{j}{162}
\DeclareTextComposite{\vflip}{LRC}{j}{162}
%\DeclareTextComposite{\turn}{LRC}{j}{106}

\DeclareTextComposite{\hflip}{LRC}{\j}{178}
\DeclareTextComposite{\vflip}{LRC}{\j}{178}
%\DeclareTextComposite{\turn}{LRC}{\j}{170}

\DeclareTextComposite{\hflip}{LRC}{J}{130}
\DeclareTextComposite{\vflip}{LRC}{J}{130}
%\DeclareTextComposite{\turn}{LRC}{J}{74}

\DeclareTextComposite{\hflip}{LRC}{A}{129}
\DeclareTextComposite{\vflip}{LRC}{A}{129}
\DeclareTextComposite{\turn}{LRC}{A}{65}

%\DeclareTextComposite{\hflip}{LRC}{\A}{161}
%\DeclareTextComposite{\vflip}{LRC}{\A}{161}
%\DeclareTextComposite{\turn}{LRC}{\A}{161}

\DeclareTextComposite{\hflip}{LRC}{I}{207}
\DeclareTextComposite{\vflip}{LRC}{I}{207}
%\DeclareTextComposite{\turn}{LRC}{I}{239}

\DeclareTextComposite{\hflip}{LRC}{p}{176}
%\DeclareTextComposite{\vflip}{LRC}{p}{112}
\DeclareTextComposite{\turn}{LRC}{p}{176}

%\DeclareTextComposite{\hflip}{LRC}{\p}{160}
\DeclareTextComposite{\vflip}{LRC}{\p}{192}
\DeclareTextComposite{\turn}{LRC}{\p}{192}

%\DeclareTextComposite{\hflip}{LRC}{P}{80}
%\DeclareTextComposite{\vflip}{LRC}{P}{80}
%\DeclareTextComposite{\turn}{LRC}{P}{80}

%\DeclareTextComposite{\hflip}{LRC}{R}{82}
\DeclareTextComposite{\vflip}{LRC}{R}{154}
\DeclareTextComposite{\turn}{LRC}{R}{154}

%\DeclareTextComposite{\hflip}{LRC}{\R}{154}
\DeclareTextComposite{\vflip}{LRC}{\R}{82}
\DeclareTextComposite{\turn}{LRC}{\R}{82}

%\DeclareTextComposite{\hflip}{LRC}{\RR}{122}
%\DeclareTextComposite{\vflip}{LRC}{\RR}{122}
%\DeclareTextComposite{\turn}{LRC}{\RR}{122}

\DeclareTextComposite{\hflip}{LRC}{s}{179}
%\DeclareTextComposite{\vflip}{LRC}{s}{115}
\DeclareTextComposite{\turn}{LRC}{s}{179}

\DeclareTextComposite{\hflip}{LRC}{S}{147}
%\DeclareTextComposite{\vflip}{LRC}{S}{83}
\DeclareTextComposite{\turn}{LRC}{S}{147}

\DeclareTextComposite{\hflip}{LRC}{\s}{203}
\DeclareTextComposite{\vflip}{LRC}{\s}{203}
%\DeclareTextComposite{\turn}{LRC}{\s}{195}

\DeclareTextComposite{\hflip}{LRC}{\S}{204}
\DeclareTextComposite{\vflip}{LRC}{\S}{204}
%\DeclareTextComposite{\turn}{LRC}{\S}{196}

\DeclareTextComposite{\hflip}{LRC}{\sthree}{219}
\DeclareTextComposite{\vflip}{LRC}{\sthree}{219}
%\DeclareTextComposite{\turn}{LRC}{\sthree}{211}

\DeclareTextComposite{\hflip}{LRC}{\sfour}{235}
%\DeclareTextComposite{\vflip}{LRC}{\sfour}{227}
\DeclareTextComposite{\turn}{LRC}{\sfour}{235}

\DeclareTextComposite{\hflip}{LRC}{\sfive}{251}
\DeclareTextComposite{\vflip}{LRC}{\sfive}{251}
%\DeclareTextComposite{\turn}{LRC}{\sfive}{243}

\DeclareTextComposite{\hflip}{LRC}{\ssix}{220}
%\DeclareTextComposite{\vflip}{LRC}{\ssix}{212}
\DeclareTextComposite{\turn}{LRC}{\ssix}{220}

\DeclareTextComposite{\hflip}{LRC}{\sseven}{236}
\DeclareTextComposite{\vflip}{LRC}{\sseven}{236}
%\DeclareTextComposite{\turn}{LRC}{\sseven}{228}

\DeclareTextComposite{\hflip}{LRC}{\seight}{252}
%\DeclareTextComposite{\vflip}{LRC}{\seight}{244}
\DeclareTextComposite{\turn}{LRC}{\seight}{252}

%\DeclareTextComposite{\hflip}{LRC}{t}{116}
\DeclareTextComposite{\vflip}{LRC}{t}{180}
\DeclareTextComposite{\turn}{LRC}{t}{180}

%\DeclareTextComposite{\hflip}{LRC}{T}{84}
\DeclareTextComposite{\vflip}{LRC}{T}{188}
\DeclareTextComposite{\turn}{LRC}{T}{188}

\DeclareTextComposite{\hflip}{LRC}{b}{226}
%\DeclareTextComposite{\vflip}{LRC}{b}{98}
\DeclareTextComposite{\turn}{LRC}{b}{226}

\DeclareTextComposite{\hflip}{LRC}{B}{194}
%\DeclareTextComposite{\vflip}{LRC}{B}{66}
\DeclareTextComposite{\turn}{LRC}{B}{194}

%\DeclareTextComposite{\hflip}{LRC}{e}{101}
\DeclareTextComposite{\vflip}{LRC}{e}{165}
\DeclareTextComposite{\turn}{LRC}{e}{165}

%\DeclareTextComposite{\hflip}{LRC}{E}{69}
\DeclareTextComposite{\vflip}{LRC}{E}{133}
\DeclareTextComposite{\turn}{LRC}{E}{133}

%\DeclareTextComposite{\hflip}{LRC}{m}{109}
\DeclareTextComposite{\vflip}{LRC}{m}{149}
\DeclareTextComposite{\turn}{LRC}{m}{149}

\DeclareTextComposite{\hflip}{LRC}{l}{148}
\DeclareTextComposite{\vflip}{LRC}{l}{140}
\DeclareTextComposite{\turn}{LRC}{l}{156}

%\DeclareTextComposite{\hflip}{LRC}{\ng}{173}
%\DeclareTextComposite{\vflip}{LRC}{\ng}{173}
%\DeclareTextComposite{\turn}{LRC}{\ng}{173}

%\DeclareTextComposite{\hflip}{LRC}{\NG}{141}
%\DeclareTextComposite{\vflip}{LRC}{\NG}{141}
%\DeclareTextComposite{\turn}{LRC}{\NG}{141}

%\DeclareTextComposite{\hflip}{LRC}{\ing}{181}
\DeclareTextComposite{\vflip}{LRC}{\ing}{245}
\DeclareTextComposite{\turn}{LRC}{\ing}{245}

%\DeclareTextComposite{\hflip}{LRC}{\Ing}{189}
\DeclareTextComposite{\vflip}{LRC}{\Ing}{253}
\DeclareTextComposite{\turn}{LRC}{\Ing}{253}

%\DeclareTextComposite{\hflip}{LRC}{\ING}{157}
%\DeclareTextComposite{\vflip}{LRC}{\ING}{157}
%\DeclareTextComposite{\turn}{LRC}{\ING}{157}

%\DeclareTextComposite{\hflip}{LRC}{d}{100}
%\DeclareTextComposite{\vflip}{LRC}{d}{100}
%\DeclareTextComposite{\turn}{LRC}{d}{100}

%\DeclareTextComposite{\hflip}{LRC}{\d}{68}
%\DeclareTextComposite{\vflip}{LRC}{\d}{68}
%\DeclareTextComposite{\turn}{LRC}{\d}{68}

%\DeclareTextComposite{\hflip}{LRC}{D}{164}
%\DeclareTextComposite{\vflip}{LRC}{D}{164}
%\DeclareTextComposite{\turn}{LRC}{D}{164}

%\DeclareTextComposite{\hflip}{LRC}{o}{111}
\DeclareTextComposite{\vflip}{LRC}{o}{255}
\DeclareTextComposite{\turn}{LRC}{o}{255}

\DeclareRuneSeparators{LRC}

%    \end{macrocode}
%
%</arc>
%
%<*ara>
%
% \subsubsection{The Anglo-Frisian Runes}
%    \begin{macrocode}
% THE ANGLO-FRISIAN RUNES

\DeclareFontEncoding{LRA}{}{}
\DeclareFontSubstitution{LRA}{frua}{m}{n}

\DeclareFontFamily{LRA}{frua}{}
\DeclareFontShapeWithSizes{LRA}{frua}{m}{n}{fruamn}
\DeclareFontShapeWithSizes{LRA}{frua}{m}{m}{fruamm}
\DeclareFontShapeWithSizes{LRA}{frua}{m}{s}{fruams}
\DeclareFontShapeWithSizes{LRA}{frua}{m}{t}{fruamt}
\DeclareFontShapeWithSizes{LRA}{frua}{m}{r}{fruamr}
\DeclareFontShapeWithSizes{LRA}{frua}{m}{q}{fruamq}

\DeclareFontShapeWithSizes{LRA}{frua}{l}{n}{frualn}
\DeclareFontShapeWithSizes{LRA}{frua}{l}{m}{frualm}
\DeclareFontShapeWithSizes{LRA}{frua}{l}{s}{fruals}
\DeclareFontShapeWithSizes{LRA}{frua}{l}{t}{frualt}
\DeclareFontShapeWithSizes{LRA}{frua}{l}{r}{frualr}
\DeclareFontShapeWithSizes{LRA}{frua}{l}{q}{frualq}

\DeclareFontShapeWithSizes{LRA}{frua}{bx}{n}{fruabn}
\DeclareFontShapeWithSizes{LRA}{frua}{bx}{m}{fruabm}
\DeclareFontShapeWithSizes{LRA}{frua}{bx}{s}{fruabs}
\DeclareFontShapeWithSizes{LRA}{frua}{bx}{t}{fruabt}
\DeclareFontShapeWithSizes{LRA}{frua}{bx}{r}{fruabr}
\DeclareFontShapeWithSizes{LRA}{frua}{bx}{q}{fruabq}

\DeclareFontShapeWithSizes{LRA}{frua}{n}{n}{fruann}
\DeclareFontShapeWithSizes{LRA}{frua}{n}{m}{fruanm}
\DeclareFontShapeWithSizes{LRA}{frua}{n}{s}{fruans}
\DeclareFontShapeWithSizes{LRA}{frua}{n}{t}{fruant}
\DeclareFontShapeWithSizes{LRA}{frua}{n}{r}{fruanr}
\DeclareFontShapeWithSizes{LRA}{frua}{n}{q}{fruanq}

\DeclareFontShapeWithSizes{LRA}{frua}{k}{n}{fruakn}
\DeclareFontShapeWithSizes{LRA}{frua}{k}{m}{fruakm}
\DeclareFontShapeWithSizes{LRA}{frua}{k}{s}{fruaks}
\DeclareFontShapeWithSizes{LRA}{frua}{k}{t}{fruakt}
\DeclareFontShapeWithSizes{LRA}{frua}{k}{r}{fruakr}
\DeclareFontShapeWithSizes{LRA}{frua}{k}{q}{fruakq}

\DeclareFontShapeWithSizes{LRA}{frua}{c}{n}{fruacn}
\DeclareFontShapeWithSizes{LRA}{frua}{c}{m}{fruacm}
\DeclareFontShapeWithSizes{LRA}{frua}{c}{s}{fruacs}
\DeclareFontShapeWithSizes{LRA}{frua}{c}{t}{fruact}
\DeclareFontShapeWithSizes{LRA}{frua}{c}{r}{fruacr}
\DeclareFontShapeWithSizes{LRA}{frua}{c}{q}{fruacq}

% USER COMMANDS FOR SELECTING FONT FAMILY

\newcommand{\aradefault}{frua}
\newcommand{\arafamily}{\usefont{LRA}{\aradefault}{m}{n}}
\DeclareTextFontCommand{\textara}{\arafamily}

% USER COMMANDS FOR ACCESSING SPECIAL SYMBOLS IN THE DIFFERENT
% FONT FAMILIES AND DIFFERENT ENCODINGS

% The Anglo-Saxon Runes

\DeclareTextSymbol{\th}{LRA}{254}
\DeclareTextSymbol{\c}{LRA}{131}
\DeclareTextSymbol{\h}{LRA}{216}
\DeclareTextSymbol{\j}{LRA}{178}
\DeclareTextSymbol{\sthree}{LRA}{211}
\DeclareTextSymbol{\sfour}{LRA}{227}
\DeclareTextSymbol{\sfive}{LRA}{243}
\DeclareTextSymbol{\ssix}{LRA}{212}
\DeclareTextSymbol{\sseven}{LRA}{228}
\DeclareTextSymbol{\seight}{LRA}{244}
\DeclareTextSymbol{\ng}{LRA}{173}
\DeclareTextSymbol{\oe}{LRA}{247}
\DeclareTextSymbol{\OE}{LRA}{215}
\DeclareTextSymbol{\d}{LRA}{164}
\DeclareTextSymbol{\ae}{LRA}{230}
\DeclareTextSymbol{\y}{LRA}{193}
\DeclareTextSymbol{\ea}{LRA}{196}
\DeclareTextSymbol{\g}{LRA}{135}
\DeclareTextSymbol{\G}{LRA}{167}
\DeclareTextSymbol{\k}{LRA}{195}
\DeclareTextSymbol{\stan}{LRA}{208}
\DeclareTextSymbol{\STAN}{LRA}{200}
\DeclareTextSymbol{\rex}{LRA}{154}


% Commands for mirroring Anglo-Saxon runes
% Variants that are commented out are identical to the non-mirrored form
\DeclareTextCommand{\hflip}{LRA}{}
\DeclareTextCommand{\vflip}{LRA}{}
\DeclareTextCommand{\turn}{LRA}{}

\DeclareTextComposite{\hflip}{LRA}{f}{174}
\DeclareTextComposite{\vflip}{LRA}{f}{166}
\DeclareTextComposite{\turn}{LRA}{f}{182}

\DeclareTextComposite{\hflip}{LRA}{F}{142}
\DeclareTextComposite{\vflip}{LRA}{F}{134}
\DeclareTextComposite{\turn}{LRA}{F}{150}

\DeclareTextComposite{\hflip}{LRA}{u}{229}
\DeclareTextComposite{\vflip}{LRA}{u}{221}
\DeclareTextComposite{\turn}{LRA}{u}{237}

\DeclareTextComposite{\hflip}{LRA}{U}{205}
\DeclareTextComposite{\vflip}{LRA}{U}{197}
\DeclareTextComposite{\turn}{LRA}{U}{213}

\DeclareTextComposite{\hflip}{LRA}{\th}{238}
%\DeclareTextComposite{\vflip}{LRA}{\th}{254}
\DeclareTextComposite{\turn}{LRA}{\th}{238}

\DeclareTextComposite{\hflip}{LRA}{o}{151}
\DeclareTextComposite{\vflip}{LRA}{o}{143}
\DeclareTextComposite{\turn}{LRA}{o}{159}

\DeclareTextComposite{\hflip}{LRA}{r}{242}
\DeclareTextComposite{\vflip}{LRA}{r}{234}
\DeclareTextComposite{\turn}{LRA}{r}{250}

\DeclareTextComposite{\hflip}{LRA}{c}{155}
\DeclareTextComposite{\vflip}{LRA}{c}{163}
\DeclareTextComposite{\turn}{LRA}{c}{171}

%\DeclareTextComposite{\hflip}{LRA}{\c}{131}
\DeclareTextComposite{\vflip}{LRA}{\c}{139}
\DeclareTextComposite{\turn}{LRA}{\c}{139}

%\DeclareTextComposite{\hflip}{LRA}{g}{103}
%\DeclareTextComposite{\vflip}{LRA}{g}{103}
%\DeclareTextComposite{\turn}{LRA}{g}{103}

\DeclareTextComposite{\hflip}{LRA}{w}{175}
\DeclareTextComposite{\vflip}{LRA}{w}{191}
\DeclareTextComposite{\turn}{LRA}{w}{183}

\DeclareTextComposite{\hflip}{LRA}{h}{168}
\DeclareTextComposite{\vflip}{LRA}{h}{168}
%\DeclareTextComposite{\turn}{LRA}{h}{104}

\DeclareTextComposite{\hflip}{LRA}{H}{136}
\DeclareTextComposite{\vflip}{LRA}{H}{136}
%\DeclareTextComposite{\turn}{LRA}{H}{72}

\DeclareTextComposite{\hflip}{LRA}{\h}{224}
\DeclareTextComposite{\vflip}{LRA}{\h}{224}
%\DeclareTextComposite{\turn}{LRA}{\h}{216}

\DeclareTextComposite{\hflip}{LRA}{n}{158}
\DeclareTextComposite{\vflip}{LRA}{n}{158}
%\DeclareTextComposite{\turn}{LRA}{n}{110}

%\DeclareTextComposite{\hflip}{LRA}{i}{105}
%\DeclareTextComposite{\vflip}{LRA}{i}{105}
%\DeclareTextComposite{\turn}{LRA}{i}{105}

%\DeclareTextComposite{\hflip}{LRA}{j}{106}
%\DeclareTextComposite{\vflip}{LRA}{j}{106}
%\DeclareTextComposite{\turn}{LRA}{j}{106}

%\DeclareTextComposite{\hflip}{LRA}{\j}{178}
%\DeclareTextComposite{\vflip}{LRA}{\j}{178}
%\DeclareTextComposite{\turn}{LRA}{\j}{178}

%\DeclareTextComposite{\hflip}{LRA}{J}{74}
%\DeclareTextComposite{\vflip}{LRA}{J}{74}
%\DeclareTextComposite{\turn}{LRA}{J}{74}

\DeclareTextComposite{\hflip}{LRA}{I}{207}
\DeclareTextComposite{\vflip}{LRA}{I}{207}
%\DeclareTextComposite{\turn}{LRA}{I}{239}

\DeclareTextComposite{\hflip}{LRA}{p}{176}
%\DeclareTextComposite{\vflip}{LRA}{p}{112}
\DeclareTextComposite{\turn}{LRA}{p}{176}

\DeclareTextComposite{\hflip}{LRA}{P}{144}
%\DeclareTextComposite{\vflip}{LRA}{P}{80}
\DeclareTextComposite{\turn}{LRA}{P}{144}

%\DeclareTextComposite{\hflip}{LRA}{x}{120}
\DeclareTextComposite{\vflip}{LRA}{x}{107}
\DeclareTextComposite{\turn}{LRA}{x}{107}

\DeclareTextComposite{\hflip}{LRA}{s}{179}
\DeclareTextComposite{\vflip}{LRA}{s}{179}
%\DeclareTextComposite{\turn}{LRA}{s}{115}

\DeclareTextComposite{\hflip}{LRA}{S}{171}
\DeclareTextComposite{\vflip}{LRA}{S}{99}
\DeclareTextComposite{\turn}{LRA}{S}{155}

\DeclareTextComposite{\hflip}{LRA}{\sthree}{219}
\DeclareTextComposite{\vflip}{LRA}{\sthree}{219}
%\DeclareTextComposite{\turn}{LRA}{\sthree}{211}

\DeclareTextComposite{\hflip}{LRA}{\sfour}{235}
%\DeclareTextComposite{\vflip}{LRA}{\sfour}{227}
\DeclareTextComposite{\turn}{LRA}{\sfour}{235}

\DeclareTextComposite{\hflip}{LRA}{\sfive}{251}
\DeclareTextComposite{\vflip}{LRA}{\sfive}{251}
%\DeclareTextComposite{\turn}{LRA}{\sfive}{243}

\DeclareTextComposite{\hflip}{LRA}{\ssix}{220}
%\DeclareTextComposite{\vflip}{LRA}{\ssix}{212}
\DeclareTextComposite{\turn}{LRA}{\ssix}{220}

\DeclareTextComposite{\hflip}{LRA}{\sseven}{236}
\DeclareTextComposite{\vflip}{LRA}{\sseven}{236}
%\DeclareTextComposite{\turn}{LRA}{\sseven}{228}

\DeclareTextComposite{\hflip}{LRA}{\seight}{252}
%\DeclareTextComposite{\vflip}{LRA}{\seight}{244}
\DeclareTextComposite{\turn}{LRA}{\seight}{252}

%\DeclareTextComposite{\hflip}{LRA}{t}{116}
\DeclareTextComposite{\vflip}{LRA}{t}{180}
\DeclareTextComposite{\turn}{LRA}{t}{180}

\DeclareTextComposite{\hflip}{LRA}{b}{226}
%\DeclareTextComposite{\vflip}{LRA}{b}{98}
\DeclareTextComposite{\turn}{LRA}{b}{226}

\DeclareTextComposite{\hflip}{LRA}{B}{194}
%\DeclareTextComposite{\vflip}{LRA}{B}{66}
\DeclareTextComposite{\turn}{LRA}{B}{194}

%\DeclareTextComposite{\hflip}{LRA}{e}{101}
\DeclareTextComposite{\vflip}{LRA}{e}{165}
\DeclareTextComposite{\turn}{LRA}{e}{165}

%\DeclareTextComposite{\hflip}{LRA}{m}{109}
\DeclareTextComposite{\vflip}{LRA}{m}{149}
\DeclareTextComposite{\turn}{LRA}{m}{149}

\DeclareTextComposite{\hflip}{LRA}{l}{148}
\DeclareTextComposite{\vflip}{LRA}{l}{140}
\DeclareTextComposite{\turn}{LRA}{l}{156}

%\DeclareTextComposite{\hflip}{LRA}{\ng}{173}
%\DeclareTextComposite{\vflip}{LRA}{\ng}{173}
%\DeclareTextComposite{\turn}{LRA}{\ng}{173}

%\DeclareTextComposite{\hflip}{LRA}{d}{100}
%\DeclareTextComposite{\vflip}{LRA}{d}{100}
%\DeclareTextComposite{\turn}{LRA}{d}{100}

%\DeclareTextComposite{\hflip}{LRA}{D}{68}
%\DeclareTextComposite{\vflip}{LRA}{D}{68}
%\DeclareTextComposite{\turn}{LRA}{D}{68}

%\DeclareTextComposite{\hflip}{LRA}{\d}{164}
%\DeclareTextComposite{\vflip}{LRA}{\d}{164}
%\DeclareTextComposite{\turn}{LRA}{\d}{164}

%\DeclareTextComposite{\hflip}{LRA}{\oe}{246}
\DeclareTextComposite{\vflip}{LRA}{\oe}{255}
\DeclareTextComposite{\turn}{LRA}{\oe}{255}

%\DeclareTextComposite{\hflip}{LRA}{\OE}{215}
\DeclareTextComposite{\vflip}{LRA}{\OE}{223}
\DeclareTextComposite{\turn}{LRA}{\OE}{223}

\DeclareTextComposite{\hflip}{LRA}{a}{177}
\DeclareTextComposite{\vflip}{LRA}{a}{169}
\DeclareTextComposite{\turn}{LRA}{a}{185}

\DeclareTextComposite{\hflip}{LRA}{\ae}{198}
\DeclareTextComposite{\vflip}{LRA}{\ae}{206}
\DeclareTextComposite{\turn}{LRA}{\ae}{214}

\DeclareTextComposite{\hflip}{LRA}{y}{232}
\DeclareTextComposite{\vflip}{LRA}{y}{240}
\DeclareTextComposite{\turn}{LRA}{y}{248}

\DeclareTextComposite{\hflip}{LRA}{\y}{201}
\DeclareTextComposite{\vflip}{LRA}{\y}{209}
\DeclareTextComposite{\turn}{LRA}{\y}{217}

\DeclareTextComposite{\hflip}{LRA}{Y}{233}
\DeclareTextComposite{\vflip}{LRA}{Y}{241}
\DeclareTextComposite{\turn}{LRA}{Y}{249}

%\DeclareTextComposite{\hflip}{LRA}{\ea}{196}
\DeclareTextComposite{\vflip}{LRA}{\ea}{204}
\DeclareTextComposite{\turn}{LRA}{\ea}{204}

%\DeclareTextComposite{\hflip}{LRA}{\g}{135}
%\DeclareTextComposite{\vflip}{LRA}{\g}{135}
%\DeclareTextComposite{\turn}{LRA}{\g}{135}

%\DeclareTextComposite{\hflip}{LRA}{\G}{167}
%\DeclareTextComposite{\vflip}{LRA}{\G}{167}
%\DeclareTextComposite{\turn}{LRA}{\G}{167}

%\DeclareTextComposite{\hflip}{LRA}{k}{107}
\DeclareTextComposite{\vflip}{LRA}{k}{120}
\DeclareTextComposite{\turn}{LRA}{k}{120}

%\DeclareTextComposite{\hflip}{LRA}{\k}{195}
%\DeclareTextComposite{\vflip}{LRA}{\k}{195}
%\DeclareTextComposite{\turn}{LRA}{\k}{195}

%\DeclareTextComposite{\hflip}{LRA}{\rex}{154}
\DeclareTextComposite{\vflip}{LRA}{\rex}{186}
\DeclareTextComposite{\turn}{LRA}{\rex}{186}

\DeclareTextComposite{\hflip}{LRA}{q}{81}
\DeclareTextComposite{\vflip}{LRA}{q}{81}
%\DeclareTextComposite{\turn}{LRA}{q}{113}

%\DeclareTextComposite{\hflip}{LRA}{\stan}{208}
%\DeclareTextComposite{\vflip}{LRA}{\stan}{208}
%\DeclareTextComposite{\turn}{LRA}{\stan}{208}


\DeclareRuneSeparators{LRA}

%    \end{macrocode}
%
%</ara>
%
%<*arn>
%
% \subsubsection{The Normal Runes}
%    \begin{macrocode}
% THE NORMAL RUNES
\DeclareFontEncoding{LRN}{}{}
\DeclareFontSubstitution{LRN}{frun}{m}{n}

\DeclareFontFamily{LRN}{frun}{}
\DeclareFontShapeWithSizes{LRN}{frun}{m}{n}{frunmn}
\DeclareFontShapeWithSizes{LRN}{frun}{m}{m}{frunmm}
\DeclareFontShapeWithSizes{LRN}{frun}{m}{s}{frunms}
\DeclareFontShapeWithSizes{LRN}{frun}{m}{t}{frunmt}
\DeclareFontShapeWithSizes{LRN}{frun}{m}{r}{frunmr}
\DeclareFontShapeWithSizes{LRN}{frun}{m}{q}{frunmq}

\DeclareFontShapeWithSizes{LRN}{frun}{l}{n}{frunln}
\DeclareFontShapeWithSizes{LRN}{frun}{l}{m}{frunlm}
\DeclareFontShapeWithSizes{LRN}{frun}{l}{s}{frunls}
\DeclareFontShapeWithSizes{LRN}{frun}{l}{t}{frunlt}
\DeclareFontShapeWithSizes{LRN}{frun}{l}{r}{frunlr}
\DeclareFontShapeWithSizes{LRN}{frun}{l}{q}{frunlq}

\DeclareFontShapeWithSizes{LRN}{frun}{bx}{n}{frunbn}
\DeclareFontShapeWithSizes{LRN}{frun}{bx}{m}{frunbm}
\DeclareFontShapeWithSizes{LRN}{frun}{bx}{s}{frunbs}
\DeclareFontShapeWithSizes{LRN}{frun}{bx}{t}{frunbt}
\DeclareFontShapeWithSizes{LRN}{frun}{bx}{r}{frunbr}
\DeclareFontShapeWithSizes{LRN}{frun}{bx}{q}{frunbq}

\DeclareFontShapeWithSizes{LRN}{frun}{n}{n}{frunnn}
\DeclareFontShapeWithSizes{LRN}{frun}{n}{m}{frunnm}
\DeclareFontShapeWithSizes{LRN}{frun}{n}{s}{frunns}
\DeclareFontShapeWithSizes{LRN}{frun}{n}{t}{frunnt}
\DeclareFontShapeWithSizes{LRN}{frun}{n}{r}{frunnr}
\DeclareFontShapeWithSizes{LRN}{frun}{n}{q}{frunnq}

\DeclareFontShapeWithSizes{LRN}{frun}{k}{n}{frunkn}
\DeclareFontShapeWithSizes{LRN}{frun}{k}{m}{frunkm}
\DeclareFontShapeWithSizes{LRN}{frun}{k}{s}{frunks}
\DeclareFontShapeWithSizes{LRN}{frun}{k}{t}{frunkt}
\DeclareFontShapeWithSizes{LRN}{frun}{k}{r}{frunkr}
\DeclareFontShapeWithSizes{LRN}{frun}{k}{q}{frunkq}

\DeclareFontShapeWithSizes{LRN}{frun}{c}{n}{fruncn}
\DeclareFontShapeWithSizes{LRN}{frun}{c}{m}{fruncm}
\DeclareFontShapeWithSizes{LRN}{frun}{c}{s}{fruncs}
\DeclareFontShapeWithSizes{LRN}{frun}{c}{t}{frunct}
\DeclareFontShapeWithSizes{LRN}{frun}{c}{r}{fruncr}
\DeclareFontShapeWithSizes{LRN}{frun}{c}{q}{fruncq}

% USER COMMANDS FOR SELECTING FONT FAMILY

\newcommand{\arndefault}{frun}
\newcommand{\arnfamily}{\usefont{LRN}{\arndefault}{m}{n}}
\DeclareTextFontCommand{\textarn}{\arnfamily}

% USER COMMANDS FOR ACCESSING SPECIAL SYMBOLS IN THE DIFFERENT
% FONT FAMILIES AND DIFFERENT ENCODINGS

% The normal runes
\DeclareTextSymbol{\th}{LRN}{254}
\DeclareTextSymbol{\TH}{LRN}{222}
\DeclareTextSymbol{\A}{LRN}{193}
\DeclareTextSymbol{\m}{LRN}{165}
\DeclareTextSymbol{\M}{LRN}{133}

\DeclareTextComposite{\.}{LRN}{u}{121}   % y
\DeclareTextComposite{\.}{LRN}{k}{103}   % g
\DeclareTextComposite{\.}{LRN}{i}{101}   % e
\DeclareTextComposite{\.}{LRN}{t}{100}   % e
\DeclareTextComposite{\"}{LRN}{b}{112}   % p
\DeclareTextComposite{\"}{LRN}{m}{165}   %
\DeclareTextComposite{\"}{LRN}{M}{133}   %

% Commands for mirroring and rotating runes

\DeclareTextCommand{\hflip}{LRN}{}
\DeclareTextCommand{\vflip}{LRN}{}
\DeclareTextCommand{\turn}{LRN}{}

\DeclareTextComposite{\hflip}{LRN}{f}{142}
\DeclareTextComposite{\vflip}{LRN}{f}{134}
\DeclareTextComposite{\turn}{LRN}{f}{150}

\DeclareTextComposite{\hflip}{LRN}{F}{174}
\DeclareTextComposite{\vflip}{LRN}{F}{166}
\DeclareTextComposite{\turn}{LRN}{F}{182}

\DeclareTextComposite{\hflip}{LRN}{u}{229}
\DeclareTextComposite{\vflip}{LRN}{u}{221}
\DeclareTextComposite{\turn}{LRN}{u}{237}

\DeclareTextComposite{\hflip}{LRN}{y}{241}
\DeclareTextComposite{\vflip}{LRN}{y}{233}
\DeclareTextComposite{\turn}{LRN}{y}{249}

\DeclareTextComposite{\hflip}{LRN}{\th}{246}
%\DeclareTextComposite{\vflip}{LRN}{\th}{254}
\DeclareTextComposite{\turn}{LRN}{\th}{246}

\DeclareTextComposite{\hflip}{LRN}{\TH}{214}
%\DeclareTextComposite{\vflip}{LRN}{\TH}{222}
\DeclareTextComposite{\turn}{LRN}{\TH}{214}

\DeclareTextComposite{\hflip}{LRN}{\dh}{232}
%\DeclareTextComposite{\vflip}{LRN}{\dh}{240}
\DeclareTextComposite{\turn}{LRN}{\dh}{232}

\DeclareTextComposite{\hflip}{LRN}{\TH}{200}
%\DeclareTextComposite{\vflip}{LRN}{\TH}{208}
\DeclareTextComposite{\turn}{LRN}{\TH}{200}

\DeclareTextComposite{\hflip}{LRN}{A}{177}
\DeclareTextComposite{\vflip}{LRN}{A}{169}
\DeclareTextComposite{\turn}{LRN}{A}{185}

\DeclareTextComposite{\hflip}{LRN}{\A}{201}
\DeclareTextComposite{\vflip}{LRN}{\A}{201}
%\DeclareTextComposite{\turn}{LRN}{\A}{193}

\DeclareTextComposite{\hflip}{LRN}{r}{242}
\DeclareTextComposite{\vflip}{LRN}{r}{234}
\DeclareTextComposite{\turn}{LRN}{r}{250}

\DeclareTextComposite{\hflip}{LRN}{k}{243}
\DeclareTextComposite{\vflip}{LRN}{k}{235}
\DeclareTextComposite{\turn}{LRN}{k}{251}

\DeclareTextComposite{\hflip}{LRN}{g}{143}
\DeclareTextComposite{\vflip}{LRN}{g}{135}
\DeclareTextComposite{\turn}{LRN}{g}{151}

%\DeclareTextComposite{\hflip}{LRN}{h}{104}
%\DeclareTextComposite{\vflip}{LRN}{h}{104}
%\DeclareTextComposite{\turn}{LRN}{h}{104}

\DeclareTextComposite{\hflip}{LRN}{n}{97}
\DeclareTextComposite{\vflip}{LRN}{n}{97}
%\DeclareTextComposite{\turn}{LRN}{n}{110}

%\DeclareTextComposite{\hflip}{LRN}{i}{105}
%\DeclareTextComposite{\vflip}{LRN}{i}{105}
%\DeclareTextComposite{\turn}{LRN}{i}{105}

\DeclareTextComposite{\hflip}{LRN}{a}{110}
\DeclareTextComposite{\vflip}{LRN}{a}{110}
%\DeclareTextComposite{\turn}{LRN}{a}{97}

\DeclareTextComposite{\hflip}{LRN}{s}{179}
\DeclareTextComposite{\vflip}{LRN}{s}{179}
%\DeclareTextComposite{\turn}{LRN}{s}{115}

\DeclareTextComposite{\hflip}{LRN}{S}{147}
\DeclareTextComposite{\vflip}{LRN}{S}{139}
\DeclareTextComposite{\turn}{LRN}{S}{155}

%\DeclareTextComposite{\hflip}{LRN}{t}{116}
\DeclareTextComposite{\vflip}{LRN}{t}{180}
\DeclareTextComposite{\turn}{LRN}{t}{180}

%\DeclareTextComposite{\hflip}{LRN}{d}{100}
\DeclareTextComposite{\vflip}{LRN}{d}{188}
\DeclareTextComposite{\turn}{LRN}{d}{188}

\DeclareTextComposite{\hflip}{LRN}{b}{226}
%\DeclareTextComposite{\vflip}{LRN}{b}{98}
\DeclareTextComposite{\turn}{LRN}{b}{226}

\DeclareTextComposite{\hflip}{LRN}{B}{194}
%\DeclareTextComposite{\vflip}{LRN}{B}{66}
\DeclareTextComposite{\turn}{LRN}{B}{194}

\DeclareTextComposite{\hflip}{LRN}{p}{176}
%\DeclareTextComposite{\vflip}{LRN}{p}{112}
\DeclareTextComposite{\turn}{LRN}{p}{176}

%\DeclareTextComposite{\hflip}{LRN}{m}{109}
\DeclareTextComposite{\vflip}{LRN}{m}{82}
\DeclareTextComposite{\turn}{LRN}{m}{82}

%\DeclareTextComposite{\hflip}{LRN}{M}{77}
\DeclareTextComposite{\vflip}{LRN}{M}{149}
\DeclareTextComposite{\turn}{LRN}{M}{149}

%\DeclareTextComposite{\hflip}{LRN}{\m}{165}
\DeclareTextComposite{\vflip}{LRN}{\m}{157}
\DeclareTextComposite{\turn}{LRN}{\m}{157}

%\DeclareTextComposite{\hflip}{LRN}{\M}{133}
\DeclareTextComposite{\vflip}{LRN}{\M}{141}
\DeclareTextComposite{\turn}{LRN}{\M}{141}

\DeclareTextComposite{\hflip}{LRN}{p}{176}
%\DeclareTextComposite{\vflip}{LRN}{p}{112}
\DeclareTextComposite{\turn}{LRN}{p}{176}

\DeclareTextComposite{\hflip}{LRN}{l}{148}
\DeclareTextComposite{\vflip}{LRN}{l}{140}
\DeclareTextComposite{\turn}{LRN}{l}{156}

%\DeclareTextComposite{\hflip}{LRN}{R}{82}
\DeclareTextComposite{\vflip}{LRN}{R}{109}
\DeclareTextComposite{\turn}{LRN}{R}{109}

\DeclareRuneSeparators{LRN}

%    \end{macrocode}
%
%</arn>
%
%<*art>
%
% \subsubsection{The Short-Twig Runes}
%    \begin{macrocode}
% THE SHORT-TWIG RUNES
\DeclareFontEncoding{LRT}{}{}
\DeclareFontSubstitution{LRT}{frut}{m}{n}

\DeclareFontFamily{LRT}{frut}{}
\DeclareFontShapeWithSizes{LRT}{frut}{m}{n}{frutmn}
\DeclareFontShapeWithSizes{LRT}{frut}{m}{m}{frutmm}
\DeclareFontShapeWithSizes{LRT}{frut}{m}{s}{frutms}
\DeclareFontShapeWithSizes{LRT}{frut}{m}{t}{frutmt}
\DeclareFontShapeWithSizes{LRT}{frut}{m}{r}{frutmr}
\DeclareFontShapeWithSizes{LRT}{frut}{m}{q}{frutmq}

\DeclareFontShapeWithSizes{LRT}{frut}{l}{n}{frutln}
\DeclareFontShapeWithSizes{LRT}{frut}{l}{m}{frutlm}
\DeclareFontShapeWithSizes{LRT}{frut}{l}{s}{frutls}
\DeclareFontShapeWithSizes{LRT}{frut}{l}{t}{frutlt}
\DeclareFontShapeWithSizes{LRT}{frut}{l}{r}{frutlr}
\DeclareFontShapeWithSizes{LRT}{frut}{l}{q}{frutlq}

\DeclareFontShapeWithSizes{LRT}{frut}{bx}{n}{frutbn}
\DeclareFontShapeWithSizes{LRT}{frut}{bx}{m}{frutbm}
\DeclareFontShapeWithSizes{LRT}{frut}{bx}{s}{frutbs}
\DeclareFontShapeWithSizes{LRT}{frut}{bx}{t}{frutbt}
\DeclareFontShapeWithSizes{LRT}{frut}{bx}{r}{frutbr}
\DeclareFontShapeWithSizes{LRT}{frut}{bx}{q}{frutbq}

\DeclareFontShapeWithSizes{LRT}{frut}{n}{n}{frutnn}
\DeclareFontShapeWithSizes{LRT}{frut}{n}{m}{frutnm}
\DeclareFontShapeWithSizes{LRT}{frut}{n}{s}{frutns}
\DeclareFontShapeWithSizes{LRT}{frut}{n}{t}{frutnt}
\DeclareFontShapeWithSizes{LRT}{frut}{n}{r}{frutnr}
\DeclareFontShapeWithSizes{LRT}{frut}{n}{q}{frutnq}

\DeclareFontShapeWithSizes{LRT}{frut}{k}{n}{frutkn}
\DeclareFontShapeWithSizes{LRT}{frut}{k}{m}{frutkm}
\DeclareFontShapeWithSizes{LRT}{frut}{k}{s}{frutks}
\DeclareFontShapeWithSizes{LRT}{frut}{k}{t}{frutkt}
\DeclareFontShapeWithSizes{LRT}{frut}{k}{r}{frutkr}
\DeclareFontShapeWithSizes{LRT}{frut}{k}{q}{frutkq}

\DeclareFontShapeWithSizes{LRT}{frut}{c}{n}{frutcn}
\DeclareFontShapeWithSizes{LRT}{frut}{c}{m}{frutcm}
\DeclareFontShapeWithSizes{LRT}{frut}{c}{s}{frutcs}
\DeclareFontShapeWithSizes{LRT}{frut}{c}{t}{frutct}
\DeclareFontShapeWithSizes{LRT}{frut}{c}{r}{frutcr}
\DeclareFontShapeWithSizes{LRT}{frut}{c}{q}{frutcq}

% USER COMMANDS FOR SELECTING FONT FAMILY

\newcommand{\artdefault}{frut}
\newcommand{\artfamily}{\usefont{LRT}{\artdefault}{m}{n}}
\DeclareTextFontCommand{\textart}{\artfamily}

% USER COMMANDS FOR ACCESSING SPECIAL SYMBOLS IN THE DIFFERENT
% FONT FAMILIES AND DIFFERENT ENCODINGS

% The short-twig runes
\DeclareTextSymbol{\th}{LRT}{254}
\DeclareTextSymbol{\TH}{LRT}{222}
\DeclareTextSymbol{\A}{LRT}{193}
\DeclareTextSymbol{\h}{LRT}{160}
\DeclareTextSymbol{\s}{LRT}{179}
\DeclareTextSymbol{\t}{LRT}{180}
\DeclareTextSymbol{\m}{LRT}{165}
\DeclareTextSymbol{\b}{LRT}{194}
\DeclareTextSymbol{\l}{LRT}{188}
\DeclareTextSymbol{\R}{LRT}{154}

% Commands for mirroring and rotating runes

\DeclareTextCommand{\hflip}{LRT}{}
\DeclareTextCommand{\vflip}{LRT}{}
\DeclareTextCommand{\turn}{LRT}{}

\DeclareTextComposite{\hflip}{LRT}{f}{142}
\DeclareTextComposite{\vflip}{LRT}{f}{134}
\DeclareTextComposite{\turn}{LRT}{f}{150}

\DeclareTextComposite{\hflip}{LRT}{F}{174}
\DeclareTextComposite{\vflip}{LRT}{F}{166}
\DeclareTextComposite{\turn}{LRT}{F}{182}

\DeclareTextComposite{\hflip}{LRT}{u}{229}
\DeclareTextComposite{\vflip}{LRT}{u}{221}
\DeclareTextComposite{\turn}{LRT}{u}{237}

\DeclareTextComposite{\hflip}{LRT}{U}{205}
\DeclareTextComposite{\vflip}{LRT}{U}{197}
\DeclareTextComposite{\turn}{LRT}{U}{213}

\DeclareTextComposite{\hflip}{LRT}{\th}{246}
%\DeclareTextComposite{\vflip}{LRT}{\th}{254}
\DeclareTextComposite{\turn}{LRT}{\th}{246}

\DeclareTextComposite{\hflip}{LRT}{\TH}{214}
%\DeclareTextComposite{\vflip}{LRT}{\TH}{222}
\DeclareTextComposite{\turn}{LRT}{\TH}{214}

\DeclareTextComposite{\hflip}{LRT}{A}{162}
\DeclareTextComposite{\vflip}{LRT}{A}{98}
\DeclareTextComposite{\turn}{LRT}{A}{129}

\DeclareTextComposite{\hflip}{LRT}{\A}{194}
\DeclareTextComposite{\vflip}{LRT}{\A}{194}
%\DeclareTextComposite{\turn}{LRT}{\A}{193}

\DeclareTextComposite{\hflip}{LRT}{r}{242}
\DeclareTextComposite{\vflip}{LRT}{r}{234}
\DeclareTextComposite{\turn}{LRT}{r}{250}

\DeclareTextComposite{\hflip}{LRT}{k}{243}
\DeclareTextComposite{\vflip}{LRT}{k}{235}
\DeclareTextComposite{\turn}{LRT}{k}{251}

%\DeclareTextComposite{\hflip}{LRT}{h}{104}
%\DeclareTextComposite{\vflip}{LRT}{h}{104}
%\DeclareTextComposite{\turn}{LRT}{h}{104}

%\DeclareTextComposite{\hflip}{LRT}{\h}{160}
%\DeclareTextComposite{\vflip}{LRT}{\h}{160}
%\DeclareTextComposite{\turn}{LRT}{\h}{160}

\DeclareTextComposite{\hflip}{LRT}{n}{97}
\DeclareTextComposite{\vflip}{LRT}{n}{161}
\DeclareTextComposite{\turn}{LRT}{n}{158}

%\DeclareTextComposite{\hflip}{LRT}{i}{105}
%\DeclareTextComposite{\vflip}{LRT}{i}{105}
%\DeclareTextComposite{\turn}{LRT}{i}{105}

\DeclareTextComposite{\hflip}{LRT}{a}{110}
\DeclareTextComposite{\vflip}{LRT}{a}{158}
\DeclareTextComposite{\turn}{LRT}{a}{161}

%\DeclareTextComposite{\hflip}{LRT}{s}{115}
\DeclareTextComposite{\vflip}{LRT}{s}{82}
\DeclareTextComposite{\turn}{LRT}{s}{82}

%\DeclareTextComposite{\hflip}{LRT}{\s}{179}
\DeclareTextComposite{\vflip}{LRT}{\s}{154}
\DeclareTextComposite{\turn}{LRT}{\s}{154}

\DeclareTextComposite{\hflip}{LRT}{t}{108}
\DeclareTextComposite{\vflip}{LRT}{t}{156}
\DeclareTextComposite{\turn}{LRT}{t}{140}

\DeclareTextComposite{\hflip}{LRT}{\t}{188}
\DeclareTextComposite{\vflip}{LRT}{\t}{196}
\DeclareTextComposite{\turn}{LRT}{\t}{204}

\DeclareTextComposite{\hflip}{LRT}{T}{76}
\DeclareTextComposite{\vflip}{LRT}{T}{164}
\DeclareTextComposite{\turn}{LRT}{T}{148}

\DeclareTextComposite{\hflip}{LRT}{b}{129}
\DeclareTextComposite{\vflip}{LRT}{b}{65}
\DeclareTextComposite{\turn}{LRT}{b}{162}

\DeclareTextComposite{\hflip}{LRT}{\b}{193}
\DeclareTextComposite{\vflip}{LRT}{\b}{193}
%\DeclareTextComposite{\turn}{LRT}{\b}{194}

%\DeclareTextComposite{\hflip}{LRT}{m}{109}
\DeclareTextComposite{\vflip}{LRT}{m}{141}
\DeclareTextComposite{\turn}{LRT}{m}{141}

%\DeclareTextComposite{\hflip}{LRT}{\m}{165}
\DeclareTextComposite{\vflip}{LRT}{\m}{157}
\DeclareTextComposite{\turn}{LRT}{\m}{157}

%\DeclareTextComposite{\hflip}{LRT}{M}{77}
\DeclareTextComposite{\vflip}{LRT}{M}{149}
\DeclareTextComposite{\turn}{LRT}{M}{149}

\DeclareTextComposite{\hflip}{LRT}{l}{116}
\DeclareTextComposite{\vflip}{LRT}{l}{140}
\DeclareTextComposite{\turn}{LRT}{l}{156}

\DeclareTextComposite{\hflip}{LRT}{\l}{180}
\DeclareTextComposite{\vflip}{LRT}{\l}{204}
\DeclareTextComposite{\turn}{LRT}{\l}{196}

\DeclareTextComposite{\hflip}{LRT}{L}{84}
\DeclareTextComposite{\vflip}{LRT}{L}{148}
\DeclareTextComposite{\turn}{LRT}{L}{164}

%\DeclareTextComposite{\hflip}{LRT}{R}{82}
\DeclareTextComposite{\vflip}{LRT}{R}{115}
\DeclareTextComposite{\turn}{LRT}{R}{115}

%\DeclareTextComposite{\hflip}{LRT}{\R}{154}
\DeclareTextComposite{\vflip}{LRT}{\R}{179}
\DeclareTextComposite{\turn}{LRT}{\R}{179}

\DeclareRuneSeparators{LRT}

%    \end{macrocode}
%
%</art>
%
%<*arl>
%
% \subsubsection{The Staveless Runes}
%    \begin{macrocode}
% THE STAVELESS RUNES
\DeclareFontEncoding{LRL}{}{}
\DeclareFontSubstitution{LRL}{frul}{m}{n}

\DeclareFontFamily{LRL}{frul}{}
\DeclareFontShapeWithSizes{LRL}{frul}{m}{n}{frulmn}
\DeclareFontShapeWithSizes{LRL}{frul}{m}{m}{frulmm}
\DeclareFontShapeWithSizes{LRL}{frul}{m}{s}{frulms}
\DeclareFontShapeWithSizes{LRL}{frul}{m}{t}{frulmt}
\DeclareFontShapeWithSizes{LRL}{frul}{m}{r}{frulmr}
\DeclareFontShapeWithSizes{LRL}{frul}{m}{q}{frulmq}

\DeclareFontShapeWithSizes{LRL}{frul}{l}{n}{frulln}
\DeclareFontShapeWithSizes{LRL}{frul}{l}{m}{frullm}
\DeclareFontShapeWithSizes{LRL}{frul}{l}{s}{frulls}
\DeclareFontShapeWithSizes{LRL}{frul}{l}{t}{frullt}
\DeclareFontShapeWithSizes{LRL}{frul}{l}{r}{frullr}
\DeclareFontShapeWithSizes{LRL}{frul}{l}{q}{frullq}

\DeclareFontShapeWithSizes{LRL}{frul}{bx}{n}{frulbn}
\DeclareFontShapeWithSizes{LRL}{frul}{bx}{m}{frulbm}
\DeclareFontShapeWithSizes{LRL}{frul}{bx}{s}{frulbs}
\DeclareFontShapeWithSizes{LRL}{frul}{bx}{t}{frulbt}
\DeclareFontShapeWithSizes{LRL}{frul}{bx}{r}{frulbr}
\DeclareFontShapeWithSizes{LRL}{frul}{bx}{q}{frulbq}

\DeclareFontShapeWithSizes{LRL}{frul}{n}{n}{frulnn}
\DeclareFontShapeWithSizes{LRL}{frul}{n}{m}{frulnm}
\DeclareFontShapeWithSizes{LRL}{frul}{n}{s}{frulns}
\DeclareFontShapeWithSizes{LRL}{frul}{n}{t}{frulnt}
\DeclareFontShapeWithSizes{LRL}{frul}{n}{r}{frulnr}
\DeclareFontShapeWithSizes{LRL}{frul}{n}{q}{frulnq}

\DeclareFontShapeWithSizes{LRL}{frul}{k}{n}{frulkn}
\DeclareFontShapeWithSizes{LRL}{frul}{k}{m}{frulkm}
\DeclareFontShapeWithSizes{LRL}{frul}{k}{s}{frulks}
\DeclareFontShapeWithSizes{LRL}{frul}{k}{t}{frulkt}
\DeclareFontShapeWithSizes{LRL}{frul}{k}{r}{frulkr}
\DeclareFontShapeWithSizes{LRL}{frul}{k}{q}{frulkq}

\DeclareFontShapeWithSizes{LRL}{frul}{c}{n}{frulcn}
\DeclareFontShapeWithSizes{LRL}{frul}{c}{m}{frulcm}
\DeclareFontShapeWithSizes{LRL}{frul}{c}{s}{frulcs}
\DeclareFontShapeWithSizes{LRL}{frul}{c}{t}{frulct}
\DeclareFontShapeWithSizes{LRL}{frul}{c}{r}{frulcr}
\DeclareFontShapeWithSizes{LRL}{frul}{c}{q}{frulcq}

% USER COMMANDS FOR SELECTING FONT FAMILY

\newcommand{\arldefault}{frul}
\newcommand{\arlfamily}{\usefont{LRL}{\arldefault}{m}{n}}
\DeclareTextFontCommand{\textarl}{\arlfamily}

% USER COMMANDS FOR ACCESSING SPECIAL SYMBOLS IN THE DIFFERENT
% FONT FAMILIES AND DIFFERENT ENCODINGS

%The staveless runes
\DeclareTextSymbol{\A}{LRL}{193}
\DeclareTextSymbol{\th}{LRL}{254}

% Commands for mirroring and rotating runes

\DeclareTextCommand{\hflip}{LRL}{}
\DeclareTextCommand{\vflip}{LRL}{}
\DeclareTextCommand{\turn}{LRL}{}

%\DeclareTextComposite{\hflip}{LRL}{f}{102}
\DeclareTextComposite{\vflip}{LRL}{f}{134}
\DeclareTextComposite{\turn}{LRL}{f}{134}

\DeclareTextComposite{\hflip}{LRL}{u}{114}
\DeclareTextComposite{\vflip}{LRL}{u}{221}
\DeclareTextComposite{\turn}{LRL}{u}{234}

%\DeclareTextComposite{\hflip}{LRL}{\th}{254}
%\DeclareTextComposite{\vflip}{LRL}{\th}{254}
%\DeclareTextComposite{\turn}{LRL}{\th}{254}

\DeclareTextComposite{\hflip}{LRL}{A}{98}
\DeclareTextComposite{\vflip}{LRL}{A}{129}
\DeclareTextComposite{\turn}{LRL}{A}{162}

%\DeclareTextComposite{\hflip}{LRL}{\A}{193}
\DeclareTextComposite{\vflip}{LRL}{\A}{201}
\DeclareTextComposite{\turn}{LRL}{\A}{201}

\DeclareTextComposite{\hflip}{LRL}{r}{117}
\DeclareTextComposite{\vflip}{LRL}{r}{234}
\DeclareTextComposite{\turn}{LRL}{r}{221}

%\DeclareTextComposite{\hflip}{LRL}{k}{107}
\DeclareTextComposite{\vflip}{LRL}{k}{104}
\DeclareTextComposite{\turn}{LRL}{k}{104}

%\DeclareTextComposite{\hflip}{LRL}{h}{104}
\DeclareTextComposite{\vflip}{LRL}{h}{107}
\DeclareTextComposite{\turn}{LRL}{h}{107}

\DeclareTextComposite{\hflip}{LRL}{n}{97}
\DeclareTextComposite{\vflip}{LRL}{n}{158}
\DeclareTextComposite{\turn}{LRL}{n}{161}

%\DeclareTextComposite{\hflip}{LRL}{i}{105}
%\DeclareTextComposite{\vflip}{LRL}{i}{105}
%\DeclareTextComposite{\turn}{LRL}{i}{105}

\DeclareTextComposite{\hflip}{LRL}{a}{110}
\DeclareTextComposite{\vflip}{LRL}{a}{161}
\DeclareTextComposite{\turn}{LRL}{a}{158}

%\DeclareTextComposite{\hflip}{LRL}{s}{115}
\DeclareTextComposite{\vflip}{LRL}{s}{179}
\DeclareTextComposite{\turn}{LRL}{s}{179}

\DeclareTextComposite{\hflip}{LRL}{t}{108}
\DeclareTextComposite{\vflip}{LRL}{t}{156}
\DeclareTextComposite{\turn}{LRL}{t}{140}

\DeclareTextComposite{\hflip}{LRL}{b}{65}
\DeclareTextComposite{\vflip}{LRL}{b}{162}
\DeclareTextComposite{\turn}{LRL}{b}{129}

%\DeclareTextComposite{\hflip}{LRL}{m}{109}
\DeclareTextComposite{\vflip}{LRL}{m}{82}
\DeclareTextComposite{\turn}{LRL}{m}{82}

\DeclareTextComposite{\hflip}{LRL}{l}{116}
\DeclareTextComposite{\vflip}{LRL}{l}{140}
\DeclareTextComposite{\turn}{LRL}{l}{156}

%\DeclareTextComposite{\hflip}{LRL}{R}{82}
\DeclareTextComposite{\vflip}{LRL}{R}{109}
\DeclareTextComposite{\turn}{LRL}{R}{109}

\DeclareRuneSeparators{LRL}

%    \end{macrocode}
%
%</arl>
%
%<*arm>
%
% \subsubsection{The Medieval Runes}
%    \begin{macrocode}
% THE MEDIEVAL RUNES
\DeclareFontEncoding{LRM}{}{}
\DeclareFontSubstitution{LRM}{frum}{m}{n}

\DeclareFontFamily{LRM}{frum}{}
\DeclareFontShapeWithSizes{LRM}{frum}{m}{n}{frummn}
\DeclareFontShapeWithSizes{LRM}{frum}{m}{m}{frummm}
\DeclareFontShapeWithSizes{LRM}{frum}{m}{s}{frumms}
\DeclareFontShapeWithSizes{LRM}{frum}{m}{t}{frummt}
\DeclareFontShapeWithSizes{LRM}{frum}{m}{r}{frummr}
\DeclareFontShapeWithSizes{LRM}{frum}{m}{q}{frummq}

\DeclareFontShapeWithSizes{LRM}{frum}{l}{n}{frumln}
\DeclareFontShapeWithSizes{LRM}{frum}{l}{m}{frumlm}
\DeclareFontShapeWithSizes{LRM}{frum}{l}{s}{frumls}
\DeclareFontShapeWithSizes{LRM}{frum}{l}{t}{frumlt}
\DeclareFontShapeWithSizes{LRM}{frum}{l}{r}{frumlr}
\DeclareFontShapeWithSizes{LRM}{frum}{l}{q}{frumlq}

\DeclareFontShapeWithSizes{LRM}{frum}{bx}{n}{frumbn}
\DeclareFontShapeWithSizes{LRM}{frum}{bx}{m}{frumbm}
\DeclareFontShapeWithSizes{LRM}{frum}{bx}{s}{frumbs}
\DeclareFontShapeWithSizes{LRM}{frum}{bx}{t}{frumbt}
\DeclareFontShapeWithSizes{LRM}{frum}{bx}{r}{frumbr}
\DeclareFontShapeWithSizes{LRM}{frum}{bx}{q}{frumbq}

\DeclareFontShapeWithSizes{LRM}{frum}{n}{n}{frumnn}
\DeclareFontShapeWithSizes{LRM}{frum}{n}{m}{frumnm}
\DeclareFontShapeWithSizes{LRM}{frum}{n}{s}{frumns}
\DeclareFontShapeWithSizes{LRM}{frum}{n}{t}{frumnt}
\DeclareFontShapeWithSizes{LRM}{frum}{n}{r}{frumnr}
\DeclareFontShapeWithSizes{LRM}{frum}{n}{q}{frumnq}

\DeclareFontShapeWithSizes{LRM}{frum}{k}{n}{frumkn}
\DeclareFontShapeWithSizes{LRM}{frum}{k}{m}{frumkm}
\DeclareFontShapeWithSizes{LRM}{frum}{k}{s}{frumks}
\DeclareFontShapeWithSizes{LRM}{frum}{k}{t}{frumkt}
\DeclareFontShapeWithSizes{LRM}{frum}{k}{r}{frumkr}
\DeclareFontShapeWithSizes{LRM}{frum}{k}{q}{frumkq}

\DeclareFontShapeWithSizes{LRM}{frum}{c}{n}{frumcn}
\DeclareFontShapeWithSizes{LRM}{frum}{c}{m}{frumcm}
\DeclareFontShapeWithSizes{LRM}{frum}{c}{s}{frumcs}
\DeclareFontShapeWithSizes{LRM}{frum}{c}{t}{frumct}
\DeclareFontShapeWithSizes{LRM}{frum}{c}{r}{frumcr}
\DeclareFontShapeWithSizes{LRM}{frum}{c}{q}{frumcq}

% USER COMMANDS FOR SELECTING FONT FAMILY

\newcommand{\armdefault}{frum}
\newcommand{\armfamily}{\usefont{LRM}{\armdefault}{m}{n}}
\DeclareTextFontCommand{\textarm}{\armfamily}

% USER COMMANDS FOR ACCESSING SPECIAL SYMBOLS IN THE DIFFERENT
% FONT FAMILIES AND DIFFERENT ENCODINGS

%The medieval runes

\DeclareTextSymbol{\a}{LRM}{29}
\DeclareTextSymbol{\adot}{LRM}{209}
\DeclareTextSymbol{\tbar}{LRM}{164}
\DeclareTextSymbol{\tflag}{LRM}{180}
\DeclareTextSymbol{\tdot}{LRM}{188}
\DeclareTextSymbol{\tring}{LRM}{156}
\DeclareTextSymbol{\D}{LRM}{132}
\DeclareTextSymbol{\c}{LRM}{155}
\DeclareTextSymbol{\e}{LRM}{73}
\DeclareTextSymbol{\g}{LRM}{95}
\DeclareTextSymbol{\h}{LRM}{168}
\DeclareTextSymbol{\l}{LRM}{76}
\DeclareTextSymbol{\ldot}{LRM}{204}
\DeclareTextSymbol{\lbar}{LRM}{172}
\DeclareTextSymbol{\lflag}{LRM}{196}
\DeclareTextSymbol{\lring}{LRM}{124}
\DeclareTextSymbol{\m}{LRM}{220}
\DeclareTextSymbol{\n}{LRM}{166}
\DeclareTextSymbol{\ndot}{LRM}{190}
\DeclareTextSymbol{\N}{LRM}{198}
\DeclareTextSymbol{\p}{LRM}{232}
\DeclareTextSymbol{\P}{LRM}{176}
\DeclareTextSymbol{\Pdots}{LRM}{184}
\DeclareTextSymbol{\q}{LRM}{220}
\DeclareTextSymbol{\Q}{LRM}{81}
\DeclareTextSymbol{\r}{LRM}{82}
\DeclareTextSymbol{\rdot}{LRM}{1}
\DeclareTextSymbol{\s}{LRM}{179}
\DeclareTextSymbol{\S}{LRM}{187}
\DeclareTextSymbol{\T}{LRM}{212}
\DeclareTextSymbol{\th}{LRM}{254}
\DeclareTextSymbol{\TH}{LRM}{222}
\DeclareTextSymbol{\thth}{LRM}{158}
\DeclareTextSymbol{\dh}{LRM}{240}
\DeclareTextSymbol{\DH}{LRM}{208}
\DeclareTextSymbol{\v}{LRM}{87}
\DeclareTextSymbol{\V}{LRM}{94}
\DeclareTextSymbol{\x}{LRM}{128}
\DeclareTextSymbol{\X}{LRM}{136}
\DeclareTextSymbol{\y}{LRM}{85}
\DeclareTextSymbol{\Y}{LRM}{93}
\DeclareTextSymbol{\z}{LRM}{163}
\DeclareTextSymbol{\aa}{LRM}{229}
\DeclareTextSymbol{\ae}{LRM}{230}
\DeclareTextSymbol{\o}{LRM}{248}
\DeclareTextSymbol{\O}{LRM}{216}
\DeclareTextSymbol{\oo}{LRM}{215}
\DeclareTextSymbol{\oO}{LRM}{223}
\DeclareTextSymbol{\ey}{LRM}{74}
\DeclareTextSymbol{\arlaug}{LRM}{177}
\DeclareTextSymbol{\tvimadur}{LRM}{185}
\DeclareTextSymbol{\belgthor}{LRM}{193}

\DeclareTextComposite{\.}{LRM}{a}{29}    % \.a, variant a
\DeclareTextComposite{\'}{LRM}{a}{209}   % \'a, variant a
\DeclareTextComposite{\.}{LRM}{c}{155}   % \.c, variant c
\DeclareTextComposite{\^}{LRM}{c}{67}    % \^c variant c
\DeclareTextComposite{\.}{LRM}{t}{100}   % \.t d
\DeclareTextComposite{\~}{LRM}{t}{180}   % \~t variant d
\DeclareTextComposite{\=}{LRM}{t}{164}   % \=t variant d
\DeclareTextComposite{\'}{LRM}{t}{188}   % \'t variant d
\DeclareTextComposite{\^}{LRM}{t}{156}   % \^t variant d
\DeclareTextComposite{\.}{LRM}{T}{68}    % \.T D variant d
\DeclareTextComposite{\"}{LRM}{T}{132}   % \"T \D variant d
\DeclareTextComposite{\.}{LRM}{i}{101}   % \.i e
\DeclareTextComposite{\=}{LRM}{i}{73}    % \=i \e variant e
\DeclareTextComposite{\^}{LRM}{i}{69}    % \^i E variant e
\DeclareTextComposite{\.}{LRM}{k}{103}   % \.k g
\DeclareTextComposite{\'}{LRM}{k}{71}    % \'k G variant g
\DeclareTextComposite{\=}{LRM}{k}{95}    % \=k \g variant g
\DeclareTextComposite{\.}{LRM}{l}{76}    % \.l L
\DeclareTextComposite{\~}{LRM}{l}{196}   % \~l variant l
\DeclareTextComposite{\=}{LRM}{l}{172}   % \=l variant l
\DeclareTextComposite{\'}{LRM}{l}{204}   % \'l variant l
\DeclareTextComposite{\^}{LRM}{l}{124}   % \^l variant l
\DeclareTextComposite{\.}{LRM}{n}{166}   % \.n variant n
\DeclareTextComposite{\'}{LRM}{n}{190}   % \'n variant n
\DeclareTextComposite{\.}{LRM}{N}{198}   % \.N variant n
\DeclareTextComposite{\"}{LRM}{b}{112}   % \"b p
\DeclareTextComposite{\.}{LRM}{b}{232}   % \.b variant p
\DeclareTextComposite{\"}{LRM}{\P}{184}  % \"\P variant p
\DeclareTextComposite{\.}{LRM}{r}{1}     % \.r variant r
\DeclareTextComposite{\.}{LRM}{\th}{240} % \dh
\DeclareTextComposite{\.}{LRM}{\TH}{208} % \DH variant \dh
\DeclareTextComposite{\.}{LRM}{f}{86}    % \.f variant v
\DeclareTextComposite{\~}{LRM}{f}{94}    % \~f variant v
\DeclareTextComposite{\'}{LRM}{f}{87}    % \'f variant v
\DeclareTextComposite{\.}{LRM}{u}{121}   % \.u v y
\DeclareTextComposite{\"}{LRM}{u}{85}    % \"u y
\DeclareTextComposite{\=}{LRM}{u}{93}    % \=u y

% Commands for flipping and turning runes

\DeclareTextCommand{\hflip}{LRM}{}
\DeclareTextCommand{\vflip}{LRM}{}
\DeclareTextCommand{\turn}{LRM}{}

\DeclareTextComposite{\hflip}{LRM}{a}{110}
\DeclareTextComposite{\vflip}{LRM}{a}{129}
\DeclareTextComposite{\turn}{LRM}{a}{126}

\DeclareTextComposite{\hflip}{LRM}{\adot}{190}
\DeclareTextComposite{\vflip}{LRM}{\adot}{201}
\DeclareTextComposite{\turn}{LRM}{\adot}{182}

\DeclareTextComposite{\hflip}{LRM}{\a}{166}
\DeclareTextComposite{\vflip}{LRM}{\a}{31}
\DeclareTextComposite{\turn}{LRM}{\a}{30}

\DeclareTextComposite{\hflip}{LRM}{A}{75}
\DeclareTextComposite{\vflip}{LRM}{A}{220}
\DeclareTextComposite{\turn}{LRM}{A}{107}

\DeclareTextComposite{\hflip}{LRM}{b}{160}
%\DeclareTextComposite{\vflip}{LRM}{b}{98}
\DeclareTextComposite{\turn}{LRM}{b}{160}

\DeclareTextComposite{\hflip}{LRM}{B}{96}
\DeclareTextComposite{\vflip}{LRM}{B}{80}
\DeclareTextComposite{\turn}{LRM}{B}{113}

%\DeclareTextComposite{\hflip}{LRM}{c}{99}
\DeclareTextComposite{\vflip}{LRM}{c}{195}
\DeclareTextComposite{\turn}{LRM}{c}{195}

%\DeclareTextComposite{\hflip}{LRM}{\c}{155}
\DeclareTextComposite{\vflip}{LRM}{\c}{147}
\DeclareTextComposite{\turn}{LRM}{\c}{147}

%\DeclareTextComposite{\hflip}{LRM}{C}{67}
\DeclareTextComposite{\vflip}{LRM}{C}{91}
\DeclareTextComposite{\turn}{LRM}{C}{91}

\DeclareTextComposite{\hflip}{LRM}{d}{76}
\DeclareTextComposite{\vflip}{LRM}{d}{141}
\DeclareTextComposite{\turn}{LRM}{d}{140}

%\DeclareTextComposite{\hflip}{LRM}{\e}{73}
%\DeclareTextComposite{\vflip}{LRM}{\e}{73}
%\DeclareTextComposite{\turn}{LRM}{\e}{73}

%\DeclareTextComposite{\hflip}{LRM}{E}{69}
%\DeclareTextComposite{\vflip}{LRM}{E}{69}
%\DeclareTextComposite{\turn}{LRM}{E}{69}

\DeclareTextComposite{\hflip}{LRM}{\tflag}{196}
\DeclareTextComposite{\vflip}{LRM}{\tflag}{181}
\DeclareTextComposite{\turn}{LRM}{\tflag}{197}

\DeclareTextComposite{\hflip}{LRM}{\tbar}{172}
\DeclareTextComposite{\vflip}{LRM}{\tbar}{165}
\DeclareTextComposite{\turn}{LRM}{\tbar}{173}

\DeclareTextComposite{\hflip}{LRM}{\tdot}{204}
\DeclareTextComposite{\vflip}{LRM}{\tdot}{189}
\DeclareTextComposite{\turn}{LRM}{\tdot}{205}

\DeclareTextComposite{\hflip}{LRM}{\tring}{124}
\DeclareTextComposite{\vflip}{LRM}{\tring}{157}
\DeclareTextComposite{\turn}{LRM}{\tring}{125}

%\DeclareTextComposite{\hflip}{LRM}{D}{68}
\DeclareTextComposite{\vflip}{LRM}{D}{92}
\DeclareTextComposite{\turn}{LRM}{D}{92}

%\DeclareTextComposite{\hflip}{LRM}{\D}{132}
\DeclareTextComposite{\vflip}{LRM}{\D}{133}
\DeclareTextComposite{\turn}{LRM}{\D}{133}

\DeclareTextComposite{\hflip}{LRM}{f}{6}
\DeclareTextComposite{\vflip}{LRM}{f}{14}
\DeclareTextComposite{\turn}{LRM}{f}{22}

\DeclareTextComposite{\hflip}{LRM}{F}{154}
\DeclareTextComposite{\vflip}{LRM}{F}{162}
\DeclareTextComposite{\turn}{LRM}{F}{170}

\DeclareTextComposite{\hflip}{LRM}{g}{159}
\DeclareTextComposite{\vflip}{LRM}{g}{167}
\DeclareTextComposite{\turn}{LRM}{g}{175}

\DeclareTextComposite{\hflip}{LRM}{\g}{2}
\DeclareTextComposite{\vflip}{LRM}{\g}{10}
\DeclareTextComposite{\turn}{LRM}{\g}{18}

\DeclareTextComposite{\hflip}{LRM}{G}{7}
\DeclareTextComposite{\vflip}{LRM}{G}{15}
\DeclareTextComposite{\turn}{LRM}{G}{23}

\DeclareTextComposite{\hflip}{LRM}{k}{220}
\DeclareTextComposite{\vflip}{LRM}{k}{75}
\DeclareTextComposite{\turn}{LRM}{k}{65}

\DeclareTextComposite{\hflip}{LRM}{l}{116}
\DeclareTextComposite{\vflip}{LRM}{l}{148}
\DeclareTextComposite{\turn}{LRM}{l}{149}

\DeclareTextComposite{\hflip}{LRM}{\lbar}{164}
\DeclareTextComposite{\vflip}{LRM}{\lbar}{173}
\DeclareTextComposite{\turn}{LRM}{\lbar}{165}

\DeclareTextComposite{\hflip}{LRM}{\lflag}{180}
\DeclareTextComposite{\vflip}{LRM}{\lflag}{197}
\DeclareTextComposite{\turn}{LRM}{\lflag}{181}

\DeclareTextComposite{\hflip}{LRM}{\ldot}{188}
\DeclareTextComposite{\vflip}{LRM}{\ldot}{205}
\DeclareTextComposite{\turn}{LRM}{\ldot}{189}

\DeclareTextComposite{\hflip}{LRM}{\lring}{156}
\DeclareTextComposite{\vflip}{LRM}{\lring}{125}
\DeclareTextComposite{\turn}{LRM}{\lring}{157}

\DeclareTextComposite{\hflip}{LRM}{\l}{100}
\DeclareTextComposite{\vflip}{LRM}{\l}{140}
\DeclareTextComposite{\turn}{LRM}{\l}{141}

%\DeclareTextComposite{\hflip}{LRM}{m}{109}
\DeclareTextComposite{\vflip}{LRM}{m}{121}
\DeclareTextComposite{\turn}{LRM}{m}{121}

\DeclareTextComposite{\hflip}{LRM}{\m}{107}
\DeclareTextComposite{\vflip}{LRM}{\m}{65}
\DeclareTextComposite{\turn}{LRM}{\m}{75}

\DeclareTextComposite{\hflip}{LRM}{n}{97}
\DeclareTextComposite{\vflip}{LRM}{n}{126}
\DeclareTextComposite{\turn}{LRM}{n}{129}

\DeclareTextComposite{\hflip}{LRM}{\n}{29}
\DeclareTextComposite{\vflip}{LRM}{\n}{30}
\DeclareTextComposite{\turn}{LRM}{\n}{31}

\DeclareTextComposite{\hflip}{LRM}{\ndot}{209}
\DeclareTextComposite{\vflip}{LRM}{\ndot}{182}
\DeclareTextComposite{\turn}{LRM}{\ndot}{201}

\DeclareTextComposite{\hflip}{LRM}{N}{230}
\DeclareTextComposite{\vflip}{LRM}{N}{230}
%\DeclareTextComposite{\turn}{LRM}{N}{78}

\DeclareTextComposite{\hflip}{LRM}{\N}{206}
\DeclareTextComposite{\vflip}{LRM}{\N}{206}
%\DeclareTextComposite{\turn}{LRM}{\N}{198}

\DeclareTextComposite{\hflip}{LRM}{o}{79}
\DeclareTextComposite{\vflip}{LRM}{o}{255}
\DeclareTextComposite{\turn}{LRM}{o}{151}

\DeclareTextComposite{\hflip}{LRM}{p}{152}
%\DeclareTextComposite{\vflip}{LRM}{p}{112}
\DeclareTextComposite{\turn}{LRM}{p}{152}

\DeclareTextComposite{\hflip}{LRM}{\p}{233}
\DeclareTextComposite{\vflip}{LRM}{\p}{224}
\DeclareTextComposite{\turn}{LRM}{\p}{225}

\DeclareTextComposite{\hflip}{LRM}{\P}{81}
%\DeclareTextComposite{\vflip}{LRM}{\P}{176}
\DeclareTextComposite{\turn}{LRM}{\P}{81}

\DeclareTextComposite{\hflip}{LRM}{\Pdots}{192}
%\DeclareTextComposite{\vflip}{LRM}{\Pdots}{184}
\DeclareTextComposite{\turn}{LRM}{\Pdots}{192}

\DeclareTextComposite{\hflip}{LRM}{P}{113}
\DeclareTextComposite{\vflip}{LRM}{P}{66}
\DeclareTextComposite{\turn}{LRM}{P}{96}

\DeclareTextComposite{\hflip}{LRM}{q}{80}
\DeclareTextComposite{\vflip}{LRM}{q}{96}
\DeclareTextComposite{\turn}{LRM}{q}{66}

\DeclareTextComposite{\hflip}{LRM}{\q}{107}
\DeclareTextComposite{\vflip}{LRM}{\q}{65}
\DeclareTextComposite{\turn}{LRM}{\q}{75}

\DeclareTextComposite{\hflip}{LRM}{\Q}{176}
%\DeclareTextComposite{\vflip}{LRM}{\Q}{192}
\DeclareTextComposite{\turn}{LRM}{\Q}{176}

\DeclareTextComposite{\hflip}{LRM}{r}{242}
\DeclareTextComposite{\vflip}{LRM}{r}{234}
\DeclareTextComposite{\turn}{LRM}{r}{250}

\DeclareTextComposite{\hflip}{LRM}{\rdot}{17}
\DeclareTextComposite{\vflip}{LRM}{\rdot}{9}
\DeclareTextComposite{\turn}{LRM}{\rdot}{25}

\DeclareTextComposite{\hflip}{LRM}{\r}{218}
\DeclareTextComposite{\vflip}{LRM}{\r}{210}
\DeclareTextComposite{\turn}{LRM}{\r}{226}

\DeclareTextComposite{\hflip}{LRM}{s}{179}
\DeclareTextComposite{\vflip}{LRM}{s}{179}
%\DeclareTextComposite{\turn}{LRM}{s}{115}

\DeclareTextComposite{\hflip}{LRM}{S}{227}
\DeclareTextComposite{\vflip}{LRM}{S}{235}
\DeclareTextComposite{\turn}{LRM}{S}{243}

\DeclareTextComposite{\hflip}{LRM}{\S}{203}
\DeclareTextComposite{\vflip}{LRM}{\S}{211}
\DeclareTextComposite{\turn}{LRM}{\S}{219}

\DeclareTextComposite{\hflip}{LRM}{t}{108}
\DeclareTextComposite{\vflip}{LRM}{t}{149}
\DeclareTextComposite{\turn}{LRM}{t}{148}

%\DeclareTextComposite{\hflip}{LRM}{T}{84}
\DeclareTextComposite{\vflip}{LRM}{T}{128}
\DeclareTextComposite{\turn}{LRM}{T}{128}

%\DeclareTextComposite{\hflip}{LRM}{\T}{212}
%\DeclareTextComposite{\vflip}{LRM}{\T}{212}
%\DeclareTextComposite{\turn}{LRM}{\T}{212}

\DeclareTextComposite{\hflip}{LRM}{\th}{238}
%\DeclareTextComposite{\vflip}{LRM}{\th}{254}
\DeclareTextComposite{\turn}{LRM}{\th}{238}

\DeclareTextComposite{\hflip}{LRM}{\TH}{221}
%\DeclareTextComposite{\vflip}{LRM}{\TH}{222}
\DeclareTextComposite{\turn}{LRM}{\TH}{221}

\DeclareTextComposite{\hflip}{LRM}{\thth}{174}
%\DeclareTextComposite{\vflip}{LRM}{\thth}{158}
\DeclareTextComposite{\turn}{LRM}{\thth}{174}

\DeclareTextComposite{\hflip}{LRM}{\dh}{241}
%\DeclareTextComposite{\vflip}{LRM}{\dh}{240}
\DeclareTextComposite{\turn}{LRM}{\dh}{241}

\DeclareTextComposite{\hflip}{LRM}{\DH}{200}
%\DeclareTextComposite{\vflip}{LRM}{\DH}{208}
\DeclareTextComposite{\turn}{LRM}{\DH}{200}

\DeclareTextComposite{\hflip}{LRM}{u}{245}
\DeclareTextComposite{\vflip}{LRM}{u}{237}
\DeclareTextComposite{\turn}{LRM}{u}{253}

\DeclareTextComposite{\hflip}{LRM}{v}{134}
\DeclareTextComposite{\vflip}{LRM}{v}{142}
\DeclareTextComposite{\turn}{LRM}{v}{150}

\DeclareTextComposite{\hflip}{LRM}{\v}{4}
\DeclareTextComposite{\vflip}{LRM}{\v}{12}
\DeclareTextComposite{\turn}{LRM}{\v}{20}

\DeclareTextComposite{\hflip}{LRM}{V}{5}
\DeclareTextComposite{\vflip}{LRM}{V}{13}
\DeclareTextComposite{\turn}{LRM}{V}{21}

\DeclareTextComposite{\hflip}{LRM}{\V}{3}
\DeclareTextComposite{\vflip}{LRM}{\V}{11}
\DeclareTextComposite{\turn}{LRM}{\V}{19}

\DeclareTextComposite{\hflip}{LRM}{w}{135}
\DeclareTextComposite{\vflip}{LRM}{w}{127}
\DeclareTextComposite{\turn}{LRM}{w}{143}

\DeclareTextComposite{\hflip}{LRM}{x}{144}
\DeclareTextComposite{\vflip}{LRM}{x}{144}
%\DeclareTextComposite{\turn}{LRM}{x}{120}

%\DeclareTextComposite{\hflip}{LRM}{\x}{128}
\DeclareTextComposite{\vflip}{LRM}{\x}{84}
\DeclareTextComposite{\turn}{LRM}{\x}{84}

%\DeclareTextComposite{\hflip}{LRM}{X}{88}
%\DeclareTextComposite{\vflip}{LRM}{X}{88}
%\DeclareTextComposite{\turn}{LRM}{X}{88}

%\DeclareTextComposite{\hflip}{LRM}{\X}{136}
%\DeclareTextComposite{\vflip}{LRM}{\X}{136}
%\DeclareTextComposite{\turn}{LRM}{\X}{136}

%\DeclareTextComposite{\hflip}{LRM}{y}{121}
\DeclareTextComposite{\vflip}{LRM}{y}{109}
\DeclareTextComposite{\turn}{LRM}{y}{109}

\DeclareTextComposite{\hflip}{LRM}{\y}{137}
\DeclareTextComposite{\vflip}{LRM}{\y}{145}
\DeclareTextComposite{\turn}{LRM}{\y}{153}

%\DeclareTextComposite{\hflip}{LRM}{Y}{89}
\DeclareTextComposite{\vflip}{LRM}{Y}{249}
\DeclareTextComposite{\turn}{LRM}{Y}{249}

\DeclareTextComposite{\hflip}{LRM}{\Y}{130}
\DeclareTextComposite{\vflip}{LRM}{\Y}{138}
\DeclareTextComposite{\turn}{LRM}{\Y}{146}

\DeclareTextComposite{\hflip}{LRM}{z}{194}
\DeclareTextComposite{\vflip}{LRM}{z}{186}
\DeclareTextComposite{\turn}{LRM}{z}{202}

%\DeclareTextComposite{\hflip}{LRM}{\z}{163}
\DeclareTextComposite{\vflip}{LRM}{\z}{171}
\DeclareTextComposite{\turn}{LRM}{\z}{171}

%\DeclareTextComposite{\hflip}{LRM}{Z}{90}
\DeclareTextComposite{\vflip}{LRM}{Z}{251}
\DeclareTextComposite{\turn}{LRM}{Z}{251}

%\DeclareTextComposite{\hflip}{LRM}{Y}{89}
\DeclareTextComposite{\vflip}{LRM}{Y}{249}
\DeclareTextComposite{\turn}{LRM}{Y}{249}

\DeclareTextComposite{\hflip}{LRM}{\aa}{213}
%\DeclareTextComposite{\vflip}{LRM}{\aa}{229}
\DeclareTextComposite{\turn}{LRM}{\aa}{213}

\DeclareTextComposite{\hflip}{LRM}{\ae}{78}
\DeclareTextComposite{\vflip}{LRM}{\ae}{78}
%\DeclareTextComposite{\turn}{LRM}{\ae}{230}

\DeclareTextComposite{\hflip}{LRM}{\o}{247}
\DeclareTextComposite{\vflip}{LRM}{\o}{247}
%\DeclareTextComposite{\turn}{LRM}{\o}{246}

\DeclareTextComposite{\hflip}{LRM}{\O}{217}
\DeclareTextComposite{\vflip}{LRM}{\O}{217}
%\DeclareTextComposite{\turn}{LRM}{\O}{216}

\DeclareTextComposite{\hflip}{LRM}{\oo}{199}
\DeclareTextComposite{\vflip}{LRM}{\oo}{191}
\DeclareTextComposite{\turn}{LRM}{\oo}{239}

\DeclareTextComposite{\hflip}{LRM}{\oO}{207}
\DeclareTextComposite{\vflip}{LRM}{\oO}{183}
\DeclareTextComposite{\turn}{LRM}{\oO}{231}

\DeclareTextComposite{\hflip}{LRM}{\arlaug}{178}
\DeclareTextComposite{\vflip}{LRM}{\arlaug}{169}
\DeclareTextComposite{\turn}{LRM}{\arlaug}{161}

\DeclareRuneSeparators{LRM}

%    \end{macrocode}
%
%</arm>
%
%<*frubase>
%
% \section{The Font Macros and Programs}
%
% \subsection{Base file --- \texttt{frubase.mf}}
% \file{frubase.mf}
% \changes{v1.0}{2000/11/11}{Base file \texttt{frubase.mf}.}
%
% This file defines all the macros used in the source programs
% for the font.
%    \begin{macrocode}
string allrunes ;
allrunes = "2.0" ;
if proofing > 1 :
  message "Base file for font `allrunes', version " & allrunes ;
fi
%    \end{macrocode}
% And then the font is identified as \texttt{"allrunes"}.
%    \begin{macrocode}
font_identifier:="allrunes";

font_size 10pt#;

mode_setup;

if mag <= 1:
  magadj = 1;
  tightness_f=0.0;
elseif mag <= 4:
  magadj = 1-(mag-1)/10;
  tightness_f=0.0;
else:
  magadj = 1-(4-1)/10;
  tightness_f=0.01;
fi;

if loweredbars=true:
    topjointrounding=0.3;
    topbarred=0.85;
else:
    topjointrounding=1.0;
    topbarred=1.0;
fi;

if barshape="straight":
    curve_d=0;
elseif barshape="curved":
    curve_d=40;
elseif barshape="rounded":
    curve_d=90;
fi;

if withlines=true:
    toprounding=1.0;
else:
    toprounding=0.3;
fi;

if boldness="light":
    stem_w#=0.4pt#*magadj;
    base_width#=3.8pt#;
    margin_width#=1.1pt#;
elseif boldness="medium":
    stem_w#=0.57pt#*magadj;
    base_width#=4pt#;
    margin_width#=1.2pt#;
elseif boldness="bold":
    stem_w#=0.8pt#*magadj;
    base_width#=4.2pt#;
    margin_width#=1.2pt#;
fi;

endrounding=0.3;
jointrounding=1.0;
round_adj_f=0.2;

circle_w#=0.9*stem_w#;
stem_h#=7pt#;
full_height_f=1;
nib_w#=0.01pt#;
%stem_midpoint_f=0.52;

freedot_f=1.3;
sepdot_f=1.6;
stemdot_f=2.2;
endstemdot_f=1.7;
stemcircle_f=3.2;
endstemcircle_f=2.8;
twig_length_f=3.1;

define_pixels(nib_w);
define_pixels(stem_h);
define_whole_pixels(stem_w);
define_whole_pixels(circle_w);
define_pixels(margin_width);

def beginrunechar(expr code, width) =
    beginchar(code, width, stem_h#, 0.4*stem_h#);
    pickup pencircle scaled nib_w;
%    pickup nullpen;
    if withlines=true:
        filldraw barpath( -stem_w/2, 0-stem_w/2, jointrounding,
                         w+stem_w/2, 0-stem_w/2, jointrounding, 0, 0, 0);
        filldraw barpath( -stem_w/2, h+stem_w/2, jointrounding,
                         w+stem_w/2, h+stem_w/2, jointrounding, 0, 0, 10);
    fi
enddef;

def dotpath (expr x, y, width_f, i) =
%  begingroup
%    save dot_path;
%    path dot_path;
%
%    z[i]    = .5stem_w*width_f*(down);
%    z[i+1]l = .5stem_w*width_f*(dir -135);
%    z[i+1]r = .5stem_w*width_f*(dir -45);
%    z[i+2]l = .5stem_w*width_f*(left);
%    z[i+2]r = .5stem_w*width_f*(right);
%    z[i+3]l = .5stem_w*width_f*(dir 135);
%    z[i+3]r = .5stem_w*width_f*(dir 45);
%    z[i+4]  = .5stem_w*width_f*up;
%
%    dot_path = z[i]..z[i+1]l..z[i+2]l..
%               z[i+3]l..z[i+4]..z[i+3]r..
%               z[i+2]r..z[i+1]r..cycle;
%    dot_path shifted (x, y)
%  endgroup
    fullcircle scaled (width_f*stem_w) shifted (x,y)
enddef;

def draw_circle (expr x, y, width_f, i) =
    pickup pencircle scaled circle_w;
    draw fullcircle scaled (width_f*stem_w) shifted (x,y)
enddef;


def barpath (expr x_start, y_start, start_rounding_f,
                  x_end, y_end, end_rounding_f,
                  curve_angle, tightness_f, i) =
  begingroup
    save dx, dy;
    save l;
    save xy_angle, a;
    save midshift;
    save bar_path;
    path bar_path;

    dx = x_end-x_start;
    dy = y_end-y_start;
    l = dx++dy;
    xy_angle = angle(dx,dy)-90;
    a = curve_angle/2;
    if a = 0: midshift=0;
    else: midshift = l*(1-cosd a)/(2*sind a);fi

    z[i] = .5stem_w*start_rounding_f*down rotated -a;
%    z[i+1]l = .5stem_w*start_rounding_f[left, dir -135] rotated -a;
%    z[i+1]r = .5stem_w*start_rounding_f[right, dir -45] rotated -a;
    z[i+1]l = .5stem_w*((1+round_adj_f*(1-start_rounding_f))*cosd -135, start_rounding_f*sind -135) rotated -a;
    z[i+1]r = .5stem_w*((1+round_adj_f*(1-start_rounding_f))*cosd -45, start_rounding_f*sind -45) rotated -a;
    .5[z[i+2]r, z[i+2]l] = origin;
    z[i+2]r - z[i+2]l = stem_w * dir -a;
    .5[z[i+3]r, z[i+3]l] = (midshift, l/2);
    z[i+3]r - z[i+3]l = (stem_w*(1-tightness_f), 0);
    .5[z[i+4]r, z[i+4]l] = (0, l);
    z[i+4]r - z[i+4]l = stem_w * dir a;
%    z[i+5]l = (.5stem_w*end_rounding_f[left, dir 135] rotated a) + (0, l);
%    z[i+5]r = (.5stem_w*end_rounding_f[right, dir 45] rotated a) + (0, l);
    z[i+5]l = (.5stem_w*((1+round_adj_f*(1-start_rounding_f))*cosd 135, end_rounding_f*sind 135) rotated a) + (0, l);
    z[i+5]r = (.5stem_w*((1+round_adj_f*(1-start_rounding_f))*cosd 45, end_rounding_f*sind 45) rotated a) + (0, l);
    z[i+6]  = (.5stem_w*end_rounding_f*up rotated a) + (0, l);

    bar_path = z[i]{dir(180-a)}..z[i+1]l..z[i+2]l{dir(90-a)}..
               z[i+3]l{up}..z[i+4]l{dir(90+a)}..z[i+5]l..
               z[i+6]{dir a}..z[i+5]r..z[i+4]r{dir(a-90)}..
               z[i+3]r{down}..
               z[i+2]r{dir(-90-a)}..z[i+1]r..
               cycle;
    bar_path rotated xy_angle shifted (x_start, y_start)
  endgroup
enddef;

def draw_arrowhead (expr x_centre, y_centre, arrowhead_w_f, arrowhead_l_f, dir, i) =
    save arrowhead_w_adj_f;
    save arrowhead_path;
    path arrowhead_path;

    if barshape="straight":
        arrowhead_w_adj_f=arrowhead_w_f+0.7;
        filldraw barpath(                     0, -arrowhead_l_f/2*stem_w+stem_w/2, endrounding,
                                              0,  arrowhead_l_f/2*stem_w, endrounding, 0, tightness_f, i)
                 rotated dir shifted (x_centre, y_centre);
        filldraw barpath(-arrowhead_w_adj_f/2*stem_w, -arrowhead_l_f/2*stem_w, endrounding,
                          arrowhead_w_adj_f/2*stem_w, -arrowhead_l_f/2*stem_w, endrounding,
                          0, tightness_f, i+10)
                 rotated dir shifted (x_centre, y_centre);
    elseif barshape="curved":
        arrowhead_w_adj_f=arrowhead_w_f;
        z[i]   =(0,-arrowhead_l_f/2*stem_w*0.92);
        z[i+1]l=(-arrowhead_w_adj_f/2*stem_w,-arrowhead_l_f/2*stem_w);
        z[i+1]r=( arrowhead_w_adj_f/2*stem_w,-arrowhead_l_f/2*stem_w);
        z[i+2]l=(-arrowhead_w_adj_f/4*stem_w*1.4,stem_w/6);
        z[i+2]r=( arrowhead_w_adj_f/4*stem_w*1.4,stem_w/6);
        z[i+3]l=(-0.4*stem_w,(arrowhead_l_f/2-0.5)*stem_w);
        z[i+3]r=( 0.4*stem_w,(arrowhead_l_f/2-0.5)*stem_w);
        z[i+4] =(0,arrowhead_l_f/2*stem_w);
        arrowhead_path = z[i]{left}..z[i+1]l..z[i+2]l..z[i+3]l{up}..
                        z[i+4]{right}..z[i+3]r{down}..z[i+2]r..z[i+1]r..cycle;
        filldraw arrowhead_path rotated dir shifted (x_centre, y_centre);
    elseif barshape="rounded":
        arrowhead_w_adj_f=arrowhead_w_f+0.6;
        filldraw barpath(                     0, -arrowhead_l_f/2*stem_w+stem_w/2, endrounding,
                                              0,  arrowhead_l_f/2*stem_w, endrounding, 0, tightness_f, i)
                 rotated dir shifted (x_centre, y_centre);
        filldraw dotpath(                     0, -arrowhead_l_f/2*stem_w, arrowhead_w_adj_f, i+20)
                 rotated dir shifted (x_centre, y_centre);
    fi;
enddef;

%def draw_arrowhead (expr x_centre, y_centre, arrowhead_w_f_in, arrowhead_l_f, dir_heading, i) =
%    save arrowhead_w_f;
%    save arrowhead_curve_d;
%    save arrowheadrounding;
%    if barshape="straight":
%        arrowhead_w_f=arrowhead_w_f_in+0.7;
%        arrowhead_curve_d=0;
%        arrowheadrounding=endrounding;
%    elseif barshape="curved":
%        arrowhead_w_f=arrowhead_w_f_in;
%        arrowhead_curve_d=30;
%        arrowheadrounding=0.9;
%    elseif barshape="rounded":
%        arrowhead_w_f=arrowhead_w_f_in+0.6;
%        arrowhead_curve_d=0;
%        arrowheadrounding=endrounding;
%    fi;
%
%    filldraw barpath(                     0, -arrowhead_l_f/2*stem_w+stem_w/2, arrowheadrounding,
%                                          0,  arrowhead_l_f/2*stem_w, arrowheadrounding, 0, tightness_f, i)
%             rotated dir_heading shifted (x_centre, y_centre);
%    if (barshape="curved") or (barshape="straight"):
%      filldraw barpath(-arrowhead_w_f/2*stem_w, -arrowhead_l_f/2*stem_w, arrowheadrounding,
%                        arrowhead_w_f/2*stem_w, -arrowhead_l_f/2*stem_w, arrowheadrounding,
%                        -arrowhead_curve_d, tightness_f, i+10)
%               rotated dir_heading shifted (x_centre, y_centre);
%    fi;
%    if barshape="curved":
%        filldraw barpath( arrowhead_w_f/2*stem_w, -arrowhead_l_f/2*stem_w, arrowheadrounding,
%                                               0,  arrowhead_l_f/2*stem_w, arrowheadrounding,
%                          -arrowhead_curve_d, tightness_f, i+20)
%                 rotated dir_heading shifted (x_centre, y_centre);
%        filldraw barpath(                      0,  arrowhead_l_f/2*stem_w, arrowheadrounding,
%                         -arrowhead_w_f/2*stem_w, -arrowhead_l_f/2*stem_w, arrowheadrounding,
%                         -arrowhead_curve_d, tightness_f, i+30)
%                 rotated dir_heading shifted (x_centre, y_centre);
%    elseif barshape="rounded":
%        filldraw dotpath(                      0, -arrowhead_l_f/2*stem_w, arrowhead_w_f, i+20)
%                 rotated dir_heading shifted (x_centre, y_centre);
%    fi
%enddef;


def xhalf=(w/2-stem_w/2-margin_width) enddef;

def xmid=(w/2) enddef;

def yhalf=(h/2) enddef;

def ymid=(h/2) enddef;

def yhalfred=((h*topbarred)/2) enddef;

def ymidred(expr yd)=(h*((((topbarred/2)-0.5)*yd)+0.5)) enddef;

% These macros are the most interesting ones. Here the actual outline of
% the characters are made. To make things manageble, as little as possible
% is defined in the driver file, so that the font will have a uniform
% look in all series, shapes, and sizes.  All that is needed in the
% driver file is then to set a few parameters.

% f, \.f
def draw_normal_f(expr rune, xd, yd, highdot, stemdot, twigdot) =
  beginrunechar(rune, 1.08*base_width#+2*margin_width#);
    save f_ymid_f;
    save f_yup_f;
    save f_xhighdot_f;
    save f_twigdot_f;
    f_ymid_f=0.0;
    if highdot:
      f_yup_f=0.4;
      f_xhighdot_f=0.4;
    else:
      f_yup_f=0.5;
    fi;
    if twigdot:
      f_twigdot_f=0.52;
    fi;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid-yd*f_ymid_f*yhalf, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, toprounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*f_yup_f*yhalf, jointrounding,
                     xmid-xd*xhalf+xd*(1-f_yup_f)*yhalf, ymid+yd*yhalf, toprounding, xd*yd*curve_d, tightness_f, 40);
    if highdot:
      filldraw dotpath(xmid-xd*xhalf+xd*(1-f_yup_f)*yhalf*f_xhighdot_f,  ymid+yd*(yhalf-stem_w/2), freedot_f, 50);
    fi;
    if stemdot:
      filldraw dotpath(xmid-xd*xhalf, ymid+yd*yhalf*f_ymid_f+yd*stem_w/3, stemdot_f, 60);
    fi;
    if twigdot:
      filldraw dotpath(xmid+xd*(-1+(1-(-1))*f_twigdot_f+(1-f_ymid_f)*(yhalf/xhalf)*((1-cosd(curve_d/2))/(2*sind(curve_d/2))))*xhalf,
                       ymid+yd*(f_ymid_f+(1-f_ymid_f)*f_twigdot_f-(1-(-1))*(xhalf/yhalf)*((1-cosd(curve_d/2))/(2*sind(curve_d/2))))*yhalf,
                       stemdot_f, 70);
    fi;
  endchar;
enddef;

% F
def draw_medieval_f(expr rune, xd, yd) =
  beginrunechar(rune, 1.2*base_width#+2*margin_width#);
    save f_ylow_f;
    save f_ymid_f;
    save f_yup_f;
    f_ylow_f=-0.2;
    f_ymid_f=0.2;
    f_yup_f=0.6;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*f_ylow_f*yhalf, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, toprounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*f_ymid_f*yhalf, jointrounding,
                     xmid-xd*xhalf+xd*(1-f_ymid_f)*yhalf, ymid+yd*yhalf, toprounding, xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*f_yup_f*yhalf, jointrounding,
                     xmid-xd*xhalf+xd*(1-f_yup_f)*yhalf, ymid+yd*yhalf, toprounding, xd*yd*curve_d, tightness_f, 50);
  endchar;
enddef;

% f
def draw_primitive_f(expr rune, xd, yd) =
  beginrunechar(rune, 0.65*base_width#+2*margin_width#);
    save f_yraise_f;
    save f_ysep_f;
    f_yraise_f=0.4;
    f_ysep_f=0.54;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(1-f_yraise_f), jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, toprounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(1-f_yraise_f-f_ysep_f), jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*(1-f_ysep_f), toprounding, xd*yd*curve_d, tightness_f, 40);
  endchar;
enddef;

% f
def draw_staveless_f(expr rune, xd, yd, long) =
  save end_marker_width_f;
  save end_marker_length_f;
  end_marker_width_f=1.6;
  end_marker_length_f=3.2;
  beginrunechar(rune, end_marker_width_f*stem_w#+2*margin_width#);
    save f_y_f;
    if long:
      f_y_f=0.5;
    else:
      f_y_f=-0.3;
    fi;
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf*f_y_f, toprounding, 0, tightness_f, 20);
    draw_arrowhead(xmid, ymid+yd*yhalf*f_y_f, end_marker_width_f, end_marker_length_f, -180+if yd=-1:180 else:0 fi+if loweredbars:180 else:0 fi, 30);
  endchar;
enddef;


% u, \.u, \"u, anglo y
def draw_normal_u(expr rune, xd, yd, tight, marks) =
  beginrunechar(rune, topbarred*0.98*base_width#+2*margin_width#);
    save u_x_f;
    save u_y_f;
    save u_curvehigh_f;
    save u_curvelow_f;
    save y_cross_x_f;
    save y_cross_xadj_f;
    save y_cross_y_f;
    save y_y_bary_f;
    save y_y_lbranchy_f;
    save y_y_rbranchy_f;
    if tight:
      u_x_f=0.6;
    else:
      u_x_f=0.715;
    fi;
    u_y_f=0.2;
    if curve_d > 45:
      u_curvelow_f=(1-(curve_d-45)/45)/4;
      u_curvehigh_f=1+(1-(curve_d-45)/45)/4;
    else:
      u_curvelow_f=0.25;
      u_curvehigh_f=1.25;
    fi;
    y_cross_x_f=0.4;
    y_cross_xadj_f=0.06;
    y_cross_y_f=0.9;
    y_y_bary_f=0.15;
    y_y_lbranchy_f=0.16;
    y_y_rbranchy_f=0.14;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymidred(yd)+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf*u_x_f, ymidred(yd)+yd*yhalfred*u_y_f, jointrounding, 0-u_curvehigh_f*xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf*u_x_f, ymidred(yd)+yd*yhalfred*u_y_f, jointrounding,
                     xmid+xd*xhalf, ymid-yd*yhalf, toprounding, -u_curvelow_f*xd*yd*curve_d, tightness_f, 40);
    if marks=0:
    elseif marks=1: % one dot
      filldraw dotpath(xmid-xd*xhalf*0.07, ymidred(yd)-yd*yhalf*0.07, freedot_f, 50);
    elseif marks=2: % two dots
      filldraw dotpath(xmid-xd*xhalf*0.08, ymidred(yd)+yd*yhalf*0.06, freedot_f, 50);
      filldraw dotpath(xmid-xd*xhalf*0.04, ymidred(yd)-yd*yhalf*0.34, freedot_f, 60);
    elseif marks=3: % one bar
      filldraw barpath(xmid-xd*xhalf*0.08, ymidred(yd)-yd*yhalf*0.06, endrounding,
                       xmid-xd*xhalf*0.04, ymidred(yd)-yd*yhalf, endrounding, 0, tightness_f, 50);
    elseif marks=4: % one x
      filldraw barpath(xmid-xd*xhalf*(y_cross_x_f+y_cross_xadj_f), ymid-yd*yhalf*y_cross_y_f, endrounding,
                       xmid+xd*xhalf*(y_cross_x_f-y_cross_xadj_f), ymid-yd*yhalf*y_cross_y_f+2*yd*xhalf*y_cross_x_f, endrounding, 0, tightness_f, 50);
      filldraw barpath(xmid+xd*xhalf*(y_cross_x_f-y_cross_xadj_f), ymid-yd*yhalf*y_cross_y_f, endrounding,
                       xmid-xd*xhalf*(y_cross_x_f+y_cross_xadj_f), ymid-yd*yhalf*y_cross_y_f+2*yd*xhalf*y_cross_x_f, endrounding, 0, tightness_f, 60);
    elseif marks=5: % one y
      filldraw barpath(xmid-xd*xhalf*0.08, ymidred(yd)-yd*yhalf*y_y_bary_f, endrounding,
                       xmid-xd*xhalf*0.04, ymidred(yd)-yd*yhalf, endrounding, 0, tightness_f, 50);
      filldraw barpath(xmid-xd*xhalf*0.08, ymidred(yd)-yd*yhalf*y_y_bary_f, endrounding,
                       xmid-xd*xhalf, ymidred(yd)+yd*yhalf*y_y_lbranchy_f, endrounding, 0, tightness_f, 60);
      filldraw barpath(xmid-xd*xhalf*0.08, ymidred(yd)-yd*yhalf*y_y_bary_f, endrounding,
                       xmid+xd*xhalf*u_x_f, ymidred(yd)+yd*yhalf*y_y_rbranchy_f, endrounding, 0, tightness_f, 70);

    fi;
  endchar;
enddef;

% w (doubble u)
def draw_medieval_w(expr rune, xd, yd) =
  beginrunechar(rune, topbarred*1.1*base_width#+2*margin_width#);
    save u_x_f;
    save u_y_f;
    save u_yinner_f;
    save u_curvehigh_f;
    save u_curvelow_f;
    u_x_f=0.715;
    u_y_f=0.2;
    u_yinner_f=0.5;
    if curve_d > 45:
      u_curvelow_f=(1-(curve_d-45)/45)/4;
      u_curvehigh_f=1+(1-(curve_d-45)/45)/3;
    else:
      u_curvelow_f=0.25;
      u_curvehigh_f=1.33;
    fi;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymidred(yd)+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf*u_x_f, ymidred(yd)+yd*yhalfred*u_y_f, jointrounding, 0-u_curvehigh_f*xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf*u_x_f, ymidred(yd)+yd*yhalfred*u_y_f, jointrounding,
                     xmid+xd*xhalf, ymid-yd*yhalf, toprounding, -u_curvelow_f*xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid-xd*xhalf, ymidred(yd)+yd*yhalfred*u_yinner_f, jointrounding,
                     xmid-xd*xhalf*(1-(1+u_x_f)/2), ymidred(yd)+yd*yhalfred*u_y_f*(1-2*(1-u_yinner_f)), jointrounding, 0-u_curvehigh_f*xd*yd*curve_d, tightness_f, 50);
    filldraw barpath(xmid-xd*xhalf*(1-(1+u_x_f)/2), ymidred(yd)+yd*yhalfred*u_y_f*(1-2*(1-u_yinner_f)), jointrounding,
                     xmid,          ymid-yd*yhalf, toprounding, -u_curvelow_f*xd*yd*curve_d, tightness_f, 60);

  endchar;
enddef;

% U (triangular)
def draw_primitive_U(expr rune, xd, yd, symmetric) =
  beginrunechar(rune, topbarred*1.02*base_width#+2*margin_width#);
    save U_x_f;
    if symmetric:
      U_x_f=0;
    else:
      U_x_f=0.99;
    fi;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf*U_x_f, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-((1-topbarred)*(1-U_x_f)+U_x_f)*xd*xhalf, ymidred(yd)+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf, ymid-yd*yhalf, toprounding, 0, tightness_f, 30);
  endchar;
enddef;

% u
def draw_staveless_u(expr rune, xd, yd) =
  beginrunechar(rune, 0.6*base_width#+2*margin_width#);
    save u_xmid_f;
    save u_ytop_f;
    save u_ymid_f;
    save u_curvehigh_d;
    save u_curvelow_d;
    u_xmid_f=0.6;
    u_ytop_f=0.6;
    u_ymid_f=0.15;
    u_curvelow_d=25;
    u_curvehigh_d=65;
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*u_ytop_f, endrounding,
                     xmid+xd*xhalf*u_xmid_f, ymid+yd*yhalf*u_ymid_f, jointrounding, -u_curvehigh_d*xd*yd, tightness_f, 20);
    filldraw barpath(xmid+xd*xhalf*u_xmid_f, ymid+yd*yhalf*u_ymid_f, jointrounding,
                     xmid+xd*xhalf, ymid-yd*yhalf, toprounding, -u_curvelow_d*xd*yd, tightness_f, 30);
  endchar;
enddef;

% \th, \TH, \.\th, \.\TH \tth
def draw_normal_th(expr rune, xd, yd, big, dot, doubble) =
  save th_width_f;
  if big:
    th_width_f=0.7;
  elseif doubble:
    th_width_f=0.85;
  else:
    th_width_f=0.65;
  fi;
  beginrunechar(rune, th_width_f*base_width#+2*margin_width#);
    save th_y_f;
    save th_innery_f;
    save dot_x;
    if big:
      th_y_f=1-(1-topbarred)*2;
    elseif doubble:
      th_y_f=0.7;
      th_innery_f=0.3;
    else:
      th_y_f=0.44;
    fi;
    dot_x=1/6*(90-xd*yd*curve_d)/90;

    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf*th_y_f, jointrounding,
                     xmid+xd*xhalf, ymid, jointrounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*th_y_f, jointrounding,
                     xmid+xd*xhalf, ymid, jointrounding, -xd*yd*curve_d, tightness_f, 40);
    if doubble:
      filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf*th_innery_f, jointrounding,
                       xmid,          ymid, jointrounding, xd*yd*curve_d, tightness_f, 50);
      filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*th_innery_f, jointrounding,
                       xmid,          ymid, jointrounding, -xd*yd*curve_d, tightness_f, 60);
    fi;
    if dot:
      filldraw dotpath(xmid-xd*xhalf*dot_x, ymid, freedot_f, 70);
    fi;
  endchar;
enddef;

% \th
def draw_staveless_th(expr rune, xd, yd) =
  beginrunechar(rune, stem_w#+2*margin_width#);
    save th_y_f;
    m_y_f=0.44;
    filldraw barpath(xmid, ymid-yd*yhalf*m_y_f, endrounding,
                     xmid, ymid+yd*yhalf*m_y_f, endrounding, 0, tightness_f, 20);
  endchar;
enddef;

% A, \A
def draw_normal_single_A(expr rune, xd, yd, top) =
  beginrunechar(rune, 0.6*base_width#+2*margin_width#);
    save A_ysep_f;
    save A_ydrop_f;
    save A_ymid_f;
    A_ysep_f=0.26;
    A_ydrop_f=0.4;
    if top:
      A_ymid_f=1-A_ysep_f;
    else:
      A_ymid_f=0.14;
    fi;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(A_ymid_f+A_ysep_f), jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*(A_ymid_f+A_ysep_f-A_ydrop_f), endrounding, 0, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(A_ymid_f-A_ysep_f), jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*(A_ymid_f-A_ysep_f-A_ydrop_f), endrounding, 0, tightness_f, 40);
  endchar;
enddef;

% A
def draw_staveless_A(expr rune, xd, yd, pos, down) =
  save arrowhead_w_f;
  save arrowhead_l_f;
  save A_width_f;
  save A_dir_d;
  arrowhead_w_f=1.6;
  arrowhead_l_f=3.2;
  if down:
    A_dir_d=180;
  else:
    A_dir_d=-125;
  fi;
  A_width_f=max(abs(sind(A_dir_d))*arrowhead_l_f,
                abs(cosd(A_dir_d))*arrowhead_w_f)*stem_w#/base_width#;
  beginrunechar(rune, A_width_f*base_width#+2*margin_width#);
    save A_y_f;
    A_y_f=0.6;
    if pos=1: %high
      draw_arrowhead(xmid, ymid+yd*yhalf*A_y_f, arrowhead_w_f, arrowhead_l_f, if yd=1: xd*A_dir_d else: xd*(180-A_dir_d) fi, 20);
    elseif pos=2: %mid
      draw_arrowhead(xmid, ymid               , arrowhead_w_f, arrowhead_l_f, if yd=1: xd*A_dir_d else: xd*(180-A_dir_d) fi, 20);
    elseif pos=3: %low
      draw_arrowhead(xmid, ymid-yd*yhalf*A_y_f, arrowhead_w_f, arrowhead_l_f, if yd=1: xd*A_dir_d else: xd*(180-A_dir_d) fi, 20);
    fi;
  endchar;
enddef;

% o, a
def draw_anglo_o(expr rune, xd, yd, two) =
  beginrunechar(rune, 0.87*base_width#+2*margin_width#);
    save A_ysep_f;
    save A_ydrop_f;
    save A_ymid_f;
    save o_x_f;
    A_ysep_f=0.26;
    A_ydrop_f=0.4;
    A_ymid_f=1-A_ysep_f;
    o_x_f=0.23;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymidred(yd)+yd*yhalfred*(A_ymid_f+A_ysep_f), jointrounding,
                     xmid+xd*xhalf*o_x_f, ymidred(yd)+yd*yhalfred*(A_ymid_f+A_ysep_f-A_ydrop_f), jointrounding, 0, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymidred(yd)+yd*yhalfred*(A_ymid_f-A_ysep_f), jointrounding,
                     xmid+xd*xhalf*o_x_f, ymidred(yd)+yd*yhalfred*(A_ymid_f-A_ysep_f-A_ydrop_f), if two: jointrounding else: endrounding fi, 0, tightness_f, 40);
    filldraw barpath(xmid+xd*xhalf*o_x_f, ymidred(yd)+yd*yhalfred*(A_ymid_f+A_ysep_f-A_ydrop_f), jointrounding,
                     xmid+xd*xhalf, ymidred(yd)+yd*yhalfred*(A_ymid_f+A_ysep_f), endrounding, 0, tightness_f, 50);
    if two:
      filldraw barpath(xmid+xd*xhalf*o_x_f, ymidred(yd)+yd*yhalfred*(A_ymid_f-A_ysep_f-A_ydrop_f), jointrounding,
                       xmid+xd*xhalf, ymidred(yd)+yd*yhalfred*(A_ymid_f-A_ysep_f), endrounding, 0, tightness_f, 60);
    fi;
  endchar;
enddef;

% \AA
def draw_normal_double_A(expr rune, xd, yd, three, stlb, sblb) = % Skip Top Left Bar, Skip Bottom Left Bar
  beginrunechar(rune, 1.05*base_width#+2*margin_width#);
    save A_ysep_f;
    save A_ydrop_f;
    if three:
      A_ysep_f=0.36;
    else:
      A_ysep_f=0.24;
    fi;
    A_ydrop_f=0.3;
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    if stlb:
      filldraw barpath(xmid,          ymid+yd*yhalf*(A_ysep_f), endrounding,
                       xmid+xd*xhalf, ymid+yd*yhalf*(A_ysep_f-A_ydrop_f), endrounding, 0, tightness_f, 30);
    else:
      filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(A_ysep_f+A_ydrop_f), endrounding,
                       xmid+xd*xhalf, ymid+yd*yhalf*(A_ysep_f-A_ydrop_f), endrounding, 0, tightness_f, 30);
    fi;
    if three:
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(A_ydrop_f), endrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*(-A_ydrop_f), endrounding, 0, tightness_f, 40);
    fi;
    if sblb:
      filldraw barpath(xmid,          ymid+yd*yhalf*(-A_ysep_f), endrounding,
                       xmid+xd*xhalf, ymid+yd*yhalf*(-A_ysep_f-A_ydrop_f), endrounding, 0, tightness_f, 50);
    else:
      filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(-A_ysep_f+A_ydrop_f), endrounding,
                       xmid+xd*xhalf, ymid+yd*yhalf*(-A_ysep_f-A_ydrop_f), endrounding, 0, tightness_f, 50);
    fi;
  endchar;
enddef;

% r
def draw_normal_r(expr rune, xd, yd, closed, topdot) =
  beginrunechar(rune, topbarred*0.92*base_width#+2*margin_width#);
    save r_xup_f;
    save r_yup_f;
    save r_xmid_f;
    save r_ymid_f;
    save r_curve_f;
    r_xup_f=0.78;
    r_yup_f=0.36;
    if closed:
      r_ymid_f=0;
      r_xmid_f=0.9;
    else:
      r_ymid_f=0.06;
      r_xmid_f=0.3;
    fi;
    r_curve_f=0.63+0.37*abs(xd*yd*curve_d-45)/45;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf+xd*1, ymidred(yd)+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf*r_xup_f, ymidred(yd)+yd*yhalfred*r_yup_f, jointrounding, -r_curve_f*xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf*r_xup_f, ymidred(yd)+yd*yhalfred*r_yup_f, jointrounding,
                     xmid-xd*xhalf*r_xmid_f, ymidred(yd)-yd*yhalfred*r_ymid_f, jointrounding, -r_curve_f*xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid-xd*xhalf*r_xmid_f, ymidred(yd)-yd*yhalfred*r_ymid_f, jointrounding,
                     xmid+xd*xhalf, ymidred(yd)-yd*yhalfred, toprounding, -r_curve_f*xd*yd*curve_d, tightness_f, 50);
    if topdot:
      filldraw dotpath(xmid-xd*xhalf/3, ymid+yd*yhalfred*(1+r_yup_f+r_ymid_f)/3, freedot_f, 60);
    fi;

  endchar;
enddef;

% r
def draw_greenland_r(expr rune, xd, yd) =
  beginrunechar(rune, topbarred*0.92*base_width#+2*margin_width#);
    save r_ytopend_f;
    save r_ybottomstart_f;
    r_ytopend_f=0.0;
    r_ybottomstart_f=0.2;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf+xd*1, ymid+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalfred*r_ytopend_f, endrounding, -xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalfred*r_ybottomstart_f, jointrounding,
                     xmid+xd*xhalf, ymid-yd*yhalfred, endrounding, -xd*yd*curve_d, tightness_f, 40);
  endchar;
enddef;

% k
def draw_normal_k(expr rune, xd, yd, topdot, middot, midtwig, two) =
  beginrunechar(rune, 0.9*base_width#+2*margin_width#);
    save k_ymid_f;
    k_ymid_f=0.1;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*k_ymid_f, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, toprounding, xd*yd*curve_d, tightness_f, 30);
    if two:
      filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf*k_ymid_f, jointrounding,
                       xmid+xd*xhalf, ymid-yd*yhalf, toprounding, -xd*yd*curve_d, tightness_f, 40);
    fi;
    if topdot:
      filldraw dotpath(xmid-xd*xhalf/3+xd*stem_w/3, ymid+yd*yhalf*(2+k_ymid_f)/3+yd*stem_w/2, freedot_f, 50);
      if two:
        filldraw dotpath(xmid-xd*xhalf/3+xd*stem_w/3, ymid-yd*yhalf*(2+k_ymid_f)/3-yd*stem_w/2, freedot_f, 60);
      fi;
    fi;
    if middot:
      filldraw dotpath(xmid-xd*xhalf, ymid+yd*yhalf*k_ymid_f+yd*stem_w/3, stemdot_f, 70);
    fi;
    if midtwig:
      filldraw barpath(xmid-xd*xhalf-xd*twig_length_f*stem_w/2, ymid+yd*yhalf*k_ymid_f-yd*3*stem_w/2, endrounding,
                       xmid-xd*xhalf+xd*twig_length_f*stem_w/2, ymid+yd*yhalf*k_ymid_f-yd*3*stem_w/2, endrounding, 0, tightness_f, 80);
    fi;
  endchar;
enddef;

% k
def draw_primitive_k(expr rune, xd, yd) =
  beginrunechar(rune, 0.72*base_width#+2*margin_width#);
    save k_y_f;
    k_y_f=0.54;
    filldraw barpath(xmid-xd*xhalf, ymid, jointrounding,
                     xmid+xd*xhalf, ymid-yd*yhalf*k_y_f, endrounding, xd*yd*curve_d, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*k_y_f, endrounding, -xd*yd*curve_d, tightness_f, 30);
  endchar;
enddef;

% k (rotated 90)
def draw_primitive_kup(expr rune, xd, yd, stem, big) =
  beginrunechar(rune, 1.12*base_width#+2*margin_width#);
    save k_yupsep_f;
    save k_yupmid_f;
    if big:
      k_yupsep_f=0.4;
      k_yupmid_f=0.6;
    else:
      k_yupsep_f=1/3;
      k_yupmid_f=0.0;
    fi;
    if stem:
      filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                       xmid, ymid+yd*yhalf*(k_yupmid_f-k_yupsep_f), jointrounding, 0, tightness_f, 20);
    fi;
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(k_yupmid_f+k_yupsep_f), endrounding,
                     xmid, ymid+yd*yhalf*(k_yupmid_f-k_yupsep_f), jointrounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf, ymid+yd*yhalf*(k_yupmid_f+k_yupsep_f), endrounding,
                     xmid, ymid+yd*yhalf*(k_yupmid_f-k_yupsep_f), jointrounding, -xd*yd*curve_d, tightness_f, 40);
  endchar;
enddef;

% g
def draw_primitive_g(expr rune, xd, yd, v_stem, h_angles, eye) =
  save g_width_f;
  if v_stem:
    g_width_f=1.3;
  else:
    g_width_f=1.1;
  fi;
  beginrunechar(rune, g_width_f*base_width#+2*margin_width#);
    save eye_x_f;
    save eye_y_f;
    save eye_curve_f;
    save h_angle_f;
    eye_x_f=0.8 - if mag <= 1: 0; elseif mag <= 2: (mag-1)/5; else: 0.2; fi;
    eye_y_f=0.45 - if mag <= 1: 0; elseif mag <= 2: (mag-1)/5; else: 0.2; fi;
    eye_curve_f=0.8;
    h_angle_f=0.3;
    if v_stem:
      filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                       xmid, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    fi;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf, toprounding,
                     xmid+xd*xhalf, ymid-yd*yhalf, toprounding, 0, tightness_f, 40);
    if eye:
      filldraw barpath(xmid, ymid+yd*yhalf*eye_y_f, jointrounding,
                       xmid-xd*xhalf*eye_x_f, ymid, jointrounding, eye_curve_f*xd*yd*curve_d, tightness_f, 50);
      filldraw barpath(xmid-xd*xhalf*eye_x_f, ymid, jointrounding,
                       xmid, ymid-yd*yhalf*eye_y_f, jointrounding, eye_curve_f*xd*yd*curve_d, tightness_f, 60);
      filldraw barpath(xmid, ymid-yd*yhalf*eye_y_f, jointrounding,
                       xmid+xd*xhalf*eye_x_f, ymid, jointrounding, eye_curve_f*xd*yd*curve_d, tightness_f, 70);
      filldraw barpath(xmid+xd*xhalf*eye_x_f, ymid, jointrounding,
                       xmid, ymid+yd*yhalf*eye_y_f, jointrounding, eye_curve_f*xd*yd*curve_d, tightness_f, 80);
    elseif h_angles:
      filldraw barpath(xmid-xd*xhalf*h_angle_f, ymid+yd*yhalf*h_angle_f, jointrounding,
                       xmid-xd*xhalf*eye_x_f, ymid, jointrounding, eye_curve_f*xd*yd*curve_d, tightness_f, 50);
      filldraw barpath(xmid-xd*xhalf*eye_x_f, ymid, jointrounding,
                       xmid-xd*xhalf*h_angle_f, ymid-yd*yhalf*h_angle_f, jointrounding, eye_curve_f*xd*yd*curve_d, tightness_f, 60);
      filldraw barpath(xmid+xd*xhalf*h_angle_f, ymid-yd*yhalf*h_angle_f, jointrounding,
                       xmid+xd*xhalf*eye_x_f, ymid, jointrounding, eye_curve_f*xd*yd*curve_d, tightness_f, 70);
      filldraw barpath(xmid+xd*xhalf*eye_x_f, ymid, jointrounding,
                       xmid+xd*xhalf*h_angle_f, ymid+yd*yhalf*h_angle_f, jointrounding, eye_curve_f*xd*yd*curve_d, tightness_f, 80);
    fi;
  endchar;
enddef;

% w
def draw_primitive_w(expr rune, xd, yd) =
  beginrunechar(rune, topbarred*0.7*base_width#+2*margin_width#);
    save w_y_f;
    w_y_f=0.0;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymidred(yd)+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf, ymidred(yd)+yd*yhalfred*(1+w_y_f)/2, jointrounding, -xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf, ymidred(yd)+yd*yhalfred*(1+w_y_f)/2, jointrounding,
                     xmid-xd*xhalf, ymidred(yd)+yd*yhalfred*w_y_f, jointrounding, -xd*yd*curve_d, tightness_f, 40);
  endchar;
enddef;

% h, n, a
def draw_normal_h(expr rune, xd, yd, NWSE, NESW, dot) =
  beginrunechar(rune, 0.95*base_width#+2*margin_width#);
    save h_y_f;
    h_y_f=0.36;
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    if NWSE:
      filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*h_y_f, endrounding,
                       xmid+xd*xhalf, ymid-yd*yhalf*h_y_f, endrounding, 0, tightness_f, 30);
    fi;
    if NESW:
      filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf*h_y_f, endrounding,
                       xmid+xd*xhalf, ymid+yd*yhalf*h_y_f, endrounding, 0, tightness_f, 40);
    fi;
    if dot:
      filldraw dotpath(xmid, ymid, stemdot_f, 50);
    fi;
  endchar;
enddef;

% h
def draw_medieval_h(expr rune, xd, yd, twigs, offset) =
  beginrunechar(rune, 1.2*base_width#+2*margin_width#);
    for i=0 step 1 until twigs-1:
    filldraw barpath(xmid, ymid, jointrounding,
                     xmid+xd*xhalf*cosd(i/twigs*360+offset), ymid+yd*xhalf*sind(i/twigs*360+offset), endrounding, 0, tightness_f, 20+i*10);
    endfor;
  endchar;
enddef;

% H
def draw_medieval_bigh(expr rune, xd, yd) =
  save bigh_twigs_n;
  save bigh_offset_d;
  bigh_twigs_n=8;
  bigh_offset_d=90;
  beginrunechar(rune, 1.2*base_width#+2*margin_width#);
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    for i=1 step 1 until bigh_twigs_n/2-1:
    filldraw barpath(xmid-xd*xhalf*cosd(i/bigh_twigs_n*360+bigh_offset_d), ymid-yd*xhalf*sind(i/bigh_twigs_n*360+bigh_offset_d), jointrounding,
                     xmid+xd*xhalf*cosd(i/bigh_twigs_n*360+bigh_offset_d), ymid+yd*xhalf*sind(i/bigh_twigs_n*360+bigh_offset_d), jointrounding, 0, tightness_f, 20+i*10);
    endfor;
  endchar;
enddef;

% n, a
def draw_shorttwig_n(expr rune, xd, yd, middot, sidedot) =
  save n_width_f;
  if sidedot:
    n_width_f=0.75;
  else:
    n_width_f=0.55;
  fi;
  beginrunechar(rune,n_width_f*base_width#+2*margin_width#);
    save n_ymid_f;
    save n_ydrop_f;
    save n_xdot_f;
    save n_ydot_f;
    n_ymid_f=0.0;
    n_ydrop_f=0.18;
    n_xdot_f=0.17;
    n_ydot_f=0.12;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(n_ymid_f+n_ydrop_f), endrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*(n_ymid_f-n_ydrop_f), endrounding, 0, tightness_f, 30);

    if middot:
      filldraw dotpath(xmid-xd*xhalf, ymid+yd*yhalf*(n_ymid_f+n_ydrop_f)-yd*stem_w/3, stemdot_f, 40);
    fi;
    if sidedot:
      filldraw dotpath(xmid-xd*xhalf*n_xdot_f, ymid+yd*yhalf*(n_ymid_f-n_ydrop_f-n_ydot_f), freedot_f, 50);
    fi;
  endchar;
enddef;

% h
def draw_primitive_h(expr rune, xd, yd, top, twobars) =
  beginrunechar(rune, 1.1*base_width#+2*margin_width#);
    save h_ymid_f;
    save h_ytop_f;
    save h_ysep_f;
    h_ymid_f=0.16;
    h_ytop_f=0.96;
    h_ysep_f=0.16;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 30);
    if top:
      filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalfred*h_ytop_f, jointrounding,
                       xmid+xd*xhalf, ymid-yd*yhalfred*h_ytop_f, jointrounding, 0, tightness_f, 40);
    else:
      if twobars:
        filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(h_ymid_f-h_ysep_f), jointrounding,
                         xmid+xd*xhalf, ymid+yd*yhalf*(-h_ymid_f-h_ysep_f), jointrounding, 0, tightness_f, 40);
        filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(h_ymid_f+h_ysep_f), jointrounding,
                         xmid+xd*xhalf, ymid+yd*yhalf*(-h_ymid_f+h_ysep_f), jointrounding, 0, tightness_f, 40);
      else:
        filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*h_ymid_f, jointrounding,
                         xmid+xd*xhalf, ymid-yd*yhalf*h_ymid_f, jointrounding, 0, tightness_f, 40);
      fi;
    fi;
  endchar;
enddef;

% i
def draw_normal_i(expr rune, xd, yd, dot, twig, high, top, twodots, circle) =
  save i_width_f;
  if twig:
    i_width_f=twig_length_f+1;
  elseif dot or twodots:
    i_width_f=stemdot_f;
  elseif circle:
    i_width_f=stemcircle_f;
  else:
    i_width_f=1.0;
  fi;
  beginrunechar(rune, i_width_f*stem_w#+2*margin_width#);
    save i_ystem_f;
    save i_ydottwig_f;
    if top:
      i_ystem_f=0.7;
      i_ydottwig_f=0.7;
    else:
      i_ystem_f=1.0;
      if high:
        i_ydottwig_f=0.6;
      elseif twodots:
        i_ydottwig_f=0.3;
      else: %mid
        i_ydottwig_f=0.0;
      fi;
    fi;
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf*i_ystem_f, toprounding, 0, tightness_f, 20);
    if dot:
      filldraw dotpath(xmid, ymid+yd*yhalf*i_ydottwig_f, stemdot_f, 30);
    elseif twodots:
      filldraw dotpath(xmid, ymid+yd*yhalf*i_ydottwig_f, stemdot_f, 30);
      filldraw dotpath(xmid, ymid-yd*yhalf*i_ydottwig_f, stemdot_f, 40);
    fi;
    if twig:
      filldraw barpath(xmid-twig_length_f*stem_w/2, ymid+yd*yhalf*i_ydottwig_f, endrounding,
                       xmid+twig_length_f*stem_w/2, ymid+yd*yhalf*i_ydottwig_f, endrounding, 0, tightness_f, 50);
    fi;
    if circle:
      draw_circle(xmid, ymid+yd*yhalf*i_ydottwig_f, stemcircle_f, 60);
    fi;
  endchar;
enddef;

% roek i
def draw_roek_i(expr rune, xd, yd) =
  beginrunechar(rune, 1.3*base_width#+2*margin_width#);
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid+1,        ymidred(yd)-yd*yhalfred,   jointrounding,
                     xmid+xd*xhalf, ymidred(yd)-yd*yhalfred/2, jointrounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf, ymidred(yd)-yd*yhalfred/2, jointrounding,
                     xmid,          ymid,                      jointrounding, xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid,          ymidred(yd)+yd*yhalfred,   jointrounding,
                     xmid-xd*xhalf, ymidred(yd)+yd*yhalfred/2, jointrounding, xd*yd*curve_d, tightness_f, 50);
    filldraw barpath(xmid-xd*xhalf, ymidred(yd)+yd*yhalfred/2, jointrounding,
                     xmid-1,        ymid,                      jointrounding, xd*yd*curve_d, tightness_f, 60);
  endchar;
enddef;

% j
def draw_primitive_j(expr rune, xd, yd) =
  beginrunechar(rune, 1.0*base_width#+2*margin_width#);
    save j_y_f;
    j_y_f=2/9;
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*j_y_f, jointrounding,
                     xmid, ymid+yd*yhalf*3*j_y_f, endrounding, -xd*yd*curve_d, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*j_y_f, jointrounding,
                     xmid, ymid-yd*yhalf*j_y_f, endrounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf*j_y_f, jointrounding,
                     xmid, ymid-yd*yhalf*3*j_y_f, endrounding, -xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf*j_y_f, jointrounding,
                     xmid, ymid+yd*yhalf*j_y_f, endrounding, xd*yd*curve_d, tightness_f, 50);
  endchar;
enddef;

% j
def draw_primitive_jup(expr rune, xd, yd) =
  beginrunechar(rune, 1.3*base_width#+2*margin_width#);
    save j_yup_f;
    j_yup_f=0.50;
    filldraw barpath(xmid-xd*xhalf, ymid, endrounding,
                     xmid-xd*xhalf/3, ymid-yd*yhalf*j_yup_f, jointrounding, xd*yd*curve_d, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf/3, ymid-yd*yhalf*j_yup_f, jointrounding,
                     xmid+xd*xhalf/3, ymid, endrounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf/3, ymid, endrounding,
                     xmid+xd*xhalf/3, ymid+yd*yhalf*j_yup_f, jointrounding, -xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid+xd*xhalf/3, ymid+yd*yhalf*j_yup_f, jointrounding,
                     xmid+xd*xhalf, ymid, endrounding, -xd*yd*curve_d, tightness_f, 50);
  endchar;
enddef;

% j
def draw_anglo_j(expr rune, xd, yd) =
  beginrunechar(rune, 1.6*base_width#+2*margin_width#);
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid, endrounding,
                     xmid+xd*xhalf, ymid, endrounding, 0, tightness_f, 30);
  endchar;
enddef;

% I
def draw_primitive_I(expr rune, xd, yd) =
  beginrunechar(rune, topbarred*1.1*base_width#+2*margin_width#);
  save I_y_f;
  save I_curve_f;
  I_y_f=0.48;
  I_curve_f=0.25;
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid+xd*1, ymid+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalfred*I_y_f, endrounding, -I_curve_f*xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid-xd*1, ymid-yd*yhalfred, jointrounding,
                     xmid-xd*xhalf, ymid-yd*yhalfred*I_y_f, endrounding, -I_curve_f*xd*yd*curve_d, tightness_f, 40);
  endchar;
enddef;

% roek a
def draw_roek_a(expr rune, xd, yd) =
  beginrunechar(rune, 0.65*base_width#+2*margin_width#);
    save a_y_f;
    save a_ycorner_f;
    a_y_f=0.16;
    a_ycorner_f=0.36;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf*a_y_f,       jointrounding,
                     xmid+xd*xhalf, ymid-yd*yhalf*a_ycorner_f, jointrounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf*a_ycorner_f, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*a_ycorner_f, jointrounding, xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid+xd*xhalf, ymid+yd*yhalf*a_ycorner_f, jointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalf*a_y_f,       jointrounding, xd*yd*curve_d, tightness_f, 50);
  endchar;
enddef;

% p
def draw_primitive_p(expr rune, xd, yd) =
  beginrunechar(rune, topbarred*1.0*base_width#+2*margin_width#);
    save p_x_f;
    save p_y_f;
    save p_curve_f;
    p_x_f=0.06;
    p_y_f=0.6;
    p_curve_f=0.25;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, topjointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalfred, jointrounding,
                     xmid+xd*xhalf*p_x_f, ymid-yd*yhalfred*p_y_f, jointrounding, -p_curve_f*xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalfred, jointrounding,
                     xmid+xd*xhalf*p_x_f, ymid-yd*yhalfred*p_y_f, jointrounding, p_curve_f*xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf*p_x_f, ymid+yd*yhalfred*p_y_f, jointrounding, p_curve_f*xd*yd*curve_d, tightness_f, 50);
    filldraw barpath(xmid+xd*xhalf, ymid+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf*p_x_f, ymid+yd*yhalfred*p_y_f, jointrounding, -p_curve_f*xd*yd*curve_d, tightness_f, 60);
  endchar;
enddef;

% p
def draw_frisian_p(expr rune, xd, yd) =
  beginrunechar(rune, topbarred*0.63*base_width#+2*margin_width#);
    save p_y_f;
    save p_curve_f;
    p_y_f=0.55;
    p_curve_f=0.25;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, topjointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalfred, jointrounding,
                     xmid+xd*xhalf, ymid-yd*yhalfred*p_y_f, jointrounding, p_curve_f*xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalfred*p_y_f, jointrounding, -p_curve_f*xd*yd*curve_d, tightness_f, 40);
  endchar;
enddef;

% s
def draw_normal_s(expr rune, xd, yd, twobars, chair, high, twigs, flat) =
  save s_width_f;
  if twigs:
    s_width_f=0.80;
  else:
    s_width_f=0.75;
  fi;
  beginrunechar(rune, s_width_f*base_width#+2*margin_width#);
    save s_xtop_f;
    save s_ymid_f;
    save s_ymidmid_f;
    save s_ysep_f;
    save s_ytwig_f;
    if chair or high or twigs:
      s_xtop_f=1.0;
    else:
      s_xtop_f=0.8;
    fi;
    if twobars:
      s_ysep_f=0.22;
    else:
      s_ysep_f=0.0;
    fi;
    if high:
      s_ymidmid_f=0.68;
      s_ymid_f=0.28;
    else:
      s_ymidmid_f=0.0;
      if flat:
        s_ymid_f=-0.08;
      else:
        s_ymid_f=0.08;
      fi;
    fi;
    s_ytwig_f=0.6;
    filldraw barpath(xmid-xd*xhalf*s_xtop_f, ymid+yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf*(s_ymidmid_f-s_ymid_f-s_ysep_f), jointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*(s_ymidmid_f-s_ymid_f-s_ysep_f), jointrounding,
                     xmid+xd*xhalf*(1+s_xtop_f)/2, ymid+yd*yhalf*(s_ymidmid_f+s_ymid_f-s_ysep_f), jointrounding, 0, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf*(1+s_xtop_f)/2, ymid+yd*yhalf*(s_ymidmid_f-s_ymid_f+s_ysep_f), jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*(s_ymidmid_f+s_ymid_f+s_ysep_f), jointrounding, 0, tightness_f, 40);
    filldraw barpath(xmid+xd*xhalf, ymid+yd*yhalf*(s_ymidmid_f+s_ymid_f+s_ysep_f), jointrounding,
                     xmid+xd*xhalf*s_xtop_f, ymid-yd*yhalf, toprounding, 0, tightness_f, 50);
    if chair:
      filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                       xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 60);
    fi;
    if twigs:
      filldraw barpath(xmid-xd*xhalf*s_xtop_f-xd*twig_length_f*stem_w/2, ymid+yd*yhalf*s_ytwig_f, endrounding,
                       xmid-xd*xhalf*s_xtop_f+xd*twig_length_f*stem_w/2, ymid+yd*yhalf*s_ytwig_f, endrounding, 0, tightness_f, 70);
      filldraw barpath(xmid+xd*xhalf*s_xtop_f-xd*twig_length_f*stem_w/2, ymid-yd*yhalf*s_ytwig_f, endrounding,
                       xmid+xd*xhalf*s_xtop_f+xd*twig_length_f*stem_w/2, ymid-yd*yhalf*s_ytwig_f, endrounding, 0, tightness_f, 80);
    fi;
  endchar;
enddef;

% s
def draw_primitive_s(expr rune, xd, yd, strokes) =
  save s_width_f;
  s_width_f=(stem_h#/strokes+stem_w#)/base_width#;
  beginrunechar(rune, s_width_f*base_width#+2*margin_width#);
    xdir:=1;
    for i=strokes step -2 until -strokes+2:
      filldraw barpath(xmid+xdir*xd*xhalf, ymid+yd*yhalf*i/strokes, if i=strokes:toprounding else: jointrounding fi,
                       xmid-xdir*xd*xhalf, ymid+yd*yhalf*(i-2)/strokes, if i=-strokes+2:toprounding else: jointrounding fi, 0, tightness_f, (i+strokes)*10);
      xdir:=-xdir;
    endfor;
  endchar;
enddef;

%s
def draw_shorttwig_s(expr rune, xd, yd, dot, twig, hook, arrow, circle) =
  save s_width_f;
  if twig:
    s_width_f=twig_length_f+1;
  elseif hook:
    s_width_f=0.7*twig_length_f+1;
  elseif dot:
    s_width_f=endstemdot_f;
  elseif arrow:
    s_width_f=1.4*twig_length_f+1;
  elseif circle:
    s_width_f=endstemcircle_f;
  else:
    s_width_f=1.0;
  fi;
  beginrunechar(rune, s_width_f*stem_w#+2*margin_width#);
    save s_y_f;
    save s_hooky_f;
    s_y_f=0.1;
    s_hooky_f=0.4;
    filldraw barpath(xmid if hook: -xd*xhalf fi, ymid+yd*yhalf*s_y_f, toprounding,
                     xmid if hook: -xd*xhalf fi, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    if dot:
      filldraw dotpath(xmid, ymid+yd*yhalf*s_y_f, endstemdot_f, 30);
    fi;
    if twig:
      filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*s_y_f, endrounding,
                       xmid+xd*xhalf, ymid+yd*yhalf*s_y_f, endrounding, 0, tightness_f, 40);
    fi;
    if hook:
      filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*s_y_f, jointrounding,
                       xmid+xd*xhalf, ymid+yd*yhalf*s_hooky_f, endrounding, 0, tightness_f, 50);
    elseif arrow:
      filldraw barpath(xmid, ymid+yd*yhalf*s_y_f, jointrounding,
                       xmid-xd*xhalf, ymid+yd*yhalf*s_hooky_f, endrounding, 0, tightness_f, 50);
      filldraw barpath(xmid, ymid+yd*yhalf*s_y_f, jointrounding,
                       xmid+xd*xhalf, ymid+yd*yhalf*s_hooky_f, endrounding, 0, tightness_f, 60);
    elseif circle:
      draw_circle(xmid, ymid+yd*(yhalf*s_y_f-endstemcircle_f*stem_w/2), endstemcircle_f, 50);
    fi;
  endchar;
enddef;

% t
def draw_normal_t(expr rune, xd, yd, middot, topdots, doublearrow, arlaug, mid) =
  save t_width_f;
  if topdots:
    t_width_f=1.28;
  else:
    t_width_f=1.1;
  fi;
  beginrunechar(rune, topbarred*t_width_f*base_width#+2*margin_width#);
    save t_y_f;
    save t_curve_f;
    save t_topdotx_f;
    t_curve_f=0.25;
    t_y_f=0.42;
    t_topdotx_f=0.43;
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    if mid:
      filldraw barpath(xmid+xd*2, ymid+yd*yhalf*(1-t_y_f)/2, jointrounding,
                       xmid+xd*xhalf, ymid-yd*yhalf*(1-t_y_f)/2, endrounding, -t_curve_f*xd*yd*curve_d, tightness_f, 30);
    else:
      filldraw barpath(xmid+xd*2, ymidred(yd)+yd*yhalfred, jointrounding,
                       xmid+xd*xhalf, ymidred(yd)+yd*yhalfred*t_y_f, endrounding, -t_curve_f*xd*yd*curve_d, tightness_f, 30);
    fi;
    if mid or arlaug:
      filldraw barpath(xmid-xd*2, ymid+yd*yhalf*(1-t_y_f)/2, jointrounding,
                       xmid-xd*xhalf, ymid-yd*yhalf*(1-t_y_f)/2, endrounding, t_curve_f*xd*yd*curve_d, tightness_f, 40);
    else:
      filldraw barpath(xmid-xd*2, ymidred(yd)+yd*yhalfred, jointrounding,
                       xmid-xd*xhalf, ymidred(yd)+yd*yhalfred*t_y_f, endrounding, t_curve_f*xd*yd*curve_d, tightness_f, 40);
    fi;
    if middot:
      filldraw dotpath(xmid, ymidred(yd), stemdot_f, 50);
    fi;
    if topdots:
      filldraw dotpath(xmid-xd*xhalf*t_topdotx_f, ymidred(yd)+yd*yhalfred*t_y_f, freedot_f, 60);
      filldraw dotpath(xmid+xd*xhalf*t_topdotx_f, ymidred(yd)+yd*yhalfred*t_y_f, freedot_f, 70);
    fi;
    if doublearrow:
      filldraw barpath(xmid+2, ymidred(yd)-yd*yhalfred, jointrounding,
                       xmid+xd*xhalf, ymidred(yd)-yd*yhalfred*t_y_f, endrounding, xd*yd*-t_curve_f*xd*yd*curve_d, tightness_f, 80);
      filldraw barpath(xmid-2, ymidred(yd)-yd*yhalfred, jointrounding,
                       xmid-xd*xhalf, ymidred(yd)-yd*yhalfred*t_y_f, endrounding, xd*yd*t_curve_f*xd*yd*curve_d, tightness_f, 90);
    fi;
  endchar;
enddef;

% b
def draw_normal_b(expr rune, xd, yd, topdot, bottomdot, separated) =
  save b_width_f;
  if separated:
    b_width_f=0.6;
  else:
    b_width_f=0.75;
  fi;
  beginrunechar(rune, topbarred*b_width_f*base_width#+2*margin_width#);
    save b_yup_f;
    save b_ymid_f;
    save b_curve_f;
    if separated:
      b_yup_f=0.65;
      b_ymid_f=0.3;
    else:
      b_yup_f=0.4;
      b_ymid_f=0.0;
    fi;
    b_curve_f=0.63+0.37*abs(curve_d-45)/45;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, topjointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalfred*b_yup_f, jointrounding, -b_curve_f*xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf, ymid+yd*yhalfred*b_yup_f, jointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalfred*b_ymid_f, jointrounding, -b_curve_f*xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalfred*b_ymid_f, jointrounding,
                     xmid+xd*xhalf, ymid-yd*yhalfred*b_yup_f, jointrounding, -b_curve_f*xd*yd*curve_d, tightness_f, 50);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalfred*b_yup_f, jointrounding,
                     xmid-xd*xhalf, ymid-yd*yhalfred, jointrounding, -b_curve_f*xd*yd*curve_d, tightness_f, 60);
    if topdot:
      filldraw dotpath(xmid-xd*xhalf/4, ymid+yd*yhalfred*(1+b_yup_f+b_ymid_f)/3, freedot_f, 70);
    fi;
    if bottomdot:
      filldraw dotpath(xmid-xd*xhalf/4, ymid-yd*yhalfred*(1+b_yup_f+b_ymid_f)/3, freedot_f, 80);
    fi;
  endchar;
enddef;

% e
def draw_primitive_e(expr rune, xd, yd, closed, midstem) =
  beginrunechar(rune, topbarred*1.25*base_width#+2*margin_width#);
    save e_y_f;
    save e_curve_f;
    e_y_f=0.4;
    e_curve_f=0.25;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf+1, ymid+yd*yhalfred, jointrounding,
                     xmid, ymid+yd*yhalfred*e_y_f, jointrounding, e_curve_f*xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid+xd*xhalf-1, ymid+yd*yhalfred, jointrounding,
                     xmid, ymid+yd*yhalfred*e_y_f, jointrounding, -e_curve_f*xd*yd*curve_d, tightness_f, 50);
    if closed:
      filldraw barpath(xmid-xd*xhalf+1, ymid-yd*yhalfred, jointrounding,
                       xmid, ymid-yd*yhalfred*e_y_f, jointrounding, -e_curve_f*xd*yd*curve_d, tightness_f, 60);
      filldraw barpath(xmid+xd*xhalf-1, ymid-yd*yhalfred, jointrounding,
                       xmid, ymid-yd*yhalfred*e_y_f, jointrounding, e_curve_f*xd*yd*curve_d, tightness_f, 70);
    fi;
    if midstem:
      filldraw barpath(xmid, ymid+yd*yhalfred*e_y_f, jointrounding,
                       xmid, ymid-yd*yhalfred*e_y_f, jointrounding, 0, tightness_f, 80);
    fi;
  endchar;
enddef;

% E
def draw_primitive_E(expr rune, xd, yd, closed) =
  beginrunechar(rune, topbarred*1.15*base_width#+2*margin_width#);
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalfred, jointrounding, 0, tightness_f, 40);
    if closed:
      filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalfred, jointrounding,
                       xmid+xd*xhalf, ymid-yd*yhalfred, jointrounding, 0, tightness_f, 40);
    fi;
  endchar;
enddef;

% m
def draw_normal_m(expr rune, xd, yd, dots, double, tree) =
  beginrunechar(rune, 1.3*base_width#+2*margin_width#);
    save m_y_f;
    save m_xdot_f;
    save m_ydot_f;
    m_xdot_f=0.4 + if mag <= 1: 0; elseif mag <= 2: (mag-1)/20; else: 0.05; fi;
    m_ydot_f=0.85;
    m_y_f=0.1;
    filldraw barpath(xmid, ymid-yd*yhalf, if tree:jointrounding else:toprounding fi,
                     xmid, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid, ymid+yd*yhalf*m_y_f, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, toprounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid, ymid+yd*yhalf*m_y_f, jointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, -xd*yd*curve_d, tightness_f, 40);
    if double:
      filldraw barpath(xmid, ymid-yd*yhalf*m_y_f, jointrounding,
                       xmid+xd*xhalf, ymid-yd*yhalf, toprounding, -xd*yd*curve_d, tightness_f, 50);
      filldraw barpath(xmid, ymid-yd*yhalf*m_y_f, jointrounding,
                       xmid-xd*xhalf, ymid-yd*yhalf, toprounding, xd*yd*curve_d, tightness_f, 60);
    elseif tree:
      filldraw barpath(xmid, ymid-yd*yhalf, jointrounding,
                       xmid+xd*xhalf, ymid-yd*yhalf*m_y_f, toprounding, xd*yd*curve_d, tightness_f, 50);
      filldraw barpath(xmid, ymid-yd*yhalf, jointrounding,
                       xmid-xd*xhalf, ymid-yd*yhalf*m_y_f, toprounding, -xd*yd*curve_d, tightness_f, 60);
    fi;
    if dots:
      filldraw dotpath(xmid+xd*xhalf*m_xdot_f, ymid+yd*yhalf*m_ydot_f, freedot_f, 70);
      filldraw dotpath(xmid-xd*xhalf*m_xdot_f, ymid+yd*yhalf*m_ydot_f, freedot_f, 80);
      if double:
        filldraw dotpath(xmid+xd*xhalf*m_xdot_f, ymid-yd*yhalf*m_ydot_f, freedot_f, 90);
        filldraw dotpath(xmid-xd*xhalf*m_xdot_f, ymid-yd*yhalf*m_ydot_f, freedot_f, 100);
      fi;
    fi;
  endchar;
enddef;

% m (rounded form)
def draw_normal_M(expr rune, xd, yd, dots) =
  beginrunechar(rune, 1.0*topbarred*base_width#+2*margin_width#);
    save M_ymid_f;
    save M_xdot_f;
    M_xdot_f=0.42;
    M_ymid_f=0.04;
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-1, ymidred(yd)+yd*yhalfred, jointrounding,
                     xmid-xd*xhalf, ymidred(yd)+yd*yhalfred*(1+M_ymid_f)/2, jointrounding, xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymidred(yd)+yd*yhalfred*(1+M_ymid_f)/2, jointrounding,
                     xmid, ymidred(yd)+yd*yhalfred*M_ymid_f, jointrounding, xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid, ymidred(yd)+yd*yhalfred*M_ymid_f, jointrounding,
                     xmid+xd*xhalf, ymidred(yd)+yd*yhalfred*(1+M_ymid_f)/2, jointrounding, xd*yd*curve_d, tightness_f, 50);
    filldraw barpath(xmid+xd*xhalf, ymidred(yd)+yd*yhalfred*(1+M_ymid_f)/2, jointrounding,
                     xmid+1, ymidred(yd)+yd*yhalfred, jointrounding, xd*yd*curve_d, tightness_f, 60);
    if dots:
      filldraw dotpath(xmid+xd*xhalf*M_xdot_f, ymidred(yd)+yd*yhalfred*(1+M_ymid_f)/2, freedot_f, 50);
      filldraw dotpath(xmid-xd*xhalf*M_xdot_f, ymidred(yd)+yd*yhalfred*(1+M_ymid_f)/2, freedot_f, 60);
    fi;
  endchar;
enddef;

% m
def draw_primitive_m(expr rune, xd, yd, big, top, double) =
  beginrunechar(rune, topbarred*1.3*base_width#+2*margin_width#);
    save m_ymid_f;
    save m_ysep_f;
    if big:
      m_ysep_f=1.0;
    else:
      m_ysep_f=0.5;
    fi;
    if top:
      m_ymid_f=0.5;
    else:
      m_ymid_f=0.0;
    fi;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, toprounding, 0, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymidred(yd)+yd*yhalfred*(m_ymid_f+m_ysep_f), jointrounding,
                     xmid+xd*xhalf, ymidred(yd)+yd*yhalfred*(m_ymid_f-m_ysep_f), jointrounding, 0, tightness_f, 40);
    filldraw barpath(xmid+xd*xhalf, ymidred(yd)+yd*yhalfred*(m_ymid_f+m_ysep_f), jointrounding,
                     xmid-xd*xhalf, ymidred(yd)+yd*yhalfred*(m_ymid_f-m_ysep_f), jointrounding, 0, tightness_f, 50);
    if double:
      filldraw barpath(xmid-xd*xhalf, ymidred(yd)-yd*yhalfred*(m_ymid_f+m_ysep_f), jointrounding,
                       xmid+xd*xhalf, ymidred(yd)-yd*yhalfred*(m_ymid_f-m_ysep_f), jointrounding, 0, tightness_f, 60);
      filldraw barpath(xmid+xd*xhalf, ymidred(yd)-yd*yhalfred*(m_ymid_f+m_ysep_f), jointrounding,
                       xmid-xd*xhalf, ymidred(yd)-yd*yhalfred*(m_ymid_f-m_ysep_f), jointrounding, 0, tightness_f, 70);
    fi;
  endchar;
enddef;

% m
def draw_staveless_m(expr rune, xd, yd) =
  beginrunechar(rune, freedot_f*stem_w#+2*margin_width#);
    save m_ytop_f;
    save m_ybottom_f;
    m_ytop_f=0.75;
    m_ybottom_f=0.25;
    filldraw dotpath(xmid, ymid+yd*yhalf*m_ytop_f, freedot_f, 20);
    filldraw dotpath(xmid, ymid+yd*yhalf*m_ybottom_f, freedot_f, 30);
  endchar;
enddef;

% l
def draw_normal_l(expr rune, xd, yd, middot, topdot, midtwig, toptwig, circle) =
  beginrunechar(rune, topbarred*0.73*base_width#+2*margin_width#);
    save l_y_f;
    save l_curve_f;
    save l_topdotx_f;
    save l_twigcrossing_f;
    save l_twigtwiglength_f;
    l_curve_f=0.25;
    l_y_f=0.4;
    l_topdotx_f=0.15;
    l_twigcrossing_f=0.65;
    l_twigtwiglength_f=0.3;
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalfred*l_y_f, endrounding, -l_curve_f*xd*yd*curve_d, tightness_f, 30);
    if middot:
      filldraw dotpath(xmid-xd*xhalf, ymidred(yd), stemdot_f, 40);
    fi;
    if topdot:
      filldraw dotpath(xmid-xd*xhalf*l_topdotx_f, ymid+yd*yhalfred*l_y_f, freedot_f, 50);
    fi;
    if midtwig:
      filldraw barpath(xmid-xd*xhalf-xd*twig_length_f*stem_w/2, ymidred(yd), endrounding,
                       xmid-xd*xhalf+xd*twig_length_f*stem_w/2, ymidred(yd), endrounding, 0, tightness_f, 60);
    fi;
    if toptwig:
      filldraw barpath(xmid+xd*xhalf*(((1-(-1))*l_twigcrossing_f-1)-(l_y_f-1)*yhalfred/xhalf*l_twigtwiglength_f), ymid+yd*yhalfred*(((l_y_f-1)*l_twigcrossing_f+1)+(1-(-1))*xhalf/yhalfred*l_twigtwiglength_f), endrounding,
                       xmid+xd*xhalf*(((1-(-1))*l_twigcrossing_f-1)+(l_y_f-1)*yhalfred/xhalf*l_twigtwiglength_f), ymid+yd*yhalfred*(((l_y_f-1)*l_twigcrossing_f+1)-(1-(-1))*xhalf/yhalfred*l_twigtwiglength_f), endrounding, -l_curve_f*xd*yd*curve_d, tightness_f, 70);
    fi;
    if circle:
      draw_circle(xmid-xd*xhalf, ymidred(yd), stemcircle_f, 80);
    fi;
  endchar;
enddef;

% \l
def draw_shorttwig_l(expr rune, xd, yd) =
  beginrunechar(rune, 0.7*base_width#+2*margin_width#);
    save l_topy_f;
    save l_twigy_f;
    l_topy_f=0.76;
    l_twigy_f=0.36;
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf, toprounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*l_topy_f, endrounding, 0, tightness_f, 20);
    filldraw barpath(xmid+xd*xhalf, ymid+yd*yhalf*l_twigy_f, jointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, endrounding, 0, tightness_f, 30);
  endchar;
enddef;

% L
def draw_shorttwig_L(expr rune, xd, yd) =
  beginrunechar(rune, 0.9*base_width#+2*margin_width#);
    save L_topy_f;
    save L_x_f;
    L_topy_f=0.3;
    L_x_f=0.1;
    filldraw barpath(xmid-xd*xhalf*L_x_f, ymid-yd*yhalf, toprounding,
                     xmid-xd*xhalf*L_x_f, ymid+yd*yhalf*(1+L_topy_f)/2, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf, endrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*L_topy_f, endrounding, 0, tightness_f, 30);
  endchar;
enddef;

% \ng
def draw_primitive_ng(expr rune, xd, yd, top, line, empty, belgthor) =
  save ng_width_f;
  if belgthor:
    ng_width_f=1.25;
  else:
    ng_width_f=1.0;
  fi;
  beginrunechar(rune, ng_width_f*base_width#+2*margin_width#);
    save ng_curve_f;
    if belgthor:
      ng_curve_f=1.0;
    else:
      ng_curve_f=0.25;
    fi;
    if line:
      if empty:
        if top:
          filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                           xmid, ymid+yd*yhalfred-2*yd*xhalf, toprounding, 0, tightness_f, 20);
        else:
          filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                           xmid, ymid-yd*xhalf, toprounding, 0, tightness_f, 20);
          filldraw barpath(xmid, ymid+yd*yhalf, toprounding,
                           xmid, ymid+yd*xhalf, toprounding, 0, tightness_f, 30);
        fi;
      else:
        filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                         xmid, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
      fi;
    fi;
    if top:
      filldraw barpath(xmid, ymid+yd*yhalfred, jointrounding,
                       xmid-xd*xhalf, ymid+yd*yhalfred-yd*xhalf, jointrounding, ng_curve_f*xd*yd*curve_d, tightness_f, 40);
      filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalfred-yd*xhalf, jointrounding,
                       xmid, ymid+yd*yhalfred-yd*2*xhalf, jointrounding, ng_curve_f*xd*yd*curve_d, tightness_f, 50);
      filldraw barpath(xmid, ymid+yd*yhalfred-yd*2*xhalf, jointrounding,
                       xmid+xd*xhalf, ymid+yd*yhalfred-yd*xhalf, jointrounding, ng_curve_f*xd*yd*curve_d, tightness_f, 60);
      filldraw barpath(xmid+xd*xhalf, ymid+yd*yhalfred-yd*xhalf, jointrounding,
                       xmid, ymid+yd*yhalfred, jointrounding, ng_curve_f*xd*yd*curve_d, tightness_f, 70);
    else:
      filldraw barpath(xmid, ymid+yd*xhalf, jointrounding,
                       xmid-xd*xhalf, ymid, jointrounding, ng_curve_f*xd*yd*curve_d, tightness_f, 40);
      filldraw barpath(xmid-xd*xhalf, ymid, jointrounding,
                       xmid, ymid-yd*xhalf, jointrounding, ng_curve_f*xd*yd*curve_d, tightness_f, 50);
      filldraw barpath(xmid, ymid-yd*xhalf, jointrounding,
                       xmid+xd*xhalf, ymid, jointrounding, ng_curve_f*xd*yd*curve_d, tightness_f, 60);
      filldraw barpath(xmid+xd*xhalf, ymid, jointrounding,
                       xmid, ymid+yd*xhalf, jointrounding, ng_curve_f*xd*yd*curve_d, tightness_f, 70);
    fi;
  endchar;
enddef;

% \NG
def draw_primitive_NG(expr rune, xd, yd) =
  beginrunechar(rune, 0.8*base_width#+2*margin_width#);
    save NG_curve_f;
    NG_curve_f=0.25;
    filldraw barpath(xmid-xd*xhalf, ymid+yd*xhalf, jointrounding,
                     xmid+xd*xhalf, ymid+yd*xhalf, jointrounding, -NG_curve_f*xd*yd*curve_d, tightness_f, 20);
    filldraw barpath(xmid+xd*xhalf, ymid+yd*xhalf, jointrounding,
                     xmid+xd*xhalf, ymid-yd*xhalf, jointrounding, -NG_curve_f*xd*yd*curve_d, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*xhalf, jointrounding,
                     xmid-xd*xhalf, ymid-yd*xhalf, jointrounding, -NG_curve_f*xd*yd*curve_d, tightness_f, 40);
    filldraw barpath(xmid-xd*xhalf, ymid-yd*xhalf, jointrounding,
                     xmid-xd*xhalf, ymid+yd*xhalf, jointrounding, -NG_curve_f*xd*yd*curve_d, tightness_f, 50);
  endchar;
enddef;

% \ng
def draw_anglo_ng(expr rune, xd, yd) =
  beginrunechar(rune, 0.98*base_width#+2*margin_width#);
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, jointrounding,
                     xmid+xd*xhalf, ymid, jointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid+xd*xhalf, ymid, jointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, jointrounding, 0, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf, jointrounding,
                     xmid-xd*xhalf, ymid, jointrounding, 0, tightness_f, 40);
    filldraw barpath(xmid-xd*xhalf, ymid, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, jointrounding, 0, tightness_f, 50);
  endchar;
enddef;

% o
def draw_primitive_o(expr rune, xd, yd) =
  beginrunechar(rune, 1.4*base_width#+2*margin_width#);
    save o_x_f;
    save o_y_f;
    save oround_x_f;
    save oround_y_f;
    save oround_curve_d;
    save oroundsharp_curve_d;
    o_x_f=0.72;
    o_y_f=0.44;
    oround_x_f=0.52;
    oround_y_f=0.6;
    oround_curve_d=70;
    oroundsharp_curve_d=170;
    if curve_d < 45:
      filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                       xmid+xd*xhalf*o_x_f, ymid+yd*yhalf*o_y_f, jointrounding, 0, tightness_f, 20);
      filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf, toprounding,
                       xmid-xd*xhalf*o_x_f, ymid+yd*yhalf*o_y_f, jointrounding, 0, tightness_f, 30);
      filldraw barpath(xmid+xd*xhalf*o_x_f, ymid+yd*yhalf*o_y_f, jointrounding,
                       xmid, ymid+yd*yhalf, jointrounding, 0, tightness_f, 40);
      filldraw barpath(xmid-xd*xhalf*o_x_f, ymid+yd*yhalf*o_y_f, jointrounding,
                       xmid, ymid+yd*yhalf, jointrounding, 0, tightness_f, 50);
    else:
      filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf, toprounding,
                       xmid, ymid+yd*yhalf*(o_y_f-1)/2, jointrounding, 0, tightness_f, 20);
      filldraw barpath(xmid+xd*xhalf, ymid-yd*yhalf, toprounding,
                       xmid, ymid+yd*yhalf*(o_y_f-1)/2, jointrounding, 0, tightness_f, 30);
      filldraw barpath(xmid, ymid+yd*yhalf*(o_y_f-1)/2, jointrounding,
                       xmid-xd*xhalf*oround_x_f, ymid+yd*yhalf*oround_y_f, jointrounding, -xd*yd*oround_curve_d, tightness_f, 40);
      filldraw barpath(xmid, ymid+yd*yhalf*(o_y_f-1)/2, jointrounding,
                       xmid+xd*xhalf*oround_x_f, ymid+yd*yhalf*oround_y_f, jointrounding, xd*yd*oround_curve_d, tightness_f, 50);
      filldraw barpath(xmid-xd*xhalf*oround_x_f, ymid+yd*yhalf*oround_y_f, jointrounding,
                       xmid+xd*xhalf*oround_x_f, ymid+yd*yhalf*oround_y_f, jointrounding, -xd*yd*oroundsharp_curve_d, tightness_f, 60);
    fi;
  endchar;
enddef;

% ea
def draw_anglo_ea(expr rune, xd, yd, q) =
  beginrunechar(rune, topbarred*1.5*base_width#+2*margin_width#);
    save ea_x_f;
    save ea_y_f;
    save ea_y_mirr;
    ea_x_f=0.7;
    ea_y_f=0.53;
    ea_y_mirr=if q: -1 else: 1 fi;
    filldraw barpath(xmid, ymid-yd*yhalf, endrounding,
                     xmid, ymid+yd*yhalf, topjointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid+xd*2, ymid+yd*yhalfred, jointrounding,
                     xmid+xd*xhalf*ea_x_f, ymid+yd*yhalfred*ea_y_f, jointrounding, 0, tightness_f, 30);
    filldraw barpath(xmid+xd*xhalf*ea_x_f, ymid+yd*yhalfred*ea_y_f, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalfred, endrounding, 0, tightness_f, 40);
    filldraw barpath(xmid-xd*2, ymid+yd*yhalfred*ea_y_mirr, jointrounding,
                     xmid-xd*xhalf*ea_x_f, ymid+yd*yhalfred*ea_y_f*ea_y_mirr, jointrounding, 0, tightness_f, 50);
    filldraw barpath(xmid-xd*xhalf*ea_x_f, ymid+yd*yhalfred*ea_y_f*ea_y_mirr, jointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalfred*ea_y_mirr, endrounding, 0, tightness_f, 60);
  endchar;
enddef;

% rex
def draw_anglo_rex(expr rune, xd, yd) =
  beginrunechar(rune, topbarred*1.15*base_width#+2*margin_width#);
    save rex_y_f;
    rex_y_f=0.4;
    filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf*rex_y_f, jointrounding, 0, tightness_f, 20);
    filldraw barpath(xmid, ymid+yd*yhalf*rex_y_f, jointrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf, endrounding, 0, tightness_f, 30);
    filldraw barpath(xmid, ymid+yd*yhalf*rex_y_f, jointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, endrounding, 0, tightness_f, 40);
    filldraw barpath(xmid+xd*xhalf, ymid+yd*yhalf, jointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, jointrounding, 0, tightness_f, 50);
  endchar;
enddef;

% X, \X
def draw_medieval_x(expr rune, xd, yd, stem) =
  beginrunechar(rune, 1.25*base_width#+2*margin_width#);
    save x_y_f;
    save x_twigtwiglength_f;
    x_y_f=0.65;
    x_twigtwiglength_f=0.25;
    if stem:
      filldraw barpath(xmid, ymid-yd*yhalf, toprounding,
                     xmid, ymid+yd*yhalf, toprounding, 0, tightness_f, 20);
    fi;
    filldraw barpath(xmid-xd*xhalf, ymid+yd*yhalf*x_y_f, endrounding,
                     xmid+xd*xhalf, ymid-yd*yhalf*x_y_f, endrounding, 0, tightness_f, 30);
    filldraw barpath(xmid-xd*xhalf, ymid-yd*yhalf*x_y_f, endrounding,
                     xmid+xd*xhalf, ymid+yd*yhalf*x_y_f, endrounding, 0, tightness_f, 40);
    filldraw barpath(xmid+xd*xhalf*(1-x_twigtwiglength_f), ymid+yd*yhalf*x_y_f*(1+((xhalf/(yhalf*x_y_f))**2)*x_twigtwiglength_f), endrounding,
                     xmid+xd*xhalf*(1+x_twigtwiglength_f), ymid+yd*yhalf*x_y_f*(1-((xhalf/(yhalf*x_y_f))**2)*x_twigtwiglength_f), endrounding, 0, tightness_f, 50);
    filldraw barpath(xmid-xd*xhalf*(1-x_twigtwiglength_f), ymid-yd*yhalf*x_y_f*(1+((xhalf/(yhalf*x_y_f))**2)*x_twigtwiglength_f), endrounding,
                     xmid-xd*xhalf*(1+x_twigtwiglength_f), ymid-yd*yhalf*x_y_f*(1-((xhalf/(yhalf*x_y_f))**2)*x_twigtwiglength_f), endrounding, 0, tightness_f, 60);
    filldraw barpath(xmid-xd*xhalf*(1-x_twigtwiglength_f), ymid+yd*yhalf*x_y_f*(1+((xhalf/(yhalf*x_y_f))**2)*x_twigtwiglength_f), endrounding,
                     xmid-xd*xhalf*(1+x_twigtwiglength_f), ymid+yd*yhalf*x_y_f*(1-((xhalf/(yhalf*x_y_f))**2)*x_twigtwiglength_f), endrounding, 0, tightness_f, 70);
    filldraw barpath(xmid+xd*xhalf*(1-x_twigtwiglength_f), ymid-yd*yhalf*x_y_f*(1+((xhalf/(yhalf*x_y_f))**2)*x_twigtwiglength_f), endrounding,
                     xmid+xd*xhalf*(1+x_twigtwiglength_f), ymid-yd*yhalf*x_y_f*(1-((xhalf/(yhalf*x_y_f))**2)*x_twigtwiglength_f), endrounding, 0, tightness_f, 80);
  endchar;
enddef;

% \aa
def draw_modern_aa(expr rune, xd, yd) =
  beginrunechar(rune, 0.8*base_width#+2*margin_width#);
  save aa_curve_f;
  aa_curve_f=0.5;
    filldraw barpath(xmid+xd*xhalf, ymid, jointrounding,
                     xmid-xd*xhalf, ymid+yd*yhalf, endrounding, aa_curve_f*xd*yd*curve_d, tightness_f, 20);
    filldraw barpath(xmid+xd*xhalf, ymid, jointrounding,
                     xmid-xd*xhalf, ymid-yd*yhalf, endrounding, -aa_curve_f*xd*yd*curve_d, tightness_f, 30);
  endchar;
enddef;


%    \end{macrocode}
%
%</frubase>
%
%<*frusep>
%
%    \begin{macrocode}
def draw_cross(expr y_centre, i) =
  filldraw barpath(xmid-xhalf, ymid-xhalf+y_centre*yhalf, endrounding,
                   xmid+xhalf, ymid+xhalf+y_centre*yhalf, endrounding, 0, tightness_f, i);
  filldraw barpath(xmid-xhalf, ymid+xhalf+y_centre*yhalf, endrounding,
                   xmid+xhalf, ymid-xhalf+y_centre*yhalf, endrounding, 0, tightness_f, i+10)
enddef;

def draw_plus(expr y_centre, i) =
  filldraw barpath(xmid-xhalf, ymid+y_centre*yhalf, endrounding,
                   xmid+xhalf, ymid+y_centre*yhalf, endrounding, 0, tightness_f, i);
  filldraw barpath(xmid,       ymid+xhalf+y_centre*yhalf, endrounding,
                   xmid,       ymid-xhalf+y_centre*yhalf, endrounding, 0, tightness_f, i+10)
enddef;

% \dot, \eye
beginrunechar(".", sepdot_f*stem_w#+2*margin_width#);
  filldraw dotpath(xmid, ymid, sepdot_f, 20);
endchar;

% \doubledot, \doubleeye
beginrunechar(":", sepdot_f*stem_w#+2*margin_width#);
  save ddot_y_f;
  ddot_y_f=0.3;
  filldraw dotpath(xmid, ymid+yhalf*ddot_y_f, sepdot_f, 20);
  filldraw dotpath(xmid, ymid-yhalf*ddot_y_f, sepdot_f, 30);
endchar;

% \tripledot
beginrunechar(59, sepdot_f*stem_w#+2*margin_width#);
  save tdot_y_f;
  tdot_y_f=0.6;
  filldraw dotpath(xmid, ymid+yhalf*tdot_y_f, sepdot_f, 20);
  filldraw dotpath(xmid, ymid,                sepdot_f, 30);
  filldraw dotpath(xmid, ymid-yhalf*tdot_y_f, sepdot_f, 40);
endchar;

% \quaddot
beginrunechar(60, sepdot_f*stem_w#+2*margin_width#);
  save qdot_ymid_f;
  save qdot_ytop_f;
  qdot_ymid_f=0.25;
  qdot_ytop_f=0.75;
  filldraw dotpath(xmid, ymid+yhalf*qdot_ymid_f, sepdot_f, 20);
  filldraw dotpath(xmid, ymid+yhalf*qdot_ytop_f, sepdot_f, 30);
  filldraw dotpath(xmid, ymid-yhalf*qdot_ymid_f, sepdot_f, 40);
  filldraw dotpath(xmid, ymid-yhalf*qdot_ytop_f, sepdot_f, 50);
endchar;

% \pentdot
beginrunechar(61, sepdot_f*stem_w#+2*margin_width#);
  save pdot_ymid_f;
  save pdot_ytop_f;
  pdot_ymid_f=0.4;
  pdot_ytop_f=0.8;
  filldraw dotpath(xmid, ymid+yhalf*pdot_ymid_f, sepdot_f, 20);
  filldraw dotpath(xmid, ymid+yhalf*pdot_ytop_f, sepdot_f, 30);
  filldraw dotpath(xmid, ymid,                 sepdot_f, 40);
  filldraw dotpath(xmid, ymid-yhalf*pdot_ymid_f, sepdot_f, 50);
  filldraw dotpath(xmid, ymid-yhalf*pdot_ytop_f, sepdot_f, 60);
endchar;

% \tripleeye
beginrunechar(62, 0.55*base_width#+2*margin_width#);
  filldraw dotpath(xmid-xhalf, ymid+xhalf/sqrt(3),   sepdot_f, 20);
  filldraw dotpath(xmid+xhalf, ymid+xhalf/sqrt(3),   sepdot_f, 30);
  filldraw dotpath(xmid,       ymid-2*xhalf/sqrt(3), sepdot_f, 40);
endchar;

% \quadeye
beginrunechar(63, 0.6*base_width#+2*margin_width#);
  filldraw dotpath(xmid,       ymid-xhalf, sepdot_f, 20);
  filldraw dotpath(xmid,       ymid+xhalf, sepdot_f, 30);
  filldraw dotpath(xmid-xhalf, ymid,       sepdot_f, 40);
  filldraw dotpath(xmid+xhalf, ymid,       sepdot_f, 50);
endchar;

% \penteye
beginrunechar(64, 0.75*base_width#+2*margin_width#);
  filldraw dotpath(xmid,       ymid-xhalf, sepdot_f, 20);
  filldraw dotpath(xmid,       ymid,       sepdot_f, 30);
  filldraw dotpath(xmid,       ymid+xhalf, sepdot_f, 40);
  filldraw dotpath(xmid+xhalf, ymid,       sepdot_f, 50);
  filldraw dotpath(xmid-xhalf, ymid,       sepdot_f, 60);
endchar;

% \cross
cross_width_f=0.55;
beginrunechar("*", cross_width_f*base_width#+2*margin_width#);
  draw_cross(0.0, 20);
endchar;

% \doublecross
beginrunechar(37, cross_width_f*base_width#+2*margin_width#);
  save dcross_y_f;
  dcross_y_f=0.4;
  draw_cross(-dcross_y_f, 20);
  draw_cross( dcross_y_f, 40);
endchar;

% \triplecross
beginrunechar(38, cross_width_f*base_width#+2*margin_width#);
  save tcross_y_f;
  tcross_y_f=0.7;
  draw_cross(-tcross_y_f, 20);
  draw_cross( 0.0,        40);
  draw_cross( tcross_y_f, 60);
endchar;

% \plus
plus_width_f=0.67;
beginrunechar("+", plus_width_f*base_width#+2*margin_width#);
  draw_plus(0.0, 20);
endchar;

% \doubleplus
beginrunechar(44, plus_width_f*base_width#+2*margin_width#);
  save dplus_y_f;
  dplus_y_f=0.4;
  draw_plus(-dplus_y_f, 20);
  draw_plus( dplus_y_f, 40);
endchar;

% \tripleplus
beginrunechar(45, plus_width_f*base_width#+2*margin_width#);
  save tplus_y_f;
  tplus_y_f=0.76;
  draw_plus(-tplus_y_f, 20);
  draw_plus( 0.0,       40);
  draw_plus( tplus_y_f, 60);
endchar;

% \bar
beginrunechar("!", stem_w#+2*margin_width#);
  save barheight_y_f;
  barheight_y_f=0.4;
  filldraw barpath(xmid, ymid+barheight_y_f*yhalf, endrounding,
                   xmid, ymid-barheight_y_f*yhalf, endrounding, 0, tightness_f, 20);
endchar;

% \doublebar
beginrunechar(34, stem_w#+2*margin_width#);
  save dbarheight_y_f;
  save dbarpos_y_f;
  dbarheight_y_f=0.3;
  dbarpos_y_f=0.4;
  filldraw barpath(xmid, ymid+( dbarpos_y_f+dbarheight_y_f)*yhalf, endrounding,
                   xmid, ymid+( dbarpos_y_f-dbarheight_y_f)*yhalf, endrounding, 0, tightness_f, 20);
  filldraw barpath(xmid, ymid+(-dbarpos_y_f+dbarheight_y_f)*yhalf, endrounding,
                   xmid, ymid+(-dbarpos_y_f-dbarheight_y_f)*yhalf, endrounding, 0, tightness_f, 30);
endchar;

% \triplebar
beginrunechar(35, stem_w#+2*margin_width#);
  save tbarheight_y_f;
  save tbarpos_y_f;
  tbarheight_y_f=0.25;
  tbarpos_y_f=0.7;
  filldraw barpath(xmid, ymid+( tbarpos_y_f+tbarheight_y_f)*yhalf, endrounding,
                   xmid, ymid+( tbarpos_y_f-tbarheight_y_f)*yhalf, endrounding, 0, tightness_f, 20);
  filldraw barpath(xmid, ymid              +tbarheight_y_f *yhalf, endrounding,
                   xmid, ymid              -tbarheight_y_f *yhalf, endrounding, 0, tightness_f, 20);
  filldraw barpath(xmid, ymid+(-tbarpos_y_f+tbarheight_y_f)*yhalf, endrounding,
                   xmid, ymid+(-tbarpos_y_f-tbarheight_y_f)*yhalf, endrounding, 0, tightness_f, 30);
endchar;


% \star
beginrunechar(36, 0.7*base_width#+2*margin_width#);
  filldraw barpath(xmid, ymid, jointrounding,
                   xmid+cosd(1/5*360+90)*xhalf, ymid+sind(1/5*360+90)*xhalf, endrounding, 0, tightness_f, 20);
  filldraw barpath(xmid, ymid, jointrounding,
                   xmid+cosd(2/5*360+90)*xhalf, ymid+sind(2/5*360+90)*xhalf, endrounding, 0, tightness_f, 30);
  filldraw barpath(xmid, ymid, jointrounding,
                   xmid+cosd(3/5*360+90)*xhalf, ymid+sind(3/5*360+90)*xhalf, endrounding, 0, tightness_f, 40);
  filldraw barpath(xmid, ymid, jointrounding,
                   xmid+cosd(4/5*360+90)*xhalf, ymid+sind(4/5*360+90)*xhalf, endrounding, 0, tightness_f, 50);
  filldraw barpath(xmid, ymid, jointrounding,
                   xmid+cosd(5/5*360+90)*xhalf, ymid+sind(5/5*360+90)*xhalf, endrounding, 0, tightness_f, 60);
endchar;

%    \end{macrocode}
%
%</frusep>
%
% \section{Font family files}
%
%<*fruc>
%
%    \begin{macrocode}
% f
draw_primitive_f("f",1,1);

% \vflip{f}
draw_primitive_f(166,1,-1);

% \hflip{f}
draw_primitive_f(174,-1,1);

% \turn{f}
draw_primitive_f(182,-1,-1);

% F
draw_normal_f("F",1,1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \vflip{F}
draw_normal_f(134,1,-1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \hflip{F}
draw_normal_f(142,-1,1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \turn{F}
draw_normal_f(150,-1,-1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% u
draw_normal_u("u",1,1,true,0); %tight = true, 0 = no dots

% \hflip{u}
draw_normal_u(229,-1,1,true,0); %tight = true, 0 = no dots

% \vflip{u}
draw_normal_u(221,1,-1,true,0); %tight = true, 0 = no dots

% \turn{u}
draw_normal_u(237,-1,-1,true,0); %tight = true, 0 = no dots

% U (tent shaped)
draw_primitive_U("U",1,1,true); %symmetric = true

% \hflip{U} (tent shaped)
draw_primitive_U(205,-1,1,true); %symmetric = true

% \vflip{U} (tent shaped)
draw_primitive_U(197,1,-1,true); %symmetric = true

% \turn{U} (tent shaped)
draw_primitive_U(213,-1,-1,true); %symmetric = true

% \th
draw_normal_th(254,1,1,false,false,false); %big = false, dot = false, doubble = false

% \hflip{\th}
draw_normal_th(238,-1,1,false,false,false); %big = false, dot = false, doubble = false

% a
draw_normal_single_A("a",1,1,true); %top = true

% \hflip{a}
draw_normal_single_A(177,-1,1,true); %top = true

% \vflip{a}
draw_normal_single_A(169,1,-1,true); %top = true

% \turn{a}
draw_normal_single_A(185,-1,-1,true); %top = true

% \a
draw_roek_a(225,1,1);

% \hflip{\a}
draw_roek_a(233,-1,1);

% r
draw_normal_r("r",1,1,false,false); % closed = false, topdot=false

% \hflip{r}
draw_normal_r(242,-1,1,false,false); % closed = false, topdot=false

% \vflip{r}
draw_normal_r(234,1,-1,false,false); % closed = false, topdot=false

% \turn{r}
draw_normal_r(250,-1,-1,false,false); % closed = false, topdot=false

% k
draw_primitive_k("k",1,1);

% \hflip{k}
draw_primitive_k(163,-1,1);

% \k
draw_primitive_kup(171,1,1,false,false); %stem = false, big = false

% \vflip{\k}
draw_primitive_kup(187,1,-1,false,false); %stem = false, big = false

% K
draw_primitive_kup("K",1,1,true,true); %stem = true, big = true

% \vflip{K}
draw_primitive_kup(155,1,-1,true,true); %stem = true, big = true

% \K
draw_primitive_kup(131,1,1,true,false); %stem = true, big = false

% \vflip{\K}
draw_primitive_kup(139,1,-1,true,false); %stem = true, big = false

% g
draw_primitive_g("g",1,1,false,false,false); %v_stem = false, h_angles = false, eye = false

% w
draw_primitive_w("w",1,1);

% \hflip{w}
draw_primitive_w(175,-1,1);

% \vflip{w}
draw_primitive_w(191,1,-1);

% \turn{w}
draw_primitive_w(183,-1,-1);

% h
draw_primitive_h("h",1,1,false,false); %top = false, twobars = false

% \hflip{h}
draw_primitive_h(168,-1,1,false,false); %top = false, twobars = false

% \h
draw_primitive_h(232,1,1,false,true); %top = false, twobars = true

% \hflip{\h}
draw_primitive_h(240,-1,1,false,true); %top = false, twobars = true

% H
draw_primitive_h("H",1,1,true,false); %top = true, twobars = false

% \hflip{H}
draw_primitive_h(136,-1,1,true,false); %top = true, twobars = false

% n
draw_normal_h("n",1,1,true,false,false); %NWSE = true, NESW = false, dot = false

% \hflip{n}
draw_normal_h(158,-1,1,true,false,false); %NWSE = true, NESW = false, dot = false

% i
draw_normal_i("i",1,1,false,false,false,false,false,false); % dot = false, twig = false, high = false, top = false, twodots = false, circle = false

% \i
draw_roek_i(193,1,1);

% \hflip{iRoek}
draw_roek_i(201,-1,1);

% j
draw_primitive_j("j",1,1);

% \hflip{j}
draw_primitive_j(162,-1,1);

% \j
draw_primitive_jup(170,1,1);

% \hflip{\j}
draw_primitive_jup(178,-1,1);

% J
draw_normal_s("J",1,1,true,false,false,false,false); %twobars = true, chair = false, high = false, twigs = false, flat = false

% \hflip{J}
draw_normal_s(130,-1,1,true,false,false,false,false); %twobars = true, chair = false, high = false, twigs = false, flat = false

% A
draw_normal_s("A",1,1,false,false,false,false,false); %twobars = false, chair = false, high = false, twigs = false, flat = false

% \hflip{A}
draw_normal_s(129,-1,1,false,false,false,false,false); %twobars = false, chair = false, high = false, twigs = false, flat = false

% \A
draw_normal_h(161,1,1,true,true,false); %NWSE = true, NESW = true, dot = false

% I
draw_primitive_I(239,1,1);
draw_primitive_I("I",1,1);

%\hflip{I}
draw_primitive_I(207,-1,1);

% p
draw_primitive_p("p",1,1);

%\hflip{p}
draw_primitive_p(176,-1,1);

% \p
draw_primitive_e(160,1,-1,false,false); %closed = false, midstem = false

% \vflip{p}
draw_primitive_e(192,1,1,false,false); %closed = false, midstem = false

% P
draw_primitive_e("P",1,1,true,false); %closed = true, midstem = false

% R
draw_normal_m("R",1,1,false,false,false); %dots = false, double = false, tree = false

% \R
draw_normal_m(154,1,-1,false,false,false); %dots = false, double = false, tree = false

% \RR
draw_normal_m(122,1,1,false,true,false); %dots = false, double = true, tree = false

% s, \s4
draw_primitive_s("s",1,1,4); %strokes = 4

% \hflip{s}, \hflip{\s4}
draw_primitive_s(179,-1,1,4); %strokes = 4

% S, \s6
draw_primitive_s("S",1,1,6); %strokes = 6

%  \hflip{S}, \hflip{\s6}
draw_primitive_s(147,-1,1,6); %strokes = 6

% \s
draw_normal_s(195,1,1,false,false,false,false,false); %twobars = false, chair = false, high = false, twigs = false, flat = false

% \hflip{\s}
draw_normal_s(203,-1,1,false,false,false,false,false); %twobars = false, chair = false, high = false, twigs = false, flat = false

% \S
draw_normal_s(196,1,1,false,false,false,false,true); %twobars = false, chair = false, high = false, twigs = false, flat = true

% \hflip{\S}
draw_normal_s(204,-1,1,false,false,false,false,true); %twobars = false, chair = false, high = false, twigs = false, flat = true

% \s3
draw_primitive_s(211,1,1,3); %strokes = 3

% \hflip{\s3}
draw_primitive_s(219,-1,1,3); %strokes = 3

% \s4
draw_primitive_s(227,1,1,4); %strokes = 4

% \hflip{\s4}
draw_primitive_s(235,-1,1,4); %strokes = 4

% \s5
draw_primitive_s(243,1,1,5); %strokes = 5

% \hflip{\s5}
draw_primitive_s(251,-1,1,5); %strokes = 5

% \s6
draw_primitive_s(212,1,1,6); %strokes = 6

% \hflip{\s6}
draw_primitive_s(220,-1,1,6); %strokes = 6

% \s7
draw_primitive_s(228,1,1,7); %strokes = 7

% \hflip{\s7}
draw_primitive_s(236,-1,1,7); %strokes = 7

% \s8
draw_primitive_s(244,1,1,8); %strokes = 8

% \hflip{\s8}
draw_primitive_s(252,-1,1,8); %strokes = 8

% t
draw_normal_t("t",1,1,false,false,false,false,false); %middot = false, topdots = false, doublearrow = false, arlaug = false, mid = false

% \vflip{t}
draw_normal_t(180,1,-1,false,false,false,false,false); %middot = false, topdots = false, doublearrow = false, arlaug = false, mid = false

% \t
draw_normal_t("T",1,1,false,false,false,false,true); %middot = false, topdots = false, doublearrow = false, arlaug = false, mid = true

% \vflip{\t}
draw_normal_t(188,1,-1,false,false,false,false,true); %middot = false, topdots = false, doublearrow = false, arlaug = false, mid = true

% b
draw_normal_b("b",1,1,false,false,false); %topdot = false, bottomdot = false, separated = false

% \hflip{b}
draw_normal_b(226,-1,1,false,false,false); %topdot = false, bottomdot = false, separated = false

% B, small eyes
draw_normal_b("B",1,1,false,false,true); %topdot = false, bottomdot = false, separated = true

% \hflip{B}, small eyes
draw_normal_b(194,-1,1,false,false,true); %topdot = false, bottomdot = false, separated = true

% e
draw_primitive_e("e",1,1,false,false); %closed = false, midstem = false

% \vflip{e}
draw_primitive_e(165,1,-1,false,false); %closed = false, midstem = false

% E
draw_primitive_E("E",1,1,false); %closed = false

% \vflip{E}
draw_primitive_E(133,1,-1,false); %closed = false

% m
draw_primitive_m("m",1,1,false,true,false); %big = false, top = true, double = false

% \vflip{m}
draw_primitive_m(149,1,-1,false,true,false); %big = false, top = true, double = false

% l
draw_normal_l("l",1,1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \hflip{l}
draw_normal_l(148,-1,1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false


% \vflip{l}
draw_normal_l(140,1,-1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \turn{l}
draw_normal_l(156,-1,-1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false


%173 = \ng
draw_primitive_ng(173,1,1,false,false,false,false); %top = false, line = false, empty = false, belgthor = false

% \NG
draw_primitive_NG(141,1,1);

% \ing
draw_primitive_ng(181,1,1,true,true,true,false); %top = true, line = true, empty = true, belgthor = false

% \vflip{\ing}
draw_primitive_ng(245,1,-1,true,true,true,false); %top = true, line = true, empty = true, belgthor = false

% \Ing
draw_primitive_ng(189,1,1,true,true,false,false); %top = true, line = true, empty = false, belgthor = false

% \vflip{\Ing}
draw_primitive_ng(253,1,-1,true,true,false,false); %top = true, line = true, empty = false, belgthor = false

% \ING
draw_primitive_ng(157,1,1,false,true,false,false); %top = false, line = true, empty = false, belgthor = false

% d
draw_primitive_m("d",1,1,true,false,false); %big = true, top = false, double = false

% \d
draw_primitive_m(164,1,1,false,false,false); %big = false, top = false, double = false

% D
draw_primitive_E("D",1,1,true); %closed = true

% o
draw_primitive_o("o",1,1);

% \vflip{o}
draw_primitive_o(255,1,-1);

ligtable ".":
         ":":
          62: %62 \tripleeye
          63: %63 \quadeye
          64: %64 \penteye
         "!":
         "+":
          44: %44 \doubleplus
          36: %36 \star
          42: %42 \cross
              "K" kern -0.2base_width#,
              "g" kern -0.2base_width#,
              "I" kern -0.2base_width#,
              "R" kern -0.3base_width#,
              154 kern -0.3base_width#, % \R
              122 kern -0.2base_width#; % \RR

ligtable "f":
         "K":
         181: % \ing
         189: % \Ing
              "." kern -0.2base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.2base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "!" kern -0.1base_width#,
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.2base_width#, %42, \cross
              "U" kern -0.15base_width#,
              "k" kern -0.2base_width#,
              163 kern -0.1base_width#, % \hflip{k}
              171 kern -0.1base_width#, % \k
              187 kern -0.2base_width#, % \vflip{\k}
              155 kern -0.3base_width#, % \vflip{K}
              139 kern -0.3base_width#, % \vflip{\K}
              "j" kern -0.1base_width#,
              162 kern -0.2base_width#, % \vflip{j}
              170 kern -0.2base_width#, % \j
              178 kern -0.1base_width#, % \vflip{\j}
              "I" kern -0.15base_width#,
              "T" kern -0.2base_width#,
              154 kern -0.3base_width#; % \R

ligtable "F":
         "R":
              "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              "k" kern -0.3base_width#,
              163 kern -0.2base_width#, % \hflip{k}
              171 kern -0.2base_width#, % \k
              187 kern -0.3base_width#, % \vflip{\k}
              155 kern -0.4base_width#, % \vflip{K}
              139 kern -0.4base_width#, % \vflip{\K}
              "n" kern -0.2base_width#,
              "j" kern -0.1base_width#,
              162 kern -0.2base_width#, % \vflip{j}
              170 kern -0.2base_width#, % \j
              178 kern -0.1base_width#, % \vflip{\j}
              161 kern -0.2base_width#, % \A
              "I" kern -0.2base_width#,
              "T" kern -0.3base_width#,
              173 kern -0.3base_width#, % \ng
              141 kern -0.2base_width#, % \NG
              157 kern -0.3base_width#, % \ING
              154 kern -0.5base_width#; % \R

ligtable "u":
              "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               36 kern -0.1base_width#, %36, \star
               42 kern -0.1base_width#, %42, \cross
              "K" kern -0.3base_width#,
              "n" kern -0.2base_width#,
              "t" kern -0.2base_width#,
              181 kern -0.2base_width#, % \ing
              189 kern -0.2base_width#, % \Ing
              "R" kern -0.3base_width#,
              193 kern -0.2base_width#; % \i

ligtable "U":
              "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               36 kern -0.1base_width#, %36, \star
               42 kern -0.1base_width#, %42, \cross
              "n" kern -0.2base_width#,
              "t" kern -0.2base_width#,
              181 kern -0.2base_width#, % \ing
              189 kern -0.2base_width#, % \Ing
              "R" kern -0.3base_width#,
              193 kern -0.2base_width#; % \i


ligtable 254: % \th
         163: % \hflip{k}
         "T":
         173: % \ng
         157: % \ING
              "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              "K" kern -0.2base_width#,
              155 kern -0.2base_width#, % \vflip{K}
              "g" kern -0.2base_width#,
              "I" kern -0.15base_width#,
              "n" kern -0.15base_width#,
              "t" kern -0.15base_width#,
              "R" kern -0.3base_width#,
              154 kern -0.3base_width#, % \R
              122 kern -0.2base_width#, % \RR
              181 kern -0.2base_width#, % \ing
              189 kern -0.2base_width#, % \Ing
              193 kern -0.15base_width#; % \i


ligtable "a":
              "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               36 kern -0.1base_width#, %36, \star
               42 kern -0.1base_width#, %42, \cross
              155 kern -0.3base_width#, % \vflip{K}
              "I" kern -0.15base_width#,
              154 kern -0.3base_width#; % \R

ligtable "r":
         "b":
              "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              "k" kern -0.15base_width#,
              "K" kern -0.2base_width#,
              "t" kern -0.2base_width#,
              "T" kern -0.25base_width#,
              173 kern -0.15base_width#, % \ng
              157 kern -0.15base_width#, % \ING
              "R" kern -0.25base_width#;

ligtable "k":
         161: % \A
              "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "k" kern -0.15base_width#,
              "K" kern -0.15base_width#,
              155 kern -0.15base_width#,  % \vflip{K}
              "g" kern -0.15base_width#,
              173 kern -0.15base_width#, % \ng
              157 kern -0.15base_width#, % \ING
              154 kern -0.2base_width#, % \R
              "R" kern -0.2base_width#;

ligtable 171: % \k
         187: % \vflip{\k}
              "K" kern -0.2base_width#,
              "g" kern -0.2base_width#,
              "R" kern -0.2base_width#,
              154 kern -0.3base_width#, % \R
              122 kern -0.2base_width#; % \RR

ligtable 131: % \K
              "g" kern -0.2base_width#,
              122 kern -0.2base_width#; % \RR

ligtable 139: % \vflip{\K}
              "g" kern -0.2base_width#,
              122 kern -0.2base_width#; % \RR

ligtable "g":
         "p":
         122: % \RR
         "B":
              "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              "k" kern -0.2base_width#,
              163 kern -0.15base_width#, % \hflip{k}
              171 kern -0.1base_width#, % \k
              187 kern -0.1base_width#, % \vflip{\k}
              131 kern -0.2base_width#, % \K
              139 kern -0.2base_width#, % \vflip{\K}
              "j" kern -0.2base_width#,
              162 kern -0.2base_width#, % \vflip{j}
              170 kern -0.2base_width#, % \j
              178 kern -0.2base_width#, % \vflip{\j}
              161 kern -0.2base_width#, % \A
              "I" kern -0.15base_width#,
              "t" kern -0.1base_width#,
              "T" kern -0.3base_width#,
              173 kern -0.3base_width#, % \ng
              141 kern -0.2base_width#, % \NG
              157 kern -0.3base_width#; % \ING

ligtable "h":
         168: % \hflip{h}
         "H":
         136: % \hflip{H}
         232: % \h
         240: % \hflip{\h}
              "i" kern +0.1base_width#;

ligtable "n":  62 kern -0.2base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.2base_width#,
               36 kern -0.1base_width#, %36, \star
              171 kern -0.2base_width#, % \k
              "K" kern -0.3base_width#,
              131 kern -0.2base_width#, % \K
              "g" kern -0.2base_width#,
              "j" kern -0.2base_width#,
              178 kern -0.2base_width#, % \vflip{\j}
              "I" kern -0.2base_width#,
              "R" kern -0.3base_width#,
              154 kern -0.2base_width#, % \R
              122 kern -0.2base_width#, % \RR
              211 kern -0.2base_width#, % \sthree
              "t" kern -0.2base_width#,
              181 kern -0.2base_width#, % \ing
              189 kern -0.2base_width#, % \Ing
              193 kern -0.3base_width#; % \i

ligtable "i": "i" kern -0.2base_width#;

ligtable "j": "K" kern -0.3base_width#,
              "g" kern -0.2base_width#,
              "n" kern -0.3base_width#,
              "R" kern -0.3base_width#,
              154 kern -0.2base_width#, % \R
              122 kern -0.2base_width#, % \RR
              211 kern -0.2base_width#, % \sthree
              "t" kern -0.2base_width#,
              181 kern -0.2base_width#, % \ing
              189 kern -0.2base_width#, % \Ing
              193 kern -0.3base_width#; % \i

ligtable 162: % \vflip{j}
              155 kern -0.3base_width#, % \vflip{K}
              "g" kern -0.2base_width#,
              "I" kern -0.15base_width#,
              "R" kern -0.2base_width#,
              154 kern -0.3base_width#, % \R
              122 kern -0.2base_width#, % \RR
              "T" kern -0.15base_width#;

ligtable 170: % \j
              "K" kern -0.2base_width#,
              155 kern -0.3base_width#, % \vflip{K}
              "g" kern -0.2base_width#,
              "R" kern -0.2base_width#,
              154 kern -0.3base_width#, % \R
              122 kern -0.2base_width#, % \RR
              "t" kern -0.2base_width#;

ligtable 178: % \vflip{\j}
              "K" kern -0.3base_width#,
              155 kern -0.2base_width#, % \vflip{K}
              "g" kern -0.2base_width#,
              "R" kern -0.3base_width#,
              154 kern -0.2base_width#, % \R
              122 kern -0.2base_width#, % \RR
              "t" kern -0.2base_width#;


ligtable "J":
         "A":
         195: % \s
              "K" kern -0.2base_width#,
              "R" kern -0.2base_width#,
              "t" kern -0.2base_width#,
              193 kern -0.2base_width#; % \i

ligtable "I":
         "l":
         "t":
              "." kern -0.2base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.2base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.2base_width#,
               36 kern -0.2base_width#, %36, \star
               42 kern -0.2base_width#, %42, \cross
              "U" kern -0.15base_width#,
              "k" kern -0.2base_width#,
              155 kern -0.3base_width#, % \vflip{K}
              "g" kern -0.1base_width#,
              "I" kern -0.3base_width#,
              "j" kern -0.1base_width#,
              162 kern -0.15base_width#, % \vflip{j}
              170 kern -0.2base_width#, % \j
              178 kern -0.1base_width#, % \vflip{\j}
              "R" kern -0.2base_width#,
              154 kern -0.3base_width#, % \R
              122 kern -0.2base_width#, % \RR
              "T" kern -0.2base_width#,
              173 kern -0.15base_width#, % \ng
              141 kern -0.15base_width#, % \NG
              157 kern -0.15base_width#; % \ING


ligtable 154: % \R
         155: % \vflip{K}
              "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              "k" kern -0.2base_width#,
              163 kern -0.2base_width#, % \hflip{k}
              171 kern -0.3base_width#, % \k
              187 kern -0.2base_width#, % \vflip{\k}
              "K" kern -0.4base_width#,
              131 kern -0.4base_width#, % \K
              162 kern -0.2base_width#, % \vflip{j}
              170 kern -0.2base_width#, % \j
              161 kern -0.2base_width#, % \A
              "I" kern -0.2base_width#,
              "T" kern -0.3base_width#,
              173 kern -0.3base_width#, % \ng
              141 kern -0.2base_width#, % \NG
              181 kern -0.3base_width#, % \ing
              187 kern -0.3base_width#, % \Ing
              157 kern -0.3base_width#, % \ING
              "R" kern -0.5base_width#; %

ligtable 196: % \S
              "K" kern -0.2base_width#,
              "R" kern -0.2base_width#,
              "t" kern -0.2base_width#,
              181 kern -0.2base_width#, % \ing
              189 kern -0.2base_width#, % \Ing
              193 kern -0.2base_width#; % \i

ligtable 211: % \sthree
              "." kern -0.2base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.1base_width#,
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.2base_width#, %42, \cross
              171 kern -0.2base_width#, % \k
              131 kern -0.2base_width#, % \K
              "j" kern -0.25base_width#,
              "p" kern -0.2base_width#,
              "R" kern -0.15base_width#,
              154 kern -0.15base_width#, % \R
              211 kern -0.2base_width#, % \sthree
              "t" kern -0.2base_width#,
              181 kern -0.2base_width#, % \ing
              189 kern -0.2base_width#, % \Ing
              193 kern -0.2base_width#; % \i



ligtable 193: % \i
              "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              "K" kern -0.5base_width#,
              "j" kern -0.3base_width#,
              "R" kern -0.3base_width#,
              "t" kern -0.3base_width#,
              181 kern -0.3base_width#, % \ing
              189 kern -0.3base_width#, % \Ing
              193 kern -0.4base_width#; % \i

ligtable 225: % \a
              "g" kern -0.2base_width#;


%    \end{macrocode}
%
%</fruc>
%
%<*frua>
%
%    \begin{macrocode}
% f
draw_primitive_f("f",1,1);

% \vflip{f}
draw_primitive_f(166,1,-1);

% \hflip{f}
draw_primitive_f(174,-1,1);

% \turn{f}
draw_primitive_f(182,-1,-1);

% F
draw_normal_f("F",1,1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \vflip{F}
draw_normal_f(134,1,-1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \hflip{F}
draw_normal_f(142,-1,1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \turn{F}
draw_normal_f(150,-1,-1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% u
draw_normal_u("u",1,1,true,0); %tight = true, 0 = no dots

% \hflip{u}
draw_normal_u(229,-1,1,true,0); %tight = true, 0 = no dots

% \vflip{u}
draw_normal_u(221,1,-1,true,0); %tight = true, 0 = no dots

% \turn{u}
draw_normal_u(237,-1,-1,true,0); %tight = true, 0 = no dots

% U (tent shaped)
draw_primitive_U("U",1,1,true); %symmetric = true

% \hflip{U} (tent shaped)
draw_primitive_U(205,-1,1,true); %symmetric = true

% \vflip{U} (tent shaped)
draw_primitive_U(197,1,-1,true); %symmetric = true

% \turn{U} (tent shaped)
draw_primitive_U(213,-1,-1,true); %symmetric = true

% \th
draw_normal_th(254,1,1,false,false,false); %big = false, dot = false, doubble = false

% \hflip{\th}
draw_normal_th(238,-1,1,false,false,false); %big = false, dot = false, doubble = false

% o
draw_anglo_o("o",1,1,true); %two = true

% \hflip{o}
draw_anglo_o(151,-1,1,true); %two = true

% \vflip{o}
draw_anglo_o(143,1,-1,true); %two = true

% \turn{o}
draw_anglo_o(159,-1,-1,true); %two = true

% r
draw_normal_r("r",1,1,false,false); % closed = false, topdot=false

% \hflip{r}
draw_normal_r(242,-1,1,false,false); % closed = false, topdot=false

% \vflip{r}
draw_normal_r(234,1,-1,false,false); % closed = false, topdot=false

% \turn{r}
draw_normal_r(250,-1,-1,false,false); % closed = false, topdot=false

% c
draw_normal_k("c",1,-1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \hflip{c}
draw_normal_k(155,-1,-1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \vflip{c}
draw_normal_k(163,1,1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \turn{c}
draw_normal_k(171,-1,1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \c
draw_primitive_kup(131,1,-1,true,true); %stem = true, big = true

% \vflip{\c}
draw_primitive_kup(139,1,1,true,true); %stem = true, big = true

% g
draw_primitive_g("g",1,1,false,false,false); %v_stem = false, h_angles = false, eye = false

% w
draw_primitive_w("w",1,1);

% \hflip{w}
draw_primitive_w(175,-1,1);

% \vflip{w}
draw_primitive_w(191,1,-1);

% \turn{w}
draw_primitive_w(183,-1,-1);

% h
draw_primitive_h("h",1,1,false,true); %top = false, twobars = true

% \hflip{h}
draw_primitive_h(168,-1,1,false,true); %top = false, twobars = true

% H
draw_primitive_h("H",1,1,false,false); %top = false, twobars = false

% \hflip{H}
draw_primitive_h(136,-1,1,false,false); %top = false, twobars = false

% \h
draw_normal_double_A(216,1,1,false,false,false); %three = false, stlb = false, sblb = false

% \vflip{\h}
draw_normal_double_A(224,1,-1,false,false,false); %three = false, stlb = false, sblb = false

% n
draw_normal_h("n",1,1,true,false,false); %NWSE = true, NESW = false, dot = false

% \hflip{n}
draw_normal_h(158,-1,1,true,false,false); %NWSE = true, NESW = false, dot = false

% i
draw_normal_i("i",1,1,false,false,false,false,false,false); % dot = false, twig = false, high = false, top = false, twodots = false, circle = false

% j
draw_normal_h("j",1,1,true,true,false); %NWSE = true, NESW = true, dot = false

% \j
draw_primitive_ng(178,1,1,false,true,false,false); %top = false, line = true, empty = false, belgthor = false

% J
draw_anglo_j("J",1,1);

% I
draw_primitive_I("I",1,1);
draw_primitive_I(239,1,1);

%\hflip{I}
draw_primitive_I(207,-1,1);

% p
draw_primitive_p("p",1,1);

%\hflip{p}
draw_primitive_p(176,-1,1);

% p
draw_frisian_p("P",1,1);

% \hflip{P}
draw_frisian_p(144,-1,1);

% x
draw_normal_m("x",1,1,false,false,false); %dots = false, double = false, tree = false

% s
draw_normal_s("s",1,1,false,false,false,false,false); %twobars = false, chair = false, high = false, twigs = false, flat = false

% \hflip{s}
draw_normal_s(179,-1,1,false,false,false,false,false); %twobars = false, chair = false, high = false, twigs = false, flat = false

% S
draw_normal_k("S",1,1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \hflip{S}
% see \turn{c}

% \vflip{S}
% see c

% \turn{S}
% see \hflip{c}

% \s3
draw_primitive_s(211,1,1,3); %strokes = 3

% \hflip{\s3}
draw_primitive_s(219,-1,1,3); %strokes = 3

% \s4
draw_primitive_s(227,1,1,4); %strokes = 4

% \hflip{\s4}
draw_primitive_s(235,-1,1,4); %strokes = 4

% \s5
draw_primitive_s(243,1,1,5); %strokes = 5

% \hflip{\s5}
draw_primitive_s(251,-1,1,5); %strokes = 5

% \s6
draw_primitive_s(212,1,1,6); %strokes = 6

% \hflip{\s6}
draw_primitive_s(220,-1,1,6); %strokes = 6

% \s7
draw_primitive_s(228,1,1,7); %strokes = 7

% \hflip{\s7}
draw_primitive_s(236,-1,1,7); %strokes = 7

% \s8
draw_primitive_s(244,1,1,8); %strokes = 8

% \hflip{\s8}
draw_primitive_s(252,-1,1,8); %strokes = 8

% t
draw_normal_t("t",1,1,false,false,false,false,false); %middot = false, topdots = false, doublearrow = false, arlaug = false, mid = false

% \vflip{t}
draw_normal_t(180,1,-1,false,false,false,false,false); %middot = false, topdots = false, doublearrow = false, arlaug = false, mid = false

% b
draw_normal_b("b",1,1,false,false,false); %topdot = false, bottomdot = false, separated = false

% \hflip{b}
draw_normal_b(226,-1,1,false,false,false); %topdot = false, bottomdot = false, separated = false

% B, small eyes
draw_normal_b("B",1,1,false,false,true); %topdot = false, bottomdot = false, separated = true


% \hflip{B}, small eyes
draw_normal_b(194,-1,1,false,false,true); %topdot = false, bottomdot = false, separated = true

% e
draw_primitive_e("e",1,1,false,false); %closed = false, midstem = false

% \vflip{e}
draw_primitive_e(165,1,-1,false,false); %closed = false, midstem = false

% m
draw_primitive_m("m",1,1,false,true,false); %big = false, top = true, double = false

% \vflip{m}
draw_primitive_m(149,1,-1,false,true,false); %big = false, top = true, double = false

% l
draw_normal_l("l",1,1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \hflip{l}
draw_normal_l(148,-1,1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \vflip{l}
draw_normal_l(140,1,-1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \turn{l}
draw_normal_l(156,-1,-1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

%173 = \ng
draw_anglo_ng(173, 1, 1);

% d
draw_primitive_m("d",1,1,true,false,false); %big = true, top = false, double = false

% \d
draw_primitive_m(164,1,1,false,false,false); %big = false, top = false, double = false

% D
draw_primitive_e("D",1,1,true,true); %closed = true, midstem = true

% \oe
draw_primitive_o(247,1,1);

% \vflip{o}
draw_primitive_o(255,1,-1);

% \OE
draw_primitive_ng(215,1,1,true,true,false,false); %top = true, line = true, empty = false, belgthor = false

% \vflip{\OE}
draw_primitive_ng(223,1,-1,true,true,false,false); %top = true, line = true, empty = false, belgthor = false

% a
draw_anglo_o("a",1,1,false); %two = false

% \hflip{a}
draw_anglo_o(177,-1,1,false); %two = false

% \vflip{a}
draw_anglo_o(169,1,-1,false); %two = false

% \turn{a}
draw_anglo_o(185,-1,-1,false); %two = false

% \ae
draw_normal_single_A(230,1,1,true); %top = true

% \hflip{\ae}
draw_normal_single_A(198,-1,1,true); %top = true

% \vflip{\ae}
draw_normal_single_A(206,1,-1,true); %top = true

% \turn{\ae}
draw_normal_single_A(214,-1,-1,true); %top = true

% y
draw_normal_u("y",1,1,true,3); %tight = true, 3 = bar

% \hflip{y}
draw_normal_u(232,-1,1,true,3); %tight = true, 3 = bar

% \vflip{y}
draw_normal_u(240,1,-1,true,3); %tight = true, 3 = bar

% \turn{y}
draw_normal_u(248,-1,-1,true,3); %tight = true, 3 = bar

% \y
draw_normal_u(193,1,1,true,4); %tight = true, 4 = x

% \hflip{\y}
draw_normal_u(201,-1,1,true,4); %tight = true, 4 = x

% \vflip{\y}
draw_normal_u(209,1,-1,true,4); %tight = true, 4 = x

% \turn{\y}
draw_normal_u(217,-1,-1,true,4); %tight = true, 4 = x

% Y
draw_normal_u("Y",1,1,true,5); %tight = true, 5 = y

% \hflip{y}
draw_normal_u(233,-1,1,true,5); %tight = true, 5 = y

% \vflip{y}
draw_normal_u(241,1,-1,true,5); %tight = true, 5 = y

% \turn{y}
draw_normal_u(249,-1,-1,true,5); %tight = true, 5 = y

% \ea
draw_anglo_ea(196,1,1,false); %q = false

% \vflip{\ea}
draw_anglo_ea(204,1,-1,false); %q = false

% \g
draw_primitive_g(135,1,1,false,true,false); %v_stem = false, h_angles = true, eye = false

% \G
draw_primitive_g(167,1,1,false,false,true); %v_stem = false, h_angles = false, eye = true

% k
draw_normal_m("k",1,-1,false,false,false); %dots = false, double = false, tree = false

% \k
draw_primitive_g(195,1,1,true,true,false); %v_stem = true, h_angles = true, eye = false

% \io
%draw_anglo_io(153,1,1);

% q
draw_anglo_ea("q",1,1,true); %q = true

% \vflip{q}
draw_anglo_ea(81,1,-1,true); %q = true

% \stan
draw_primitive_e(208,1,1,true,false); %closed = true, midstem = false

% \STAN
draw_primitive_m(200,1,1,false,true,true); %big = true, top = false, double = true

% \rex
draw_anglo_rex(154,1,1);

% \vflip{\rex}
draw_anglo_rex(186,1,-1);

ligtable ".":
         ":":
          62: %62 \tripleeye
          63: %63 \quadeye
          64: %64 \penteye
         "!":
         "+":
          44: %44 \doubleplus
          36: %36 \star
          42: %42 \cross
         254: % \th
         "j":
         178: % \j
         "J":
              "U" kern -0.1base_width#,
              131 kern -0.2base_width#, % \c
              "g" kern -0.2base_width#,
              "n" kern -0.1base_width#,
              "I" kern -0.2base_width#,
              "x" kern -0.2base_width#,
              "t" kern -0.1base_width#,
              247 kern -0.2base_width#, % \oe
              215 kern -0.1base_width#, % \OE
              196 kern -0.25base_width#, % \ea
              135 kern -0.1base_width#, % \g
              167 kern -0.1base_width#, % \G
              "k" kern -0.2base_width#,
              195 kern -0.1base_width#, % \k
              154 kern -0.2base_width#, % \rex
              "q" kern -0.2base_width#;

ligtable "f":
         "o":
         "w":
         "I":
         "x":
         "t":
         "l":
         215: % \OE
         230: % \ae
         "a":
         154: % \rex
              "." kern -0.2base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.2base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "!" kern -0.1base_width#,
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.2base_width#, %42, \cross
              "U" kern -0.15base_width#,
              131 kern -0.25base_width#, % \c
              "n" kern -0.1base_width#,
              178 kern -0.15base_width#, % \j
              "J" kern -0.2base_width#,
              "I" kern -0.3base_width#,
              "k" kern -0.3base_width#,
              "q" kern -0.3base_width#;

ligtable "F":
         "S":
         196: % \ea
         "q":
              "." kern -0.25base_width#,
              ":" kern -0.15base_width#,
               62 kern -0.25base_width#, %62, \tripleeye
               63 kern -0.25base_width#, %63, \quadeye
               64 kern -0.25base_width#, %64, \penteye
              "!" kern -0.15base_width#,
              "+" kern -0.25base_width#,
               44 kern -0.15base_width#, %44, \doubleplus
               36 kern -0.25base_width#, %36, \star
               37 kern -0.15base_width#, %37, \doublecross
               42 kern -0.25base_width#, %42, \cross
              "U" kern -0.2base_width#,
              131 kern -0.3base_width#, % \c
              "n" kern -0.15base_width#,
              178 kern -0.15base_width#, % \j
              "J" kern -0.3base_width#,
              "I" kern -0.4base_width#,
              "k" kern -0.4base_width#,
              "q" kern -0.4base_width#;

ligtable "u":
         "U":
         "H":
         "n":
         "s":
         "y":
         193: % \y
         "Y":
              "." kern -0.1base_width#,
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.1base_width#, %63, \quadeye
               64 kern -0.1base_width#, %64, \penteye
              "+" kern -0.1base_width#,
               36 kern -0.1base_width#, %36, \star
               42 kern -0.1base_width#, %42, \cross
              216 kern -0.1base_width#, % \h
              "n" kern -0.1base_width#,
              "J" kern -0.15base_width#,
              "x" kern -0.25base_width#,
              "t" kern -0.15base_width#,
              215 kern -0.2base_width#, % \OE
              196 kern -0.3base_width#, % \ea
              154 kern -0.25base_width#; % \rex

ligtable "r":
         247: % \oe
              "." kern -0.2base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.2base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "!" kern -0.1base_width#,
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.2base_width#, %42, \cross
              216 kern -0.1base_width#, % \h
              "n" kern -0.1base_width#,
              178 kern -0.15base_width#, % \j
              "J" kern -0.25base_width#,
              "I" kern -0.15base_width#,
              "x" kern -0.25base_width#,
              "t" kern -0.15base_width#,
              173 kern -0.15base_width#,
              215 kern -0.15base_width#, % \OE
              196 kern -0.3base_width#, % \ea
              154 kern -0.25base_width#; % \rex

ligtable "c":
         131: % \c
         "k":
              "." kern -0.25base_width#,
              ":" kern -0.15base_width#,
               62 kern -0.25base_width#, %62, \tripleeye
               63 kern -0.25base_width#, %63, \quadeye
               64 kern -0.25base_width#, %64, \penteye
              "!" kern -0.15base_width#,
              "+" kern -0.25base_width#,
               44 kern -0.15base_width#, %44, \doubleplus
               36 kern -0.25base_width#, %36, \star
               37 kern -0.15base_width#, %37, \doublecross
               42 kern -0.25base_width#, %42, \cross
              216 kern -0.1base_width#, % \h
              "n" kern -0.1base_width#,
              178 kern -0.15base_width#, % \j
              "J" kern -0.3base_width#,
              "x" kern -0.3base_width#,
              "s" kern -0.2base_width#,
              "t" kern -0.2base_width#,
              215 kern -0.2base_width#, % \OE
              196 kern -0.4base_width#, % \ea
              154 kern -0.3base_width#; % \rex

ligtable "g":
         "p":
         "B":
         135: % \g
         167: % \G
         195: % \k
              "." kern -0.25base_width#,
              ":" kern -0.15base_width#,
               62 kern -0.25base_width#, %62, \tripleeye
               63 kern -0.25base_width#, %63, \quadeye
               64 kern -0.25base_width#, %64, \penteye
              "!" kern -0.15base_width#,
              "+" kern -0.25base_width#,
               44 kern -0.15base_width#, %44, \doubleplus
               36 kern -0.25base_width#, %36, \star
               37 kern -0.15base_width#, %37, \doublecross
               42 kern -0.25base_width#, %42, \cross
              216 kern -0.1base_width#, % \h
              "n" kern -0.1base_width#,
              "j" kern -0.15base_width#,
              178 kern -0.15base_width#, % \j
              "J" kern -0.3base_width#,
              "I" kern -0.1base_width#,
              "t" kern -0.1base_width#,
              215 kern -0.2base_width#; % \OE

ligtable "h":
         216: % \h
         "m":
         "e":
         "d":
         164: %\d
         "D":
         208: % \stan
         200: % \STAN
              "i" kern +0.1base_width#;

ligtable "i":
              "h" kern +0.1base_width#,
              216 kern +0.1base_width#, % \h
              "i" kern +0.1base_width#,
              "m" kern +0.1base_width#,
              "e" kern +0.1base_width#,
              "d" kern +0.1base_width#,
              164 kern +0.1base_width#, % \d
              "D" kern +0.1base_width#,
              208 kern +0.1base_width#, % \stan
              200 kern +0.1base_width#; % \STAN

ligtable "P":
         "b":
              "." kern -0.2base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.2base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "!" kern -0.1base_width#,
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.2base_width#, %42, \cross
              131 kern -0.2base_width#,
              216 kern -0.1base_width#, % \h
              "n" kern -0.1base_width#,
              178 kern -0.15base_width#, % \j
              "J" kern -0.25base_width#,
              "I" kern -0.15base_width#,
              "x" kern -0.25base_width#,
              "t" kern -0.15base_width#,
              173 kern -0.15base_width#,
              215 kern -0.15base_width#, % \OE
              196 kern -0.3base_width#, % \ea
              "k" kern -0.25base_width#,
              154 kern -0.25base_width#, % \rex
              "q" kern -0.2base_width#;

ligtable 173: % \ng
              "j" kern -0.15base_width#,
              "I" kern -0.15base_width#,
              "t" kern -0.15base_width#,
              247 kern -0.2base_width#, % \oe
              215 kern -0.2base_width#; % \OE


%    \end{macrocode}
%
%</frua>
%
%<*frun>
%
%    \begin{macrocode}
% f
draw_normal_f("f",1,1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \vflip{f}
draw_normal_f(134,1,-1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \hflip{f}
draw_normal_f(142,-1,1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \turn{f}
draw_normal_f(150,-1,-1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% F
draw_primitive_f("F",1,1);

% \vflip{F}
draw_primitive_f(166,1,-1);

% \hflip{F}
draw_primitive_f(174,-1,1);

% \turn{F}
draw_primitive_f(182,-1,-1);

% u
draw_normal_u("u",1,1,false,0); %tight = false, 0 = no dots

% \vflip{u}
draw_normal_u(221,1,-1,false,0); %tight = false, 0 = no dots

% \hflip{u}
draw_normal_u(229,-1,1,false,0); %tight = false, 0 = no dots

% \turn{u}
draw_normal_u(237,-1,-1,false,0); %tight = false, 0 = no dots

% y, \.u
draw_normal_u("y",1,1,false,1); %tight = false, 1 = one dot

% \vflip{y}
draw_normal_u(233,1,-1,false,1); %tight = false, 1 = one dot

% \hflip{y}
draw_normal_u(241,-1,1,false,1); %tight = false, 1 = one dot

% \turn{y}
draw_normal_u(249,-1,-1,false,1); %tight = false, 1 = one dot

% \th
draw_normal_th(254,1,1,false,false,false); %big = false, dot = false, doubble = false

% \hflip{\th}
draw_normal_th(246,-1,1,false,false,false); %big = false, dot = false, doubble = false

% \TH
draw_normal_th(222,1,1,true,false,false); %big = false, dot = false, doubble = false

% \hflip{\TH}
draw_normal_th(214,-1,1,true,false,false); %big = false, dot = false, doubble = false

% \dh, \.th
draw_normal_th(240,1,1,false,true,false); %big = false, dot = false, doubble = false

% \hflip{\dh}
draw_normal_th(232,-1,1,false,true,false); %big = false, dot = false, doubble = false

% \DH, \.\TH
draw_normal_th(208,1,1,true,true,false); %big = false, dot = false, doubble = false

% \hflip{\DH}
draw_normal_th(200,-1,1,true,true,false); %big = false, dot = false, doubble = false

% A
draw_normal_single_A("A",1,1,false); %top = false

% \vflip{A}
draw_normal_single_A(169,1,-1,false); %top = false

% \hflip{A}
draw_normal_single_A(177,-1,1,false); %top = false

% \turn{A}
draw_normal_single_A(185,-1,-1,false); %top = false

% \A
draw_normal_double_A(193,1,1,false,false,false); %three = false, stlb = false, sblb = false

% \hflip{\A}
draw_normal_double_A(201,-1,1,false,false,false); %three = false, stlb = false, sblb = false

% r
draw_normal_r("r",1,1,true,false); % closed = true, topdot=false

% \vflip{r}
draw_normal_r(234,1,-1,true,false); % closed = true, topdot=false

% \hflip{r}
draw_normal_r(242,-1,1,true,false); % closed = true, topdot=false

% \turn{r}
draw_normal_r(250,-1,-1,true,false); % closed = true, topdot=false

% k
draw_normal_k("k",1,1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \vflip{k}
draw_normal_k(235,1,-1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \hflip{k}
draw_normal_k(243,-1,1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \turn{k}
draw_normal_k(251,-1,-1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% g, \.k
draw_normal_k("g",1,1,true,false,false,false); % topdot = true, middot = false, midtwig = false, two = false

% \vflip{g}
draw_normal_k(135,1,-1,true,false,false,false); % topdot = true, middot = false, midtwig = false, two = false

% \hflip{g}
draw_normal_k(143,-1,1,true,false,false,false); % topdot = true, middot = false, midtwig = false, two = false

% \turn{g}
draw_normal_k(151,-1,-1,true,false,false,false); % topdot = true, middot = false, midtwig = false, two = false

% h
draw_normal_h("h",1,1,true,true,false); %NWSE = true, NESW = true, dot = false

% n
draw_normal_h("n",1,1,true,false,false); %NWSE = true, NESW = false, dot = false

% i
draw_normal_i("i",1,1,false,false,false,false,false,false); % dot = false, twig = false, high = false, top = false, twodots = false, circle = false

% e, \.i
draw_normal_i("e",1,1,true,false,false,false,false,false); % dot = true, twig = false, high = false, top = false, twodots = false, circle = false

% a
draw_normal_h("a",1,1,false,true,false); %NWSE = false, NESW = true, dot = false

% s
draw_normal_s("s",1,1,false,false,false,false,false); %twobars = false, chair = false, high = false, twigs = false, flat = false

% \hflip{s}
draw_normal_s(179,-1,1,false,false,false,false,false); %twobars = false, chair = false, high = false, twigs = false, flat = false

% S
draw_normal_s("S",1,1,false,true,false,false,false); %twobars = false, chair = true, high = false, twigs = false, flat = false

% \vflip{S}
draw_normal_s(139,1,-1,false,true,false,false,false); %twobars = false, chair = true, high = false, twigs = false, flat = false

% \hflip{S}
draw_normal_s(147,-1,1,false,true,false,false,false); %twobars = false, chair = true, high = false, twigs = false, flat = false

% \turn{S}
draw_normal_s(155,-1,-1,false,true,false,false,false); %twobars = false, chair = true, high = false, twigs = false, flat = false

% t
draw_normal_t("t",1,1,false,false,false,false,false); %middot = false, topdots = false, doublearrow = false, arlaug = false, mid = false

% \vflip{t}
draw_normal_t(180,1,-1,false,false,false,false,false); %middot = false, topdots = false, doublearrow = false, arlaug = false, mid = false

% d, \.t
draw_normal_t("d",1,1,true,false,false,false,false); %middot = true, topdots = false, doublearrow = false, arlaug = false, mid = false

% \vflip{d}
draw_normal_t(188,1,-1,true,false,false,false,false); %middot = true, topdots = false, doublearrow = false, arlaug = false, mid = false

% b
draw_normal_b("b",1,1,false,false,false); %topdot = false, bottomdot = false, separated = false

% \hflip{b}
draw_normal_b(226,-1,1,false,false,false); %topdot = false, bottomdot = false, separated = false

% b, small eyes
draw_normal_b("B",1,1,false,false,true); %topdot = false, bottomdot = false, separated = true

% \hflip{b}, small eyes
draw_normal_b(194,-1,1,false,false,true); %topdot = false, bottomdot = false, separated = true

% p, \"b
draw_normal_b("p",1,1,true,true,false); %topdot = true, bottomdot = true, separated = false

% \hflip{p}
draw_normal_b(176,-1,1,true,true,false); %topdot = true, bottomdot = true, separated = false

% m
draw_normal_m("m",1,1,false,false,false); %dots = false, double = false, tree = false

% \"m
draw_normal_m(165,1,1,true,false,false); %dots = true, double = false, tree = false

% \vflip{\"m}
draw_normal_m(157,1,-1,true,false,false); %dots = true, double = false, tree = false

% M (round form)
draw_normal_M("M",1,1,false); %dots = false

% \vflip{M} (round form)
draw_normal_M(149,1,-1,false); %dots = false

% \"M (round form)
draw_normal_M(133,1,1,true); %dots = true

% \"M (round form)
draw_normal_M(141,1,-1,true); %dots = true

% l
draw_normal_l("l",1,1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \vflip{l}
draw_normal_l(140,1,-1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \hflip{l}
draw_normal_l(148,-1,1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \turn{l}
draw_normal_l(156,-1,-1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% R
draw_normal_m("R",1,-1,false,false,false); %dots = false, double = false, tree = false


ligtable ".":
              "h" kern -0.1base_width#,
              "n" kern -0.1base_width#,
              "e" kern +0.1base_width#,
              "a" kern -0.1base_width#,
              "t" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              "b" kern -0.1base_width#,
              "p" kern -0.1base_width#,
              "B" kern -0.1base_width#,
              "m" kern -0.3base_width#,
              165 kern -0.3base_width#, %165, \"m
              "M" kern -0.3base_width#,
              133 kern -0.3base_width#, %133, \"M
              "R" kern -0.3base_width#;

ligtable ":":
              "t" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              "m" kern -0.1base_width#,
              165 kern -0.1base_width#, %165, \"m
              "M" kern -0.1base_width#,
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.1base_width#;

ligtable  59: %\tripledot
              "m" kern -0.1base_width#,
              165 kern -0.1base_width#, %165, \"m
              "M" kern -0.1base_width#,
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.1base_width#;

ligtable  62: %\tripleeye
          63: %\quadeye
          64: %\penteye
              "n" kern -0.2base_width#,
              "a" kern -0.2base_width#,
              "m" kern -0.3base_width#,
              165 kern -0.3base_width#, %165, \"m
              "M" kern -0.3base_width#,
              133 kern -0.3base_width#, %133, \"M
              "R" kern -0.3base_width#;

ligtable "!": %\bar
              "m" kern -0.2base_width#,
              165 kern -0.2base_width#, %165, \"m
              "M" kern -0.2base_width#,
              133 kern -0.2base_width#, %133, \"M
              "R" kern -0.2base_width#;

ligtable  34: %\doublebar
              "m" kern -0.1base_width#,
              165 kern -0.1base_width#, %165, \"m
              "M" kern -0.1base_width#,
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.1base_width#;

ligtable "+": %\plus
              "h" kern -0.2base_width#,
              "n" kern -0.2base_width#,
              "a" kern -0.2base_width#,
              "t" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              "b" kern -0.1base_width#,
              "p" kern -0.1base_width#,
              "B" kern -0.1base_width#,
              "m" kern -0.3base_width#,
              165 kern -0.3base_width#, %165, \"m
              "M" kern -0.3base_width#,
              133 kern -0.3base_width#, %133, \"M
              "R" kern -0.3base_width#;

ligtable  44: %\doubleplus
              "m" kern -0.1base_width#,
              165 kern -0.1base_width#, %165, \"m
              "M" kern -0.1base_width#,
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.1base_width#;

ligtable  45: %\tripleplus
              "m" kern -0.1base_width#,
              165 kern -0.1base_width#, %165, \"m
              "M" kern -0.1base_width#,
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.1base_width#;

ligtable  36: %\star
          42: %\cross
              "h" kern -0.1base_width#,
              "n" kern -0.1base_width#,
              "a" kern -0.1base_width#,
              "t" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              "b" kern -0.1base_width#,
              "p" kern -0.1base_width#,
              "B" kern -0.1base_width#,
              "m" kern -0.2base_width#,
              165 kern -0.2base_width#, %165, \"m
              "M" kern -0.2base_width#,
              133 kern -0.2base_width#, %133, \"M
              "R" kern -0.2base_width#;

ligtable  37: %\doublecross
              "m" kern -0.1base_width#,
              165 kern -0.1base_width#, %165, \"m
              "M" kern -0.1base_width#,
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.1base_width#;

ligtable  38: %\triplecross
              "m" kern -0.1base_width#,
              165 kern -0.1base_width#, %165, \"m
              "M" kern -0.1base_width#,
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.1base_width#;

ligtable "f": "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              185 kern -0.2base_width#, % \turn{A}
              193 kern -0.2base_width#, % \A
              "h" kern -0.3base_width#,
              "n" kern -0.3base_width#,
              "a" kern -0.5base_width#,
              "s" kern -0.1base_width#,
              179 kern -0.2base_width#, %179, \s
              "S" kern -0.1base_width#,
              147 kern -0.3base_width#, %147, \S
              "t" kern -0.2base_width#,
              "d" kern -0.2base_width#,
              "m" kern -0.1base_width#,
              165 kern -0.1base_width#, %165, \"m
              "M" kern -0.1base_width#,
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.5base_width#;

ligtable "F": "." kern -0.2base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "!" kern -0.1base_width#,
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.2base_width#, %42, \cross
              185 kern -0.1base_width#, % \turn{A}
              193 kern -0.1base_width#, % \A
              "h" kern -0.1base_width#,
              "n" kern -0.1base_width#,
              "a" kern -0.3base_width#,
              179 kern -0.1base_width#, %179, \s
              147 kern -0.2base_width#, %147, \S
              "t" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              "R" kern -0.3base_width#;

ligtable "u":
         "y": "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               36 kern -0.1base_width#, %36, \star
               42 kern -0.1base_width#, %42, \cross
              185 kern -0.1base_width#, % \turn{A}
              193 kern -0.1base_width#, % \A
              "n" kern -0.2base_width#,
              "a" kern -0.1base_width#,
              "t" kern -0.2base_width#,
              "d" kern -0.2base_width#,
              "m" kern -0.3base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.3base_width#, %165, \"m
              133 kern -0.1base_width#; %133, \"M

ligtable 254: %254 \th
              "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              185 kern -0.1base_width#, % \turn{A}
              193 kern -0.1base_width#, % \A
              "h" kern -0.15base_width#,
              "n" kern -0.15base_width#,
              "a" kern -0.15base_width#,
              "t" kern -0.15base_width#,
              "d" kern -0.15base_width#,
              "m" kern -0.3base_width#,
              "M" kern -0.2base_width#,
              165 kern -0.3base_width#, %165, \"m
              133 kern -0.2base_width#, %133, \"M
              "R" kern -0.3base_width#;

%222 \TH
ligtable 222:  44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.1base_width#, %36, \star
              "h" kern -0.15base_width#,
              "n" kern -0.15base_width#,
              "a" kern -0.15base_width#,
              "t" kern -0.15base_width#,
              "d" kern -0.15base_width#,
              "m" kern -0.2base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.2base_width#, %165, \"m
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.2base_width#;

ligtable "A":
         193: %\AA
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doublplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.1base_width#, %42, \cross
              185 kern -0.2base_width#, % \turn{A}
              193 kern -0.1base_width#, % \A
              "h" kern -0.1base_width#,
              "n" kern -0.2base_width#,
              "a" kern -0.1base_width#,
              "t" kern -0.2base_width#,
              "d" kern -0.2base_width#,
              "m" kern -0.3base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.3base_width#, %165, \"m
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.1base_width#;

%ligtable 129: %\A

ligtable "r": "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              185 kern -0.1base_width#, % \turn{A}
              193 kern -0.1base_width#, % \A
              "h" kern -0.1base_width#,
              "n" kern -0.2base_width#,
              "a" kern -0.2base_width#,
              "s" kern -0.05base_width#,
              179 kern -0.15base_width#, %179, \s
              "t" kern -0.2base_width#,
              "d" kern -0.2base_width#,
              "m" kern -0.3base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.3base_width#, %165, \"m
              133 kern -0.1base_width#; %133, \"M

ligtable "k":
         "g": "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.3base_width#, %42, \cross
              185 kern -0.2base_width#, % \turn{A}
              193 kern -0.2base_width#, % \A
              "h" kern -0.25base_width#,
              "n" kern -0.25base_width#,
              "a" kern -0.4base_width#,
              "s" kern -0.1base_width#,
              179 kern -0.2base_width#, %179, \s
              147 kern -0.3base_width#, %147, \S
              "t" kern -0.25base_width#,
              "d" kern -0.25base_width#,
              "m" kern -0.1base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.1base_width#, %165, \"m
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.5base_width#;

ligtable "h":
              "+" kern -0.2base_width#,
               36 kern -0.1base_width#, %36, \star
              "t" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              "m" kern -0.2base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.2base_width#, %165, \"m
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.2base_width#;

ligtable "n":  62 kern -0.2base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.2base_width#,
               36 kern -0.1base_width#, %36, \star
              "n" kern -0.3base_width#,
              "a" kern -0.1base_width#,
              "s" kern -0.1base_width#,
              "t" kern -0.3base_width#,
              "d" kern -0.3base_width#,
              "m" kern -0.3base_width#,
              "M" kern -0.2base_width#,
              165 kern -0.3base_width#, %165, \"m
              133 kern -0.2base_width#, %133, \"M
              "R" kern -0.2base_width#;

ligtable "i":
              "f" kern +0.1base_width#,
              "u" kern +0.1base_width#,
              "y" kern +0.1base_width#,
              254 kern +0.1base_width#, %254, \th
              222 kern +0.1base_width#, %222, \TH
              "A" kern +0.1base_width#,
              "r" kern +0.1base_width#,
              "k" kern +0.1base_width#,
              "g" kern +0.1base_width#,
              "i" kern +0.1base_width#,
              "e" kern +0.1base_width#,
              "S" kern +0.1base_width#,
              "b" kern +0.1base_width#,
              "p" kern +0.1base_width#,
              "B" kern +0.1base_width#,
              "l" kern +0.1base_width#;

ligtable "e":
              "." kern +0.1base_width#,
              "f" kern +0.1base_width#,
              "u" kern +0.1base_width#,
              "y" kern +0.1base_width#,
              254 kern +0.1base_width#, %254, \th
              222 kern +0.1base_width#, %222, \TH
              "A" kern +0.1base_width#,
              "r" kern +0.1base_width#,
              "k" kern +0.1base_width#,
              "g" kern +0.1base_width#,
              "i" kern +0.1base_width#,
              "e" kern +0.1base_width#,
              "S" kern +0.1base_width#,
              "b" kern +0.1base_width#,
              "p" kern +0.1base_width#,
              "B" kern +0.1base_width#,
              "l" kern +0.1base_width#;

ligtable "a":  62 kern -0.2base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.2base_width#,
               36 kern -0.1base_width#, %36, \star
              "n" kern -0.1base_width#,
              "a" kern -0.3base_width#,
              "t" kern -0.15base_width#,
              "d" kern -0.15base_width#,
              "m" kern -0.2base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.2base_width#, %165, \m
              133 kern -0.1base_width#, %133, \M
              "R" kern -0.3base_width#;

ligtable "s": "n" kern -0.1base_width#,
              "t" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              "m" kern -0.3base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.3base_width#, %165, \m
              133 kern -0.1base_width#; %133, \M

%179 \s
ligtable 179: "a" kern -0.1base_width#,
              "R" kern -0.2base_width#;

ligtable "S": "n" kern -0.1base_width#,
              "t" kern -0.2base_width#,
              "d" kern -0.2base_width#,
              "m" kern -0.3base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.3base_width#, %165, \"m
              133 kern -0.1base_width#; %133, \"M

% ligtable 147 \S

ligtable "t":
         "d": "." kern -0.1base_width#,
              "+" kern -0.1base_width#,
               36 kern -0.1base_width#, %36, \star
              "n" kern -0.1base_width#,
              "a" kern -0.3base_width#,
              "m" kern -0.2base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.2base_width#, %165, \"m
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.4base_width#;

ligtable "b":
         "p": "." kern -0.1base_width#,
              "+" kern -0.1base_width#,
               36 kern -0.1base_width#, %36, \star
              "h" kern -0.1base_width#,
              "n" kern -0.2base_width#,
              "a" kern -0.2base_width#,
              "t" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              "m" kern -0.2base_width#,
              165 kern -0.2base_width#, %165, \"m
              "R" kern -0.2base_width#;

ligtable "B": "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               36 kern -0.1base_width#, %36, \star
              "h" kern -0.1base_width#,
              "n" kern -0.2base_width#,
              "a" kern -0.2base_width#,
              "t" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              "m" kern -0.2base_width#,
              165 kern -0.2base_width#, %165, \"m
              "R" kern -0.2base_width#;

ligtable "m":
         165: "." kern -0.3base_width#, %165 \"m
              ":" kern -0.1base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.3base_width#, %42, \cross
              185 kern -0.2base_width#, % \turn{A}
              193 kern -0.2base_width#, % \A
              "h" kern -0.2base_width#,
              "n" kern -0.2base_width#,
              "a" kern -0.4base_width#,
              "s" kern -0.1base_width#,
              179 kern -0.1base_width#, %179, \s
              147 kern -0.2base_width#, %147, \S
              "t" kern -0.2base_width#,
              "d" kern -0.2base_width#,
              "m" kern -0.1base_width#,
              "M" kern -0.1base_width#,
              165 kern -0.1base_width#, %165, \"m
              133 kern -0.1base_width#, %133, \"M
              "R" kern -0.4base_width#;

ligtable "M":
         133: "." kern -0.3base_width#, %133 \"M
              ":" kern -0.1base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.3base_width#, %42, \cross
              185 kern -0.2base_width#, % \turn{A}
              193 kern -0.2base_width#, % \A
              "h" kern -0.1base_width#,
              "n" kern -0.1base_width#,
              "a" kern -0.3base_width#,
              "t" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              "m" kern -0.1base_width#,
              "M" kern -0.1base_width#,
              "R" kern -0.3base_width#;

ligtable "l":  62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              "h" kern -0.2base_width#,
              "n" kern -0.1base_width#,
              "a" kern -0.3base_width#,
              179 kern -0.1base_width#, %179, \s
              147 kern -0.2base_width#, %147, \S
              "t" kern -0.2base_width#,
              "d" kern -0.2base_width#,
              "m" kern -0.2base_width#,
              "M" kern -0.2base_width#,
              165 kern -0.1base_width#, %165, \m
              133 kern -0.1base_width#, %133, \M
              "R" kern -0.4base_width#;

ligtable "R": "." kern -0.3base_width#,
              ":" kern -0.1base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.3base_width#, %42, \cross
              185 kern -0.1base_width#, % \turn{A}
              193 kern -0.1base_width#, % \A
              "h" kern -0.2base_width#,
              "n" kern -0.4base_width#,
              "a" kern -0.2base_width#,
              "s" kern -0.3base_width#,
              "t" kern -0.4base_width#,
              "d" kern -0.4base_width#,
              "m" kern -0.4base_width#,
              "M" kern -0.2base_width#,
              165 kern -0.4base_width#, %165, \m
              133 kern -0.2base_width#; %133, \M

%    \end{macrocode}
%
%</frun>
%
%<*frut>
%
%    \begin{macrocode}
% f
draw_normal_f("f",1,1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \vflip{f}
draw_normal_f(134,1,-1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \hflip{f}
draw_normal_f(142,-1,1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \turn{f}
draw_normal_f(150,-1,-1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% F
draw_primitive_f("F",1,1);

% \vflip{F}
draw_primitive_f(166,1,-1);

% \hflip{F}
draw_primitive_f(174,-1,1);

% \turn{F}
draw_primitive_f(182,-1,-1);

% u
draw_normal_u("u",1,1,false,0); %tight = false, 0 = no dots

% \vflip{u}
draw_normal_u(221,1,-1,false,0); %tight = false, 0 = no dots

% \hflip{u}
draw_normal_u(229,-1,1,false,0); %tight = false, 0 = no dots

% \turn{u}
draw_normal_u(237,-1,-1,false,0); %tight = false, 0 = no dots

% U
draw_primitive_U("U",1,1,false); %symmetric = false

% \vflip{U}
draw_primitive_U(197,1,-1,false); %symmetric = false

% \hflip{U}
draw_primitive_U(205,-1,1,false); %symmetric = false

% \turn{U}
draw_primitive_U(213,-1,-1,false); %symmetric = false

% \th
draw_normal_th(254,1,1,false,false,false); %big = false, dot = false, doubble = false

% \hflip{\th}
draw_normal_th(246,-1,1,false,false,false); %big = false, dot = false, doubble = false

% \TH
draw_normal_th(222,1,1,true,false,false); %big = false, dot = false, doubble = false

% \hflip{\TH}
draw_normal_th(214,-1,1,true,false,false); %big = false, dot = false, doubble = false

% A
draw_normal_single_A("A",1,1,false); %top = false

% \turn{A}
draw_normal_single_A(129,-1,-1,false); %top = false

% \A
draw_normal_double_A(193,1,1,false,false,false); %three = false, stlb = false, sblb = false

% r
draw_normal_r("r",1,1,true,false); % closed = true, topdot=false

% \vflip{r}
draw_normal_r(234,1,-1,true,false); % closed = true, topdot=false

% \hflip{r}
draw_normal_r(242,-1,1,true,false); % closed = true, topdot=false

% \turn{r}
draw_normal_r(250,-1,-1,true,false); % closed = true, topdot=false

% k
draw_normal_k("k",1,1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \vflip{k}
draw_normal_k(235,1,-1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \hflip{k}
draw_normal_k(243,-1,1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \turn{k}
draw_normal_k(251,-1,-1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% h
draw_normal_i("h",1,1,false,true,false,false,false,false); % dot = false, twig = true, high = false, top = false, twodots = false, circle = false

%\h
draw_normal_i(160,1,1,true,false,false,false,false,false); % dot = true, twig = false, high = false, top = false, twodots = false, circle = false

% n
draw_shorttwig_n("n",1,1,false,false); %middot = false, sidedot = false

% \turn{n}
draw_shorttwig_n(158,-1,-1,false,false); %middot = false, sidedot = false

% i
draw_normal_i("i",1,1,false,false,false,false,false,false); % dot = false, twig = false, high = false, top = false, twodots = false, circle = false

% a
draw_shorttwig_n("a",-1,1,false,false); %middot = false, sidedot = false

%\turn{a}
draw_shorttwig_n(161,1,-1,false,false); %middot = false, sidedot = false

% s
draw_shorttwig_s("s",1,1,false,false,false,false,false); %dot = false, twig = false, hook = false, arrow = false, circle = false

% \s
draw_shorttwig_s(179,1,1,true,false,false,false,false); %dot = true, twig = false, hook = false, arrow = false, circle = false

% t
draw_normal_l("t",-1,1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \turn{t}
draw_normal_l(140,1,-1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \t
draw_shorttwig_l(180,-1,1);

% \turn{\t}
draw_shorttwig_l(204,1,-1);

% T
draw_shorttwig_L("T",-1,1);

% \turn{T}
draw_shorttwig_L(148,1,-1);

% b
draw_normal_single_A("b",1,-1,false); %top = false

% \turn{b}
draw_normal_single_A(162,-1,1,false); %top = false

% \b
draw_normal_double_A(194,-1,1,false,false,false); %three = false, stlb = false, sblb = false

% m
draw_normal_i("m",1,1,false,true,true,false,false,false); % dot = false, twig = true, high = true, top = false, twodots = false, circle = false

% \vflip{m}
draw_normal_i(141,1,-1,false,true,true,false,false,false); % dot = false, twig = true, high = true, top = false, twodots = false, circle = false

% \m
draw_normal_i(165,1,1,true,false,false,true,false,false); % dot = true, twig = false, high = false, top = true, twodots = false, circle = false

% \vflip{\m}
draw_normal_i(157,1,-1,true,false,false,true,false,false); % dot = true, twig = false, high = false, top = true, twodots = false, circle = false

% M
draw_normal_i("M",1,1,false,true,false,true,false,false); % dot = false, twig = true, high = false, top = true, twodots = false, circle = false

% \vflip{M}
draw_normal_i(149,1,-1,false,true,false,true,false,false); % dot = false, twig = true, high = false, top = true, twodots = false, circle = false

% l
draw_normal_l("l",1,1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \turn{l}
draw_normal_l(156,-1,-1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \l
draw_shorttwig_l(188,1,1);

% \turn{\l}
draw_shorttwig_l(196,-1,-1);

% L
draw_shorttwig_L("L",1,1);

% \turn{L}
draw_shorttwig_L(164,-1,-1);

% R
draw_shorttwig_s("R",1,-1,false,false,false,false,false); %dot = false, twig = false, hook = false, arrow = false, circle = false

% \R
draw_shorttwig_s(154,1,-1,true,false,false,false,false); %dot = true, twig = false, hook = false, arrow = false, circle = false


ligtable ".":
         ":":
          62: %62 \tripleeye
          63: %63 \quadeye
          64: %64 \penteye
         "!":
         "+":
          44: %44 \doubleplus
          36: %36 \star
          42: %42 \cross
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              166 kern -0.2base_width#, % \n
              "a" kern -0.2base_width#,
              "t" kern -0.2base_width#,
              "T" kern -0.1base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.3base_width#, %188 \l
              "L" kern -0.2base_width#;


ligtable  59: %59 \tripledot
          60: %60 \quaddot
          61: %61 \pentdot
          34: %34 \doublebar
          35: %35 \triplebar
          45: %45 \tripleplus
          37: %37 \doublecross
          38: %38 \triplecross
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              166 kern -0.1base_width#, % \n
              "a" kern -0.1base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.2base_width#, %188 \l
              "L" kern -0.1base_width#;

ligtable "f":
         "k":
         180: % 180 \t
         "T":
              "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              129 kern -0.2base_width#, % \A
              193 kern -0.2base_width#, % \AA
              "h" kern -0.1base_width#,
              166 kern -0.2base_width#, % \n
              "a" kern -0.3base_width#,
              "t" kern -0.3base_width#,
              "T" kern -0.3base_width#,
              162 kern -0.3base_width#, % \b
              194 kern -0.3base_width#, % \bb
              188 kern -0.1base_width#, %188 \l
              "L" kern -0.1base_width#,
              "R" kern -0.2base_width#,
              154 kern -0.3base_width#; %154 \.R

ligtable "F": "." kern -0.2base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "!" kern -0.1base_width#,
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.2base_width#, %42, \cross
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              166 kern -0.1base_width#, % \n
              "a" kern -0.2base_width#,
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              162 kern -0.2base_width#, % \b
              194 kern -0.2base_width#, % \bb
              "M" kern +0.1base_width#,
              188 kern -0.1base_width#, %188 \l
              "L" kern -0.1base_width#,
              "R" kern -0.1base_width#,
              154 kern -0.1base_width#; %154 \.R

ligtable "u": "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               36 kern -0.1base_width#, %36, \star
               42 kern -0.1base_width#, %42, \cross
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              166 kern -0.2base_width#, % \n
              "a" kern -0.1base_width#,
              "t" kern -0.3base_width#,
              "T" kern -0.3base_width#,
              188 kern -0.3base_width#, %188 \l
              "L" kern -0.3base_width#;

ligtable "U": "." kern -0.3base_width#,
              ":" kern -0.2base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              129 kern -0.3base_width#, % \A
              193 kern -0.3base_width#, % \AA
              "h" kern -0.1base_width#,
              166 kern -0.3base_width#, % \n
              "a" kern -0.2base_width#,
              "s" kern -0.2base_width#,
              179 kern -0.2base_width#, % \.s
              "t" kern -0.5base_width#,
              "T" kern -0.4base_width#,
              162 kern -0.2base_width#, % \b
              194 kern -0.2base_width#, % \bb
              188 kern -0.5base_width#, %188 \l
              "L" kern -0.4base_width#;

ligtable 254: %254 \th
              "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              "t" kern -0.2base_width#,
              "T" kern -0.2base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.3base_width#, %188 \l
              "L" kern -0.2base_width#;


ligtable 222:  %222 \TH
              "." kern -0.1base_width#,
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.1base_width#, %42, \cross
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.3base_width#, %188 \l
              "L" kern -0.2base_width#;

ligtable "A":
         193: %\AA
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doublplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.1base_width#, %42, \cross
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              166 kern -0.2base_width#, % \n
              "a" kern -0.1base_width#,
              "t" kern -0.2base_width#,
              "T" kern -0.2base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.3base_width#, %188 \l
              "L" kern -0.2base_width#;

ligtable 129: % 129 \A
         166: % 166 \n
         "a":
         "i":
         "s":
         "t":
         162: % 162 \b
         188: % 188 \l
              "i" kern +0.1base_width#,
              "s" kern +0.1base_width#,
              "R" kern +0.1base_width#;


ligtable "r": "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              "h" kern -0.1base_width#,
              166 kern -0.2base_width#, % \n
              "a" kern -0.1base_width#,
              "t" kern -0.2base_width#,
              "T" kern -0.2base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.3base_width#, %188 \l
              "L" kern -0.2base_width#;

ligtable "h":
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              166 kern -0.1base_width#, % \n
              "a" kern -0.1base_width#,
              "t" kern -0.3base_width#,
              "T" kern -0.2base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.3base_width#, %188 \l
              "L" kern -0.2base_width#;

% ligtable \.h

ligtable "n":
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              166 kern -0.2base_width#, % \n
              "a" kern -0.1base_width#,
              "s" kern -0.1base_width#,
              179 kern -0.1base_width#, % \.s
              "t" kern -0.3base_width#,
              "T" kern -0.2base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.3base_width#, % 188 \l
              "L" kern -0.2base_width#;

ligtable 161: %161 \a
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              166 kern -0.1base_width#, % \n
              "a" kern -0.2base_width#,
              "t" kern -0.2base_width#,
              "T" kern -0.1base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.3base_width#, %188 \l
              "L" kern -0.2base_width#,
              "R" kern -0.1base_width#,
              154 kern -0.1base_width#; % \.R

ligtable "b":
         194: % \bb
              ":" kern -0.1base_width#,
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doublplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.1base_width#, %42, \cross
              129 kern -0.1base_width#, % \A
              193 kern -0.1base_width#, % \AA
              166 kern -0.1base_width#, % \n
              "a" kern -0.2base_width#,
              "t" kern -0.2base_width#,
              "T" kern -0.2base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.3base_width#, %188 \l
              "L" kern -0.2base_width#;

ligtable "m":
         "M":
              166 kern -0.2base_width#, % \n
              "a" kern -0.2base_width#,
              "t" kern -0.1base_width#,
              "T" kern -0.2base_width#,
              162 kern -0.1base_width#, % \b
              194 kern -0.1base_width#, % \bb
              188 kern -0.2base_width#, % 188 \l
              "L" kern -0.1base_width#;

ligtable "l":
         "L":
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              166 kern -0.2base_width#, % \n
              "a" kern -0.2base_width#,
              "t" kern -0.1base_width#,
              "T" kern -0.2base_width#,
              162 kern -0.2base_width#, % \b
              194 kern -0.2base_width#, % \bb
              188 kern -0.2base_width#, % 188 \l
              "L" kern -0.2base_width#,
              "R" kern -0.2base_width#,
              154 kern -0.2base_width#; % \.R

ligtable "R":
         154: % \R
              "i" kern +0.1base_width#,
              "s" kern +0.1base_width#,
              "t" kern -0.3base_width#,
              "T" kern -0.2base_width#,
              188 kern -0.3base_width#, %188 \l
              "L" kern -0.2base_width#,
              "R" kern +0.1base_width#;

%    \end{macrocode}
%
%</frut>
%
%<*frul>
%
%    \begin{macrocode}

% f
draw_staveless_f("f",1,1,true); % long=true

% \vflip{f}
draw_staveless_f(134,1,-1,true); % long=true

% u
draw_staveless_u("u",1,1);

% \vflip{u}
draw_staveless_u(221,1,-1);

% \th
draw_staveless_th(254,1,1);

% A
draw_staveless_A("A",1,1,3,false); % 3=low, down=false

% \vflip{A}
draw_staveless_A(129,1,-1,3,false); % 3=low, down=false

% \A
draw_staveless_A(193,1,1,2,true); % 2=mid, down=true

% \vflip{\A}
draw_staveless_A(201,1,-1,2,true); % 2=mid, down=true

% r
draw_staveless_u("r",-1,1);

% \vflip{r}
draw_staveless_u(234,-1,-1);

% k
draw_staveless_f("k",1,-1,false); % long=false

% h
draw_staveless_f("h",1,1,false); % long=false

% n
draw_staveless_A("n",1,1,2,false); % 2=mid, down=false

% \vflip{n}
draw_staveless_A(158,1,-1,2,false); % 2=mid, down=false

draw_normal_i("i",1,1,false,false,false,false,false,false); % dot = false, twig = false, high = false, top = false, twodots = false, circle = false

% a
draw_staveless_A("a",-1,1,2,false); % 2=mid, down=false

% \vflip{a}
draw_staveless_A(161,-1,-1,2,false); % 2=mid, down=false

% s
draw_shorttwig_s("s",1,1,false,false,false,false,false); %dot = false, twig = false, hook = false, arrow = false, circle = false

% \vflip{s}
draw_shorttwig_s(179,1,-1,false,false,false,false,false); %dot = false, twig = false, hook = false, arrow = false, circle = false

% t
draw_staveless_A("t",-1,1,1,false); % 1=high, down=false

% \vflip{t}
draw_staveless_A(156,-1,-1,1,false); % 1=high, down=false

% b
draw_staveless_A("b",-1,1,3,false); % 3=low, down=false

% \vflip{b}
draw_staveless_A(162,-1,-1,3,false); % 3=low, down=false

% m
draw_staveless_m("m",1,1);

% l
draw_staveless_A("l",1,1,1,false); % 1=high, down=false

% \vflip{l}
draw_staveless_A(140,1,-1,1,false); % 1=high, down=false

% R
draw_staveless_m("R",1,-1);


ligtable ".":
         ":":
          62: %62 \tripleeye
          63: %63 \quadeye
          64: %64 \penteye
         "!":
         "+":
          44: %44 \doubleplus
          36: %36 \star
          42: %42 \cross
              "f" kern -0.1base_width#,
              "u" kern -0.2base_width#,
              "b" kern -0.1base_width#;


ligtable "f":
             "." kern -0.1base_width#,
             ":" kern -0.1base_width#,
              62 kern -0.1base_width#, %62 \tripleeye
              63 kern -0.1base_width#, %63 \quadeye
              64 kern -0.1base_width#, %64 \penteye
             "!" kern -0.1base_width#,
             "+" kern -0.1base_width#,
              44 kern -0.1base_width#, %44 \doubleplus
              42 kern -0.2base_width#, %42 \cross
              36 kern -0.2base_width#; %36 \star

ligtable "A":
             "." kern -0.1base_width#,
             ":" kern -0.1base_width#,
              62 kern -0.1base_width#, %62 \tripleeye
              63 kern -0.1base_width#, %63 \quadeye
              64 kern -0.1base_width#, %64 \penteye
             "!" kern -0.1base_width#,
             "+" kern -0.1base_width#,
              44 kern -0.1base_width#, %44 \doubleplus
              42 kern -0.2base_width#, %42 \cross
              36 kern -0.2base_width#, %36 \star
             "u" kern -0.2base_width#,
             "k" kern -0.2base_width#,
             "s" kern -0.1base_width#,
             "t" kern -0.2base_width#,
             "m" kern -0.1base_width#,
             "l" kern -0.2base_width#;

ligtable
         "r":
             "." kern -0.2base_width#,
             ":" kern -0.2base_width#,
              62 kern -0.2base_width#, %62 \tripleeye
              63 kern -0.2base_width#, %63 \quadeye
              64 kern -0.2base_width#, %64 \penteye
             "!" kern -0.2base_width#,
             "+" kern -0.2base_width#,
              44 kern -0.2base_width#, %44 \doubleplus
              42 kern -0.2base_width#, %42 \cross
              36 kern -0.2base_width#, %36 \star
             "A" kern -0.2base_width#,
             "k" kern -0.1base_width#,
             "h" kern -0.1base_width#,
             "a" kern -0.1base_width#,
             "b" kern -0.3base_width#,
             "R" kern -0.2base_width#;

ligtable
         "k":
             "b" kern -0.1base_width#;

ligtable
         "h":
             "u" kern -0.1base_width#;
ligtable
         "n":
             "u" kern -0.1base_width#,
             "b" kern -0.1base_width#;

ligtable
         "a":
             "n" kern +0.1base_width#,
             "b" kern -0.1base_width#;

ligtable
         "s":
             "b" kern -0.1base_width#;

ligtable
         "t":
             "h" kern -0.1base_width#,
             "n" kern +0.1base_width#,
             "b" kern -0.2base_width#,
             "l" kern +0.1base_width#;

ligtable
         "b":
             "u" kern -0.1base_width#,
             "A" kern +0.1base_width#,
             "n" kern +0.1base_width#;

ligtable
         "m":
             "b" kern -0.1base_width#;

ligtable
         "l":
             "b" kern -0.2base_width#;

ligtable
         "R":
             "u" kern -0.2base_width#,
             "t" kern -0.1base_width#,
             "l" kern -0.1base_width#;

%    \end{macrocode}
%
%</frul>
%
%<*frum>
%
%    \begin{macrocode}
% a
draw_shorttwig_n("a",-1,1,false,false); %middot = false, sidedot = false

% \vflip{a}
draw_shorttwig_n(129,-1,-1,false,false); %middot = false, sidedot = false

% \'a \adot
draw_shorttwig_n(209,-1,1,false,true); %middot = false, sidedot = true

% \vflip{\adot}
draw_shorttwig_n(201,-1,-1,false,true); %middot = false, sidedot = true

% \.a \a
draw_shorttwig_n(29,-1,1,true,false); %middot = true, sidedot = false

% \vflip{\a}
draw_shorttwig_n(31,-1,-1,true,false); %middot = true, sidedot = false

% A
draw_normal_k("A",-1,-1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% b
draw_normal_b("b",1,1,false,false,false); %topdot = false, bottomdot = false, separated = false

% \hflip{b}
draw_normal_b(160,-1,1,false,false,false); %topdot = false, bottomdot = false, separated = false

% B
draw_primitive_w("B",1,-1);

% c
draw_shorttwig_s("c",1,1,false,false,false,false,false); %dot = false, twig = false, hook = false, arrow = false, circle = false

% \vflip{c}
draw_shorttwig_s(195,1,-1,false,false,false,false,false); %dot = false, twig = false, hook = false, arrow = false, circle = false

% \c
draw_shorttwig_s(155,1,1,true,false,false,false,false); %dot = true, twig = false, hook = false, arrow = false, circle = false

% \vflip{\c}
draw_shorttwig_s(147,1,-1,true,false,false,false,false); %dot = true, twig = false, hook = false, arrow = false, circle = false

% C
draw_shorttwig_s("C",1,1,false,false,false,false,true); %dot = false, twig = false, hook = false, arrow = false, circle = true

% \vflip{C}
draw_shorttwig_s(91,1,-1,false,false,false,false,true); %dot = false, twig = false, hook = false, arrow = false, circle = true

% d, \.t
draw_normal_l("d",-1,1,true,false,false,false,false); %middot = true, topdot = false, midbar = false, topbar = false, circle = false

% \vflip{d}
draw_normal_l(141,-1,-1,true,false,false,false,false); %middot = true, topdot = false, midbar = false, topbar = false, circle = false

% \'t \tdot
draw_normal_l(188,-1,1,false,true,false,false,false); %middot = false, topdot = true, midbar = false, topbar = false, circle = false

% \vflip{\tdot}
draw_normal_l(189,-1,-1,false,true,false,false,false); %middot = false, topdot = true, midbar = false, topbar = false, circle = false

% \=t \tbar
draw_normal_l(164,-1,1,false,false,true,false,false); %middot = false, topdot = false, midbar = true, topbar = false, circle = false

% \vflip{\tbar}
draw_normal_l(165,-1,-1,false,false,true,false,false); %middot = false, topdot = false, midbar = true, topbar = false, circle = false

% \~t \tflag
draw_normal_l(180,-1,1,false,false,false,true,false); %middot = false, topdot = false, midbar = false, topbar = true, circle = false

% \hflip{\tflag}
draw_normal_l(196,1,1,false,false,false,true,false); %middot = false, topdot = false, midbar = false, topbar = true, circle = false

% \vflip{\tflag}
draw_normal_l(181,-1,-1,false,false,false,true,false); %middot = false, topdot = false, midbar = false, topbar = true, circle = false

% \turn{\tflag}
draw_normal_l(197,1,-1,false,false,false,true,false); %middot = false, topdot = false, midbar = false, topbar = true, circle = false

% \^t \tring
draw_normal_l(156,-1,1,false,false,false,false,true); %middot = false, topdot = false, midbar = false, topbar = false, circle = true

% \hflip{\tring}
draw_normal_l(124,1,1,false,false,false,false,true); %middot = false, topdot = false, midbar = false, topbar = false, circle = true

% \vflip{\tring}
draw_normal_l(157,-1,-1,false,false,false,false,true); %middot = false, topdot = false, midbar = false, topbar = false, circle = true

% \turn{\tring}
draw_normal_l(125,1,-1,false,false,false,false,true); %middot = false, topdot = false, midbar = false, topbar = false, circle = true

% D, \.T
draw_normal_t("D",1,1,true,false,false,false,false); %middot = true, topdots = false, doublearrow = false, arlaug = false, mid = false

% \vflip{D}, \vflip{\.T}
draw_normal_t(92,1,-1,true,false,false,false,false); %middot = true, topdots = false, doublearrow = false, arlaug = false, mid = false

% \D, \"T
draw_normal_t(132,1,1,false,true,false,false,false); %middot = false, topdots = true, doublearrow = false, arlaug = false, mid = false

% \vflip{\D}
draw_normal_t(133,1,-1,false,true,false,false,false); %middot = false, topdots = true, doublearrow = false, arlaug = false, mid = false

% e, \.i
draw_normal_i("e",1,1,true,false,false,false,false,false); % dot = true, twig = false, high = false, top = false, twodots = false, circle = false

% \=i \e
draw_normal_i("I",1,1,false,true,false,false,false,false); % dot = false, twig = true, high = false, top = false, twodots = false, circle = false

% \^i E
draw_normal_i("E",1,1,false,false,false,false,false,true); % dot = false, twig = false, high = false, top = false, twodots = false, circle = true

% f
draw_normal_f("f",1,1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \hflip{f}
draw_normal_f(6,-1,1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \vflip{f}
draw_normal_f(14,1,-1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% \turn{f}
draw_normal_f(22,-1,-1,false,false,false); %highdot = false, stemdot = false, twigdot = false

% F
draw_medieval_f("F",1,1);

% \hflip{F}
draw_medieval_f(154,-1,1);

% \vflip{F}
draw_medieval_f(162,1,-1);

% \turn{F}
draw_medieval_f(170,-1,-1);

% g, \.k
draw_normal_k("g",1,1,true,false,false,false); % topdot = true, middot = false, midtwig = false, two = false

% \hflip{g}
draw_normal_k(159,-1,1,true,false,false,false); % topdot = true, middot = false, midtwig = false, two = false

% \vflip{g}
draw_normal_k(167,1,-1,true,false,false,false); % topdot = true, middot = false, midtwig = false, two = false

% \turn{g}
draw_normal_k(175,-1,-1,true,false,false,false); % topdot = true, middot = false, midtwig = false, two = false

% G, \'k
draw_normal_k("G",1,1,false,true,false,false); % topdot = false, middot = true, midtwig = false, two = false

% \hflip{G}
draw_normal_k(7,-1,1,false,true,false,false); % topdot = false, middot = true, midtwig = false, two = false

% \vflip{G}
draw_normal_k(15,1,-1,false,true,false,false); % topdot = false, middot = true, midtwig = false, two = false

% \turn{G}
draw_normal_k(23,-1,-1,false,true,false,false); % topdot = false, middot = true, midtwig = false, two = false

% \g, \=k
draw_normal_k(95,1,1,false,false,true,false); % topdot = false, middot = false, midtwig = true, two = false

% \hflip{\g}
draw_normal_k(2,-1,1,false,false,true,false); % topdot = false, middot = false, midtwig = true, two = false

% \vflip{\g}
draw_normal_k(10,1,-1,false,false,true,false); % topdot = false, middot = false, midtwig = true, two = false

% \turn{\g}
draw_normal_k(18,-1,-1,false,false,true,false); % topdot = false, middot = false, midtwig = true, two = false

% h
draw_normal_h("h",1,1,true,true,false); %NWSE = true, NESW = true, dot = false

% \h
draw_medieval_h(168,1,1,6,0); %twigs = 6, offset = 0

% H
draw_medieval_bigh("H",1,1);

% i
draw_normal_i("i",1,1,false,false,false,false,false,false); % dot = false, twig = false, high = false, top = false, twodots = false, circle = false

% j
draw_normal_i("j",1,1,false,false,false,false,true,false); % dot = false, twig = false, high = false, top = false, twodots = true, circle = false

% k
draw_normal_k("k",1,1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \vflip{k}
draw_normal_k("K",1,-1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% l
draw_normal_l("l",1,1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \vflip{l}
draw_normal_l(148,1,-1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% L \.l
draw_normal_l("L",1,1,true,false,false,false,false); %middot = true, topdot = false, midbar = false, topbar = false, circle = false

% \vflip{L}
draw_normal_l(140,1,-1,true,false,false,false,false); %middot = true, topdot = false, midbar = false, topbar = false, circle = false

% \'l \lflag
draw_normal_l(204,1,1,false,true,false,false,false); %middot = false, topdot = true, midbar = false, topbar = false, circle = false

% \vflip{\lflag}
draw_normal_l(205,1,-1,false,true,false,false,false); %middot = false, topdot = true, midbar = false, topbar = false, circle = false

% \=l \lbar
draw_normal_l(172,1,1,false,false,true,false,false); %middot = false, topdot = false, midbar = true, topbar = false, circle = false

% \vflip{\lbar}
draw_normal_l(173,1,-1,false,false,true,false,false); %middot = false, topdot = false, midbar = true, topbar = false, circle = false

% m
draw_normal_m("m",1,1,false,false,false); %dots = false, double = false, tree = false

% n
draw_shorttwig_n("n",1,1,false,false); %middot = false, sidedot = false

% \vflip{n}
draw_shorttwig_n(126,1,-1,false,false); %middot = false, sidedot = false

% \.n \n
draw_shorttwig_n(166,1,1,true,false); %middot = true, sidedot = false

% \vflip{\n}
draw_shorttwig_n(30,1,-1,true,false); %middot = true, sidedot = false

% \'n \ndot
draw_shorttwig_n(190,1,1,false,true); %middot = false, sidedot = true

% \vflip{\ndot}
draw_shorttwig_n(182,1,-1,false,true); %middot = false, sidedot = true

% N
draw_normal_h("N",1,1,true,false,false); %NWSE = true, NESW = false, dot = false

% \.N
draw_normal_h(198,1,1,true,false,true); %NWSE = true, NESW = false, dot = true

% \hflip{\.N}
draw_normal_h(206,-1,1,true,false,true); %NWSE = true, NESW = false, dot = true

% o
draw_normal_single_A("o",-1,1,false); %top = false

% \hflip{o}
draw_normal_single_A("O",1,1,false); %top = false

% \turn{o}
draw_normal_single_A(151,1,-1,false); %top = false

% \vflip{o}
draw_normal_single_A(255,-1,-1,false); %top = false

% p, \"b
draw_normal_b("p",1,1,true,true,false); %topdot = true, bottomdot = true, separated = false

% \hflip{p}
draw_normal_b(152,-1,1,true,true,false); %topdot = true, bottomdot = true, separated = false

% \vflip{\.b}
draw_normal_b(224,1,1,true,false,false); %topdot = true, bottomdot = false, separated = false

% \turn{\.b}
draw_normal_b(225,-1,1,true,false,false); %topdot = true, bottomdot = false, separated = false

% \.b
draw_normal_b(232,1,1,false,true,false); %topdot = false, bottomdot = true, separated = false

% \hflip{\.b}
draw_normal_b(233,-1,1,false,true,false); %topdot = false, bottomdot = true, separated = false

% \p
draw_normal_k(176,1,1,false,false,false,true); % topdot = false, middot = false, midtwig = false, two = true

% \"\p
draw_normal_k(184,1,1,true,false,false,true); % topdot = true, middot = false, midtwig = false, two = true

% \hflip{\"\p}
draw_normal_k(192,-1,1,true,false,false,true); % topdot = true, middot = false, midtwig = false, two = true

% P
draw_primitive_w("P",1,1);

% q
draw_primitive_w("q",-1,1);

% \vflip{q}
draw_primitive_w(96,-1,-1);

% \q
draw_normal_k(220,-1,1,false,false,false,false); % topdot = false, middot = false, midtwig = false, two = false

% \Q
draw_normal_k("Q",-1,1,false,false,false,true); % topdot = false, middot = false, midtwig = false, two = true

% r
draw_normal_r("r",1,1,true,false); % closed = true, topdot=false

% \vflip{r}
draw_normal_r(234,1,-1,true,false); % closed = true, topdot=false

% \hflip{r}
draw_normal_r(242,-1,1,true,false); % closed = true, topdot=false

% \turn{r}
draw_normal_r(250,-1,-1,true,false); % closed = true, topdot=false

% \.r or \rdot
draw_normal_r(1,1,1,true,true); % closed = true, topdot=true

% \vflip{\rdot}
draw_normal_r(9,1,-1,true,true); % closed = true, topdot=true

% \hflip{\rdot}
draw_normal_r(17,-1,1,true,true); % closed = true, topdot=true

% \turn{\rdot}
draw_normal_r(25,-1,-1,true,true); % closed = true, topdot=true

% \r
draw_greenland_r("R",1,1);

% \vflip{\r}
draw_greenland_r(210,1,-1);

% \hflip{\r}
draw_greenland_r(218,-1,1);

% \turn{\r}
draw_greenland_r(226,-1,-1);

% s
draw_normal_s("s",1,1,false,false,false,false,false); %twobars = false, chair = false, high = false, twigs = false, flat = false

% \hflip{s}
draw_normal_s(179,-1,1,false,false,false,false,false); %twobars = false, chair = false, high = false, twigs = false, flat = false

% S
draw_normal_s("S",-1,1,false,false,true,false,false); %twobars = false, chair = false, high = true, twigs = false, flat = false

% \hflip{S}
draw_normal_s(227,1,1,false,false,true,false,false); %twobars = false, chair = false, high = true, twigs = false, flat = false

% \vflip{S}
draw_normal_s(235,-1,-1,false,false,true,false,false); %twobars = false, chair = false, high = true, twigs = false, flat = false

% \turn{S}
draw_normal_s(243,1,-1,false,false,true,false,false); %twobars = false, chair = false, high = true, twigs = false, flat = false

% \S
draw_normal_s(187,1,1,false,true,false,false,false); %twobars = false, chair = true, high = false, twigs = false, flat = false

% \hflip{\S}
draw_normal_s(203,-1,1,false,true,false,false,false); %twobars = false, chair = true, high = false, twigs = false, flat = false

% \vflip{\S}
draw_normal_s(211,1,-1,false,true,false,false,false); %twobars = false, chair = true, high = false, twigs = false, flat = false

% \turn{\S}
draw_normal_s(219,-1,-1,false,true,false,false,false); %twobars = false, chair = true, high = false, twigs = false, flat = false

% t
draw_normal_l("t",-1,1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% \vflip{t}
draw_normal_l(149,-1,-1,false,false,false,false,false); %middot = false, topdot = false, midbar = false, topbar = false, circle = false

% T
draw_normal_t("T",1,1,false,false,false,false,false); %middot = false, topdots = false, doublearrow = false, arlaug = false, mid = false

%\T
draw_normal_t(212,1,1,false,false,true,false,false); %middot = false, topdots = false, doublearrow = true, arlaug = false, mid = false

% \th
draw_normal_th(254,1,1,false,false,false); %big = false, dot = false, doubble = false

% \hflip{\th}
draw_normal_th(238,-1,1,false,false,false); %big = false, dot = false, doubble = false

% \TH
draw_normal_th(222,1,1,true,false,false); %big = true, dot = false, doubble = false

% \hflip{\TH}
draw_normal_th(221,-1,1,true,false,false); %big = true, dot = false, doubble = false

% \thth
draw_normal_th(158,1,1,false,false,true); %big = false, dot = false, doubble = true

% \hflip{\thth}
draw_normal_th(174,-1,1,false,false,true); %big = false, dot = false, doubble = true

% \dh, \.th
draw_normal_th(240,1,1,false,true,false); %big = false, dot = true, doubble = false

% \hflip{\dh}
draw_normal_th(241,-1,1,false,true,false); %big = false, dot = true, doubble = false

% \DH, \.\TH
draw_normal_th(208,1,1,true,true,false); %big = true, dot = true, doubble = false

% \hflip{\DH}
draw_normal_th(200,-1,1,true,true,false); %big = true, dot = true, doubble = false

% u
draw_normal_u("u",1,1,false,0); %tight = false, 0 = no dots

% \vflip{u}
draw_normal_u(237,1,-1,false,0); %tight = false, 0 = no dots

% \hflip{u}
draw_normal_u(245,-1,1,false,0); %tight = false, 0 = no dots

% \turn{u}
draw_normal_u(253,-1,-1,false,0); %tight = false, 0 = no dots

% v, \.u
draw_normal_u("v",1,1,false,1); %tight = false, 1 = one dot

% \hflip{v}
draw_normal_u(134,-1,1,false,1); %tight = false, 1 = one dot

% \vflip{v}
draw_normal_u(142,1,-1,false,1); %tight = false, 1 = one dot

% \turn{v}
draw_normal_u(150,-1,-1,false,1); %tight = false, 1 = one dot

% V, \.f
draw_normal_f("V",1,1,true,false,false); %highdot = true, stemdot = false, twigdot = false

% \hflip{V}
draw_normal_f(5,-1,1,true,false,false); %highdot = true, stemdot = false, twigdot = false

% \vflip{V}
draw_normal_f(13,1,-1,true,false,false); %highdot = true, stemdot = false, twigdot = false

% \turn{V}
draw_normal_f(21,-1,-1,true,false,false); %highdot = true, stemdot = false, twigdot = false

% \~f or \v
draw_normal_f("W",1,1,false,true,false); %highdot = false, stemdot = true, twigdot = false

% \hflip{\v}
draw_normal_f(4,-1,1,false,true,false); %highdot = false, stemdot = true, twigdot = false

% \vflip{\v}
draw_normal_f(12,1,-1,false,true,false); %highdot = false, stemdot = true, twigdot = false

% \turn{\v}
draw_normal_f(20,-1,-1,false,true,false); %highdot = false, stemdot = true, twigdot = false

% \'f or \V
draw_normal_f(94,1,1,false,false,true); %highdot = false, stemdot = false, twigdot = true

% \hflip{\V}
draw_normal_f(3,-1,1,false,false,true); %highdot = false, stemdot = false, twigdot = true

% \vflip{\V}
draw_normal_f(11,1,-1,false,false,true); %highdot = false, stemdot = false, twigdot = true

% \turn{\V}
draw_normal_f(19,-1,-1,false,false,true); %highdot = false, stemdot = false, twigdot = true

% w
draw_medieval_w("w",1,1);

% \vflip{w}
draw_medieval_w(127,1,-1);

% \hflip{w}
draw_medieval_w(135,-1,1);

% \turn{w}
draw_medieval_w(143,-1,-1);

% x
draw_normal_s("x",1,1,false,false,false,true,false); %twobars = false, chair = false, high = false, twigs = true, flat = false

% \vflip{x}
draw_normal_s(144,1,-1,false,false,false,true,false); %twobars = false, chair = false, high = false, twigs = true, flat = false

% \x
draw_normal_t(128,1,-1,false,false,false,false,false); %middot = false, topdots = false, doublearrow = false, arlaug = false, mid = false

% X
draw_medieval_x("X",1,1,false); %stem = false

% \X
draw_medieval_x(136,1,1,true); %stem = true

% y
draw_normal_m("y",1,-1,false,false,false); %dots = false, double = false, tree = false

% Y
draw_normal_m("Y",1,-1,false,false,true); %dots = false, double = false, tree = true

% \vflip{Y}
draw_normal_m(249,1,1,false,false,true); %dots = false, double = false, tree = true

% \"u or \y
draw_normal_u("U",1,1,false,2); %tight = false, 2 = two dots

% \hflip{\y}
draw_normal_u(137,-1,1,false,2); %tight = false, 2 = two dots

% \vflip{\y}
draw_normal_u(145,1,-1,false,2); %tight = false, 2 = two dots

% \hflip{\y}
draw_normal_u(153,-1,-1,false,2); %tight = false, 2 = two dots

% \=u or \Y
draw_normal_u(93,1,1,false,3); %tight = false, 3 = bar

% \hflip{\Y}
draw_normal_u(130,-1,1,false,3); %tight = false, 3 = bar

% \vflip{\Y}
draw_normal_u(138,1,-1,false,3); %tight = false, 3 = bar

% \turn{\Y}
draw_normal_u(146,-1,-1,false,3); %tight = false, 3 = bar

% z
draw_shorttwig_s("z",1,1,false,false,true,false,false); %dot = false, twig = false, hook = true, arrow = false, circle = false

% \vflip{z}
draw_shorttwig_s(186,1,-1,false,false,true,false,false); %dot = false, twig = false, hook = true, arrow = false, circle = false

% \hflip{z}
draw_shorttwig_s(194,-1,1,false,false,true,false,false); %dot = false, twig = false, hook = true, arrow = false, circle = false

% \turn{z}
draw_shorttwig_s(202,-1,-1,false,false,true,false,false); %dot = false, twig = false, hook = true, arrow = false, circle = false

% \z
draw_shorttwig_s(163,1,1,false,true,false,false,false); %dot = false, twig = true, hook = false, arrow = false, circle = false

% \vflip{\z}
draw_shorttwig_s(171,1,-1,false,true,false,false,false); %dot = false, twig = true, hook = false, arrow = false, circle = false

% Z
draw_shorttwig_s("Z",1,1,false,false,false,true,false); %dot = false, twig = false, hook = false, arrow = true, circle = false

% \vflip{Z}
draw_shorttwig_s(251,1,-1,false,false,false,true,false); %dot = false, twig = false, hook = false, arrow = true, circle = false

% \aa
draw_modern_aa(229,1,1);

% \hflip{\aa}
draw_modern_aa(213,-1,1);

% \"a
draw_normal_h(228,1,1,false,true,false); %NWSE = false, NESW = true, dot = false

% \ae (same character as \"a)
draw_normal_h(230,1,1,false,true,false); %NWSE = false, NESW = true, dot = false

% \"o
draw_normal_double_A(246,-1,1,false,false,false); %three = false, stlb = false, sblb = false

% \o (same character as \"o)
draw_normal_double_A(248,-1,1,false,false,false); %three = false, stlb = false, sblb = false

% \hflip{\o}
draw_normal_double_A(247,1,1,false,false,false); %three = false, stlb = false, sblb = false

% \oo
draw_normal_double_A(215,-1,1,false,true,false); %false = true, stlb = true, sblb = false

% \hflip{\oo}
draw_normal_double_A(199,1,1,false,true,false); %false = true, stlb = true, sblb = false

% \vflip{\oo}
draw_normal_double_A(191,-1,-1,false,true,false); %false = true, stlb = true, sblb = false

% \turn{\oo}
draw_normal_double_A(239,1,-1,false,true,false); %false = true, stlb = true, sblb = false

% \oO
draw_normal_double_A(223,-1,1,false,false,true); %false = true, stlb = false, sblb = true

% \hflip{\oO}
draw_normal_double_A(207,1,1,false,false,true); %false = true, stlb = false, sblb = true

% \vflip{\oO}
draw_normal_double_A(183,-1,-1,false,false,true); %false = true, stlb = false, sblb = true

% \turn{\oO}
draw_normal_double_A(231,1,-1,false,false,true); %false = true, stlb = false, sblb = true

% \"O
draw_normal_double_A(214,-1,1,true,false,false); %three = true, stlb = false, sblb = false

% \hflip{\"O}, \hflip{\O}
draw_normal_double_A(217,1,1,true,false,false); %three = true, stlb = false, sblb = false

% \O (same character as \"O)
draw_normal_double_A(216,-1,1,true,false,false); %three = true, stlb = false, sblb = false

% \ey
draw_primitive_ng("J",1,1,false,true,false,false); %top = false, line = true, empty = false, belgthor = false

% \arlaug
draw_normal_t(177,1,1,false,false,false,true,false); %middot = false, topdots = false, doublearrow = false, arlaug = true, mid = false

% \hflip{\arlaug}
draw_normal_t(178,-1,1,false,false,false,true,false); %middot = false, topdots = false, doublearrow = false, arlaug = true, mid = false

% \vflip{\arlaug}
draw_normal_t(169,1,-1,false,false,false,true,false); %middot = false, topdots = false, doublearrow = false, arlaug = true, mid = false

% \turn{\arlaug}
draw_normal_t(161,-1,-1,false,false,false,true,false); %middot = false, topdots = false, doublearrow = false, arlaug = true, mid = false

% \tvimadur
draw_normal_m(185,1,1,false,true,false); %dots = false, double = true, tree = false

% \belgthor
draw_primitive_ng(193,1,1,false,true,false,true); %top = false, line = true, empty = false, belgthor = true

ligtable ".":
         ":":
          62: %62 \tripleeye
          63: %63 \quadeye
          64: %64 \penteye
         "!":
         "+":
          44: %44 \doubleplus
          36: %36 \star
          42: %42 \cross
              "a" kern -0.1base_width#,
               29 kern -0.1base_width#, % 29 \a
              209 kern -0.1base_width#, % 209 \adot
              "A" kern -0.3base_width#,
              "d" kern -0.3base_width#,
              188 kern -0.3base_width#, % 188 \~t
              164 kern -0.3base_width#, % 164 \=t
              180 kern -0.3base_width#, % 180 \'t
              156 kern -0.3base_width#, % 156 \^t
              "D" kern -0.3base_width#,
              132 kern -0.3base_width#, % 132 \D
               95 kern +0.15base_width#, %  95 \g, \=k
              "h" kern -0.1base_width#,
              168 kern -0.1base_width#, %168 \h
              "m" kern -0.3base_width#,
              172 kern +0.1base_width#, % 172\=l
              "N" kern -0.1base_width#,
              198 kern -0.1base_width#, % 198 \.N
              "o" kern -0.1base_width#,
              "q" kern -0.3base_width#,
              220 kern -0.3base_width#, % 220 \q
              "Q" kern -0.3base_width#,
              "t" kern -0.3base_width#,
              "T" kern -0.2base_width#,
              148 kern -0.1base_width#, % 148 \T
              "y" kern -0.3base_width#,
              229 kern -0.4base_width#, % \aa
              228 kern -0.1base_width#, % \"a
              230 kern -0.1base_width#, % \ae
              246 kern -0.1base_width#, % \"o
              248 kern -0.1base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#; % \O


ligtable  59: %59 \tripledot
          60: %60 \quaddot
          61: %61 \pentdot
          34: %34 \doublebar
          35: %35 \triplebar
          45: %45 \tripleplus
          37: %37 \doublecross
          38: %38 \triplecross
              "a" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              188 kern -0.1base_width#, % 188 \~t
              164 kern -0.1base_width#, % 164 \=t
              180 kern -0.1base_width#, % 180 \'t
              156 kern -0.1base_width#, % 156 \^t
              "D" kern -0.1base_width#,
              132 kern -0.1base_width#, % 132 \D
              "h" kern -0.1base_width#,
               95 kern +0.15base_width#, %  95 \g, \=k
              168 kern -0.1base_width#, %168 \h
              172 kern +0.1base_width#, % 172\=l
              "m" kern -0.1base_width#,
              "N" kern -0.1base_width#,
              198 kern -0.1base_width#, % 198 \.N
              "o" kern -0.1base_width#,
              220 kern -0.1base_width#, % 220 \q
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              148 kern -0.1base_width#, % 148 \T
              "y" kern -0.1base_width#,
              229 kern -0.1base_width#, % \aa
              228 kern -0.1base_width#, % \"a
              230 kern -0.1base_width#, % \ae
              246 kern -0.1base_width#, % \"o
              248 kern -0.1base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#; % \O

ligtable "a":
         180: % \'t
         188: % \~t
         220: % \q
         "o":
         "t":
              "G" kern +0.1base_width#,
               95 kern +0.2base_width#, %  95 \g \=k
              "i" kern +0.1base_width#,
              "L" kern +0.1base_width#, % L \.l
              172 kern +0.15base_width#, % 172 \=L
              220 kern -0.1base_width#, % 220 \q
              166 kern +0.1base_width#, %166 \.n
              "t" kern -0.1base_width#,
              "x" kern +0.1base_width#;


ligtable "b":
         "p": % \"b
         224: % \'b
         232: % \.b
              "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              "a" kern -0.2base_width#,
              "A" kern -0.15base_width#,
              "d" kern -0.1base_width#,
              164 kern -0.1base_width#, %\=t
              180 kern -0.1base_width#, % \'t
              188 kern -0.1base_width#, % \~t
              "D" kern -0.1base_width#,
              132 kern -0.1base_width#, % \D, \"T
              165 kern -0.1base_width#, % \=i
              "h" kern -0.1base_width#,
              165 kern -0.3base_width#, % \h
              "m" kern -0.2base_width#,
              "N" kern -0.1base_width#,
              198 kern -0.1base_width#, % \.N
              "o" kern -0.1base_width#,
              220 kern -0.2base_width#, % 220 \q
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              "y" kern -0.2base_width#,
              229 kern -0.2base_width#, % \aa
              228 kern -0.1base_width#, % \"a
              230 kern -0.1base_width#, % \ae
              246 kern -0.1base_width#, % \"o
              248 kern -0.1base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#; % \O

ligtable
         "B":
              "." kern -0.1base_width#,
              ":" kern -0.1base_width#,
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              "a" kern -0.1base_width#,
              "c" kern -0.1base_width#,
              155 kern -0.1base_width#, % \c
              "d" kern -0.2base_width#,
              164 kern -0.2base_width#, %\=t
              180 kern -0.2base_width#, % \'t
              188 kern -0.2base_width#, % \~t
              "D" kern -0.2base_width#,
              132 kern -0.2base_width#, % \D, \"T
              165 kern -0.1base_width#, % \=i
              "h" kern -0.1base_width#,
              165 kern -0.3base_width#, % \h
              "m" kern -0.4base_width#,
              "N" kern -0.1base_width#,
              198 kern -0.1base_width#, % \.N
              "o" kern -0.1base_width#,
              "q" kern -0.2base_width#,
              220 kern -0.3base_width#, % 220 \q
              "t" kern -0.2base_width#,
              "T" kern -0.2base_width#,
              "y" kern -0.2base_width#,
              163 kern -0.15base_width#, % \z
              "Z" kern -0.2base_width#,
              229 kern -0.2base_width#, % \aa
              228 kern -0.1base_width#, % \"a
              230 kern -0.1base_width#, % \ae
              246 kern -0.1base_width#, % \"o
              248 kern -0.1base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#; % \O

ligtable
         "c":
         155: % \.c
              "A" kern -0.3base_width#,
              "y" kern -0.3base_width#;

ligtable
         "C":
              "A" kern -0.2base_width#,
              "E" kern +0.1base_width#,
               95 kern +0.2base_width#, % \=k
              172 kern +0.15base_width#, % \=l
              124 kern +0.1base_width#, % \^l
              229 kern -0.2base_width#; % \aa
ligtable
         165: % \=i, \e
         "E":
              "d" kern -0.1base_width#,
              164 kern -0.1base_width#, %\=t
              180 kern -0.1base_width#, % \'t
              188 kern -0.1base_width#, % \~t
              "D" kern -0.1base_width#,
              132 kern -0.1base_width#, % \D, \"T
               95 kern +0.1base_width#, %  95 \g, \=k
              172 kern +0.1base_width#, % 172\=l
              "m" kern -0.2base_width#,
              "N" kern -0.1base_width#,
              198 kern -0.1base_width#, % \.N
              220 kern -0.2base_width#, % 220 \q
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              148 kern -0.1base_width#, % 148 \T
              "y" kern -0.3base_width#,
              229 kern -0.2base_width#, % \aa
              228 kern -0.1base_width#, % \"a
              230 kern -0.1base_width#, % \ae
              246 kern -0.1base_width#, % \"o
              248 kern -0.1base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#; % \O

ligtable
          "d":
          164: % \=t
              "." kern +0.1base_width#,
              "e" kern +0.1base_width#,
              165 kern +0.1base_width#, % 165 \=i
              "j" kern +0.1base_width#,
               95 kern +0.2base_width#, %  95 \g, \=k
              "L" kern +0.1base_width#,
              172 kern +0.2base_width#, % 172\=l
              166 kern +0.1base_width#, % 166 \.n
              142 kern +0.1base_width#, % 142 \~f
              "x" kern +0.15base_width#,
              "z" kern +0.1base_width#;

ligtable
          "D":
          132: % \D, \"T
          "l":
          "L": % \.l
          172: % \=l
          124: % \^l
          "T":
          148: % \T
               62 kern -0.1base_width#, %62, \tripleeye
               63 kern -0.2base_width#, %63, \quadeye
               64 kern -0.2base_width#, %64, \penteye
              "+" kern -0.2base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.2base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              "a" kern -0.2base_width#,
              "A" kern -0.4base_width#,
              "h" kern -0.2base_width#,
              168 kern -0.2base_width#, % \h
              "m" kern -0.2base_width#,
              "N" kern -0.2base_width#,
              198 kern -0.2base_width#, % \.N
              "o" kern -0.2base_width#,
              220 kern -0.2base_width#, % 220 \q
              "y" kern -0.4base_width#,
              229 kern -0.2base_width#, % \aa
              228 kern -0.2base_width#, % \"a
              230 kern -0.2base_width#, % \ae
              246 kern -0.15base_width#, % \"o
              248 kern -0.15base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#, % \O
              221 kern -0.1base_width#; % \ey

%ligtable e, \.i

ligtable "f":
         "F":
         "g":
         "G":
          95: %\g, \=k
         "k":
         "m":
         "P":
         "V":
          87: % \v
          94: % \V
              "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              "a" kern -0.4base_width#,
               29 kern -0.4base_width#, %\a
              209 kern -0.4base_width#, %\adot
              "A" kern -0.5base_width#,
              163 kern -0.2base_width#, % \=c
              "d" kern -0.2base_width#,
              164 kern -0.2base_width#, % \=t
              180 kern -0.2base_width#, % \'t
              188 kern -0.2base_width#, % \~t
              "D" kern -0.2base_width#,
              132 kern -0.2base_width#, % \D, \"T
              "e" kern -0.1base_width#,
              220 kern -0.2base_width#, % \=i
              "E" kern -0.3base_width#,
              "j" kern -0.1base_width#,
              "h" kern -0.3base_width#,
              168 kern -0.3base_width#, % \h
              "H" kern -0.3base_width#,
              "m" kern -0.1base_width#,
              "N" kern -0.2base_width#,
              198 kern -0.2base_width#, % \.N
              "o" kern -0.3base_width#,
              220 kern -0.1base_width#, % 220 \q
              "t" kern -0.2base_width#,
              "T" kern -0.2base_width#,
              148 kern -0.2base_width#, % 148 \T
              128 kern -0.4base_width#, % 128 \x
              "y" kern -0.5base_width#,
              228 kern -0.3base_width#, % \"a
              230 kern -0.3base_width#, % \ae
              246 kern -0.3base_width#, % \"o
              248 kern -0.3base_width#, % \o
              215 kern -0.3base_width#, % \oo
              223 kern -0.3base_width#, % \oo
              231 kern -0.3base_width#, % \oo
              239 kern -0.3base_width#, % \oo
              214 kern -0.2base_width#, % \"O
              216 kern -0.2base_width#, % \O
               74 kern -0.2base_width#, % \ey
              177 kern -0.3base_width#, % \arlaug
              193 kern -0.2base_width#; % \belgthor

ligtable "h":
         168: % \h
         "H":
              "a" kern -0.2base_width#,
              "A" kern -0.3base_width#,
              163 kern -0.1base_width#, % \=c
              "d" kern -0.1base_width#,
              164 kern -0.1base_width#, % \=t
              180 kern -0.1base_width#, % \'t
              188 kern -0.1base_width#, % \~t
              "D" kern -0.1base_width#,
              132 kern -0.1base_width#, % \D, \"T
              165 kern -0.1base_width#, % \=i
              "m" kern -0.2base_width#,
              220 kern -0.2base_width#, % 220 \q
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              148 kern -0.1base_width#, % 148 \T
              "y" kern -0.2base_width#,
              229 kern -0.2base_width#; % \aa

ligtable "i":
              "f" kern +0.1base_width#,
              "g" kern +0.1base_width#,
              "i" kern +0.1base_width#,
              "k" kern +0.1base_width#,
              "l" kern +0.1base_width#,
              "n" kern +0.1base_width#,
              "b" kern +0.1base_width#,
              "p" kern +0.1base_width#,
              224 kern +0.1base_width#, % \'b
              232 kern +0.1base_width#, % \.b
              176 kern +0.1base_width#, % \p
              184 kern +0.1base_width#, % \"\p
              "r" kern +0.1base_width#,
                1 kern +0.1base_width#,
              186 kern +0.1base_width#,
              "S" kern +0.1base_width#,
              254 kern +0.1base_width#, % \th
              222 kern +0.1base_width#, % \TH
              240 kern +0.1base_width#, % \dh, \.th
              208 kern +0.1base_width#, % \DH, \.\TH
              "u" kern +0.1base_width#,
              "v" kern +0.1base_width#, % \.u
              134 kern +0.1base_width#, % \v, \.f
              142 kern +0.1base_width#, % \~f
              "S" kern +0.1base_width#,
              150 kern +0.1base_width#, % \'f
              161 kern +0.1base_width#, % \"u, \y
              169 kern +0.1base_width#; % \=u, \Y

ligtable
          "n":
          166: % \.n
          "N":
          198: % \.N
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.1base_width#, %42, \cross
              "d" kern -0.2base_width#,
              164 kern -0.2base_width#, %\=t
              180 kern -0.2base_width#, % \'t
              188 kern -0.2base_width#, % \~t
              "D" kern -0.2base_width#,
              132 kern -0.2base_width#, % \D, \"T
              165 kern -0.1base_width#, % \=i
              168 kern -0.2base_width#, % \h
              "m" kern -0.4base_width#,
              "N" kern -0.2base_width#,
              198 kern -0.2base_width#, % \.N
              220 kern -0.4base_width#, % 220 \q
              "t" kern -0.2base_width#,
              "T" kern -0.2base_width#,
              148 kern -0.2base_width#, % 148 \T
              "y" kern -0.2base_width#,
              229 kern -0.2base_width#; % \aa


ligtable 176: % \p
         184: % \"\p
              "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              "a" kern -0.3base_width#,
              163 kern -0.2base_width#, % \=c
              "d" kern -0.2base_width#,
              164 kern -0.2base_width#, % \=t
              180 kern -0.2base_width#, % \'t
              188 kern -0.2base_width#, % \~t
              "D" kern -0.2base_width#,
              132 kern -0.2base_width#, % \D, \"T
              165 kern -0.3base_width#, % \=i
              "h" kern -0.3base_width#,
              168 kern -0.3base_width#, % \h
              "m" kern -0.1base_width#,
              "N" kern -0.2base_width#,
              198 kern -0.2base_width#, % \.N
              "o" kern -0.2base_width#,
              220 kern -0.1base_width#, % 220 \q
              "t" kern -0.2base_width#,
              "T" kern -0.2base_width#,
              148 kern -0.2base_width#, % 148 \T
              "y" kern -0.1base_width#,
              229 kern -0.1base_width#, % \aa
              228 kern -0.2base_width#, % \"a
              230 kern -0.2base_width#, % \ae
              246 kern -0.2base_width#, % \"o
              248 kern -0.2base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#, % \O
              221 kern -0.2base_width#; % \ey

ligtable "r":
           1: %\.r
              "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              "a" kern -0.3base_width#,
              163 kern -0.2base_width#, % \=c
              "d" kern -0.2base_width#,
              164 kern -0.2base_width#, % \=t
              180 kern -0.2base_width#, % \'t
              188 kern -0.2base_width#, % \~t
              "D" kern -0.1base_width#,
              132 kern -0.1base_width#, % \D, \"T
              165 kern -0.2base_width#, % \=i
              "h" kern -0.2base_width#,
              168 kern -0.2base_width#, % \h
              "m" kern -0.25base_width#,
              "N" kern -0.2base_width#,
              198 kern -0.2base_width#, % \.N
              "o" kern -0.2base_width#,
              220 kern -0.3base_width#, % 220 \q
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              148 kern -0.1base_width#, % 148 \T
              "y" kern -0.1base_width#,
              229 kern -0.1base_width#, % \aa
              228 kern -0.2base_width#, % \"a
              230 kern -0.2base_width#, % \ae
              246 kern -0.1base_width#, % \"o
              248 kern -0.1base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#, % \O
              221 kern -0.2base_width#; % \ey



ligtable 186: % \r
         "u":
         "v":
         161: % \"u
         169: % \=u
              "a" kern -0.1base_width#,
              "d" kern -0.1base_width#,
              164 kern -0.1base_width#, % \=t
              180 kern -0.1base_width#, % \'t
              188 kern -0.1base_width#, % \~t
              "D" kern -0.1base_width#,
              132 kern -0.1base_width#, % \D, \"T
              165 kern -0.1base_width#, % \=i
              "h" kern -0.1base_width#,
              168 kern -0.1base_width#, % \h
              "m" kern -0.25base_width#,
              "N" kern -0.1base_width#,
              198 kern -0.1base_width#, % \.N
              220 kern -0.3base_width#, % 220 \q
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              148 kern -0.1base_width#, % 148 \T
              "y" kern -0.1base_width#,
              228 kern -0.1base_width#, % \"a
              230 kern -0.1base_width#; % \ae

ligtable "s":
         "x":
              "d" kern -0.2base_width#,
              164 kern -0.2base_width#, % \=t
              180 kern -0.2base_width#, % \'t
              188 kern -0.2base_width#, % \~t
              "D" kern -0.2base_width#,
              132 kern -0.2base_width#, % \D, \"T
               95 kern +0.15base_width#, %  95 \g, \=k
              172 kern +0.1base_width#, % 172\=l
              "m" kern -0.25base_width#,
              "N" kern -0.1base_width#,
              198 kern -0.1base_width#, % \.N
              220 kern -0.35base_width#, % 220 \q
              "t" kern -0.2base_width#,
              "T" kern -0.2base_width#;

ligtable "S":
              "a" kern -0.15base_width#,
              "A" kern -0.3base_width#,
              "o" kern -0.1base_width#,
              "y" kern -0.3base_width#,
              228 kern -0.2base_width#, % \"a
              230 kern -0.2base_width#, % \ae
              246 kern -0.1base_width#, % \"o
              248 kern -0.1base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#, % \O
              221 kern -0.1base_width#; % \ey

ligtable 254: % \th
         240: % \.\th, \dh
         221: % \ey
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               45 kern -0.1base_width#, %45, \tripleplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               38 kern -0.1base_width#, %38, \triplecross
               42 kern -0.1base_width#, %42, \cross
              "d" kern -0.15base_width#,
              164 kern -0.15base_width#, % \=t
              180 kern -0.15base_width#, % \'t
              188 kern -0.15base_width#, % \~t
              "D" kern -0.15base_width#,
              132 kern -0.15base_width#, % \D, \"T
              "h" kern -0.1base_width#,
              168 kern -0.1base_width#, % \h
              "m" kern -0.3base_width#,
              "N" kern -0.1base_width#,
              198 kern -0.1base_width#, % \.N
              220 kern -0.3base_width#, % 220 \q
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              148 kern -0.1base_width#, % 148 \T
              "y" kern -0.3base_width#,
              229 kern -0.3base_width#, % \aa
              228 kern -0.1base_width#, % \"a
              230 kern -0.1base_width#; % \ae

ligtable 222: % \TH
         208: % \.\TH, \DH
         158: % \thth
         229: % \aa
              164 kern -0.1base_width#, % \=t
              180 kern -0.1base_width#, % \'t
              188 kern -0.1base_width#, % \~t
              "D" kern -0.1base_width#,
              132 kern -0.1base_width#, % \D, \"T
              "m" kern -0.25base_width#,
              "N" kern -0.1base_width#,
              198 kern -0.1base_width#, % \.N
              220 kern -0.25base_width#, % 220 \q
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              148 kern -0.1base_width#, % 148 \T
              "y" kern -0.25base_width#,
              229 kern -0.2base_width#; % \aa

ligtable "y":
              "." kern -0.3base_width#,
              ":" kern -0.3base_width#,
               59 kern -0.1base_width#, %59, \tripledot
               62 kern -0.3base_width#, %62, \tripleeye
               63 kern -0.3base_width#, %63, \quadeye
               64 kern -0.3base_width#, %64, \penteye
              "!" kern -0.2base_width#,
               34 kern -0.1base_width#, %34, \doublebar
              "+" kern -0.3base_width#,
               44 kern -0.2base_width#, %44, \doubleplus
               36 kern -0.3base_width#, %36, \star
               37 kern -0.2base_width#, %37, \doublecross
               42 kern -0.3base_width#, %42, \cross
              "a" kern -0.3base_width#,
              "c" kern -0.2base_width#,
               67 kern -0.2base_width#, % \.c
              163 kern -0.2base_width#, % \=c
              "d" kern -0.3base_width#,
              164 kern -0.3base_width#, % \=t
              180 kern -0.3base_width#, % \'t
              188 kern -0.3base_width#, % \~t
              "D" kern -0.3base_width#,
              132 kern -0.3base_width#, % \D, \"T
              165 kern -0.3base_width#, % \=i
              "h" kern -0.3base_width#,
              168 kern -0.3base_width#, % \h
              "m" kern -0.4base_width#,
              "N" kern -0.2base_width#,
              198 kern -0.2base_width#, % \.N
              "o" kern -0.1base_width#,
              220 kern -0.4base_width#, % 220 \q
              "s" kern -0.1base_width#,
              "t" kern -0.3base_width#,
              "T" kern -0.3base_width#,
              148 kern -0.2base_width#, % 148 \T
              "x" kern -0.1base_width#,
              "y" kern -0.1base_width#,
              "z" kern -0.2base_width#,
              228 kern -0.1base_width#, % \"a
              230 kern -0.1base_width#, % \ae
              246 kern -0.1base_width#, % \"o
              248 kern -0.1base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#, % \O
              221 kern -0.1base_width#; % \ey


ligtable "z":
         163:
         "Z":
              "a" kern -0.2base_width#,
              "A" kern -0.3base_width#,
              "d" kern -0.1base_width#,
              164 kern -0.1base_width#, % \=t
              180 kern -0.1base_width#, % \'t
              188 kern -0.1base_width#, % \~t
              "D" kern -0.1base_width#,
              132 kern -0.1base_width#, % \D, \"T
              165 kern -0.1base_width#, % \=i
              "m" kern -0.25base_width#,
              "N" kern -0.1base_width#,
              198 kern -0.1base_width#, % \.N
              "o" kern -0.1base_width#,
              220 kern -0.35base_width#, % 220 \q
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              148 kern -0.1base_width#, % 148 \T
              "y" kern -0.3base_width#,
              228 kern -0.2base_width#, % \"a
              230 kern -0.2base_width#, % \ae
              246 kern -0.1base_width#, % \"o
              248 kern -0.1base_width#, % \o
              214 kern -0.1base_width#, % \"O
              216 kern -0.1base_width#, % \O
              221 kern -0.1base_width#; % \ey

ligtable 228: % \"a
         230: % \ae
         246: % \"o
         248: % \o
         214: % \"O
         216: % \O
              "+" kern -0.1base_width#,
               44 kern -0.1base_width#, %44, \doubleplus
               36 kern -0.1base_width#, %36, \star
               37 kern -0.1base_width#, %37, \doublecross
               42 kern -0.1base_width#, %42, \cross
              "d" kern -0.1base_width#,
              164 kern -0.1base_width#, %\=t
              180 kern -0.1base_width#, % \'t
              188 kern -0.1base_width#, % \~t
              "D" kern -0.1base_width#,
              132 kern -0.1base_width#, % \D, \"T
              165 kern -0.1base_width#, % \=i
              168 kern -0.2base_width#, % \h
              "m" kern -0.2base_width#,
              220 kern -0.2base_width#, % 220 \q
              "t" kern -0.1base_width#,
              "T" kern -0.1base_width#,
              148 kern -0.1base_width#, % 148 \T
              "y" kern -0.4base_width#,
              229 kern -0.2base_width#, % \aa
              228 kern -0.2base_width#, % \"a
              230 kern -0.2base_width#; % \ae


%    \end{macrocode}
%
%</frum>
%
%<*font>
%
% \section{Font driver files}\file{fru*.mf}
%
% This section describes the driver files
% \texttt{fru}\meta{family}\meta{series}\meta{shape}\texttt{.mf}, where
% \meta{family} is one of
% \texttt{c} (Common Germanic),
% \texttt{a} (Anglo-Saxon),
% \texttt{n} (normal),
% \texttt{t} (short-twig),
% \texttt{l} (staveless) and
% \texttt{m} (medieval).
% \meta{series} is one of
% \texttt{m} (medium, withoutlines),
% \texttt{b} (boldface, withoutlines),
% \texttt{l} (lightface, withoutlines),
% \texttt{n} (medium, withlines),
% \texttt{c} (boldface, withlines) and
% \texttt{k} (lightface, withlines).
% \meta{shape} is one of
% \texttt{n} (curved, hightwigs),
% \texttt{s} (straight, hightwigs),
% \texttt{r} (rounded, hightwigs),
% \texttt{m} (curved, lowtwigs),
% \texttt{t} (straight, lowtwigs) and
% \texttt{q} (rounded, lowtwigs).
%
% First we declare some common variables determining the
% shape of the font.
%
%    \begin{macrocode}
string boldness;
boolean withlines;
string barshape;
boolean loweredbars;

%    \end{macrocode}
% Next the variables have their values set. (Note that the beginning
% of the lines: <something> of course not shows up in the \MF file.)
% One line from these three:
%    \begin{macrocode}
%<medium>boldness="medium";
%<bold>boldness="bold";
%<light>boldness="light";
%    \end{macrocode}
% and one line from these two:
%    \begin{macrocode}
%<withoutlines>withlines=false;
%<withlines>withlines=true;
%    \end{macrocode}
% and one line from these three:
%    \begin{macrocode}
%<straight>barshape="straight";
%<curved>barshape="curved";
%<rounded>barshape="rounded";
%    \end{macrocode}
% and finally one line from these two:
%    \begin{macrocode}
%<hightwigs>loweredbars=false;
%<lowtwigs>loweredbars=true;
%    \end{macrocode}
%
% Then the basefile is loaded, with all the heavy stuff.
% And the code for the word separator symbols are
% loaded. Common to all font families.
%    \begin{macrocode}

input frubase;
input frusep;
%    \end{macrocode}
% And then the source files
% specific for the current font family is input.
%    \begin{macrocode}
%<frucin>input fruc;
%<fruain>input frua;
%<frunin>input frun;
%<frutin>input frut;
%<frulin>input frul;
%<frumin>input frum;

bye.
%    \end{macrocode}
%
%</font>
%
% \Finale
