summaryrefslogtreecommitdiff
path: root/macros/latex/required/cyrillic
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/required/cyrillic
Initial commit
Diffstat (limited to 'macros/latex/required/cyrillic')
-rw-r--r--macros/latex/required/cyrillic/README.md67
-rw-r--r--macros/latex/required/cyrillic/changes.txt192
-rw-r--r--macros/latex/required/cyrillic/cyinpenc.dtx1838
-rw-r--r--macros/latex/required/cyrillic/cyinpenc.pdfbin0 -> 206017 bytes
-rw-r--r--macros/latex/required/cyrillic/cyoutenc.dtx611
-rw-r--r--macros/latex/required/cyrillic/cyoutenc.pdfbin0 -> 148216 bytes
-rw-r--r--macros/latex/required/cyrillic/cyrlatex.ins277
-rw-r--r--macros/latex/required/cyrillic/lcy.dtx382
-rw-r--r--macros/latex/required/cyrillic/lcy.pdfbin0 -> 198415 bytes
-rw-r--r--macros/latex/required/cyrillic/lcycmlh.fdd338
-rw-r--r--macros/latex/required/cyrillic/lcycmlh.pdfbin0 -> 125811 bytes
-rw-r--r--macros/latex/required/cyrillic/manifest.txt31
-rw-r--r--macros/latex/required/cyrillic/ot2.dtx218
-rw-r--r--macros/latex/required/cyrillic/ot2.pdfbin0 -> 112390 bytes
-rw-r--r--macros/latex/required/cyrillic/ot2cmams.fdd135
-rw-r--r--macros/latex/required/cyrillic/ot2cmams.pdfbin0 -> 99095 bytes
-rw-r--r--macros/latex/required/cyrillic/ot2cmlh.fdd342
-rw-r--r--macros/latex/required/cyrillic/ot2cmlh.pdfbin0 -> 129052 bytes
-rw-r--r--macros/latex/required/cyrillic/t2lhfnt.fdd997
-rw-r--r--macros/latex/required/cyrillic/t2lhfnt.pdfbin0 -> 135567 bytes
20 files changed, 5428 insertions, 0 deletions
diff --git a/macros/latex/required/cyrillic/README.md b/macros/latex/required/cyrillic/README.md
new file mode 100644
index 0000000000..9d42a35675
--- /dev/null
+++ b/macros/latex/required/cyrillic/README.md
@@ -0,0 +1,67 @@
+## README for the `cyrillic` bundle (June 2001)
+
+This `bundle` consists of LaTeX2e packages for Cyrillic languages
+supported by the LaTeX3 Project Team.
+
+Running LaTeX on the file cyrlatex.ins will produce all the package
+files, and some associated files.
+
+So you should first process cyrlatex.ins:
+
+ latex cyrlatex.ins
+
+The files with extensions `.def`, `.fd`, `.sty` and `.tex` should
+then be moved to a directory on LaTeX's standard input path.
+
+The documented source code of each component may then be obtained by
+running LaTeX on a files with extensions `.dtx` and `.fdd`.
+
+For example:
+
+ latex cyoutenc.dtx
+
+will produce the file `cyoutenc.pdf`, documenting the output encodings
+source code.
+
+The file `manifest.txt` contains a list of the main files in the
+distribution together with a one-or-two line summary of each file.
+
+
+### Distribution Conditions
+
+All the files in this bundle may be distributed under the conditions
+of the LaTeX Project Public License, either version 1.3c of this
+license or (at your option) any later version. The latest version of
+this license is in
+ https://www.latex-project.org/lppl.txt
+and version 1.3c or later is part of all distributions of LaTeX
+version 2005/12/01 or later.
+
+The use of these files is otherwise unrestricted.
+
+
+### Reporting Bugs
+
+If you wish to report a problem or bug in any of these packages
+please use the
+[Issue Tracker for LaTeX2e on GitHub](https://github.com/latex3/latex2e/issues)
+and follow the guidelines that pop up if you press the `New issue` button.
+
+In particular, to check that you are really seeing a bug, please write
+a short, self-contained document that shows the problem. This should
+include the `latexbug` package, which will warn if your test file is
+not suitable for one or the other reason. See the [CONTRIBUTING
+guide](https://github.com/latex3/latex2e/blob/master/CONTRIBUTING.md)
+for further details, or if you need to obtain the `latexbug` package.
+
+If the bug turns out to be with third-party software then please
+contact the developer, and not us!
+
+
+
+### Copyright
+
+This README file is copyright 2005-2017 The LaTeX3 Project.
+
+
+
diff --git a/macros/latex/required/cyrillic/changes.txt b/macros/latex/required/cyrillic/changes.txt
new file mode 100644
index 0000000000..cfc514226f
--- /dev/null
+++ b/macros/latex/required/cyrillic/changes.txt
@@ -0,0 +1,192 @@
+This file lists changes to the LaTeX2e files in reverse chronological order.
+It is provided for convenience only. It therefore makes no claims to
+completeness or accuracy and it contains some references to files that
+are not part of the distribution.
+=======================================================================
+
+2015-04-02 Joseph Wright <joseph.wright@morningstar2.co.uk>
+ * TDS-style zip improvements
+
+2015-04-02 Joseph Wright <latex-team@latex-project.org>
+ * Tweak README
+
+2015-03-31 Joseph Wright <joseph.wright@morningstar2.co.uk>
+ * Update packing of files for CTAN
+
+2014-10-28 <Frank.Mittelbach@latex-project.org>
+
+ * cyinpenc.dtx: typo corrected
+
+2005-09-27 Frank Mittelbach <latex-bugs@latex-project.org>
+
+ * cyoutenc.dtx: Replace \sh@ft by \ltx@sh@ft (pr/3469)
+
+2004-05-28 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * cyoutenc.dtx, lcy.dtx: disable by default the special code
+ (hack) for \r{A} composite for all cyrillic encodings. See
+ discussions on the CyrTeX-ru mailing list. To restore, one may add
+ the AAhack docstrip option.
+
+2004-01-26 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * cyoutenc.dtx, lcy.dtx: coding change for \r{A} to follow bug fix
+ by DEK in plain.tex and in base LaTeX (pr/3469).
+
+2001-08-11 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * ot2.dtx: added \d accent and \.\i composite to OT2 encoding.
+
+ * cyoutenc.dtx, lcy.dtx, ot2.dtx: use \hmode@bgroup where
+ applicable.
+
+ * cyrlatex.ins, t2lhfnt.fdd, lcycmlh.fdd, ot2cmlh.fdd:
+ added font definition files for Cyrillic CM Concrete (ccr)
+ font family.
+
+ * cyrlatex.ins, t2lhfnt.fdd, lcycmlh.fdd, ot2cmlh.fdd:
+ added font definition files for Cyrillic CM Bright (cmbr)
+ and CM Typewriter Light (cmtl) font families.
+
+ * t2lhfnt.fdd: added cmss/sbc/n font shape to all encodings.
+
+2000-12-27 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * lcy.dtx (lcyenc.def): added a fake accent for the
+ Cyrillic breve.
+
+2000-06-06 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * cyoutenc.dtx: added \r{A} composite for T2*
+ encodings (as they do not contain a pre-built glyph).
+
+2000-05-03 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * cyoutenc.dtx, lcy.dtx, ot2.dtx: added declarations
+ for composites for use with dblaccnt package.
+
+1999-12-17 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * ot2cmams.fdd: added families OT2/wlcyr and OT2/wlcyss
+ for virtual WLCY fonts without ligatures.
+
+ * cyrlatex.ins: added entries for ot2wlcyr.fd and ot2wlcyss.fd.
+
+1999-12-07 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * cyoutenc.dtx: renamed \CYRRHOOK -> \CYRRHK,
+ \cyrrhook -> \cyrrhk for consistency with other
+ glyph names.
+
+1999-11-29 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * cyinpenc.dtx: removed \CYRFITA and \cyrfita as
+ a shared glyph for CYROTLD from x2enc.def.
+
+1999-11-16 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * cyinpenc.dtx: added ParaType Cyrillic Asian codepages
+ pt154 and pt254.
+
+ * cyrlatex.ins: added entries for pt154.def and pt254.def.
+
+1999-10-28 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * cyoutenc.dtx: added |\cyrdash| as an alias to
+ |\textemdash| for all T2*, X2 encodings.
+
+ * ot2.dtx: ditto for OT2 encoding.
+
+1999-09-03 Frank Mittelbach <latex-bugs@latex-project.org>
+
+ * DEFAULT.pre: updated for LPPL 1.2
+
+ * DEFAULT.hea: updated for LPPL 1.2
+
+ * copyfd.pre: updated for LPPL 1.2
+
+ * copyins.hea: updated for LPPL 1.2
+
+1999-07-09 Frank Mittelbach <latex-bugs@latex-project.org>
+
+ * updated header to reflect LPPL 1.1
+
+1999-06-24 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * lcy.dtx (lcydefs.tex): added zeroing of uc/lccodes for
+ non-letter signs to avoid breaking hyphenation.
+
+ * cyinpenc.dtx: corrected MIK codepage.
+
+1999-06-07 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * lcy.dtx: now contains lcydefs.tex
+
+ * lcy.dtx: added a wrapper package lcy.sty
+
+ * lcy.dtx: removed \include{lcydefs} from lcyenc.def
+
+ * manifest.txt: updated
+
+ * readme.txt: updated
+
+1999-06-07 Werner Lemberg <latex-bugs@latex-project.org>
+
+ * lcy.dtx: fixes for documentation.
+
+1999-06-07 Frank Mittelbach <latex-bugs@latex-project.org>
+
+ * Makefile (FILES): remove lcydefs.tex as it is now generated
+
+1999-06-05 Vladimir Volovich <latex-bugs@latex-project.org>
+
+ * manifest.txt: updated
+
+ * cyrlatex.ins: merged oldcyr.ins into cyrlatex.ins
+
+ * cyoutenc.dtx: removed \DeclareErrorFont from cyoutenc.dtx
+
+ * cyinpenc.dtx: added bulgarian input encoding MIK (BDS)
+
+1999-06-05 Frank Mittelbach <latex-bugs@latex-project.org>
+
+ * cyoutenc.dtx: updated version number
+
+ * cyinpenc.dtx: updated version number
+
+ * Makefile (FILES): removed oldcyr.ins from distribution
+ added ChangeLog.vvv
+
+1999-06-02 Rainer Schoepf <latex-bugs@latex-project.org>
+
+ * ot2cmlh.fdd: added.
+
+ * lcycmlh.fdd: added.
+
+ * ot2cmams.fdd: added.
+
+ * ot2.dtx: added.
+
+ * oldcyr.ins: added.
+
+ * lcydefs.tex: added.
+
+ * lcy.dtx: added.
+
+1999-05-09 Frank Mittelbach <latex-bugs@latex-project.org>
+
+ * ot2cmlh.fdd: docstrip `nowarn' guard was the wrong way around
+ for font OT2/cmr/bx/ui (pr/3036)
+ lcycmlh.fdd: ditto for LCY/cmr/bx/ui
+
+1999-02-04 Frank Mittelbach <latex-bugs@latex-project.org>
+
+ * cyrlatex.ins: do not generate too many files in parallel
+
+1999-01-26 Frank Mittelbach <latex-bugs@latex-project.org>
+
+ * readme.txt: small changes to "reporting bugs" section
+
+1999-01-25 Frank Mittelbach <latex-bugs@latex-project.org>
+
+ * cyrlatex.ins: added copyrights etc
diff --git a/macros/latex/required/cyrillic/cyinpenc.dtx b/macros/latex/required/cyrillic/cyinpenc.dtx
new file mode 100644
index 0000000000..e560ca8691
--- /dev/null
+++ b/macros/latex/required/cyrillic/cyinpenc.dtx
@@ -0,0 +1,1838 @@
+% \iffalse meta-comment
+%
+% Copyright 1993-2014
+%
+% The LaTeX3 Project and any individual authors listed elsewhere
+% in this file.
+%
+% This file is part of the Standard LaTeX `Cyrillic Bundle'.
+% ----------------------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl.txt
+% and version 1.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% The list of all files belonging to the `Cyrillic Bundle' is
+% given in the file `manifest.txt'.
+%
+% \fi
+% \iffalse
+% This is the file |cyinpenc.dtx| of the cyrillic bundle for LaTeX2e.
+%
+% The input encoding files for mongolian are
+% (C) Copyright 1999 by Oliver Corff.
+%
+%<*driver>
+\documentclass{ltxdoc}
+\begin{document}
+\DocInput{cyinpenc.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \section{The Cyrillic codepages}
+%
+% There are several widely used Cyrillic codepages.
+% Currently, we define here the following codepages:
+%
+% \begin{itemize}
+% \item cp~866 is the standard MS-DOS Russian codepage. There are
+% also several codepages in use, which are very similar to
+% cp~866. These are: so-called ``Cyrillic Alternative codepage''
+% (or Alternative Variant of cp~866), Modified Alternative Variant,
+% New Alternative Variant, and experimental Tatarian codepage. The
+% differences take place in the range |0xf2|--|0xfe|. All these
+% `Alternative' codepages are also supported.
+% \item cp~855 is the standard MS-DOS Cyrillic codepage.
+% \item cp~1251 is the standard MS Windows Cyrillic codepage.
+% \item pt~154 is a Windows Cyrillic Asian codepage developed in
+% ParaType. It is a variant of Windows Cyrillic codepage.
+% \item koi8-r is a standard codepage widely used in UNIX-like
+% systems for Russian language support. It is specified in
+% RFC~1489. The situation with koi8-r is somewhat similar to the
+% one with cp~866: there are also several similar codepages in
+% use, which coincide with koi8-r for all Russian letters, but add
+% some other Cyrillic letters. These codepages include: koi8-u
+% (it is a variant of the koi8-r codepage with some Ukrainian
+% letters added), koi8-ru (it is described in a draft RFC document
+% specifying the widely used character set for mail and news
+% exchange in the Ukrainian internet community as well as for
+% presenting WWW information resources in the Ukrainian language),
+% and ISO-IR-111 ECMA Cyrillic Code Page. All these codepages are
+% supported also.
+% \item ISO~8859-5 Cyrillic codepage (also called ISO-IR-144).
+% \item Apple Macintosh Cyrillic (Microsoft cp~10007) codepage.
+% \item Apple Macintosh Ukrainian codepage (very similar to the
+% previous codepage).
+% \item pt~254 is a Macintosh Cyrillic Asian codepage developed in
+% ParaType. It is a variant of Macintosh Cyrillic codepage.
+% \item Bulgarian MIK (BDS) codepage.
+% \item Mongolian codepages: CTT, DBK, MNK, MOS, NCC, MLS.
+% \end{itemize}
+%
+% For all codepages, one of T2* (or X2) encoding is needed. To access some
+% characters (e.g.\ |\textregistered|, |\textbrokenbar|) present in some
+% codepages, T1 and TS1 are necessary also. However, if the characters
+% used from these codepages will be limited only to Russian letters, it
+% is sufficient to have old LH fonts with LCY or OT2 encoding. In this
+% case, characters which are absent in the font will cause error
+% messages.
+%
+% Note that the following composite glyphs (using accents) are not
+% `named' here: |\CYRGJE| (|\'\CYRG|), |\cyrgje| (|\'\cyrg|), |\CYRKJE|
+% (|\'\CYRK|), |\cyrkje| (|\'\cyrk|). Also, |\@tabacckludge'| is used
+% instead of |\'| because of the tabbing environment.
+%
+% \subsection{Additional Copyright notice(s)}
+%
+% \begin{macrocode}
+%<CTT|DBK|MNK|MOS|NCC|MLS>% (C) Copyright 1999 by Oliver Corff.
+%<MIK>% (C) Copyright 1999 by Georgi Boshnakov, Guentcho Skordev.
+% \end{macrocode}
+%
+% \subsection{Headers}
+%
+% \begin{macrocode}
+%\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+%<cp866&std>\ProvidesFile{cp866.def}
+%<cp866&AV>\ProvidesFile{cp866av.def}
+%<cp866&MAV>\ProvidesFile{cp866mav.def}
+%<cp866&NAV>\ProvidesFile{cp866nav.def}
+%<cp866&Tatar>\ProvidesFile{cp866tat.def}
+%<cp1251>\ProvidesFile{cp1251.def}
+%<pt154>\ProvidesFile{pt154.def}
+%<cp855>\ProvidesFile{cp855.def}
+%<koi8&koi8r>\ProvidesFile{koi8-r.def}
+%<koi8&koi8ru>\ProvidesFile{koi8-ru.def}
+%<koi8&isoir111>\ProvidesFile{isoir111.def}
+%<koi8&koi8u>\ProvidesFile{koi8-u.def}
+%<ISO88595>\ProvidesFile{iso88595.def}
+%<maccyrillic>\ProvidesFile{maccyr.def}
+%<macukrainian>\ProvidesFile{macukr.def}
+%<pt254>\ProvidesFile{pt254.def}
+%<MIK>\ProvidesFile{mik.def}
+%<CTT>\ProvidesFile{ctt.def}
+%<DBK>\ProvidesFile{dbk.def}
+%<MNK>\ProvidesFile{mnk.def}
+%<MOS>\ProvidesFile{mos.def}
+%<NCC>\ProvidesFile{ncc.def}
+%<MLS>\ProvidesFile{mls.def}
+ [2014/10/28 v1.0d Input encoding file]
+% \end{macrocode}
+% Insert a |\makeatletter| at the beginning of all .def files.
+% \begin{macrocode}
+\makeatletter
+%<*cp866&!NAV|cp855|koi8r|koi8ru|MIK>
+\ProvideTextCommandDefault{\textblacksquare}
+ {\vrule \@width .3em \@height .4em \@depth -.1em\relax}
+%</cp866&!NAV|cp855|koi8r|koi8ru|MIK>
+%<*cp866&std|cp866&MAV|cp1251|koi8r|maccyrillic|macukrainian|MIK|pt154|pt254>
+\ProvideTextCommandDefault{\textdegree}{\ensuremath{{^\circ}}}
+%</cp866&std|cp866&MAV|cp1251|koi8r|maccyrillic|macukrainian|MIK|pt154|pt254>
+%<*cp1251>
+\ProvideTextCommandDefault{\textbrokenbar}
+ {\TextSymbolUnavailable\textbrokenbar}
+\ProvideTextCommandDefault{\texteuro}
+ {\TextSymbolUnavailable\texteuro}
+%</cp1251>
+%<cp866&MAV|koi8r|MIK>\providecommand{\mathtwosuperior}{{^2}}
+%<cp866&MAV|MIK>\providecommand{\mathnsuperior}{{^n}}
+% \end{macrocode}
+%
+% \subsection{Microsoft cp~866}
+%
+% \begin{macrocode}
+%<*cp866>
+\DeclareInputText{128}{\CYRA}
+\DeclareInputText{129}{\CYRB}
+\DeclareInputText{130}{\CYRV}
+\DeclareInputText{131}{\CYRG}
+\DeclareInputText{132}{\CYRD}
+\DeclareInputText{133}{\CYRE}
+\DeclareInputText{134}{\CYRZH}
+\DeclareInputText{135}{\CYRZ}
+\DeclareInputText{136}{\CYRI}
+\DeclareInputText{137}{\CYRISHRT}
+\DeclareInputText{138}{\CYRK}
+\DeclareInputText{139}{\CYRL}
+\DeclareInputText{140}{\CYRM}
+\DeclareInputText{141}{\CYRN}
+\DeclareInputText{142}{\CYRO}
+\DeclareInputText{143}{\CYRP}
+\DeclareInputText{144}{\CYRR}
+\DeclareInputText{145}{\CYRS}
+\DeclareInputText{146}{\CYRT}
+\DeclareInputText{147}{\CYRU}
+\DeclareInputText{148}{\CYRF}
+\DeclareInputText{149}{\CYRH}
+\DeclareInputText{150}{\CYRC}
+\DeclareInputText{151}{\CYRCH}
+\DeclareInputText{152}{\CYRSH}
+\DeclareInputText{153}{\CYRSHCH}
+\DeclareInputText{154}{\CYRHRDSN}
+\DeclareInputText{155}{\CYRERY}
+\DeclareInputText{156}{\CYRSFTSN}
+\DeclareInputText{157}{\CYREREV}
+\DeclareInputText{158}{\CYRYU}
+\DeclareInputText{159}{\CYRYA}
+%
+\DeclareInputText{160}{\cyra}
+\DeclareInputText{161}{\cyrb}
+\DeclareInputText{162}{\cyrv}
+\DeclareInputText{163}{\cyrg}
+\DeclareInputText{164}{\cyrd}
+\DeclareInputText{165}{\cyre}
+\DeclareInputText{166}{\cyrzh}
+\DeclareInputText{167}{\cyrz}
+\DeclareInputText{168}{\cyri}
+\DeclareInputText{169}{\cyrishrt}
+\DeclareInputText{170}{\cyrk}
+\DeclareInputText{171}{\cyrl}
+\DeclareInputText{172}{\cyrm}
+\DeclareInputText{173}{\cyrn}
+\DeclareInputText{174}{\cyro}
+\DeclareInputText{175}{\cyrp}
+\DeclareInputText{224}{\cyrr}
+\DeclareInputText{225}{\cyrs}
+\DeclareInputText{226}{\cyrt}
+\DeclareInputText{227}{\cyru}
+\DeclareInputText{228}{\cyrf}
+\DeclareInputText{229}{\cyrh}
+\DeclareInputText{230}{\cyrc}
+\DeclareInputText{231}{\cyrch}
+\DeclareInputText{232}{\cyrsh}
+\DeclareInputText{233}{\cyrshch}
+\DeclareInputText{234}{\cyrhrdsn}
+\DeclareInputText{235}{\cyrery}
+\DeclareInputText{236}{\cyrsftsn}
+\DeclareInputText{237}{\cyrerev}
+\DeclareInputText{238}{\cyryu}
+\DeclareInputText{239}{\cyrya}
+%
+\DeclareInputText{240}{\CYRYO}
+\DeclareInputText{241}{\cyryo}
+% \end{macrocode}
+%
+% The following block corresponds to the \emph{standard} cp~866
+% codepage:
+%
+% \begin{macrocode}
+%<*std>
+\DeclareInputText{242}{\CYRIE}
+\DeclareInputText{243}{\cyrie}
+\DeclareInputText{244}{\CYRYI}
+\DeclareInputText{245}{\cyryi}
+\DeclareInputText{246}{\CYRUSHRT}
+\DeclareInputText{247}{\cyrushrt}
+\DeclareInputText{248}{\textdegree}
+\DeclareInputText{249}{\textbullet}
+\DeclareInputText{250}{\textperiodcentered}
+\DeclareInputMath{251}{\surd}
+\DeclareInputText{252}{\textnumero}
+\DeclareInputText{253}{\textcurrency}
+\DeclareInputText{254}{\textblacksquare}
+%</std>
+% \end{macrocode}
+%
+% The following block corresponds to the so called \emph{Alternative
+% Variant} (AV) of cp~866:
+%
+% \begin{macrocode}
+%<*AV>
+% 0xf2 LOW ACUTE ACCENT
+% 0xf3 LOW GRAVE ACCENT
+% 0xf4 HIGH ACUTE ACCENT
+% 0xf5 HIGH GRAVE ACCENT
+\DeclareInputMath{246}{\rightarrow}
+\DeclareInputMath{247}{\leftarrow}
+\DeclareInputMath{248}{\downarrow}
+\DeclareInputMath{249}{\uparrow}
+\DeclareInputMath{250}{\div}
+\DeclareInputMath{251}{\pm}
+\DeclareInputText{252}{\textnumero}
+\DeclareInputText{253}{\textcurrency}
+\DeclareInputText{254}{\textblacksquare}
+%</AV>
+% \end{macrocode}
+%
+% The following block corresponds to the so called \emph{Modified
+% Alternative Variant} (MAV) of cp~866. Symbols |0xf2| through |0xfd|
+% match standard IBM coding (MS code page~437):
+%
+% \begin{macrocode}
+%<*MAV>
+\DeclareInputMath{242}{\geq}
+\DeclareInputMath{243}{\leq}
+% 0xf4 TOP HALF INTEGRAL
+% 0xf5 BOTTOM HALF INTEGRAL
+\DeclareInputMath{246}{\div}
+\DeclareInputMath{247}{\sim}
+\DeclareInputText{248}{\textdegree}
+\DeclareInputText{249}{\textbullet}
+\DeclareInputText{250}{\textperiodcentered}
+\DeclareInputMath{251}{\surd}
+\DeclareInputMath{252}{\mathnsuperior}
+\DeclareInputMath{253}{\mathtwosuperior}
+\DeclareInputText{254}{\textblacksquare}
+%</MAV>
+% \end{macrocode}
+%
+% The following block corresponds to the yet another modern
+% modification of cp~866:
+%
+% \begin{macrocode}
+%<*NAV>
+\DeclareInputText{242}{\CYRGUP}
+\DeclareInputText{243}{\cyrgup}
+\DeclareInputText{244}{\CYRIE}
+\DeclareInputText{245}{\cyrie}
+\DeclareInputText{246}{\CYRII}
+\DeclareInputText{247}{\cyrii}
+\DeclareInputText{248}{\CYRYI}
+\DeclareInputText{249}{\cyryi}
+\DeclareInputText{250}{\CYRUSHRT}
+\DeclareInputText{251}{\cyrushrt}
+\DeclareInputText{252}{\textnumero}
+% ? left European quotes:
+\DeclareInputText{253}{\guillemotleft}
+% ? right European quotes:
+\DeclareInputText{254}{\guillemotright}
+%</NAV>
+% \end{macrocode}
+%
+% The following block corresponds to the experimental Tatarian
+% modification of cp~866. Information was taken from the LH fonts.
+%
+% \begin{macrocode}
+%<*Tatar>
+\DeclareInputText{242}{\CYRSCHWA}
+\DeclareInputText{243}{\cyrschwa}
+\DeclareInputText{244}{\CYROTLD}
+\DeclareInputText{245}{\cyrotld}
+\DeclareInputText{246}{\CYRY}
+\DeclareInputText{247}{\cyry}
+\DeclareInputText{248}{\CYRZHDSC}
+\DeclareInputText{249}{\cyrzhdsc}
+\DeclareInputText{250}{\CYRNDSC}
+\DeclareInputText{251}{\cyrndsc}
+\DeclareInputText{252}{\CYRSHHA}
+\DeclareInputText{253}{\cyrshha}
+% ? was not explicitly declared:
+\DeclareInputText{254}{\textblacksquare}
+%</Tatar>
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareInputText{255}{\nobreakspace}
+%</cp866>
+% \end{macrocode}
+%
+% \subsection{Microsoft cp~855}
+%
+% \begin{macrocode}
+%<*cp855>
+\DeclareInputText{128}{\cyrdje}
+\DeclareInputText{129}{\CYRDJE}
+\DeclareInputText{130}{\@tabacckludge'\cyrg}
+\DeclareInputText{131}{\@tabacckludge'\CYRG}
+\DeclareInputText{132}{\cyryo}
+\DeclareInputText{133}{\CYRYO}
+\DeclareInputText{134}{\cyrie}
+\DeclareInputText{135}{\CYRIE}
+\DeclareInputText{136}{\cyrdze}
+\DeclareInputText{137}{\CYRDZE}
+\DeclareInputText{138}{\cyrii}
+\DeclareInputText{139}{\CYRII}
+\DeclareInputText{140}{\cyryi}
+\DeclareInputText{141}{\CYRYI}
+\DeclareInputText{142}{\cyrje}
+\DeclareInputText{143}{\CYRJE}
+\DeclareInputText{144}{\cyrlje}
+\DeclareInputText{145}{\CYRLJE}
+\DeclareInputText{146}{\cyrnje}
+\DeclareInputText{147}{\CYRNJE}
+\DeclareInputText{148}{\cyrtshe}
+\DeclareInputText{149}{\CYRTSHE}
+\DeclareInputText{150}{\@tabacckludge'\cyrk}
+\DeclareInputText{151}{\@tabacckludge'\CYRK}
+\DeclareInputText{152}{\cyrushrt}
+\DeclareInputText{153}{\CYRUSHRT}
+\DeclareInputText{154}{\cyrdzhe}
+\DeclareInputText{155}{\CYRDZHE}
+\DeclareInputText{156}{\cyryu}
+\DeclareInputText{157}{\CYRYU}
+\DeclareInputText{158}{\cyrhrdsn}
+\DeclareInputText{159}{\CYRHRDSN}
+\DeclareInputText{160}{\cyra}
+\DeclareInputText{161}{\CYRA}
+\DeclareInputText{162}{\cyrb}
+\DeclareInputText{163}{\CYRB}
+\DeclareInputText{164}{\cyrc}
+\DeclareInputText{165}{\CYRC}
+\DeclareInputText{166}{\cyrd}
+\DeclareInputText{167}{\CYRD}
+\DeclareInputText{168}{\cyre}
+\DeclareInputText{169}{\CYRE}
+\DeclareInputText{170}{\cyrf}
+\DeclareInputText{171}{\CYRF}
+\DeclareInputText{172}{\cyrg}
+\DeclareInputText{173}{\CYRG}
+\DeclareInputText{174}{\guillemotleft}
+\DeclareInputText{175}{\guillemotright}
+% 0xb0 LIGHT SHADE
+% 0xb1 MEDIUM SHADE
+% 0xb2 DARK SHADE
+% 0xb3 BOX DRAWINGS LIGHT VERTICAL
+% 0xb4 BOX DRAWINGS LIGHT VERTICAL AND LEFT
+\DeclareInputText{181}{\cyrh}
+\DeclareInputText{182}{\CYRH}
+\DeclareInputText{183}{\cyri}
+\DeclareInputText{184}{\CYRI}
+% 0xb9 BOX DRAWINGS DOUBLE VERTICAL AND LEFT
+% 0xba BOX DRAWINGS DOUBLE VERTICAL
+% 0xbb BOX DRAWINGS DOUBLE DOWN AND LEFT
+% 0xbc BOX DRAWINGS DOUBLE UP AND LEFT
+\DeclareInputText{189}{\cyrishrt}
+\DeclareInputText{190}{\CYRISHRT}
+% 0xbf BOX DRAWINGS LIGHT DOWN AND LEFT
+% 0xc0 BOX DRAWINGS LIGHT UP AND RIGHT
+% 0xc1 BOX DRAWINGS LIGHT UP AND HORIZONTAL
+% 0xc2 BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+% 0xc3 BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+% 0xc4 BOX DRAWINGS LIGHT HORIZONTAL
+% 0xc5 BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+\DeclareInputText{198}{\cyrk}
+\DeclareInputText{199}{\CYRK}
+% 0xc8 BOX DRAWINGS DOUBLE UP AND RIGHT
+% 0xc9 BOX DRAWINGS DOUBLE DOWN AND RIGHT
+% 0xca BOX DRAWINGS DOUBLE UP AND HORIZONTAL
+% 0xcb BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
+% 0xcc BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
+% 0xcd BOX DRAWINGS DOUBLE HORIZONTAL
+% 0xce BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
+\DeclareInputText{207}{\textcurrency}
+\DeclareInputText{208}{\cyrl}
+\DeclareInputText{209}{\CYRL}
+\DeclareInputText{210}{\cyrm}
+\DeclareInputText{211}{\CYRM}
+\DeclareInputText{212}{\cyrn}
+\DeclareInputText{213}{\CYRN}
+\DeclareInputText{214}{\cyro}
+\DeclareInputText{215}{\CYRO}
+\DeclareInputText{216}{\cyrp}
+% 0xd9 BOX DRAWINGS LIGHT UP AND LEFT
+% 0xda BOX DRAWINGS LIGHT DOWN AND RIGHT
+% 0xdb FULL BLOCK
+% 0xdc LOWER HALF BLOCK
+\DeclareInputText{221}{\CYRP}
+\DeclareInputText{222}{\cyrya}
+% 0xdf UPPER HALF BLOCK
+\DeclareInputText{224}{\CYRYA}
+\DeclareInputText{225}{\cyrr}
+\DeclareInputText{226}{\CYRR}
+\DeclareInputText{227}{\cyrs}
+\DeclareInputText{228}{\CYRS}
+\DeclareInputText{229}{\cyrt}
+\DeclareInputText{230}{\CYRT}
+\DeclareInputText{231}{\cyru}
+\DeclareInputText{232}{\CYRU}
+\DeclareInputText{233}{\cyrzh}
+\DeclareInputText{234}{\CYRZH}
+\DeclareInputText{235}{\cyrv}
+\DeclareInputText{236}{\CYRV}
+\DeclareInputText{237}{\cyrsftsn}
+\DeclareInputText{238}{\CYRSFTSN}
+\DeclareInputText{239}{\textnumero}
+\DeclareInputText{240}{\-}
+\DeclareInputText{241}{\cyrery}
+\DeclareInputText{242}{\CYRERY}
+\DeclareInputText{243}{\cyrz}
+\DeclareInputText{244}{\CYRZ}
+\DeclareInputText{245}{\cyrsh}
+\DeclareInputText{246}{\CYRSH}
+\DeclareInputText{247}{\cyrerev}
+\DeclareInputText{248}{\CYREREV}
+\DeclareInputText{249}{\cyrshch}
+\DeclareInputText{250}{\CYRSHCH}
+\DeclareInputText{251}{\cyrch}
+\DeclareInputText{252}{\CYRCH}
+\DeclareInputText{253}{\S}
+\DeclareInputText{254}{\textblacksquare}
+\DeclareInputText{255}{\nobreakspace}
+%</cp855>
+% \end{macrocode}
+%
+% \subsection{Microsoft cp~1251 and ParaType pt~154}
+%
+% \begin{macrocode}
+%<*cp1251|pt154>
+\DeclareInputText{192}{\CYRA}
+\DeclareInputText{193}{\CYRB}
+\DeclareInputText{194}{\CYRV}
+\DeclareInputText{195}{\CYRG}
+\DeclareInputText{196}{\CYRD}
+\DeclareInputText{197}{\CYRE}
+\DeclareInputText{198}{\CYRZH}
+\DeclareInputText{199}{\CYRZ}
+\DeclareInputText{200}{\CYRI}
+\DeclareInputText{201}{\CYRISHRT}
+\DeclareInputText{202}{\CYRK}
+\DeclareInputText{203}{\CYRL}
+\DeclareInputText{204}{\CYRM}
+\DeclareInputText{205}{\CYRN}
+\DeclareInputText{206}{\CYRO}
+\DeclareInputText{207}{\CYRP}
+\DeclareInputText{208}{\CYRR}
+\DeclareInputText{209}{\CYRS}
+\DeclareInputText{210}{\CYRT}
+\DeclareInputText{211}{\CYRU}
+\DeclareInputText{212}{\CYRF}
+\DeclareInputText{213}{\CYRH}
+\DeclareInputText{214}{\CYRC}
+\DeclareInputText{215}{\CYRCH}
+\DeclareInputText{216}{\CYRSH}
+\DeclareInputText{217}{\CYRSHCH}
+\DeclareInputText{218}{\CYRHRDSN}
+\DeclareInputText{219}{\CYRERY}
+\DeclareInputText{220}{\CYRSFTSN}
+\DeclareInputText{221}{\CYREREV}
+\DeclareInputText{222}{\CYRYU}
+\DeclareInputText{223}{\CYRYA}
+%
+\DeclareInputText{224}{\cyra}
+\DeclareInputText{225}{\cyrb}
+\DeclareInputText{226}{\cyrv}
+\DeclareInputText{227}{\cyrg}
+\DeclareInputText{228}{\cyrd}
+\DeclareInputText{229}{\cyre}
+\DeclareInputText{230}{\cyrzh}
+\DeclareInputText{231}{\cyrz}
+\DeclareInputText{232}{\cyri}
+\DeclareInputText{233}{\cyrishrt}
+\DeclareInputText{234}{\cyrk}
+\DeclareInputText{235}{\cyrl}
+\DeclareInputText{236}{\cyrm}
+\DeclareInputText{237}{\cyrn}
+\DeclareInputText{238}{\cyro}
+\DeclareInputText{239}{\cyrp}
+\DeclareInputText{240}{\cyrr}
+\DeclareInputText{241}{\cyrs}
+\DeclareInputText{242}{\cyrt}
+\DeclareInputText{243}{\cyru}
+\DeclareInputText{244}{\cyrf}
+\DeclareInputText{245}{\cyrh}
+\DeclareInputText{246}{\cyrc}
+\DeclareInputText{247}{\cyrch}
+\DeclareInputText{248}{\cyrsh}
+\DeclareInputText{249}{\cyrshch}
+\DeclareInputText{250}{\cyrhrdsn}
+\DeclareInputText{251}{\cyrery}
+\DeclareInputText{252}{\cyrsftsn}
+\DeclareInputText{253}{\cyrerev}
+\DeclareInputText{254}{\cyryu}
+\DeclareInputText{255}{\cyrya}
+%
+%<cp1251>\DeclareInputText{128}{\CYRDJE}
+%<cp1251>\DeclareInputText{129}{\@tabacckludge'\CYRG}
+%<pt154>\DeclareInputText{128}{\CYRZHDSC}
+%<pt154>\DeclareInputText{129}{\CYRGHCRS}
+\DeclareInputText{130}{\quotesinglbase}
+%<cp1251>\DeclareInputText{131}{\@tabacckludge'\cyrg}
+%<pt154>\DeclareInputText{131}{\cyrghcrs}
+\DeclareInputText{132}{\quotedblbase}
+\DeclareInputText{133}{\dots}
+\DeclareInputText{134}{\dag}
+%<*cp1251>
+\DeclareInputText{135}{\ddag}
+\DeclareInputText{136}{\texteuro}
+\DeclareInputText{137}{\textperthousand}
+\DeclareInputText{138}{\CYRLJE}
+%</cp1251>
+%<*pt154>
+\DeclareInputText{135}{\CYRY}
+\DeclareInputText{136}{\CYRHDSC}
+\DeclareInputText{137}{\cyry}
+\DeclareInputText{138}{\CYRKBEAK}
+%</pt154>
+\DeclareInputText{139}{\guilsinglleft}
+%<*cp1251>
+\DeclareInputText{140}{\CYRNJE}
+\DeclareInputText{141}{\@tabacckludge'\CYRK}
+\DeclareInputText{142}{\CYRTSHE}
+\DeclareInputText{143}{\CYRDZHE}
+\DeclareInputText{144}{\cyrdje}
+%</cp1251>
+%<*pt154>
+\DeclareInputText{140}{\CYRNDSC}
+\DeclareInputText{141}{\CYRKDSC}
+\DeclareInputText{142}{\CYRSHHA}
+\DeclareInputText{143}{\CYRCHVCRS}
+\DeclareInputText{144}{\cyrzhdsc}
+%</pt154>
+\DeclareInputText{145}{\textquoteleft}
+\DeclareInputText{146}{\textquoteright}
+\DeclareInputText{147}{\textquotedblleft}
+\DeclareInputText{148}{\textquotedblright}
+\DeclareInputText{149}{\textbullet}
+\DeclareInputText{150}{\textendash}
+\DeclareInputText{151}{\textemdash}
+% 0x98 undefined in cp1251
+%<pt154>\DeclareInputText{152}{\cyrhdsc}
+\DeclareInputText{153}{\texttrademark}
+%<cp1251>\DeclareInputText{154}{\cyrlje}
+%<pt154>\DeclareInputText{154}{\cyrkbeak}
+\DeclareInputText{155}{\guilsinglright}
+%<*cp1251>
+\DeclareInputText{156}{\cyrnje}
+\DeclareInputText{157}{\@tabacckludge'\cyrk}
+\DeclareInputText{158}{\cyrtshe}
+\DeclareInputText{159}{\cyrdzhe}
+%</cp1251>
+%<*pt154>
+\DeclareInputText{156}{\cyrndsc}
+\DeclareInputText{157}{\cyrkdsc}
+\DeclareInputText{158}{\cyrshha}
+\DeclareInputText{159}{\cyrchvcrs}
+%</pt154>
+\DeclareInputText{160}{\nobreakspace}
+\DeclareInputText{161}{\CYRUSHRT}
+\DeclareInputText{162}{\cyrushrt}
+\DeclareInputText{163}{\CYRJE}
+%<*cp1251>
+\DeclareInputText{164}{\textcurrency}
+\DeclareInputText{165}{\CYRGUP}
+\DeclareInputText{166}{\textbrokenbar}
+%</cp1251>
+%<*pt154>
+\DeclareInputText{164}{\CYROTLD}
+\DeclareInputText{165}{\CYRZDSC}
+\DeclareInputText{166}{\CYRYHCRS}
+%</pt154>
+\DeclareInputText{167}{\S}
+\DeclareInputText{168}{\CYRYO}
+\DeclareInputText{169}{\copyright}
+%<cp1251>\DeclareInputText{170}{\CYRIE}
+%<pt154>\DeclareInputText{170}{\CYRSCHWA}
+\DeclareInputText{171}{\guillemotleft}
+\DeclareInputMath{172}{\lnot}
+\DeclareInputText{173}{\-}
+\DeclareInputText{174}{\textregistered}
+%<cp1251>\DeclareInputText{175}{\CYRYI}
+%<pt154>\DeclareInputText{175}{\CYRKVCRS}
+\DeclareInputText{176}{\textdegree}
+%<cp1251>\DeclareInputMath{177}{\pm}
+%<pt154>\DeclareInputText{177}{\cyryhcrs}
+\DeclareInputText{178}{\CYRII}
+\DeclareInputText{179}{\cyrii}
+%<cp1251>\DeclareInputText{180}{\cyrgup}
+%<cp1251>\DeclareInputMath{181}{\mu}
+%<pt154>\DeclareInputText{180}{\cyrzdsc}
+%<pt154>\DeclareInputText{181}{\cyrotld}
+\DeclareInputText{182}{\P}
+\DeclareInputText{183}{\textperiodcentered}
+\DeclareInputText{184}{\cyryo}
+\DeclareInputText{185}{\textnumero}
+%<cp1251>\DeclareInputText{186}{\cyrie}
+%<pt154>\DeclareInputText{186}{\cyrschwa}
+\DeclareInputText{187}{\guillemotright}
+\DeclareInputText{188}{\cyrje}
+%<*cp1251>
+\DeclareInputText{189}{\CYRDZE}
+\DeclareInputText{190}{\cyrdze}
+\DeclareInputText{191}{\cyryi}
+%</cp1251>
+%<*pt154>
+\DeclareInputText{189}{\CYRSDSC}
+\DeclareInputText{190}{\cyrsdsc}
+\DeclareInputText{191}{\cyrkvcrs}
+%</pt154>
+%</cp1251|pt154>
+% \end{macrocode}
+%
+% \subsection{The koi8 codepage}
+%
+% \begin{macrocode}
+%<*koi8>
+\DeclareInputText{225}{\CYRA}
+\DeclareInputText{226}{\CYRB}
+\DeclareInputText{247}{\CYRV}
+\DeclareInputText{231}{\CYRG}
+\DeclareInputText{228}{\CYRD}
+\DeclareInputText{229}{\CYRE}
+\DeclareInputText{179}{\CYRYO}
+\DeclareInputText{246}{\CYRZH}
+\DeclareInputText{250}{\CYRZ}
+\DeclareInputText{233}{\CYRI}
+\DeclareInputText{234}{\CYRISHRT}
+\DeclareInputText{235}{\CYRK}
+\DeclareInputText{236}{\CYRL}
+\DeclareInputText{237}{\CYRM}
+\DeclareInputText{238}{\CYRN}
+\DeclareInputText{239}{\CYRO}
+\DeclareInputText{240}{\CYRP}
+\DeclareInputText{242}{\CYRR}
+\DeclareInputText{243}{\CYRS}
+\DeclareInputText{244}{\CYRT}
+\DeclareInputText{245}{\CYRU}
+\DeclareInputText{230}{\CYRF}
+\DeclareInputText{232}{\CYRH}
+\DeclareInputText{227}{\CYRC}
+\DeclareInputText{254}{\CYRCH}
+\DeclareInputText{251}{\CYRSH}
+\DeclareInputText{253}{\CYRSHCH}
+\DeclareInputText{255}{\CYRHRDSN}
+\DeclareInputText{249}{\CYRERY}
+\DeclareInputText{248}{\CYRSFTSN}
+\DeclareInputText{252}{\CYREREV}
+\DeclareInputText{224}{\CYRYU}
+\DeclareInputText{241}{\CYRYA}
+%
+\DeclareInputText{193}{\cyra}
+\DeclareInputText{194}{\cyrb}
+\DeclareInputText{215}{\cyrv}
+\DeclareInputText{199}{\cyrg}
+\DeclareInputText{196}{\cyrd}
+\DeclareInputText{197}{\cyre}
+\DeclareInputText{163}{\cyryo}
+\DeclareInputText{214}{\cyrzh}
+\DeclareInputText{218}{\cyrz}
+\DeclareInputText{201}{\cyri}
+\DeclareInputText{202}{\cyrishrt}
+\DeclareInputText{203}{\cyrk}
+\DeclareInputText{204}{\cyrl}
+\DeclareInputText{205}{\cyrm}
+\DeclareInputText{206}{\cyrn}
+\DeclareInputText{207}{\cyro}
+\DeclareInputText{208}{\cyrp}
+\DeclareInputText{210}{\cyrr}
+\DeclareInputText{211}{\cyrs}
+\DeclareInputText{212}{\cyrt}
+\DeclareInputText{213}{\cyru}
+\DeclareInputText{198}{\cyrf}
+\DeclareInputText{200}{\cyrh}
+\DeclareInputText{195}{\cyrc}
+\DeclareInputText{222}{\cyrch}
+\DeclareInputText{219}{\cyrsh}
+\DeclareInputText{221}{\cyrshch}
+\DeclareInputText{223}{\cyrhrdsn}
+\DeclareInputText{217}{\cyrery}
+\DeclareInputText{216}{\cyrsftsn}
+\DeclareInputText{220}{\cyrerev}
+\DeclareInputText{192}{\cyryu}
+\DeclareInputText{209}{\cyrya}
+% \end{macrocode}
+%
+% \subsubsection{koi8-r and relatives (koi8-ru, koi8-u, ISO-IR-111)}
+%
+% |0x80|--|0x9f| are unused in the ISO~IR-111 Cyrillic Code Page
+%
+% \begin{macrocode}
+%<*koi8r|koi8ru>
+% 0x80 FORMS LIGHT HORIZONTAL
+% 0x81 FORMS LIGHT VERTICAL
+% 0x82 FORMS LIGHT DOWN AND RIGHT
+% 0x83 FORMS LIGHT DOWN AND LEFT
+% 0x84 FORMS LIGHT UP AND RIGHT
+% 0x85 FORMS LIGHT UP AND LEFT
+% 0x86 FORMS LIGHT VERTICAL AND RIGHT
+% 0x87 FORMS LIGHT VERTICAL AND LEFT
+% 0x88 FORMS LIGHT DOWN AND HORIZONTAL
+% 0x89 FORMS LIGHT UP AND HORIZONTAL
+% 0x8A FORMS LIGHT VERTICAL AND HORIZONTAL
+% 0x8B UPPER HALF BLOCK
+% 0x8C LOWER HALF BLOCK
+% 0x8D FULL BLOCK
+% 0x8E LEFT HALF BLOCK
+% 0x8F RIGHT HALF BLOCK
+% 0x90 LIGHT SHADE
+% 0x91 MEDIUM SHADE
+% 0x92 DARK SHADE
+%</koi8r|koi8ru>
+%<*koi8r>
+% 0x93 TOP HALF INTEGRAL
+%</koi8r>
+%<koi8ru>\DeclareInputText{147}{\textquotedblleft}
+%<*koi8r|koi8ru>
+\DeclareInputText{148}{\textblacksquare}
+\DeclareInputText{149}{\textbullet}
+%</koi8r|koi8ru>
+%<*koi8r>
+\DeclareInputMath{150}{\surd}
+\DeclareInputMath{151}{\sim}
+\DeclareInputMath{152}{\leq}
+\DeclareInputMath{153}{\geq}
+%</koi8r>
+%<*koi8ru>
+\DeclareInputText{150}{\textquotedblright}
+\DeclareInputText{151}{\textemdash}
+\DeclareInputText{152}{\textnumero}
+\DeclareInputText{153}{\texttrademark}
+%</koi8ru>
+%<koi8r|koi8ru>\DeclareInputText{154}{\nobreakspace}
+%<*koi8r>
+% 0x9B BOTTOM HALF INTEGRAL
+\DeclareInputText{156}{\textdegree}
+\DeclareInputMath{157}{\mathtwosuperior}
+%</koi8r>
+%<*koi8ru>
+\DeclareInputText{155}{\guillemotright}
+\DeclareInputText{156}{\textregistered}
+\DeclareInputText{157}{\guillemotleft}
+%</koi8ru>
+%<koi8r|koi8ru>\DeclareInputText{158}{\textperiodcentered}
+%<koi8r>\DeclareInputMath{159}{\div}
+%<koi8ru>\DeclareInputText{159}{\textcurrency}
+%<*koi8r|koi8ru>
+% 0xA0 FORMS DOUBLE HORIZONTAL
+% 0xA1 FORMS DOUBLE VERTICAL
+% 0xA2 FORMS DOWN SINGLE AND RIGHT DOUBLE
+%</koi8r|koi8ru>
+%<*isoir111>
+\DeclareInputText{160}{\nobreakspace}
+\DeclareInputText{161}{\cyrdje}
+\DeclareInputText{162}{\@tabacckludge'\cyrg}
+%</isoir111>
+%<*koi8r>
+% 0xA4 FORMS DOWN DOUBLE AND RIGHT SINGLE
+%</koi8r>
+%<koi8ru|isoir111|koi8u>\DeclareInputText{164}{\cyrie}
+%<*koi8r|koi8ru>
+% 0xA5 FORMS DOUBLE DOWN AND RIGHT
+%</koi8r|koi8ru>
+%<isoir111>\DeclareInputText{165}{\cyrdze}
+%<*koi8r>
+% 0xA6 FORMS DOWN SINGLE AND LEFT DOUBLE
+% 0xA7 FORMS DOWN DOUBLE AND LEFT SINGLE
+%</koi8r>
+%<*koi8ru|isoir111|koi8u>
+\DeclareInputText{166}{\cyrii}
+\DeclareInputText{167}{\cyryi}
+%</koi8ru|isoir111|koi8u>
+%<*koi8r|koi8ru>
+% 0xA8 FORMS DOUBLE DOWN AND LEFT
+% 0xA9 FORMS UP SINGLE AND RIGHT DOUBLE
+% 0xAA FORMS UP DOUBLE AND RIGHT SINGLE
+% 0xAB FORMS DOUBLE UP AND RIGHT
+% 0xAC FORMS UP SINGLE AND LEFT DOUBLE
+%</koi8r|koi8ru>
+%<*isoir111>
+\DeclareInputText{168}{\cyrje}
+\DeclareInputText{169}{\cyrlje}
+\DeclareInputText{170}{\cyrnje}
+\DeclareInputText{171}{\cyrtshe}
+\DeclareInputText{172}{\@tabacckludge'\cyrk}
+%</isoir111>
+%<*koi8r>
+% 0xAD FORMS UP DOUBLE AND LEFT SINGLE
+% 0xAE FORMS DOUBLE UP AND LEFT
+%</koi8r>
+%<koi8ru|koi8u>\DeclareInputText{173}{\cyrgup}
+%<isoir111>\DeclareInputText{173}{\-}
+%<koi8ru|isoir111>\DeclareInputText{174}{\cyrushrt}
+%<*koi8r|koi8ru>
+% 0xAF FORMS VERTICAL SINGLE AND RIGHT DOUBLE
+% 0xB0 FORMS VERTICAL DOUBLE AND RIGHT SINGLE
+% 0xB1 FORMS DOUBLE VERTICAL AND RIGHT
+% 0xB2 FORMS VERTICAL SINGLE AND LEFT DOUBLE
+%</koi8r|koi8ru>
+%<*isoir111>
+\DeclareInputText{175}{\cyrdzhe}
+\DeclareInputText{176}{\textnumero}
+\DeclareInputText{177}{\CYRDJE}
+\DeclareInputText{178}{\@tabacckludge'\CYRG}
+%</isoir111>
+%<*koi8r>
+% 0xB4 FORMS VERTICAL DOUBLE AND LEFT SINGLE
+%</koi8r>
+%<koi8ru|isoir111|koi8u>\DeclareInputText{180}{\CYRIE}
+%<*koi8r|koi8ru>
+% 0xB5 FORMS DOUBLE VERTICAL AND LEFT
+%</koi8r|koi8ru>
+%<isoir111>\DeclareInputText{181}{\CYRDZE}
+%<*koi8r>
+% 0xB6 FORMS DOWN SINGLE AND HORIZONTAL DOUBLE
+% 0xB7 FORMS DOWN DOUBLE AND HORIZONTAL SINGLE
+%</koi8r>
+%<*koi8ru|isoir111|koi8u>
+\DeclareInputText{182}{\CYRII}
+\DeclareInputText{183}{\CYRYI}
+%</koi8ru|isoir111|koi8u>
+%<*koi8r|koi8ru>
+% 0xB8 FORMS DOUBLE DOWN AND HORIZONTAL
+% 0xB9 FORMS UP SINGLE AND HORIZONTAL DOUBLE
+% 0xBA FORMS UP DOUBLE AND HORIZONTAL SINGLE
+% 0xBB FORMS DOUBLE UP AND HORIZONTAL
+% 0xBC FORMS VERTICAL SINGLE AND HORIZONTAL DOUBLE
+%</koi8r|koi8ru>
+%<*isoir111>
+\DeclareInputText{184}{\CYRJE}
+\DeclareInputText{185}{\CYRLJE}
+\DeclareInputText{186}{\CYRNJE}
+\DeclareInputText{187}{\CYRTSHE}
+\DeclareInputText{188}{\@tabacckludge'\CYRK}
+%</isoir111>
+%<*koi8r>
+% 0xBD FORMS VERTICAL DOUBLE AND HORIZONTAL SINGLE
+% 0xBE FORMS DOUBLE VERTICAL AND HORIZONTAL
+%</koi8r>
+%<koi8ru|koi8u>\DeclareInputText{189}{\CYRGUP}
+%<isoir111>\DeclareInputText{189}{\textcurrency}
+%<koi8ru|isoir111>\DeclareInputText{190}{\CYRUSHRT}
+%<koi8r|koi8ru>\DeclareInputText{191}{\copyright}
+%<isoir111>\DeclareInputText{191}{\CYRDZHE}
+%</koi8>
+% \end{macrocode}
+%
+% \subsection{ISO~8859-5}
+%
+% \begin{macrocode}
+%<*ISO88595>
+\DeclareInputText{160}{\nobreakspace}
+\DeclareInputText{161}{\CYRYO}
+\DeclareInputText{162}{\CYRDJE}
+\DeclareInputText{163}{\@tabacckludge'\CYRG}
+\DeclareInputText{164}{\CYRIE}
+\DeclareInputText{165}{\CYRDZE}
+\DeclareInputText{166}{\CYRII}
+\DeclareInputText{167}{\CYRYI}
+\DeclareInputText{168}{\CYRJE}
+\DeclareInputText{169}{\CYRLJE}
+\DeclareInputText{170}{\CYRNJE}
+\DeclareInputText{171}{\CYRTSHE}
+\DeclareInputText{172}{\@tabacckludge'\CYRK}
+\DeclareInputText{173}{\-}
+\DeclareInputText{174}{\CYRUSHRT}
+\DeclareInputText{175}{\CYRDZHE}
+%
+\DeclareInputText{176}{\CYRA}
+\DeclareInputText{177}{\CYRB}
+\DeclareInputText{178}{\CYRV}
+\DeclareInputText{179}{\CYRG}
+\DeclareInputText{180}{\CYRD}
+\DeclareInputText{181}{\CYRE}
+\DeclareInputText{182}{\CYRZH}
+\DeclareInputText{183}{\CYRZ}
+\DeclareInputText{184}{\CYRI}
+\DeclareInputText{185}{\CYRISHRT}
+\DeclareInputText{186}{\CYRK}
+\DeclareInputText{187}{\CYRL}
+\DeclareInputText{188}{\CYRM}
+\DeclareInputText{189}{\CYRN}
+\DeclareInputText{190}{\CYRO}
+\DeclareInputText{191}{\CYRP}
+\DeclareInputText{192}{\CYRR}
+\DeclareInputText{193}{\CYRS}
+\DeclareInputText{194}{\CYRT}
+\DeclareInputText{195}{\CYRU}
+\DeclareInputText{196}{\CYRF}
+\DeclareInputText{197}{\CYRH}
+\DeclareInputText{198}{\CYRC}
+\DeclareInputText{199}{\CYRCH}
+\DeclareInputText{200}{\CYRSH}
+\DeclareInputText{201}{\CYRSHCH}
+\DeclareInputText{202}{\CYRHRDSN}
+\DeclareInputText{203}{\CYRERY}
+\DeclareInputText{204}{\CYRSFTSN}
+\DeclareInputText{205}{\CYREREV}
+\DeclareInputText{206}{\CYRYU}
+\DeclareInputText{207}{\CYRYA}
+%
+\DeclareInputText{208}{\cyra}
+\DeclareInputText{209}{\cyrb}
+\DeclareInputText{210}{\cyrv}
+\DeclareInputText{211}{\cyrg}
+\DeclareInputText{212}{\cyrd}
+\DeclareInputText{213}{\cyre}
+\DeclareInputText{214}{\cyrzh}
+\DeclareInputText{215}{\cyrz}
+\DeclareInputText{216}{\cyri}
+\DeclareInputText{217}{\cyrishrt}
+\DeclareInputText{218}{\cyrk}
+\DeclareInputText{219}{\cyrl}
+\DeclareInputText{220}{\cyrm}
+\DeclareInputText{221}{\cyrn}
+\DeclareInputText{222}{\cyro}
+\DeclareInputText{223}{\cyrp}
+\DeclareInputText{224}{\cyrr}
+\DeclareInputText{225}{\cyrs}
+\DeclareInputText{226}{\cyrt}
+\DeclareInputText{227}{\cyru}
+\DeclareInputText{228}{\cyrf}
+\DeclareInputText{229}{\cyrh}
+\DeclareInputText{230}{\cyrc}
+\DeclareInputText{231}{\cyrch}
+\DeclareInputText{232}{\cyrsh}
+\DeclareInputText{233}{\cyrshch}
+\DeclareInputText{234}{\cyrhrdsn}
+\DeclareInputText{235}{\cyrery}
+\DeclareInputText{236}{\cyrsftsn}
+\DeclareInputText{237}{\cyrerev}
+\DeclareInputText{238}{\cyryu}
+\DeclareInputText{239}{\cyrya}
+%
+\DeclareInputText{240}{\textnumero}
+\DeclareInputText{241}{\cyryo}
+\DeclareInputText{242}{\cyrdje}
+\DeclareInputText{243}{\@tabacckludge'\cyrg}
+\DeclareInputText{244}{\cyrie}
+\DeclareInputText{245}{\cyrdze}
+\DeclareInputText{246}{\cyrii}
+\DeclareInputText{247}{\cyryi}
+\DeclareInputText{248}{\cyrje}
+\DeclareInputText{249}{\cyrlje}
+\DeclareInputText{250}{\cyrnje}
+\DeclareInputText{251}{\cyrtshe}
+\DeclareInputText{252}{\@tabacckludge'\cyrk}
+\DeclareInputText{253}{\S}
+\DeclareInputText{254}{\cyrushrt}
+\DeclareInputText{255}{\cyrdzhe}
+%</ISO88595>
+% \end{macrocode}
+%
+% \subsection{Apple Macintosh Cyrillic encodings and ParaType pt~254}
+%
+% The MacOS Cyrillic encoding (Microsoft cp~10007) includes the full
+% Cyrillic letter repertory of ISO~8859-5 (although not at the same
+% code points). This covers most of the Slavic languages written with
+% the Cyrillic script.
+%
+% The MacOS Cyrillic encoding also includes a number of characters
+% needed for the MacOS user interface (e.g.\ ellipsis, bullet for
+% echoing passwords, copyright sign, etc). All of the characters in
+% MacOS Cyrillic that are also in the MacOS Roman encoding are at the
+% same code points as specified in MacOS Roman. This improves
+% application compatibility (since some naughty applications hard-code
+% the MacOS Roman code points of certain characters).
+%
+% A variant of MacOS Cyrillic is used for Ukrainian. This character
+% encoding adds upper and lower GHE WITH UPTURN, for a grand total of
+% 2~code point differences from standard MacOS Cyrillic.
+%
+% \begin{macrocode}
+%<*maccyrillic|macukrainian|pt254>
+\DeclareInputText{128}{\CYRA}
+\DeclareInputText{129}{\CYRB}
+\DeclareInputText{130}{\CYRV}
+\DeclareInputText{131}{\CYRG}
+\DeclareInputText{132}{\CYRD}
+\DeclareInputText{133}{\CYRE}
+\DeclareInputText{134}{\CYRZH}
+\DeclareInputText{135}{\CYRZ}
+\DeclareInputText{136}{\CYRI}
+\DeclareInputText{137}{\CYRISHRT}
+\DeclareInputText{138}{\CYRK}
+\DeclareInputText{139}{\CYRL}
+\DeclareInputText{140}{\CYRM}
+\DeclareInputText{141}{\CYRN}
+\DeclareInputText{142}{\CYRO}
+\DeclareInputText{143}{\CYRP}
+\DeclareInputText{144}{\CYRR}
+\DeclareInputText{145}{\CYRS}
+\DeclareInputText{146}{\CYRT}
+\DeclareInputText{147}{\CYRU}
+\DeclareInputText{148}{\CYRF}
+\DeclareInputText{149}{\CYRH}
+\DeclareInputText{150}{\CYRC}
+\DeclareInputText{151}{\CYRCH}
+\DeclareInputText{152}{\CYRSH}
+\DeclareInputText{153}{\CYRSHCH}
+\DeclareInputText{154}{\CYRHRDSN}
+\DeclareInputText{155}{\CYRERY}
+\DeclareInputText{156}{\CYRSFTSN}
+\DeclareInputText{157}{\CYREREV}
+\DeclareInputText{158}{\CYRYU}
+\DeclareInputText{159}{\CYRYA}
+%
+\DeclareInputText{160}{\dag}
+\DeclareInputText{161}{\textdegree}
+%<maccyrillic|pt254>\DeclareInputText{162}{\textcent}
+%<macukrainian>\DeclareInputText{162}{\CYRGUP}
+\DeclareInputText{163}{\pounds}
+\DeclareInputText{164}{\S}
+\DeclareInputText{165}{\textbullet}
+\DeclareInputText{166}{\P}
+\DeclareInputText{167}{\CYRII}
+\DeclareInputText{168}{\textregistered}
+\DeclareInputText{169}{\copyright}
+\DeclareInputText{170}{\texttrademark}
+%<*maccyrillic|macukrainian>
+\DeclareInputText{171}{\CYRDJE}
+\DeclareInputText{172}{\cyrdje}
+\DeclareInputMath{173}{\neq}
+\DeclareInputText{174}{\@tabacckludge'\CYRG}
+\DeclareInputText{175}{\@tabacckludge'\cyrg}
+\DeclareInputMath{176}{\infty}
+\DeclareInputMath{177}{\pm}
+%</maccyrillic|macukrainian>
+%<*pt254>
+\DeclareInputText{171}{\CYRZHDSC}
+\DeclareInputText{172}{\cyrzhdsc}
+\DeclareInputText{173}{\cyrii}
+\DeclareInputText{174}{\CYRGHCRS}
+\DeclareInputText{175}{\cyrghcrs}
+\DeclareInputText{176}{\CYRZDSC}
+\DeclareInputText{177}{\cyrzdsc}
+%</pt254>
+\DeclareInputMath{178}{\leq}
+\DeclareInputMath{179}{\geq}
+%<maccyrillic|macukrainian>\DeclareInputText{180}{\cyrii}
+%<maccyrillic|macukrainian>\DeclareInputMath{181}{\mu}
+%<pt254>\DeclareInputText{180}{\CYRYHCRS}
+%<pt254>\DeclareInputText{181}{\cyrotld}
+%<maccyrillic>\DeclareInputMath{182}{\partial}
+%<macukrainian>\DeclareInputText{182}{\cyrgup}
+%<pt254>\DeclareInputText{182}{\CYRY}
+%
+\DeclareInputText{183}{\CYRJE}
+%<*maccyrillic|macukrainian>
+\DeclareInputText{184}{\CYRIE}
+\DeclareInputText{185}{\cyrie}
+\DeclareInputText{186}{\CYRYI}
+\DeclareInputText{187}{\cyryi}
+\DeclareInputText{188}{\CYRLJE}
+\DeclareInputText{189}{\cyrlje}
+\DeclareInputText{190}{\CYRNJE}
+\DeclareInputText{191}{\cyrnje}
+%</maccyrillic|macukrainian>
+%<*pt254>
+\DeclareInputText{184}{\CYRSCHWA}
+\DeclareInputText{185}{\cyrschwa}
+\DeclareInputText{186}{\CYRKVCRS}
+\DeclareInputText{187}{\cyrkvcrs}
+\DeclareInputText{188}{\CYRKBEAK}
+\DeclareInputText{189}{\cyrkbeak}
+\DeclareInputText{190}{\CYRNDSC}
+\DeclareInputText{191}{\cyrndsc}
+%</pt254>
+\DeclareInputText{192}{\cyrje}
+%<maccyrillic|macukrainian>\DeclareInputText{193}{\CYRDZE}
+%<pt254>\DeclareInputText{193}{\CYRSDSC}
+%
+\DeclareInputMath{194}{\lnot}
+%<*maccyrillic|macukrainian>
+\DeclareInputMath{195}{\surd}
+\DeclareInputText{196}{\textflorin}
+\DeclareInputMath{197}{\approx}
+% INCREMENT:
+\DeclareInputMath{198}{\Delta}
+%</maccyrillic|macukrainian>
+%<*pt254>
+\DeclareInputText{195}{\CYRHDSC}
+\DeclareInputText{196}{\cyryhcrs}
+\DeclareInputText{197}{\cyrhdsc}
+\DeclareInputText{198}{\cyry}
+%</pt254>
+\DeclareInputText{199}{\guillemotleft}
+\DeclareInputText{200}{\guillemotright}
+% HORIZONTAL ELLIPSIS:
+\DeclareInputText{201}{\dots}
+\DeclareInputText{202}{\nobreakspace}
+%
+%<*maccyrillic|macukrainian>
+\DeclareInputText{203}{\CYRTSHE}
+\DeclareInputText{204}{\cyrtshe}
+\DeclareInputText{205}{\@tabacckludge'\CYRK}
+\DeclareInputText{206}{\@tabacckludge'\cyrk}
+\DeclareInputText{207}{\cyrdze}
+%</maccyrillic|macukrainian>
+%<*pt254>
+\DeclareInputText{203}{\CYRSHHA}
+\DeclareInputText{204}{\cyrshha}
+\DeclareInputText{205}{\CYRKDSC}
+\DeclareInputText{206}{\cyrkdsc}
+\DeclareInputText{207}{\cyrsdsc}
+%</pt254>
+%
+\DeclareInputText{208}{\textendash}
+\DeclareInputText{209}{\textemdash}
+\DeclareInputText{210}{\textquotedblleft}
+\DeclareInputText{211}{\textquotedblright}
+\DeclareInputText{212}{\textquoteleft}
+\DeclareInputText{213}{\textquoteright}
+\DeclareInputMath{214}{\div}
+\DeclareInputText{215}{\quotedblbase}
+%
+\DeclareInputText{216}{\CYRUSHRT}
+\DeclareInputText{217}{\cyrushrt}
+%<maccyrillic|macukrainian>\DeclareInputText{218}{\CYRDZHE}
+%<maccyrillic|macukrainian>\DeclareInputText{219}{\cyrdzhe}
+%<pt254>\DeclareInputText{218}{\CYRCHVCRS}
+%<pt254>\DeclareInputText{219}{\cyrchvcrs}
+\DeclareInputText{220}{\textnumero}
+%
+\DeclareInputText{221}{\CYRYO}
+\DeclareInputText{222}{\cyryo}
+\DeclareInputText{223}{\cyrya}
+\DeclareInputText{224}{\cyra}
+\DeclareInputText{225}{\cyrb}
+\DeclareInputText{226}{\cyrv}
+\DeclareInputText{227}{\cyrg}
+\DeclareInputText{228}{\cyrd}
+\DeclareInputText{229}{\cyre}
+\DeclareInputText{230}{\cyrzh}
+\DeclareInputText{231}{\cyrz}
+\DeclareInputText{232}{\cyri}
+\DeclareInputText{233}{\cyrishrt}
+\DeclareInputText{234}{\cyrk}
+\DeclareInputText{235}{\cyrl}
+\DeclareInputText{236}{\cyrm}
+\DeclareInputText{237}{\cyrn}
+\DeclareInputText{238}{\cyro}
+\DeclareInputText{239}{\cyrp}
+\DeclareInputText{240}{\cyrr}
+\DeclareInputText{241}{\cyrs}
+\DeclareInputText{242}{\cyrt}
+\DeclareInputText{243}{\cyru}
+\DeclareInputText{244}{\cyrf}
+\DeclareInputText{245}{\cyrh}
+\DeclareInputText{246}{\cyrc}
+\DeclareInputText{247}{\cyrch}
+\DeclareInputText{248}{\cyrsh}
+\DeclareInputText{249}{\cyrshch}
+\DeclareInputText{250}{\cyrhrdsn}
+\DeclareInputText{251}{\cyrery}
+\DeclareInputText{252}{\cyrsftsn}
+\DeclareInputText{253}{\cyrerev}
+\DeclareInputText{254}{\cyryu}
+%<maccyrillic|macukrainian>\DeclareInputText{255}{\textcurrency}
+%<pt254>\DeclareInputText{255}{\CYROTLD}
+%</maccyrillic|macukrainian|pt254>
+% \end{macrocode}
+%
+% \subsection{Bulgarian MIK (BDS) codepage}
+%
+% It is an MS-DOS codepage used in Bulgaria. This codepage was
+% provided by Georgi Boshnakov and Guentcho Skordev.
+%
+% \begin{macrocode}
+%<*MIK>
+\DeclareInputText{128}{\CYRA}
+\DeclareInputText{129}{\CYRB}
+\DeclareInputText{130}{\CYRV}
+\DeclareInputText{131}{\CYRG}
+\DeclareInputText{132}{\CYRD}
+\DeclareInputText{133}{\CYRE}
+\DeclareInputText{134}{\CYRZH}
+\DeclareInputText{135}{\CYRZ}
+\DeclareInputText{136}{\CYRI}
+\DeclareInputText{137}{\CYRISHRT}
+\DeclareInputText{138}{\CYRK}
+\DeclareInputText{139}{\CYRL}
+\DeclareInputText{140}{\CYRM}
+\DeclareInputText{141}{\CYRN}
+\DeclareInputText{142}{\CYRO}
+\DeclareInputText{143}{\CYRP}
+\DeclareInputText{144}{\CYRR}
+\DeclareInputText{145}{\CYRS}
+\DeclareInputText{146}{\CYRT}
+\DeclareInputText{147}{\CYRU}
+\DeclareInputText{148}{\CYRF}
+\DeclareInputText{149}{\CYRH}
+\DeclareInputText{150}{\CYRC}
+\DeclareInputText{151}{\CYRCH}
+\DeclareInputText{152}{\CYRSH}
+\DeclareInputText{153}{\CYRSHCH}
+\DeclareInputText{154}{\CYRHRDSN}
+\DeclareInputText{155}{\CYRERY}
+\DeclareInputText{156}{\CYRSFTSN}
+\DeclareInputText{157}{\CYREREV}
+\DeclareInputText{158}{\CYRYU}
+\DeclareInputText{159}{\CYRYA}
+\DeclareInputText{160}{\cyra}
+\DeclareInputText{161}{\cyrb}
+\DeclareInputText{162}{\cyrv}
+\DeclareInputText{163}{\cyrg}
+\DeclareInputText{164}{\cyrd}
+\DeclareInputText{165}{\cyre}
+\DeclareInputText{166}{\cyrzh}
+\DeclareInputText{167}{\cyrz}
+\DeclareInputText{168}{\cyri}
+\DeclareInputText{169}{\cyrishrt}
+\DeclareInputText{170}{\cyrk}
+\DeclareInputText{171}{\cyrl}
+\DeclareInputText{172}{\cyrm}
+\DeclareInputText{173}{\cyrn}
+\DeclareInputText{174}{\cyro}
+\DeclareInputText{175}{\cyrp}
+\DeclareInputText{176}{\cyrr}
+\DeclareInputText{177}{\cyrs}
+\DeclareInputText{178}{\cyrt}
+\DeclareInputText{179}{\cyru}
+\DeclareInputText{180}{\cyrf}
+\DeclareInputText{181}{\cyrh}
+\DeclareInputText{182}{\cyrc}
+\DeclareInputText{183}{\cyrch}
+\DeclareInputText{184}{\cyrsh}
+\DeclareInputText{185}{\cyrshch}
+\DeclareInputText{186}{\cyrhrdsn}
+\DeclareInputText{187}{\cyrery}
+\DeclareInputText{188}{\cyrsftsn}
+\DeclareInputText{189}{\cyrerev}
+\DeclareInputText{190}{\cyryu}
+\DeclareInputText{191}{\cyrya}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareInputText{213}{\textnumero}
+\DeclareInputText{214}{\S}
+\DeclareInputMath{224}{\alpha}
+\DeclareInputMath{225}{\beta}
+\DeclareInputMath{226}{\Gamma}
+\DeclareInputMath{227}{\pi}
+\DeclareInputMath{228}{\Sigma}
+\DeclareInputMath{229}{\sigma}
+\DeclareInputMath{230}{\mu}
+\DeclareInputMath{231}{\tau}
+\DeclareInputMath{232}{\Phi}
+\DeclareInputMath{233}{\Theta}
+\DeclareInputMath{234}{\Omega}
+\DeclareInputMath{235}{\delta}
+\DeclareInputMath{236}{\infty}
+\DeclareInputMath{237}{\emptyset}
+\DeclareInputMath{238}{\in}
+\DeclareInputMath{239}{\cap}
+\DeclareInputMath{240}{\equiv}
+\DeclareInputMath{241}{\pm}
+\DeclareInputMath{242}{\geq}
+\DeclareInputMath{243}{\leq}
+\DeclareInputMath{246}{\div}
+\DeclareInputMath{247}{\sim}
+\DeclareInputText{248}{\textdegree}
+\DeclareInputText{249}{\textbullet}
+\DeclareInputText{250}{\textperiodcentered}
+\DeclareInputMath{251}{\surd}
+\DeclareInputMath{252}{\mathnsuperior}
+\DeclareInputMath{253}{\mathtwosuperior}
+\DeclareInputText{254}{\textblacksquare}
+\DeclareInputText{255}{\nobreakspace}
+%</MIK>
+% \end{macrocode}
+%
+% \subsection{Mongolian codepages}
+%
+% These codepages were taken from Oliver Corff's `Mon\TeX' package
+% (available at CTAN:language/mongolian/montex). Since T2 encodings
+% support the Mongolian Cyrillic script, it is convenient to have support
+% for Mongolian input encodings as well. Pointers to documentation
+% for these codepages are highly appreciated.
+%
+% \subsubsection{CTT Mongolian codepage}
+%
+% \begin{macrocode}
+%<*CTT>
+\DeclareInputText{171}{\guillemotleft}
+\DeclareInputText{187}{\guillemotright}
+\DeclareInputText{192}{\CYRA}
+\DeclareInputText{193}{\CYRB}
+\DeclareInputText{194}{\CYRV}
+\DeclareInputText{195}{\CYRG}
+\DeclareInputText{196}{\CYRD}
+\DeclareInputText{197}{\CYRE}
+\DeclareInputText{168}{\CYRYO}
+\DeclareInputText{198}{\CYRZH}
+\DeclareInputText{199}{\CYRZ}
+\DeclareInputText{200}{\CYRI}
+\DeclareInputText{201}{\CYRISHRT}
+\DeclareInputText{202}{\CYRK}
+\DeclareInputText{203}{\CYRL}
+\DeclareInputText{204}{\CYRM}
+\DeclareInputText{205}{\CYRN}
+\DeclareInputText{206}{\CYRO}
+\DeclareInputText{170}{\CYROTLD}
+\DeclareInputText{207}{\CYRP}
+\DeclareInputText{208}{\CYRR}
+\DeclareInputText{209}{\CYRS}
+\DeclareInputText{210}{\CYRT}
+\DeclareInputText{211}{\CYRU}
+\DeclareInputText{175}{\CYRY}
+\DeclareInputText{212}{\CYRF}
+\DeclareInputText{213}{\CYRH}
+\DeclareInputText{214}{\CYRC}
+\DeclareInputText{215}{\CYRCH}
+\DeclareInputText{216}{\CYRSH}
+\DeclareInputText{217}{\CYRSHCH}
+\DeclareInputText{218}{\CYRHRDSN}
+\DeclareInputText{219}{\CYRERY}
+\DeclareInputText{220}{\CYRSFTSN}
+\DeclareInputText{221}{\CYREREV}
+\DeclareInputText{222}{\CYRYU}
+\DeclareInputText{223}{\CYRYA}
+\DeclareInputText{224}{\cyra}
+\DeclareInputText{225}{\cyrb}
+\DeclareInputText{226}{\cyrv}
+\DeclareInputText{227}{\cyrg}
+\DeclareInputText{228}{\cyrd}
+\DeclareInputText{229}{\cyre}
+\DeclareInputText{184}{\cyryo}
+\DeclareInputText{230}{\cyrzh}
+\DeclareInputText{231}{\cyrz}
+\DeclareInputText{232}{\cyri}
+\DeclareInputText{233}{\cyrishrt}
+\DeclareInputText{234}{\cyrk}
+\DeclareInputText{235}{\cyrl}
+\DeclareInputText{236}{\cyrm}
+\DeclareInputText{237}{\cyrn}
+\DeclareInputText{238}{\cyro}
+\DeclareInputText{186}{\cyrotld}
+\DeclareInputText{239}{\cyrp}
+\DeclareInputText{240}{\cyrr}
+\DeclareInputText{241}{\cyrs}
+\DeclareInputText{242}{\cyrt}
+\DeclareInputText{243}{\cyru}
+\DeclareInputText{191}{\cyry}
+\DeclareInputText{244}{\cyrf}
+\DeclareInputText{245}{\cyrh}
+\DeclareInputText{246}{\cyrc}
+\DeclareInputText{247}{\cyrch}
+\DeclareInputText{248}{\cyrsh}
+\DeclareInputText{249}{\cyrshch}
+\DeclareInputText{250}{\cyrhrdsn}
+\DeclareInputText{251}{\cyrery}
+\DeclareInputText{252}{\cyrsftsn}
+\DeclareInputText{253}{\cyrerev}
+\DeclareInputText{254}{\cyryu}
+\DeclareInputText{255}{\cyrya}
+%</CTT>
+% \end{macrocode}
+%
+% \subsubsection{DBK Mongolian codepage}
+%
+% \begin{macrocode}
+%<*DBK>
+\DeclareInputText{128}{\CYRA}
+\DeclareInputText{129}{\CYRB}
+\DeclareInputText{130}{\CYRV}
+\DeclareInputText{131}{\CYRG}
+\DeclareInputText{132}{\CYRD}
+\DeclareInputText{133}{\CYRE}
+\DeclareInputText{134}{\CYRYO}
+\DeclareInputText{135}{\CYRZH}
+\DeclareInputText{136}{\CYRZ}
+\DeclareInputText{137}{\CYRI}
+\DeclareInputText{139}{\CYRISHRT}
+\DeclareInputText{140}{\CYRK}
+\DeclareInputText{142}{\CYRL}
+\DeclareInputText{143}{\CYRM}
+\DeclareInputText{144}{\CYRN}
+\DeclareInputText{145}{\CYRO}
+\DeclareInputText{146}{\CYROTLD}
+\DeclareInputText{147}{\CYRP}
+\DeclareInputText{148}{\CYRR}
+\DeclareInputText{149}{\CYRS}
+\DeclareInputText{150}{\CYRT}
+\DeclareInputText{151}{\CYRU}
+\DeclareInputText{152}{\CYRY}
+\DeclareInputText{153}{\CYRF}
+\DeclareInputText{154}{\CYRH}
+\DeclareInputText{155}{\CYRC}
+\DeclareInputText{156}{\CYRCH}
+\DeclareInputText{157}{\CYRSH}
+\DeclareInputText{158}{\CYRSHCH}
+\DeclareInputText{159}{\CYRHRDSN}
+\DeclareInputText{160}{\CYRERY}
+\DeclareInputText{161}{\CYRSFTSN}
+\DeclareInputText{162}{\CYREREV}
+\DeclareInputText{163}{\CYRYU}
+\DeclareInputText{164}{\CYRYA}
+\DeclareInputText{165}{\cyra}
+\DeclareInputText{166}{\cyrb}
+\DeclareInputText{167}{\cyrv}
+\DeclareInputText{168}{\cyrg}
+\DeclareInputText{169}{\cyrd}
+\DeclareInputText{170}{\cyre}
+\DeclareInputText{171}{\cyryo}
+\DeclareInputText{172}{\cyrzh}
+\DeclareInputText{173}{\cyrz}
+\DeclareInputText{174}{\cyri}
+\DeclareInputText{175}{\cyrishrt}
+\DeclareInputText{225}{\cyrk}
+\DeclareInputText{226}{\cyrl}
+\DeclareInputText{227}{\cyrm}
+\DeclareInputText{228}{\cyrn}
+\DeclareInputText{229}{\cyro}
+\DeclareInputText{230}{\cyrotld}
+\DeclareInputText{231}{\cyrp}
+\DeclareInputText{232}{\cyrr}
+\DeclareInputText{233}{\cyrs}
+\DeclareInputText{234}{\cyrt}
+\DeclareInputText{235}{\cyru}
+\DeclareInputText{236}{\cyry}
+\DeclareInputText{237}{\cyrf}
+\DeclareInputText{238}{\cyrh}
+\DeclareInputText{239}{\cyrc}
+\DeclareInputText{241}{\cyrch}
+\DeclareInputText{242}{\cyrsh}
+\DeclareInputText{243}{\cyrshch}
+\DeclareInputText{244}{\cyrhrdsn}
+\DeclareInputText{245}{\cyrery}
+\DeclareInputText{246}{\cyrsftsn}
+\DeclareInputText{247}{\cyrerev}
+\DeclareInputText{248}{\cyryu}
+\DeclareInputText{249}{\cyrya}
+%</DBK>
+% \end{macrocode}
+%
+% \subsubsection{MNK Mongolian codepage}
+%
+% \begin{macrocode}
+%<*MNK>
+\DeclareInputText{128}{\CYRA}
+\DeclareInputText{129}{\CYRB}
+\DeclareInputText{130}{\CYRV}
+\DeclareInputText{131}{\CYRG}
+\DeclareInputText{132}{\CYRD}
+\DeclareInputText{133}{\CYRE}
+\DeclareInputText{134}{\CYRYO}
+\DeclareInputText{135}{\CYRZH}
+\DeclareInputText{136}{\CYRZ}
+\DeclareInputText{137}{\CYRI}
+\DeclareInputText{138}{\CYRISHRT}
+\DeclareInputText{139}{\CYRK}
+\DeclareInputText{140}{\CYRL}
+\DeclareInputText{141}{\CYRM}
+\DeclareInputText{142}{\CYRN}
+\DeclareInputText{143}{\CYRO}
+\DeclareInputText{144}{\CYROTLD}
+\DeclareInputText{145}{\CYRP}
+\DeclareInputText{146}{\CYRR}
+\DeclareInputText{147}{\CYRS}
+\DeclareInputText{148}{\CYRT}
+\DeclareInputText{149}{\CYRU}
+\DeclareInputText{150}{\CYRY}
+\DeclareInputText{151}{\CYRF}
+\DeclareInputText{152}{\CYRH}
+\DeclareInputText{153}{\CYRC}
+\DeclareInputText{154}{\CYRCH}
+\DeclareInputText{155}{\CYRSH}
+\DeclareInputText{156}{\CYRSHCH}
+\DeclareInputText{157}{\CYRHRDSN}
+\DeclareInputText{158}{\CYRERY}
+\DeclareInputText{159}{\CYRSFTSN}
+\DeclareInputText{160}{\CYREREV}
+\DeclareInputText{161}{\CYRYU}
+\DeclareInputText{162}{\CYRYA}
+\DeclareInputText{163}{\cyra}
+\DeclareInputText{164}{\cyrb}
+\DeclareInputText{165}{\cyrv}
+\DeclareInputText{166}{\cyrg}
+\DeclareInputText{167}{\cyrd}
+\DeclareInputText{168}{\cyre}
+\DeclareInputText{169}{\cyryo}
+\DeclareInputText{170}{\cyrzh}
+\DeclareInputText{173}{\cyrz}
+\DeclareInputText{224}{\cyri}
+\DeclareInputText{225}{\cyrishrt}
+\DeclareInputText{226}{\cyrk}
+\DeclareInputText{227}{\cyrl}
+\DeclareInputText{228}{\cyrm}
+\DeclareInputText{229}{\cyrn}
+\DeclareInputText{230}{\cyro}
+\DeclareInputText{231}{\cyrotld}
+\DeclareInputText{232}{\cyrp}
+\DeclareInputText{233}{\cyrr}
+\DeclareInputText{234}{\cyrs}
+\DeclareInputText{235}{\cyrt}
+\DeclareInputText{236}{\cyru}
+\DeclareInputText{237}{\cyry}
+\DeclareInputText{238}{\cyrf}
+\DeclareInputText{239}{\cyrh}
+\DeclareInputText{240}{\cyrc}
+\DeclareInputText{241}{\cyrch}
+\DeclareInputText{242}{\cyrsh}
+\DeclareInputText{243}{\cyrshch}
+\DeclareInputText{244}{\cyrhrdsn}
+\DeclareInputText{245}{\cyrery}
+\DeclareInputText{248}{\cyrsftsn}
+\DeclareInputText{252}{\cyrerev}
+\DeclareInputText{253}{\cyryu}
+\DeclareInputText{254}{\cyrya}
+%</MNK>
+% \end{macrocode}
+%
+% \subsubsection{MOS Mongolian codepage}
+%
+% \begin{macrocode}
+%<*MOS>
+\DeclareInputText{128}{\CYRA}
+\DeclareInputText{129}{\CYRB}
+\DeclareInputText{130}{\CYRV}
+\DeclareInputText{131}{\CYRG}
+\DeclareInputText{132}{\CYRD}
+\DeclareInputText{133}{\CYRE}
+\DeclareInputText{160}{\CYRYO}
+\DeclareInputText{134}{\CYRZH}
+\DeclareInputText{135}{\CYRZ}
+\DeclareInputText{136}{\CYRI}
+\DeclareInputText{137}{\CYRISHRT}
+\DeclareInputText{138}{\CYRK}
+\DeclareInputText{139}{\CYRL}
+\DeclareInputText{140}{\CYRM}
+\DeclareInputText{141}{\CYRN}
+\DeclareInputText{142}{\CYRO}
+\DeclareInputText{153}{\CYROTLD}
+\DeclareInputText{143}{\CYRP}
+\DeclareInputText{144}{\CYRR}
+\DeclareInputText{145}{\CYRS}
+\DeclareInputText{146}{\CYRT}
+\DeclareInputText{147}{\CYRU}
+\DeclareInputText{154}{\CYRY}
+\DeclareInputText{148}{\CYRF}
+\DeclareInputText{149}{\CYRH}
+\DeclareInputText{150}{\CYRC}
+\DeclareInputText{151}{\CYRCH}
+\DeclareInputText{152}{\CYRSH}
+\DeclareInputText{164}{\CYRSHCH}
+\DeclareInputText{162}{\CYRHRDSN}
+\DeclareInputText{155}{\CYRERY}
+\DeclareInputText{156}{\CYRSFTSN}
+\DeclareInputText{157}{\CYREREV}
+\DeclareInputText{158}{\CYRYU}
+\DeclareInputText{159}{\CYRYA}
+\DeclareInputText{224}{\cyra}
+\DeclareInputText{225}{\cyrb}
+\DeclareInputText{226}{\cyrv}
+\DeclareInputText{227}{\cyrg}
+\DeclareInputText{228}{\cyrd}
+\DeclareInputText{229}{\cyre}
+\DeclareInputText{161}{\cyryo}
+\DeclareInputText{230}{\cyrzh}
+\DeclareInputText{231}{\cyrz}
+\DeclareInputText{232}{\cyri}
+\DeclareInputText{233}{\cyrishrt}
+\DeclareInputText{234}{\cyrk}
+\DeclareInputText{235}{\cyrl}
+\DeclareInputText{236}{\cyrm}
+\DeclareInputText{237}{\cyrn}
+\DeclareInputText{238}{\cyro}
+\DeclareInputText{249}{\cyrotld}
+\DeclareInputText{239}{\cyrp}
+\DeclareInputText{240}{\cyrr}
+\DeclareInputText{241}{\cyrs}
+\DeclareInputText{242}{\cyrt}
+\DeclareInputText{243}{\cyru}
+\DeclareInputText{250}{\cyry}
+\DeclareInputText{244}{\cyrf}
+\DeclareInputText{245}{\cyrh}
+\DeclareInputText{246}{\cyrc}
+\DeclareInputText{247}{\cyrch}
+\DeclareInputText{248}{\cyrsh}
+\DeclareInputText{165}{\cyrshch}
+\DeclareInputText{163}{\cyrhrdsn}
+\DeclareInputText{251}{\cyrery}
+\DeclareInputText{252}{\cyrsftsn}
+\DeclareInputText{253}{\cyrerev}
+\DeclareInputText{254}{\cyryu}
+\DeclareInputText{168}{\cyrya}
+%</MOS>
+% \end{macrocode}
+%
+% \subsubsection{NCC Mongolian codepage}
+%
+% \begin{macrocode}
+%<*NCC>
+\DeclareInputText{128}{\CYRA}
+\DeclareInputText{129}{\CYRB}
+\DeclareInputText{130}{\CYRV}
+\DeclareInputText{131}{\CYRG}
+\DeclareInputText{132}{\CYRD}
+\DeclareInputText{133}{\CYRE}
+\DeclareInputText{134}{\CYRYO}
+\DeclareInputText{135}{\CYRZH}
+\DeclareInputText{136}{\CYRZ}
+\DeclareInputText{137}{\CYRI}
+\DeclareInputText{139}{\CYRISHRT}
+\DeclareInputText{140}{\CYRK}
+\DeclareInputText{142}{\CYRL}
+\DeclareInputText{143}{\CYRM}
+\DeclareInputText{144}{\CYRN}
+\DeclareInputText{145}{\CYRO}
+\DeclareInputText{146}{\CYROTLD}
+\DeclareInputText{147}{\CYRP}
+\DeclareInputText{148}{\CYRR}
+\DeclareInputText{149}{\CYRS}
+\DeclareInputText{150}{\CYRT}
+\DeclareInputText{151}{\CYRU}
+\DeclareInputText{152}{\CYRY}
+\DeclareInputText{153}{\CYRF}
+\DeclareInputText{154}{\CYRH}
+\DeclareInputText{155}{\CYRC}
+\DeclareInputText{156}{\CYRCH}
+\DeclareInputText{157}{\CYRSH}
+\DeclareInputText{158}{\CYRSHCH}
+\DeclareInputText{159}{\CYRHRDSN}
+\DeclareInputText{160}{\CYRERY}
+\DeclareInputText{161}{\CYRSFTSN}
+\DeclareInputText{162}{\CYREREV}
+\DeclareInputText{163}{\CYRYU}
+\DeclareInputText{164}{\CYRYA}
+\DeclareInputText{165}{\cyra}
+\DeclareInputText{166}{\cyrb}
+\DeclareInputText{167}{\cyrv}
+\DeclareInputText{168}{\cyrg}
+\DeclareInputText{169}{\cyrd}
+\DeclareInputText{170}{\cyre}
+\DeclareInputText{171}{\cyryo}
+\DeclareInputText{172}{\cyrzh}
+\DeclareInputText{173}{\cyrz}
+\DeclareInputText{225}{\cyri}
+\DeclareInputText{226}{\cyrishrt}
+\DeclareInputText{227}{\cyrk}
+\DeclareInputText{228}{\cyrl}
+\DeclareInputText{229}{\cyrm}
+\DeclareInputText{230}{\cyrn}
+\DeclareInputText{231}{\cyro}
+\DeclareInputText{232}{\cyrotld}
+\DeclareInputText{233}{\cyrp}
+\DeclareInputText{234}{\cyrr}
+\DeclareInputText{235}{\cyrs}
+\DeclareInputText{236}{\cyrt}
+\DeclareInputText{237}{\cyru}
+\DeclareInputText{238}{\cyry}
+\DeclareInputText{239}{\cyrf}
+\DeclareInputText{240}{\cyrh}
+\DeclareInputText{241}{\cyrc}
+\DeclareInputText{242}{\cyrch}
+\DeclareInputText{243}{\cyrsh}
+\DeclareInputText{244}{\cyrshch}
+\DeclareInputText{245}{\cyrhrdsn}
+\DeclareInputText{246}{\cyrery}
+\DeclareInputText{247}{\cyrsftsn}
+\DeclareInputText{248}{\cyrerev}
+\DeclareInputText{249}{\cyryu}
+\DeclareInputText{251}{\cyrya}
+%</NCC>
+% \end{macrocode}
+%
+% \subsubsection{MLS Mongolian codepage}
+%
+% \begin{macrocode}
+%<*MLS>
+\DeclareInputText{128}{\CYRB}
+\DeclareInputText{129}{\cyry}
+\DeclareInputText{130}{\CYRD}
+\DeclareInputText{131}{\CYRYO}
+\DeclareInputText{132}{\cyrerev}
+\DeclareInputText{133}{\CYRZH}
+\DeclareInputText{134}{\CYRZ}
+\DeclareInputText{135}{\CYRI}
+\DeclareInputText{136}{\CYRISHRT}
+\DeclareInputText{137}{\cyryo}
+\DeclareInputText{138}{\CYRL}
+\DeclareInputText{139}{\cyrishrt}
+\DeclareInputText{140}{\CYROTLD}
+\DeclareInputText{141}{\CYRP}
+\DeclareInputText{142}{\CYREREV}
+\DeclareInputText{143}{\CYRU}
+\DeclareInputText{144}{\CYRF}
+\DeclareInputText{145}{\CYRC}
+\DeclareInputText{146}{\CYRCH}
+\DeclareInputText{147}{\CYRSH}
+\DeclareInputText{148}{\cyrotld}
+\DeclareInputText{149}{\CYRSHCH}
+\DeclareInputText{150}{\CYRHRDSN}
+\DeclareInputText{151}{\CYRERY}
+\DeclareInputText{152}{\CYRSFTSN}
+\DeclareInputText{153}{\CYROTLD}
+\DeclareInputText{154}{\CYRY}
+\DeclareInputText{155}{\CYREREV}
+\DeclareInputText{156}{\CYRYU}
+\DeclareInputText{157}{\CYRYA}
+\DeclareInputText{158}{\cyrb}
+\DeclareInputText{159}{\cyrv}
+\DeclareInputText{160}{\cyrg}
+\DeclareInputText{161}{\cyrd}
+\DeclareInputText{162}{\cyrzh}
+\DeclareInputText{163}{\cyrz}
+\DeclareInputText{164}{\cyri}
+\DeclareInputText{165}{\cyrishrt}
+\DeclareInputText{166}{\cyrk}
+\DeclareInputText{167}{\cyrl}
+\DeclareInputText{168}{\cyrm}
+\DeclareInputText{169}{\cyrn}
+\DeclareInputText{170}{\cyrotld}
+\DeclareInputText{171}{\cyrp}
+\DeclareInputText{172}{\cyrt}
+\DeclareInputText{173}{\cyry}
+\DeclareInputText{174}{\guillemotleft}
+\DeclareInputText{175}{\guillemotright}
+\DeclareInputText{176}{\cyrf}
+\DeclareInputText{177}{\cyrc}
+\DeclareInputText{178}{\cyrch}
+\DeclareInputText{180}{\cyrsh}
+\DeclareInputText{181}{\cyrshch}
+\DeclareInputText{182}{\cyrhrdsn}
+\DeclareInputText{183}{\cyrery}
+\DeclareInputText{184}{\cyrsftsn}
+\DeclareInputText{189}{\cyrerev}
+\DeclareInputText{190}{\cyryu}
+\DeclareInputText{193}{\cyrya}
+\DeclareInputText{226}{\CYRG}
+\DeclareInputText{225}{\ss}
+\DeclareInputText{231}{\ensuremath{\gamma}}
+\DeclareInputText{255}{\nobreakspace}
+% \end{macrocode}
+% Bicig Letters. These are traditional (non-Cyrillic) Mongolian letters,
+% which are not supported by Cyrillic |T2|~encodings. To use these
+% letters you should install the |LMS|~font encoding definition file and
+% Mongolian fonts contained in the Mon\TeX{} package. These letters
+% coexist with Cyrillic in one input encoding.
+% \begin{macrocode}
+\DeclareInputText{194}{\titem}
+\DeclareInputText{195}{\shud}
+\DeclareInputText{197}{\secondaryshud}
+\DeclareInputText{198}{\shilbe}
+\DeclareInputText{199}{\gedes}
+\DeclareInputText{207}{\secondarygedes}
+\DeclareInputText{208}{\cegteishud}
+\DeclareInputText{209}{\lewer}
+\DeclareInputText{210}{\suuliinlewer}
+\DeclareInputText{211}{\tertiarylewer}
+\DeclareInputText{212}{\mewer}
+\DeclareInputText{213}{\suuliinmewer}
+\DeclareInputText{214}{\xewteeqix}
+\DeclareInputText{215}{\dawxarcegtxewteeqix}
+\DeclareInputText{216}{\halfnum}
+\DeclareInputText{219}{\num}
+\DeclareInputText{220}{\halfnumtgedes}
+\DeclareInputText{221}{\numtaigedes}
+\DeclareInputText{222}{\buruuxarsangedes}
+\DeclareInputText{223}{\gedesteishilbe}
+\DeclareInputText{224}{\erweeljinshilbe}
+\DeclareInputText{227}{\secerweeljin}
+\DeclareInputText{228}{\bosooshilbe}
+\DeclareInputText{229}{\etgershilbe}
+\DeclareInputText{230}{\zawj}
+\DeclareInputText{232}{\suuliinzawj}
+\DeclareInputText{233}{\dawxarcegtzawj}
+\DeclareInputText{234}{\sereeewer}
+\DeclareInputText{235}{\matgarshilbe}
+\DeclareInputText{236}{\bituushilbe}
+\DeclareInputText{237}{\secondaryqagt}
+\DeclareInputText{238}{\qagt}
+\DeclareInputText{239}{\secnumtdelbenqix}
+\DeclareInputText{240}{\numtdelbenqix}
+\DeclareInputText{241}{\secsertenqixtnum}
+\DeclareInputText{242}{\sertenqixtnum}
+\DeclareInputText{243}{\zadgaizardigt}
+\DeclareInputText{244}{\bituuzardigt}
+\DeclareInputText{245}{\malgaitaititem}
+\DeclareInputText{246}{\suul}
+\DeclareInputText{247}{\orxic}
+\DeclareInputText{248}{\biodoisuul}
+\DeclareInputText{249}{\bagodoisuul}
+\DeclareInputText{250}{\nceg}
+\DeclareInputText{251}{\gceg}
+\DeclareInputText{252}{\ceg}
+\DeclareInputText{253}{\dorwoljin}
+%</MLS>
+% \end{macrocode}
+% Finally, we reset the category code of the at sign at the end of all
+% .def files.
+% \begin{macrocode}
+\makeatother
+% \end{macrocode}
+\endinput
diff --git a/macros/latex/required/cyrillic/cyinpenc.pdf b/macros/latex/required/cyrillic/cyinpenc.pdf
new file mode 100644
index 0000000000..98b349a917
--- /dev/null
+++ b/macros/latex/required/cyrillic/cyinpenc.pdf
Binary files differ
diff --git a/macros/latex/required/cyrillic/cyoutenc.dtx b/macros/latex/required/cyrillic/cyoutenc.dtx
new file mode 100644
index 0000000000..4b510de97f
--- /dev/null
+++ b/macros/latex/required/cyrillic/cyoutenc.dtx
@@ -0,0 +1,611 @@
+% \iffalse meta-comment
+%
+% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2008 2009
+% The LaTeX3 Project and any individual authors listed elsewhere
+% in this file.
+%
+% This file is part of the Standard LaTeX `Cyrillic Bundle'.
+% ----------------------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl.txt
+% and version 1.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% The list of all files belonging to the `Cyrillic Bundle' is
+% given in the file `manifest.txt'.
+%
+% \fi
+% \iffalse
+% This is the file |cyoutenc.dtx| of the cyrillic bundle for LaTeX2e.
+%
+%<*driver>
+\documentclass{ltxdoc}
+\begin{document}
+\DocInput{cyoutenc.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \section{The Cyrillic font encodings: T2A, T2B, T2C, and X2}
+%
+% Since the number of Cyrillic glyphs exceeds the limit for a `T'
+% encoding, it is necessary to create multiple glyph containers. The
+% output encodings `T2A', `T2B', and `T2C' are the result of long
+% discussions in various Internet mailing lists; they emerged from the
+% `X2' glyph container which was previously called `T2'. Please
+% consult section~6.4 (`Naming conventions') in the file
+% |fntguide.tex| of the base \LaTeXe\ distribution for details on the
+% differences between \LaTeX\ font encodings.
+%
+% When typesetting Cyrillic texts, there is a tradition to use Cyrillic
+% letters (in some situations) inside math formul\ae\ just like Latin
+% letters. By default, this does not work, because symbols declared
+% with |\DeclareTextSymbol| may not be used inside math. If you need to
+% `transparently' typeset symbols in math formul\ae\ which are declared
+% in encoding definition files, you could use the |mathtext| package
+% available at |CTAN:macros/latex/contrib/supported/t2|. Note that this
+% package uses at least one additional math alphabet per font encoding.
+%
+% To make code more compact, we use the |\LastDeclaredEncoding| macro to
+% share the same lines in the DTX file for different encodings. This macro
+% appeared in the December 1998 \LaTeXe\ release (together with the
+% integration of Cyrillic stuff), thus we use |\NeedsTeXFormat|
+% below. We will probably change this `sharing mechanism' to use
+% a yet-to-be-written |docstrip| extension (namely, substring substitution)
+% in the future.
+%
+% \begin{macrocode}
+%<*X2|T2A|T2B|T2C>
+\NeedsTeXFormat{LaTeX2e}[1998/12/01]
+%<X2>\ProvidesFile{x2enc.def}
+%<T2A>\ProvidesFile{t2aenc.def}
+%<T2B>\ProvidesFile{t2benc.def}
+%<T2C>\ProvidesFile{t2cenc.def}
+ [2005/09/27 v1.0i Cyrillic encoding definition file]
+% \end{macrocode}
+%
+% To assure that |\MakeUppercase| and |\MakeLowercase| will work
+% correctly, |\@uclclist| (defined in the \LaTeX\ kernel) contains all
+% Cyrillic uppercase-lowercase letter pairs. This also needs at least
+% December 1998 \LaTeXe\ release.
+%
+% \begin{macrocode}
+%<X2>\DeclareFontEncoding{X2}{}{}
+%<T2A>\DeclareFontEncoding{T2A}{}{}
+%<T2B>\DeclareFontEncoding{T2B}{}{}
+%<T2C>\DeclareFontEncoding{T2C}{}{}
+\DeclareFontSubstitution{\LastDeclaredEncoding}{cmr}{m}{n}
+% \end{macrocode}
+%
+% Common accents.
+%
+% \begin{macrocode}
+\DeclareTextAccent{\`}{\LastDeclaredEncoding}{0}
+\DeclareTextAccent{\'}{\LastDeclaredEncoding}{1}
+\DeclareTextAccent{\^}{\LastDeclaredEncoding}{2}
+\DeclareTextAccent{\~}{\LastDeclaredEncoding}{3}
+\DeclareTextAccent{\"}{\LastDeclaredEncoding}{4}
+\DeclareTextAccent{\H}{\LastDeclaredEncoding}{5}
+\DeclareTextAccent{\r}{\LastDeclaredEncoding}{6}
+\DeclareTextAccent{\v}{\LastDeclaredEncoding}{7}
+\DeclareTextAccent{\u}{\LastDeclaredEncoding}{8}
+\DeclareTextAccent{\=}{\LastDeclaredEncoding}{9}
+\DeclareTextAccent{\.}{\LastDeclaredEncoding}{10}
+% 11 cedilla
+% 12 ogonek
+% Cyrillic flex (inverted breve) accent:
+\DeclareTextAccent{\f}{\LastDeclaredEncoding}{18}
+% double grave (`Cyrillic umlaut') accent:
+\DeclareTextAccent{\C}{\LastDeclaredEncoding}{19}
+% Cyrillic breve accent:
+\DeclareTextAccent{\U}{\LastDeclaredEncoding}{20}
+% \end{macrocode}
+% In these definitions we no longer use the helper function |\sh@ft|
+% from plain.tex since that now has two incompatible definitions.
+% \changes{v1.0i}{2005/09/27}{Replace \cs{sh@ft} by \cs{ltx@sh@ft}}
+% \begin{macrocode}
+\DeclareTextCommand{\b}{\LastDeclaredEncoding}[1]
+ {\hmode@bgroup\o@lign{\relax#1\crcr\hidewidth\ltx@sh@ft{-3ex}%
+ \vbox to.2ex{\hbox{\char9}\vss}\hidewidth}\egroup}
+\DeclareTextCommand{\c}{\LastDeclaredEncoding}[1]
+ {\leavevmode\setbox\z@\hbox{#1}\ifdim\ht\z@=1ex\accent11 #1%
+ \else{\ooalign{\hidewidth\char11\hidewidth
+ \crcr\unhbox\z@}}\fi}
+\DeclareTextCommand{\d}{\LastDeclaredEncoding}[1]
+ {\hmode@bgroup
+ \o@lign{\relax#1\crcr\hidewidth\ltx@sh@ft{-1ex}.\hidewidth}\egroup}
+\DeclareTextCommand{\k}{\LastDeclaredEncoding}[1]
+ {\oalign{\null#1\crcr\hidewidth\char12}}
+\DeclareTextCommand{\textperthousand}{\LastDeclaredEncoding}
+ {\%\char 24 }
+\DeclareTextCommand{\textpertenthousand}{\LastDeclaredEncoding}
+ {\%\char 24\char 24 }
+%<*!X2&AAhack>
+\DeclareTextCompositeCommand{\r}{\LastDeclaredEncoding}{A}
+ {\leavevmode\setbox\z@\hbox{!}\dimen@\ht\z@\advance\dimen@-1ex%
+ \rlap{\raise.67\dimen@\hbox{\char6}}A}
+%</!X2&AAhack>
+% \end{macrocode}
+%
+% Common symbolic glyphs.
+%
+% \begin{macrocode}
+\DeclareTextSymbol{\textendash}{\LastDeclaredEncoding}{21}
+% \end{macrocode}
+% Slot 22 is a `cyrillic emdash' --- |\cyrdash| which is longer
+% than endash, but shorter than english emdash (but we define an
+% alias too).
+% \begin{macrocode}
+\DeclareTextSymbol{\cyrdash}{\LastDeclaredEncoding}{22}
+\DeclareTextSymbol{\textemdash}{\LastDeclaredEncoding}{22}
+\DeclareTextSymbol{\textcompwordmark}{\LastDeclaredEncoding}{23}
+% 24 perthousandzero
+\DeclareTextSymbol{\textvisiblespace}{\LastDeclaredEncoding}{32}
+\DeclareTextSymbol{\textdollar}{\LastDeclaredEncoding}{36}
+\DeclareTextSymbol{\textless}{\LastDeclaredEncoding}{60}
+\DeclareTextSymbol{\textgreater}{\LastDeclaredEncoding}{62}
+%\DeclareTextSymbol{\texthyphenchar}{\LastDeclaredEncoding}{127}
+%\DeclareTextSymbol{\texthyphen}{\LastDeclaredEncoding}{45}
+\DeclareTextSymbol{\textbackslash}{\LastDeclaredEncoding}{92}
+\DeclareTextSymbol{\textasciicircum}{\LastDeclaredEncoding}{94}
+\DeclareTextSymbol{\textunderscore}{\LastDeclaredEncoding}{95}
+\DeclareTextSymbol{\textbraceleft}{\LastDeclaredEncoding}{123}
+\DeclareTextSymbol{\textbar}{\LastDeclaredEncoding}{124}
+\DeclareTextSymbol{\textbraceright}{\LastDeclaredEncoding}{125}
+\DeclareTextSymbol{\textasciitilde}{\LastDeclaredEncoding}{126}
+\DeclareTextSymbol{\textnumero}{\LastDeclaredEncoding}{157}
+\DeclareTextSymbol{\textcurrency}{\LastDeclaredEncoding}{158}
+\DeclareTextSymbol{\textsection}{\LastDeclaredEncoding}{159}
+%
+\DeclareTextSymbol{\textquotedbl}{\LastDeclaredEncoding}{34}
+\DeclareTextSymbol{\textquoteleft}{\LastDeclaredEncoding}{96}
+\DeclareTextSymbol{\textquoteright}{\LastDeclaredEncoding}{39}
+\DeclareTextSymbol{\textquotedblleft}{\LastDeclaredEncoding}{16}
+\DeclareTextSymbol{\textquotedblright}{\LastDeclaredEncoding}{17}
+\DeclareTextSymbol{\quotedblbase}{\LastDeclaredEncoding}{189}
+\DeclareTextSymbol{\CYRpalochka}{\LastDeclaredEncoding}{13}
+\DeclareTextSymbol{\cyrlangle}{\LastDeclaredEncoding}{14}
+\DeclareTextSymbol{\cyrrangle}{\LastDeclaredEncoding}{15}
+\DeclareTextSymbol{\guillemotleft}{\LastDeclaredEncoding}{190}
+\DeclareTextSymbol{\guillemotright}{\LastDeclaredEncoding}{191}
+% \end{macrocode}
+%
+% |\i| and |\j| are unused in Cyrillic languages, so are absent
+% in X2. Slots 25, 26, 27 in the X2 encoding are `cross grave',
+% `cross acute', and `hcross' modifiers, respectively.
+%
+% \begin{macrocode}
+%<!X2>\DeclareTextSymbol{\i}{\LastDeclaredEncoding}{25}
+%<!X2>\DeclareTextSymbol{\j}{\LastDeclaredEncoding}{26}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareTextComposite{\.}{\LastDeclaredEncoding}{i}{`\i}
+% \end{macrocode}
+%
+% Here are the letters common to all font encodings.
+%
+% \begin{macrocode}
+\DeclareTextSymbol{\CYRA}{\LastDeclaredEncoding}{192}
+\DeclareTextSymbol{\cyra}{\LastDeclaredEncoding}{224}
+\DeclareTextSymbol{\CYRB}{\LastDeclaredEncoding}{193}
+\DeclareTextSymbol{\cyrb}{\LastDeclaredEncoding}{225}
+\DeclareTextSymbol{\CYRV}{\LastDeclaredEncoding}{194}
+\DeclareTextSymbol{\cyrv}{\LastDeclaredEncoding}{226}
+\DeclareTextSymbol{\CYRG}{\LastDeclaredEncoding}{195}
+\DeclareTextSymbol{\cyrg}{\LastDeclaredEncoding}{227}
+\DeclareTextSymbol{\CYRD}{\LastDeclaredEncoding}{196}
+\DeclareTextSymbol{\cyrd}{\LastDeclaredEncoding}{228}
+\DeclareTextSymbol{\CYRE}{\LastDeclaredEncoding}{197}
+\DeclareTextSymbol{\cyre}{\LastDeclaredEncoding}{229}
+\DeclareTextSymbol{\CYRZH}{\LastDeclaredEncoding}{198}
+\DeclareTextSymbol{\cyrzh}{\LastDeclaredEncoding}{230}
+\DeclareTextSymbol{\CYRZ}{\LastDeclaredEncoding}{199}
+\DeclareTextSymbol{\cyrz}{\LastDeclaredEncoding}{231}
+\DeclareTextSymbol{\CYRI}{\LastDeclaredEncoding}{200}
+\DeclareTextSymbol{\cyri}{\LastDeclaredEncoding}{232}
+\DeclareTextSymbol{\CYRISHRT}{\LastDeclaredEncoding}{201}
+\DeclareTextSymbol{\cyrishrt}{\LastDeclaredEncoding}{233}
+\DeclareTextSymbol{\CYRK}{\LastDeclaredEncoding}{202}
+\DeclareTextSymbol{\cyrk}{\LastDeclaredEncoding}{234}
+\DeclareTextSymbol{\CYRL}{\LastDeclaredEncoding}{203}
+\DeclareTextSymbol{\cyrl}{\LastDeclaredEncoding}{235}
+\DeclareTextSymbol{\CYRM}{\LastDeclaredEncoding}{204}
+\DeclareTextSymbol{\cyrm}{\LastDeclaredEncoding}{236}
+\DeclareTextSymbol{\CYRN}{\LastDeclaredEncoding}{205}
+\DeclareTextSymbol{\cyrn}{\LastDeclaredEncoding}{237}
+\DeclareTextSymbol{\CYRO}{\LastDeclaredEncoding}{206}
+\DeclareTextSymbol{\cyro}{\LastDeclaredEncoding}{238}
+\DeclareTextSymbol{\CYRP}{\LastDeclaredEncoding}{207}
+\DeclareTextSymbol{\cyrp}{\LastDeclaredEncoding}{239}
+\DeclareTextSymbol{\CYRR}{\LastDeclaredEncoding}{208}
+\DeclareTextSymbol{\cyrr}{\LastDeclaredEncoding}{240}
+\DeclareTextSymbol{\CYRS}{\LastDeclaredEncoding}{209}
+\DeclareTextSymbol{\cyrs}{\LastDeclaredEncoding}{241}
+\DeclareTextSymbol{\CYRT}{\LastDeclaredEncoding}{210}
+\DeclareTextSymbol{\cyrt}{\LastDeclaredEncoding}{242}
+\DeclareTextSymbol{\CYRU}{\LastDeclaredEncoding}{211}
+\DeclareTextSymbol{\cyru}{\LastDeclaredEncoding}{243}
+\DeclareTextSymbol{\CYRF}{\LastDeclaredEncoding}{212}
+\DeclareTextSymbol{\cyrf}{\LastDeclaredEncoding}{244}
+\DeclareTextSymbol{\CYRH}{\LastDeclaredEncoding}{213}
+\DeclareTextSymbol{\cyrh}{\LastDeclaredEncoding}{245}
+\DeclareTextSymbol{\CYRC}{\LastDeclaredEncoding}{214}
+\DeclareTextSymbol{\cyrc}{\LastDeclaredEncoding}{246}
+\DeclareTextSymbol{\CYRCH}{\LastDeclaredEncoding}{215}
+\DeclareTextSymbol{\cyrch}{\LastDeclaredEncoding}{247}
+\DeclareTextSymbol{\CYRSH}{\LastDeclaredEncoding}{216}
+\DeclareTextSymbol{\cyrsh}{\LastDeclaredEncoding}{248}
+\DeclareTextSymbol{\CYRSHCH}{\LastDeclaredEncoding}{217}
+\DeclareTextSymbol{\cyrshch}{\LastDeclaredEncoding}{249}
+\DeclareTextSymbol{\CYRHRDSN}{\LastDeclaredEncoding}{218}
+\DeclareTextSymbol{\cyrhrdsn}{\LastDeclaredEncoding}{250}
+\DeclareTextSymbol{\CYRERY}{\LastDeclaredEncoding}{219}
+\DeclareTextSymbol{\cyrery}{\LastDeclaredEncoding}{251}
+\DeclareTextSymbol{\CYRSFTSN}{\LastDeclaredEncoding}{220}
+\DeclareTextSymbol{\cyrsftsn}{\LastDeclaredEncoding}{252}
+\DeclareTextSymbol{\CYREREV}{\LastDeclaredEncoding}{221}
+\DeclareTextSymbol{\cyrerev}{\LastDeclaredEncoding}{253}
+\DeclareTextSymbol{\CYRYU}{\LastDeclaredEncoding}{222}
+\DeclareTextSymbol{\cyryu}{\LastDeclaredEncoding}{254}
+\DeclareTextSymbol{\CYRYA}{\LastDeclaredEncoding}{223}
+\DeclareTextSymbol{\cyrya}{\LastDeclaredEncoding}{255}
+% \end{macrocode}
+%
+% And now the remaining letters.
+%
+% \begin{macrocode}
+%<*X2>
+\DeclareTextSymbol{\CYRGUP}{X2}{128}
+\DeclareTextSymbol{\cyrgup}{X2}{160}
+\DeclareTextSymbol{\CYRGHCRS}{X2}{129}
+\DeclareTextSymbol{\cyrghcrs}{X2}{161}
+\DeclareTextSymbol{\CYRGDSC}{X2}{130}
+\DeclareTextSymbol{\cyrgdsc}{X2}{162}
+\DeclareTextSymbol{\CYRGHK}{X2}{131}
+\DeclareTextSymbol{\cyrghk}{X2}{163}
+\DeclareTextSymbol{\CYRSHHA}{X2}{132}
+\DeclareTextSymbol{\cyrshha}{X2}{164}
+\DeclareTextSymbol{\CYRZHDSC}{X2}{133}
+\DeclareTextSymbol{\cyrzhdsc}{X2}{165}
+\DeclareTextSymbol{\CYRZDSC}{X2}{134}
+\DeclareTextSymbol{\cyrzdsc}{X2}{166}
+\DeclareTextSymbol{\CYRABHDZE}{X2}{135}
+\DeclareTextSymbol{\cyrabhdze}{X2}{167}
+\DeclareTextSymbol{\CYRYI}{X2}{136}
+\DeclareTextSymbol{\cyryi}{X2}{168}
+\DeclareTextSymbol{\CYRKDSC}{X2}{137}
+\DeclareTextSymbol{\cyrkdsc}{X2}{169}
+\DeclareTextSymbol{\CYRKBEAK}{X2}{138}
+\DeclareTextSymbol{\cyrkbeak}{X2}{170}
+\DeclareTextSymbol{\CYRKHK}{X2}{139}
+\DeclareTextSymbol{\cyrkhk}{X2}{171}
+\DeclareTextSymbol{\CYRLHK}{X2}{140}
+\DeclareTextSymbol{\cyrlhk}{X2}{172}
+\DeclareTextSymbol{\CYRNDSC}{X2}{141}
+\DeclareTextSymbol{\cyrndsc}{X2}{173}
+\DeclareTextSymbol{\CYRNG}{X2}{142}
+\DeclareTextSymbol{\cyrng}{X2}{174}
+\DeclareTextSymbol{\CYRNHK}{X2}{143}
+\DeclareTextSymbol{\cyrnhk}{X2}{175}
+\DeclareTextSymbol{\CYROTLD}{X2}{144}
+\DeclareTextSymbol{\cyrotld}{X2}{176}
+\DeclareTextSymbol{\CYRSDSC}{X2}{145}
+\DeclareTextSymbol{\cyrsdsc}{X2}{177}
+\DeclareTextSymbol{\CYRUSHRT}{X2}{146}
+\DeclareTextSymbol{\cyrushrt}{X2}{178}
+\DeclareTextSymbol{\CYRY}{X2}{147}
+\DeclareTextSymbol{\cyry}{X2}{179}
+\DeclareTextSymbol{\CYRYHCRS}{X2}{148}
+\DeclareTextSymbol{\cyryhcrs}{X2}{180}
+\DeclareTextSymbol{\CYRHDSC}{X2}{149}
+\DeclareTextSymbol{\cyrhdsc}{X2}{181}
+\DeclareTextSymbol{\CYRHHK}{X2}{150}
+\DeclareTextSymbol{\cyrhhk}{X2}{182}
+\DeclareTextSymbol{\CYRCHLDSC}{X2}{151}
+\DeclareTextSymbol{\cyrchldsc}{X2}{183}
+\DeclareTextSymbol{\CYRCHRDSC}{X2}{152}
+\DeclareTextSymbol{\cyrchrdsc}{X2}{184}
+\DeclareTextSymbol{\CYRIE}{X2}{153}
+\DeclareTextSymbol{\cyrie}{X2}{185}
+\DeclareTextSymbol{\CYRSCHWA}{X2}{154}
+\DeclareTextSymbol{\cyrschwa}{X2}{186}
+\DeclareTextSymbol{\CYREPS}{X2}{155}
+\DeclareTextSymbol{\cyreps}{X2}{187}
+%</X2>
+%
+%<*T2A>
+\DeclareTextSymbol{\CYRGUP}{T2A}{128}
+\DeclareTextSymbol{\cyrgup}{T2A}{160}
+\DeclareTextSymbol{\CYRGHCRS}{T2A}{129}
+\DeclareTextSymbol{\cyrghcrs}{T2A}{161}
+\DeclareTextSymbol{\CYRDJE}{T2A}{130}
+\DeclareTextSymbol{\cyrdje}{T2A}{162}
+\DeclareTextSymbol{\CYRTSHE}{T2A}{131}
+\DeclareTextSymbol{\cyrtshe}{T2A}{163}
+\DeclareTextSymbol{\CYRSHHA}{T2A}{132}
+\DeclareTextSymbol{\cyrshha}{T2A}{164}
+\DeclareTextSymbol{\CYRZHDSC}{T2A}{133}
+\DeclareTextSymbol{\cyrzhdsc}{T2A}{165}
+\DeclareTextSymbol{\CYRZDSC}{T2A}{134}
+\DeclareTextSymbol{\cyrzdsc}{T2A}{166}
+\DeclareTextSymbol{\CYRLJE}{T2A}{135}
+\DeclareTextSymbol{\cyrlje}{T2A}{167}
+\DeclareTextSymbol{\CYRYI}{T2A}{136}
+\DeclareTextSymbol{\cyryi}{T2A}{168}
+\DeclareTextSymbol{\CYRKDSC}{T2A}{137}
+\DeclareTextSymbol{\cyrkdsc}{T2A}{169}
+\DeclareTextSymbol{\CYRKBEAK}{T2A}{138}
+\DeclareTextSymbol{\cyrkbeak}{T2A}{170}
+\DeclareTextSymbol{\CYRKVCRS}{T2A}{139}
+\DeclareTextSymbol{\cyrkvcrs}{T2A}{171}
+\DeclareTextSymbol{\CYRAE}{T2A}{140}
+\DeclareTextSymbol{\cyrae}{T2A}{172}
+\DeclareTextSymbol{\CYRNDSC}{T2A}{141}
+\DeclareTextSymbol{\cyrndsc}{T2A}{173}
+\DeclareTextSymbol{\CYRNG}{T2A}{142}
+\DeclareTextSymbol{\cyrng}{T2A}{174}
+\DeclareTextSymbol{\CYRDZE}{T2A}{143}
+\DeclareTextSymbol{\cyrdze}{T2A}{175}
+\DeclareTextSymbol{\CYROTLD}{T2A}{144}
+\DeclareTextSymbol{\cyrotld}{T2A}{176}
+\DeclareTextSymbol{\CYRSDSC}{T2A}{145}
+\DeclareTextSymbol{\cyrsdsc}{T2A}{177}
+\DeclareTextSymbol{\CYRUSHRT}{T2A}{146}
+\DeclareTextSymbol{\cyrushrt}{T2A}{178}
+\DeclareTextSymbol{\CYRY}{T2A}{147}
+\DeclareTextSymbol{\cyry}{T2A}{179}
+\DeclareTextSymbol{\CYRYHCRS}{T2A}{148}
+\DeclareTextSymbol{\cyryhcrs}{T2A}{180}
+\DeclareTextSymbol{\CYRHDSC}{T2A}{149}
+\DeclareTextSymbol{\cyrhdsc}{T2A}{181}
+\DeclareTextSymbol{\CYRDZHE}{T2A}{150}
+\DeclareTextSymbol{\cyrdzhe}{T2A}{182}
+\DeclareTextSymbol{\CYRCHVCRS}{T2A}{151}
+\DeclareTextSymbol{\cyrchvcrs}{T2A}{183}
+\DeclareTextSymbol{\CYRCHRDSC}{T2A}{152}
+\DeclareTextSymbol{\cyrchrdsc}{T2A}{184}
+\DeclareTextSymbol{\CYRIE}{T2A}{153}
+\DeclareTextSymbol{\cyrie}{T2A}{185}
+\DeclareTextSymbol{\CYRSCHWA}{T2A}{154}
+\DeclareTextSymbol{\cyrschwa}{T2A}{186}
+\DeclareTextSymbol{\CYRNJE}{T2A}{155}
+\DeclareTextSymbol{\cyrnje}{T2A}{187}
+%</T2A>
+%
+%<*T2B>
+\DeclareTextSymbol{\CYRGDSCHCRS}{T2B}{128}
+\DeclareTextSymbol{\cyrgdschcrs}{T2B}{160}
+\DeclareTextSymbol{\CYRGHCRS}{T2B}{129}
+\DeclareTextSymbol{\cyrghcrs}{T2B}{161}
+\DeclareTextSymbol{\CYRGDSC}{T2B}{130}
+\DeclareTextSymbol{\cyrgdsc}{T2B}{162}
+\DeclareTextSymbol{\CYRGHK}{T2B}{131}
+\DeclareTextSymbol{\cyrghk}{T2B}{163}
+\DeclareTextSymbol{\CYRSHHA}{T2B}{132}
+\DeclareTextSymbol{\cyrshha}{T2B}{164}
+\DeclareTextSymbol{\CYRZHDSC}{T2B}{133}
+\DeclareTextSymbol{\cyrzhdsc}{T2B}{165}
+\DeclareTextSymbol{\CYRDELTA}{T2B}{134}
+\DeclareTextSymbol{\cyrdelta}{T2B}{166}
+\DeclareTextSymbol{\CYRABHDZE}{T2B}{135}
+\DeclareTextSymbol{\cyrabhdze}{T2B}{167}
+\DeclareTextSymbol{\CYRLJE}{T2B}{136}
+\DeclareTextSymbol{\cyrlje}{T2B}{168}
+\DeclareTextSymbol{\CYRKDSC}{T2B}{137}
+\DeclareTextSymbol{\cyrkdsc}{T2B}{169}
+\DeclareTextSymbol{\CYRLDSC}{T2B}{138}
+\DeclareTextSymbol{\cyrldsc}{T2B}{170}
+\DeclareTextSymbol{\CYRKHK}{T2B}{139}
+\DeclareTextSymbol{\cyrkhk}{T2B}{171}
+\DeclareTextSymbol{\CYRLHK}{T2B}{140}
+\DeclareTextSymbol{\cyrlhk}{T2B}{172}
+\DeclareTextSymbol{\CYRNDSC}{T2B}{141}
+\DeclareTextSymbol{\cyrndsc}{T2B}{173}
+\DeclareTextSymbol{\CYRNG}{T2B}{142}
+\DeclareTextSymbol{\cyrng}{T2B}{174}
+\DeclareTextSymbol{\CYRNHK}{T2B}{143}
+\DeclareTextSymbol{\cyrnhk}{T2B}{175}
+\DeclareTextSymbol{\CYROTLD}{T2B}{144}
+\DeclareTextSymbol{\cyrotld}{T2B}{176}
+\DeclareTextSymbol{\CYRSACRS}{T2B}{145}
+\DeclareTextSymbol{\cyrsacrs}{T2B}{177}
+\DeclareTextSymbol{\CYRUSHRT}{T2B}{146}
+\DeclareTextSymbol{\cyrushrt}{T2B}{178}
+\DeclareTextSymbol{\CYRY}{T2B}{147}
+\DeclareTextSymbol{\cyry}{T2B}{179}
+\DeclareTextSymbol{\CYRHHCRS}{T2B}{148}
+\DeclareTextSymbol{\cyrhhcrs}{T2B}{180}
+\DeclareTextSymbol{\CYRHDSC}{T2B}{149}
+\DeclareTextSymbol{\cyrhdsc}{T2B}{181}
+\DeclareTextSymbol{\CYRHHK}{T2B}{150}
+\DeclareTextSymbol{\cyrhhk}{T2B}{182}
+\DeclareTextSymbol{\CYRCHLDSC}{T2B}{151}
+\DeclareTextSymbol{\cyrchldsc}{T2B}{183}
+\DeclareTextSymbol{\CYRCHRDSC}{T2B}{152}
+\DeclareTextSymbol{\cyrchrdsc}{T2B}{184}
+\DeclareTextSymbol{\CYRNJE}{T2B}{153}
+\DeclareTextSymbol{\cyrnje}{T2B}{185}
+\DeclareTextSymbol{\CYRSCHWA}{T2B}{154}
+\DeclareTextSymbol{\cyrschwa}{T2B}{186}
+\DeclareTextSymbol{\CYREPS}{T2B}{155}
+\DeclareTextSymbol{\cyreps}{T2B}{187}
+%</T2B>
+%
+%<*T2C>
+\DeclareTextSymbol{\CYRPHK}{T2C}{128}
+\DeclareTextSymbol{\cyrphk}{T2C}{160}
+\DeclareTextSymbol{\CYRTETSE}{T2C}{129}
+\DeclareTextSymbol{\cyrtetse}{T2C}{161}
+\DeclareTextSymbol{\CYRTDSC}{T2C}{130}
+\DeclareTextSymbol{\cyrtdsc}{T2C}{162}
+\DeclareTextSymbol{\CYRGHK}{T2C}{131}
+\DeclareTextSymbol{\cyrghk}{T2C}{163}
+\DeclareTextSymbol{\CYRSHHA}{T2C}{132}
+\DeclareTextSymbol{\cyrshha}{T2C}{164}
+\DeclareTextSymbol{\CYRRDSC}{T2C}{133}
+\DeclareTextSymbol{\cyrrdsc}{T2C}{165}
+\DeclareTextSymbol{\CYRRTICK}{T2C}{134}
+\DeclareTextSymbol{\cyrrtick}{T2C}{166}
+\DeclareTextSymbol{\CYRABHDZE}{T2C}{135}
+\DeclareTextSymbol{\cyrabhdze}{T2C}{167}
+\DeclareTextSymbol{\CYRMDSC}{T2C}{136}
+\DeclareTextSymbol{\cyrmdsc}{T2C}{168}
+\DeclareTextSymbol{\CYRKDSC}{T2C}{137}
+\DeclareTextSymbol{\cyrkdsc}{T2C}{169}
+\DeclareTextSymbol{\CYRLDSC}{T2C}{138}
+\DeclareTextSymbol{\cyrldsc}{T2C}{170}
+\DeclareTextSymbol{\CYRKHCRS}{T2C}{139}
+\DeclareTextSymbol{\cyrkhcrs}{T2C}{171}
+\DeclareTextSymbol{\CYRLHK}{T2C}{140}
+\DeclareTextSymbol{\cyrlhk}{T2C}{172}
+\DeclareTextSymbol{\CYRNDSC}{T2C}{141}
+\DeclareTextSymbol{\cyrndsc}{T2C}{173}
+\DeclareTextSymbol{\CYRMHK}{T2C}{142}
+\DeclareTextSymbol{\cyrmhk}{T2C}{174}
+\DeclareTextSymbol{\CYRNHK}{T2C}{143}
+\DeclareTextSymbol{\cyrnhk}{T2C}{175}
+\DeclareTextSymbol{\CYROTLD}{T2C}{144}
+\DeclareTextSymbol{\cyrotld}{T2C}{176}
+\DeclareTextSymbol{\CYRABHCH}{T2C}{145}
+\DeclareTextSymbol{\cyrabhch}{T2C}{177}
+\DeclareTextSymbol{\CYRABHCHDSC}{T2C}{146}
+\DeclareTextSymbol{\cyrabhchdsc}{T2C}{178}
+\DeclareTextSymbol{\CYRSEMISFTSN}{T2C}{147}
+\DeclareTextSymbol{\cyrsemisftsn}{T2C}{179}
+\DeclareTextSymbol{\CYRISHRTDSC}{T2C}{148}
+\DeclareTextSymbol{\cyrishrtdsc}{T2C}{180}
+\DeclareTextSymbol{\CYRHDSC}{T2C}{149}
+\DeclareTextSymbol{\cyrhdsc}{T2C}{181}
+\DeclareTextSymbol{\CYRDZHE}{T2C}{150}
+\DeclareTextSymbol{\cyrdzhe}{T2C}{182}
+\DeclareTextSymbol{\CYRABHHA}{T2C}{151}
+\DeclareTextSymbol{\cyrabhha}{T2C}{183}
+\DeclareTextSymbol{\CYRCHRDSC}{T2C}{152}
+\DeclareTextSymbol{\cyrchrdsc}{T2C}{184}
+\DeclareTextSymbol{\CYRNLHK}{T2C}{153}
+\DeclareTextSymbol{\cyrnlhk}{T2C}{185}
+\DeclareTextSymbol{\CYRSCHWA}{T2C}{154}
+\DeclareTextSymbol{\cyrschwa}{T2C}{186}
+\DeclareTextSymbol{\CYRRHK}{T2C}{155}
+\DeclareTextSymbol{\cyrrhk}{T2C}{187}
+%</T2C>
+%
+\DeclareTextSymbol{\CYRYO}{\LastDeclaredEncoding}{156}
+\DeclareTextSymbol{\cyryo}{\LastDeclaredEncoding}{188}
+% \end{macrocode}
+%
+% The final block of Cyrillic letters occupies the space covered with
+% Latin letters in ASCII. These letters are only present
+% in X2 encoding (which does not contain Latin letters at all). However,
+% some Cyrillic glyphs here look exactly like some Latin analogues, and we
+% declare them also for T2* encodings, so that they are accessible
+% from inputenc files. In T2* encodings, these letters share the same
+% slots with the corresponding Latin letters. The affected letters are:
+% |\CYRII|, |\CYRJE|, |\CYRQ|, |\CYRDZE|, |\CYRW| (and lowercase
+% forms).
+%
+% \begin{macrocode}
+%<*X2>
+\DeclareTextSymbol{\CYRAE}{X2}{65}
+\DeclareTextSymbol{\cyrae}{X2}{97}
+\DeclareTextSymbol{\CYRDJE}{X2}{66}
+\DeclareTextSymbol{\cyrdje}{X2}{98}
+\DeclareTextSymbol{\CYRTSHE}{X2}{67}
+\DeclareTextSymbol{\cyrtshe}{X2}{99}
+\DeclareTextSymbol{\CYRABHCH}{X2}{68}
+\DeclareTextSymbol{\cyrabhch}{X2}{100}
+\DeclareTextSymbol{\CYRABHCHDSC}{X2}{69}
+\DeclareTextSymbol{\cyrabhchdsc}{X2}{101}
+\DeclareTextSymbol{\CYRKVCRS}{X2}{70}
+\DeclareTextSymbol{\cyrkvcrs}{X2}{102}
+\DeclareTextSymbol{\CYRKHCRS}{X2}{71}
+\DeclareTextSymbol{\cyrkhcrs}{X2}{103}
+\DeclareTextSymbol{\CYRLDSC}{X2}{72}
+\DeclareTextSymbol{\cyrldsc}{X2}{104}
+%</X2>
+\DeclareTextSymbol{\CYRII}{\LastDeclaredEncoding}{73}
+\DeclareTextSymbol{\cyrii}{\LastDeclaredEncoding}{105}
+\DeclareTextSymbol{\CYRJE}{\LastDeclaredEncoding}{74}
+\DeclareTextSymbol{\cyrje}{\LastDeclaredEncoding}{106}
+%<*X2>
+\DeclareTextSymbol{\CYRLJE}{X2}{75}
+\DeclareTextSymbol{\cyrlje}{X2}{107}
+\DeclareTextSymbol{\CYRMDSC}{X2}{76}
+\DeclareTextSymbol{\cyrmdsc}{X2}{108}
+\DeclareTextSymbol{\CYRNJE}{X2}{77}
+\DeclareTextSymbol{\cyrnje}{X2}{109}
+\DeclareTextSymbol{\CYRABHHA}{X2}{78}
+\DeclareTextSymbol{\cyrabhha}{X2}{110}
+\DeclareTextSymbol{\CYRPHK}{X2}{79}
+\DeclareTextSymbol{\cyrphk}{X2}{111}
+\DeclareTextSymbol{\CYRRDSC}{X2}{80}
+\DeclareTextSymbol{\cyrrdsc}{X2}{112}
+%</X2>
+\DeclareTextSymbol{\CYRQ}{\LastDeclaredEncoding}{81}
+\DeclareTextSymbol{\cyrq}{\LastDeclaredEncoding}{113}
+%<*X2>
+\DeclareTextSymbol{\CYRTDSC}{X2}{82}
+\DeclareTextSymbol{\cyrtdsc}{X2}{114}
+%</X2>
+%<!T2A>\DeclareTextSymbol{\CYRDZE}{\LastDeclaredEncoding}{83}
+%<!T2A>\DeclareTextSymbol{\cyrdze}{\LastDeclaredEncoding}{115}
+%<*X2>
+\DeclareTextSymbol{\CYRTETSE}{X2}{84}
+\DeclareTextSymbol{\cyrtetse}{X2}{116}
+\DeclareTextSymbol{\CYRDZHE}{X2}{85}
+\DeclareTextSymbol{\cyrdzhe}{X2}{117}
+\DeclareTextSymbol{\CYRCHVCRS}{X2}{86}
+\DeclareTextSymbol{\cyrchvcrs}{X2}{118}
+%</X2>
+\DeclareTextSymbol{\CYRW}{\LastDeclaredEncoding}{87}
+\DeclareTextSymbol{\cyrw}{\LastDeclaredEncoding}{119}
+%<*X2>
+\DeclareTextSymbol{\CYRYAT}{X2}{88}
+\DeclareTextSymbol{\cyryat}{X2}{120}
+\DeclareTextSymbol{\CYRBYUS}{X2}{89}
+\DeclareTextSymbol{\cyrbyus}{X2}{121}
+\DeclareTextSymbol{\CYRIZH}{X2}{90}
+\DeclareTextSymbol{\cyrizh}{X2}{122}
+%</X2>
+%<*X2>
+\DeclareTextSymbol{\CYRDELTA}{X2}{28}
+\DeclareTextSymbol{\cyrdelta}{X2}{29}
+\DeclareTextSymbol{\CYRNLHK}{X2}{30}
+\DeclareTextSymbol{\cyrnlhk}{X2}{31}
+%</X2>
+%</X2|T2A|T2B|T2C>
+% \end{macrocode}
+% Text composites. The following declarations will not work for 8-bit
+% chars generated via |inputenc| unless a |dblaccnt| package is used.
+% \begin{macrocode}
+\DeclareTextComposite{\"}{\LastDeclaredEncoding}{\CYRE}{156}
+\DeclareTextComposite{\"}{\LastDeclaredEncoding}{\cyre}{188}
+\DeclareTextComposite{\U}{\LastDeclaredEncoding}{\CYRI}{201}
+\DeclareTextComposite{\U}{\LastDeclaredEncoding}{\cyri}{233}
+%<*X2|T2A>
+\DeclareTextComposite{\"}{\LastDeclaredEncoding}{\CYRII}{136}
+\DeclareTextComposite{\"}{\LastDeclaredEncoding}{\cyrii}{168}
+\DeclareTextComposite{\c}{\LastDeclaredEncoding}{\CYRZ}{134}
+\DeclareTextComposite{\c}{\LastDeclaredEncoding}{\cyrz}{166}
+\DeclareTextComposite{\k}{\LastDeclaredEncoding}{\CYRS}{145}
+\DeclareTextComposite{\k}{\LastDeclaredEncoding}{\cyrs}{177}
+%</X2|T2A>
+%<*X2|T2A|T2B>
+\DeclareTextComposite{\U}{\LastDeclaredEncoding}{\CYRU}{146}
+\DeclareTextComposite{\U}{\LastDeclaredEncoding}{\cyru}{178}
+%</X2|T2A|T2B>
+%<*X2>
+\DeclareTextComposite{\k}{X2}{\CYRABHCH}{69}
+\DeclareTextComposite{\k}{X2}{\cyrabhch}{101}
+%</X2>
+%<*T2C>
+\DeclareTextComposite{\k}{T2C}{\CYRABHCH}{146}
+\DeclareTextComposite{\k}{T2C}{\cyrabhch}{178}
+%</T2C>
+% \end{macrocode}
+\endinput
diff --git a/macros/latex/required/cyrillic/cyoutenc.pdf b/macros/latex/required/cyrillic/cyoutenc.pdf
new file mode 100644
index 0000000000..e82387a659
--- /dev/null
+++ b/macros/latex/required/cyrillic/cyoutenc.pdf
Binary files differ
diff --git a/macros/latex/required/cyrillic/cyrlatex.ins b/macros/latex/required/cyrillic/cyrlatex.ins
new file mode 100644
index 0000000000..701479f03a
--- /dev/null
+++ b/macros/latex/required/cyrillic/cyrlatex.ins
@@ -0,0 +1,277 @@
+%%
+%% This file will generate fast loadable files and documentation
+%% driver files from the doc files in this package when run through
+%% LaTeX or TeX.
+%%
+%% Copyright 1993-2017
+%% The LaTeX3 Project and any individual authors listed elsewhere
+%% in this file.
+%%
+%% This file is part of the Standard LaTeX `Cyrillic Bundle'.
+%% ----------------------------------------------------------
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% As this file contains legal notices, it is NOT PERMITTED to modify
+%% this file in any way that the legal information placed into
+%% generated files is changed (i.e., the files generated when the
+%% original file is executed). This restriction does not apply if
+%% (parts of) the content is reused in a different WORK producing its
+%% own generated files.
+%%
+%% The list of all files belonging to the `Cyrillic Bundle' is
+%% given in the file `manifest.txt'.
+%%
+%%
+%% --------------- start of docstrip commands ------------------
+%%
+%% Copyright 1993-2017
+%%
+%% This file is part of the `cyrillic' bundle in the LaTeX2e distribution.
+%%
+%% You are allowed to distribute this file together with all files
+%% mentioned in manifest.txt.
+%%
+%% You are not allowed to modify its contents.
+%%
+
+\input docstrip
+\keepsilent
+\usedir{tex/latex/cyrillic}
+
+\preamble
+This file is a generated file from the sources of the `cyrillic' bundle
+in the LaTeX2e distribution.
+
+This is a generated file.
+
+The source is maintained by the LaTeX Project team and bug
+reports for it can be opened at https://latex-project.org/bugs/
+(but please observe conditions on bug reports sent to that address!)
+
+Copyright 1993-2017
+The LaTeX3 Project and any individual authors listed elsewhere
+in this file.
+
+This file was generated from file(s) of the Standard LaTeX `Cyrillic Bundle'.
+-----------------------------------------------------------------------------
+
+It may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either version 1.3c
+of this license or (at your option) any later version.
+The latest version of this license is in
+ https://www.latex-project.org/lppl.txt
+and version 1.3c or later is part of all distributions of LaTeX
+version 2005/12/01 or later.
+
+This file may only be distributed together with a copy of the LaTeX
+`Cyrillic Bundle'. You may however distribute the LaTeX `Cyrillic
+Bundle' without such generated files.
+
+The list of all files belonging to the `Cyrillic Bundle' is
+given in the file `manifest.txt'.
+
+\endpreamble
+
+% Encoding definition files:
+\generate{
+ \file{x2enc.def}{\from{cyoutenc.dtx}{X2}}
+ \file{t2aenc.def}{\from{cyoutenc.dtx}{T2A}}
+ \file{t2benc.def}{\from{cyoutenc.dtx}{T2B}}
+ \file{t2cenc.def}{\from{cyoutenc.dtx}{T2C}}
+% old font encodings:
+ \file{ot2enc.def}{\from{ot2.dtx}{OT2}}
+ \file{lcyenc.def}{\from{lcy.dtx}{LCY}}
+% support files for LCY encoding:
+ \file{lcydefs.tex}{\from{lcy.dtx}{LCYdefs}}
+ \file{lcy.sty}{\from{lcy.dtx}{wrapper}}
+}
+
+% Cyrillic codepages (to be used with inputenc):
+\generate{
+ \file{cp866.def}{\from{cyinpenc.dtx}{cp866,std}}
+ \file{cp866av.def}{\from{cyinpenc.dtx}{cp866,AV}}
+ \file{cp866mav.def}{\from{cyinpenc.dtx}{cp866,MAV}}
+ \file{cp866nav.def}{\from{cyinpenc.dtx}{cp866,NAV}}
+ \file{cp866tat.def}{\from{cyinpenc.dtx}{cp866,Tatar}}
+ \file{cp1251.def}{\from{cyinpenc.dtx}{cp1251}}
+ \file{cp855.def}{\from{cyinpenc.dtx}{cp855}}
+}
+\generate{
+ \file{koi8-r.def}{\from{cyinpenc.dtx}{koi8,koi8r}}
+ \file{koi8-ru.def}{\from{cyinpenc.dtx}{koi8,koi8ru}}
+ \file{koi8-u.def}{\from{cyinpenc.dtx}{koi8,koi8u}}
+ \file{isoir111.def}{\from{cyinpenc.dtx}{koi8,isoir111}}
+ \file{iso88595.def}{\from{cyinpenc.dtx}{ISO88595}}
+ \file{maccyr.def}{\from{cyinpenc.dtx}{maccyrillic}}
+ \file{macukr.def}{\from{cyinpenc.dtx}{macukrainian}}
+ \file{mik.def}{\from{cyinpenc.dtx}{MIK}}
+}
+% Mongolian Cyrillic codepages:
+\generate{
+ \file{ctt.def}{\from{cyinpenc.dtx}{CTT}}
+ \file{dbk.def}{\from{cyinpenc.dtx}{DBK}}
+ \file{mnk.def}{\from{cyinpenc.dtx}{MNK}}
+ \file{mos.def}{\from{cyinpenc.dtx}{MOS}}
+ \file{ncc.def}{\from{cyinpenc.dtx}{NCC}}
+ \file{mls.def}{\from{cyinpenc.dtx}{MLS}}
+% ParaType Cyrillic Asian codepages:
+ \file{pt154.def}{\from{cyinpenc.dtx}{pt154}}
+ \file{pt254.def}{\from{cyinpenc.dtx}{pt254}}
+}
+
+\preamble
+This file is a generated file from the sources of the `cyrillic' bundle
+in the LaTeX2e distribution.
+
+This is a generated file.
+
+The source is maintained by the LaTeX Project team and bug
+reports for it can be opened at https://latex-project.org/bugs/
+(but please observe conditions on bug reports sent to that address!)
+
+Copyright 1993-2016
+The LaTeX3 Project and any individual authors listed elsewhere
+in this file.
+
+This file was generated from file(s) of the Standard LaTeX `Cyrillic Bundle'.
+-----------------------------------------------------------------------------
+
+It may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either version 1.3c
+of this license or (at your option) any later version.
+The latest version of this license is in
+ https://www.latex-project.org/lppl.txt
+and version 1.3c or later is part of all distributions of LaTeX
+version 2005/12/01 or later.
+
+This file may only be distributed together with a copy of the LaTeX
+`Cyrillic Bundle'. You may however distribute the LaTeX `Cyrillic
+Bundle' without such generated files.
+
+The list of all files belonging to the `Cyrillic Bundle' is
+given in the file `manifest.txt'.
+
+In particular, permission is granted to customize the declarations in
+this file to serve the needs of your installation.
+
+However, a modified version of this file under its original name
+should not be distributed as part of a standard LaTeX distribution, as
+the modification will be nontransparent for the user of that
+distribution (and thus violating clause 6a of the LPPL license),
+making successful document exchange impossible.
+
+\endpreamble
+
+% X2 Cyrillic Computer Modern font definition files:
+\generate{
+ \file{x2cmdh.fd}{\from{t2lhfnt.fdd}{X2cmdh}}
+ \file{x2cmfib.fd}{\from{t2lhfnt.fdd}{X2cmfib}}
+ \file{x2cmfr.fd}{\from{t2lhfnt.fdd}{X2cmfr}}
+ \file{x2cmr.fd}{\from{t2lhfnt.fdd}{X2cmr}}
+ \file{x2cmss.fd}{\from{t2lhfnt.fdd}{X2cmss}}
+ \file{x2cmtt.fd}{\from{t2lhfnt.fdd}{X2cmtt,tt,nowarn}}
+ \file{x2cmvtt.fd}{\from{t2lhfnt.fdd}{X2cmvtt,tt}}
+ \file{x2lcmss.fd}{\from{t2lhfnt.fdd}{lcmss,X2}}
+ \file{x2lcmtt.fd}{\from{t2lhfnt.fdd}{lcmtt,X2}}
+ \file{x2cmbr.fd}{\from{t2lhfnt.fdd}{X2cmbr}}
+ \file{x2cmtl.fd}{\from{t2lhfnt.fdd}{X2cmtl}}
+ \file{x2ccr.fd}{\from{t2lhfnt.fdd}{X2ccr}}
+}
+
+% T2A Cyrillic Computer Modern font definition files:
+\generate{
+ \file{t2acmdh.fd}{\from{t2lhfnt.fdd}{T2Acmdh}}
+ \file{t2acmfib.fd}{\from{t2lhfnt.fdd}{T2Acmfib}}
+ \file{t2acmfr.fd}{\from{t2lhfnt.fdd}{T2Acmfr}}
+ \file{t2acmr.fd}{\from{t2lhfnt.fdd}{T2Acmr}}
+ \file{t2acmss.fd}{\from{t2lhfnt.fdd}{T2Acmss}}
+ \file{t2acmtt.fd}{\from{t2lhfnt.fdd}{T2Acmtt,tt,nowarn}}
+ \file{t2acmvtt.fd}{\from{t2lhfnt.fdd}{T2Acmvtt,tt}}
+ \file{t2alcmss.fd}{\from{t2lhfnt.fdd}{lcmss,T2A}}
+ \file{t2alcmtt.fd}{\from{t2lhfnt.fdd}{lcmtt,T2A}}
+ \file{t2acmbr.fd}{\from{t2lhfnt.fdd}{T2Acmbr}}
+ \file{t2acmtl.fd}{\from{t2lhfnt.fdd}{T2Acmtl}}
+ \file{t2accr.fd}{\from{t2lhfnt.fdd}{T2Accr}}
+}
+
+% T2B Cyrillic Computer Modern font definition files:
+\generate{
+ \file{t2bcmdh.fd}{\from{t2lhfnt.fdd}{T2Bcmdh}}
+ \file{t2bcmfib.fd}{\from{t2lhfnt.fdd}{T2Bcmfib}}
+ \file{t2bcmfr.fd}{\from{t2lhfnt.fdd}{T2Bcmfr}}
+ \file{t2bcmr.fd}{\from{t2lhfnt.fdd}{T2Bcmr}}
+ \file{t2bcmss.fd}{\from{t2lhfnt.fdd}{T2Bcmss}}
+ \file{t2bcmtt.fd}{\from{t2lhfnt.fdd}{T2Bcmtt,tt,nowarn}}
+ \file{t2bcmvtt.fd}{\from{t2lhfnt.fdd}{T2Bcmvtt,tt}}
+ \file{t2blcmss.fd}{\from{t2lhfnt.fdd}{lcmss,T2B}}
+ \file{t2blcmtt.fd}{\from{t2lhfnt.fdd}{lcmtt,T2B}}
+ \file{t2bcmbr.fd}{\from{t2lhfnt.fdd}{T2Bcmbr}}
+ \file{t2bcmtl.fd}{\from{t2lhfnt.fdd}{T2Bcmtl}}
+ \file{t2bccr.fd}{\from{t2lhfnt.fdd}{T2Bccr}}
+}
+
+% T2C Cyrillic Computer Modern font definition files:
+\generate{
+ \file{t2ccmdh.fd}{\from{t2lhfnt.fdd}{T2Ccmdh}}
+ \file{t2ccmfib.fd}{\from{t2lhfnt.fdd}{T2Ccmfib}}
+ \file{t2ccmfr.fd}{\from{t2lhfnt.fdd}{T2Ccmfr}}
+ \file{t2ccmr.fd}{\from{t2lhfnt.fdd}{T2Ccmr}}
+ \file{t2ccmss.fd}{\from{t2lhfnt.fdd}{T2Ccmss}}
+ \file{t2ccmtt.fd}{\from{t2lhfnt.fdd}{T2Ccmtt,tt,nowarn}}
+ \file{t2ccmvtt.fd}{\from{t2lhfnt.fdd}{T2Ccmvtt,tt}}
+ \file{t2clcmss.fd}{\from{t2lhfnt.fdd}{lcmss,T2C}}
+ \file{t2clcmtt.fd}{\from{t2lhfnt.fdd}{lcmtt,T2C}}
+ \file{t2ccmbr.fd}{\from{t2lhfnt.fdd}{T2Ccmbr}}
+ \file{t2ccmtl.fd}{\from{t2lhfnt.fdd}{T2Ccmtl}}
+ \file{t2cccr.fd}{\from{t2lhfnt.fdd}{T2Cccr}}
+}
+
+% font definition files for OT2 encoding / LH fonts
+\generate{
+ \file{ot2cmss.fd}{\from{ot2cmlh.fdd}{OT2cmss}}
+ \file{ot2cmr.fd}{\from{ot2cmlh.fdd}{OT2cmr}}
+ \file{ot2cmtt.fd}{\from{ot2cmlh.fdd}{OT2cmtt,nowarn}}
+ \file{ot2cmvtt.fd}{\from{ot2cmlh.fdd}{OT2cmvtt}}
+ \file{ot2cmfib.fd}{\from{ot2cmlh.fdd}{OT2cmfib}}
+ \file{ot2cmfr.fd}{\from{ot2cmlh.fdd}{OT2cmfr}}
+ \file{ot2cmdh.fd}{\from{ot2cmlh.fdd}{OT2cmdh}}
+ \file{ot2lcmss.fd}{\from{ot2cmlh.fdd}{OT2lcmss}}
+ \file{ot2lcmtt.fd}{\from{ot2cmlh.fdd}{OT2lcmtt}}
+ \file{ot2cmbr.fd}{\from{ot2cmlh.fdd}{OT2cmbr}}
+ \file{ot2cmtl.fd}{\from{ot2cmlh.fdd}{OT2cmtl}}
+ \file{ot2ccr.fd}{\from{ot2cmlh.fdd}{OT2ccr}}
+}
+
+% font definition files for OT2 encoding / WNCY fonts
+\generate{
+ \file{ot2wncyr.fd}{\from{ot2cmams.fdd}{OT2wncyr,pdftex}}
+ \file{ot2wncyss.fd}{\from{ot2cmams.fdd}{OT2wncyss,pdftex}}
+% virtual fonts without ligatures
+ \file{ot2wlcyr.fd}{\from{ot2cmams.fdd}{OT2wlcyr,pdftex}}
+ \file{ot2wlcyss.fd}{\from{ot2cmams.fdd}{OT2wlcyss,pdftex}}
+}
+
+% font definition files for LCY encoding / LH fonts
+\generate{
+ \file{lcycmss.fd}{\from{lcycmlh.fdd}{LCYcmss}}
+ \file{lcycmr.fd}{\from{lcycmlh.fdd}{LCYcmr}}
+ \file{lcycmtt.fd}{\from{lcycmlh.fdd}{LCYcmtt,nowarn}}
+ \file{lcycmvtt.fd}{\from{lcycmlh.fdd}{LCYcmvtt}}
+ \file{lcycmfib.fd}{\from{lcycmlh.fdd}{LCYcmfib}}
+ \file{lcycmfr.fd}{\from{lcycmlh.fdd}{LCYcmfr}}
+ \file{lcycmdh.fd}{\from{lcycmlh.fdd}{LCYcmdh}}
+ \file{lcylcmss.fd}{\from{lcycmlh.fdd}{LCYlcmss}}
+ \file{lcylcmtt.fd}{\from{lcycmlh.fdd}{LCYlcmtt}}
+ \file{lcycmbr.fd}{\from{lcycmlh.fdd}{LCYcmbr}}
+ \file{lcycmtl.fd}{\from{lcycmlh.fdd}{LCYcmtl}}
+ \file{lcyccr.fd}{\from{lcycmlh.fdd}{LCYccr}}
+}
+
+\endbatchfile
diff --git a/macros/latex/required/cyrillic/lcy.dtx b/macros/latex/required/cyrillic/lcy.dtx
new file mode 100644
index 0000000000..6605733fe6
--- /dev/null
+++ b/macros/latex/required/cyrillic/lcy.dtx
@@ -0,0 +1,382 @@
+% \iffalse meta-comment
+%
+% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2008 2009
+% The LaTeX3 Project and any individual authors listed elsewhere
+% in this file.
+%
+% This file is part of the Standard LaTeX `Cyrillic Bundle'.
+% ----------------------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl.txt
+% and version 1.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% The list of all files belonging to the `Cyrillic Bundle' is
+% given in the file `manifest.txt'.
+%
+% \fi
+% \iffalse
+% This is the file |lcy.dtx| of the cyrillic bundle for LaTeX2e.
+%
+% Copyright (C) 1995-1997 Olga Lapko, Johannes L. Braams
+% Copyright (C) 1998-2001 Werner Lemberg, Vladimir Volovich
+%
+%<*driver>
+\documentclass{ltxdoc}
+\begin{document}
+\DocInput{lcy.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \begin{macrocode}
+%<*LCY>
+\NeedsTeXFormat{LaTeX2e}[1998/12/01]
+\ProvidesFile{lcyenc.def}
+ [2004/05/28 v3.4d Cyrillic encoding definition file]
+% \end{macrocode}
+%
+% \section{Definitions for the \texttt{LCY} encoding}
+%
+% The definitions for the `\TeX{} text Cyrillic' (|LCY|) encoding.
+%
+% The |LCY| encoding is an extension of the |OT1| encoding; all lower
+% 128 positions are the same (and this part of the file was taken from
+% ot1enc.def), but most of the upper 128 positions are used for Cyrillic
+% glyphs.
+%
+% Important note: The |LCY| font encoding is \emph{incompatible} with the
+% \LaTeXe\ standard conventions regarding uccode and lccode settings!
+% Therefore, the |LCY| font encoding should not be used in a multilingual
+% environment (for example, Russian, German, and English), because the
+% hyphenation will be broken! Instead, use the new standard Cyrillic
+% encodings |T2A|, |T2B|, |T2C| and |X2| defined in the \textsf{cyrillic}
+% bundle for \LaTeXe. One can only use |LCY| to typeset at most bilingual
+% Russian-English documents.
+%
+% Because of this incompatibility we have to set the lccode values,
+% which are important for \TeX's hyphenation process, to match the |LCY|
+% encoding. We do not need to set the uccode and catcode values because
+% they are unused in hyphenation process, and uppercase
+% $\leftrightarrow$ lowercase translation is defined via another
+% mechanism in |\MakeUppercase| and |\MakeLowercase| commands. Again,
+% this change of lccodes will break hyphenation for other languages with
+% standard 8-bit font encodings! It is useless to make these changes in
+% |\extrasrussian| (i.e., `locally') for the same reason, so we make
+% global changes, which are stored in the file |lcydefs.tex| defined
+% below.
+%
+% Note that \emph{it is not sufficient to use the |LCY| encoding via the
+% \textsf{fontenc} package, but one also should load a file |lcydefs.tex|
+% which sets lccode and other \TeX\ registers for |LCY| encoding
+% globally (breaking standard 8-bit font encodings)}. For this reason we
+% created also a wrapper package `lcy' which is a preferred mechanism
+% for using the |LCY| font encoding, --- it loads |LCY| encoding
+% definition file and |lcydefs.tex|.
+%
+% We rely on \LaTeX\ to set the |\@uclclist|, and thus the
+% |\NeedsTeXFormat| line above.
+%
+% Declare the Local Cyrillic encoding. Specify a default for the font
+% substitution process for the |LCY| encoding.
+% \begin{macrocode}
+\DeclareFontEncoding{LCY}{}{}
+\DeclareFontSubstitution{LCY}{cmr}{m}{n}
+% \end{macrocode}
+% Declare the accents.
+% \begin{macrocode}
+\DeclareTextAccent{\"}{LCY}{127}
+\DeclareTextAccent{\'}{LCY}{19}
+\DeclareTextAccent{\.}{LCY}{95}
+\DeclareTextAccent{\=}{LCY}{22}
+\DeclareTextAccent{\^}{LCY}{94}
+\DeclareTextAccent{\`}{LCY}{18}
+\DeclareTextAccent{\~}{LCY}{126}
+\DeclareTextAccent{\H}{LCY}{125}
+\DeclareTextAccent{\u}{LCY}{21}
+\DeclareTextAccent{\v}{LCY}{20}
+\DeclareTextAccent{\r}{LCY}{23}
+% \end{macrocode}
+% A fake accent for the Cyrillic breve.
+% \begin{macrocode}
+\DeclareTextCommand{\U}{LCY}[1]{\TextSymbolUnavailable{\U{#1}}#1}
+% \end{macrocode}
+% Some accents have to be built by hand:
+% \begin{macrocode}
+\DeclareTextCommand{\b}{LCY}[1]
+ {\hmode@bgroup\o@lign{\relax#1\crcr\hidewidth\sh@ft{29}%
+ \vbox to.2ex{\hbox{\char22}\vss}\hidewidth}\egroup}
+\DeclareTextCommand{\c}{LCY}[1]
+ {\leavevmode\setbox\z@\hbox{#1}\ifdim\ht\z@=1ex\accent24 #1%
+ \else{\ooalign{\unhbox\z@\crcr\hidewidth\char24\hidewidth}}\fi}
+\DeclareTextCommand{\d}{LCY}[1]
+ {\hmode@bgroup
+ \o@lign{\relax#1\crcr\hidewidth\sh@ft{10}.\hidewidth}\egroup}
+% \end{macrocode}
+% Declare the text symbols.
+% \begin{macrocode}
+\DeclareTextSymbol{\AE}{LCY}{29}
+\DeclareTextSymbol{\OE}{LCY}{30}
+\DeclareTextSymbol{\O}{LCY}{31}
+\DeclareTextSymbol{\ae}{LCY}{26}
+\DeclareTextSymbol{\i}{LCY}{16}
+\DeclareTextSymbol{\j}{LCY}{17}
+\DeclareTextSymbol{\oe}{LCY}{27}
+\DeclareTextSymbol{\o}{LCY}{28}
+\DeclareTextSymbol{\ss}{LCY}{25}
+\DeclareTextSymbol{\textemdash}{LCY}{124}
+\DeclareTextSymbol{\textendash}{LCY}{123}
+\DeclareTextSymbol{\textexclamdown}{LCY}{60}
+%\DeclareTextSymbol{\texthyphenchar}{LCY}{`\-}
+%\DeclareTextSymbol{\texthyphen}{LCY}{`\-}
+\DeclareTextSymbol{\textquestiondown}{LCY}{62}
+\DeclareTextSymbol{\textquotedblleft}{LCY}{92}
+\DeclareTextSymbol{\textquotedblright}{LCY}{`\"}
+\DeclareTextSymbol{\textquoteleft}{LCY}{`\`}
+\DeclareTextSymbol{\textquoteright}{LCY}{`\'}
+% \end{macrocode}
+% Some symbols which are faked from others:
+% \begin{macrocode}
+\DeclareTextCommand{\L}{LCY}
+ {\leavevmode\setbox\z@\hbox{L}\hb@xt@\wd\z@{\hss\@xxxii L}}
+\DeclareTextCommand{\l}{LCY}
+ {\hmode@bgroup\@xxxii l\egroup}
+%<*AAhack>
+%\DeclareTextCommand{\AA}{LCY}
+% {\leavevmode\setbox\z@\hbox{!}\dimen@\ht\z@\advance\dimen@-1ex%
+% \rlap{\raise.67\dimen@\hbox{\char23}}A}
+%\DeclareTextCommand{\aa}{LCY}{{\accent23a}}
+%</AAhack>
+% \end{macrocode}
+%<*AAhack>
+% In the |LCY| encoding `\r A' has a hand-crafted definition:
+% \begin{macrocode}
+\DeclareTextCompositeCommand{\r}{LCY}{A}
+ {\leavevmode\setbox\z@\hbox{!}\dimen@\ht\z@\advance\dimen@-1ex%
+ \rlap{\raise.67\dimen@\hbox{\char23}}A}
+% \end{macrocode}
+%</AAhack>
+% In the |LCY| encoding, `\pounds' and `\$' share a slot.
+% \begin{macrocode}
+\DeclareTextCommand{\textdollar}{LCY}{\hmode@bgroup
+ \ifdim \fontdimen\@ne\font >\z@
+ \slshape
+ \else
+ \upshape
+ \fi
+ \char`\$\egroup}
+\DeclareTextCommand{\textsterling}{LCY}{\hmode@bgroup
+ \ifdim \fontdimen\@ne\font >\z@
+ \itshape
+ \else
+ \fontshape{ui}\selectfont
+ \fi
+ \char`\$\egroup}
+% \end{macrocode}
+% And now, the Cyrillic part of the |LCY| encoding:
+% \begin{macrocode}
+\DeclareTextSymbol{\CYRA}{LCY}{128}
+\DeclareTextSymbol{\CYRB}{LCY}{129}
+\DeclareTextSymbol{\CYRV}{LCY}{130}
+\DeclareTextSymbol{\CYRG}{LCY}{131}
+\DeclareTextSymbol{\CYRD}{LCY}{132}
+\DeclareTextSymbol{\CYRE}{LCY}{133}
+\DeclareTextSymbol{\CYRZH}{LCY}{134}
+\DeclareTextSymbol{\CYRZ}{LCY}{135}
+\DeclareTextSymbol{\CYRI}{LCY}{136}
+\DeclareTextSymbol{\CYRISHRT}{LCY}{137}
+\DeclareTextSymbol{\CYRK}{LCY}{138}
+\DeclareTextSymbol{\CYRL}{LCY}{139}
+\DeclareTextSymbol{\CYRM}{LCY}{140}
+\DeclareTextSymbol{\CYRN}{LCY}{141}
+\DeclareTextSymbol{\CYRO}{LCY}{142}
+\DeclareTextSymbol{\CYRP}{LCY}{143}
+\DeclareTextSymbol{\CYRR}{LCY}{144}
+\DeclareTextSymbol{\CYRS}{LCY}{145}
+\DeclareTextSymbol{\CYRT}{LCY}{146}
+\DeclareTextSymbol{\CYRU}{LCY}{147}
+\DeclareTextSymbol{\CYRF}{LCY}{148}
+\DeclareTextSymbol{\CYRH}{LCY}{149}
+\DeclareTextSymbol{\CYRC}{LCY}{150}
+\DeclareTextSymbol{\CYRCH}{LCY}{151}
+\DeclareTextSymbol{\CYRSH}{LCY}{152}
+\DeclareTextSymbol{\CYRSHCH}{LCY}{153}
+\DeclareTextSymbol{\CYRHRDSN}{LCY}{154}
+\DeclareTextSymbol{\CYRERY}{LCY}{155}
+\DeclareTextSymbol{\CYRSFTSN}{LCY}{156}
+\DeclareTextSymbol{\CYREREV}{LCY}{157}
+\DeclareTextSymbol{\CYRYU}{LCY}{158}
+\DeclareTextSymbol{\CYRYA}{LCY}{159}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareTextSymbol{\cyra}{LCY}{160}
+\DeclareTextSymbol{\cyrb}{LCY}{161}
+\DeclareTextSymbol{\cyrv}{LCY}{162}
+\DeclareTextSymbol{\cyrg}{LCY}{163}
+\DeclareTextSymbol{\cyrd}{LCY}{164}
+\DeclareTextSymbol{\cyre}{LCY}{165}
+\DeclareTextSymbol{\cyrzh}{LCY}{166}
+\DeclareTextSymbol{\cyrz}{LCY}{167}
+\DeclareTextSymbol{\cyri}{LCY}{168}
+\DeclareTextSymbol{\cyrishrt}{LCY}{169}
+\DeclareTextSymbol{\cyrk}{LCY}{170}
+\DeclareTextSymbol{\cyrl}{LCY}{171}
+\DeclareTextSymbol{\cyrm}{LCY}{172}
+\DeclareTextSymbol{\cyrn}{LCY}{173}
+\DeclareTextSymbol{\cyro}{LCY}{174}
+\DeclareTextSymbol{\cyrp}{LCY}{175}
+\DeclareTextSymbol{\cyrr}{LCY}{224}
+\DeclareTextSymbol{\cyrs}{LCY}{225}
+\DeclareTextSymbol{\cyrt}{LCY}{226}
+\DeclareTextSymbol{\cyru}{LCY}{227}
+\DeclareTextSymbol{\cyrf}{LCY}{228}
+\DeclareTextSymbol{\cyrh}{LCY}{229}
+\DeclareTextSymbol{\cyrc}{LCY}{230}
+\DeclareTextSymbol{\cyrch}{LCY}{231}
+\DeclareTextSymbol{\cyrsh}{LCY}{232}
+\DeclareTextSymbol{\cyrshch}{LCY}{233}
+\DeclareTextSymbol{\cyrhrdsn}{LCY}{234}
+\DeclareTextSymbol{\cyrery}{LCY}{235}
+\DeclareTextSymbol{\cyrsftsn}{LCY}{236}
+\DeclareTextSymbol{\cyrerev}{LCY}{237}
+\DeclareTextSymbol{\cyryu}{LCY}{238}
+\DeclareTextSymbol{\cyrya}{LCY}{239}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareTextSymbol{\CYRYO}{LCY}{240}
+\DeclareTextSymbol{\cyryo}{LCY}{241}
+\DeclareTextSymbol{\CYRGUP}{LCY}{242}
+\DeclareTextSymbol{\cyrgup}{LCY}{243}
+\DeclareTextSymbol{\CYRIE}{LCY}{244}
+\DeclareTextSymbol{\cyrie}{LCY}{245}
+\DeclareTextSymbol{\CYRII}{LCY}{246}
+\DeclareTextSymbol{\cyrii}{LCY}{247}
+\DeclareTextSymbol{\CYRYI}{LCY}{248}
+\DeclareTextSymbol{\cyryi}{LCY}{249}
+\DeclareTextSymbol{\CYRUSHRT}{LCY}{250}
+\DeclareTextSymbol{\cyrushrt}{LCY}{251}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareTextSymbol{\cyrdash}{LCY}{196}
+\DeclareTextSymbol{\textcurrency}{LCY}{197}
+\DeclareTextSymbol{\textnumero}{LCY}{252}
+\DeclareTextSymbol{\guillemotleft}{LCY}{253}
+\DeclareTextSymbol{\guillemotright}{LCY}{254}
+\DeclareTextSymbol{\quotedblbase}{LCY}{255}
+% \end{macrocode}
+% Text composites. The following declarations will not work for 8-bit
+% chars generated via |inputenc| unless a |dblaccnt| package is used.
+% \begin{macrocode}
+\DeclareTextComposite{\"}{LCY}{\CYRE}{240}
+\DeclareTextComposite{\"}{LCY}{\cyre}{241}
+\DeclareTextComposite{\U}{LCY}{\CYRI}{137}
+\DeclareTextComposite{\U}{LCY}{\cyri}{169}
+\DeclareTextComposite{\"}{LCY}{\CYRII}{248}
+\DeclareTextComposite{\"}{LCY}{\cyrii}{249}
+\DeclareTextComposite{\U}{LCY}{\CYRU}{250}
+\DeclareTextComposite{\U}{LCY}{\cyru}{251}
+%</LCY>
+% \end{macrocode}
+%
+% \section{Setup \{cat,uc,lc,sf,math\}code values for LCY font encoding}
+%
+% We store this setup in a separate file, |lcydefs.tex|, which is
+% used also in a `cyrplain' bundle for Plain \TeX.
+%
+% \begin{macrocode}
+%<*LCYdefs>
+\def\letter#1 #2 {%
+% \end{macrocode}
+% Do not break inputenc:
+% \begin{macrocode}
+ \ifnum\catcode#1=13\else\catcode#1=11 \catcode#2=11 \fi
+ \uccode#1=#1 \uccode#2=#1
+ \lccode#1=#2 \lccode#2=#2
+ \sfcode#1=999 \sfcode#2=1000
+ \count255=#1 \advance\count255 "7000 \mathcode#1=\count255
+ \count255=#2 \advance\count255 "7000 \mathcode#2=\count255
+}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\letter 128 160
+\letter 129 161
+\letter 130 162
+\letter 131 163
+\letter 132 164
+\letter 133 165
+\letter 134 166
+\letter 135 167
+\letter 136 168
+\letter 137 169
+\letter 138 170
+\letter 139 171
+\letter 140 172
+\letter 141 173
+\letter 142 174
+\letter 143 175
+\letter 144 224
+\letter 145 225
+\letter 146 226
+\letter 147 227
+\letter 148 228
+\letter 149 229
+\letter 150 230
+\letter 151 231
+\letter 152 232
+\letter 153 233
+\letter 154 234
+\letter 155 235
+\letter 156 236
+\letter 157 237
+\letter 158 238
+\letter 159 239
+\letter 240 241
+\letter 242 243
+\letter 244 245
+\letter 246 247
+\letter 248 249
+\letter 250 251
+\let\letter\undefined
+% \end{macrocode}
+% To avoid bad hyphenation of words delimited with non-letter signs
+% (like quotes), we have to zero uc/lccode parameters for these
+% non-letter signs.
+% \begin{macrocode}
+\lccode 196=0 \uccode 196=0 \lccode 197=0 \uccode 197=0
+\lccode 252=0 \uccode 252=0 \lccode 253=0 \uccode 253=0
+\lccode 254=0 \uccode 254=0 \lccode 255=0 \uccode 255=0
+%</LCYdefs>
+% \end{macrocode}
+%
+% \section{A wrapper package for the \texttt{LCY} encoding}
+%
+% \begin{macrocode}
+%<*wrapper>
+\ProvidesPackage{lcy}[1999/06/06 v1.0 Wrapper for LCY encoding]
+% \end{macrocode}
+% You can use the `\textsf{nowarn}' option to suppress boring warning.
+% \begin{macrocode}
+\DeclareOption{nowarn}{\let\iflcy@warn\iffalse}
+\let\iflcy@warn\iftrue
+\ProcessOptions
+\iflcy@warn
+\typeout{%
+****************************************************^^J%
+* The LCY encoding will break multilingual documents^^J%
+* because it needs non-standard uc/lccode settings.^^J%
+* Please use T2* encodings instead.^^J%
+****************************************************}
+\fi
+\RequirePackage[LCY]{fontenc}
+\input{lcydefs}
+%</wrapper>
+% \end{macrocode}
+\endinput
diff --git a/macros/latex/required/cyrillic/lcy.pdf b/macros/latex/required/cyrillic/lcy.pdf
new file mode 100644
index 0000000000..b1a2810dcd
--- /dev/null
+++ b/macros/latex/required/cyrillic/lcy.pdf
Binary files differ
diff --git a/macros/latex/required/cyrillic/lcycmlh.fdd b/macros/latex/required/cyrillic/lcycmlh.fdd
new file mode 100644
index 0000000000..6610d74de3
--- /dev/null
+++ b/macros/latex/required/cyrillic/lcycmlh.fdd
@@ -0,0 +1,338 @@
+% \iffalse meta-comment
+%
+% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2008 2009
+% The LaTeX3 Project and any individual authors listed elsewhere
+% in this file.
+%
+% This file is part of the Standard LaTeX `Cyrillic Bundle'.
+% ----------------------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl.txt
+% and version 1.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% The list of all files belonging to the `Cyrillic Bundle' is
+% given in the file `manifest.txt'.
+%
+% \fi
+% \iffalse
+% This is the file |lcycmlh.fdd| of the cyrillic bundle for LaTeX2e.
+%
+% Copyright (C) 1995-1997 Olga Lapko, Johannes L. Braams
+% Copyright (C) 1998-2001 Werner Lemberg, Vladimir Volovich
+%
+%<*driver>
+\documentclass{ltxdoc}
+\begin{document}
+\DocInput{lcycmlh.fdd}
+\end{document}
+%</driver>
+% \fi
+%
+% \begin{macrocode}
+%<LCYcmdh>\ProvidesFile{lcycmdh.fd}
+%<LCYcmfib>\ProvidesFile{lcycmfib.fd}
+%<LCYcmfr>\ProvidesFile{lcycmfr.fd}
+%<LCYcmr>\ProvidesFile{lcycmr.fd}
+%<LCYcmss>\ProvidesFile{lcycmss.fd}
+%<LCYcmtt>\ProvidesFile{lcycmtt.fd}
+%<LCYcmvtt>\ProvidesFile{lcycmvtt.fd}
+%<LCYlcmss>\ProvidesFile{lcylcmss.fd}
+%<LCYlcmtt>\ProvidesFile{lcylcmtt.fd}
+%<LCYcmbr>\ProvidesFile{lcycmbr.fd}
+%<LCYcmtl>\ProvidesFile{lcycmtl.fd}
+%<LCYccr>\ProvidesFile{lcyccr.fd}
+ [2001/08/11 v3.2c Computer Modern Cyrillic font definitions]
+% \end{macrocode}
+%
+% \section{Fonts in old \TeX{} text Cyrillic encoding (\texttt{LCY})}
+%
+% These are the font definitions for Computer Modern Cyrillic fonts in old
+% |LCY| encoding, based on the \textsf{LH} fonts. All font shapes and sizes
+% provided by \textsf{CM} fonts are also supported by \textsf{LH} fonts, so
+% this file is based on |cmfonts.fdd| and |slifonts.fdd|. See comments
+% there.
+%
+% \subsection{Computer Modern Roman}
+%
+% \begin{macrocode}
+%<*LCYcmr>
+\DeclareFontFamily{LCY}{cmr}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmr}{m}{n}{%
+ <5><6><7><8><9><10><12>gen*lhr%
+ <10.95>lhr10%
+ <14.4>lhr12%
+ <17.28><20.74><24.88>lhr17}{}
+\DeclareFontShape{LCY}{cmr}{m}{sl}{%
+ <5><6><7>lhsl8%
+ <8><9>gen*lhsl%
+ <10><10.95>lhsl10%
+ <12><14.4><17.28><20.74><24.88>lhsl12}{}
+\DeclareFontShape{LCY}{cmr}{m}{it}{%
+ <5><6><7>lhti7%
+ <8>lhti8%
+ <9>lhti9%
+ <10><10.95>lhti10%
+ <12><14.4><17.28><20.74><24.88>lhti12}{}
+\DeclareFontShape{LCY}{cmr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88>lhcsc10}{}
+\DeclareFontShape{LCY}{cmr}{m}{ui}{%
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88>lhu10}{}
+\DeclareFontShape{LCY}{cmr}{b}{n}{%
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88>lhb10}{}
+\DeclareFontShape{LCY}{cmr}{bx}{n}{%
+ <5><6><7><8><9>gen*lhbx%
+ <10><10.95>lhbx10%
+ <12><14.4><17.28><20.74><24.88>lhbx12}{}
+\DeclareFontShape{LCY}{cmr}{bx}{sl}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhbxsl10}{}
+\DeclareFontShape{LCY}{cmr}{bx}{it}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhbxti10}{}
+\DeclareFontShape{LCY}{cmr}{bx}{ui}{%
+%<-nowarn> <->sub*cmr/m/ui}{}
+%<+nowarn> <->ssub*cmr/m/ui}{}
+%</LCYcmr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Sans}
+%
+% \begin{macrocode}
+%<*LCYcmss>
+\DeclareFontFamily{LCY}{cmss}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmss}{m}{n}{%
+ <5><6><7><8>lhss8%
+ <9>lhss9%
+ <10><10.95>lhss10%
+ <12><14.4>lhss12%
+ <17.28><20.74><24.88>lhss17}{}
+\DeclareFontShape{LCY}{cmss}{m}{it}{%
+%<-nowarn> <->sub*cmss/m/sl}{}
+%<+nowarn> <->ssub*cmss/m/sl}{}
+\DeclareFontShape{LCY}{cmss}{m}{sl}{%
+ <5><6><7><8>lhssi8<9>lhssi9%
+ <10><10.95>lhssi10%
+ <12><14.4>lhssi12%
+ <17.28><20.74><24.88>lhssi17}{}
+\DeclareFontShape{LCY}{cmss}{m}{sc}{%
+ <->sub*cmr/m/sc}{}
+\DeclareFontShape{LCY}{cmss}{m}{ui}{%
+ <->sub*cmr/m/ui}{}
+\DeclareFontShape{LCY}{cmss}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lhssdc10}{}
+\DeclareFontShape{LCY}{cmss}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lhssbx10}{}
+\DeclareFontShape{LCY}{cmss}{bx}{ui}{%
+ <->sub*cmr/bx/ui}{}
+%</LCYcmss>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter}
+%
+% \begin{macrocode}
+%<*LCYcmtt>
+\DeclareFontFamily{LCY}{cmtt}{\hyphenchar\font\m@ne}
+\DeclareFontShape{LCY}{cmtt}{m}{n}{%
+ <5><6><7><8>lhtt8<9>lhtt9%
+ <10><10.95>lhtt10%
+ <12><14.4><17.28><20.74><24.88>lhtt12}{}
+\DeclareFontShape{LCY}{cmtt}{m}{it}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhitt10}{}
+\DeclareFontShape{LCY}{cmtt}{m}{sl}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhsltt10}{}
+\DeclareFontShape{LCY}{cmtt}{m}{sc}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhtcsc10}{}
+\DeclareFontShape{LCY}{cmtt}{m}{ui}{%
+%<-nowarn> <->sub*cmtt/m/it}{}
+%<+nowarn> <->ssub*cmtt/m/it}{}
+\DeclareFontShape{LCY}{cmtt}{bx}{n}{%
+%<-nowarn> <->sub*cmtt/m/n}{}
+%<+nowarn> <->ssub*cmtt/m/n}{}
+\DeclareFontShape{LCY}{cmtt}{bx}{it}{%
+%<-nowarn> <->sub*cmtt/m/it}{}
+%<+nowarn> <->ssub*cmtt/m/it}{}
+\DeclareFontShape{LCY}{cmtt}{bx}{ui}{%
+%<-nowarn> <->sub*cmtt/m/it}{}
+%<+nowarn> <->ssub*cmtt/m/it}{}
+%</LCYcmtt>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Variable Typewriter}
+%
+% \begin{macrocode}
+%<*LCYcmvtt>
+\DeclareFontFamily{LCY}{cmvtt}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmvtt}{m}{n}{%
+ <5><6><7><8><9><10><10.95>%
+ <12><14.4><17.28><20.74><24.88>lhvtt10}{}
+\DeclareFontShape{LCY}{cmvtt}{m}{it}{%
+ <5><6><7><8><9><10><10.95>%
+ <12><14.4><17.28><20.74><24.88>lhvtti10}{}
+%</LCYcmvtt>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Funny}
+%
+% \begin{macrocode}
+%<*LCYcmfr>
+\DeclareFontFamily{LCY}{cmfr}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmfr}{m}{n}{%
+ <10>lhff10}{}
+\DeclareFontShape{LCY}{cmfr}{m}{it}{%
+ <10>lhfi10}{}
+%</LCYcmfr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Dunhill}
+%
+% \begin{macrocode}
+%<*LCYcmdh>
+\DeclareFontFamily{LCY}{cmdh}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmdh}{m}{n}{%
+ <10>lhdunh10}{}
+%</LCYcmdh>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Fibonacci}
+%
+% \begin{macrocode}
+%<*LCYcmfib>
+\DeclareFontFamily{LCY}{cmfib}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmfib}{m}{n}{%
+ <8>lhfib8}{}
+%</LCYcmfib>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Sans for \SliTeX}
+%
+% \begin{macrocode}
+%<*LCYlcmss>
+\DeclareFontFamily{LCY}{lcmss}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{lcmss}{m}{n}{%
+ <7><8><10><12>%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>llhss8}{}
+\DeclareFontShape{LCY}{lcmss}{m}{In}{%
+ <7><8><10><12>%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>illhss8}{}
+\DeclareFontShape{LCY}{lcmss}{m}{sl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>llhssi8}{}
+\DeclareFontShape{LCY}{lcmss}{m}{Isl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>illhssi8}{}
+\DeclareFontShape{LCY}{lcmss}{m}{it}{%
+ <->sub*lcmss/m/sl}{}
+\DeclareFontShape{LCY}{lcmss}{m}{Iit}{%
+ <->sub*lcmss/m/Isl}{}
+\DeclareFontShape{LCY}{lcmss}{bx}{n}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>llhssb8}{}
+\DeclareFontShape{LCY}{lcmss}{bx}{In}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>illhssb8}{}
+\DeclareFontShape{LCY}{lcmss}{m}{ui}{%
+ <->sub*cmr/m/ui}{}
+\DeclareFontShape{LCY}{lcmss}{bx}{ui}{%
+ <->sub*cmr/m/ui}{}
+%</LCYlcmss>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter for \SliTeX}
+%
+% \begin{macrocode}
+%<*LCYlcmtt>
+\DeclareFontFamily{LCY}{lcmtt}{\hyphenchar\font\m@ne}
+\DeclareFontShape{LCY}{lcmtt}{m}{n}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>lhtt8}{}
+\DeclareFontShape{LCY}{lcmtt}{m}{In}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>ilhtt8}{}
+\DeclareFontShape{LCY}{lcmtt}{m}{it}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>lhitt10}{}
+\DeclareFontShape{LCY}{lcmtt}{m}{ui}{%
+ <->sub*cmtt/m/it}{}
+\DeclareFontShape{LCY}{lcmtt}{bx}{ui}{%
+ <->sub*cmtt/m/it}{}
+%</LCYlcmtt>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Bright}
+%
+% \begin{macrocode}
+%<*LCYcmbr>
+\DeclareFontFamily{LCY}{cmbr}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{cmbr}{m}{n}{%
+ <5><6><7><8>lhbr8%
+ <9>lhbr9%
+ <10><10.95><12><14.4>lhbr10%
+ <17.28><20.74><24.88><29.86><35.83>lhbr17%
+}{}
+\DeclareFontShape{LCY}{cmbr}{m}{sl}{%
+ <5><6><7><8>lhbrsl8%
+ <9>lhbrsl9%
+ <10><10.95><12><14.4>lhbrsl10%
+ <17.28><20.74><24.88><29.86><35.83>lhbrsl17%
+}{}
+\DeclareFontShape{LCY}{cmbr}{m}{it}{<->ssub*cmbr/m/sl}{}
+\DeclareFontShape{LCY}{cmbr}{b}{n}{<->ssub*cmbr/bx/n}{}
+\DeclareFontShape{LCY}{cmbr}{bx}{n}{%
+ <-9>sub*cmbr/m/n%
+ <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>lhbrbx10%
+}{}
+%</LCYcmbr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter Light}
+%
+% \begin{macrocode}
+%<*LCYcmtl>
+\DeclareFontFamily{LCY}{cmtl}{\hyphenchar\font\m@ne}
+\DeclareFontShape{LCY}{cmtl}{m}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>lhtl10%
+}{}
+\DeclareFontShape{LCY}{cmtl}{m}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>lhsltl10%
+}{}
+\DeclareFontShape{LCY}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{}
+%</LCYcmtl>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Concrete}
+%
+% \begin{macrocode}
+%<*LCYccr>
+\DeclareFontFamily{LCY}{ccr}{\hyphenchar\font45 }
+\DeclareFontShape{LCY}{ccr}{m}{n}{%
+ <5><6><7><8><9>gen*lhcr%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhcr10%
+}{}
+\DeclareFontShape{LCY}{ccr}{m}{sl}{%
+ <5><6><7><8><9>lhcsl9%
+ <10><10.95><12><14.4><17.28><20.74><24.88>lhcsl10%
+}{}
+\DeclareFontShape{LCY}{ccr}{m}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lhcti10%
+}{}
+\DeclareFontShape{LCY}{ccr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lhccsc10%
+}{}
+\DeclareFontShape{LCY}{ccr}{bx}{n}{<->ssub*cmr/bx/n}{}
+\DeclareFontShape{LCY}{ccr}{bx}{sl}{<->ssub*cmr/bx/sl}{}
+\DeclareFontShape{LCY}{ccr}{bx}{it}{<->ssub*cmr/bx/it}{}
+\DeclareFontShape{LCY}{ccr}{sbc}{n}{<->ssub*cmss/sbc/n}{}
+\DeclareFontShape{LCY}{ccr}{sbc}{sl}{<->ssub*cmss/sbc/n}{}
+\DeclareFontShape{LCY}{ccr}{sbc}{it}{<->ssub*cmss/sbc/n}{}
+\DeclareFontShape{LCY}{ccr}{c}{sl}{%
+ <9>lhcslc9%
+}{}
+%</LCYccr>
+% \end{macrocode}
+\endinput
diff --git a/macros/latex/required/cyrillic/lcycmlh.pdf b/macros/latex/required/cyrillic/lcycmlh.pdf
new file mode 100644
index 0000000000..a54eae2a33
--- /dev/null
+++ b/macros/latex/required/cyrillic/lcycmlh.pdf
Binary files differ
diff --git a/macros/latex/required/cyrillic/manifest.txt b/macros/latex/required/cyrillic/manifest.txt
new file mode 100644
index 0000000000..6ea004491b
--- /dev/null
+++ b/macros/latex/required/cyrillic/manifest.txt
@@ -0,0 +1,31 @@
+%
+% The following files form the LaTeX2e distribution of 2005-12-01
+%
+%
+% CONTENTS OF THE CYRILLIC BUNDLE
+% ===============================
+
+cyoutenc.dtx
+ Encoding definition files for new standard Cyrillic TeX font
+ encodings: T2A, T2B, T2C, X2.
+cyinpenc.dtx
+ Cyrillic input encoding definition files.
+t2lhfnt.fdd
+ Font definition files for the Computer Modern families (LH fonts).
+ot2.dtx
+ Encoding definition file for old (7-bit Washington) Cyrillic
+ TeX font encoding: OT2.
+lcy.dtx
+ Encoding definition file for old (non-standard, but supported)
+ Cyrillic TeX font encoding: LCY; also contains lcydefs.tex which
+ sets up {cat,uc,lc,sf,math}code values for LCY font encoding,
+ and a wrapper package lcy.sty.
+ot2cmams.fdd
+ font definition files for OT2 encoding / WNCY fonts.
+ot2cmlh.fdd
+ font definition files for OT2 encoding / LH fonts.
+lcycmlh.fdd
+ font definition files for LCY encoding / LH fonts.
+cyrlatex.ins
+ docstrip batch file.
+\endinput
diff --git a/macros/latex/required/cyrillic/ot2.dtx b/macros/latex/required/cyrillic/ot2.dtx
new file mode 100644
index 0000000000..05e747a136
--- /dev/null
+++ b/macros/latex/required/cyrillic/ot2.dtx
@@ -0,0 +1,218 @@
+% \iffalse meta-comment
+%
+% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2008 2009
+% The LaTeX3 Project and any individual authors listed elsewhere
+% in this file.
+%
+% This file is part of the Standard LaTeX `Cyrillic Bundle'.
+% ----------------------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl.txt
+% and version 1.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% The list of all files belonging to the `Cyrillic Bundle' is
+% given in the file `manifest.txt'.
+%
+% \fi
+% \iffalse
+% This is the file |ot2.dtx| of the cyrillic bundle for LaTeX2e.
+%
+% Copyright (C) 1996 Sebastian Rahtz, M. Ellert, F. Widmann
+% Copyright (C) 1995-1997 Olga Lapko, Johannes L. Braams
+% Copyright (C) 1998-2001 Werner Lemberg, Vladimir Volovich
+%
+%<*driver>
+\documentclass{ltxdoc}
+\begin{document}
+\DocInput{ot2.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \begin{macrocode}
+%<*OT2>
+\NeedsTeXFormat{LaTeX2e}[1998/12/01]
+\ProvidesFile{ot2enc.def}
+ [2001/08/11 v3.3a Cyrillic encoding definition file]
+% \end{macrocode}
+%
+% \section{Definitions for the \texttt{OT2} encoding}
+%
+% \begin{macrocode}
+\DeclareFontEncoding{OT2}{}{}
+\DeclareFontSubstitution{OT2}{cmr}{m}{n}
+% \end{macrocode}
+% Accents:
+% \begin{macrocode}
+\DeclareTextAccent{\"}{OT2}{32}
+\DeclareTextAccent{\'}{OT2}{38}
+% \end{macrocode}
+% There is a |\U| accent for the wide Cyrillic breve in addition to the
+% |\u| accent used for the smaller breve. It is recommended to use |\U|
+% accent for |\U{i}| and |\U{u}|. |\U{i}| has a composite declared below.
+% \begin{macrocode}
+\DeclareTextAccent{\u}{OT2}{64}
+\DeclareTextAccent{\U}{OT2}{36}
+\DeclareTextCommand{\d}{OT2}[1]
+ {\hmode@bgroup
+ \o@lign{\relax#1\crcr\hidewidth\sh@ft{10}.\hidewidth}\egroup}
+\DeclareTextCommand{\.}{OT2}[1]{\TextSymbolUnavailable{\.{#1}}#1}
+% \end{macrocode}
+% Letters. We declare all letters here, including the ones which are
+% accessible either directly or via ligatures from Latin letters, because we
+% can use an encoding-independent notation in \textsf{Babel} support files,
+% shareable for all font encodings. It is even possible to use 7-bit |OT2|
+% font encoding with 8-bit input encodings; all letters become accessible
+% for accents (there is a problem when putting an accent on letters treated
+% as ligatures: E.g., in ordinary text `yu' and `ya' are rendered as soft `u'
+% and soft `a', but |\'{yu}| does not produce a soft `u' with an accent, but
+% a `y' with an accent followed by an `u'). We use an approach based on
+% standard \LaTeX\ encoding-dependent symbols (but not definitions like
+% |\def\CYRA{A}|) which allows one to use several Cyrillic font encodings in
+% one document.
+% \begin{macrocode}
+\DeclareTextSymbol{\CYRNJE}{OT2}{0}
+\DeclareTextSymbol{\CYRLJE}{OT2}{1}
+\DeclareTextSymbol{\CYRDZHE}{OT2}{2}
+\DeclareTextSymbol{\CYREREV}{OT2}{3}
+\DeclareTextSymbol{\CYRII}{OT2}{4}
+\DeclareTextSymbol{\CYRIE}{OT2}{5}
+\DeclareTextSymbol{\CYRDJE}{OT2}{6}
+\DeclareTextSymbol{\CYRTSHE}{OT2}{7}
+\DeclareTextSymbol{\cyrnje}{OT2}{8}
+\DeclareTextSymbol{\cyrlje}{OT2}{9}
+\DeclareTextSymbol{\cyrdzhe}{OT2}{10}
+\DeclareTextSymbol{\cyrerev}{OT2}{11}
+\DeclareTextSymbol{\cyrii}{OT2}{12}
+\DeclareTextSymbol{\cyrie}{OT2}{13}
+\DeclareTextSymbol{\cyrdje}{OT2}{14}
+\DeclareTextSymbol{\cyrtshe}{OT2}{15}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareTextSymbol{\CYRYU}{OT2}{16}
+\DeclareTextSymbol{\CYRZH}{OT2}{17}
+\DeclareTextSymbol{\CYRISHRT}{OT2}{18}
+\DeclareTextSymbol{\CYRYO}{OT2}{19}
+\DeclareTextSymbol{\CYRIZH}{OT2}{20}
+\DeclareTextSymbol{\CYRFITA}{OT2}{21}
+\DeclareTextSymbol{\CYRDZE}{OT2}{22}
+\DeclareTextSymbol{\CYRYA}{OT2}{23}
+\DeclareTextSymbol{\cyryu}{OT2}{24}
+\DeclareTextSymbol{\cyrzh}{OT2}{25}
+\DeclareTextSymbol{\cyrishrt}{OT2}{26}
+\DeclareTextSymbol{\cyryo}{OT2}{27}
+\DeclareTextSymbol{\cyrizh}{OT2}{28}
+\DeclareTextSymbol{\cyrfita}{OT2}{29}
+\DeclareTextSymbol{\cyrdze}{OT2}{30}
+\DeclareTextSymbol{\cyrya}{OT2}{31}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareTextSymbol{\CYRYAT}{OT2}{35}
+\DeclareTextSymbol{\cyryat}{OT2}{43}
+% \end{macrocode}
+% We use the same command for the dotless `i' letter as in other encodings.
+% \begin{macrocode}
+\DeclareTextSymbol{\i}{OT2}{61}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareTextSymbol{\CYRA}{OT2}{65}
+\DeclareTextSymbol{\CYRB}{OT2}{66}
+\DeclareTextSymbol{\CYRC}{OT2}{67}
+\DeclareTextSymbol{\CYRD}{OT2}{68}
+\DeclareTextSymbol{\CYRE}{OT2}{69}
+\DeclareTextSymbol{\CYRF}{OT2}{70}
+\DeclareTextSymbol{\CYRG}{OT2}{71}
+\DeclareTextSymbol{\CYRH}{OT2}{72}
+\DeclareTextSymbol{\CYRI}{OT2}{73}
+\DeclareTextSymbol{\CYRJE}{OT2}{74}
+\DeclareTextSymbol{\CYRK}{OT2}{75}
+\DeclareTextSymbol{\CYRL}{OT2}{76}
+\DeclareTextSymbol{\CYRM}{OT2}{77}
+\DeclareTextSymbol{\CYRN}{OT2}{78}
+\DeclareTextSymbol{\CYRO}{OT2}{79}
+\DeclareTextSymbol{\CYRP}{OT2}{80}
+\DeclareTextSymbol{\CYRCH}{OT2}{81}
+\DeclareTextSymbol{\CYRR}{OT2}{82}
+\DeclareTextSymbol{\CYRS}{OT2}{83}
+\DeclareTextSymbol{\CYRT}{OT2}{84}
+\DeclareTextSymbol{\CYRU}{OT2}{85}
+\DeclareTextSymbol{\CYRV}{OT2}{86}
+\DeclareTextSymbol{\CYRSHCH}{OT2}{87}
+\DeclareTextSymbol{\CYRSH}{OT2}{88}
+\DeclareTextSymbol{\CYRERY}{OT2}{89}
+\DeclareTextSymbol{\CYRZ}{OT2}{90}
+\DeclareTextSymbol{\CYRSFTSN}{OT2}{94}
+\DeclareTextSymbol{\CYRHRDSN}{OT2}{95}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareTextSymbol{\cyra}{OT2}{97}
+\DeclareTextSymbol{\cyrb}{OT2}{98}
+\DeclareTextSymbol{\cyrc}{OT2}{99}
+\DeclareTextSymbol{\cyrd}{OT2}{100}
+\DeclareTextSymbol{\cyre}{OT2}{101}
+\DeclareTextSymbol{\cyrf}{OT2}{102}
+\DeclareTextSymbol{\cyrg}{OT2}{103}
+\DeclareTextSymbol{\cyrh}{OT2}{104}
+\DeclareTextSymbol{\cyri}{OT2}{105}
+\DeclareTextSymbol{\cyrje}{OT2}{106}
+\DeclareTextSymbol{\cyrk}{OT2}{107}
+\DeclareTextSymbol{\cyrl}{OT2}{108}
+\DeclareTextSymbol{\cyrm}{OT2}{109}
+\DeclareTextSymbol{\cyrn}{OT2}{110}
+\DeclareTextSymbol{\cyro}{OT2}{111}
+\DeclareTextSymbol{\cyrp}{OT2}{112}
+\DeclareTextSymbol{\cyrch}{OT2}{113}
+\DeclareTextSymbol{\cyrr}{OT2}{114}
+\DeclareTextSymbol{\cyrs}{OT2}{115}
+\DeclareTextSymbol{\cyrt}{OT2}{116}
+\DeclareTextSymbol{\cyru}{OT2}{117}
+\DeclareTextSymbol{\cyrv}{OT2}{118}
+\DeclareTextSymbol{\cyrshch}{OT2}{119}
+\DeclareTextSymbol{\cyrsh}{OT2}{120}
+\DeclareTextSymbol{\cyrery}{OT2}{121}
+\DeclareTextSymbol{\cyrz}{OT2}{122}
+\DeclareTextSymbol{\cyrsftsn}{OT2}{126}
+\DeclareTextSymbol{\cyrhrdsn}{OT2}{127}
+% \end{macrocode}
+% Other symbols:
+% \begin{macrocode}
+%\DeclareTextSymbol{\texthyphenchar}{OT2}{45}
+%\DeclareTextSymbol{\texthyphen}{OT2}{45}
+\DeclareTextSymbol{\textquoteleft}{OT2}{96}
+\DeclareTextSymbol{\textquoteright}{OT2}{39}
+\DeclareTextSymbol{\textquotedblleft}{OT2}{92}
+\DeclareTextSymbol{\textquotedblright}{OT2}{34}
+\DeclareTextSymbol{\guillemotleft}{OT2}{60}
+\DeclareTextSymbol{\guillemotright}{OT2}{62}
+\DeclareTextSymbol{\textendash}{OT2}{123}
+\DeclareTextSymbol{\cyrdash}{OT2}{124}
+\DeclareTextSymbol{\textemdash}{OT2}{124}
+\DeclareTextSymbol{\textnumero}{OT2}{125}
+% \end{macrocode}
+% Some `obvious' composites:
+% \begin{macrocode}
+\DeclareTextComposite{\U}{OT2}{I}{18}
+\DeclareTextComposite{\U}{OT2}{i}{26}
+\DeclareTextComposite{\"}{OT2}{E}{19}
+\DeclareTextComposite{\"}{OT2}{e}{27}
+\DeclareTextComposite{\.}{OT2}{\i}{12}
+% \end{macrocode}
+% The following declarations will not work for 8-bit chars generated via
+% |inputenc| unless a |dblaccnt| package is used.
+% \begin{macrocode}
+\DeclareTextComposite{\U}{OT2}{\CYRI}{18}
+\DeclareTextComposite{\U}{OT2}{\cyri}{26}
+\DeclareTextComposite{\"}{OT2}{\CYRE}{19}
+\DeclareTextComposite{\"}{OT2}{\cyre}{27}
+%</OT2>
+% \end{macrocode}
+\endinput
diff --git a/macros/latex/required/cyrillic/ot2.pdf b/macros/latex/required/cyrillic/ot2.pdf
new file mode 100644
index 0000000000..ab2c9b8f79
--- /dev/null
+++ b/macros/latex/required/cyrillic/ot2.pdf
Binary files differ
diff --git a/macros/latex/required/cyrillic/ot2cmams.fdd b/macros/latex/required/cyrillic/ot2cmams.fdd
new file mode 100644
index 0000000000..be87506268
--- /dev/null
+++ b/macros/latex/required/cyrillic/ot2cmams.fdd
@@ -0,0 +1,135 @@
+% \iffalse meta-comment
+%
+% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2008 2009
+% The LaTeX3 Project and any individual authors listed elsewhere
+% in this file.
+%
+% This file is part of the Standard LaTeX `Cyrillic Bundle'.
+% ----------------------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl.txt
+% and version 1.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% The list of all files belonging to the `Cyrillic Bundle' is
+% given in the file `manifest.txt'.
+%
+% \fi
+% \iffalse
+% This is the file |ot2cmams.fdd| of the cyrillic bundle for LaTeX2e.
+%
+% Copyright (C) 1989-1998 Frank Mittelbach, Rainer Sch\"opf
+% Copyright (C) 1995-1999 Sebastian Rahtz, Thierry Bouche
+% Copyright (C) 1998-1999 Werner Lemberg, Vladimir Volovich
+%
+%<*driver>
+\documentclass{ltxdoc}
+\begin{document}
+\DocInput{ot2cmams.fdd}
+\end{document}
+%</driver>
+% \fi
+%
+% \begin{macrocode}
+%<OT2wncyr>\ProvidesFile{ot2wncyr.fd}
+%<OT2wncyss>\ProvidesFile{ot2wncyss.fd}
+%<OT2wlcyr>\ProvidesFile{ot2wlcyr.fd}
+%<OT2wlcyss>\ProvidesFile{ot2wlcyss.fd}
+ [1999/12/17 v3.2a Computer Modern Cyrillic font definitions]
+% \end{macrocode}
+%
+% \section{Computer Modern Roman in \texttt{OT2} encoding}
+%
+% These fonts are from the University of Washington.
+% \begin{macrocode}
+%<*OT2wncyr>
+\DeclareFontFamily{OT2}{wncyr}{\hyphenchar\font45 }
+%<*pdftex>
+\@ifundefined{pdfoutput}\iffalse{\ifnum\pdfoutput=1}
+\DeclareFontShape{OT2}{wncyr}{m}{n}{<->wncyr10}{}
+\DeclareFontShape{OT2}{wncyr}{m}{it}{<->wncyi10}{}
+\DeclareFontShape{OT2}{wncyr}{m}{sc}{<->wncysc10}{}
+\DeclareFontShape{OT2}{wncyr}{b}{n}{<->wncyb10}{}
+\else
+%</pdftex>
+\DeclareFontShape{OT2}{wncyr}{m}{n}{%
+ <5><6><7><8><9>gen*wncyr%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wncyr10}{}
+\DeclareFontShape{OT2}{wncyr}{m}{it}{%
+ <5><6><7><8><9>gen*wncyi%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wncyi10}{}
+\DeclareFontShape{OT2}{wncyr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>wncysc10}{}
+\DeclareFontShape{OT2}{wncyr}{b}{n}{%
+ <5><6><7><8><9>gen*wncyb%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wncyb10}{}
+%<pdftex>\fi
+\DeclareFontShape{OT2}{wncyr}{bx}{n}{<->ssub*wncyr/b/n}{}
+%</OT2wncyr>
+% \end{macrocode}
+%
+% \section{Computer Modern Sans in \texttt{OT2} encoding}
+%
+% \begin{macrocode}
+%<*OT2wncyss>
+\DeclareFontFamily{OT2}{wncyss}{\hyphenchar\font45 }
+%<*pdftex>
+\@ifundefined{pdfoutput}\iffalse{\ifnum\pdfoutput=1}
+\DeclareFontShape{OT2}{wncyss}{m}{n}{<->wncyss10}{}
+\else
+%</pdftex>
+\DeclareFontShape{OT2}{wncyss}{m}{n}{%
+ <5><6><7><8>wncyss8<9>wncyss9%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wncyss10}{}
+%<pdftex>\fi
+%</OT2wncyss>
+% \end{macrocode}
+%
+% \section{Virtual WLCY fonts without ligatures}
+%
+% \begin{macrocode}
+%<*OT2wlcyr>
+\DeclareFontFamily{OT2}{wlcyr}{\hyphenchar\font45 }
+%<*pdftex>
+\@ifundefined{pdfoutput}\iffalse{\ifnum\pdfoutput=1}
+\DeclareFontShape{OT2}{wlcyr}{m}{n}{<->wlcyr10}{}
+\DeclareFontShape{OT2}{wlcyr}{m}{it}{<->wlcyi10}{}
+\DeclareFontShape{OT2}{wlcyr}{m}{sc}{<->wlcysc10}{}
+\DeclareFontShape{OT2}{wlcyr}{b}{n}{<->wlcyb10}{}
+\else
+%</pdftex>
+\DeclareFontShape{OT2}{wlcyr}{m}{n}{%
+ <5><6><7><8><9>gen*wlcyr%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wlcyr10}{}
+\DeclareFontShape{OT2}{wlcyr}{m}{it}{%
+ <5><6><7><8><9>gen*wlcyi%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wlcyi10}{}
+\DeclareFontShape{OT2}{wlcyr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>wlcysc10}{}
+\DeclareFontShape{OT2}{wlcyr}{b}{n}{%
+ <5><6><7><8><9>gen*wlcyb%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wlcyb10}{}
+%<pdftex>\fi
+\DeclareFontShape{OT2}{wlcyr}{bx}{n}{<->ssub*wlcyr/b/n}{}
+%</OT2wlcyr>
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<*OT2wlcyss>
+\DeclareFontFamily{OT2}{wlcyss}{\hyphenchar\font45 }
+%<*pdftex>
+\@ifundefined{pdfoutput}\iffalse{\ifnum\pdfoutput=1}
+\DeclareFontShape{OT2}{wlcyss}{m}{n}{<->wlcyss10}{}
+\else
+%</pdftex>
+\DeclareFontShape{OT2}{wlcyss}{m}{n}{%
+ <5><6><7><8>wlcyss8<9>wlcyss9%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wlcyss10}{}
+%<pdftex>\fi
+%</OT2wlcyss>
+% \end{macrocode}
+\endinput
diff --git a/macros/latex/required/cyrillic/ot2cmams.pdf b/macros/latex/required/cyrillic/ot2cmams.pdf
new file mode 100644
index 0000000000..738b5a2406
--- /dev/null
+++ b/macros/latex/required/cyrillic/ot2cmams.pdf
Binary files differ
diff --git a/macros/latex/required/cyrillic/ot2cmlh.fdd b/macros/latex/required/cyrillic/ot2cmlh.fdd
new file mode 100644
index 0000000000..5790955f59
--- /dev/null
+++ b/macros/latex/required/cyrillic/ot2cmlh.fdd
@@ -0,0 +1,342 @@
+% \iffalse meta-comment
+%
+% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2008 2009
+% The LaTeX3 Project and any individual authors listed elsewhere
+% in this file.
+%
+% This file is part of the Standard LaTeX `Cyrillic Bundle'.
+% ----------------------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl.txt
+% and version 1.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% The list of all files belonging to the `Cyrillic Bundle' is
+% given in the file `manifest.txt'.
+%
+% \fi
+% \iffalse
+% This is the file |ot2cmlh.fdd| of the cyrillic bundle for LaTeX2e.
+%
+% Copyright (C) 1995-1997 Olga Lapko, Johannes L. Braams
+% Copyright (C) 1998-2001 Werner Lemberg, Vladimir Volovich
+%
+%<*driver>
+\documentclass{ltxdoc}
+\begin{document}
+\DocInput{ot2cmlh.fdd}
+\end{document}
+%</driver>
+% \fi
+%
+% \begin{macrocode}
+%<OT2cmdh>\ProvidesFile{ot2cmdh.fd}
+%<OT2cmfib>\ProvidesFile{ot2cmfib.fd}
+%<OT2cmfr>\ProvidesFile{ot2cmfr.fd}
+%<OT2cmr>\ProvidesFile{ot2cmr.fd}
+%<OT2cmss>\ProvidesFile{ot2cmss.fd}
+%<OT2cmtt>\ProvidesFile{ot2cmtt.fd}
+%<OT2cmvtt>\ProvidesFile{ot2cmvtt.fd}
+%<OT2lcmss>\ProvidesFile{ot2lcmss.fd}
+%<OT2lcmtt>\ProvidesFile{ot2lcmtt.fd}
+%<OT2cmbr>\ProvidesFile{ot2cmbr.fd}
+%<OT2cmtl>\ProvidesFile{ot2cmtl.fd}
+%<OT2ccr>\ProvidesFile{ot2ccr.fd}
+ [2001/08/11 v3.2c Computer Modern Cyrillic font definitions]
+% \end{macrocode}
+%
+% \section{Fonts in old \TeX{} text Cyrillic encoding (\texttt{OT2})}
+%
+% These are the font definitions for Computer Modern Cyrillic fonts for old
+% |OT2| encoding, based on \textsf{LH} fonts. All font shapes and sizes
+% provided by \textsf{CM} fonts are also supported by \textsf{LH} fonts, so
+% this file is based on |cmfonts.fdd| and |slifonts.fdd|. See comments
+% there.
+%
+% The encoding name for the \textsf{LH} |wn*| fonts was `|LWN|' in old
+% versions of \textsf{Babel}. However, one should use the name `|OT2|' for
+% this encoding.
+%
+% \subsection{Computer Modern Roman}
+%
+% \begin{macrocode}
+%<*OT2cmr>
+\DeclareFontFamily{OT2}{cmr}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmr}{m}{n}{%
+ <5><6><7><8><9><10><12>gen*wnr%
+ <10.95>wnr10%
+ <14.4>wnr12%
+ <17.28><20.74><24.88>wnr17}{}
+\DeclareFontShape{OT2}{cmr}{m}{sl}{%
+ <5><6><7>wnsl8%
+ <8><9>gen*wnsl%
+ <10><10.95>wnsl10%
+ <12><14.4><17.28><20.74><24.88>wnsl12}{}
+\DeclareFontShape{OT2}{cmr}{m}{it}{%
+ <5><6><7>wnti7%
+ <8>wnti8%
+ <9>wnti9%
+ <10><10.95>wnti10%
+ <12><14.4><17.28><20.74><24.88>wnti12}{}
+\DeclareFontShape{OT2}{cmr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88>wncsc10}{}
+\DeclareFontShape{OT2}{cmr}{m}{ui}{%
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88>wnu10}{}
+\DeclareFontShape{OT2}{cmr}{b}{n}{%
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88>wnb10}{}
+\DeclareFontShape{OT2}{cmr}{bx}{n}{%
+ <5><6><7><8><9>gen*wnbx%
+ <10><10.95>wnbx10%
+ <12><14.4><17.28><20.74><24.88>wnbx12}{}
+\DeclareFontShape{OT2}{cmr}{bx}{sl}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wnbxsl10}{}
+\DeclareFontShape{OT2}{cmr}{bx}{it}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wnbxti10}{}
+\DeclareFontShape{OT2}{cmr}{bx}{ui}{%
+%<-nowarn> <->sub*cmr/m/ui}{}
+%<+nowarn> <->ssub*cmr/m/ui}{}
+%</OT2cmr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Sans}
+%
+% \begin{macrocode}
+%<*OT2cmss>
+\DeclareFontFamily{OT2}{cmss}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmss}{m}{n}{%
+ <5><6><7><8>wnss8%
+ <9>wnss9%
+ <10><10.95>wnss10%
+ <12><14.4>wnss12%
+ <17.28><20.74><24.88>wnss17}{}
+\DeclareFontShape{OT2}{cmss}{m}{it}{%
+%<-nowarn> <->sub*cmss/m/sl}{}
+%<+nowarn> <->ssub*cmss/m/sl}{}
+\DeclareFontShape{OT2}{cmss}{m}{sl}{%
+ <5><6><7><8>wnssi8<9>wnssi9%
+ <10><10.95>wnssi10%
+ <12><14.4>wnssi12%
+ <17.28><20.74><24.88>wnssi17}{}
+\DeclareFontShape{OT2}{cmss}{m}{sc}{%
+ <->sub*cmr/m/sc}{}
+\DeclareFontShape{OT2}{cmss}{m}{ui}{%
+ <->sub*cmr/m/ui}{}
+\DeclareFontShape{OT2}{cmss}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>wnssdc10}{}
+\DeclareFontShape{OT2}{cmss}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>wnssbx10}{}
+\DeclareFontShape{OT2}{cmss}{bx}{ui}{%
+ <->sub*cmr/bx/ui}{}
+%</OT2cmss>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter}
+%
+% \begin{macrocode}
+%<*OT2cmtt>
+\DeclareFontFamily{OT2}{cmtt}{\hyphenchar\font\m@ne}
+\DeclareFontShape{OT2}{cmtt}{m}{n}{%
+ <5><6><7><8>wntt8<9>wntt9%
+ <10><10.95>wntt10%
+ <12><14.4><17.28><20.74><24.88>wntt12}{}
+\DeclareFontShape{OT2}{cmtt}{m}{it}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wnitt10}{}
+\DeclareFontShape{OT2}{cmtt}{m}{sl}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wnsltt10}{}
+\DeclareFontShape{OT2}{cmtt}{m}{sc}{%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wntcsc10}{}
+\DeclareFontShape{OT2}{cmtt}{m}{ui}{%
+%<-nowarn> <->sub*cmtt/m/it}{}
+%<+nowarn> <->ssub*cmtt/m/it}{}
+\DeclareFontShape{OT2}{cmtt}{bx}{n}{%
+%<-nowarn> <->sub*cmtt/m/n}{}
+%<+nowarn> <->ssub*cmtt/m/n}{}
+\DeclareFontShape{OT2}{cmtt}{bx}{it}{%
+%<-nowarn> <->sub*cmtt/m/it}{}
+%<+nowarn> <->ssub*cmtt/m/it}{}
+\DeclareFontShape{OT2}{cmtt}{bx}{ui}{%
+%<-nowarn> <->sub*cmtt/m/it}{}
+%<+nowarn> <->ssub*cmtt/m/it}{}
+%</OT2cmtt>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Variable Typewriter}
+%
+% \begin{macrocode}
+%<*OT2cmvtt>
+\DeclareFontFamily{OT2}{cmvtt}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmvtt}{m}{n}{%
+ <5><6><7><8><9><10><10.95>%
+ <12><14.4><17.28><20.74><24.88>wnvtt10}{}
+\DeclareFontShape{OT2}{cmvtt}{m}{it}{%
+ <5><6><7><8><9><10><10.95>%
+ <12><14.4><17.28><20.74><24.88>wnvtti10}{}
+%</OT2cmvtt>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Funny}
+%
+% \begin{macrocode}
+%<*OT2cmfr>
+\DeclareFontFamily{OT2}{cmfr}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmfr}{m}{n}{%
+ <10>wnff10}{}
+\DeclareFontShape{OT2}{cmfr}{m}{it}{%
+ <10>wnfi10}{}
+%</OT2cmfr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Dunhill}
+%
+% \begin{macrocode}
+%<*OT2cmdh>
+\DeclareFontFamily{OT2}{cmdh}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmdh}{m}{n}{%
+ <10>wndunh10}{}
+%</OT2cmdh>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Fibonacci}
+%
+% \begin{macrocode}
+%<*OT2cmfib>
+\DeclareFontFamily{OT2}{cmfib}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmfib}{m}{n}{%
+ <8>wnfib8}{}
+%</OT2cmfib>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Sans for \SliTeX}
+%
+% \begin{macrocode}
+%<*OT2lcmss>
+\DeclareFontFamily{OT2}{lcmss}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{lcmss}{m}{n}{%
+ <7><8><10><12>%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>lwnss8}{}
+\DeclareFontShape{OT2}{lcmss}{m}{In}{%
+ <7><8><10><12>%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>ilwnss8}{}
+\DeclareFontShape{OT2}{lcmss}{m}{sl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>lwnssi8}{}
+\DeclareFontShape{OT2}{lcmss}{m}{Isl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>ilwnssi8}{}
+\DeclareFontShape{OT2}{lcmss}{m}{it}{%
+ <->sub*lcmss/m/sl}{}
+\DeclareFontShape{OT2}{lcmss}{m}{Iit}{%
+ <->sub*lcmss/m/Isl}{}
+\DeclareFontShape{OT2}{lcmss}{bx}{n}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>lwnssb8}{}
+\DeclareFontShape{OT2}{lcmss}{bx}{In}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>ilwnssb8}{}
+\DeclareFontShape{OT2}{lcmss}{m}{ui}{%
+ <->sub*cmr/m/ui}{}
+\DeclareFontShape{OT2}{lcmss}{bx}{ui}{%
+ <->sub*cmr/m/ui}{}
+%</OT2lcmss>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter for \SliTeX}
+%
+% \begin{macrocode}
+%<*OT2lcmtt>
+\DeclareFontFamily{OT2}{lcmtt}{\hyphenchar\font\m@ne}
+\DeclareFontShape{OT2}{lcmtt}{m}{n}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>wntt8}{}
+\DeclareFontShape{OT2}{lcmtt}{m}{In}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>iwntt8}{}
+\DeclareFontShape{OT2}{lcmtt}{m}{it}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>wnitt10}{}
+\DeclareFontShape{OT2}{lcmtt}{m}{ui}{%
+ <->sub*cmtt/m/it}{}
+\DeclareFontShape{OT2}{lcmtt}{bx}{ui}{%
+ <->sub*cmtt/m/it}{}
+%</OT2lcmtt>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Bright}
+%
+% \begin{macrocode}
+%<*OT2cmbr>
+\DeclareFontFamily{OT2}{cmbr}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{cmbr}{m}{n}{%
+ <5><6><7><8>wnbr8%
+ <9>wnbr9%
+ <10><10.95><12><14.4>wnbr10%
+ <17.28><20.74><24.88><29.86><35.83>wnbr17%
+}{}
+\DeclareFontShape{OT2}{cmbr}{m}{sl}{%
+ <5><6><7><8>wnbrsl8%
+ <9>wnbrsl9%
+ <10><10.95><12><14.4>wnbrsl10%
+ <17.28><20.74><24.88><29.86><35.83>wnbrsl17%
+}{}
+\DeclareFontShape{OT2}{cmbr}{m}{it}{<->ssub*cmbr/m/sl}{}
+\DeclareFontShape{OT2}{cmbr}{b}{n}{<->ssub*cmbr/bx/n}{}
+\DeclareFontShape{OT2}{cmbr}{bx}{n}{%
+ <-9>sub*cmbr/m/n%
+ <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>wnbrbx10%
+}{}
+%</OT2cmbr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter Light}
+%
+% \begin{macrocode}
+%<*OT2cmtl>
+\DeclareFontFamily{OT2}{cmtl}{\hyphenchar\font\m@ne}
+\DeclareFontShape{OT2}{cmtl}{m}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>wntl10%
+}{}
+\DeclareFontShape{OT2}{cmtl}{m}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>wnsltl10%
+}{}
+\DeclareFontShape{OT2}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{}
+%</OT2cmtl>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Concrete}
+%
+% \begin{macrocode}
+%<*OT2ccr>
+\DeclareFontFamily{OT2}{ccr}{\hyphenchar\font45 }
+\DeclareFontShape{OT2}{ccr}{m}{n}{%
+ <5><6><7><8><9>gen*wncr%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wncr10%
+}{}
+\DeclareFontShape{OT2}{ccr}{m}{sl}{%
+ <5><6><7><8><9>wncsl9%
+ <10><10.95><12><14.4><17.28><20.74><24.88>wncsl10%
+}{}
+\DeclareFontShape{OT2}{ccr}{m}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>wncti10%
+}{}
+\DeclareFontShape{OT2}{ccr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>wnccsc10%
+}{}
+\DeclareFontShape{OT2}{ccr}{bx}{n}{<->ssub*cmr/bx/n}{}
+\DeclareFontShape{OT2}{ccr}{bx}{sl}{<->ssub*cmr/bx/sl}{}
+\DeclareFontShape{OT2}{ccr}{bx}{it}{<->ssub*cmr/bx/it}{}
+\DeclareFontShape{OT2}{ccr}{sbc}{n}{<->ssub*cmss/sbc/n}{}
+\DeclareFontShape{OT2}{ccr}{sbc}{sl}{<->ssub*cmss/sbc/n}{}
+\DeclareFontShape{OT2}{ccr}{sbc}{it}{<->ssub*cmss/sbc/n}{}
+\DeclareFontShape{OT2}{ccr}{c}{sl}{%
+ <9>wncslc9%
+}{}
+%</OT2ccr>
+% \end{macrocode}
+\endinput
diff --git a/macros/latex/required/cyrillic/ot2cmlh.pdf b/macros/latex/required/cyrillic/ot2cmlh.pdf
new file mode 100644
index 0000000000..90a8c20835
--- /dev/null
+++ b/macros/latex/required/cyrillic/ot2cmlh.pdf
Binary files differ
diff --git a/macros/latex/required/cyrillic/t2lhfnt.fdd b/macros/latex/required/cyrillic/t2lhfnt.fdd
new file mode 100644
index 0000000000..8f0dac0df6
--- /dev/null
+++ b/macros/latex/required/cyrillic/t2lhfnt.fdd
@@ -0,0 +1,997 @@
+% \iffalse meta-comment
+%
+% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2008 2009
+% The LaTeX3 Project and any individual authors listed elsewhere
+% in this file.
+%
+% This file is part of the Standard LaTeX `Cyrillic Bundle'.
+% ----------------------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl.txt
+% and version 1.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% The list of all files belonging to the `Cyrillic Bundle' is
+% given in the file `manifest.txt'.
+%
+% \fi
+% \iffalse
+% This is the file |t2lhfnt.fdd| of the cyrillic bundle for LaTeX2e.
+%
+%<*driver>
+\documentclass{ltxdoc}
+\begin{document}
+\DocInput{t2lhfnt.fdd}
+\end{document}
+%</driver>
+% \fi
+%
+% \section{Font definition files for the LH family of Cyrillic fonts}
+%
+% A lot of mostly duplicated code (for different encodings) will
+% probably be removed when an extension to docstrip will be available.
+%
+% \begin{macrocode}
+%<X2cmdh>\ProvidesFile{x2cmdh.fd}
+%<X2cmfib>\ProvidesFile{x2cmfib.fd}
+%<X2cmfr>\ProvidesFile{x2cmfr.fd}
+%<X2cmr>\ProvidesFile{x2cmr.fd}
+%<X2cmss>\ProvidesFile{x2cmss.fd}
+%<X2cmtt>\ProvidesFile{x2cmtt.fd}
+%<X2cmvtt>\ProvidesFile{x2cmvtt.fd}
+%<lcmss&X2>\ProvidesFile{x2lcmss.fd}
+%<lcmtt&X2>\ProvidesFile{x2lcmtt.fd}
+%<X2cmbr>\ProvidesFile{x2cmbr.fd}
+%<X2cmtl>\ProvidesFile{x2cmtl.fd}
+%<X2ccr>\ProvidesFile{x2ccr.fd}
+%<T2Acmdh>\ProvidesFile{t2acmdh.fd}
+%<T2Acmfib>\ProvidesFile{t2acmfib.fd}
+%<T2Acmfr>\ProvidesFile{t2acmfr.fd}
+%<T2Acmr>\ProvidesFile{t2acmr.fd}
+%<T2Acmss>\ProvidesFile{t2acmss.fd}
+%<T2Acmtt>\ProvidesFile{t2acmtt.fd}
+%<T2Acmvtt>\ProvidesFile{t2acmvtt.fd}
+%<lcmss&T2A>\ProvidesFile{t2alcmss.fd}
+%<lcmtt&T2A>\ProvidesFile{t2alcmtt.fd}
+%<T2Acmbr>\ProvidesFile{t2acmbr.fd}
+%<T2Acmtl>\ProvidesFile{t2acmtl.fd}
+%<T2Accr>\ProvidesFile{t2accr.fd}
+%<T2Bcmdh>\ProvidesFile{t2bcmdh.fd}
+%<T2Bcmfib>\ProvidesFile{t2bcmfib.fd}
+%<T2Bcmfr>\ProvidesFile{t2bcmfr.fd}
+%<T2Bcmr>\ProvidesFile{t2bcmr.fd}
+%<T2Bcmss>\ProvidesFile{t2bcmss.fd}
+%<T2Bcmtt>\ProvidesFile{t2bcmtt.fd}
+%<T2Bcmvtt>\ProvidesFile{t2bcmvtt.fd}
+%<lcmss&T2B>\ProvidesFile{t2blcmss.fd}
+%<lcmtt&T2B>\ProvidesFile{t2blcmtt.fd}
+%<T2Bcmbr>\ProvidesFile{t2bcmbr.fd}
+%<T2Bcmtl>\ProvidesFile{t2bcmtl.fd}
+%<T2Bccr>\ProvidesFile{t2bccr.fd}
+%<T2Ccmdh>\ProvidesFile{t2ccmdh.fd}
+%<T2Ccmfib>\ProvidesFile{t2ccmfib.fd}
+%<T2Ccmfr>\ProvidesFile{t2ccmfr.fd}
+%<T2Ccmr>\ProvidesFile{t2ccmr.fd}
+%<T2Ccmss>\ProvidesFile{t2ccmss.fd}
+%<T2Ccmtt>\ProvidesFile{t2ccmtt.fd}
+%<T2Ccmvtt>\ProvidesFile{t2ccmvtt.fd}
+%<lcmss&T2C>\ProvidesFile{t2clcmss.fd}
+%<lcmtt&T2C>\ProvidesFile{t2clcmtt.fd}
+%<T2Ccmbr>\ProvidesFile{t2ccmbr.fd}
+%<T2Ccmtl>\ProvidesFile{t2ccmtl.fd}
+%<T2Cccr>\ProvidesFile{t2cccr.fd}
+ [2001/08/11 v1.0a Computer Modern Cyrillic font definitions]
+% \end{macrocode}
+%
+% The following definitions will be removed when this file will be
+% merged with |cmfonts.fdd|.
+%
+% \begin{macrocode}
+%<*!lcmss&!lcmtt>
+%<*!tt>
+\providecommand{\EC@family}[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>genb*#5}{}}
+%</!tt>
+%<*tt>
+\providecommand{\EC@ttfamily}[5]{%
+ \DeclareFontShape{#1}{#2}{#3}{#4}%
+ {<5><6><7><8>#50800%
+ <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86>%
+ <35.83>genb*#5}{}}
+%</tt>
+%</!lcmss&!lcmtt>
+% \end{macrocode}
+%
+% LH fonts for X2 encoding.
+%
+% \begin{macrocode}
+%<*X2cmdh>
+% Cyrillic Dunhill
+\DeclareFontFamily{X2}{cmdh}{}
+\EC@family{X2}{cmdh}{m}{n}{rxdh}
+%</X2cmdh>
+%
+%<*X2cmfib>
+\DeclareFontFamily{X2}{cmfib}{}
+\EC@family{X2}{cmfib}{m}{n}{rxfb}
+\EC@family{X2}{cmfib}{m}{sl}{rxfs}
+%</X2cmfib>
+%
+%<*X2cmfr>
+\DeclareFontFamily{X2}{cmfr}{}
+\EC@family{X2}{cmfr}{m}{n}{rxff}
+\EC@family{X2}{cmfr}{m}{it}{rxfi}
+%</X2cmfr>
+%
+%<*X2cmr>
+% Cyrillic Roman
+\DeclareFontFamily{X2}{cmr}{}
+%
+\EC@family{X2}{cmr}{m}{n}{rxrm}
+\EC@family{X2}{cmr}{m}{sl}{rxsl}
+\EC@family{X2}{cmr}{m}{it}{rxti}
+\EC@family{X2}{cmr}{m}{sc}{rxcc}
+\EC@family{X2}{cmr}{bx}{n}{rxbx}
+\EC@family{X2}{cmr}{b}{n}{rxrb}
+\EC@family{X2}{cmr}{bx}{it}{rxbi}
+\EC@family{X2}{cmr}{bx}{sl}{rxbl}
+\EC@family{X2}{cmr}{bx}{sc}{rxxc}
+\EC@family{X2}{cmr}{m}{ui}{rxui}
+%</X2cmr>
+%
+%<*X2cmss>
+% Cyrillic Sans Serif
+\DeclareFontFamily{X2}{cmss}{}
+%
+\EC@family{X2}{cmss}{m}{n}{rxss}
+\EC@family{X2}{cmss}{m}{sl}{rxsi}
+\EC@family{X2}{cmss}{m}{it}{rxsi}
+\EC@family{X2}{cmss}{bx}{n}{rxsx}
+\EC@family{X2}{cmss}{bx}{it}{rxso}
+\EC@family{X2}{cmss}{bx}{sl}{rxso}
+%
+\DeclareFontShape{X2}{cmss}{m}{sc}{<->sub*cmr/m/sc}{}
+% semibold condensed series:
+\DeclareFontShape{X2}{cmss}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>rxssdc10%
+}{}
+%</X2cmss>
+%
+%<*X2cmtt>
+% Cyrillic Typewriter
+\DeclareFontFamily{X2}{cmtt}{\hyphenchar\font\m@ne}
+%
+\EC@ttfamily{X2}{cmtt}{m}{n}{rxtt}
+\EC@ttfamily{X2}{cmtt}{m}{sl}{rxst}
+\EC@ttfamily{X2}{cmtt}{m}{it}{rxit}
+\EC@ttfamily{X2}{cmtt}{m}{sc}{rxtc}
+%
+\DeclareFontShape{X2}{cmtt}{bx}{n}%
+%<!nowarn> {<->sub*cmtt/m/n}{}
+%<nowarn> {<->ssub*cmtt/m/n}{}
+\DeclareFontShape{X2}{cmtt}{bx}{it}%
+%<!nowarn> {<->sub*cmtt/m/it}{}
+%<nowarn> {<->ssub*cmtt/m/it}{}
+%</X2cmtt>
+%
+%<*X2cmvtt>
+% Cyrillic Variable Typewriter
+\DeclareFontFamily{X2}{cmvtt}{}
+%
+\EC@ttfamily{X2}{cmvtt}{m}{n}{rxvt}
+\EC@ttfamily{X2}{cmvtt}{m}{it}{rxvi}
+%</X2cmvtt>
+% \end{macrocode}
+%
+% LH fonts for T2A encoding.
+%
+% \begin{macrocode}
+%<*T2Acmdh>
+% Cyrillic Dunhill
+\DeclareFontFamily{T2A}{cmdh}{}
+\EC@family{T2A}{cmdh}{m}{n}{ladh}
+%</T2Acmdh>
+%
+%<*T2Acmfib>
+\DeclareFontFamily{T2A}{cmfib}{}
+\EC@family{T2A}{cmfib}{m}{n}{lafb}
+\EC@family{T2A}{cmfib}{m}{sl}{lafs}
+%</T2Acmfib>
+%
+%<*T2Acmfr>
+\DeclareFontFamily{T2A}{cmfr}{}
+\EC@family{T2A}{cmfr}{m}{n}{laff}
+\EC@family{T2A}{cmfr}{m}{it}{lafi}
+%</T2Acmfr>
+%
+%<*T2Acmr>
+% Cyrillic Roman
+\DeclareFontFamily{T2A}{cmr}{}
+%
+\EC@family{T2A}{cmr}{m}{n}{larm}
+\EC@family{T2A}{cmr}{m}{sl}{lasl}
+\EC@family{T2A}{cmr}{m}{it}{lati}
+\EC@family{T2A}{cmr}{m}{sc}{lacc}
+\EC@family{T2A}{cmr}{bx}{n}{labx}
+\EC@family{T2A}{cmr}{b}{n}{larb}
+\EC@family{T2A}{cmr}{bx}{it}{labi}
+\EC@family{T2A}{cmr}{bx}{sl}{labl}
+\EC@family{T2A}{cmr}{bx}{sc}{laxc}
+\EC@family{T2A}{cmr}{m}{ui}{laui}
+%</T2Acmr>
+%
+%<*T2Acmss>
+% Cyrillic Sans Serif
+\DeclareFontFamily{T2A}{cmss}{}
+%
+\EC@family{T2A}{cmss}{m}{n}{lass}
+\EC@family{T2A}{cmss}{m}{sl}{lasi}
+\EC@family{T2A}{cmss}{m}{it}{lasi}
+\EC@family{T2A}{cmss}{bx}{n}{lasx}
+\EC@family{T2A}{cmss}{bx}{it}{laso}
+\EC@family{T2A}{cmss}{bx}{sl}{laso}
+%
+\DeclareFontShape{T2A}{cmss}{m}{sc}{<->sub*cmr/m/sc}{}
+% semibold condensed series:
+\DeclareFontShape{T2A}{cmss}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lassdc10%
+}{}
+%</T2Acmss>
+%
+%<*T2Acmtt>
+% Cyrillic Typewriter
+\DeclareFontFamily{T2A}{cmtt}{\hyphenchar\font\m@ne}
+%
+\EC@ttfamily{T2A}{cmtt}{m}{n}{latt}
+\EC@ttfamily{T2A}{cmtt}{m}{sl}{last}
+\EC@ttfamily{T2A}{cmtt}{m}{it}{lait}
+\EC@ttfamily{T2A}{cmtt}{m}{sc}{latc}
+%
+\DeclareFontShape{T2A}{cmtt}{bx}{n}%
+%<!nowarn> {<->sub*cmtt/m/n}{}
+%<nowarn> {<->ssub*cmtt/m/n}{}
+\DeclareFontShape{T2A}{cmtt}{bx}{it}%
+%<!nowarn> {<->sub*cmtt/m/it}{}
+%<nowarn> {<->ssub*cmtt/m/it}{}
+%</T2Acmtt>
+%
+%<*T2Acmvtt>
+% Cyrillic Variable Typewriter
+\DeclareFontFamily{T2A}{cmvtt}{}
+%
+\EC@ttfamily{T2A}{cmvtt}{m}{n}{lavt}
+\EC@ttfamily{T2A}{cmvtt}{m}{it}{lavi}
+%</T2Acmvtt>
+% \end{macrocode}
+%
+% LH fonts for T2B encoding.
+%
+% \begin{macrocode}
+%<*T2Bcmdh>
+% Cyrillic Dunhill
+\DeclareFontFamily{T2B}{cmdh}{}
+\EC@family{T2B}{cmdh}{m}{n}{lbdh}
+%</T2Bcmdh>
+%
+%<*T2Bcmfib>
+\DeclareFontFamily{T2B}{cmfib}{}
+\EC@family{T2B}{cmfib}{m}{n}{lbfb}
+\EC@family{T2B}{cmfib}{m}{sl}{lbfs}
+%</T2Bcmfib>
+%
+%<*T2Bcmfr>
+\DeclareFontFamily{T2B}{cmfr}{}
+\EC@family{T2B}{cmfr}{m}{n}{lbff}
+\EC@family{T2B}{cmfr}{m}{it}{lbfi}
+%</T2Bcmfr>
+%
+%<*T2Bcmr>
+% Cyrillic Roman
+\DeclareFontFamily{T2B}{cmr}{}
+%
+\EC@family{T2B}{cmr}{m}{n}{lbrm}
+\EC@family{T2B}{cmr}{m}{sl}{lbsl}
+\EC@family{T2B}{cmr}{m}{it}{lbti}
+\EC@family{T2B}{cmr}{m}{sc}{lbcc}
+\EC@family{T2B}{cmr}{bx}{n}{lbbx}
+\EC@family{T2B}{cmr}{b}{n}{lbrb}
+\EC@family{T2B}{cmr}{bx}{it}{lbbi}
+\EC@family{T2B}{cmr}{bx}{sl}{lbbl}
+\EC@family{T2B}{cmr}{bx}{sc}{lbxc}
+\EC@family{T2B}{cmr}{m}{ui}{lbui}
+%</T2Bcmr>
+%
+%<*T2Bcmss>
+% Cyrillic Sans Serif
+\DeclareFontFamily{T2B}{cmss}{}
+%
+\EC@family{T2B}{cmss}{m}{n}{lbss}
+\EC@family{T2B}{cmss}{m}{sl}{lbsi}
+\EC@family{T2B}{cmss}{m}{it}{lbsi}
+\EC@family{T2B}{cmss}{bx}{n}{lbsx}
+\EC@family{T2B}{cmss}{bx}{it}{lbso}
+\EC@family{T2B}{cmss}{bx}{sl}{lbso}
+%
+\DeclareFontShape{T2B}{cmss}{m}{sc}{<->sub*cmr/m/sc}{}
+% semibold condensed series:
+\DeclareFontShape{T2B}{cmss}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lbssdc10%
+}{}
+%</T2Bcmss>
+%
+%<*T2Bcmtt>
+% Cyrillic Typewriter
+\DeclareFontFamily{T2B}{cmtt}{\hyphenchar\font\m@ne}
+%
+\EC@ttfamily{T2B}{cmtt}{m}{n}{lbtt}
+\EC@ttfamily{T2B}{cmtt}{m}{sl}{lbst}
+\EC@ttfamily{T2B}{cmtt}{m}{it}{lbit}
+\EC@ttfamily{T2B}{cmtt}{m}{sc}{lbtc}
+%
+\DeclareFontShape{T2B}{cmtt}{bx}{n}%
+%<!nowarn> {<->sub*cmtt/m/n}{}
+%<nowarn> {<->ssub*cmtt/m/n}{}
+\DeclareFontShape{T2B}{cmtt}{bx}{it}%
+%<!nowarn> {<->sub*cmtt/m/it}{}
+%<nowarn> {<->ssub*cmtt/m/it}{}
+%</T2Bcmtt>
+%
+%<*T2Bcmvtt>
+% Cyrillic Variable Typewriter
+\DeclareFontFamily{T2B}{cmvtt}{}
+%
+\EC@ttfamily{T2B}{cmvtt}{m}{n}{lbvt}
+\EC@ttfamily{T2B}{cmvtt}{m}{it}{lbvi}
+%</T2Bcmvtt>
+% \end{macrocode}
+%
+% LH fonts for T2C encoding.
+%
+% \begin{macrocode}
+%<*T2Ccmdh>
+% Cyrillic Dunhill
+\DeclareFontFamily{T2C}{cmdh}{}
+\EC@family{T2C}{cmdh}{m}{n}{lcdh}
+%</T2Ccmdh>
+%
+%<*T2Ccmfib>
+\DeclareFontFamily{T2C}{cmfib}{}
+\EC@family{T2C}{cmfib}{m}{n}{lcfb}
+\EC@family{T2C}{cmfib}{m}{sl}{lcfs}
+%</T2Ccmfib>
+%
+%<*T2Ccmfr>
+\DeclareFontFamily{T2C}{cmfr}{}
+\EC@family{T2C}{cmfr}{m}{n}{lcff}
+\EC@family{T2C}{cmfr}{m}{it}{lcfi}
+%</T2Ccmfr>
+%
+%<*T2Ccmr>
+% Cyrillic Roman
+\DeclareFontFamily{T2C}{cmr}{}
+%
+\EC@family{T2C}{cmr}{m}{n}{lcrm}
+\EC@family{T2C}{cmr}{m}{sl}{lcsl}
+\EC@family{T2C}{cmr}{m}{it}{lcti}
+\EC@family{T2C}{cmr}{m}{sc}{lccc}
+\EC@family{T2C}{cmr}{bx}{n}{lcbx}
+\EC@family{T2C}{cmr}{b}{n}{lcrb}
+\EC@family{T2C}{cmr}{bx}{it}{lcbi}
+\EC@family{T2C}{cmr}{bx}{sl}{lcbl}
+\EC@family{T2C}{cmr}{bx}{sc}{lcxc}
+\EC@family{T2C}{cmr}{m}{ui}{lcui}
+%</T2Ccmr>
+%
+%<*T2Ccmss>
+% Cyrillic Sans Serif
+\DeclareFontFamily{T2C}{cmss}{}
+%
+\EC@family{T2C}{cmss}{m}{n}{lcss}
+\EC@family{T2C}{cmss}{m}{sl}{lcsi}
+\EC@family{T2C}{cmss}{m}{it}{lcsi}
+\EC@family{T2C}{cmss}{bx}{n}{lcsx}
+\EC@family{T2C}{cmss}{bx}{it}{lcso}
+\EC@family{T2C}{cmss}{bx}{sl}{lcso}
+%
+\DeclareFontShape{T2C}{cmss}{m}{sc}{<->sub*cmr/m/sc}{}
+% semibold condensed series:
+\DeclareFontShape{T2C}{cmss}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lcssdc10%
+}{}
+%</T2Ccmss>
+%
+%<*T2Ccmtt>
+% Cyrillic Typewriter
+\DeclareFontFamily{T2C}{cmtt}{\hyphenchar\font\m@ne}
+%
+\EC@ttfamily{T2C}{cmtt}{m}{n}{lctt}
+\EC@ttfamily{T2C}{cmtt}{m}{sl}{lcst}
+\EC@ttfamily{T2C}{cmtt}{m}{it}{lcit}
+\EC@ttfamily{T2C}{cmtt}{m}{sc}{lctc}
+%
+\DeclareFontShape{T2C}{cmtt}{bx}{n}%
+%<!nowarn> {<->sub*cmtt/m/n}{}
+%<nowarn> {<->ssub*cmtt/m/n}{}
+\DeclareFontShape{T2C}{cmtt}{bx}{it}%
+%<!nowarn> {<->sub*cmtt/m/it}{}
+%<nowarn> {<->ssub*cmtt/m/it}{}
+%</T2Ccmtt>
+%
+%<*T2Ccmvtt>
+% Cyrillic Variable Typewriter
+\DeclareFontFamily{T2C}{cmvtt}{}
+%
+\EC@ttfamily{T2C}{cmvtt}{m}{n}{lcvt}
+\EC@ttfamily{T2C}{cmvtt}{m}{it}{lcvi}
+%</T2Ccmvtt>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Sans}
+%
+% \begin{macrocode}
+%<*lcmss>
+%<X2>\DeclareFontFamily{X2}{lcmss}{}
+%<T2A>\DeclareFontFamily{T2A}{lcmss}{}
+%<T2B>\DeclareFontFamily{T2B}{lcmss}{}
+%<T2C>\DeclareFontFamily{T2C}{lcmss}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{m}{n}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{m}{n}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{m}{n}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{m}{n}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> rxlq8%
+%<T2A> lalq8%
+%<T2B> lblq8%
+%<T2C> lclq8%
+}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{m}{In}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{m}{In}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{m}{In}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{m}{In}{%
+ <7><8><10><12><13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> irxlq8%
+%<T2A> ilalq8%
+%<T2B> ilblq8%
+%<T2C> ilclq8%
+}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{m}{sl}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{m}{sl}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{m}{sl}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{m}{sl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> rxli8%
+%<T2A> lali8%
+%<T2B> lbli8%
+%<T2C> lcli8%
+}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{m}{Isl}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{m}{Isl}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{m}{Isl}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{m}{Isl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> irxli8%
+%<T2A> ilali8%
+%<T2B> ilbli8%
+%<T2C> ilcli8%
+}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{m}{it}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{m}{it}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{m}{it}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{m}{it}{%
+ <->sub*lcmss/m/sl}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{m}{Iit}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{m}{Iit}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{m}{Iit}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{m}{Iit}{%
+ <->sub*lcmss/m/Isl}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{bx}{n}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{bx}{n}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{bx}{n}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{bx}{n}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> rxlb8%
+%<T2A> lalb8%
+%<T2B> lblb8%
+%<T2C> lclb8%
+}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{bx}{In}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{bx}{In}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{bx}{In}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{bx}{In}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> irxlb8%
+%<T2A> ilalb8%
+%<T2B> ilblb8%
+%<T2C> ilclb8%
+}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{bx}{sl}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{bx}{sl}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{bx}{sl}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{bx}{sl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> rxlo8%
+%<T2A> lalo8%
+%<T2B> lblo8%
+%<T2C> lclo8%
+}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{bx}{Isl}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{bx}{Isl}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{bx}{Isl}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{bx}{Isl}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> irxlo8%
+%<T2A> ilalo8%
+%<T2B> ilblo8%
+%<T2C> ilclo8%
+}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{bx}{it}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{bx}{it}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{bx}{it}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{bx}{it}{%
+ <->sub*lcmss/bx/sl}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmss}{bx}{Iit}{%
+%<T2A>\DeclareFontShape{T2A}{lcmss}{bx}{Iit}{%
+%<T2B>\DeclareFontShape{T2B}{lcmss}{bx}{Iit}{%
+%<T2C>\DeclareFontShape{T2C}{lcmss}{bx}{Iit}{%
+ <->sub*lcmss/bx/Isl}{}
+%</lcmss>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter}
+%
+% \begin{macrocode}
+%<*lcmtt>
+%<X2>\DeclareFontFamily{X2}{lcmtt}{\hyphenchar\font\m@ne}
+%<T2A>\DeclareFontFamily{T2A}{lcmtt}{\hyphenchar\font\m@ne}
+%<T2B>\DeclareFontFamily{T2B}{lcmtt}{\hyphenchar\font\m@ne}
+%<T2C>\DeclareFontFamily{T2C}{lcmtt}{\hyphenchar\font\m@ne}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmtt}{m}{n}{%
+%<T2A>\DeclareFontShape{T2A}{lcmtt}{m}{n}{%
+%<T2B>\DeclareFontShape{T2B}{lcmtt}{m}{n}{%
+%<T2C>\DeclareFontShape{T2C}{lcmtt}{m}{n}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> rxltt8%
+%<T2A> laltt8%
+%<T2B> lbltt8%
+%<T2C> lcltt8%
+}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmtt}{m}{In}{%
+%<T2A>\DeclareFontShape{T2A}{lcmtt}{m}{In}{%
+%<T2B>\DeclareFontShape{T2B}{lcmtt}{m}{In}{%
+%<T2C>\DeclareFontShape{T2C}{lcmtt}{m}{In}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> irxltt8%
+%<T2A> ilaltt8%
+%<T2B> ilbltt8%
+%<T2C> ilcltt8%
+}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<X2>\DeclareFontShape{X2}{lcmtt}{m}{it}{%
+%<T2A>\DeclareFontShape{T2A}{lcmtt}{m}{it}{%
+%<T2B>\DeclareFontShape{T2B}{lcmtt}{m}{it}{%
+%<T2C>\DeclareFontShape{T2C}{lcmtt}{m}{it}{%
+ <13.82><16.59><19.907><23.89><28.66><34.4><41.28>%
+%<X2> rxit1000%
+%<T2A> lait1000%
+%<T2B> lbit1000%
+%<T2C> lcit1000%
+}{}
+%</lcmtt>
+% \end{macrocode}
+%
+% \section{Computer Modern Bright family}
+%
+% \subsection{Computer Modern Bright, T2A encoding}
+%
+% \begin{macrocode}
+%<*T2Acmbr>
+\DeclareFontFamily{T2A}{cmbr}{}
+\DeclareFontShape{T2A}{cmbr}{m}{n}{%
+ <5><6><7><8>labmr8%
+ <9>labmr9%
+ <10><10.95><12><14.4>labmr10%
+ <17.28><20.74><24.88><29.86><35.83>labmr17%
+}{}
+\DeclareFontShape{T2A}{cmbr}{m}{sl}{%
+ <5><6><7><8>labmo8%
+ <9>labmo9%
+ <10><10.95><12><14.4>labmo10%
+ <17.28><20.74><24.88><29.86><35.83>labmo17%
+}{}
+\DeclareFontShape{T2A}{cmbr}{m}{it}{<->ssub*cmbr/m/sl}{}
+\DeclareFontShape{T2A}{cmbr}{sb}{n}{%
+ <5><6><7><8>labsr8%
+ <9>labsr9%
+ <10><10.95><12><14.4>labsr10%
+ <17.28><20.74><24.88><29.86><35.83>labsr17%
+}{}
+\DeclareFontShape{T2A}{cmbr}{sb}{sl}{%
+ <5><6><7><8>labso8%
+ <9>labso9%
+ <10><10.95><12><14.4>labso10%
+ <17.28><20.74><24.88><29.86><35.83>labso17%
+}{}
+\DeclareFontShape{T2A}{cmbr}{sb}{it}{<->ssub*cmbr/sb/sl}{}
+\DeclareFontShape{T2A}{cmbr}{b}{n}{<->ssub*cmbr/bx/n}{}
+\DeclareFontShape{T2A}{cmbr}{bx}{n}{%
+ <-9>sub*cmbr/sb/n%
+ <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>labbx10%
+}{}
+%</T2Acmbr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Bright, T2B encoding}
+%
+% \begin{macrocode}
+%<*T2Bcmbr>
+\DeclareFontFamily{T2B}{cmbr}{}
+\DeclareFontShape{T2B}{cmbr}{m}{n}{%
+ <5><6><7><8>lbbmr8%
+ <9>lbbmr9%
+ <10><10.95><12><14.4>lbbmr10%
+ <17.28><20.74><24.88><29.86><35.83>lbbmr17%
+}{}
+\DeclareFontShape{T2B}{cmbr}{m}{sl}{%
+ <5><6><7><8>lbbmo8%
+ <9>lbbmo9%
+ <10><10.95><12><14.4>lbbmo10%
+ <17.28><20.74><24.88><29.86><35.83>lbbmo17%
+}{}
+\DeclareFontShape{T2B}{cmbr}{m}{it}{<->ssub*cmbr/m/sl}{}
+\DeclareFontShape{T2B}{cmbr}{sb}{n}{%
+ <5><6><7><8>lbbsr8%
+ <9>lbbsr9%
+ <10><10.95><12><14.4>lbbsr10%
+ <17.28><20.74><24.88><29.86><35.83>lbbsr17%
+}{}
+\DeclareFontShape{T2B}{cmbr}{sb}{sl}{%
+ <5><6><7><8>lbbso8%
+ <9>lbbso9%
+ <10><10.95><12><14.4>lbbso10%
+ <17.28><20.74><24.88><29.86><35.83>lbbso17%
+}{}
+\DeclareFontShape{T2B}{cmbr}{sb}{it}{<->ssub*cmbr/sb/sl}{}
+\DeclareFontShape{T2B}{cmbr}{b}{n}{<->ssub*cmbr/bx/n}{}
+\DeclareFontShape{T2B}{cmbr}{bx}{n}{%
+ <-9>sub*cmbr/sb/n%
+ <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>lbbbx10%
+}{}
+%</T2Bcmbr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Bright, T2C encoding}
+%
+% \begin{macrocode}
+%<*T2Ccmbr>
+\DeclareFontFamily{T2C}{cmbr}{}
+\DeclareFontShape{T2C}{cmbr}{m}{n}{%
+ <5><6><7><8>lcbmr8%
+ <9>lcbmr9%
+ <10><10.95><12><14.4>lcbmr10%
+ <17.28><20.74><24.88><29.86><35.83>lcbmr17%
+}{}
+\DeclareFontShape{T2C}{cmbr}{m}{sl}{%
+ <5><6><7><8>lcbmo8%
+ <9>lcbmo9%
+ <10><10.95><12><14.4>lcbmo10%
+ <17.28><20.74><24.88><29.86><35.83>lcbmo17%
+}{}
+\DeclareFontShape{T2C}{cmbr}{m}{it}{<->ssub*cmbr/m/sl}{}
+\DeclareFontShape{T2C}{cmbr}{sb}{n}{%
+ <5><6><7><8>lcbsr8%
+ <9>lcbsr9%
+ <10><10.95><12><14.4>lcbsr10%
+ <17.28><20.74><24.88><29.86><35.83>lcbsr17%
+}{}
+\DeclareFontShape{T2C}{cmbr}{sb}{sl}{%
+ <5><6><7><8>lcbso8%
+ <9>lcbso9%
+ <10><10.95><12><14.4>lcbso10%
+ <17.28><20.74><24.88><29.86><35.83>lcbso17%
+}{}
+\DeclareFontShape{T2C}{cmbr}{sb}{it}{<->ssub*cmbr/sb/sl}{}
+\DeclareFontShape{T2C}{cmbr}{b}{n}{<->ssub*cmbr/bx/n}{}
+\DeclareFontShape{T2C}{cmbr}{bx}{n}{%
+ <-9>sub*cmbr/sb/n%
+ <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>lcbbx10%
+}{}
+%</T2Ccmbr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Bright, X2 encoding}
+%
+% \begin{macrocode}
+%<*X2cmbr>
+\DeclareFontFamily{X2}{cmbr}{}
+\DeclareFontShape{X2}{cmbr}{m}{n}{%
+ <5><6><7><8>rxbmr8%
+ <9>rxbmr9%
+ <10><10.95><12><14.4>rxbmr10%
+ <17.28><20.74><24.88><29.86><35.83>rxbmr17%
+}{}
+\DeclareFontShape{X2}{cmbr}{m}{sl}{%
+ <5><6><7><8>rxbmo8%
+ <9>rxbmo9%
+ <10><10.95><12><14.4>rxbmo10%
+ <17.28><20.74><24.88><29.86><35.83>rxbmo17%
+}{}
+\DeclareFontShape{X2}{cmbr}{m}{it}{<->ssub*cmbr/m/sl}{}
+\DeclareFontShape{X2}{cmbr}{sb}{n}{%
+ <5><6><7><8>rxbsr8%
+ <9>rxbsr9%
+ <10><10.95><12><14.4>rxbsr10%
+ <17.28><20.74><24.88><29.86><35.83>rxbsr17%
+}{}
+\DeclareFontShape{X2}{cmbr}{sb}{sl}{%
+ <5><6><7><8>rxbso8%
+ <9>rxbso9%
+ <10><10.95><12><14.4>rxbso10%
+ <17.28><20.74><24.88><29.86><35.83>rxbso17%
+}{}
+\DeclareFontShape{X2}{cmbr}{sb}{it}{<->ssub*cmbr/sb/sl}{}
+\DeclareFontShape{X2}{cmbr}{b}{n}{<->ssub*cmbr/bx/n}{}
+\DeclareFontShape{X2}{cmbr}{bx}{n}{%
+ <-9>sub*cmbr/sb/n%
+ <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>rxbbx10%
+}{}
+%</X2cmbr>
+% \end{macrocode}
+%
+% \section{Computer Modern Typewriter Light family}
+%
+% \subsection{Computer Modern Typewriter Light, T2A encoding}
+%
+% \begin{macrocode}
+%<*T2Acmtl>
+\DeclareFontFamily{T2A}{cmtl}{\hyphenchar\font\m@ne}
+\DeclareFontShape{T2A}{cmtl}{m}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>labtl10%
+}{}
+\DeclareFontShape{T2A}{cmtl}{m}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>labto10%
+}{}
+\DeclareFontShape{T2A}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{}
+%</T2Acmtl>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter Light, T2B encoding}
+%
+% \begin{macrocode}
+%<*T2Bcmtl>
+\DeclareFontFamily{T2B}{cmtl}{\hyphenchar\font\m@ne}
+\DeclareFontShape{T2B}{cmtl}{m}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>lbbtl10%
+}{}
+\DeclareFontShape{T2B}{cmtl}{m}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>lbbto10%
+}{}
+\DeclareFontShape{T2B}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{}
+%</T2Bcmtl>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter Light, T2C encoding}
+%
+% \begin{macrocode}
+%<*T2Ccmtl>
+\DeclareFontFamily{T2C}{cmtl}{\hyphenchar\font\m@ne}
+\DeclareFontShape{T2C}{cmtl}{m}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>lcbtl10%
+}{}
+\DeclareFontShape{T2C}{cmtl}{m}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>lcbto10%
+}{}
+\DeclareFontShape{T2C}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{}
+%</T2Ccmtl>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Typewriter Light, X2 encoding}
+%
+% \begin{macrocode}
+%<*X2cmtl>
+\DeclareFontFamily{X2}{cmtl}{\hyphenchar\font\m@ne}
+\DeclareFontShape{X2}{cmtl}{m}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>rxbtl10%
+}{}
+\DeclareFontShape{X2}{cmtl}{m}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83>rxbto10%
+}{}
+\DeclareFontShape{X2}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{}
+%</X2cmtl>
+% \end{macrocode}
+%
+% \section{Computer Modern Concrete family}
+%
+% \subsection{Computer Modern Concrete, T2A encoding}
+%
+% \begin{macrocode}
+%<*T2Accr>
+\DeclareFontFamily{T2A}{ccr}{}
+\DeclareFontShape{T2A}{ccr}{m}{n}{%
+ <5><6><7><8><9><10>gen*laorm%
+ <10.95><12><14.4><17.28><20.74><24.88>laorm10%
+}{}
+\DeclareFontShape{T2A}{ccr}{m}{sl}{%
+ <5><6><7><8><9><10>gen*laosl%
+ <10.95><12><14.4><17.28><20.74><24.88>laosl10%
+}{}
+\DeclareFontShape{T2A}{ccr}{m}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>laoti10%
+}{}
+\DeclareFontShape{T2A}{ccr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>laocc10%
+}{}
+\DeclareFontShape{T2A}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/n%
+}{}
+\DeclareFontShape{T2A}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/sl%
+}{}
+\DeclareFontShape{T2A}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/it%
+}{}
+\DeclareFontShape{T2A}{ccr}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssubf*lassdc10%
+}{}
+%</T2Accr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Concrete, T2B encoding}
+%
+% \begin{macrocode}
+%<*T2Bccr>
+\DeclareFontFamily{T2B}{ccr}{}
+\DeclareFontShape{T2B}{ccr}{m}{n}{%
+ <5><6><7><8><9><10>gen*lborm%
+ <10.95><12><14.4><17.28><20.74><24.88>lborm10%
+}{}
+\DeclareFontShape{T2B}{ccr}{m}{sl}{%
+ <5><6><7><8><9><10>gen*lbosl%
+ <10.95><12><14.4><17.28><20.74><24.88>lbosl10%
+}{}
+\DeclareFontShape{T2B}{ccr}{m}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lboti10%
+}{}
+\DeclareFontShape{T2B}{ccr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lbocc10%
+}{}
+\DeclareFontShape{T2B}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/n%
+}{}
+\DeclareFontShape{T2B}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/sl%
+}{}
+\DeclareFontShape{T2B}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/it%
+}{}
+\DeclareFontShape{T2B}{ccr}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssubf*lbssdc10%
+}{}
+%</T2Bccr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Concrete, T2C encoding}
+%
+% \begin{macrocode}
+%<*T2Cccr>
+\DeclareFontFamily{T2C}{ccr}{}
+\DeclareFontShape{T2C}{ccr}{m}{n}{%
+ <5><6><7><8><9><10>gen*lcorm%
+ <10.95><12><14.4><17.28><20.74><24.88>lcorm10%
+}{}
+\DeclareFontShape{T2C}{ccr}{m}{sl}{%
+ <5><6><7><8><9><10>gen*lcosl%
+ <10.95><12><14.4><17.28><20.74><24.88>lcosl10%
+}{}
+\DeclareFontShape{T2C}{ccr}{m}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lcoti10%
+}{}
+\DeclareFontShape{T2C}{ccr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lcocc10%
+}{}
+\DeclareFontShape{T2C}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/n%
+}{}
+\DeclareFontShape{T2C}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/sl%
+}{}
+\DeclareFontShape{T2C}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/it%
+}{}
+\DeclareFontShape{T2C}{ccr}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssubf*lcssdc10%
+}{}
+%</T2Cccr>
+% \end{macrocode}
+%
+% \subsection{Computer Modern Concrete, X2 encoding}
+%
+% \begin{macrocode}
+%<*X2ccr>
+\DeclareFontFamily{X2}{ccr}{}
+\DeclareFontShape{X2}{ccr}{m}{n}{%
+ <5><6><7><8><9><10>gen*rxorm%
+ <10.95><12><14.4><17.28><20.74><24.88>rxorm10%
+}{}
+\DeclareFontShape{X2}{ccr}{m}{sl}{%
+ <5><6><7><8><9><10>gen*rxosl%
+ <10.95><12><14.4><17.28><20.74><24.88>rxosl10%
+}{}
+\DeclareFontShape{X2}{ccr}{m}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>rxoti10%
+}{}
+\DeclareFontShape{X2}{ccr}{m}{sc}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>rxocc10%
+}{}
+\DeclareFontShape{X2}{ccr}{bx}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/n%
+}{}
+\DeclareFontShape{X2}{ccr}{bx}{sl}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/sl%
+}{}
+\DeclareFontShape{X2}{ccr}{bx}{it}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssub*cmr/bx/it%
+}{}
+\DeclareFontShape{X2}{ccr}{sbc}{n}{%
+ <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>ssubf*rxssdc10%
+}{}
+%</X2ccr>
+% \end{macrocode}
+\endinput
diff --git a/macros/latex/required/cyrillic/t2lhfnt.pdf b/macros/latex/required/cyrillic/t2lhfnt.pdf
new file mode 100644
index 0000000000..88f3eb17e0
--- /dev/null
+++ b/macros/latex/required/cyrillic/t2lhfnt.pdf
Binary files differ