summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/public/montex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-09 23:38:21 +0000
committerKarl Berry <karl@freefriends.org>2006-01-09 23:38:21 +0000
commit215012a8d684889983ec2c0629e1c704e6853d9c (patch)
treeebf1271bd71869069824935ae8a5678745bf8bce /Master/texmf-dist/fonts/source/public/montex
parent1af3d19d6dbcbf309667d9cb4aa3cdda914914a9 (diff)
trunk/Master/texmf-dist/fonts/source
git-svn-id: svn://tug.org/texlive/trunk@101 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/montex')
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bcghsb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bcghsm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bcghwb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bcghwm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bcgvsb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bcgvsm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bcgvwb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bcgvwm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bicighb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bicighm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bicigvb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bicigvm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bthhsb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bthhsm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bthhwb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bthhwm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bthvsb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bthvsm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bthvwb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bthvwm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bxghsb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bxghsm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bxghwb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bxghwm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bxgvsb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bxgvsm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bxgvwb.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/bxgvwm.mf26
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/cyrmorec.mf132
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/cyrmorei.mf203
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/cyrmorel.mf75
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/cyrmoreu.mf83
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmb10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmbx10.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmbx12.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmbx5.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmbx6.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmbx7.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmbx8.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmbx9.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmbxsl10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmbxti10.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmcsc10.mf116
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmcsc8.mf122
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmcsc9.mf122
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmdunh10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmff10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmfi10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmfib8.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kminch.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmitt10.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmr10.mf82
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmr12.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmr17.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmr5.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmr6.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmr7.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmr8.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmr9.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmsl10.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmsl12.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmsl8.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmsl9.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmsltt10.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmss10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmss12.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmss17.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmss8.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmss9.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmssbx10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmssdc10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmssi10.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmssi12.mf82
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmssi17.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmssi8.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmssi9.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmssq8.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmssqi8.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmtcsc10.mf115
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmti10.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmti12.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmti7.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmti8.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmti9.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmtt10.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmtt12.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmtt8.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmtt9.mf81
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmu10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmvtt10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/kmvtti10.mf80
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/lmligs.mf38
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/macodes.mf160
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/maglyphs.mf660
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mantrlig.mf2606
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mbatoms.mf1334
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mbcodes.mf138
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mbglyphs.mf660
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mbligtbl.mf45
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mbnums.mf373
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mbparmb.mf108
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mbparmm.mf108
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mbparms.mf100
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mbpunc.mf244
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mcccscco.mf41
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mccoding.mf88
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mctextit.mf44
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mcyccsc.mf50
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mcyitall.mf691
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mcyrill.mf295
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mcyrl.mf1085
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mcyrligs.mf38
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mcyrsymb.mf171
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mcyru.mf1041
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mcytitle.mf39
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mlscodes.mf116
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mocodes.mf191
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/moglyphs.mf750
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/montrlig.mf2036
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mxcodes.mf237
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mxglyphs.mf2
-rw-r--r--Master/texmf-dist/fonts/source/public/montex/mxntrlig.mf131
122 files changed, 19750 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/montex/bcghsb.mf b/Master/texmf-dist/fonts/source/public/montex/bcghsb.mf
new file mode 100644
index 00000000000..afa2369dc96
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bcghsb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bcghsb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Horizontal Steel Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMO";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=true; % This is a Horizontal Font
+input mbparmb.mf; % Load Bold Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mocodes.mf; % Load Mongol Encoding Vectors
+input montrlig.mf; % Load Mongol Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end. \ No newline at end of file
diff --git a/Master/texmf-dist/fonts/source/public/montex/bcghsm.mf b/Master/texmf-dist/fonts/source/public/montex/bcghsm.mf
new file mode 100644
index 00000000000..4126f1fc4a3
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bcghsm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bcghsm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Horizontal Steel Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMO";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=true; % This is a Horizontal Font
+input mbparmm.mf; % Load Medium Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mocodes.mf; % Load Mongol Encoding Vectors
+input montrlig.mf; % Load Mongol Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end. \ No newline at end of file
diff --git a/Master/texmf-dist/fonts/source/public/montex/bcghwb.mf b/Master/texmf-dist/fonts/source/public/montex/bcghwb.mf
new file mode 100644
index 00000000000..0ca6e934409
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bcghwb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bcghwb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Horizontal Wood Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMO";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=true; % This is a Horizontal Font
+input mbparmb.mf; % Load Bold Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mocodes.mf; % Load Mongol Encoding Vectors
+input montrlig.mf; % Load Mongol Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end. \ No newline at end of file
diff --git a/Master/texmf-dist/fonts/source/public/montex/bcghwm.mf b/Master/texmf-dist/fonts/source/public/montex/bcghwm.mf
new file mode 100644
index 00000000000..0b3be606eda
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bcghwm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bcghwm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Horizontal Wood Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMO";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=true; % This is a Horizontal Font
+input mbparmm.mf; % Load Medium Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mocodes.mf; % Load Mongol Encoding Vectors
+input montrlig.mf; % Load Mongol Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end. \ No newline at end of file
diff --git a/Master/texmf-dist/fonts/source/public/montex/bcgvsb.mf b/Master/texmf-dist/fonts/source/public/montex/bcgvsb.mf
new file mode 100644
index 00000000000..a11cde4ecc7
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bcgvsb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bcgvsb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Vertical Steel Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMO";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=false; % This is a Vertical Font
+input mbparmb.mf; % Load Bold Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mocodes.mf; % Load Mongol Encoding Vectors
+input montrlig.mf; % Load Mongol Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end. \ No newline at end of file
diff --git a/Master/texmf-dist/fonts/source/public/montex/bcgvsm.mf b/Master/texmf-dist/fonts/source/public/montex/bcgvsm.mf
new file mode 100644
index 00000000000..f0ea62096cb
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bcgvsm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bcgvsm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Vertical Steel Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMO";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=false; % This is a Vertical Font
+input mbparmm.mf; % Load Medium Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mocodes.mf; % Load Mongol Encoding Vectors
+input montrlig.mf; % Load Mongol Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end. \ No newline at end of file
diff --git a/Master/texmf-dist/fonts/source/public/montex/bcgvwb.mf b/Master/texmf-dist/fonts/source/public/montex/bcgvwb.mf
new file mode 100644
index 00000000000..1d75e7eaee8
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bcgvwb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bcgvwb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Vertical Wood Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMO";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=false; % This is a Vertical Font
+input mbparmb.mf; % Load Bold Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mocodes.mf; % Load Mongol Encoding Vectors
+input montrlig.mf; % Load Mongol Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end. \ No newline at end of file
diff --git a/Master/texmf-dist/fonts/source/public/montex/bcgvwm.mf b/Master/texmf-dist/fonts/source/public/montex/bcgvwm.mf
new file mode 100644
index 00000000000..4420c696647
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bcgvwm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bcgvwm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Vertical Wood Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMO";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=false; % This is a Vertical Font
+input mbparmm.mf; % Load Medium Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mocodes.mf; % Load Mongol Encoding Vectors
+input montrlig.mf; % Load Mongol Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end. \ No newline at end of file
diff --git a/Master/texmf-dist/fonts/source/public/montex/bicighb.mf b/Master/texmf-dist/fonts/source/public/montex/bicighb.mf
new file mode 100644
index 00000000000..56ba050d926
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bicighb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bicighb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Horizontal Wood Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMB";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=true; % This is a Horizontal Font
+input mbparmb.mf; % Load Bold Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mlscodes.mf; % Load Mongol MLS Encoding Vectors
+input mbligtbl.mf; % Load Mongol Bicig Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bicighm.mf b/Master/texmf-dist/fonts/source/public/montex/bicighm.mf
new file mode 100644
index 00000000000..74dfb047117
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bicighm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bicighm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Horizontal Wood Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMB";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=true; % This is a Horizontal Font
+input mbparmm.mf; % Load Medium Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mlscodes.mf; % Load Mongol MLS Encoding Vectors
+input mbligtbl.mf; % Load Mongol Bicig Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bicigvb.mf b/Master/texmf-dist/fonts/source/public/montex/bicigvb.mf
new file mode 100644
index 00000000000..d23886000c7
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bicigvb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bicigvb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Horizontal Wood Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMB";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=false; % This is a Vertical Font
+input mbparmb.mf; % Load Bold Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mlscodes.mf; % Load Mongol MLS Encoding Vectors
+input mbligtbl.mf; % Load Mongol Bicig Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bicigvm.mf b/Master/texmf-dist/fonts/source/public/montex/bicigvm.mf
new file mode 100644
index 00000000000..2022ad451bb
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bicigvm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bicigvm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Script in Ligature Mode (Encoding: LMO)
+% Mongol Bicig Horizontal Wood Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Bicig";
+font_coding_scheme:= "LMB";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bicig; % Font: Mongol Bicig
+LR:=false; % This is a Vertical Font
+input mbparmm.mf; % Load Medium Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input mlscodes.mf; % Load Mongol MLS Encoding Vectors
+input mbligtbl.mf; % Load Mongol Bicig Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input moglyphs.mf; % And we build Mongol glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bthhsb.mf b/Master/texmf-dist/fonts/source/public/montex/bthhsb.mf
new file mode 100644
index 00000000000..e5f18384a95
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bthhsb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bthhsb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script in Ligature Mode (Encoding: LMA)
+% Manju Bithe Horizontal Steel Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Manju Bithe";
+font_coding_scheme:= "LMA";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Bithe; % Font: Manju Bithe
+LR:=true; % This is a Horizontal Font
+input mbparmb.mf; % Load Bold Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input macodes.mf; % Load Manju Encoding Vectors
+input mantrlig.mf; % Load Manju Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input maglyphs.mf; % And we build Manju glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bthhsm.mf b/Master/texmf-dist/fonts/source/public/montex/bthhsm.mf
new file mode 100644
index 00000000000..6c9f0a45beb
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bthhsm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bthhsm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script in Ligature Mode (Encoding: LMA)
+% Manju Bithe Horizontal Steel Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Manju Bithe";
+font_coding_scheme:= "LMA";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Bithe; % Font: Manju Bithe
+LR:=true; % This is a Horizontal Font
+input mbparmm.mf; % Load Medium Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input macodes.mf; % Load Manju Encoding Vectors
+input mantrlig.mf; % Load Manju Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input maglyphs.mf; % And we build Manju glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bthhwb.mf b/Master/texmf-dist/fonts/source/public/montex/bthhwb.mf
new file mode 100644
index 00000000000..355646faeb7
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bthhwb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bthhwb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script in Ligature Mode (Encoding: LMA)
+% Manju Bithe Horizontal Wood Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Manju Bithe";
+font_coding_scheme:= "LMA";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bithe; % Font: Manju Bithe
+LR:=true; % This is a Horizontal Font
+input mbparmb.mf; % Load Bold Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input macodes.mf; % Load Manju Encoding Vectors
+input mantrlig.mf; % Load Manju Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input maglyphs.mf; % And we build Manju glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bthhwm.mf b/Master/texmf-dist/fonts/source/public/montex/bthhwm.mf
new file mode 100644
index 00000000000..5e924d73ef9
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bthhwm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bthhwm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script in Ligature Mode (Encoding: LMA)
+% Manju Bithe Horizontal Wood Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Manju Bithe";
+font_coding_scheme:= "LMA";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bithe; % Font: Manju Bithe
+LR:=true; % This is a Horizontal Font
+input mbparmm.mf; % Load Medium Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input macodes.mf; % Load Manju Encoding Vectors
+input mantrlig.mf; % Load Manju Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input maglyphs.mf; % And we build Manju glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bthvsb.mf b/Master/texmf-dist/fonts/source/public/montex/bthvsb.mf
new file mode 100644
index 00000000000..7626e656f80
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bthvsb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bthvsb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script in Ligature Mode (Encoding: LMA)
+% Manju Bithe Vertical Steel Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Manju Bithe";
+font_coding_scheme:= "LMA";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Bithe; % Font: Manju Bithe
+LR:=false; % This is a Vertical Font
+input mbparmb.mf; % Load Bold Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input macodes.mf; % Load Manju Encoding Vectors
+input mantrlig.mf; % Load Manju Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input maglyphs.mf; % And we build Manju glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bthvsm.mf b/Master/texmf-dist/fonts/source/public/montex/bthvsm.mf
new file mode 100644
index 00000000000..a9b646ce28a
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bthvsm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bthvsm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script in Ligature Mode (Encoding: LMA)
+% Manju Bithe Vertical Steel Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Manju Bithe";
+font_coding_scheme:= "LMA";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Bithe; % Font: Manju Bithe
+LR:=false; % This is a Vertical Font
+input mbparmm.mf; % Load Medium Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input macodes.mf; % Load Manju Encoding Vectors
+input mantrlig.mf; % Load Manju Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input maglyphs.mf; % And we build Manju glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bthvwb.mf b/Master/texmf-dist/fonts/source/public/montex/bthvwb.mf
new file mode 100644
index 00000000000..23b577ff3d1
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bthvwb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bthvwb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script in Ligature Mode (Encoding: LMA)
+% Manju Bithe Vertical Wood Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Manju Bithe";
+font_coding_scheme:= "LMA";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bithe; % Font: Manju Bithe
+LR:=false; % This is a Vertical Font
+input mbparmb.mf; % Load Bold Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input macodes.mf; % Load Manju Encoding Vectors
+input mantrlig.mf; % Load Manju Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input maglyphs.mf; % And we build Manju glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bthvwm.mf b/Master/texmf-dist/fonts/source/public/montex/bthvwm.mf
new file mode 100644
index 00000000000..f2ed4b5cbef
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bthvwm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bthvwm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script in Ligature Mode (Encoding: LMA)
+% Manju Bithe Vertical Wood Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Manju Bithe";
+font_coding_scheme:= "LMA";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Bithe; % Font: Manju Bithe
+LR:=false; % This is a Vertical Font
+input mbparmm.mf; % Load Medium Weight Parameters
+input mbcodes.mf; % Load Common Encoding Vectors
+input macodes.mf; % Load Manju Encoding Vectors
+input mantrlig.mf; % Load Manju Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input maglyphs.mf; % And we build Manju glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bxghsb.mf b/Master/texmf-dist/fonts/source/public/montex/bxghsb.mf
new file mode 100644
index 00000000000..7af82c9aff6
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bxghsb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bxghsb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Glyph Script in Ligature Mode (Encoding: LMX)
+% Mongol Glyph Container Horizontal Steel Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Glyph Container";
+font_coding_scheme:= "LMX";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Container; % Font: Mongol Glyph Container
+LR:=true; % This is a Horizontal Font
+input mbparmb.mf; % Load Bold Weight Parameters
+% input mbcodes.mf; % Load Common Encoding Vectors
+input mxcodes.mf; % Load Mongol Glyph Encoding Vectors
+input mxntrlig.mf; % Load Mongol Glyph Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input mxglyphs.mf; % And we build Mongolian and all derived glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bxghsm.mf b/Master/texmf-dist/fonts/source/public/montex/bxghsm.mf
new file mode 100644
index 00000000000..346014e491d
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bxghsm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bxghsm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Glyph Script in Ligature Mode (Encoding: LMX)
+% Mongol Glyph Container Horizontal Steel Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Glyph Container";
+font_coding_scheme:= "LMX";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Container; % Font: Mongol Glyph Container
+LR:=true; % This is a Horizontal Font
+input mbparmm.mf; % Load Medium Weight Parameters
+% input mbcodes.mf; % Load Common Encoding Vectors
+input mxcodes.mf; % Load Mongol Glyph Encoding Vectors
+input mxntrlig.mf; % Load Mongol Glyph Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input mxglyphs.mf; % And we build Mongolian and all derived glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bxghwb.mf b/Master/texmf-dist/fonts/source/public/montex/bxghwb.mf
new file mode 100644
index 00000000000..02de3821c68
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bxghwb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bxghwb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Glyph Script in Ligature Mode (Encoding: LMX)
+% Mongol Glyph Container Horizontal Wood Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Glyph Container";
+font_coding_scheme:= "LMX";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Container; % Font: Mongol Glyph Container
+LR:=true; % This is a Horizontal Font
+input mbparmb.mf; % Load Bold Weight Parameters
+% input mbcodes.mf; % Load Common Encoding Vectors
+input mxcodes.mf; % Load Mongol Glyph Encoding Vectors
+input mxntrlig.mf; % Load Mongol Glyph Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input mxglyphs.mf; % And we build Mongolian and all derived glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bxghwm.mf b/Master/texmf-dist/fonts/source/public/montex/bxghwm.mf
new file mode 100644
index 00000000000..bef4161108d
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bxghwm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bxghwm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Glyph Script in Ligature Mode (Encoding: LMX)
+% Mongol Glyph Container Horizontal Wood Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Glyph Container";
+font_coding_scheme:= "LMX";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Container; % Font: Mongol Glyph Container
+LR:=true; % This is a Horizontal Font
+input mbparmm.mf; % Load Medium Weight Parameters
+% input mbcodes.mf; % Load Common Encoding Vectors
+input mxcodes.mf; % Load Mongol Glyph Encoding Vectors
+input mxntrlig.mf; % Load Mongol Glyph Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input mxglyphs.mf; % And we build Mongolian and all derived glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bxgvsb.mf b/Master/texmf-dist/fonts/source/public/montex/bxgvsb.mf
new file mode 100644
index 00000000000..298326e98d4
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bxgvsb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bxgvsb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Glyph Script in Ligature Mode (Encoding: LMX)
+% Mongol Glyph Container Vertical Steel Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Glyph Container";
+font_coding_scheme:= "LMX";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Container; % Font: Mongol Glyph Container
+LR:=false; % This is a Vertical Font
+input mbparmb.mf; % Load Bold Weight Parameters
+% input mbcodes.mf; % Load Common Encoding Vectors
+input mxcodes.mf; % Load Mongol Glyph Encoding Vectors
+input mxntrlig.mf; % Load Mongol Glyph Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input mxglyphs.mf; % And we build Mongolian and all derived glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bxgvsm.mf b/Master/texmf-dist/fonts/source/public/montex/bxgvsm.mf
new file mode 100644
index 00000000000..b1a5d5cc8e8
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bxgvsm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bxgvsm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Glyph Script in Ligature Mode (Encoding: LMX)
+% Mongol Glyph Container Vertical Steel Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Glyph Container";
+font_coding_scheme:= "LMX";
+input mbatoms.mf; % Load Atoms
+style:=steel; % Defines titem and suul shapes, etc.
+writing:=Container; % Font: Mongol Glyph Container
+LR:=false; % This is a Vertical Font
+input mbparmm.mf; % Load Medium Weight Parameters
+% input mbcodes.mf; % Load Common Encoding Vectors
+input mxcodes.mf; % Load Mongol Glyph Encoding Vectors
+input mxntrlig.mf; % Load Mongol Glyph Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input mxglyphs.mf; % And we build Mongolian and all derived glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bxgvwb.mf b/Master/texmf-dist/fonts/source/public/montex/bxgvwb.mf
new file mode 100644
index 00000000000..7d4b1c5d163
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bxgvwb.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bxgvwb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Glyph Script in Ligature Mode (Encoding: LMX)
+% Mongol Glyph Container Vertical Wood Bold Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Glyph Container";
+font_coding_scheme:= "LMX";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Container; % Font: Mongol Glyph Container
+LR:=false; % This is a Vertical Font
+input mbparmb.mf; % Load Bold Weight Parameters
+% input mbcodes.mf; % Load Common Encoding Vectors
+input mxcodes.mf; % Load Mongol Glyph Encoding Vectors
+input mxntrlig.mf; % Load Mongol Glyph Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input mxglyphs.mf; % And we build Mongolian and all derived glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/bxgvwm.mf b/Master/texmf-dist/fonts/source/public/montex/bxgvwm.mf
new file mode 100644
index 00000000000..56177620bf4
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/bxgvwm.mf
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: bxgvwm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongol Glyph Script in Ligature Mode (Encoding: LMX)
+% Mongol Glyph Container Vertical Wood Medium Font Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_identifier:= "TeX Mongol Glyph Container";
+font_coding_scheme:= "LMX";
+input mbatoms.mf; % Load Atoms
+style:=wood; % Defines titem and suul shapes, etc.
+writing:=Container; % Font: Mongol Glyph Container
+LR:=false; % This is a Vertical Font
+input mbparmm.mf; % Load Medium Weight Parameters
+% input mbcodes.mf; % Load Common Encoding Vectors
+input mxcodes.mf; % Load Mongol Glyph Encoding Vectors
+input mxntrlig.mf; % Load Mongol Glyph Transliteration Ligatures
+input mbpunc.mf; % Oh yes, we build punctuation
+input mbnums.mf; % Oh yes, we build digits
+input mbglyphs.mf; % Oh yes, we build common glyphs
+input mxglyphs.mf; % And we build Mongolian and all derived glyphs
+end.
diff --git a/Master/texmf-dist/fonts/source/public/montex/cyrmorec.mf b/Master/texmf-dist/fonts/source/public/montex/cyrmorec.mf
new file mode 100644
index 00000000000..3d650de9e34
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/cyrmorec.mf
@@ -0,0 +1,132 @@
+% File: cyrmorec.mf
+% Based on: jkbashc.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+ %jkbashc.mf by Joerg Knappen, bitnet: knappen@dmznat51
+ % Version: 8. June 1990
+ % Bashkirian letters with common shapes for upper and lower case
+
+cmchar "The bashkirian letter crossed Ge (looking like F)";
+beginchar(oct"200",11.5u#-width_adj#,cap_height#,0);
+italcorr cap_height#*slant-beak_jut#-.25u#;
+adjust_fit(cap_serif_fit#,0);
+h:=vround(h-stem_corr);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+pickup crisp.nib; pos3(slab,90); pos4(hair,0);
+top y3r=h; x3=x1; rt x4r=hround(w-.75u); y4=good.y(y3l-beak)-eps;
+arm(3,4,e,beak_darkness,beak_jut); % upper arm and beak
+pos5(cap_bar,-90); pos6(hair,0);
+top y5l=vround(.5[y2,y1]+.5cap_bar); x5=x1;
+pos0(cap_bar,90); pos7(hair,0);
+z0=z5; x6=x7; y6-y5l=y0l-y7;
+if serifs: rt x6r=hround(w-4u+.5hair); y6=good.y(y5l+.6beak)+eps;
+ rt x9r=hround(w-.5u);
+else: rt x6r=hround(w-1.5u); y6=y5l+eps; rt x9r=hround(w-.75u); fi
+arm(5,6,f,beak_darkness,0); arm(0,7,g,beak_darkness,0); % middle arm and serif
+if serifs: nodish_serif(1,2,a,1/3,cap_jut,b,1/3,.5cap_jut); % upper serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,1.25cap_jut); fi % lower serif
+math_fit(0,ic#-2.5u#); penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The Bashkirian letter variant KA";
+beginchar(oct"201",12u#,cap_height#,0);
+italcorr cap_height#*slant-.5u#;
+adjust_fit(if serifs: 4 else: 2 fi u#,.25u#);
+pickup tiny.nib; pos1(fudged.cap_stem,0); pos2(fudged.cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5fudged.cap_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+if serifs: dish_serif(1,2,a,1/3,cap_jut,b,1/3,cap_jut); % upper stem serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,cap_jut); % lower stem serif
+ pickup fine.nib; pos3(vair,90); x3=x1; y3=.55h; z3'=z3; pos3'(varwid,90);
+ pos4(varwid,90); x4=w-.75flare-.125u; top y4r=h+oo; %original x4=w-2u
+ x41=x4; y41=y3'; x42=x4-2u; y42=y4;
+ filldraw stroke z3'e..controls z41 and z42..z4e; % upper diagonal
+ pos5(hair,0); pos6(flare,0);
+rt x5r=hround(w-.125u); y5+.5flare=vround(top y4r-hair)+1;%original bot y4l-.03h
+ top y4'r=top y4r; x4'=x4; pos4'(hair,90);
+ bulb(4',5,6); % bulb
+ pos7(stem,0); pos8(varwid,90); pos9(hair,180);
+ x9+.5hair=hround(w+.5hair-eps); y9=1/3x_height;
+ lft x7l=hround(w-2.75u-.5stem); y7=1/2y3; x8=w-1.2u; bot y8l=-oo;
+ filldraw stroke z3e{right}...z7e{down}
+ ...z8e{right}...{up}z9e; % lower diagonal
+else:
+ numeric right_jut,stem[],alpha[];
+ right_jut=.4tiny;
+ pickup tiny.nib;
+ stem2=max(tiny.breadth,fudged.cap_stem-3stem_corr);
+ stem1=max(tiny.breadth,fudged.hair if hefty:-3stem_corr fi);
+ top y3=h; rt x3r=hround(r-letter_fit-u-right_jut);
+ bot y6=0; rt x6r=hround(r-letter_fit-.75u-right_jut);
+ x4=x1; y4=1/3h;
+ alpha1=diag_ratio(1,.5(stem1-tiny),y3-y4,x3r-x4);
+ penpos3(alpha1*(stem1-tiny),0); penpos4(whatever,-90);
+ alpha2=diag_ratio(1,.5(stem2-tiny),y1-y6,x6r-x1);
+ penpos6(alpha2*(stem2-tiny),0);
+ forsuffixes $=l,r: y3'$=h; y6'$=0; z4$=z3'$+whatever*(z3-z4);
+ z5$=z6'$+whatever*(z1-z6)=whatever[z3,z4]; endfor
+ z5=.5[z5l,z5r];
+ z3'r=z3r+penoffset z3-z4 of currentpen+whatever*(z3-z4);
+ z6'r=z6r+penoffset z1-z6 of currentpen+whatever*(z1-z6);
+ z6'l=z6l+penoffset z6-z1 of currentpen+whatever*(z1-z6);
+ fill z4r--diag_end(4r,3'r,1,.5,3'l,4l)--z4l--cycle; % upper diagonal
+ fill z5l--diag_end(5l,6'l,.5,1,6'r,5r)--z5r--cycle; % lower diagonal
+fi
+pickup crisp.nib;
+top y55r=h; x55=x1; pos55(slab,90); pos56(hair,180);
+ x56=x1-if serifs: 6 else: 3 fi u;
+y56=good.y(y55l-beak)-eps;
+arm(55,56,q,beak_darkness**.8,-.4beak_jut);
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6); endchar;
+
+cmchar "The Bashkirian letter variant EN (looks like H with leg)";
+beginchar(oct"202",13u#+width_adj#,cap_height#,0);
+italcorr cap_height#*slant-cap_serif_fit#+cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+pos3(cap_stem,0); pos4(cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem); x3=x4=w-x1;
+top y1=top y3=h; bot y2=bot y4=0;
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+penpos5(cap_bar,90); penpos6(cap_bar,90);
+x5=x1; x6=x3; y5=y6=.52h;
+fill stroke z5e--z6e; % bar
+if serifs: numeric inner_jut;
+ if rt x1r+cap_jut+.5u+1<=lft x3l-cap_jut: inner_jut=cap_jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3,cap_jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,inner_jut); % lower left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,cap_jut); % upper right serif
+ r_cyr_serif(4,3,g,1/3,inner_jut,h,1/3,cap_jut); % lower right serif
+else:
+ lcyrsanserif(4); lft x2'= lft x2l; bot y2'l=0; pos2'(slab,90);
+ rt x4'=rt x4r; y4'=y2'; pos4'(slab,90); filldraw stroke z2'e--z4'e;
+fi
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6); endchar;
+
+
+cmchar "The Bashkirian letter flipped e";
+beginchar(oct"206",14u#-width_adj#,cap_height#,0);
+italcorr .7cap_height#*slant-.5u#;
+adjust_fit(0,0);
+penpos1(vair',90); penpos3(vround(vair+1.5vair_corr),-90);
+penpos2(cap_curve,180); penpos4(cap_curve,0);
+if monospace: x2r=hround 1.5u;
+ interim superness:=sqrt superness; % make |"O"|, not |"0"|
+else: x2r=hround u; fi
+x4r=w-x2r; x1=x3=.5w; y1r=h+o; y3r=-o;
+y2=y4=.5h-vair_corr; y2l:=y4l:=.52h;
+penstroke pulled_super_arc.e(1,2)(.5superpull)
+ & pulled_super_arc.e(2,3)(.5superpull)
+ & pulled_super_arc.e(3,4)(.5superpull)
+ & pulled_super_arc.e(4,1)(.5superpull) & cycle; % bowl %now we have an O
+y9r-y9l=y10r-y10l=cap_band; x9r=x9l=x2; x10r=x10l=x4; y9r=y10r=top y2;
+penstroke z9e--z10e; % bar
+bot y6=bot y7=top y9r; top y5=top y8=min(.675h,bot y1l-eps);
+lft x6=lft x5=0; rt x7=rt x8=.5w;
+unfill z5--z6--z7--z8--cycle; cullit; % erase extra arc
+math_fit(-.3cap_height#*slant-.5u#,ic#-.5u#); penlabels(1,2,3,4); endchar;
+ \endinput
diff --git a/Master/texmf-dist/fonts/source/public/montex/cyrmorei.mf b/Master/texmf-dist/fonts/source/public/montex/cyrmorei.mf
new file mode 100644
index 00000000000..dea899d7dcf
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/cyrmorei.mf
@@ -0,0 +1,203 @@
+% File: cyrmorei.mf
+% Based on: jkbashi.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+ % jkbashi.mf by Joerg Knappen, Bitnet: knappen@dmznat51
+ % Version 14. June 1990
+ % Bashkirian special letters, lowercase italics
+ % Additional information at the end of this file
+
+% cmchar "Italic Bashkirian letter ghe-barred";
+% beginchar(oct"210",7u#,x_height#,0);
+% italcorr max(1/3x_height#*slant+.5hair#+.5u#,h#*slant+.5flare#-2u#);
+% adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
+% x0=0; x5=w; x2=.5w+1.5u; x3=.5w-1.5u;
+% hook_in(0,1,2)(skewed); hook_out(3,4,5)(skewed); % hooks
+% filldraw stroke z2e{down}...{down}z3e; % stem
+% pickup crisp.nib;
+% top y6r=top y7r=bar_height;lft x6=lft x0;rt x7=rt x5;
+% pos6(bar,90); pos7(bar,90);
+% filldraw stroke z6e--z7e; % bar
+% penlabels(0,1,2,3,4,5,6,7); endchar;
+%
+% cmchar "Italic Bashkirian letter variant ka";
+% beginchar(oct"211",8u#,x_height#,0);
+% italcorr x_height#*slant-.5u#;
+% adjust_fit(u#,.25u#);
+% pickup tiny.nib; pos1(fudged.stem,0); pos2(fudged.stem,0);
+% lft x1l=lft x2l=hround max(1.3u,2u-.5fudged.stem); top y1=h; bot y2=0;
+% filldraw stroke z1e--z2e; % stem
+% if serifs: dish_serif(1,2,a,1/3,jut,b,1/3,jut); % upper stem serif
+% dish_serif(2,1,c,1/3,jut,d,1/3,jut); % lower stem serif
+% pickup fine.nib; pos3(vair,90); x3=x1; y3=.55h; z3'=z3; pos3'(varwid,90);
+% pos4(varwid,90); x4=w-.75flare-.08u; top y4r=h+oo; %original x4=w-2u
+% x41=x4; y41=y3'; x42=x4-2u; y42=y4;
+% filldraw stroke z3'e..controls z41 and z42..z4e; % upper diagonal
+% pos5(hair,0); pos6(flare,0);
+% rt x5r=hround(w-.08u); y5+.5flare=vround(top y4r-hair)+1;%original bot y4l-.03h
+% top y4'r=top y4r; x4'=x4; pos4'(hair,90);
+% bulb(4',5,6); % bulb
+% pos7(stem,0); pos8(varwid,90); pos9(hair,180);
+% x9+.5hair=hround(w+.5hair-eps); y9=1/3x_height;
+% lft x7l=hround(w-1.8u-.5stem); y7=1/2y3; x8=w-.8u; bot y8l=-oo;
+% filldraw stroke z3e{right}...z7e{down}
+% ...z8e{right}...{up}z9e; % lower diagonal
+% else:
+% numeric right_jut,stem[],alpha[];
+% right_jut=.4tiny;
+% pickup tiny.nib;
+% stem2=max(tiny.breadth,fudged.stem-3stem_corr);
+% stem1=max(tiny.breadth,fudged.hair if hefty:-3stem_corr fi);
+% top y3=h; rt x3r=hround(r-letter_fit-.67u-right_jut);
+% bot y6=0; rt x6r=hround(r-letter_fit-.5u-right_jut);
+% x4=x1; y4=1/3h;
+% alpha1=diag_ratio(1,.5(stem1-tiny),y3-y4,x3r-x4);
+% penpos3(alpha1*(stem1-tiny),0); penpos4(whatever,-90);
+% alpha2=diag_ratio(1,.5(stem2-tiny),y1-y6,x6r-x1);
+% penpos6(alpha2*(stem2-tiny),0);
+% forsuffixes $=l,r: y3'$=h; y6'$=0; z4$=z3'$+whatever*(z3-z4);
+% z5$=z6'$+whatever*(z1-z6)=whatever[z3,z4]; endfor
+% z5=.5[z5l,z5r];
+% z3'r=z3r+penoffset z3-z4 of currentpen+whatever*(z3-z4);
+% z6'r=z6r+penoffset z1-z6 of currentpen+whatever*(z1-z6);
+% z6'l=z6l+penoffset z6-z1 of currentpen+whatever*(z1-z6);
+% fill z4r--diag_end(4r,3'r,1,.5,3'l,4l)--z4l--cycle; % upper diagonal
+% fill z5l--diag_end(5l,6'l,.5,1,6'r,5r)--z5r--cycle; % lower diagonal
+% fi
+% pickup crisp.nib;
+% top y55r=h; x55=x1; pos55(slab,90); pos56(hair,180);
+% x56=x1-if serifs: 4 else: 2 fi u;
+% y56=good.y(y55l-beak)-eps;
+% arm(55,56,q,beak_darkness**.8,-.4beak_jut);
+% math_fit(0,.5ic#); penlabels(1,2,3,4,5,6); endchar;
+%
+%
+% cmchar "Italic Bashkirian letter variant en";
+% beginchar(oct"212",10u#,x_height#,desc_depth#);
+% italcorr 1/3x_height#*slant+.5hair#+.5u#;
+% adjust_fit(0,.25u#); pickup fine.nib;
+% x0=0; x2=x3; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+% hook_in(0,1,2); % opening hook
+% y3-.5stem=-oo; z2'=z2; pos2'(stem,-180);
+% filldraw circ_stroke z3e--z2'e; %left stem
+% x10=x3l; y10=y11=.55h; pos10(hair,90); pos11(hair,90);
+% pos6(stem,0); rt x6r=hround(w-2.5u+.5stem); y6+.5stem=h;
+% x7=x6; x9=w; hook_out(7,8,9); %closing hook
+% z7'=z7; pos7'(stem,0);
+% filldraw circ_stroke z6e--z7'e; x11=x6l; % right stem
+% filldraw stroke z10e{1,1}...{1,1}z11e; % bar
+% pickup crisp.nib;
+% y30=0; x30=x8-.1u; y32=-d; x32=x8-.75u; z31=.5[z30,z32];
+% pos30(hair,90); pos31(1.25stem,135);
+% filldraw stroke z8{down}...z30e...z31e--z32; % descender
+% endchar;
+%
+cmchar "Italic Bashkirian letter o-umlaut";
+beginchar(cyrotld,9u#,x_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(curve,360);
+x1=x3=.5w; lft x2r=hround(1.5u-.5curve); x4=w-x2;
+top y1r=h+oo; y2=y4=.5[y1,y3]; bot y3r=-oo;
+filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl
+z90=z2l; x91=x4l; y91=y90; pos90(bar,90); pos91(bar,90);
+if serifs: z92=.5[z90,z91]; pos92(if serifs: 2.5 fi bar,90);
+ filldraw stroke z90e{1,1}..{1,-1}z92e..{1,1}z91e; % tilde-like bar
+else: filldraw stroke z90e--z91e; fi % bar
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(1,2,3,4); endchar;
+
+%
+% Sorry, the gamma is not acceptable in this context! OC, UB 1997
+%
+% cmchar "The italic Bashkirian letter u-umlaut"; % I put the gamma in here
+% beginchar(cyry,10u#,x_height#,desc_depth#);
+% italcorr x_height#*slant-.5u#;
+% adjust_fit(0,0); pickup fine.nib;
+% pos1(hair,180); pos2(vstem+dw,90);
+% pos4(hair,0); pos5(vair,-90); pos6(hair,-180); pos7(hair,-180);
+% bot y1=.5772156649h; top y2r=h+oo; y4=y6=-.5d;
+% bot y5r=-d-o; top y7=h;
+% lft x1r=hround(.5u-.5hair); x2=3u; rt x4r=hround(w-2u); x5=.5[x4,x6];
+% rt x4r-lft x6r=hround 1/3[hair,stem]+eps; rt x7l=hround(w-u);
+% if x4l<x6l: x4l:=x6l:=x5; fi
+% pos3(hair,angle(z4-z2)+90); x3=superness[x2,x4]; y3=superness[y4,y2];
+% filldraw stroke z1e{up}...z2e{right}...z3e{z4-z2}
+% ...z4e{down}...{left}z5e; % arc
+% filldraw stroke z5e{left}...z6e{up}..{2(x7-x6),y7-y6}z7e; % stem
+% math_fit(-.5772156649x_height#*slant,ic#-u#);
+% penlabels(1,2,3,4,5,6,7); endchar;
+
+cmchar "The italic Bashkirian letter u-umlaut"; %
+beginchar(cyry,8.5u#,x_height#,desc_depth#);
+italcorr x_height#*slant+.5stem#-u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+hook_in(0,1,2)(skewed); % opening hook
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-1.5u+.5stem);
+pos7(stem,0); pos8(vair,-90);
+y3=.7[y4,y5]; bot y4r=-oo; y5=.37h; y6+.5stem=h;
+bot y7=-d; bot y8r=-d-oo; x5=x6=x7; x8=.5w;
+filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+filldraw circ_stroke z6e---z7e; % right stem and link
+sloped_serif.r(7,2,a,1/3,jut,serif_drop); % serif
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#-1/3x_height#*slant);
+penlabels(0,1,2,3,4,5,6,7,8,9,10);
+endchar;
+
+cmchar "Italic Bashkirian letter ha";
+beginchar(cyrshha,9u#,asc_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(1.5u#,0); pickup tiny.nib;
+pos1(stem,0); pos2(stem,0); x1=x2;
+lft x1l=hround(1.5u-.5stem); top y1=h; y2-.5stem=-oo;
+filldraw circ_stroke z2e--z1e; % left stem
+sloped_serif.l(1,2,a,1/3,jut,serif_drop); % serif
+pickup fine.nib; x4+.5stem=hround(w-2.5u+.5stem);
+x5=x4-.25u; ital_arch(2,3,4); % arch
+x7=w; hook_out(5,6,7)(skewed); % closing hook
+filldraw stroke z4e{down}..{-u,-x_height}z5e; % right stem
+math_fit(0,ic#); penlabels(1,2,3,4,5,6,7); endchar;
+
+%
+% cmchar "Italic Bashkirian letter flipped e";
+% beginchar(oct"216",8u#,x_height#,0);
+% italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+% adjust_fit(0,0); pickup fine.nib;
+% numeric heavy_hair; heavy_hair=hround .2[hair,stem];
+% pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+% pos3(curve,180); pos4(vair,270); pos5(hair,320);
+% x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
+% lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
+% y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=h+oo; bot y4r=-oo;
+% top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
+% filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
+% & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc
+% x10=.5w; y10=.5h; % center point
+% flip(10); % and flip
+% math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+% penlabels(0,1,2,3,4,5,6); endchar;
+%
+ \endinput
+
+"These letters aren't perfect. Especially, the variant k is not an italic
+but a slanted letter. The variant n's descender is not precisely
+positioned. This should be changed in a later version." JK.
+
+%-------------- end ------------------------------------------------------
+The now famous character code reference:
+
+Upper case letters: ABCDEFGHIJKLMNOPQRSTUVWXYZ
+Lower case letters: abcdefghijklmnopqrstuvwxyz
+Digits: 0123456789
+Square, curly, angle braces, parentheses: [] {} <> ()
+Backslash, slash, vertical bar: \ / |
+Punctuation: . ? ! , : ;
+Underscore, hyphen, equals sign: _ - =
+Quotes--right left double: ' ` "
+"at", "number" "dollar", "percent", "and": @ # $ % &
+"hat", "star", "plus", "tilde": ^ * + ~
diff --git a/Master/texmf-dist/fonts/source/public/montex/cyrmorel.mf b/Master/texmf-dist/fonts/source/public/montex/cyrmorel.mf
new file mode 100644
index 00000000000..a80d269bd7b
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/cyrmorel.mf
@@ -0,0 +1,75 @@
+% File: cyrmorel.mf
+% Based on: jkbashl.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+ % jkbashl.mf by Joerg Knappen, Bitnet: knappen@dmznat51
+ % Version 11 June 1990
+ % Bashkirian special lowercase letters
+
+cmchar "The Bashkirian letter o-umlaut";
+beginchar(cyrotld,9u#,x_height#,0);
+italcorr .7x_height#*slant;
+adjust_fit(if monospace: .5u#,.5u# else: 0,0 fi);
+penpos1(vair,90); penpos3(vair',-90);
+penpos2(curve,180); penpos4(curve,0);
+x2r=hround max(.5u,1.25u-.5curve);
+x4r=w-x2r; x1=x3=.5w; y1r=h+vround 1.5oo; y3r=-oo;
+y2=y4=.5h-vair_corr; y2l:=y4l:=.52h;
+penstroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1) & cycle; % bowl
+if serifs: z90=z2l; x91=x4; y91=y90; pos90(bar,90); pos91(bar,90);
+ z92=.5[z90,z91]; pos92(if serifs: 2.5 fi bar,90);
+ filldraw stroke z90e{1,1}..{1,-1}z92e..{1,1}z91e;
+else: z90=z2l; x91=x4; y91=y90; penpos90(bar,90); penpos91(bar,90);
+ fill stroke z90e--z91e; fi
+penlabels(1,2,3,4); endchar;
+
+cmchar "The Bashkirian letter u-umlaut";
+beginchar(cyry,if serifs: 9.5u# else: 9u# fi,x_height#,desc_depth#);
+italcorr x_height#*slant+.45u#;
+adjust_fit(serif_fit#,serif_fit#);
+numeric left_stem,right_stem,outer_jut,dy,alpha;
+left_stem=stem-stem_corr;
+right_stem=min(hair if hefty:-2stem_corr fi,left_stem);
+outer_jut=.75jut; x1l=w-x4r=l+letter_fit+outer_jut+.05u;
+x2l=x5l=hround(.5w-.5left_stem); x3r=x5r; y1=y4=h; y2=y3=y5=0;
+dy=y1-y2; alpha=((x2l-x1l)++dy)/dy;
+penpos1(alpha*left_stem,0); penpos2(alpha*left_stem,0);
+penpos3(alpha*right_stem,0); penpos4(alpha*right_stem,0);
+penpos5(left_stem,0); penpos6(left_stem,0); x5=x6; y6=-desc_depth;
+z0=whatever[z1r,z2r]=whatever[z3l,z4l];
+if y0>y2+notch_cut: y0:=y2+notch_cut;
+ fill z0+.5right{up}...{z4-z3}diag_end(3l,4l,1,1,4r,3r)--z5r
+ --diag_end(5r,6r,1,1,6l,5l)--z5l--diag_end(2l,1l,1,1,1r,2r){z2-z1}
+ ...{down}z0+.5left--cycle; % diagonals and stem
+else: fill z0--diag_end(0,4l,1,1,4r,3r)--z5r
+ --diag_end(5r,6r,1,1,6l,5l)--z5l
+ --diag_end(2l,1l,1,1,1r,0)--cycle; fi % diagonals and stem
+if serifs: numeric inner_jut; pickup tiny.nib;
+ prime_points_inside(1,2); prime_points_inside(4,3); prime_points_inside(6,5);
+ if rt x1'r+jut+.5u+1<=lft x4'l-jut: inner_jut=jut;
+ else: rt x1'r+inner_jut+.5u+1=lft x4'l-inner_jut; fi
+ dish_serif(1',2,a,1/3,outer_jut,b,1/2,inner_jut); % upper left serif
+ dish_serif(4',3,c,.6,inner_jut,d,1/2,outer_jut)(dark); % upper right serif
+ dish_serif(6',5,e,1/3,cap_jut,f,1/3,cap_jut); fi % lower serif
+math_fit(.5u#-x_height#*slant,ic#-4u#);
+penlabels(0,1,2,3,4,5,6); endchar;
+
+cmchar "The Bashkirian letter ha";
+beginchar(cyrshha,11u#,asc_height#,0);
+italcorr .5[bar_height#,x_height#]*slant-serif_fit#+.5stem#-2u#;
+adjust_fit(.5u#+serif_fit#+stem_shift#,serif_fit#-stem_shift#);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+pos1'(stem',0); pos2'(stem',0); pos3(stem,0);
+lft x1l=hround(2.5u-.5stem); x1l=x1'l=x2l=x2'l; x3=w-x1;
+top y1=h; bot y2=0; y1=y1'; y2=y2';
+filldraw stroke z1'e--z2'e; % left stem
+h_stroke(2,a,3,4); % arch and right stem
+if serifs: sloped_serif.l(1',2',b,1/3,jut,serif_drop); % upper left serif
+ numeric inner_jut; pickup tiny.nib;
+ if rt x2r+jut+.5u+1<=lft x4l-jut: inner_jut=jut;
+ else: rt x2r+jut+.5u+1=lft x4l-inner_jut; fi
+ dish_serif(2,1,c,1/3,jut,d,1/3,jut); % lower left serif
+ dish_serif(4,3,e,1/3,inner_jut,f,1/3,jut); fi % lower right serif
+penlabels(1,2,3,4); endchar;
diff --git a/Master/texmf-dist/fonts/source/public/montex/cyrmoreu.mf b/Master/texmf-dist/fonts/source/public/montex/cyrmoreu.mf
new file mode 100644
index 00000000000..1eb338706c4
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/cyrmoreu.mf
@@ -0,0 +1,83 @@
+% File: cyrmoreu.mf
+% Based on: jkbashu.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+ % jkbashu.mf by Joerg Knappen, bitnet knappen@dmznat21
+ % Version 10 June 1990
+ % Bashkirian special uppercase letters
+
+cmchar "The Bashkirian letter O-Umlaut (looks like Theta)";
+beginchar(CYROTLD,14u#-width_adj#,cap_height#,0);
+italcorr .7cap_height#*slant-.5u#;
+adjust_fit(0,0);
+penpos1(vair',90); penpos3(vround(vair+1.5vair_corr),-90);
+penpos2(cap_curve,180); penpos4(cap_curve,0);
+if monospace: x2r=hround 1.5u;
+ interim superness:=sqrt superness; % make |"O"|, not |"0"|
+else: x2r=hround u; fi
+x4r=w-x2r; x1=x3=.5w; y1r=h+o; y3r=-o;
+y2=y4=.5h-vair_corr; y2l:=y4l:=.52h;
+penstroke pulled_super_arc.e(1,2)(.5superpull)
+ & pulled_super_arc.e(2,3)(.5superpull)
+ & pulled_super_arc.e(3,4)(.5superpull)
+ & pulled_super_arc.e(4,1)(.5superpull) & cycle; % bowl
+if serifs: z90=z2l; x91=x4; y91=y90; pos90(bar,90); pos91(bar,90);
+ z92=.5[z90,z91]; pos92(if serifs: 2.5 fi bar,90);
+ filldraw stroke z90e{1,1}..{1,-1}z92e..{1,1}z91e;
+else: z90=z2l; x91=x4; y91=y90; penpos90(bar,90); penpos91(bar,90);
+ fill stroke z90e--z91e; fi
+math_fit(-.3cap_height#*slant-.5u#,ic#-.5u#); penlabels(1,2,3,4); endchar;
+
+cmchar "The Bashkirian letter U-Umlaut (looks like Y)";
+beginchar(CYRY,13u#,cap_height#,0);
+italcorr cap_height#*slant+.45u#;
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+numeric left_stem,right_stem,outer_jut,dy,alpha;
+left_stem=cap_stem-stem_corr;
+right_stem=min(cap_hair if hefty:-2stem_corr fi,left_stem);
+outer_jut=.75cap_jut; x1l=w-x4r=l+letter_fit+outer_jut+.05u;
+x2l=x5l=hround(.5w-.5left_stem); x3r=x5r; y1=y4=h; y2=y3=y5=.4h;
+dy=y1-y2; alpha=((x2l-x1l)++dy)/dy;
+penpos1(alpha*left_stem,0); penpos2(alpha*left_stem,0);
+penpos3(alpha*right_stem,0); penpos4(alpha*right_stem,0);
+penpos5(left_stem,0); penpos6(left_stem,0); x5=x6; y6=0;
+z0=whatever[z1r,z2r]=whatever[z3l,z4l];
+if y0>y2+cap_notch_cut: y0:=y2+cap_notch_cut;
+ fill z0+.5right{up}...{z4-z3}diag_end(3l,4l,1,1,4r,3r)--z5r
+ --diag_end(5r,6r,1,1,6l,5l)--z5l--diag_end(2l,1l,1,1,1r,2r){z2-z1}
+ ...{down}z0+.5left--cycle; % diagonals and stem
+else: fill z0--diag_end(0,4l,1,1,4r,3r)--z5r
+ --diag_end(5r,6r,1,1,6l,5l)--z5l
+ --diag_end(2l,1l,1,1,1r,0)--cycle; fi % diagonals and stem
+if serifs: numeric inner_jut; pickup tiny.nib;
+ prime_points_inside(1,2); prime_points_inside(4,3); prime_points_inside(6,5);
+ if rt x1'r+cap_jut+.5u+1<=lft x4'l-cap_jut: inner_jut=cap_jut;
+ else: rt x1'r+inner_jut+.5u+1=lft x4'l-inner_jut; fi
+ dish_serif(1',2,a,1/3,outer_jut,b,1/2,inner_jut); % upper left serif
+ dish_serif(4',3,c,.6,inner_jut,d,1/2,outer_jut)(dark); % upper right serif
+ dish_serif(6',5,e,1/3,cap_jut,f,1/3,cap_jut); fi % lower serif
+math_fit(.5u#-cap_height#*slant,ic#-4u#);
+penlabels(0,1,2,3,4,5,6); endchar;
+
+cmchar "The Bashkirian letter HA (looks like h)";
+beginchar(CYRSHHA,14u#+width_adj#,cap_height#,0);
+italcorr cap_height#*slant-cap_serif_fit#+cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+pos3(cap_stem,0); pos4(cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem); x3=x4=w-x1;
+top y1=h;
+bot y4=bot y2=0;
+x22=x1; y22=.35h;
+pos22(cap_bar,95); y3=y22;
+filldraw stroke z4e--z3e{up}...{down}z22e; % right stem and bowl
+filldraw stroke z1e--z2e; % left stem
+if serifs: numeric inner_jut;
+ if rt x2r+cap_jut+.5u+1<=lft x4l-cap_jut: inner_jut=cap_jut;
+ else: rt x2r+inner_jut+.5u+1=lft x4l-inner_jut; fi
+ dish_serif(1,2,a,1/3,cap_jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,inner_jut); % lower left serif
+ dish_serif(4,3,g,1/3,inner_jut,h,1/3,cap_jut); fi % lower right serif
+math_fit(0,.5ic#); penlabels(1,2,3,4,22); endchar;
+\endinput
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmb10.mf b/Master/texmf-dist/fonts/source/public/montex/kmb10.mf
new file mode 100644
index 00000000000..13a9a276f80
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmb10.mf
@@ -0,0 +1,80 @@
+% File: kmb10.mf
+% Based on: cmbz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Bold Roman 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMB"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+width_adj#:=10/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=6/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=247/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=160/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=85/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=13/36pt#; % diameter of rounded corners
+fine#:=10/36pt#; % diameter of sharply rounded corners
+thin_join#:=10/36pt#; % width of extrafine details
+hair#:=17/36pt#; % lowercase hairline breadth
+stem#:=41/36pt#; % lowercase stem breadth
+curve#:=46/36pt#; % lowercase curve breadth
+ess#:=38/36pt#; % breadth in middle of lowercase s
+flare#:=45/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=56/36pt#; % diameter of dots
+cap_hair#:=19/36pt#; % uppercase hairline breadth
+cap_stem#:=51/36pt#; % uppercase stem breadth
+cap_curve#:=55/36pt#; % uppercase curve breadth
+cap_ess#:=53/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.6pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=10/36pt#; % vertical distance from serif base to tangent
+jut#:=25/36pt#; % protrusion of lowercase serifs
+cap_jut#:=34/36pt#; % protrusion of uppercase serifs
+beak_jut#:=11/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=13/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=17/36pt#; % lowercase bar thickness
+slab#:=17/36pt#; % serif and arm thickness
+cap_bar#:=17/36pt#; % uppercase bar thickness
+cap_band#:=17/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=3/36pt#; % vertical drop of sloped serifs
+stem_corr#:=2/36pt#; % for small refinements of stem breadth
+vair_corr#:=1.5/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.5; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmbx10.mf b/Master/texmf-dist/fonts/source/public/montex/kmbx10.mf
new file mode 100644
index 00000000000..b6567fb0ca6
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmbx10.mf
@@ -0,0 +1,81 @@
+% File: kmbx10.mf
+% Based on: cmbzx10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Bold Extended 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMBX"; font_size 10pt#;
+
+u#:=23/36pt#; % unit width
+width_adj#:=11/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=7/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=247/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=160/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=85/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=13/36pt#; % diameter of rounded corners
+fine#:=10/36pt#; % diameter of sharply rounded corners
+thin_join#:=10/36pt#; % width of extrafine details
+hair#:=17/36pt#; % lowercase hairline breadth
+stem#:=41/36pt#; % lowercase stem breadth
+curve#:=46/36pt#; % lowercase curve breadth
+ess#:=38/36pt#; % breadth in middle of lowercase s
+flare#:=45/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=56/36pt#; % diameter of dots
+cap_hair#:=19/36pt#; % uppercase hairline breadth
+cap_stem#:=51/36pt#; % uppercase stem breadth
+cap_curve#:=55/36pt#; % uppercase curve breadth
+cap_ess#:=53/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.6pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=10/36pt#; % vertical distance from serif base to tangent
+jut#:=25/36pt#; % protrusion of lowercase serifs
+cap_jut#:=39/36pt#; % protrusion of uppercase serifs
+beak_jut#:=11/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=13/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=17/36pt#; % lowercase bar thickness
+slab#:=17/36pt#; % serif and arm thickness
+cap_bar#:=17/36pt#; % uppercase bar thickness
+cap_band#:=17/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=3/36pt#; % vertical drop of sloped serifs
+stem_corr#:=2/36pt#; % for small refinements of stem breadth
+vair_corr#:=1.5/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.5; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmbx12.mf b/Master/texmf-dist/fonts/source/public/montex/kmbx12.mf
new file mode 100644
index 00000000000..e5ec3848e91
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmbx12.mf
@@ -0,0 +1,81 @@
+% File: kmbx12.mf
+% Based on: cmbzx12.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Bold Extended Roman 12 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMBX"; font_size 12pt#;
+
+u#:=27/36pt#; % unit width
+width_adj#:=13/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=8/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=324/36pt#; % height of tallest characters
+asc_height#:=300/36pt#; % height of lowercase ascenders
+cap_height#:=296.4/36pt#; % height of caps
+fig_height#:=278.4/36pt#; % height of numerals
+x_height#:=192/36pt#; % height of lowercase without ascenders
+math_axis#:=108/36pt#; % axis of symmetry for math symbols
+bar_height#:=102/36pt#; % height of crossbar in lowercase e
+comma_depth#:=84/36pt#; % depth of comma below baseline
+desc_depth#:=84/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=13/36pt#; % diameter of rounded corners
+fine#:=10/36pt#; % diameter of sharply rounded corners
+thin_join#:=10.5/36pt#; % width of extrafine details
+hair#:=18.3/36pt#; % lowercase hairline breadth
+stem#:=47/36pt#; % lowercase stem breadth
+curve#:=52/36pt#; % lowercase curve breadth
+ess#:=44/36pt#; % breadth in middle of lowercase s
+flare#:=51/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=62/36pt#; % diameter of dots
+cap_hair#:=20/36pt#; % uppercase hairline breadth
+cap_stem#:=57/36pt#; % uppercase stem breadth
+cap_curve#:=61/36pt#; % uppercase curve breadth
+cap_ess#:=59/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.66pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=12/36pt#; % vertical distance from serif base to tangent
+jut#:=30/36pt#; % protrusion of lowercase serifs
+cap_jut#:=46/36pt#; % protrusion of uppercase serifs
+beak_jut#:=12.4/36pt#; % horizontal protrusion of beak serifs
+beak#:=84/36pt#; % vertical protrusion of beak serifs
+vair#:=14.3/36pt#; % vertical diameter of hairlines
+notch_cut#:=12pt#; % maximum breadth above or below notches
+bar#:=18.5/36pt#; % lowercase bar thickness
+slab#:=18.5/36pt#; % serif and arm thickness
+cap_bar#:=18.5/36pt#; % uppercase bar thickness
+cap_band#:=18.5/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=12pt#; % max breadth above/below uppercase notches
+serif_drop#:=3.6/36pt#; % vertical drop of sloped serifs
+stem_corr#:=2/36pt#; % for small refinements of stem breadth
+vair_corr#:=1.5/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=5/36pt#; % amount of overshoot for curves
+apex_o#:=4/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.4; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmbx5.mf b/Master/texmf-dist/fonts/source/public/montex/kmbx5.mf
new file mode 100644
index 00000000000..068f3a55297
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmbx5.mf
@@ -0,0 +1,81 @@
+% File: kmbx5.mf
+% Based on: cmbzx5.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Bold Extended Roman 5 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMBX"; font_size 5pt#;
+
+u#:=14.5/36pt#; % unit width
+width_adj#:=7/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=3/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=3/36pt#; % extra space added to all sidebars
+
+body_height#:=135/36pt#; % height of tallest characters
+asc_height#:=125/36pt#; % height of lowercase ascenders
+cap_height#:=123.5/36pt#; % height of caps
+fig_height#:=116/36pt#; % height of numerals
+x_height#:=80/36pt#; % height of lowercase without ascenders
+math_axis#:=45/36pt#; % axis of symmetry for math symbols
+bar_height#:=40/36pt#; % height of crossbar in lowercase e
+comma_depth#:=35/36pt#; % depth of comma below baseline
+desc_depth#:=35/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=9/36pt#; % diameter of rounded corners
+fine#:=8/36pt#; % diameter of sharply rounded corners
+thin_join#:=8/36pt#; % width of extrafine details
+hair#:=15/36pt#; % lowercase hairline breadth
+stem#:=24/36pt#; % lowercase stem breadth
+curve#:=27/36pt#; % lowercase curve breadth
+ess#:=19/36pt#; % breadth in middle of lowercase s
+flare#:=27/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=31/36pt#; % diameter of dots
+cap_hair#:=17/36pt#; % uppercase hairline breadth
+cap_stem#:=28/36pt#; % uppercase stem breadth
+cap_curve#:=31/36pt#; % uppercase curve breadth
+cap_ess#:=24/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.43pt#; % thickness of lines in math symbols
+
+dish#:=.7/36pt#; % amount erased at top or bottom of serifs
+bracket#:=5/36pt#; % vertical distance from serif base to tangent
+jut#:=13/36pt#; % protrusion of lowercase serifs
+cap_jut#:=19/36pt#; % protrusion of uppercase serifs
+beak_jut#:=7/36pt#; % horizontal protrusion of beak serifs
+beak#:=25/36pt#; % vertical protrusion of beak serifs
+vair#:=10/36pt#; % vertical diameter of hairlines
+notch_cut#:=5pt#; % maximum breadth above or below notches
+bar#:=12/36pt#; % lowercase bar thickness
+slab#:=12/36pt#; % serif and arm thickness
+cap_bar#:=12/36pt#; % uppercase bar thickness
+cap_band#:=12/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=5pt#; % max breadth above/below uppercase notches
+serif_drop#:=1.5/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1.5/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=9/36pt#; % extra width at diagonal junctions
+
+o#:=3/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=1.5; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmbx6.mf b/Master/texmf-dist/fonts/source/public/montex/kmbx6.mf
new file mode 100644
index 00000000000..92ad8c0f207
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmbx6.mf
@@ -0,0 +1,81 @@
+% File: kmbx6.mf
+% Based on: cmbzx6.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Bold Extended Roman 6 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMBX"; font_size 6pt#;
+
+u#:=16.2/36pt#; % unit width
+width_adj#:=7.8/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=3.8/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=2/36pt#; % extra space added to all sidebars
+
+body_height#:=162/36pt#; % height of tallest characters
+asc_height#:=150/36pt#; % height of lowercase ascenders
+cap_height#:=148.2/36pt#; % height of caps
+fig_height#:=139.2/36pt#; % height of numerals
+x_height#:=96/36pt#; % height of lowercase without ascenders
+math_axis#:=54/36pt#; % axis of symmetry for math symbols
+bar_height#:=49/36pt#; % height of crossbar in lowercase e
+comma_depth#:=42/36pt#; % depth of comma below baseline
+desc_depth#:=42/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=10/36pt#; % diameter of rounded corners
+fine#:=9/36pt#; % diameter of sharply rounded corners
+thin_join#:=9/36pt#; % width of extrafine details
+hair#:=15.4/36pt#; % lowercase hairline breadth
+stem#:=28/36pt#; % lowercase stem breadth
+curve#:=31/36pt#; % lowercase curve breadth
+ess#:=25/36pt#; % breadth in middle of lowercase s
+flare#:=31/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=36/36pt#; % diameter of dots
+cap_hair#:=18/36pt#; % uppercase hairline breadth
+cap_stem#:=33/36pt#; % uppercase stem breadth
+cap_curve#:=36/36pt#; % uppercase curve breadth
+cap_ess#:=31/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.47pt#; % thickness of lines in math symbols
+
+dish#:=.8/36pt#; % amount erased at top or bottom of serifs
+bracket#:=6/36pt#; % vertical distance from serif base to tangent
+jut#:=15/36pt#; % protrusion of lowercase serifs
+cap_jut#:=23/36pt#; % protrusion of uppercase serifs
+beak_jut#:=7.8/36pt#; % horizontal protrusion of beak serifs
+beak#:=36/36pt#; % vertical protrusion of beak serifs
+vair#:=11/36pt#; % vertical diameter of hairlines
+notch_cut#:=6pt#; % maximum breadth above or below notches
+bar#:=13/36pt#; % lowercase bar thickness
+slab#:=13/36pt#; % serif and arm thickness
+cap_bar#:=13/36pt#; % uppercase bar thickness
+cap_band#:=13/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=6pt#; % max breadth above/below uppercase notches
+serif_drop#:=1.8/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1.6/36pt#; % for small refinements of stem breadth
+vair_corr#:=1.1/36pt#; % for small refinements of hairline height
+apex_corr#:=5/36pt#; % extra width at diagonal junctions
+
+o#:=3/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=1.3; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmbx7.mf b/Master/texmf-dist/fonts/source/public/montex/kmbx7.mf
new file mode 100644
index 00000000000..1bdce9676b9
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmbx7.mf
@@ -0,0 +1,81 @@
+% File: kmbx7.mf
+% Based on: cmbzx7.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Bold Extended Roman 7 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMBX"; font_size 7pt#;
+
+u#:=17.9/36pt#; % unit width
+width_adj#:=8.6/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=4.6/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=1/36pt#; % extra space added to all sidebars
+
+body_height#:=189/36pt#; % height of tallest characters
+asc_height#:=175/36pt#; % height of lowercase ascenders
+cap_height#:=172.9/36pt#; % height of caps
+fig_height#:=162.4/36pt#; % height of numerals
+x_height#:=112/36pt#; % height of lowercase without ascenders
+math_axis#:=63/36pt#; % axis of symmetry for math symbols
+bar_height#:=58/36pt#; % height of crossbar in lowercase e
+comma_depth#:=49/36pt#; % depth of comma below baseline
+desc_depth#:=49/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=11/36pt#; % diameter of rounded corners
+fine#:=9/36pt#; % diameter of sharply rounded corners
+thin_join#:=9/36pt#; % width of extrafine details
+hair#:=15.8/36pt#; % lowercase hairline breadth
+stem#:=32/36pt#; % lowercase stem breadth
+curve#:=35/36pt#; % lowercase curve breadth
+ess#:=29/36pt#; % breadth in middle of lowercase s
+flare#:=35/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=41/36pt#; % diameter of dots
+cap_hair#:=18/36pt#; % uppercase hairline breadth
+cap_stem#:=38/36pt#; % uppercase stem breadth
+cap_curve#:=41/36pt#; % uppercase curve breadth
+cap_ess#:=37/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.51pt#; % thickness of lines in math symbols
+
+dish#:=.9/36pt#; % amount erased at top or bottom of serifs
+bracket#:=7/36pt#; % vertical distance from serif base to tangent
+jut#:=17/36pt#; % protrusion of lowercase serifs
+cap_jut#:=27/36pt#; % protrusion of uppercase serifs
+beak_jut#:=8.6/36pt#; % horizontal protrusion of beak serifs
+beak#:=46/36pt#; % vertical protrusion of beak serifs
+vair#:=11.5/36pt#; % vertical diameter of hairlines
+notch_cut#:=7pt#; % maximum breadth above or below notches
+bar#:=14/36pt#; % lowercase bar thickness
+slab#:=14/36pt#; % serif and arm thickness
+cap_bar#:=14/36pt#; % uppercase bar thickness
+cap_band#:=14/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=7pt#; % max breadth above/below uppercase notches
+serif_drop#:=2.1/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1.7/36pt#; % for small refinements of stem breadth
+vair_corr#:=1.2/36pt#; % for small refinements of hairline height
+apex_corr#:=2/36pt#; % extra width at diagonal junctions
+
+o#:=3/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=1.1; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmbx8.mf b/Master/texmf-dist/fonts/source/public/montex/kmbx8.mf
new file mode 100644
index 00000000000..8c547c07c53
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmbx8.mf
@@ -0,0 +1,81 @@
+% File: kmbx8.mf
+% Based on: cmbzx8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Bold Extended Roman 8 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMBX"; font_size 8pt#;
+
+u#:=19.6/36pt#; % unit width
+width_adj#:=9.4/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5.4/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=216/36pt#; % height of tallest characters
+asc_height#:=200/36pt#; % height of lowercase ascenders
+cap_height#:=197.6/36pt#; % height of caps
+fig_height#:=185.6/36pt#; % height of numerals
+x_height#:=128/36pt#; % height of lowercase without ascenders
+math_axis#:=72/36pt#; % axis of symmetry for math symbols
+bar_height#:=67/36pt#; % height of crossbar in lowercase e
+comma_depth#:=56/36pt#; % depth of comma below baseline
+desc_depth#:=56/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=12/36pt#; % diameter of rounded corners
+fine#:=10/36pt#; % diameter of sharply rounded corners
+thin_join#:=10/36pt#; % width of extrafine details
+hair#:=16.2/36pt#; % lowercase hairline breadth
+stem#:=35/36pt#; % lowercase stem breadth
+curve#:=39/36pt#; % lowercase curve breadth
+ess#:=32/36pt#; % breadth in middle of lowercase s
+flare#:=39/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=46/36pt#; % diameter of dots
+cap_hair#:=19/36pt#; % uppercase hairline breadth
+cap_stem#:=43/36pt#; % uppercase stem breadth
+cap_curve#:=46/36pt#; % uppercase curve breadth
+cap_ess#:=43/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.54pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=8/36pt#; % vertical distance from serif base to tangent
+jut#:=19/36pt#; % protrusion of lowercase serifs
+cap_jut#:=31/36pt#; % protrusion of uppercase serifs
+beak_jut#:=9.4/36pt#; % horizontal protrusion of beak serifs
+beak#:=55/36pt#; % vertical protrusion of beak serifs
+vair#:=12/36pt#; % vertical diameter of hairlines
+notch_cut#:=8pt#; % maximum breadth above or below notches
+bar#:=15/36pt#; % lowercase bar thickness
+slab#:=15/36pt#; % serif and arm thickness
+cap_bar#:=15/36pt#; % uppercase bar thickness
+cap_band#:=15/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=8pt#; % max breadth above/below uppercase notches
+serif_drop#:=2.4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1.8/36pt#; % for small refinements of stem breadth
+vair_corr#:=1.3/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.9; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmbx9.mf b/Master/texmf-dist/fonts/source/public/montex/kmbx9.mf
new file mode 100644
index 00000000000..05b85db9059
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmbx9.mf
@@ -0,0 +1,81 @@
+% File: kmbx9.mf
+% Based on: cmbzx9.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Bold Extended Roman 9 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMBX"; font_size 9pt#;
+
+u#:=21.3/36pt#; % unit width
+width_adj#:=10.2/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=6.2/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=243/36pt#; % height of tallest characters
+asc_height#:=225/36pt#; % height of lowercase ascenders
+cap_height#:=222.3/36pt#; % height of caps
+fig_height#:=208.8/36pt#; % height of numerals
+x_height#:=144/36pt#; % height of lowercase without ascenders
+math_axis#:=81/36pt#; % axis of symmetry for math symbols
+bar_height#:=76/36pt#; % height of crossbar in lowercase e
+comma_depth#:=63/36pt#; % depth of comma below baseline
+desc_depth#:=63/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=13/36pt#; % diameter of rounded corners
+fine#:=10/36pt#; % diameter of sharply rounded corners
+thin_join#:=10/36pt#; % width of extrafine details
+hair#:=16.6/36pt#; % lowercase hairline breadth
+stem#:=38/36pt#; % lowercase stem breadth
+curve#:=43/36pt#; % lowercase curve breadth
+ess#:=35/36pt#; % breadth in middle of lowercase s
+flare#:=42/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=51/36pt#; % diameter of dots
+cap_hair#:=19/36pt#; % uppercase hairline breadth
+cap_stem#:=47/36pt#; % uppercase stem breadth
+cap_curve#:=51/36pt#; % uppercase curve breadth
+cap_ess#:=48/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.57pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=9/36pt#; % vertical distance from serif base to tangent
+jut#:=22/36pt#; % protrusion of lowercase serifs
+cap_jut#:=35/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10.2/36pt#; % horizontal protrusion of beak serifs
+beak#:=63/36pt#; % vertical protrusion of beak serifs
+vair#:=12.5/36pt#; % vertical diameter of hairlines
+notch_cut#:=9pt#; % maximum breadth above or below notches
+bar#:=16/36pt#; % lowercase bar thickness
+slab#:=16/36pt#; % serif and arm thickness
+cap_bar#:=16/36pt#; % uppercase bar thickness
+cap_band#:=16/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=9pt#; % max breadth above/below uppercase notches
+serif_drop#:=2.7/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1.9/36pt#; % for small refinements of stem breadth
+vair_corr#:=1.4/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.7; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmbxsl10.mf b/Master/texmf-dist/fonts/source/public/montex/kmbxsl10.mf
new file mode 100644
index 00000000000..6b9124b8f06
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmbxsl10.mf
@@ -0,0 +1,80 @@
+% File: kmbxsl10.mf
+% Based on: cmbozx10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Bold Extended Slanted 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMBXSL"; font_size 10pt#;
+
+u#:=23/36pt#; % unit width
+width_adj#:=11/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=7/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=247/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=160/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=85/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=13/36pt#; % diameter of rounded corners
+fine#:=10/36pt#; % diameter of sharply rounded corners
+thin_join#:=10/36pt#; % width of extrafine details
+hair#:=17/36pt#; % lowercase hairline breadth
+stem#:=41/36pt#; % lowercase stem breadth
+curve#:=46/36pt#; % lowercase curve breadth
+ess#:=38/36pt#; % breadth in middle of lowercase s
+flare#:=45/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=56/36pt#; % diameter of dots
+cap_hair#:=19/36pt#; % uppercase hairline breadth
+cap_stem#:=51/36pt#; % uppercase stem breadth
+cap_curve#:=55/36pt#; % uppercase curve breadth
+cap_ess#:=53/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.6pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=10/36pt#; % vertical distance from serif base to tangent
+jut#:=25/36pt#; % protrusion of lowercase serifs
+cap_jut#:=39/36pt#; % protrusion of uppercase serifs
+beak_jut#:=11/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=13/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=17/36pt#; % lowercase bar thickness
+slab#:=17/36pt#; % serif and arm thickness
+cap_bar#:=17/36pt#; % uppercase bar thickness
+cap_band#:=17/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=3/36pt#; % vertical drop of sloped serifs
+stem_corr#:=2/36pt#; % for small refinements of stem breadth
+vair_corr#:=1.5/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=1/6; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.5; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmbxti10.mf b/Master/texmf-dist/fonts/source/public/montex/kmbxti10.mf
new file mode 100644
index 00000000000..b60748967c5
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmbxti10.mf
@@ -0,0 +1,81 @@
+% File: kmbxti10.mf
+% Based on: cmbizx10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Bold Extended Text Italic 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMBXTI"; font_size 10pt#;
+
+u#:=21.2/36pt#; % unit width
+width_adj#:=11/36pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=7/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=11/36pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=247/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=160/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=85/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=13/36pt#; % diameter of serif corners
+tiny#:=13/36pt#; % diameter of rounded corners
+fine#:=10/36pt#; % diameter of sharply rounded corners
+thin_join#:=10/36pt#; % width of extrafine details
+hair#:=20/36pt#; % lowercase hairline breadth
+stem#:=38/36pt#; % lowercase stem breadth
+curve#:=43/36pt#; % lowercase curve breadth
+ess#:=35/36pt#; % breadth in middle of lowercase s
+flare#:=42/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=53/36pt#; % diameter of dots
+cap_hair#:=22/36pt#; % uppercase hairline breadth
+cap_stem#:=49/36pt#; % uppercase stem breadth
+cap_curve#:=52/36pt#; % uppercase curve breadth
+cap_ess#:=50/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.6pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=10/36pt#; % vertical distance from serif base to tangent
+jut#:=27/36pt#; % protrusion of lowercase serifs
+cap_jut#:=39/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=13/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=17/36pt#; % lowercase bar thickness
+slab#:=17/36pt#; % serif and arm thickness
+cap_bar#:=17/36pt#; % uppercase bar thickness
+cap_band#:=17/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=3/36pt#; % vertical drop of sloped serifs
+stem_corr#:=2/36pt#; % for small refinements of stem breadth
+vair_corr#:=1.5/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=6/36pt#; % amount of overshoot for curves
+apex_o#:=6/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=.25; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.5; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mctextit; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmcsc10.mf b/Master/texmf-dist/fonts/source/public/montex/kmcsc10.mf
new file mode 100644
index 00000000000..390dc5e7775
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmcsc10.mf
@@ -0,0 +1,116 @@
+% File: kmcsc10.mf
+% Based on: cmrcz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Caps and Small Caps 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMCSC"; font_size 10pt#;
+
+% first come parameters used to set the uppercase letters
+% (including some for lowercase that aren't actually used)
+u#:=21/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=5/36pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=30/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=33/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=35/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=28/36pt#; % protrusion of lowercase serifs
+cap_jut#:=37/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=1; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+% now come replacements used to set the lowercase caps
+
+lower.u#:=16/36pt#; % unit width
+lower.width_adj#:=0pt#; % width adjustment for certain characters
+lower.cap_serif_fit#:=4/36pt#; % extra sidebar near uppercase serifs
+lower.letter_fit#:=2.4/36pt#; % extra space added to all sidebars
+
+lower.body_height#:=200/36pt#; % height of tallest characters
+lower.cap_height#:=185/36pt#; % height of caps
+lower.x_height#:=116/36pt#; % height of lowercase without ascenders
+lower.bar_height#:=65/36pt#; % height of crossbar in lowercase e
+lower.comma_depth#:=52/36pt#; % depth of comma below baseline
+
+lower.flare#:=25/36pt#; % diameter of bulbs or breadth of terminals
+lower.cap_hair#:=9.1/36pt#; % uppercase hairline breadth
+lower.stem#:=21/36pt#; % lowercase stem breadth
+lower.cap_stem#:=26/36pt#; % uppercase stem breadth
+lower.cap_curve#:=31/36pt#; % uppercase curve breadth
+lower.cap_ess#:=28/36pt#; % breadth in middle of uppercase s
+
+lower.cap_jut#:=26/36pt#; % protrusion of uppercase serifs
+lower.beak_jut#:=7/36pt#; % horizontal protrusion of beak serifs
+lower.beak#:=52/36pt#; % vertical protrusion of beak serifs
+lower.slab#:=9.1/36pt#; % serif and arm thickness
+lower.cap_bar#:=9.1/36pt#; % uppercase bar thickness
+lower.cap_band#:=9.1/36pt#; % uppercase thickness above/below lobes
+lower.cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+
+lower.o#:=5/36pt#; % amount of overshoot for curves
+lower.apex_o#:=4/36pt#; % amount of overshoot for diagonal junctions
+
+lower.fudge:=1; % factor applied to weights of heavy characters
+
+generate mcyccsc; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmcsc8.mf b/Master/texmf-dist/fonts/source/public/montex/kmcsc8.mf
new file mode 100644
index 00000000000..656e54d2c2b
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmcsc8.mf
@@ -0,0 +1,122 @@
+% File: kmcsc8.mf
+% Based on: cmrcz8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% CMCSC8.MF June 1990
+% This Metafont file is part of AMSFonts 2.0.
+% Copyright (C) 1990, American Mathematical Society.
+% All rights reserved. Copying of this file is authorized only if either:
+% (1) you make absolutely no changes to your copy including filename; OR
+% (2) if you do make changes, you first rename it to some other filename.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Computer Modern Cyrillic Caps and Small Caps 8 point
+% Computer Modern Roman Cap and Small Cap 8 point; created at AMS
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMCSC"; font_size 8pt#;
+
+u#:=18/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=4.1/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=2.5/36pt#; % extra space added to all sidebars
+
+body_height#:=216/36pt#; % height of tallest characters
+asc_height#:=200/36pt#; % height of lowercase ascenders
+cap_height#:=196.8/36pt#; % height of caps
+fig_height#:=185.6/36pt#; % height of numerals
+x_height#:=124/36pt#; % height of lowercase without ascenders
+math_axis#:=72/36pt#; % axis of symmetry for math symbols
+bar_height#:=69.6/36pt#; % height of crossbar in lowercase e
+comma_depth#:=56/36pt#; % depth of comma below baseline
+desc_depth#:=56/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=22/36pt#; % lowercase stem breadth
+curve#:=25.5/36pt#; % lowercase curve breadth
+ess#:=23/36pt#; % breadth in middle of lowercase s
+flare#:=27/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=32/36pt#; % diameter of dots
+cap_hair#:=9.5/36pt#; % uppercase hairline breadth
+cap_stem#:=26.5/36pt#; % uppercase stem breadth
+cap_curve#:=30/36pt#; % uppercase curve breadth
+cap_ess#:=27/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.36pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=16/36pt#; % vertical distance from serif base to tangent
+jut#:=22/36pt#; % protrusion of lowercase serifs
+cap_jut#:=29/36pt#; % protrusion of uppercase serifs
+beak_jut#:=8.4/36pt#; % horizontal protrusion of beak serifs
+beak#:=56/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=8pt#; % maximum breadth above or below notches
+bar#:=9.5/36pt#; % lowercase bar thickness
+slab#:=9.5/36pt#; % serif and arm thickness
+cap_bar#:=9.5/36pt#; % uppercase bar thickness
+cap_band#:=9.5/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=8pt#; % max breadth above/below uppercase notches
+serif_drop#:=3.2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=6/36pt#; % amount of overshoot for curves
+apex_o#:=6/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.4; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=1; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+% now come replacements used to set the lowercase caps
+
+lower.u#:=13/36pt#; % unit width
+lower.width_adj#:=0pt#; % width adjustment for certain characters
+lower.cap_serif_fit#:=2.7/36pt#;% extra sidebar near uppercase serifs
+lower.letter_fit#:=4/36pt#; % extra space added to all sidebars
+
+lower.body_height#:=146/36pt#; % height of tallest characters
+lower.cap_height#:=145.8/36pt#; % height of caps
+lower.x_height#:=85/36pt#; % height of lowercase without ascenders
+lower.bar_height#:=47.6/36pt#; % height of crossbar in lowercase e
+lower.comma_depth#:=38/36pt#; % depth of comma below baseline
+
+lower.flare#:=20/36pt#; % diameter of bulbs or breadth of terminals
+lower.cap_hair#:=8.1/36pt#; % uppercase hairline breadth
+lower.stem#:=17/36pt#; % lowercase stem breadth
+lower.cap_stem#:=21/36pt#; % uppercase stem breadth
+lower.cap_curve#:=25/36pt#; % uppercase curve breadth
+lower.cap_ess#:=20/36pt#; % breadth in middle of uppercase s
+
+lower.cap_jut#:=20/36pt#; % protrusion of uppercase serifs
+lower.beak_jut#:=5.4/36pt#; % horizontal protrusion of beak serifs
+lower.beak#:=38/36pt#; % vertical protrusion of beak serifs
+lower.slab#:=8.1/36pt#; % serif and arm thickness
+lower.cap_bar#:=8.1/36pt#; % uppercase bar thickness
+lower.cap_band#:=8.1/36pt#; % uppercase thickness above/below lobes
+lower.cap_notch_cut#:=8pt#; % max breadth above/below uppercase notches
+
+lower.o#:=4/36pt#; % amount of overshoot for curves
+lower.apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+lower.fudge:=1; % factor applied to weights of heavy characters
+
+generate mcyccsc; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmcsc9.mf b/Master/texmf-dist/fonts/source/public/montex/kmcsc9.mf
new file mode 100644
index 00000000000..724bccc9a9e
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmcsc9.mf
@@ -0,0 +1,122 @@
+% File: kmcsc9.mf
+% Based on: cmrcz9.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% CMCSC9.MF June 1990
+% This Metafont file is part of AMSFonts 2.0.
+% Copyright (C) 1990, American Mathematical Society.
+% All rights reserved. Copying of this file is authorized only if either:
+% (1) you make absolutely no changes to your copy including filename; OR
+% (2) if you do make changes, you first rename it to some other filename.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Computer Modern Cyrillic Caps and Small Caps 9 point; base on
+% Computer Modern Roman Caps and Small Caps 9 point; created at AMS
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMCSC"; font_size 9pt#;
+
+u#:=19/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=4.6/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=3.5/36pt#; % extra space added to all sidebars
+
+body_height#:=243/36pt#; % height of tallest characters
+asc_height#:=225/36pt#; % height of lowercase ascenders
+cap_height#:=221.4/36pt#; % height of caps
+fig_height#:=208.8/36pt#; % height of numerals
+x_height#:=139.5/36pt#; % height of lowercase without ascenders
+math_axis#:=81/36pt#; % axis of symmetry for math symbols
+bar_height#:=78.3/36pt#; % height of crossbar in lowercase e
+comma_depth#:=63/36pt#; % depth of comma below baseline
+desc_depth#:=63/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=24/36pt#; % lowercase stem breadth
+curve#:=28/36pt#; % lowercase curve breadth
+ess#:=25/36pt#; % breadth in middle of lowercase s
+flare#:=30/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=35/36pt#; % diameter of dots
+cap_hair#:=10/36pt#; % uppercase hairline breadth
+cap_stem#:=29/36pt#; % uppercase stem breadth
+cap_curve#:=33/36pt#; % uppercase curve breadth
+cap_ess#:=31/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.38pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=18/36pt#; % vertical distance from serif base to tangent
+jut#:=25/36pt#; % protrusion of lowercase serifs
+cap_jut#:=33/36pt#; % protrusion of uppercase serifs
+beak_jut#:=9.2/36pt#; % horizontal protrusion of beak serifs
+beak#:=63/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=9pt#; % maximum breadth above or below notches
+bar#:=10/36pt#; % lowercase bar thickness
+slab#:=10/36pt#; % serif and arm thickness
+cap_bar#:=10/36pt#; % uppercase bar thickness
+cap_band#:=10/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=9pt#; % max breadth above/below uppercase notches
+serif_drop#:=3.6/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=7/36pt#; % amount of overshoot for curves
+apex_o#:=7/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.2; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=1; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+% now come replacements used to set the lowercase caps
+
+lower.u#:=14.5/36pt#; % unit width
+lower.width_adj#:=0pt#; % width adjustment for certain characters
+lower.cap_serif_fit#:=3.4/36pt#;% extra sidebar near uppercase serifs
+lower.letter_fit#:=3.5/36pt#; % extra space added to all sidebars
+
+lower.body_height#:=173/36pt#; % height of tallest characters
+lower.cap_height#:=170.4/36pt#; % height of caps
+lower.x_height#:=100.5/36pt#; % height of lowercase without ascenders
+lower.bar_height#:=56.3/36pt#; % height of crossbar in lowercase e
+lower.comma_depth#:=45/36pt#; % depth of comma below baseline
+
+lower.flare#:=22/36pt#; % diameter of bulbs or breadth of terminals
+lower.cap_hair#:=8.6/36pt#; % uppercase hairline breadth
+lower.stem#:=19/36pt#; % lowercase stem breadth
+lower.cap_stem#:=23.5/36pt#; % uppercase stem breadth
+lower.cap_curve#:=28/36pt#; % uppercase curve breadth
+lower.cap_ess#:=24/36pt#; % breadth in middle of uppercase s
+
+lower.cap_jut#:=23/36pt#; % protrusion of uppercase serifs
+lower.beak_jut#:=6.2/36pt#; % horizontal protrusion of beak serifs
+lower.beak#:=45/36pt#; % vertical protrusion of beak serifs
+lower.slab#:=8.6/36pt#; % serif and arm thickness
+lower.cap_bar#:=8.6/36pt#; % uppercase bar thickness
+lower.cap_band#:=8.6/36pt#; % uppercase thickness above/below lobes
+lower.cap_notch_cut#:=9pt#; % max breadth above/below uppercase notches
+
+lower.o#:=4.5/36pt#; % amount of overshoot for curves
+lower.apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+lower.fudge:=1; % factor applied to weights of heavy characters
+
+generate mcyccsc; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmdunh10.mf b/Master/texmf-dist/fonts/source/public/montex/kmdunh10.mf
new file mode 100644
index 00000000000..f5978de8817
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmdunh10.mf
@@ -0,0 +1,80 @@
+% File: kmdunh10.mf
+% Based on: cmdunh10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Dunhill Roman 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMDUNH"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=370/36pt#; % height of tallest characters
+asc_height#:=350/36pt#; % height of lowercase ascenders
+cap_height#:=346/36pt#; % height of caps
+fig_height#:=332/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=30/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=33/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=35/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=28/36pt#; % protrusion of lowercase serifs
+cap_jut#:=37/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmff10.mf b/Master/texmf-dist/fonts/source/public/montex/kmff10.mf
new file mode 100644
index 00000000000..c78850b0f11
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmff10.mf
@@ -0,0 +1,80 @@
+% File: kmff10.mf
+% Based on: cmruz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Funny Roman 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMFF"; font_size 10pt#;
+
+u#:=16/36pt#; % unit width
+width_adj#:=-16/36pt#; % width adjustment for certain characters
+serif_fit#:=-3/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-4/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=2/36pt#; % extra space added to all sidebars
+
+body_height#:=240/36pt#; % height of tallest characters
+asc_height#:=220/36pt#; % height of lowercase ascenders
+cap_height#:=225/36pt#; % height of caps
+fig_height#:=210/36pt#; % height of numerals
+x_height#:=190/36pt#; % height of lowercase without ascenders
+math_axis#:=55/36pt#; % axis of symmetry for math symbols
+bar_height#:=60/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=100/36pt#; % depth of lowercase descenders
+
+crisp#:=10/36pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=14/36pt#; % width of extrafine details
+hair#:=12/36pt#; % lowercase hairline breadth
+stem#:=16/36pt#; % lowercase stem breadth
+curve#:=20/36pt#; % lowercase curve breadth
+ess#:=22/36pt#; % breadth in middle of lowercase s
+flare#:=24/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=26/36pt#; % diameter of dots
+cap_hair#:=16/36pt#; % uppercase hairline breadth
+cap_stem#:=24/36pt#; % uppercase stem breadth
+cap_curve#:=26/36pt#; % uppercase curve breadth
+cap_ess#:=28/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.5pt#; % thickness of lines in math symbols
+
+dish#:=5/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=3/36pt#; % protrusion of lowercase serifs
+cap_jut#:=4/36pt#; % protrusion of uppercase serifs
+beak_jut#:=-8/36pt#; % horizontal protrusion of beak serifs
+beak#:=10/36pt#; % vertical protrusion of beak serifs
+vair#:=14/36pt#; % vertical diameter of hairlines
+notch_cut#:=2/36pt#; % maximum breadth above or below notches
+bar#:=17/36pt#; % lowercase bar thickness
+slab#:=20/36pt#; % serif and arm thickness
+cap_bar#:=22/36pt#; % uppercase bar thickness
+cap_band#:=17/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=3/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=-10/36pt#; % vertical drop of sloped serifs
+stem_corr#:=-1/36pt#; % for small refinements of stem breadth
+vair_corr#:=-1/36pt#; % for small refinements of hairline height
+apex_corr#:=6/36pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=9/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=-.1; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.5; % extra openness of math symbols
+superness:=2/3; % parameter for superellipses
+superpull:=-1/8; % extra openness inside bowls
+beak_darkness:=.5; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmfi10.mf b/Master/texmf-dist/fonts/source/public/montex/kmfi10.mf
new file mode 100644
index 00000000000..369357e9ab1
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmfi10.mf
@@ -0,0 +1,80 @@
+% File: kmfi10.mf
+% Based on: cmfi10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Funny Italic 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMFI"; font_size 10pt#;
+
+u#:=21/36pt#; % unit width
+width_adj#:=-16/36pt#; % width adjustment for certain characters
+serif_fit#:=-3/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-4/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=2/36pt#; % extra space added to all sidebars
+
+body_height#:=240/36pt#; % height of tallest characters
+asc_height#:=220/36pt#; % height of lowercase ascenders
+cap_height#:=225/36pt#; % height of caps
+fig_height#:=210/36pt#; % height of numerals
+x_height#:=190/36pt#; % height of lowercase without ascenders
+math_axis#:=55/36pt#; % axis of symmetry for math symbols
+bar_height#:=60/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=100/36pt#; % depth of lowercase descenders
+
+crisp#:=11/36pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=14/36pt#; % width of extrafine details
+hair#:=11/36pt#; % lowercase hairline breadth
+stem#:=17/36pt#; % lowercase stem breadth
+curve#:=21/36pt#; % lowercase curve breadth
+ess#:=23/36pt#; % breadth in middle of lowercase s
+flare#:=25/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=26/36pt#; % diameter of dots
+cap_hair#:=15/36pt#; % uppercase hairline breadth
+cap_stem#:=25/36pt#; % uppercase stem breadth
+cap_curve#:=27/36pt#; % uppercase curve breadth
+cap_ess#:=29/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.5pt#; % thickness of lines in math symbols
+
+dish#:=5/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=3/36pt#; % protrusion of lowercase serifs
+cap_jut#:=4/36pt#; % protrusion of uppercase serifs
+beak_jut#:=-8/36pt#; % horizontal protrusion of beak serifs
+beak#:=10/36pt#; % vertical protrusion of beak serifs
+vair#:=15/36pt#; % vertical diameter of hairlines
+notch_cut#:=2/36pt#; % maximum breadth above or below notches
+bar#:=18/36pt#; % lowercase bar thickness
+slab#:=21/36pt#; % serif and arm thickness
+cap_bar#:=23/36pt#; % uppercase bar thickness
+cap_band#:=18/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=3/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=-10/36pt#; % vertical drop of sloped serifs
+stem_corr#:=-1/36pt#; % for small refinements of stem breadth
+vair_corr#:=-1/36pt#; % for small refinements of hairline height
+apex_corr#:=6/36pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=9/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=+.1; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.5; % extra openness of math symbols
+superness:=2/3; % parameter for superellipses
+superpull:=-1/8; % extra openness inside bowls
+beak_darkness:=.5; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mctextit % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmfib8.mf b/Master/texmf-dist/fonts/source/public/montex/kmfib8.mf
new file mode 100644
index 00000000000..a5fb446cb86
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmfib8.mf
@@ -0,0 +1,80 @@
+% File: kmfib8.mf
+% Based on: cmfib8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Roman Fibonacci Font
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMFIB"; font_size 8pt#;
+
+u#:=21/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=-2/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=233/36pt#; % height of tallest characters
+asc_height#:=233/36pt#; % height of lowercase ascenders
+cap_height#:=233/36pt#; % height of caps
+fig_height#:=233/36pt#; % height of numerals
+x_height#:=144/36pt#; % height of lowercase without ascenders
+math_axis#:=89/36pt#; % axis of symmetry for math symbols
+bar_height#:=89/36pt#; % height of crossbar in lowercase e
+comma_depth#:=55/36pt#; % depth of comma below baseline
+desc_depth#:=55/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=13/36pt#; % diameter of rounded corners
+fine#:=13/36pt#; % diameter of sharply rounded corners
+thin_join#:=13/36pt#; % width of extrafine details
+hair#:=21/36pt#; % lowercase hairline breadth
+stem#:=34/36pt#; % lowercase stem breadth
+curve#:=39/36pt#; % lowercase curve breadth
+ess#:=34/36pt#; % breadth in middle of lowercase s
+flare#:=34/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=34/36pt#; % diameter of dots
+cap_hair#:=21/36pt#; % uppercase hairline breadth
+cap_stem#:=34/36pt#; % uppercase stem breadth
+cap_curve#:=39/36pt#; % uppercase curve breadth
+cap_ess#:=34/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=21/36pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=21/36pt#; % vertical distance from serif base to tangent
+jut#:=21/36pt#; % protrusion of lowercase serifs
+cap_jut#:=21/36pt#; % protrusion of uppercase serifs
+beak_jut#:=13/36pt#; % horizontal protrusion of beak serifs
+beak#:=55/36pt#; % vertical protrusion of beak serifs
+vair#:=13/36pt#; % vertical diameter of hairlines
+notch_cut#:=8pt#; % maximum breadth above or below notches
+bar#:=13/36pt#; % lowercase bar thickness
+slab#:=13/36pt#; % serif and arm thickness
+cap_bar#:=13/36pt#; % uppercase bar thickness
+cap_band#:=13/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=8pt#; % max breadth above/below uppercase notches
+serif_drop#:=3/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=3/8; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/13; % extra openness inside bowls
+beak_darkness:=5/13; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kminch.mf b/Master/texmf-dist/fonts/source/public/montex/kminch.mf
new file mode 100644
index 00000000000..63f2bb17f70
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kminch.mf
@@ -0,0 +1,80 @@
+% File: kminch.mf
+% Based on: czinch.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Inch-High Sans Serif Bold Extended Caps and Digits
+if unknown cmbase: input cmbase fi
+numeric Pt#; 250/36Pt#=1in#;
+font_identifier:="KMINCH"; font_size 10Pt#;
+
+u#:=22/36Pt#; % unit width
+width_adj#:=22/36Pt#; % width adjustment for certain characters
+serif_fit#:=-9/36Pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-11/36Pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0Pt#; % extra space added to all sidebars
+
+body_height#:=270/36Pt#; % height of tallest characters
+asc_height#:=250/36Pt#; % height of lowercase ascenders
+cap_height#:=250/36Pt#; % height of caps
+fig_height#:=250/36Pt#; % height of numerals
+x_height#:=165/36Pt#; % height of lowercase without ascenders
+math_axis#:=90/36Pt#; % axis of symmetry for math symbols
+bar_height#:=90/36Pt#; % height of crossbar in lowercase e
+comma_depth#:=38/36Pt#; % depth of comma below baseline
+desc_depth#:=70/36Pt#; % depth of lowercase descenders
+
+crisp#:=26/36Pt#; % diameter of serif corners
+tiny#:=26/36Pt#; % diameter of rounded corners
+fine#:=9/36Pt#; % diameter of sharply rounded corners
+thin_join#:=9/36Pt#; % width of extrafine details
+hair#:=49/36Pt#; % lowercase hairline breadth
+stem#:=49/36Pt#; % lowercase stem breadth
+curve#:=49/36Pt#; % lowercase curve breadth
+ess#:=43/36Pt#; % breadth in middle of lowercase s
+flare#:=40/36Pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=47/36Pt#; % diameter of dots
+cap_hair#:=49/36Pt#; % uppercase hairline breadth
+cap_stem#:=53/36Pt#; % uppercase stem breadth
+cap_curve#:=53/36Pt#; % uppercase curve breadth
+cap_ess#:=51/36Pt#; % breadth in middle of uppercase s
+rule_thickness#:=30/36Pt#; % thickness of lines in math symbols
+
+dish#:=0Pt#; % amount erased at top or bottom of serifs
+bracket#:=0Pt#; % vertical distance from serif base to tangent
+jut#:=0Pt#; % protrusion of lowercase serifs
+cap_jut#:=0Pt#; % protrusion of uppercase serifs
+beak_jut#:=0Pt#; % horizontal protrusion of beak serifs
+beak#:=1.5/36Pt#; % vertical protrusion of beak serifs
+vair#:=26/36Pt#; % vertical diameter of hairlines
+notch_cut#:=49/36Pt#; % maximum breadth above or below notches
+bar#:=26/36Pt#; % lowercase bar thickness
+slab#:=36/36Pt#; % serif and arm thickness
+cap_bar#:=34/36Pt#; % uppercase bar thickness
+cap_band#:=31/36Pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=45/36Pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36Pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36Pt#; % for small refinements of stem breadth
+vair_corr#:=2/36Pt#; % for small refinements of hairline height
+apex_corr#:=18/36Pt#; % extra width at diagonal junctions
+
+o#:=8/36Pt#; % amount of overshoot for curves
+apex_o#:=0Pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.88; % factor applied to weights of heavy characters
+math_spread:=.5; % extra openness of math symbols
+superness:=3/4; % parameter for superellipses
+superpull:=1/18; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcytitle; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmitt10.mf b/Master/texmf-dist/fonts/source/public/montex/kmitt10.mf
new file mode 100644
index 00000000000..024861ce787
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmitt10.mf
@@ -0,0 +1,81 @@
+% File: kmitt10.mf
+% Based on: cmritz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Italic Typewriter Text for use with 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMITT"; font_size 10pt#;
+
+u#:=21/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+letter_fit#:=15/36pt#; % extra space added to all sidebars
+
+body_height#:=250/36pt#; % height of tallest characters
+asc_height#:=220/36pt#; % height of lowercase ascenders
+cap_height#:=220/36pt#; % height of caps
+fig_height#:=220/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=110/36pt#; % axis of symmetry for math symbols
+bar_height#:=79/36pt#; % height of crossbar in lowercase e
+comma_depth#:=50/36pt#; % depth of comma below baseline
+desc_depth#:=80/36pt#; % depth of lowercase descenders
+
+crisp#:=22/36pt#; % diameter of serif corners
+tiny#:=22/36pt#; % diameter of rounded corners
+fine#:=21/36pt#; % diameter of sharply rounded corners
+thin_join#:=21/36pt#; % width of extrafine details
+hair#:=25/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=25/36pt#; % lowercase curve breadth
+ess#:=22/36pt#; % breadth in middle of lowercase s
+flare#:=32/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=36/36pt#; % diameter of dots
+cap_hair#:=25/36pt#; % uppercase hairline breadth
+cap_stem#:=25/36pt#; % uppercase stem breadth
+cap_curve#:=25/36pt#; % uppercase curve breadth
+cap_ess#:=25/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=25/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=40/36pt#; % protrusion of lowercase serifs
+cap_jut#:=34/36pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=34/36pt#; % vertical protrusion of beak serifs
+vair#:=22/36pt#; % vertical diameter of hairlines
+notch_cut#:=25/36pt#; % maximum breadth above or below notches
+bar#:=22/36pt#; % lowercase bar thickness
+slab#:=22/36pt#; % serif and arm thickness
+cap_bar#:=22/36pt#; % uppercase bar thickness
+cap_band#:=22/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=25/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=0pt#; % for small refinements of stem breadth
+vair_corr#:=0pt#; % for small refinements of hairline height
+apex_corr#:=10/36pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=.25; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=0.81; % factor applied to weights of heavy characters
+math_spread:=-1; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=0; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=0; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=true; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=true; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mctextit; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmr10.mf b/Master/texmf-dist/fonts/source/public/montex/kmr10.mf
new file mode 100644
index 00000000000..54bd5ff35c5
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmr10.mf
@@ -0,0 +1,82 @@
+% File: kmr10.mf
+% Based on: cmrz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+% Renamed: June 1998, Ulaanbaatar
+%
+% Kirill Mongol Computer Modern Roman 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMR"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=30/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=33/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=35/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=28/36pt#; % protrusion of lowercase serifs
+cap_jut#:=37/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmr12.mf b/Master/texmf-dist/fonts/source/public/montex/kmr12.mf
new file mode 100644
index 00000000000..6196d4d3bb3
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmr12.mf
@@ -0,0 +1,81 @@
+% File: kmr12.mf
+% Based on: cmrz12.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Roman 12 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMR"; font_size 12pt#;
+
+u#:=23.5/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5.8/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=324/36pt#; % height of tallest characters
+asc_height#:=300/36pt#; % height of lowercase ascenders
+cap_height#:=295.2/36pt#; % height of caps
+fig_height#:=278.4/36pt#; % height of numerals
+x_height#:=186/36pt#; % height of lowercase without ascenders
+math_axis#:=108/36pt#; % axis of symmetry for math symbols
+bar_height#:=104.4/36pt#; % height of crossbar in lowercase e
+comma_depth#:=84/36pt#; % depth of comma below baseline
+desc_depth#:=84/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7.5/36pt#; % width of extrafine details
+hair#:=9.5/36pt#; % lowercase hairline breadth
+stem#:=28/36pt#; % lowercase stem breadth
+curve#:=33/36pt#; % lowercase curve breadth
+ess#:=30/36pt#; % breadth in middle of lowercase s
+flare#:=36/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=42/36pt#; % diameter of dots
+cap_hair#:=11.5/36pt#; % uppercase hairline breadth
+cap_stem#:=35/36pt#; % uppercase stem breadth
+cap_curve#:=40/36pt#; % uppercase curve breadth
+cap_ess#:=38/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.44pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=24/36pt#; % vertical distance from serif base to tangent
+jut#:=33/36pt#; % protrusion of lowercase serifs
+cap_jut#:=41/36pt#; % protrusion of uppercase serifs
+beak_jut#:=11.4/36pt#; % horizontal protrusion of beak serifs
+beak#:=84/36pt#; % vertical protrusion of beak serifs
+vair#:=8.5/36pt#; % vertical diameter of hairlines
+notch_cut#:=12pt#; % maximum breadth above or below notches
+bar#:=12.5/36pt#; % lowercase bar thickness
+slab#:=12.5/36pt#; % serif and arm thickness
+cap_bar#:=12.5/36pt#; % uppercase bar thickness
+cap_band#:=12.5/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=12pt#; % max breadth above/below uppercase notches
+serif_drop#:=4.8/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=9/36pt#; % amount of overshoot for curves
+apex_o#:=9/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=-0.2; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmr17.mf b/Master/texmf-dist/fonts/source/public/montex/kmr17.mf
new file mode 100644
index 00000000000..ba00f099e8e
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmr17.mf
@@ -0,0 +1,81 @@
+% File: kmr17.mf
+% Based on: cmrz17.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Roman 17 point (more or less)
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMR"; font_size 17.28pt#;
+
+u#:=32.5/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=8/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=-0.1pt#; % extra space added to all sidebars
+
+body_height#:=466/36pt#; % height of tallest characters
+asc_height#:=432/36pt#; % height of lowercase ascenders
+cap_height#:=425/36pt#; % height of caps
+fig_height#:=401/36pt#; % height of numerals
+x_height#:=267.8/36pt#; % height of lowercase without ascenders
+math_axis#:=155.5/36pt#; % axis of symmetry for math symbols
+bar_height#:=150/36pt#; % height of crossbar in lowercase e
+comma_depth#:=121/36pt#; % depth of comma below baseline
+desc_depth#:=121/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=9/36pt#; % width of extrafine details
+hair#:=11/36pt#; % lowercase hairline breadth
+stem#:=33/36pt#; % lowercase stem breadth
+curve#:=41/36pt#; % lowercase curve breadth
+ess#:=35/36pt#; % breadth in middle of lowercase s
+flare#:=45/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=51/36pt#; % diameter of dots
+cap_hair#:=13/36pt#; % uppercase hairline breadth
+cap_stem#:=40/36pt#; % uppercase stem breadth
+cap_curve#:=48/36pt#; % uppercase curve breadth
+cap_ess#:=43/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.6pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=34/36pt#; % vertical distance from serif base to tangent
+jut#:=42/36pt#; % protrusion of lowercase serifs
+cap_jut#:=50/36pt#; % protrusion of uppercase serifs
+beak_jut#:=15/36pt#; % horizontal protrusion of beak serifs
+beak#:=121/36pt#; % vertical protrusion of beak serifs
+vair#:=10/36pt#; % vertical diameter of hairlines
+notch_cut#:=17pt#; % maximum breadth above or below notches
+bar#:=16/36pt#; % lowercase bar thickness
+slab#:=16/36pt#; % serif and arm thickness
+cap_bar#:=16/36pt#; % uppercase bar thickness
+cap_band#:=16/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=17pt#; % max breadth above/below uppercase notches
+serif_drop#:=17/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=10/36pt#; % amount of overshoot for curves
+apex_o#:=10/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=-0.4; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmr5.mf b/Master/texmf-dist/fonts/source/public/montex/kmr5.mf
new file mode 100644
index 00000000000..066f544108c
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmr5.mf
@@ -0,0 +1,81 @@
+% File: kmr5.mf
+% Based on: cmrz5.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic 5 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMR"; font_size 5pt#;
+
+u#:=12.5/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=2/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=5/36pt#; % extra space added to all sidebars
+
+body_height#:=135/36pt#; % height of tallest characters
+asc_height#:=125/36pt#; % height of lowercase ascenders
+cap_height#:=123/36pt#; % height of caps
+fig_height#:=116/36pt#; % height of numerals
+x_height#:=77.5/36pt#; % height of lowercase without ascenders
+math_axis#:=45/36pt#; % axis of symmetry for math symbols
+bar_height#:=43.5/36pt#; % height of crossbar in lowercase e
+comma_depth#:=35/36pt#; % depth of comma below baseline
+desc_depth#:=35/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=6/36pt#; % diameter of rounded corners
+fine#:=5/36pt#; % diameter of sharply rounded corners
+thin_join#:=5/36pt#; % width of extrafine details
+hair#:=7.5/36pt#; % lowercase hairline breadth
+stem#:=16/36pt#; % lowercase stem breadth
+curve#:=18/36pt#; % lowercase curve breadth
+ess#:=12/36pt#; % breadth in middle of lowercase s
+flare#:=19/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=22/36pt#; % diameter of dots
+cap_hair#:=8/36pt#; % uppercase hairline breadth
+cap_stem#:=19/36pt#; % uppercase stem breadth
+cap_curve#:=21/36pt#; % uppercase curve breadth
+cap_ess#:=14/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.28pt#; % thickness of lines in math symbols
+
+dish#:=.7/36pt#; % amount erased at top or bottom of serifs
+bracket#:=10/36pt#; % vertical distance from serif base to tangent
+jut#:=15/36pt#; % protrusion of lowercase serifs
+cap_jut#:=20/36pt#; % protrusion of uppercase serifs
+beak_jut#:=6/36pt#; % horizontal protrusion of beak serifs
+beak#:=35/36pt#; % vertical protrusion of beak serifs
+vair#:=6/36pt#; % vertical diameter of hairlines
+notch_cut#:=5pt#; % maximum breadth above or below notches
+bar#:=8/36pt#; % lowercase bar thickness
+slab#:=8/36pt#; % serif and arm thickness
+cap_bar#:=8/36pt#; % uppercase bar thickness
+cap_band#:=8/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=5pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=.7/36pt#; % for small refinements of stem breadth
+vair_corr#:=.5/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=4/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=1; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=1; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmr6.mf b/Master/texmf-dist/fonts/source/public/montex/kmr6.mf
new file mode 100644
index 00000000000..79ed133427a
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmr6.mf
@@ -0,0 +1,81 @@
+% File: kmr6.mf
+% Based on: cmrz6.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic 6 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMR"; font_size 6pt#;
+
+u#:=14/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=2.8/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=3/36pt#; % extra space added to all sidebars
+
+body_height#:=162/36pt#; % height of tallest characters
+asc_height#:=150/36pt#; % height of lowercase ascenders
+cap_height#:=147.6/36pt#; % height of caps
+fig_height#:=139.2/36pt#; % height of numerals
+x_height#:=93/36pt#; % height of lowercase without ascenders
+math_axis#:=54/36pt#; % axis of symmetry for math symbols
+bar_height#:=52.2/36pt#; % height of crossbar in lowercase e
+comma_depth#:=42/36pt#; % depth of comma below baseline
+desc_depth#:=42/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=7/36pt#; % diameter of rounded corners
+fine#:=6/36pt#; % diameter of sharply rounded corners
+thin_join#:=6/36pt#; % width of extrafine details
+hair#:=8/36pt#; % lowercase hairline breadth
+stem#:=18/36pt#; % lowercase stem breadth
+curve#:=20.5/36pt#; % lowercase curve breadth
+ess#:=17/36pt#; % breadth in middle of lowercase s
+flare#:=21/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=26/36pt#; % diameter of dots
+cap_hair#:=8.5/36pt#; % uppercase hairline breadth
+cap_stem#:=21.5/36pt#; % uppercase stem breadth
+cap_curve#:=24/36pt#; % uppercase curve breadth
+cap_ess#:=19/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.31pt#; % thickness of lines in math symbols
+
+dish#:=.8/36pt#; % amount erased at top or bottom of serifs
+bracket#:=12/36pt#; % vertical distance from serif base to tangent
+jut#:=17/36pt#; % protrusion of lowercase serifs
+cap_jut#:=23/36pt#; % protrusion of uppercase serifs
+beak_jut#:=6.8/36pt#; % horizontal protrusion of beak serifs
+beak#:=42/36pt#; % vertical protrusion of beak serifs
+vair#:=7/36pt#; % vertical diameter of hairlines
+notch_cut#:=6pt#; % maximum breadth above or below notches
+bar#:=8.5/36pt#; % lowercase bar thickness
+slab#:=8.5/36pt#; % serif and arm thickness
+cap_bar#:=8.5/36pt#; % uppercase bar thickness
+cap_band#:=8.5/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=6pt#; % max breadth above/below uppercase notches
+serif_drop#:=2.4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=.8/36pt#; % for small refinements of stem breadth
+vair_corr#:=.7/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=4.5/36pt#; % amount of overshoot for curves
+apex_o#:=4.5/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.8; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmr7.mf b/Master/texmf-dist/fonts/source/public/montex/kmr7.mf
new file mode 100644
index 00000000000..b061cd718a5
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmr7.mf
@@ -0,0 +1,81 @@
+% File: kmr7.mf
+% Based on: cmrz7.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Roman 7 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMR"; font_size 7pt#;
+
+u#:=15.5/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=3.5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=2/36pt#; % extra space added to all sidebars
+
+body_height#:=189/36pt#; % height of tallest characters
+asc_height#:=175/36pt#; % height of lowercase ascenders
+cap_height#:=172.2/36pt#; % height of caps
+fig_height#:=162.4/36pt#; % height of numerals
+x_height#:=108.5/36pt#; % height of lowercase without ascenders
+math_axis#:=63/36pt#; % axis of symmetry for math symbols
+bar_height#:=60.9/36pt#; % height of crossbar in lowercase e
+comma_depth#:=49/36pt#; % depth of comma below baseline
+desc_depth#:=49/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=7/36pt#; % diameter of rounded corners
+fine#:=6/36pt#; % diameter of sharply rounded corners
+thin_join#:=6/36pt#; % width of extrafine details
+hair#:=8.5/36pt#; % lowercase hairline breadth
+stem#:=20/36pt#; % lowercase stem breadth
+curve#:=23/36pt#; % lowercase curve breadth
+ess#:=21/36pt#; % breadth in middle of lowercase s
+flare#:=24/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=29/36pt#; % diameter of dots
+cap_hair#:=9/36pt#; % uppercase hairline breadth
+cap_stem#:=24/36pt#; % uppercase stem breadth
+cap_curve#:=27/36pt#; % uppercase curve breadth
+cap_ess#:=23/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.34pt#; % thickness of lines in math symbols
+
+dish#:=.9/36pt#; % amount erased at top or bottom of serifs
+bracket#:=14/36pt#; % vertical distance from serif base to tangent
+jut#:=19/36pt#; % protrusion of lowercase serifs
+cap_jut#:=26/36pt#; % protrusion of uppercase serifs
+beak_jut#:=7.6/36pt#; % horizontal protrusion of beak serifs
+beak#:=49/36pt#; % vertical protrusion of beak serifs
+vair#:=7/36pt#; % vertical diameter of hairlines
+notch_cut#:=7pt#; % maximum breadth above or below notches
+bar#:=9/36pt#; % lowercase bar thickness
+slab#:=9/36pt#; % serif and arm thickness
+cap_bar#:=9/36pt#; % uppercase bar thickness
+cap_band#:=9/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=7pt#; % max breadth above/below uppercase notches
+serif_drop#:=2.8/36pt#; % vertical drop of sloped serifs
+stem_corr#:=.9/36pt#; % for small refinements of stem breadth
+vair_corr#:=.9/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=5/36pt#; % amount of overshoot for curves
+apex_o#:=5/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.6; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmr8.mf b/Master/texmf-dist/fonts/source/public/montex/kmr8.mf
new file mode 100644
index 00000000000..2cee96d44d3
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmr8.mf
@@ -0,0 +1,81 @@
+% File: kmr8.mf
+% Based on: cmrz8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Roman 8 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMR"; font_size 8pt#;
+
+u#:=17/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=4.1/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=216/36pt#; % height of tallest characters
+asc_height#:=200/36pt#; % height of lowercase ascenders
+cap_height#:=196.8/36pt#; % height of caps
+fig_height#:=185.6/36pt#; % height of numerals
+x_height#:=124/36pt#; % height of lowercase without ascenders
+math_axis#:=72/36pt#; % axis of symmetry for math symbols
+bar_height#:=69.6/36pt#; % height of crossbar in lowercase e
+comma_depth#:=56/36pt#; % depth of comma below baseline
+desc_depth#:=56/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=22/36pt#; % lowercase stem breadth
+curve#:=25.5/36pt#; % lowercase curve breadth
+ess#:=23/36pt#; % breadth in middle of lowercase s
+flare#:=27/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=32/36pt#; % diameter of dots
+cap_hair#:=9.5/36pt#; % uppercase hairline breadth
+cap_stem#:=26.5/36pt#; % uppercase stem breadth
+cap_curve#:=30/36pt#; % uppercase curve breadth
+cap_ess#:=27/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.36pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=16/36pt#; % vertical distance from serif base to tangent
+jut#:=22/36pt#; % protrusion of lowercase serifs
+cap_jut#:=29/36pt#; % protrusion of uppercase serifs
+beak_jut#:=8.4/36pt#; % horizontal protrusion of beak serifs
+beak#:=56/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=8pt#; % maximum breadth above or below notches
+bar#:=9.5/36pt#; % lowercase bar thickness
+slab#:=9.5/36pt#; % serif and arm thickness
+cap_bar#:=9.5/36pt#; % uppercase bar thickness
+cap_band#:=9.5/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=8pt#; % max breadth above/below uppercase notches
+serif_drop#:=3.2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=6/36pt#; % amount of overshoot for curves
+apex_o#:=6/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.4; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmr9.mf b/Master/texmf-dist/fonts/source/public/montex/kmr9.mf
new file mode 100644
index 00000000000..ac131059d02
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmr9.mf
@@ -0,0 +1,81 @@
+% File: kmr9.mf
+% Based on: cmrz9.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Roman 9 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMR"; font_size 9pt#;
+
+u#:=18.5/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=4.6/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=243/36pt#; % height of tallest characters
+asc_height#:=225/36pt#; % height of lowercase ascenders
+cap_height#:=221.4/36pt#; % height of caps
+fig_height#:=208.8/36pt#; % height of numerals
+x_height#:=139.5/36pt#; % height of lowercase without ascenders
+math_axis#:=81/36pt#; % axis of symmetry for math symbols
+bar_height#:=78.3/36pt#; % height of crossbar in lowercase e
+comma_depth#:=63/36pt#; % depth of comma below baseline
+desc_depth#:=63/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=24/36pt#; % lowercase stem breadth
+curve#:=28/36pt#; % lowercase curve breadth
+ess#:=25/36pt#; % breadth in middle of lowercase s
+flare#:=30/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=35/36pt#; % diameter of dots
+cap_hair#:=10/36pt#; % uppercase hairline breadth
+cap_stem#:=29/36pt#; % uppercase stem breadth
+cap_curve#:=33/36pt#; % uppercase curve breadth
+cap_ess#:=31/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.38pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=18/36pt#; % vertical distance from serif base to tangent
+jut#:=25/36pt#; % protrusion of lowercase serifs
+cap_jut#:=33/36pt#; % protrusion of uppercase serifs
+beak_jut#:=9.2/36pt#; % horizontal protrusion of beak serifs
+beak#:=63/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=9pt#; % maximum breadth above or below notches
+bar#:=10/36pt#; % lowercase bar thickness
+slab#:=10/36pt#; % serif and arm thickness
+cap_bar#:=10/36pt#; % uppercase bar thickness
+cap_band#:=10/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=9pt#; % max breadth above/below uppercase notches
+serif_drop#:=3.6/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=7/36pt#; % amount of overshoot for curves
+apex_o#:=7/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.2; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmsl10.mf b/Master/texmf-dist/fonts/source/public/montex/kmsl10.mf
new file mode 100644
index 00000000000..737b4836779
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmsl10.mf
@@ -0,0 +1,81 @@
+% File: kmsl10.mf
+% Based on: cmroz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Slanted 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSL"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=30/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=33/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=35/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=28/36pt#; % protrusion of lowercase serifs
+cap_jut#:=37/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=1/6; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmsl12.mf b/Master/texmf-dist/fonts/source/public/montex/kmsl12.mf
new file mode 100644
index 00000000000..6371e92a6e2
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmsl12.mf
@@ -0,0 +1,80 @@
+% File: kmsl12.mf
+% Based on: cmroz12.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Slanted Roman 12 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSL"; font_size 12pt#;
+
+u#:=23.5/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5.8/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=324/36pt#; % height of tallest characters
+asc_height#:=300/36pt#; % height of lowercase ascenders
+cap_height#:=295.2/36pt#; % height of caps
+fig_height#:=278.4/36pt#; % height of numerals
+x_height#:=186/36pt#; % height of lowercase without ascenders
+math_axis#:=108/36pt#; % axis of symmetry for math symbols
+bar_height#:=104.4/36pt#; % height of crossbar in lowercase e
+comma_depth#:=84/36pt#; % depth of comma below baseline
+desc_depth#:=84/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7.5/36pt#; % width of extrafine details
+hair#:=9.5/36pt#; % lowercase hairline breadth
+stem#:=28/36pt#; % lowercase stem breadth
+curve#:=33/36pt#; % lowercase curve breadth
+ess#:=30/36pt#; % breadth in middle of lowercase s
+flare#:=36/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=42/36pt#; % diameter of dots
+cap_hair#:=11.5/36pt#; % uppercase hairline breadth
+cap_stem#:=35/36pt#; % uppercase stem breadth
+cap_curve#:=40/36pt#; % uppercase curve breadth
+cap_ess#:=38/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.44pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=24/36pt#; % vertical distance from serif base to tangent
+jut#:=33/36pt#; % protrusion of lowercase serifs
+cap_jut#:=41/36pt#; % protrusion of uppercase serifs
+beak_jut#:=11.4/36pt#; % horizontal protrusion of beak serifs
+beak#:=84/36pt#; % vertical protrusion of beak serifs
+vair#:=8.5/36pt#; % vertical diameter of hairlines
+notch_cut#:=12pt#; % maximum breadth above or below notches
+bar#:=12.5/36pt#; % lowercase bar thickness
+slab#:=12.5/36pt#; % serif and arm thickness
+cap_bar#:=12.5/36pt#; % uppercase bar thickness
+cap_band#:=12.5/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=12pt#; % max breadth above/below uppercase notches
+serif_drop#:=4.8/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=9/36pt#; % amount of overshoot for curves
+apex_o#:=9/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=1/6; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=-0.2; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmsl8.mf b/Master/texmf-dist/fonts/source/public/montex/kmsl8.mf
new file mode 100644
index 00000000000..fc5febc1d73
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmsl8.mf
@@ -0,0 +1,80 @@
+% File: kmsl8.mf
+% Based on: cmroz8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Slanted Roman 8 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSL"; font_size 8pt#;
+
+u#:=17/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=4.1/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=216/36pt#; % height of tallest characters
+asc_height#:=200/36pt#; % height of lowercase ascenders
+cap_height#:=196.8/36pt#; % height of caps
+fig_height#:=185.6/36pt#; % height of numerals
+x_height#:=124/36pt#; % height of lowercase without ascenders
+math_axis#:=72/36pt#; % axis of symmetry for math symbols
+bar_height#:=69.6/36pt#; % height of crossbar in lowercase e
+comma_depth#:=56/36pt#; % depth of comma below baseline
+desc_depth#:=56/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=22/36pt#; % lowercase stem breadth
+curve#:=25.5/36pt#; % lowercase curve breadth
+ess#:=23/36pt#; % breadth in middle of lowercase s
+flare#:=27/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=32/36pt#; % diameter of dots
+cap_hair#:=9.5/36pt#; % uppercase hairline breadth
+cap_stem#:=26.5/36pt#; % uppercase stem breadth
+cap_curve#:=30/36pt#; % uppercase curve breadth
+cap_ess#:=27/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.36pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=16/36pt#; % vertical distance from serif base to tangent
+jut#:=22/36pt#; % protrusion of lowercase serifs
+cap_jut#:=29/36pt#; % protrusion of uppercase serifs
+beak_jut#:=8.4/36pt#; % horizontal protrusion of beak serifs
+beak#:=56/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=8pt#; % maximum breadth above or below notches
+bar#:=9.5/36pt#; % lowercase bar thickness
+slab#:=9.5/36pt#; % serif and arm thickness
+cap_bar#:=9.5/36pt#; % uppercase bar thickness
+cap_band#:=9.5/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=8pt#; % max breadth above/below uppercase notches
+serif_drop#:=3.2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=6/36pt#; % amount of overshoot for curves
+apex_o#:=6/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=1/6; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.4; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmsl9.mf b/Master/texmf-dist/fonts/source/public/montex/kmsl9.mf
new file mode 100644
index 00000000000..0abf3b9ad42
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmsl9.mf
@@ -0,0 +1,80 @@
+% File: kmsl9.mf
+% Based on: cmroz9.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Slanted Roman 9 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSL"; font_size 9pt#;
+
+u#:=18.5/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=4.6/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=243/36pt#; % height of tallest characters
+asc_height#:=225/36pt#; % height of lowercase ascenders
+cap_height#:=221.4/36pt#; % height of caps
+fig_height#:=208.8/36pt#; % height of numerals
+x_height#:=139.5/36pt#; % height of lowercase without ascenders
+math_axis#:=81/36pt#; % axis of symmetry for math symbols
+bar_height#:=78.3/36pt#; % height of crossbar in lowercase e
+comma_depth#:=63/36pt#; % depth of comma below baseline
+desc_depth#:=63/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=24/36pt#; % lowercase stem breadth
+curve#:=28/36pt#; % lowercase curve breadth
+ess#:=25/36pt#; % breadth in middle of lowercase s
+flare#:=30/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=35/36pt#; % diameter of dots
+cap_hair#:=10/36pt#; % uppercase hairline breadth
+cap_stem#:=29/36pt#; % uppercase stem breadth
+cap_curve#:=33/36pt#; % uppercase curve breadth
+cap_ess#:=31/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.38pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=18/36pt#; % vertical distance from serif base to tangent
+jut#:=25/36pt#; % protrusion of lowercase serifs
+cap_jut#:=33/36pt#; % protrusion of uppercase serifs
+beak_jut#:=9.2/36pt#; % horizontal protrusion of beak serifs
+beak#:=63/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=9pt#; % maximum breadth above or below notches
+bar#:=10/36pt#; % lowercase bar thickness
+slab#:=10/36pt#; % serif and arm thickness
+cap_bar#:=10/36pt#; % uppercase bar thickness
+cap_band#:=10/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=9pt#; % max breadth above/below uppercase notches
+serif_drop#:=3.6/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=7/36pt#; % amount of overshoot for curves
+apex_o#:=7/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=1/6; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.2; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmsltt10.mf b/Master/texmf-dist/fonts/source/public/montex/kmsltt10.mf
new file mode 100644
index 00000000000..b2803f6c9f1
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmsltt10.mf
@@ -0,0 +1,81 @@
+% File: kmsltt10.mf
+% Based on: cmrotz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Slanted Typewriter Text for use with 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSLTT"; font_size 10pt#;
+
+u#:=21/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=250/36pt#; % height of tallest characters
+asc_height#:=220/36pt#; % height of lowercase ascenders
+cap_height#:=220/36pt#; % height of caps
+fig_height#:=220/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=110/36pt#; % axis of symmetry for math symbols
+bar_height#:=79/36pt#; % height of crossbar in lowercase e
+comma_depth#:=50/36pt#; % depth of comma below baseline
+desc_depth#:=80/36pt#; % depth of lowercase descenders
+
+crisp#:=22/36pt#; % diameter of serif corners
+tiny#:=22/36pt#; % diameter of rounded corners
+fine#:=21/36pt#; % diameter of sharply rounded corners
+thin_join#:=21/36pt#; % width of extrafine details
+hair#:=25/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=25/36pt#; % lowercase curve breadth
+ess#:=22/36pt#; % breadth in middle of lowercase s
+flare#:=32/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=36/36pt#; % diameter of dots
+cap_hair#:=25/36pt#; % uppercase hairline breadth
+cap_stem#:=25/36pt#; % uppercase stem breadth
+cap_curve#:=25/36pt#; % uppercase curve breadth
+cap_ess#:=25/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=25/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=34/36pt#; % protrusion of lowercase serifs
+cap_jut#:=34/36pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=34/36pt#; % vertical protrusion of beak serifs
+vair#:=22/36pt#; % vertical diameter of hairlines
+notch_cut#:=25/36pt#; % maximum breadth above or below notches
+bar#:=22/36pt#; % lowercase bar thickness
+slab#:=22/36pt#; % serif and arm thickness
+cap_bar#:=22/36pt#; % uppercase bar thickness
+cap_band#:=22/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=25/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=0pt#; % for small refinements of stem breadth
+vair_corr#:=0pt#; % for small refinements of hairline height
+apex_corr#:=10/36pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=1/6; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=0.81; % factor applied to weights of heavy characters
+math_spread:=-1; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=0; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=0; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=true; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=true; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmss10.mf b/Master/texmf-dist/fonts/source/public/montex/kmss10.mf
new file mode 100644
index 00000000000..ed4f69a1ceb
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmss10.mf
@@ -0,0 +1,80 @@
+% File: kmss10.mf
+% Based on: cmrsz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Sans Serif 10 pt
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSS"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+width_adj#:=15/36pt#; % width adjustment for certain characters
+serif_fit#:=-7/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-10/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=250/36pt#; % height of caps
+fig_height#:=236/36pt#; % height of numerals
+x_height#:=160/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=79/36pt#; % height of crossbar in lowercase e
+comma_depth#:=45/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=17/36pt#; % width of extrafine details
+hair#:=28/36pt#; % lowercase hairline breadth
+stem#:=28/36pt#; % lowercase stem breadth
+curve#:=28/36pt#; % lowercase curve breadth
+ess#:=28/36pt#; % breadth in middle of lowercase s
+flare#:=25/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=30/36pt#; % diameter of dots
+cap_hair#:=28/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=32/36pt#; % uppercase curve breadth
+cap_ess#:=32/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=.5/36pt#; % vertical protrusion of beak serifs
+vair#:=22/36pt#; % vertical diameter of hairlines
+notch_cut#:=18/36pt#; % maximum breadth above or below notches
+bar#:=21/36pt#; % lowercase bar thickness
+slab#:=23/36pt#; % serif and arm thickness
+cap_bar#:=22/36pt#; % uppercase bar thickness
+cap_band#:=20/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=25/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=5/36pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.96; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt 2; % parameter for superellipses
+superpull:=1/20; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmss12.mf b/Master/texmf-dist/fonts/source/public/montex/kmss12.mf
new file mode 100644
index 00000000000..349b75a624a
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmss12.mf
@@ -0,0 +1,80 @@
+% File: kmss12.mf
+% Based on: cmrsz12.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Sans Serif 12 pt
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSS"; font_size 12pt#;
+
+u#:=23.5/36pt#; % unit width
+width_adj#:=17/36pt#; % width adjustment for certain characters
+serif_fit#:=-9/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-13/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=324/36pt#; % height of tallest characters
+asc_height#:=300/36pt#; % height of lowercase ascenders
+cap_height#:=300/36pt#; % height of caps
+fig_height#:=283/36pt#; % height of numerals
+x_height#:=192/36pt#; % height of lowercase without ascenders
+math_axis#:=108/36pt#; % axis of symmetry for math symbols
+bar_height#:=97/36pt#; % height of crossbar in lowercase e
+comma_depth#:=54/36pt#; % depth of comma below baseline
+desc_depth#:=84/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=20/36pt#; % width of extrafine details
+hair#:=33/36pt#; % lowercase hairline breadth
+stem#:=33/36pt#; % lowercase stem breadth
+curve#:=33/36pt#; % lowercase curve breadth
+ess#:=33/36pt#; % breadth in middle of lowercase s
+flare#:=30/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=35/36pt#; % diameter of dots
+cap_hair#:=33/36pt#; % uppercase hairline breadth
+cap_stem#:=37/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=37/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.44pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=.6/36pt#; % vertical protrusion of beak serifs
+vair#:=26/36pt#; % vertical diameter of hairlines
+notch_cut#:=22/36pt#; % maximum breadth above or below notches
+bar#:=25/36pt#; % lowercase bar thickness
+slab#:=27/36pt#; % serif and arm thickness
+cap_bar#:=26/36pt#; % uppercase bar thickness
+cap_band#:=24/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=31/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=6/36pt#; % extra width at diagonal junctions
+
+o#:=9/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.98; % factor applied to weights of heavy characters
+math_spread:=-0.2; % extra openness of math symbols
+superness:=1/sqrt 2; % parameter for superellipses
+superpull:=1/20; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmss17.mf b/Master/texmf-dist/fonts/source/public/montex/kmss17.mf
new file mode 100644
index 00000000000..f4a389b1014
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmss17.mf
@@ -0,0 +1,80 @@
+% File: kmss17.mf
+% Based on: cmrsz17.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Sans Serif 17 pt (more or less)
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSS"; font_size 17.28pt#;
+
+u#:=32.5/36pt#; % unit width
+width_adj#:=24/36pt#; % width adjustment for certain characters
+serif_fit#:=-12/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-17/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=466/36pt#; % height of tallest characters
+asc_height#:=432/36pt#; % height of lowercase ascenders
+cap_height#:=432/36pt#; % height of caps
+fig_height#:=408/36pt#; % height of numerals
+x_height#:=267.8/36pt#; % height of lowercase without ascenders
+math_axis#:=155.5/36pt#; % axis of symmetry for math symbols
+bar_height#:=136/36pt#; % height of crossbar in lowercase e
+comma_depth#:=78/36pt#; % depth of comma below baseline
+desc_depth#:=121/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=28/36pt#; % width of extrafine details
+hair#:=47/36pt#; % lowercase hairline breadth
+stem#:=47/36pt#; % lowercase stem breadth
+curve#:=47/36pt#; % lowercase curve breadth
+ess#:=47/36pt#; % breadth in middle of lowercase s
+flare#:=42/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=50/36pt#; % diameter of dots
+cap_hair#:=47/36pt#; % uppercase hairline breadth
+cap_stem#:=52/36pt#; % uppercase stem breadth
+cap_curve#:=52/36pt#; % uppercase curve breadth
+cap_ess#:=52/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.6pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=.8/36pt#; % vertical protrusion of beak serifs
+vair#:=38/36pt#; % vertical diameter of hairlines
+notch_cut#:=32/36pt#; % maximum breadth above or below notches
+bar#:=36/36pt#; % lowercase bar thickness
+slab#:=40/36pt#; % serif and arm thickness
+cap_bar#:=38/36pt#; % uppercase bar thickness
+cap_band#:=35/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=46/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=7/36pt#; % extra width at diagonal junctions
+
+o#:=10/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=-0.4; % extra openness of math symbols
+superness:=1/sqrt 2; % parameter for superellipses
+superpull:=1/20; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmss8.mf b/Master/texmf-dist/fonts/source/public/montex/kmss8.mf
new file mode 100644
index 00000000000..6cece7399d0
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmss8.mf
@@ -0,0 +1,80 @@
+% File: kmss8.mf
+% Based on: cmrsz8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Sans Serif 8 pt
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSS"; font_size 8pt#;
+
+u#:=17/36pt#; % unit width
+width_adj#:=12/36pt#; % width adjustment for certain characters
+serif_fit#:=-6/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-8.5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=216/36pt#; % height of tallest characters
+asc_height#:=200/36pt#; % height of lowercase ascenders
+cap_height#:=200/36pt#; % height of caps
+fig_height#:=189/36pt#; % height of numerals
+x_height#:=128/36pt#; % height of lowercase without ascenders
+math_axis#:=72/36pt#; % axis of symmetry for math symbols
+bar_height#:=63/36pt#; % height of crossbar in lowercase e
+comma_depth#:=37/36pt#; % depth of comma below baseline
+desc_depth#:=56/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=15/36pt#; % width of extrafine details
+hair#:=25/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=25/36pt#; % lowercase curve breadth
+ess#:=25/36pt#; % breadth in middle of lowercase s
+flare#:=22/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=26/36pt#; % diameter of dots
+cap_hair#:=25/36pt#; % uppercase hairline breadth
+cap_stem#:=29/36pt#; % uppercase stem breadth
+cap_curve#:=29/36pt#; % uppercase curve breadth
+cap_ess#:=28/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=.4/36pt#; % vertical protrusion of beak serifs
+vair#:=19/36pt#; % vertical diameter of hairlines
+notch_cut#:=16/36pt#; % maximum breadth above or below notches
+bar#:=18/36pt#; % lowercase bar thickness
+slab#:=20/36pt#; % serif and arm thickness
+cap_bar#:=19/36pt#; % uppercase bar thickness
+cap_band#:=17/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=22/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=4/36pt#; % extra width at diagonal junctions
+
+o#:=6/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.93; % factor applied to weights of heavy characters
+math_spread:=.4; % extra openness of math symbols
+superness:=1/sqrt 2; % parameter for superellipses
+superpull:=1/20; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmss9.mf b/Master/texmf-dist/fonts/source/public/montex/kmss9.mf
new file mode 100644
index 00000000000..e85def409cb
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmss9.mf
@@ -0,0 +1,80 @@
+% File: kmss9.mf
+% Based on: cmrsz9.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Sans Serif 9 pt
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSS"; font_size 9pt#;
+
+u#:=18.5/36pt#; % unit width
+width_adj#:=13/36pt#; % width adjustment for certain characters
+serif_fit#:=-6.5/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-9/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=243/36pt#; % height of tallest characters
+asc_height#:=225/36pt#; % height of lowercase ascenders
+cap_height#:=225/36pt#; % height of caps
+fig_height#:=236/36pt#; % height of numerals
+x_height#:=144/36pt#; % height of lowercase without ascenders
+math_axis#:=81/36pt#; % axis of symmetry for math symbols
+bar_height#:=71/36pt#; % height of crossbar in lowercase e
+comma_depth#:=41/36pt#; % depth of comma below baseline
+desc_depth#:=63/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=16/36pt#; % width of extrafine details
+hair#:=27/36pt#; % lowercase hairline breadth
+stem#:=27/36pt#; % lowercase stem breadth
+curve#:=27/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=24/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=28/36pt#; % diameter of dots
+cap_hair#:=27/36pt#; % uppercase hairline breadth
+cap_stem#:=31/36pt#; % uppercase stem breadth
+cap_curve#:=31/36pt#; % uppercase curve breadth
+cap_ess#:=31/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.38pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=.5/36pt#; % vertical protrusion of beak serifs
+vair#:=21/36pt#; % vertical diameter of hairlines
+notch_cut#:=17/36pt#; % maximum breadth above or below notches
+bar#:=20/36pt#; % lowercase bar thickness
+slab#:=22/36pt#; % serif and arm thickness
+cap_bar#:=21/36pt#; % uppercase bar thickness
+cap_band#:=19/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=24/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=4.5/36pt#; % extra width at diagonal junctions
+
+o#:=7/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.95; % factor applied to weights of heavy characters
+math_spread:=.2; % extra openness of math symbols
+superness:=1/sqrt 2; % parameter for superellipses
+superpull:=1/20; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmssbx10.mf b/Master/texmf-dist/fonts/source/public/montex/kmssbx10.mf
new file mode 100644
index 00000000000..78865704a8d
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmssbx10.mf
@@ -0,0 +1,80 @@
+% File: kmssbx10.mf
+% Based on: cmbszx10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Sans Serif Bold Extended 10 pt
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSSBX"; font_size 10pt#;
+
+u#:=22/36pt#; % unit width
+width_adj#:=22/36pt#; % width adjustment for certain characters
+serif_fit#:=-9/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-11/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=250/36pt#; % height of caps
+fig_height#:=250/36pt#; % height of numerals
+x_height#:=165/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=90/36pt#; % height of crossbar in lowercase e
+comma_depth#:=38/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=26/36pt#; % diameter of serif corners
+tiny#:=26/36pt#; % diameter of rounded corners
+fine#:=9/36pt#; % diameter of sharply rounded corners
+thin_join#:=9/36pt#; % width of extrafine details
+hair#:=49/36pt#; % lowercase hairline breadth
+stem#:=49/36pt#; % lowercase stem breadth
+curve#:=49/36pt#; % lowercase curve breadth
+ess#:=43/36pt#; % breadth in middle of lowercase s
+flare#:=40/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=47/36pt#; % diameter of dots
+cap_hair#:=49/36pt#; % uppercase hairline breadth
+cap_stem#:=53/36pt#; % uppercase stem breadth
+cap_curve#:=53/36pt#; % uppercase curve breadth
+cap_ess#:=51/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=30/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=1.5/36pt#; % vertical protrusion of beak serifs
+vair#:=26/36pt#; % vertical diameter of hairlines
+notch_cut#:=49/36pt#; % maximum breadth above or below notches
+bar#:=26/36pt#; % lowercase bar thickness
+slab#:=36/36pt#; % serif and arm thickness
+cap_bar#:=34/36pt#; % uppercase bar thickness
+cap_band#:=31/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=45/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=2/36pt#; % for small refinements of hairline height
+apex_corr#:=18/36pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.88; % factor applied to weights of heavy characters
+math_spread:=.5; % extra openness of math symbols
+superness:=3/4; % parameter for superellipses
+superpull:=1/18; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmssdc10.mf b/Master/texmf-dist/fonts/source/public/montex/kmssdc10.mf
new file mode 100644
index 00000000000..2dfbe444223
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmssdc10.mf
@@ -0,0 +1,80 @@
+% File: kmssdc10.mf
+% Based on: cmdszc10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Sans Serif Demibold Condensed 10 pt
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSSDC"; font_size 10pt#;
+
+u#:=19/36pt#; % unit width
+width_adj#:=15/36pt#; % width adjustment for certain characters
+serif_fit#:=-8/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-9/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=250/36pt#; % height of caps
+fig_height#:=250/36pt#; % height of numerals
+x_height#:=170/36pt#; % height of lowercase without ascenders
+math_axis#:=95/36pt#; % axis of symmetry for math symbols
+bar_height#:=95/36pt#; % height of crossbar in lowercase e
+comma_depth#:=40/36pt#; % depth of comma below baseline
+desc_depth#:=60/36pt#; % depth of lowercase descenders
+
+crisp#:=23/36pt#; % diameter of serif corners
+tiny#:=23/36pt#; % diameter of rounded corners
+fine#:=8/36pt#; % diameter of sharply rounded corners
+thin_join#:=8/36pt#; % width of extrafine details
+hair#:=40/36pt#; % lowercase hairline breadth
+stem#:=40/36pt#; % lowercase stem breadth
+curve#:=40/36pt#; % lowercase curve breadth
+ess#:=37/36pt#; % breadth in middle of lowercase s
+flare#:=31/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=40/36pt#; % uppercase hairline breadth
+cap_stem#:=44/36pt#; % uppercase stem breadth
+cap_curve#:=44/36pt#; % uppercase curve breadth
+cap_ess#:=42/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=25/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=1.5/36pt#; % vertical protrusion of beak serifs
+vair#:=23/36pt#; % vertical diameter of hairlines
+notch_cut#:=40/36pt#; % maximum breadth above or below notches
+bar#:=23/36pt#; % lowercase bar thickness
+slab#:=31/36pt#; % serif and arm thickness
+cap_bar#:=29/36pt#; % uppercase bar thickness
+cap_band#:=27/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=37/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=2/36pt#; % for small refinements of hairline height
+apex_corr#:=14/36pt#; % extra width at diagonal junctions
+
+o#:=7/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.91; % factor applied to weights of heavy characters
+math_spread:=.3; % extra openness of math symbols
+superness:=.74; % parameter for superellipses
+superpull:=1/18; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmssi10.mf b/Master/texmf-dist/fonts/source/public/montex/kmssi10.mf
new file mode 100644
index 00000000000..781654364f0
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmssi10.mf
@@ -0,0 +1,81 @@
+% File: kmssi10.mf
+% Based on: cmrisz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Slanted Sans Serif 10 pt
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSSI"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+width_adj#:=15/36pt#; % width adjustment for certain characters
+serif_fit#:=-7/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-10/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=250/36pt#; % height of caps
+fig_height#:=236/36pt#; % height of numerals
+x_height#:=160/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=79/36pt#; % height of crossbar in lowercase e
+comma_depth#:=45/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=17/36pt#; % width of extrafine details
+hair#:=28/36pt#; % lowercase hairline breadth
+stem#:=28/36pt#; % lowercase stem breadth
+curve#:=28/36pt#; % lowercase curve breadth
+ess#:=28/36pt#; % breadth in middle of lowercase s
+flare#:=25/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=30/36pt#; % diameter of dots
+cap_hair#:=28/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=32/36pt#; % uppercase curve breadth
+cap_ess#:=32/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=.5/36pt#; % vertical protrusion of beak serifs
+vair#:=22/36pt#; % vertical diameter of hairlines
+notch_cut#:=18/36pt#; % maximum breadth above or below notches
+bar#:=21/36pt#; % lowercase bar thickness
+slab#:=23/36pt#; % serif and arm thickness
+cap_bar#:=22/36pt#; % uppercase bar thickness
+cap_band#:=20/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=25/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=5/36pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=sind 12/cosd 12; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.96; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt 2; % parameter for superellipses
+superpull:=1/20; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmssi12.mf b/Master/texmf-dist/fonts/source/public/montex/kmssi12.mf
new file mode 100644
index 00000000000..542f1b31df9
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmssi12.mf
@@ -0,0 +1,82 @@
+% File: kmssi12.mf
+% Based on: cmrisz12.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+
+% Computer Modern Slanted Sans Serif 12 pt
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSSI"; font_size 12pt#;
+
+u#:=23.5/36pt#; % unit width
+width_adj#:=17/36pt#; % width adjustment for certain characters
+serif_fit#:=-9/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-13/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=324/36pt#; % height of tallest characters
+asc_height#:=300/36pt#; % height of lowercase ascenders
+cap_height#:=300/36pt#; % height of caps
+fig_height#:=283/36pt#; % height of numerals
+x_height#:=192/36pt#; % height of lowercase without ascenders
+math_axis#:=108/36pt#; % axis of symmetry for math symbols
+bar_height#:=97/36pt#; % height of crossbar in lowercase e
+comma_depth#:=54/36pt#; % depth of comma below baseline
+desc_depth#:=84/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=20/36pt#; % width of extrafine details
+hair#:=33/36pt#; % lowercase hairline breadth
+stem#:=33/36pt#; % lowercase stem breadth
+curve#:=33/36pt#; % lowercase curve breadth
+ess#:=33/36pt#; % breadth in middle of lowercase s
+flare#:=30/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=35/36pt#; % diameter of dots
+cap_hair#:=33/36pt#; % uppercase hairline breadth
+cap_stem#:=37/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=37/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.44pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=.6/36pt#; % vertical protrusion of beak serifs
+vair#:=26/36pt#; % vertical diameter of hairlines
+notch_cut#:=22/36pt#; % maximum breadth above or below notches
+bar#:=25/36pt#; % lowercase bar thickness
+slab#:=27/36pt#; % serif and arm thickness
+cap_bar#:=26/36pt#; % uppercase bar thickness
+cap_band#:=24/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=31/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=6/36pt#; % extra width at diagonal junctions
+
+o#:=9/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=sind 12/cosd 12; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.98; % factor applied to weights of heavy characters
+math_spread:=-0.2; % extra openness of math symbols
+superness:=1/sqrt 2; % parameter for superellipses
+superpull:=1/20; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmssi17.mf b/Master/texmf-dist/fonts/source/public/montex/kmssi17.mf
new file mode 100644
index 00000000000..e2bf958a211
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmssi17.mf
@@ -0,0 +1,81 @@
+% File: kmssi17.mf
+% Based on: cmrisz17.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Slanted Sans Serif 17 pt (more or less)
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSSI"; font_size 17.28pt#;
+
+u#:=32.5/36pt#; % unit width
+width_adj#:=24/36pt#; % width adjustment for certain characters
+serif_fit#:=-12/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-17/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=466/36pt#; % height of tallest characters
+asc_height#:=432/36pt#; % height of lowercase ascenders
+cap_height#:=432/36pt#; % height of caps
+fig_height#:=408/36pt#; % height of numerals
+x_height#:=267.8/36pt#; % height of lowercase without ascenders
+math_axis#:=155.5/36pt#; % axis of symmetry for math symbols
+bar_height#:=136/36pt#; % height of crossbar in lowercase e
+comma_depth#:=78/36pt#; % depth of comma below baseline
+desc_depth#:=121/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=28/36pt#; % width of extrafine details
+hair#:=47/36pt#; % lowercase hairline breadth
+stem#:=47/36pt#; % lowercase stem breadth
+curve#:=47/36pt#; % lowercase curve breadth
+ess#:=47/36pt#; % breadth in middle of lowercase s
+flare#:=42/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=50/36pt#; % diameter of dots
+cap_hair#:=47/36pt#; % uppercase hairline breadth
+cap_stem#:=52/36pt#; % uppercase stem breadth
+cap_curve#:=52/36pt#; % uppercase curve breadth
+cap_ess#:=52/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.6pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=.8/36pt#; % vertical protrusion of beak serifs
+vair#:=38/36pt#; % vertical diameter of hairlines
+notch_cut#:=32/36pt#; % maximum breadth above or below notches
+bar#:=36/36pt#; % lowercase bar thickness
+slab#:=40/36pt#; % serif and arm thickness
+cap_bar#:=38/36pt#; % uppercase bar thickness
+cap_band#:=35/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=46/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=7/36pt#; % extra width at diagonal junctions
+
+o#:=10/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=sind 12/cosd 12; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=-0.4; % extra openness of math symbols
+superness:=1/sqrt 2; % parameter for superellipses
+superpull:=1/20; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmssi8.mf b/Master/texmf-dist/fonts/source/public/montex/kmssi8.mf
new file mode 100644
index 00000000000..d25f96fdaec
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmssi8.mf
@@ -0,0 +1,81 @@
+% File: kmssi8.mf
+% Based on: cmrisz8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Slanted Sans Serif 8 pt
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSSI"; font_size 8pt#;
+
+u#:=17/36pt#; % unit width
+width_adj#:=12/36pt#; % width adjustment for certain characters
+serif_fit#:=-6/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-8.5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=216/36pt#; % height of tallest characters
+asc_height#:=200/36pt#; % height of lowercase ascenders
+cap_height#:=200/36pt#; % height of caps
+fig_height#:=189/36pt#; % height of numerals
+x_height#:=128/36pt#; % height of lowercase without ascenders
+math_axis#:=72/36pt#; % axis of symmetry for math symbols
+bar_height#:=63/36pt#; % height of crossbar in lowercase e
+comma_depth#:=37/36pt#; % depth of comma below baseline
+desc_depth#:=56/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=15/36pt#; % width of extrafine details
+hair#:=25/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=25/36pt#; % lowercase curve breadth
+ess#:=25/36pt#; % breadth in middle of lowercase s
+flare#:=22/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=26/36pt#; % diameter of dots
+cap_hair#:=25/36pt#; % uppercase hairline breadth
+cap_stem#:=29/36pt#; % uppercase stem breadth
+cap_curve#:=29/36pt#; % uppercase curve breadth
+cap_ess#:=28/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=.4/36pt#; % vertical protrusion of beak serifs
+vair#:=19/36pt#; % vertical diameter of hairlines
+notch_cut#:=16/36pt#; % maximum breadth above or below notches
+bar#:=18/36pt#; % lowercase bar thickness
+slab#:=20/36pt#; % serif and arm thickness
+cap_bar#:=19/36pt#; % uppercase bar thickness
+cap_band#:=17/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=22/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=4/36pt#; % extra width at diagonal junctions
+
+o#:=6/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=sind 12/cosd 12; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.93; % factor applied to weights of heavy characters
+math_spread:=.4; % extra openness of math symbols
+superness:=1/sqrt 2; % parameter for superellipses
+superpull:=1/20; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmssi9.mf b/Master/texmf-dist/fonts/source/public/montex/kmssi9.mf
new file mode 100644
index 00000000000..b5ce9d4b011
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmssi9.mf
@@ -0,0 +1,81 @@
+% File: kmssi9.mf
+% Based on: cmrisz9.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Slanted Sans Serif 9 pt
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSSI"; font_size 9pt#;
+
+u#:=18.5/36pt#; % unit width
+width_adj#:=13/36pt#; % width adjustment for certain characters
+serif_fit#:=-6.5/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-9/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=243/36pt#; % height of tallest characters
+asc_height#:=225/36pt#; % height of lowercase ascenders
+cap_height#:=225/36pt#; % height of caps
+fig_height#:=236/36pt#; % height of numerals
+x_height#:=144/36pt#; % height of lowercase without ascenders
+math_axis#:=81/36pt#; % axis of symmetry for math symbols
+bar_height#:=71/36pt#; % height of crossbar in lowercase e
+comma_depth#:=41/36pt#; % depth of comma below baseline
+desc_depth#:=63/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=0pt#; % diameter of rounded corners
+fine#:=0pt#; % diameter of sharply rounded corners
+thin_join#:=16/36pt#; % width of extrafine details
+hair#:=27/36pt#; % lowercase hairline breadth
+stem#:=27/36pt#; % lowercase stem breadth
+curve#:=27/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=24/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=28/36pt#; % diameter of dots
+cap_hair#:=27/36pt#; % uppercase hairline breadth
+cap_stem#:=31/36pt#; % uppercase stem breadth
+cap_curve#:=31/36pt#; % uppercase curve breadth
+cap_ess#:=31/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.38pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=.5/36pt#; % vertical protrusion of beak serifs
+vair#:=21/36pt#; % vertical diameter of hairlines
+notch_cut#:=17/36pt#; % maximum breadth above or below notches
+bar#:=20/36pt#; % lowercase bar thickness
+slab#:=22/36pt#; % serif and arm thickness
+cap_bar#:=21/36pt#; % uppercase bar thickness
+cap_band#:=19/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=24/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=4.5/36pt#; % extra width at diagonal junctions
+
+o#:=7/36pt#; % amount of overshoot for curves
+apex_o#:=0pt#; % amount of overshoot for diagonal junctions
+
+slant:=sind 12/cosd 12; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.95; % factor applied to weights of heavy characters
+math_spread:=.2; % extra openness of math symbols
+superness:=1/sqrt 2; % parameter for superellipses
+superpull:=1/20; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmssq8.mf b/Master/texmf-dist/fonts/source/public/montex/kmssq8.mf
new file mode 100644
index 00000000000..dd5d97025d5
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmssq8.mf
@@ -0,0 +1,80 @@
+% File: kmssq8.mf
+% Based on: cmssq8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Sans Serif Quotation Style 8 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSSQ"; font_size 8pt#;
+
+u#:=20/36pt#; % unit width
+width_adj#:=2/36pt#; % width adjustment for certain characters
+serif_fit#:=-10/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-14/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=220/36pt#; % height of tallest characters
+asc_height#:=200/36pt#; % height of lowercase ascenders
+cap_height#:=197/36pt#; % height of caps
+fig_height#:=190/36pt#; % height of numerals
+x_height#:=150/36pt#; % height of lowercase without ascenders
+math_axis#:=80/36pt#; % axis of symmetry for math symbols
+bar_height#:=80/36pt#; % height of crossbar in lowercase e
+comma_depth#:=40/36pt#; % depth of comma below baseline
+desc_depth#:=40/36pt#; % depth of lowercase descenders
+
+crisp#:=18/36pt#; % diameter of serif corners
+tiny#:=18/36pt#; % diameter of rounded corners
+fine#:=8/36pt#; % diameter of sharply rounded corners
+thin_join#:=8/36pt#; % width of extrafine details
+hair#:=23/36pt#; % lowercase hairline breadth
+stem#:=23/36pt#; % lowercase stem breadth
+curve#:=23/36pt#; % lowercase curve breadth
+ess#:=23/36pt#; % breadth in middle of lowercase s
+flare#:=21/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=28/36pt#; % diameter of dots
+cap_hair#:=23/36pt#; % uppercase hairline breadth
+cap_stem#:=27/36pt#; % uppercase stem breadth
+cap_curve#:=27/36pt#; % uppercase curve breadth
+cap_ess#:=27/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=20/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=0pt#; % vertical protrusion of beak serifs
+vair#:=18/36pt#; % vertical diameter of hairlines
+notch_cut#:=23/36pt#; % maximum breadth above or below notches
+bar#:=18/36pt#; % lowercase bar thickness
+slab#:=19/36pt#; % serif and arm thickness
+cap_bar#:=19/36pt#; % uppercase bar thickness
+cap_band#:=19/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=23/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=.5/36pt#; % for small refinements of stem breadth
+vair_corr#:=.5/36pt#; % for small refinements of hairline height
+apex_corr#:=4/36pt#; % extra width at diagonal junctions
+
+o#:=6/36pt#; % amount of overshoot for curves
+apex_o#:=2/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.95; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/10; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmssqi8.mf b/Master/texmf-dist/fonts/source/public/montex/kmssqi8.mf
new file mode 100644
index 00000000000..78dd299fb81
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmssqi8.mf
@@ -0,0 +1,80 @@
+% File: kmssqi8.mf
+% Based on: cmssqi8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Sans Serif Quotation Style Slanted 8 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMSSQI"; font_size 8pt#;
+
+u#:=20/36pt#; % unit width
+width_adj#:=2/36pt#; % width adjustment for certain characters
+serif_fit#:=-10/36pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=-14/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=220/36pt#; % height of tallest characters
+asc_height#:=200/36pt#; % height of lowercase ascenders
+cap_height#:=197/36pt#; % height of caps
+fig_height#:=190/36pt#; % height of numerals
+x_height#:=150/36pt#; % height of lowercase without ascenders
+math_axis#:=80/36pt#; % axis of symmetry for math symbols
+bar_height#:=80/36pt#; % height of crossbar in lowercase e
+comma_depth#:=40/36pt#; % depth of comma below baseline
+desc_depth#:=40/36pt#; % depth of lowercase descenders
+
+crisp#:=18/36pt#; % diameter of serif corners
+tiny#:=18/36pt#; % diameter of rounded corners
+fine#:=8/36pt#; % diameter of sharply rounded corners
+thin_join#:=8/36pt#; % width of extrafine details
+hair#:=23/36pt#; % lowercase hairline breadth
+stem#:=23/36pt#; % lowercase stem breadth
+curve#:=23/36pt#; % lowercase curve breadth
+ess#:=23/36pt#; % breadth in middle of lowercase s
+flare#:=21/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=28/36pt#; % diameter of dots
+cap_hair#:=23/36pt#; % uppercase hairline breadth
+cap_stem#:=27/36pt#; % uppercase stem breadth
+cap_curve#:=27/36pt#; % uppercase curve breadth
+cap_ess#:=27/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=20/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=0pt#; % protrusion of lowercase serifs
+cap_jut#:=0pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=0pt#; % vertical protrusion of beak serifs
+vair#:=18/36pt#; % vertical diameter of hairlines
+notch_cut#:=23/36pt#; % maximum breadth above or below notches
+bar#:=18/36pt#; % lowercase bar thickness
+slab#:=19/36pt#; % serif and arm thickness
+cap_bar#:=19/36pt#; % uppercase bar thickness
+cap_band#:=19/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=23/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=.5/36pt#; % for small refinements of stem breadth
+vair_corr#:=.5/36pt#; % for small refinements of hairline height
+apex_corr#:=4/36pt#; % extra width at diagonal junctions
+
+o#:=6/36pt#; % amount of overshoot for curves
+apex_o#:=2/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=sind 12/cosd 12; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=.95; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/10; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=true; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=false; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmtcsc10.mf b/Master/texmf-dist/fonts/source/public/montex/kmtcsc10.mf
new file mode 100644
index 00000000000..0ad8e42444e
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmtcsc10.mf
@@ -0,0 +1,115 @@
+% File: kmtcsc10.mf
+% Based on: cmrctz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Typewriter Caps and Small Caps 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMTCSC"; font_size 10pt#;
+
+% first come parameters used to set the uppercase letters
+% (including some for lowercase that aren't actually used)
+u#:=21/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=250/36pt#; % height of tallest characters
+asc_height#:=220/36pt#; % height of lowercase ascenders
+cap_height#:=220/36pt#; % height of caps
+fig_height#:=220/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=110/36pt#; % axis of symmetry for math symbols
+bar_height#:=79/36pt#; % height of crossbar in lowercase e
+comma_depth#:=50/36pt#; % depth of comma below baseline
+desc_depth#:=80/36pt#; % depth of lowercase descenders
+
+crisp#:=22/36pt#; % diameter of serif corners
+tiny#:=22/36pt#; % diameter of rounded corners
+fine#:=21/36pt#; % diameter of sharply rounded corners
+thin_join#:=21/36pt#; % width of extrafine details
+hair#:=25/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=25/36pt#; % lowercase curve breadth
+ess#:=22/36pt#; % breadth in middle of lowercase s
+flare#:=32/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=36/36pt#; % diameter of dots
+cap_hair#:=25/36pt#; % uppercase hairline breadth
+cap_stem#:=25/36pt#; % uppercase stem breadth
+cap_curve#:=25/36pt#; % uppercase curve breadth
+cap_ess#:=25/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=25/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=34/36pt#; % protrusion of lowercase serifs
+cap_jut#:=34/36pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=34/36pt#; % vertical protrusion of beak serifs
+vair#:=22/36pt#; % vertical diameter of hairlines
+notch_cut#:=25/36pt#; % maximum breadth above or below notches
+bar#:=22/36pt#; % lowercase bar thickness
+slab#:=22/36pt#; % serif and arm thickness
+cap_bar#:=22/36pt#; % uppercase bar thickness
+cap_band#:=22/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=25/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=0pt#; % for small refinements of stem breadth
+vair_corr#:=0pt#; % for small refinements of hairline height
+apex_corr#:=10/36pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=0.81; % factor applied to weights of heavy characters
+math_spread:=-1; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=0; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=0; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=true; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=true; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+% now come replacements used to set the lowercase caps
+
+lower.u#:=21/36pt#; % unit width
+lower.width_adj#:=0pt#; % width adjustment for certain characters
+lower.cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+lower.letter_fit#:=3/36pt#; % extra space added to all sidebars
+
+lower.body_height#:=190/36pt#; % height of tallest characters
+lower.cap_height#:=170/36pt#; % height of caps
+lower.x_height#:=120/36pt#; % height of lowercase without ascenders
+lower.bar_height#:=62/36pt#; % height of crossbar in lowercase e
+lower.comma_depth#:=38/36pt#; % depth of comma below baseline
+
+lower.flare#:=30/36pt#; % diameter of bulbs or breadth of terminals
+lower.cap_hair#:=25/36pt#; % uppercase hairline breadth
+lower.stem#:=25/36pt#; % lowercase stem breadth
+lower.cap_stem#:=25/36pt#; % uppercase stem breadth
+lower.cap_curve#:=25/36pt#; % uppercase curve breadth
+lower.cap_ess#:=25/36pt#; % breadth in middle of uppercase s
+
+lower.cap_jut#:=26/36pt#; % protrusion of uppercase serifs
+lower.beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+lower.beak#:=26/36pt#; % vertical protrusion of beak serifs
+lower.slab#:=22/36pt#; % serif and arm thickness
+lower.cap_bar#:=22/36pt#; % uppercase bar thickness
+lower.cap_band#:=22/36pt#; % uppercase thickness above/below lobes
+lower.cap_notch_cut#:=24/36pt#; % max breadth above/below uppercase notches
+
+lower.o#:=3/36pt#; % amount of overshoot for curves
+lower.apex_o#:=2/36pt#; % amount of overshoot for diagonal junctions
+
+lower.fudge:=0.85; % factor applied to weights of heavy characters
+
+generate mcyccsc; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmti10.mf b/Master/texmf-dist/fonts/source/public/montex/kmti10.mf
new file mode 100644
index 00000000000..7076060215d
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmti10.mf
@@ -0,0 +1,81 @@
+% File: kmti10.mf
+% Based on: cmriz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Text Italic 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMTI"; font_size 10pt#;
+
+u#:=18.4/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=9.2/36pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=8/36pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=11/36pt#; % lowercase hairline breadth
+stem#:=23/36pt#; % lowercase stem breadth
+curve#:=28/36pt#; % lowercase curve breadth
+ess#:=27/36pt#; % breadth in middle of lowercase s
+flare#:=29/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=29/36pt#; % uppercase stem breadth
+cap_curve#:=34/36pt#; % uppercase curve breadth
+cap_ess#:=31/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=30/36pt#; % protrusion of lowercase serifs
+cap_jut#:=34/36pt#; % protrusion of uppercase serifs
+beak_jut#:=9/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=.25; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mctextit; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmti12.mf b/Master/texmf-dist/fonts/source/public/montex/kmti12.mf
new file mode 100644
index 00000000000..d7ce227c0b4
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmti12.mf
@@ -0,0 +1,81 @@
+% File: kmti12.mf
+% Based on: cmriz12.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Text Italic 12 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMTI"; font_size 12pt#;
+
+u#:=21.6/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5.8/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=10.8/36pt#; % extra space added to all sidebars
+
+body_height#:=324/36pt#; % height of tallest characters
+asc_height#:=300/36pt#; % height of lowercase ascenders
+cap_height#:=295.2/36pt#; % height of caps
+fig_height#:=278.4/36pt#; % height of numerals
+x_height#:=186/36pt#; % height of lowercase without ascenders
+math_axis#:=108/36pt#; % axis of symmetry for math symbols
+bar_height#:=104.4/36pt#; % height of crossbar in lowercase e
+comma_depth#:=84/36pt#; % depth of comma below baseline
+desc_depth#:=84/36pt#; % depth of lowercase descenders
+
+crisp#:=8/36pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7.5/36pt#; % width of extrafine details
+hair#:=12/36pt#; % lowercase hairline breadth
+stem#:=26/36pt#; % lowercase stem breadth
+curve#:=31/36pt#; % lowercase curve breadth
+ess#:=29/36pt#; % breadth in middle of lowercase s
+flare#:=32/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=42/36pt#; % diameter of dots
+cap_hair#:=11.5/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=34/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.44pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=24/36pt#; % vertical distance from serif base to tangent
+jut#:=35/36pt#; % protrusion of lowercase serifs
+cap_jut#:=38/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10.4/36pt#; % horizontal protrusion of beak serifs
+beak#:=84/36pt#; % vertical protrusion of beak serifs
+vair#:=8.5/36pt#; % vertical diameter of hairlines
+notch_cut#:=12pt#; % maximum breadth above or below notches
+bar#:=12.5/36pt#; % lowercase bar thickness
+slab#:=12.5/36pt#; % serif and arm thickness
+cap_bar#:=12.5/36pt#; % uppercase bar thickness
+cap_band#:=12.5/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=12pt#; % max breadth above/below uppercase notches
+serif_drop#:=4.8/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=9/36pt#; % amount of overshoot for curves
+apex_o#:=9/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=.25; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=-0.2; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mctextit; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmti7.mf b/Master/texmf-dist/fonts/source/public/montex/kmti7.mf
new file mode 100644
index 00000000000..52b6c5d9845
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmti7.mf
@@ -0,0 +1,80 @@
+% File: kmti7.mf
+% Based on: cmti7.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Text Italic 7 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMTI"; font_size 7pt#;
+
+u#:=14.8/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=3.5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=9.4/36pt#; % extra space added to all sidebars
+
+body_height#:=189/36pt#; % height of tallest characters
+asc_height#:=175/36pt#; % height of lowercase ascenders
+cap_height#:=172.2/36pt#; % height of caps
+fig_height#:=162.4/36pt#; % height of numerals
+x_height#:=108.5/36pt#; % height of lowercase without ascenders
+math_axis#:=63/36pt#; % axis of symmetry for math symbols
+bar_height#:=60.9/36pt#; % height of crossbar in lowercase e
+comma_depth#:=49/36pt#; % depth of comma below baseline
+desc_depth#:=49/36pt#; % depth of lowercase descenders
+
+crisp#:=7/36pt#; % diameter of serif corners
+tiny#:=7/36pt#; % diameter of rounded corners
+fine#:=6/36pt#; % diameter of sharply rounded corners
+thin_join#:=6/36pt#; % width of extrafine details
+hair#:=10.5/36pt#; % lowercase hairline breadth
+stem#:=18.5/36pt#; % lowercase stem breadth
+curve#:=21.5/36pt#; % lowercase curve breadth
+ess#:=21/36pt#; % breadth in middle of lowercase s
+flare#:=21/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=29/36pt#; % diameter of dots
+cap_hair#:=10.5/36pt#; % uppercase hairline breadth
+cap_stem#:=21.5/36pt#; % uppercase stem breadth
+cap_curve#:=24.5/36pt#; % uppercase curve breadth
+cap_ess#:=21/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.34pt#; % thickness of lines in math symbols
+
+dish#:=.9/36pt#; % amount erased at top or bottom of serifs
+bracket#:=14/36pt#; % vertical distance from serif base to tangent
+jut#:=21/36pt#; % protrusion of lowercase serifs
+cap_jut#:=24/36pt#; % protrusion of uppercase serifs
+beak_jut#:=7.4/36pt#; % horizontal protrusion of beak serifs
+beak#:=49/36pt#; % vertical protrusion of beak serifs
+vair#:=7/36pt#; % vertical diameter of hairlines
+notch_cut#:=7pt#; % maximum breadth above or below notches
+bar#:=9/36pt#; % lowercase bar thickness
+slab#:=9/36pt#; % serif and arm thickness
+cap_bar#:=9/36pt#; % uppercase bar thickness
+cap_band#:=9/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=7pt#; % max breadth above/below uppercase notches
+serif_drop#:=2.8/36pt#; % vertical drop of sloped serifs
+stem_corr#:=.9/36pt#; % for small refinements of stem breadth
+vair_corr#:=.9/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=5/36pt#; % amount of overshoot for curves
+apex_o#:=5/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=.25; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.6; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mctextit; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmti8.mf b/Master/texmf-dist/fonts/source/public/montex/kmti8.mf
new file mode 100644
index 00000000000..2c234683f87
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmti8.mf
@@ -0,0 +1,81 @@
+% File: kmti8.mf
+% Based on: cmriz8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Text Italic 8 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMTI"; font_size 8pt#;
+
+u#:=15.8/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=4.1/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=7.9/36pt#; % extra space added to all sidebars
+
+body_height#:=216/36pt#; % height of tallest characters
+asc_height#:=200/36pt#; % height of lowercase ascenders
+cap_height#:=196.8/36pt#; % height of caps
+fig_height#:=185.6/36pt#; % height of numerals
+x_height#:=124/36pt#; % height of lowercase without ascenders
+math_axis#:=72/36pt#; % axis of symmetry for math symbols
+bar_height#:=69.6/36pt#; % height of crossbar in lowercase e
+comma_depth#:=56/36pt#; % depth of comma below baseline
+desc_depth#:=56/36pt#; % depth of lowercase descenders
+
+crisp#:=8/36pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=11/36pt#; % lowercase hairline breadth
+stem#:=20/36pt#; % lowercase stem breadth
+curve#:=23.5/36pt#; % lowercase curve breadth
+ess#:=23/36pt#; % breadth in middle of lowercase s
+flare#:=24/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=32/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=23.5/36pt#; % uppercase stem breadth
+cap_curve#:=27/36pt#; % uppercase curve breadth
+cap_ess#:=24/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.36pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=16/36pt#; % vertical distance from serif base to tangent
+jut#:=24/36pt#; % protrusion of lowercase serifs
+cap_jut#:=27/36pt#; % protrusion of uppercase serifs
+beak_jut#:=7.9/36pt#; % horizontal protrusion of beak serifs
+beak#:=56/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=8pt#; % maximum breadth above or below notches
+bar#:=9.5/36pt#; % lowercase bar thickness
+slab#:=9.5/36pt#; % serif and arm thickness
+cap_bar#:=9.5/36pt#; % uppercase bar thickness
+cap_band#:=9.5/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=8pt#; % max breadth above/below uppercase notches
+serif_drop#:=3.2/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=6/36pt#; % amount of overshoot for curves
+apex_o#:=6/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=.25; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.4; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mctextit; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmti9.mf b/Master/texmf-dist/fonts/source/public/montex/kmti9.mf
new file mode 100644
index 00000000000..3bb4804d3be
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmti9.mf
@@ -0,0 +1,81 @@
+% File: kmti9.mf
+% Based on: cmriz9.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Text Italic 9 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMTI"; font_size 9pt#;
+
+u#:=17/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=4.6/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=8.5/36pt#; % extra space added to all sidebars
+
+body_height#:=243/36pt#; % height of tallest characters
+asc_height#:=225/36pt#; % height of lowercase ascenders
+cap_height#:=221.4/36pt#; % height of caps
+fig_height#:=208.8/36pt#; % height of numerals
+x_height#:=139.5/36pt#; % height of lowercase without ascenders
+math_axis#:=81/36pt#; % axis of symmetry for math symbols
+bar_height#:=78.3/36pt#; % height of crossbar in lowercase e
+comma_depth#:=63/36pt#; % depth of comma below baseline
+desc_depth#:=63/36pt#; % depth of lowercase descenders
+
+crisp#:=8/36pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=11/36pt#; % lowercase hairline breadth
+stem#:=22/36pt#; % lowercase stem breadth
+curve#:=26/36pt#; % lowercase curve breadth
+ess#:=25/36pt#; % breadth in middle of lowercase s
+flare#:=26/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=35/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=26/36pt#; % uppercase stem breadth
+cap_curve#:=30/36pt#; % uppercase curve breadth
+cap_ess#:=27/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.38pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=18/36pt#; % vertical distance from serif base to tangent
+jut#:=27/36pt#; % protrusion of lowercase serifs
+cap_jut#:=30.5/36pt#; % protrusion of uppercase serifs
+beak_jut#:=8.5/36pt#; % horizontal protrusion of beak serifs
+beak#:=63/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=9pt#; % maximum breadth above or below notches
+bar#:=10/36pt#; % lowercase bar thickness
+slab#:=10/36pt#; % serif and arm thickness
+cap_bar#:=10/36pt#; % uppercase bar thickness
+cap_band#:=10/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=9pt#; % max breadth above/below uppercase notches
+serif_drop#:=3.6/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=7/36pt#; % amount of overshoot for curves
+apex_o#:=7/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=.25; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.2; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mctextit; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmtt10.mf b/Master/texmf-dist/fonts/source/public/montex/kmtt10.mf
new file mode 100644
index 00000000000..a81117e71de
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmtt10.mf
@@ -0,0 +1,81 @@
+% File: kmtt10.mf
+% Based on: cmrtz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Typewriter Text for use with 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMTT"; font_size 10pt#;
+
+u#:=21/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=250/36pt#; % height of tallest characters
+asc_height#:=220/36pt#; % height of lowercase ascenders
+cap_height#:=220/36pt#; % height of caps
+fig_height#:=220/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=110/36pt#; % axis of symmetry for math symbols
+bar_height#:=79/36pt#; % height of crossbar in lowercase e
+comma_depth#:=50/36pt#; % depth of comma below baseline
+desc_depth#:=80/36pt#; % depth of lowercase descenders
+
+crisp#:=22/36pt#; % diameter of serif corners
+tiny#:=22/36pt#; % diameter of rounded corners
+fine#:=21/36pt#; % diameter of sharply rounded corners
+thin_join#:=21/36pt#; % width of extrafine details
+hair#:=25/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=25/36pt#; % lowercase curve breadth
+ess#:=22/36pt#; % breadth in middle of lowercase s
+flare#:=32/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=36/36pt#; % diameter of dots
+cap_hair#:=25/36pt#; % uppercase hairline breadth
+cap_stem#:=25/36pt#; % uppercase stem breadth
+cap_curve#:=25/36pt#; % uppercase curve breadth
+cap_ess#:=25/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=25/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=34/36pt#; % protrusion of lowercase serifs
+cap_jut#:=34/36pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=34/36pt#; % vertical protrusion of beak serifs
+vair#:=22/36pt#; % vertical diameter of hairlines
+notch_cut#:=25/36pt#; % maximum breadth above or below notches
+bar#:=22/36pt#; % lowercase bar thickness
+slab#:=22/36pt#; % serif and arm thickness
+cap_bar#:=22/36pt#; % uppercase bar thickness
+cap_band#:=22/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=25/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=0pt#; % for small refinements of stem breadth
+vair_corr#:=0pt#; % for small refinements of hairline height
+apex_corr#:=10/36pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=0.81; % factor applied to weights of heavy characters
+math_spread:=-1; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=0; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=0; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=true; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=true; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmtt12.mf b/Master/texmf-dist/fonts/source/public/montex/kmtt12.mf
new file mode 100644
index 00000000000..9adac562b2c
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmtt12.mf
@@ -0,0 +1,81 @@
+% File: kmtt12.mf
+% Based on: cmrtz12.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Typewriter Text for use with 12 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMTT"; font_size 12pt#;
+
+u#:=24.7/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=300/36pt#; % height of tallest characters
+asc_height#:=264/36pt#; % height of lowercase ascenders
+cap_height#:=264/36pt#; % height of caps
+fig_height#:=264/36pt#; % height of numerals
+x_height#:=186/36pt#; % height of lowercase without ascenders
+math_axis#:=132/36pt#; % axis of symmetry for math symbols
+bar_height#:=95/36pt#; % height of crossbar in lowercase e
+comma_depth#:=60/36pt#; % depth of comma below baseline
+desc_depth#:=96/36pt#; % depth of lowercase descenders
+
+crisp#:=25/36pt#; % diameter of serif corners
+tiny#:=25/36pt#; % diameter of rounded corners
+fine#:=22/36pt#; % diameter of sharply rounded corners
+thin_join#:=22/36pt#; % width of extrafine details
+hair#:=28/36pt#; % lowercase hairline breadth
+stem#:=28/36pt#; % lowercase stem breadth
+curve#:=28/36pt#; % lowercase curve breadth
+ess#:=25/36pt#; % breadth in middle of lowercase s
+flare#:=35/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=39/36pt#; % diameter of dots
+cap_hair#:=28/36pt#; % uppercase hairline breadth
+cap_stem#:=28/36pt#; % uppercase stem breadth
+cap_curve#:=28/36pt#; % uppercase curve breadth
+cap_ess#:=28/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=28/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=39/36pt#; % protrusion of lowercase serifs
+cap_jut#:=39/36pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=39/36pt#; % vertical protrusion of beak serifs
+vair#:=25/36pt#; % vertical diameter of hairlines
+notch_cut#:=28/36pt#; % maximum breadth above or below notches
+bar#:=25/36pt#; % lowercase bar thickness
+slab#:=25/36pt#; % serif and arm thickness
+cap_bar#:=25/36pt#; % uppercase bar thickness
+cap_band#:=25/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=28/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=0pt#; % for small refinements of stem breadth
+vair_corr#:=0pt#; % for small refinements of hairline height
+apex_corr#:=11/36pt#; % extra width at diagonal junctions
+
+o#:=5/36pt#; % amount of overshoot for curves
+apex_o#:=4/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=0.86; % factor applied to weights of heavy characters
+math_spread:=-1; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=0; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=0; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=true; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=true; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmtt8.mf b/Master/texmf-dist/fonts/source/public/montex/kmtt8.mf
new file mode 100644
index 00000000000..0828b29df6d
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmtt8.mf
@@ -0,0 +1,81 @@
+% File: kmtt8.mf
+% Based on: cmrtz8.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Typewriter Text for use with 8 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMTT"; font_size 8pt#;
+
+u#:=17/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=200/36pt#; % height of tallest characters
+asc_height#:=176/36pt#; % height of lowercase ascenders
+cap_height#:=176/36pt#; % height of caps
+fig_height#:=176/36pt#; % height of numerals
+x_height#:=124/36pt#; % height of lowercase without ascenders
+math_axis#:=88/36pt#; % axis of symmetry for math symbols
+bar_height#:=63/36pt#; % height of crossbar in lowercase e
+comma_depth#:=40/36pt#; % depth of comma below baseline
+desc_depth#:=64/36pt#; % depth of lowercase descenders
+
+crisp#:=19/36pt#; % diameter of serif corners
+tiny#:=19/36pt#; % diameter of rounded corners
+fine#:=18/36pt#; % diameter of sharply rounded corners
+thin_join#:=18/36pt#; % width of extrafine details
+hair#:=22/36pt#; % lowercase hairline breadth
+stem#:=22/36pt#; % lowercase stem breadth
+curve#:=22/36pt#; % lowercase curve breadth
+ess#:=19/36pt#; % breadth in middle of lowercase s
+flare#:=28/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=31/36pt#; % diameter of dots
+cap_hair#:=22/36pt#; % uppercase hairline breadth
+cap_stem#:=22/36pt#; % uppercase stem breadth
+cap_curve#:=22/36pt#; % uppercase curve breadth
+cap_ess#:=22/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=22/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=27/36pt#; % protrusion of lowercase serifs
+cap_jut#:=27/36pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=27/36pt#; % vertical protrusion of beak serifs
+vair#:=19/36pt#; % vertical diameter of hairlines
+notch_cut#:=22/36pt#; % maximum breadth above or below notches
+bar#:=19/36pt#; % lowercase bar thickness
+slab#:=19/36pt#; % serif and arm thickness
+cap_bar#:=19/36pt#; % uppercase bar thickness
+cap_band#:=19/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=22/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=0pt#; % for small refinements of stem breadth
+vair_corr#:=0pt#; % for small refinements of hairline height
+apex_corr#:=8/36pt#; % extra width at diagonal junctions
+
+o#:=3/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=0.81; % factor applied to weights of heavy characters
+math_spread:=-1; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=0; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=0; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=true; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=true; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmtt9.mf b/Master/texmf-dist/fonts/source/public/montex/kmtt9.mf
new file mode 100644
index 00000000000..c6ffcc4883a
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmtt9.mf
@@ -0,0 +1,81 @@
+% File: kmtt9.mf
+% Based on: cmrtz9.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Typewriter Text for use with 9 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMTT"; font_size 9pt#;
+
+u#:=18.9/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=225/36pt#; % height of tallest characters
+asc_height#:=198/36pt#; % height of lowercase ascenders
+cap_height#:=198/36pt#; % height of caps
+fig_height#:=198/36pt#; % height of numerals
+x_height#:=139.5/36pt#; % height of lowercase without ascenders
+math_axis#:=99/36pt#; % axis of symmetry for math symbols
+bar_height#:=71/36pt#; % height of crossbar in lowercase e
+comma_depth#:=45/36pt#; % depth of comma below baseline
+desc_depth#:=72/36pt#; % depth of lowercase descenders
+
+crisp#:=21/36pt#; % diameter of serif corners
+tiny#:=21/36pt#; % diameter of rounded corners
+fine#:=20/36pt#; % diameter of sharply rounded corners
+thin_join#:=20/36pt#; % width of extrafine details
+hair#:=24/36pt#; % lowercase hairline breadth
+stem#:=24/36pt#; % lowercase stem breadth
+curve#:=24/36pt#; % lowercase curve breadth
+ess#:=21/36pt#; % breadth in middle of lowercase s
+flare#:=30/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=33/36pt#; % diameter of dots
+cap_hair#:=24/36pt#; % uppercase hairline breadth
+cap_stem#:=24/36pt#; % uppercase stem breadth
+cap_curve#:=24/36pt#; % uppercase curve breadth
+cap_ess#:=24/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=24/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=31/36pt#; % protrusion of lowercase serifs
+cap_jut#:=31/36pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=31/36pt#; % vertical protrusion of beak serifs
+vair#:=21/36pt#; % vertical diameter of hairlines
+notch_cut#:=24/36pt#; % maximum breadth above or below notches
+bar#:=21/36pt#; % lowercase bar thickness
+slab#:=21/36pt#; % serif and arm thickness
+cap_bar#:=21/36pt#; % uppercase bar thickness
+cap_band#:=21/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=24/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=0pt#; % for small refinements of stem breadth
+vair_corr#:=0pt#; % for small refinements of hairline height
+apex_corr#:=9/36pt#; % extra width at diagonal junctions
+
+o#:=3.5/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=0.81; % factor applied to weights of heavy characters
+math_spread:=-1; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=0; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=0; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=true; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=true; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill; % switch to the driver file
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmu10.mf b/Master/texmf-dist/fonts/source/public/montex/kmu10.mf
new file mode 100644
index 00000000000..c189fefcc7c
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmu10.mf
@@ -0,0 +1,80 @@
+% File: kmu10.mf
+% Based on: cmruz10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Cyrillic Unslanted Italic 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMU"; font_size 10pt#;
+
+u#:=20/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=10/36pt#; % extra space added to all sidebars
+
+body_height#:=270/36pt#; % height of tallest characters
+asc_height#:=250/36pt#; % height of lowercase ascenders
+cap_height#:=246/36pt#; % height of caps
+fig_height#:=232/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=90/36pt#; % axis of symmetry for math symbols
+bar_height#:=87/36pt#; % height of crossbar in lowercase e
+comma_depth#:=70/36pt#; % depth of comma below baseline
+desc_depth#:=70/36pt#; % depth of lowercase descenders
+
+crisp#:=0pt#; % diameter of serif corners
+tiny#:=8/36pt#; % diameter of rounded corners
+fine#:=7/36pt#; % diameter of sharply rounded corners
+thin_join#:=7/36pt#; % width of extrafine details
+hair#:=9/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=30/36pt#; % lowercase curve breadth
+ess#:=22/36pt#; % breadth in middle of lowercase s
+flare#:=33/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=38/36pt#; % diameter of dots
+cap_hair#:=11/36pt#; % uppercase hairline breadth
+cap_stem#:=32/36pt#; % uppercase stem breadth
+cap_curve#:=37/36pt#; % uppercase curve breadth
+cap_ess#:=32/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=.4pt#; % thickness of lines in math symbols
+
+dish#:=1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=20/36pt#; % vertical distance from serif base to tangent
+jut#:=28/36pt#; % protrusion of lowercase serifs
+cap_jut#:=37/36pt#; % protrusion of uppercase serifs
+beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
+beak#:=70/36pt#; % vertical protrusion of beak serifs
+vair#:=8/36pt#; % vertical diameter of hairlines
+notch_cut#:=10pt#; % maximum breadth above or below notches
+bar#:=11/36pt#; % lowercase bar thickness
+slab#:=11/36pt#; % serif and arm thickness
+cap_bar#:=11/36pt#; % uppercase bar thickness
+cap_band#:=11/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
+serif_drop#:=4/36pt#; % vertical drop of sloped serifs
+stem_corr#:=1/36pt#; % for small refinements of stem breadth
+vair_corr#:=1/36pt#; % for small refinements of hairline height
+apex_corr#:=0pt#; % extra width at diagonal junctions
+
+o#:=8/36pt#; % amount of overshoot for curves
+apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=0; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=1/6; % extra openness inside bowls
+beak_darkness:=11/30; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mctextit; % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmvtt10.mf b/Master/texmf-dist/fonts/source/public/montex/kmvtt10.mf
new file mode 100644
index 00000000000..ae72c168f64
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmvtt10.mf
@@ -0,0 +1,80 @@
+% File: kmvtt10.mf
+% Based on: cmvtt10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Variable-Width Typewriter Text for use with 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="CMVTT"; font_size 10pt#;
+
+u#:=21/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+letter_fit#:=0pt#; % extra space added to all sidebars
+
+body_height#:=250/36pt#; % height of tallest characters
+asc_height#:=220/36pt#; % height of lowercase ascenders
+cap_height#:=220/36pt#; % height of caps
+fig_height#:=220/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=110/36pt#; % axis of symmetry for math symbols
+bar_height#:=79/36pt#; % height of crossbar in lowercase e
+comma_depth#:=50/36pt#; % depth of comma below baseline
+desc_depth#:=80/36pt#; % depth of lowercase descenders
+
+crisp#:=22/36pt#; % diameter of serif corners
+tiny#:=22/36pt#; % diameter of rounded corners
+fine#:=21/36pt#; % diameter of sharply rounded corners
+thin_join#:=21/36pt#; % width of extrafine details
+hair#:=25/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=25/36pt#; % lowercase curve breadth
+ess#:=22/36pt#; % breadth in middle of lowercase s
+flare#:=32/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=36/36pt#; % diameter of dots
+cap_hair#:=25/36pt#; % uppercase hairline breadth
+cap_stem#:=25/36pt#; % uppercase stem breadth
+cap_curve#:=25/36pt#; % uppercase curve breadth
+cap_ess#:=25/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=25/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=34/36pt#; % protrusion of lowercase serifs
+cap_jut#:=34/36pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=34/36pt#; % vertical protrusion of beak serifs
+vair#:=22/36pt#; % vertical diameter of hairlines
+notch_cut#:=25/36pt#; % maximum breadth above or below notches
+bar#:=22/36pt#; % lowercase bar thickness
+slab#:=22/36pt#; % serif and arm thickness
+cap_bar#:=22/36pt#; % uppercase bar thickness
+cap_band#:=22/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=25/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=0pt#; % for small refinements of stem breadth
+vair_corr#:=0pt#; % for small refinements of hairline height
+apex_corr#:=10/36pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=0; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=0.81; % factor applied to weights of heavy characters
+math_spread:=-1; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=0; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=false; % should an italic-style g be used?
+low_asterisk:=true; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mcyrill % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/kmvtti10.mf b/Master/texmf-dist/fonts/source/public/montex/kmvtti10.mf
new file mode 100644
index 00000000000..3eeefeecbe7
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/kmvtti10.mf
@@ -0,0 +1,80 @@
+% File: kmvtti10.mf
+% Based on: cmvtti10.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% Computer Modern Variable-Width Typewriter Text Italic for use with 10 point
+if unknown cmbase: input cmbase fi
+
+font_identifier:="KMVTTI"; font_size 10pt#;
+
+u#:=21/36pt#; % unit width
+width_adj#:=0pt#; % width adjustment for certain characters
+serif_fit#:=0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
+letter_fit#:=15/36pt#; % extra space added to all sidebars
+
+body_height#:=250/36pt#; % height of tallest characters
+asc_height#:=220/36pt#; % height of lowercase ascenders
+cap_height#:=220/36pt#; % height of caps
+fig_height#:=220/36pt#; % height of numerals
+x_height#:=155/36pt#; % height of lowercase without ascenders
+math_axis#:=110/36pt#; % axis of symmetry for math symbols
+bar_height#:=79/36pt#; % height of crossbar in lowercase e
+comma_depth#:=50/36pt#; % depth of comma below baseline
+desc_depth#:=80/36pt#; % depth of lowercase descenders
+
+crisp#:=22/36pt#; % diameter of serif corners
+tiny#:=22/36pt#; % diameter of rounded corners
+fine#:=21/36pt#; % diameter of sharply rounded corners
+thin_join#:=21/36pt#; % width of extrafine details
+hair#:=25/36pt#; % lowercase hairline breadth
+stem#:=25/36pt#; % lowercase stem breadth
+curve#:=25/36pt#; % lowercase curve breadth
+ess#:=22/36pt#; % breadth in middle of lowercase s
+flare#:=32/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=36/36pt#; % diameter of dots
+cap_hair#:=25/36pt#; % uppercase hairline breadth
+cap_stem#:=25/36pt#; % uppercase stem breadth
+cap_curve#:=25/36pt#; % uppercase curve breadth
+cap_ess#:=25/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=25/36pt#; % thickness of lines in math symbols
+
+dish#:=0pt#; % amount erased at top or bottom of serifs
+bracket#:=0pt#; % vertical distance from serif base to tangent
+jut#:=40/36pt#; % protrusion of lowercase serifs
+cap_jut#:=34/36pt#; % protrusion of uppercase serifs
+beak_jut#:=0pt#; % horizontal protrusion of beak serifs
+beak#:=34/36pt#; % vertical protrusion of beak serifs
+vair#:=22/36pt#; % vertical diameter of hairlines
+notch_cut#:=25/36pt#; % maximum breadth above or below notches
+bar#:=22/36pt#; % lowercase bar thickness
+slab#:=22/36pt#; % serif and arm thickness
+cap_bar#:=22/36pt#; % uppercase bar thickness
+cap_band#:=22/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=25/36pt#; % max breadth above/below uppercase notches
+serif_drop#:=0pt#; % vertical drop of sloped serifs
+stem_corr#:=0pt#; % for small refinements of stem breadth
+vair_corr#:=1.5/36pt#; % for small refinements of hairline height
+apex_corr#:=10/36pt#; % extra width at diagonal junctions
+
+o#:=4/36pt#; % amount of overshoot for curves
+apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=1/4; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=0.81; % factor applied to weights of heavy characters
+math_spread:=-1; % extra openness of math symbols
+superness:=1/sqrt2; % parameter for superellipses
+superpull:=0; % extra openness inside bowls
+beak_darkness:=0; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=true; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=true; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+generate mctextit % switch to the driver file
diff --git a/Master/texmf-dist/fonts/source/public/montex/lmligs.mf b/Master/texmf-dist/fonts/source/public/montex/lmligs.mf
new file mode 100644
index 00000000000..c31b2db0775
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/lmligs.mf
@@ -0,0 +1,38 @@
+% File: mcyrligs.mf
+% Author: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% These ligatures are always active:
+% Creates xagas i, yo, yu, ya ligatures:
+ligtable cyrery: cyri =: cyrishrt,
+ cyro =: cyryo,
+ cyru =: cyryu,
+ cyra =: cyrya;
+
+% Creates XAGAS I, YO, YU, YA ligatures:
+ligtable CYRERY: CYRI =: CYRISHRT,
+ CYRO =: CYRYO,
+ cyro =: CYRYO,
+ CYRU =: CYRYU,
+ cyru =: CYRYU,
+ CYRA =: CYRYA,
+ cyra =: CYRYA;
+
+% Creates the front vowels as ligatures:
+ligtable oct"42": CYRA =: CYREREV,
+ CYRE=: CYRYO,
+ CYRI =: CYRISHRT,
+ CYRO =: CYROTLD,
+ CYRU =: CYRY,
+
+ cyra =: cyrerev,
+ cyre=: cyryo,
+ cyri =: cyrishrt,
+ cyro =: cyrotld,
+ cyru =: cyry;
+
+% Creates the Sh and ShCh consonants as ligatures:
+% ligtable CYRS: CYRSHHA =: CYRSH;
+ligtable cyrs: cyrshha =: cyrsh;
+ligtable CYRCH: CYRSHHA =: CYRSHCH;
+ligtable cyrch: cyrshha =: cyrshch;
diff --git a/Master/texmf-dist/fonts/source/public/montex/macodes.mf b/Master/texmf-dist/fonts/source/public/montex/macodes.mf
new file mode 100644
index 00000000000..2bcdad5e663
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/macodes.mf
@@ -0,0 +1,160 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: macodes.mf
+% Author: Oliver Corff
+% Date: April 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script in Ligature Mode (LMA)
+% Manju Code Slots
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Beginning of macodes.mf
+%
+MANJU_TASLAL := 44;
+MANJU_FULLSTOP := 46;
+MANJU_A := 97; MONG_SHUD := MANJU_A;% "a"
+MANJU_B := 98; MONG_NUMTGEDES := MANJU_B;% "b"
+MANJU_C := 99; MONG_SEREEEWER := MANJU_C;% "c"
+MANJU_D :=100; % "d"
+MANJU_E :=101; % "e"
+MANJU_F :=102; % "f"
+MANJU_G :=103; % "g"
+MANJU_H :=104; % "h"
+MANJU_I :=105; MONG_SHILBE := MANJU_I;% "i"
+MANJU_J :=106; MONG_BOSOOSHILBE := MANJU_J;% "j"
+MANJU_K :=107; MONG_DUNDX := MANJU_K;% "k"
+MANJU_L :=108; MONG_LEWER := MANJU_L;% "l"
+MANJU_M :=109; MONG_MEWER := MANJU_M;% "m"
+MANJU_N :=110; MONG_CEGTEISHUD := MANJU_N;% "n"
+MANJU_O :=111; MONG_GEDES := MANJU_O;% "o"
+MANJU_P :=112; % "p"
+MANJU_R :=114; MONG_ERWEELJINSHILBE := MANJU_R;% "r"
+MANJU_S :=115; MONG_ZAWJ := MANJU_S;% "s"
+MANJU_T :=116; % "t"
+MANJU_U :=117; % "u"
+MANJU_W :=119; MONG_MATGARSHILBE := MANJU_W;% "w"
+MANJU_Y :=121; MONG_ETGERSHILBE := MANJU_Y;% "y"
+MANJU_UU :=118; % "v"
+%
+MANJU_Z :=122; % "z"
+MANJU_DERIBUNZ := 90; % " Z-"
+%
+MANJU_NG := MONG_DUNDNG; % 134 "ng"
+%
+MANJU_DERIBUND := 68; % " D-"
+MANJU_DERIBUNE := 69; % " E-"
+MANJU_DERIBUNF := 70; % " F-"
+MANJU_DERIBUNGA := 71; % " G-"
+MANJU_DERIBUNHA := 72; % " H-"
+MANJU_DERIBUNKA := 75; MONG_XEWTEEQIX := MANJU_DERIBUNKA;% " K-"
+MANJU_DERIBUNL := 76; % " L-"
+MANJU_DERIBUNM := 77; % " M-"
+MANJU_DERIBUNN := 78; % " N-"
+MANJU_DERIBUNS := 83; % " S-"
+MANJU_DERIBUNT := 84; % " T-"
+%
+MANJU_DUBENA := MONG_SUUL; % 128 "-a "
+MANJU_DUBENE :=149; % "-e "
+MANJU_DUBENI := MONG_ADAGI; % 136 "-i "
+MANJU_DUBENO := MONG_ADAGU; % 135 "-u "
+MANJU_DUBENU :=150; % "-u "
+MANJU_DUBENUU :=151; % "-uu "
+MANJU_DUBENB := MONG_ADAGB; % 137 "-b "
+MANJU_DUBENNG := MONG_ADAGNG; % 142 "ng"
+MANJU_DUBENK :=152; % ""
+MANJU_DUBENL := MONG_SUULIINLEWER; % 143 "-l "
+MANJU_DUBENM := MONG_SUULIINMEWER; % 146 "-l "
+MANJU_DUBENS := MONG_ADAGS; % 139 "-l "
+MANJU_DUBENT := MONG_ADAGD; % 139 "-l "
+%
+MANJU_VARK :=153; MONG_DUNDG := MANJU_VARK; % "kC"
+MANJU_VART := MONG_DUNDD; % 133 "tC"
+%
+MANJU_TE :=154; % "te"
+MANJU_DERIBUNTE :=155; % " Te-"
+MANJU_DE :=156; % "de"
+MANJU_DERIBUNDE :=157; % " De-"
+MANJU_TIBT :=158;
+MANJU_SH :=159; % "sh"
+MANJU_DERIBUNSH :=160; % " sh-"
+MANJU_DUBENSH :=161; % "-sh "
+MANJU_GH :=162; % ""
+MANJU_HH :=163; % ""
+MANJU_KH :=164; % ""
+%
+MANJU_DZ :=165; % "-dz-"
+MANJU_DERIBUNDZ :=166; % " dz-"
+MANJU_DZI :=167; % "-dzi-"
+MANJU_DERIBUNDZI :=168; % " dzi-"
+%
+MANJU_JY :=169; % "-jy-"
+MANJU_DERIBUNJY :=170; % " jy-"
+%
+MANJU_SY :=172; % "-sy-"
+MANJU_DERIBUNSY :=173; % " sy-"
+%
+MANJU_CY :=174; % "-cy-"
+%
+MANJU_TS :=175; % "-ts-"
+MANJU_DERIBUNTS :=176; % " ts-"
+%
+MANJU_TSH :=177; % "-tsh-"
+MANJU_DERIBUNTSH :=178; % " tsh-"
+%
+MANJU_TSHY :=179; % "-tshy-"
+MANJU_DERIBUNTSHY :=180; % " tshy-"
+%
+MANJU_ZH :=181; % "-zh-"
+MANJU_DERIBUNZH :=182; % " zh-"
+%
+MANJU_ZR :=183; % "-zr-"
+MANJU_DERIBUNZR :=184; % " zr-"
+%
+MANJU_NGA :=185; % "-ng'-"
+MANJU_DERIBUNNGA :=186; % " ng'-"
+%
+MANJU_LH :=188; % "-lh-"
+MANJU_DERIBUNLH :=189; % " lh-"
+MANJU_HIGHLH :=190; % "-^lh-"
+MANJU_HIGHDERIBUNLH :=191; % " ^lh-"
+%
+MANJU_TIBP := 80; MONG_NUMTDELBENQIX := MANJU_TIBP; % "p'"
+%
+MANJU_BA :=200; MONG_LIGBA := MANJU_BA; % "ba"
+MANJU_BE :=201; % "be"
+MANJU_BI :=202; MONG_LIGBI := MANJU_BI; % "bi"
+MANJU_BO :=203; MONG_LIGBU := MANJU_BO; % "bo"
+MANJU_BU :=204; % "bu"
+MANJU_BUU :=205; % "buu"
+%
+MANJU_PA :=208; % "pa"
+MANJU_PE :=209; % "pe"
+MANJU_PI :=210; % "pi"
+MANJU_PO :=211; % "po"
+MANJU_PU :=212; % "pu"
+%
+MANJU_GHA :=216; % "gha"
+MANJU_GE :=217; % "ge"
+MANJU_GI :=218; % "ge"
+MANJU_GHO :=219; % "gho"
+MANJU_GU :=220; % "gu"
+%
+MANJU_HHA :=224; % "hha"
+MANJU_HE :=225; % "he"
+MANJU_HI :=226; % "hi"
+MANJU_HHO :=227; % "hho"
+MANJU_HU :=228; % "hu"
+%
+MANJU_KHA :=232; % "kha"
+MANJU_KE :=233; MONG_LIGKA := MANJU_KE;
+MANJU_KI :=234; MONG_LIGKI := MANJU_KI;
+MANJU_KHO :=235; % "kho"
+MANJU_KU :=236; MONG_LIGKU := MANJU_KU;
+%
+MANJU_TIBPA :=240; MONG_LIGPA := MANJU_TIBPA; % "p'a"
+MANJU_TIBPE :=241; % "p'e"
+MANJU_TIBPI :=242; MONG_LIGPI := MANJU_TIBPI; % "p'a"
+MANJU_TIBPO :=243; MONG_LIGPU := MANJU_TIBPO; % "p'a"
+MANJU_TIBPU :=244;
diff --git a/Master/texmf-dist/fonts/source/public/montex/maglyphs.mf b/Master/texmf-dist/fonts/source/public/montex/maglyphs.mf
new file mode 100644
index 00000000000..84c2c1c2a41
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/maglyphs.mf
@@ -0,0 +1,660 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: maglyphs.mf
+% Author: Oliver Corff
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script (LMA)
+% Manju Bithe Glyph Definitions
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+ writing:=Bithe;
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_TASLAL,tewidth#,height#,depth#);
+ "Manju Taslal Temdeg";
+ manjudusal(2/4tewidth,Centerline,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_FULLSTOP,bawidth#,height#,depth#);
+ "Manju Full Stop";
+ manjudusal(5/16bawidth,Centerline,3thin,2thick);
+ ManjuDusal(11/16bawidth,Centerline,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_E,shudwidth#,height#,depth#);
+ "Manju letter e, dotted shud";
+ shud(0);
+ dusal (1/2w,underinner+thin,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DUBENE,shudwidth#,height#,depth#);
+ "Manju letter e in final position";
+ suul;
+ dusal (12/12w,underinner+thin,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_U,gedeswidth#,height#,depth#);
+ "Manju letter u, dotted gedes";
+ nuruu(w,0);
+ z1r=(w-bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(bearing,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+ penlabels(1,2,3);
+ dusal (1/2gedeswidth,underinner+thin,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DUBENU,eswidth#,height#,depth#);
+ "Manju letter final u";
+ nuruu(w,w-numtaigedeswidth);
+
+ z1r=(w-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(w-numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6r=(0,nuruuright); % nuruuright was Centerline
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(1/4thin,-180);
+ penstroke (z4e{down}..z5e..{up}z6e) ifrotated;
+ penlabels(1,2,3,4,5,6);
+ dusal (17/36w,1.6underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_UU,gedeswidth#+shilbewidth#,height#,depth#);
+ "Manju letter ^u";
+ nuruu(w,0);
+ z1r=(w-bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(bearing+shilbewidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+ z4r=(shilbewidth,nuruuleft);
+ z5r=(+3thin,shilbeheight);
+ penpos4(2thin,0);
+ penpos5(4thin,60);
+ penstroke (z4e--z5e) ifrotated;
+ penlabels(1,2,3,4,5);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DUBENUU,gedeswidth#+shudwidth#,height#,depth#);
+ "Manju letter ^u, final form";
+ nuruu(w,shudwidth);
+ z1r=(w-bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(bearing+shudwidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+ z4=(shudwidth,Centerline);
+ z5=(1/2shudwidth,Centerline);
+ z6=(0,nuruuleft+thin);
+ penpos4(nuruuwidth,90);
+ penpos5(14/16nuruuwidth,80);
+ penpos6(epsilon,45);
+ penstroke (z4e---z5e..z6e) ifrotated;
+ penlabels(1,2,3,4,5,6);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNGA,tewidth#,height#,depth#);
+ "Manju letter initial ga";
+ xewteeqix;
+ dusal(-1/2shudwidth,underinner+thin,2thick,1thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNHA,tewidth#,height#,depth#);
+ "Manju letter initial ha";
+ xewteeqix;
+ dugui(-1/2shudwidth,underinner,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_G,2shudwidth#,height#,depth#);
+ "Manju letter medial g";
+ shud(0);
+ shud(shudwidth);
+ dusal(shudwidth,underinner+thin,2thick,1thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_H,2shudwidth#,height#,depth#);
+ "Manju letter medial ha";
+ shud(0);
+ shud(shudwidth);
+ dugui(shudwidth,underinner,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_GE,tewidth#,height#,depth#);
+ "Manju Ligature GE";
+ ligka;
+ dusal (21/36w,1.35underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_HE,tewidth#,height#,depth#);
+ "Manju Ligature: HE";
+ ligka;
+ dugui (21/36w,1.6underouter,1.5thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_GI,eswidth#+secAwidth#,height#,depth#);
+ "Manju Manju Ligature: GI";
+ ligki;
+ dusal (22/36w,1.35underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_HI,eswidth#+secAwidth#,height#,depth#);
+ "Manju Manju Ligature: HI";
+ ligki;
+ dugui (22/36w,1.6underouter,1.5thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_GU,bawidth#,height#,depth#);
+ "Manju Ligature: GU";
+ ligku;
+ dusal (18/36w,1.65underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_HU,bawidth#,height#,depth#);
+ "Manju Ligature: HU";
+ ligku;
+ dugui (18/36w,1.9underouter,1.5thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_KH,gedeswidth#,height#,depth#);
+ "Manju letter kh";
+ qagt;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_KHA,bawidth#,height#,depth#);
+ "Manju Ligature: KHA";
+ ligkha;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_KHO,bawidth#,height#,depth#);
+ "Manju Ligature: KHO";
+ ligkhu;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_GH,gedeswidth#,height#,depth#);
+ "Manju letter GH";
+ qagt;
+ dusal (15/36w,1.65underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_GHA,bawidth#,height#,depth#);
+ "Manju Ligature: GHA";
+ ligkha;
+ dusal (21/36w,1.65underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_GHO,bawidth#,height#,depth#);
+ "Manju Ligature: GHO";
+ ligkhu;
+ dusal (19/36w,1.65underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_HH,gedeswidth#,height#,depth#);
+ "Manju letter HH";
+ qagt;
+ dugui (15/36w,1.9underouter,1.5thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_HHA,bawidth#,height#,depth#);
+ "Manju Ligature: HHA";
+ ligkha;
+ dugui (21/36w,1.9underouter,1.5thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_HHO,bawidth#,height#,depth#);
+ "Manju Ligature: HHO";
+ ligkhu;
+ dugui (18/36w,1.9underouter,1.5thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DUBENK,2shudwidth#,height#,depth#);
+ "Manju Final k";
+ shud(shudwidth);
+ bagaodoisuul;
+ dusal(9/12shudwidth,gedesouter,3thin,2thick);
+ dusal(3/12shudwidth,gedesouter,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_BE,bawidth#,height#,depth#);
+ "Manju Manju Ligature: BE";
+ ligba;
+ dusal (21/36w,1.65underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_BU,2numtaigedeswidth#,height#,depth#);
+ "Manju Ligature: BU";
+ ligbu(0);
+ dusal (1/2w,1.65underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_BUU,2numtaigedeswidth#+shilbewidth#,height#,depth#);
+ "Manju Ligature: BUU";
+ ligbu(shilbewidth);
+ nuruu(shilbewidth,0);
+ z11r=(shilbewidth,nuruuleft);
+ z12r=(+3thin,shilbeheight);
+ penpos11(2thin,0);
+ penpos12(4thin,60);
+ penstroke (z11e--z12e) ifrotated;
+ penlabels(1,2,3,4,5,11,12);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_D,eswidth#,height#,depth#);
+ "Manju letter de";
+ roundgedestshilbe;
+ dusal(1/2shudwidth,underinner+thin,2thick,1thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_T,eswidth#,height#,depth#);
+ "Manju letter te";
+ roundgedestshilbe;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUND,cewidth#,height#,depth#);
+ "Manju letter initial D";
+ deribun_ta;
+ dusal(1/2shudwidth,underinner+thin,2thick,1thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNT,cewidth#,height#,depth#);
+ "Manju letter initial t";
+ deribun_ta;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DE,eswidth#,height#,depth#);
+ "Manju letter de";
+ manju_te;
+ dusal(1/2shudwidth,underinner+thin,2thick,1thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_TE,eswidth#,height#,depth#);
+ "Manju letter te";
+ manju_te;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNDE,cewidth#,height#,depth#);
+ "Manju letter De";
+ deribun_te;
+ dusal(-1/4shudwidth,underinner+thin,2thick,1thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNTE,cewidth#,height#,depth#);
+ "Manju initial letter Te";
+ deribun_te;
+ penlabels(1,2,3,4);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_TIBT,eswidth#,height#,depth#);
+ "Manju initial letter Te";
+ nuruu(w,0);
+ z1r=(w-1/2bearing,nuruuleft);
+ z2 =(07/16w,orxicouter);
+ penpos1(2thin,0);
+ penpos2(2thin,45);
+ penstroke (z1e--z2e) ifrotated;
+ z3r=z2;
+ z4r=(bearing,7/12[y1,y2]);
+
+ penpos3(2thin,115 );
+ penpos4(2thin,210);
+
+ z5 =(6/16w,3/12[y1,y2]);
+ z6 =(x1-2u,nuruuleft);
+
+ penpos5(1.5thin,230);
+ penpos6(1.5thin,180);
+ penstroke (z3e{dir 205}..tension 2.5..z4e..tension 2.5..
+ z5e..tension infinity..z6e)
+ ifrotated;
+ penlabels(1,2,3,4,5,6);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_SH,tewidth#,height#,depth#);
+ "Manju letter `sh'";
+ zawj;
+ manju_sh_stroke;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNSH,tewidth#,height#,depth#);
+ "Manju letter `sh' in initial position";
+ exenzawj;
+ manju_sh_stroke;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DUBENSH,tewidth#,height#,depth#);
+ "Manju letter `sh' in final position";
+ suulzawj;
+ manju_sh_stroke;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DZ,tewidth#,height#,depth#);
+ "Manju letter `dz'";
+ zawj;
+ manju_dz_stroke;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNDZ,tewidth#,height#,depth#);
+ "Manju letter `dz' in initial position";
+ exenzawj;
+ manju_dz_stroke;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DZI,tewidth#,height#,depth#);
+ "Manju ligature `dzi'";
+ manju_si;
+ manju_dz_stroke;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNDZI,tewidth#,height#,depth#);
+ "Manju letter `dzi' in initial position";
+ manju_deribun_si;
+ manju_dz_stroke;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_TS,tewidth#,height#,depth#);
+ "Manju letter `ts'";
+ zawj;
+ manju_dz_stroke;
+ dugui(3/5tewidth,1.1suulouter,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNTS,tewidth#,height#,depth#);
+ "Manju letter `ts' in initial position";
+ exenzawj;
+ manju_dz_stroke;
+ dugui(3/5tewidth,1.1suulouter,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_TSH,tewidth#,height#,depth#);
+ "Manju letter `tsh'";
+ zawj;
+ manju_dz_stroke;
+ manju_tsh_stroke;
+ tsh_picture:=currentpicture;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNTSH,tewidth#,height#,depth#);
+ "Manju letter `tsh' in initial position";
+ exenzawj;
+ manju_dz_stroke;
+ manju_tsh_stroke;
+ deribuntsh_picture:=currentpicture;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_TSHY,shudwidth#+tewidth#,height#,depth#);
+ "Manju letter `tshy'";
+ currentpicture:= tsh_picture shifted
+ if LR: (0,0) else: (shudwidth,0) fi;
+ sy_nuruu(shudwidth,0);
+% manju_dz_stroke;
+% manju_tsh_stroke;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNTSHY,shudwidth#+tewidth#,height#,depth#);
+ "Manju letter `tshy' in initial position";
+ currentpicture:= deribuntsh_picture shifted
+ if LR: (0,0) else: (shudwidth,0) fi;
+ sy_nuruu(shudwidth,0);
+% manju_dz_stroke;
+% manju_tsh_stroke;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_Z,tewidth#,height#,depth#);
+ "Manju letter `z'";
+ zawj;
+ dugui(3/5tewidth,suulouter,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNZ,tewidth#,height#,depth#);
+ "Manju letter `z' in initial position";
+ exenzawj;
+ dugui(3/5tewidth,suulouter,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_ZH,tewidth#,height#,depth#);
+ "Manju letter `zh'";
+ zawj;
+ manju_sh_stroke;
+ dugui(3/5tewidth,suulouter,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNZH,tewidth#,height#,depth#);
+ "Manju letter `zh' in initial position";
+ exenzawj;
+ manju_sh_stroke;
+ dugui(3/5tewidth,suulouter,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_NGA,shudwidth#,height#,depth#);
+ "Manju (Tibetan) letter `ng'";
+ shud(0);
+ dugui(1/2shudwidth,yashilbeheight,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNNGA,shudwidth#,height#,depth#);
+ "Manju (Tibetan) letter `ng' in initial position";
+ titem;
+ dugui(1/2shudwidth,yashilbeheight,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_JY,eswidth#,height#,depth#);
+ "Manju letter jy; bosoo_shilbe with circle";
+ bosoo_shilbe;
+ dugui(1/2eswidth,underinner,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNJY,shilbewidth#,height#,depth#);
+ "Manju letter jy; shilbe with circle";
+ shilbe(0);
+ dugui(1/2shilbewidth,underinner,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_CY,eswidth#,height#,depth#);
+ "Manju letter cy";
+ seree_ewer;
+ dugui(1/2eswidth,underinner,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_SY,tewidth#+shudwidth#,height#,depth#);
+ "Manju letter sy";
+ currentpicture:= zawjpicture shifted
+ if LR: (0,0) else: (shudwidth,0) fi;
+ sy_nuruu(shudwidth,0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNSY,tewidth#+shudwidth#,height#,depth#);
+ "Manju letter initial sy";
+ currentpicture:= exenzawjpicture shifted
+ if LR: (0,0) else: (shudwidth,0) fi;
+ sy_nuruu(shudwidth,0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_ZR,shudwidth#,height#,depth#);
+ "Manju letter zr";
+ nuruu(shudwidth,0);
+ z1 =(1/2shudwidth,gedesinner);
+ z2 =(1/2shudwidth,underinner);
+ penpos1(2.5thin,-15);
+ penpos2(2.5thin,-15);
+ penstroke (z1e--z2e) ifrotated;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNZR,shudwidth#,height#,depth#);
+ "Manju letter initial zr";
+ nuruu(1/2shudwidth,0);
+ z1r=(1/2shudwidth,gedesinner);
+ z2r=(1/2shudwidth,underinner);
+ penpos1(2.5thin,-15);
+ penpos2(2.5thin,-15);
+ penstroke (z1e--z2e) ifrotated;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_LH,shudwidth#,height#,depth#);
+ "Manju Tibetan letter lh";
+ shud(0);
+ l_ewer(1/2shudwidth);
+ dugui(-1/2shudwidth,underinner,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+if style=wood: exenlwidth#:=numtaigedeswidth#+shudwidth# fi;
+if style=steel: exenlwidth#:=shudwidth# fi;
+
+beginchar(MANJU_DERIBUNLH,shudwidth#,height#,depth#);
+ "Manju Tibetan letter initial lh";
+ if style=wood:
+ "Style: Wood";
+ titem_stroke(shudwidth);
+ shud(0);
+ l_ewer(1/2shudwidth);
+ fi;
+ if style=steel:
+ "Style: Steel";
+ titem;
+ l_ewer(1/2shudwidth);
+ fi;
+ dugui(-1/2shudwidth,underinner,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_HIGHLH,shudwidth#,height#,depth#);
+ "Manju Tibetan letter lh";
+ shud(0);
+ l_ewer(1/2shudwidth);
+ dugui(-1/2shudwidth,underouter,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+if style=wood: exenlwidth#:=numtaigedeswidth#+shudwidth# fi;
+if style=steel: exenlwidth#:=shudwidth# fi;
+
+beginchar(MANJU_HIGHDERIBUNLH,shudwidth#,height#,depth#);
+ "Manju Tibetan letter initial lh";
+ if style=wood:
+ titem_stroke(shudwidth);
+ shud(0);
+ l_ewer(1/2shudwidth);
+ fi;
+ if style=steel:
+ titem;
+ l_ewer(1/2shudwidth);
+ fi;
+ dugui(-1/2shudwidth,underouter,1.5thick)
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_F,cewidth#,height#,depth#);
+ "Manju letter f";
+ nuruu(cewidth,0);
+ z1 =(1/8gedeswidth,gedesinner);
+ z2r=(3/8gedeswidth,yashilbeheight);
+ z3 =(7/8gedeswidth-1/4bearing,nuruuleft); % was 8/8gedeswidth
+ penpos1(epsilon,+135);
+ penpos2(3.75thin,+90);
+ penpos3(1.50thin,0);
+ z4 =(10/8gedeswidth,underinner-thin); % was 11/8
+ z5 =(12/8gedeswidth,underinner); % was 13/8
+ penpos4(3.25thin, 90);
+ penpos5( epsilon,+135);
+ penstroke (z1e..tension 2.50..z2e..tension 3.5..z3e
+ ..tension 3.5..z4e..tension 1.75..z5e) ifrotated;
+ penlabels(1,2,3,4,5);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_DERIBUNF,cewidth#,height#,depth#);
+ "Manju letter initial f";
+ nuruu(gedeswidth+1/3bearing,0);
+ z1 =(1/8gedeswidth,gedesinner);
+ z2r=(3/8gedeswidth,yashilbeheight);
+ z3 =(gedeswidth-1/4bearing,nuruuleft);
+ penpos1(epsilon,+135);
+ penpos2(3.75thin,+90);
+ penpos3(1.50thin,0);
+ z4 =(11/8gedeswidth,underinner);
+ z5 =(13/8gedeswidth,underinner+thin);
+ penpos4(3.25thin, 90);
+ penpos5( epsilon,+135);
+ penstroke (z1e..tension 2.50..z2e..tension 3.5..z3e
+ ..tension 3.5..z4e..tension 1.75..z5e) ifrotated;
+ penlabels(1,2,3,4,5);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_P,eswidth#,height#,depth#);
+ "Manju letter `p'";
+ nuruu(eswidth,eswidth-numtaigedeswidth);
+
+ z1r=(eswidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(eswidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(1/4[x4,x8],underouter);
+ z6 =(1/2[x4,x8],0);
+ z7l=(3/4[x4,x8],underouter);
+ z8l=(0,Centerline);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(1/4thin,-180);
+ penpos7(3/4(underinner-underouter),-270);
+ penpos8(1/2thin, 0);
+ penstroke (z4e{down}..z5e..{up}z6e) ifrotated;
+ penstroke (z6e{down}..z7e..tension 1.2..{up}z8e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_PA,bawidth#,height#,depth#);
+ "Manju ligature `pa'";
+ manju_pa;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_PE,bawidth#,height#,depth#);
+ "Manju ligature `pe'";
+ manju_pa;
+ dusal (22/36bawidth,1.85underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_PI,biwidth#,height#,depth#);
+ "Manju ligature `pi'";
+ manju_pi;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_PO,bawidth#,height#,depth#);
+ "Manju ligature `po'";
+ manju_po;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_PU,bawidth#,height#,depth#);
+ "Manju ligature `pu'";
+ manju_po;
+ dusal (1/2w,1.65underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_TIBPE,bawidth#,height#,depth#);
+ "Manju ligature p'e";
+ ligmongpa;
+ dusal (1/2w,1.65underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MANJU_TIBPU,bawidth#,height#,depth#);
+ "Manju ligature p'u";
+ ligmongpu;
+ dusal (1/2w,1.65underouter,2thick,1thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/mantrlig.mf b/Master/texmf-dist/fonts/source/public/montex/mantrlig.mf
new file mode 100644
index 00000000000..8d543f702c8
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mantrlig.mf
@@ -0,0 +1,2606 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mantrlig.mf
+% Author: Oliver Corff
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Manju Script (LMA)
+% Manju Bithe Retransliteration Engine
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ENV: % "*"
+ %
+ % vowels
+ %
+ MANJU_A =: MANJU_A , % ""
+ MANJU_E =: MANJU_E , % ""
+ MANJU_I =: MANJU_I , % ""
+ MANJU_O =: MANJU_O , % ""
+ MANJU_U =: MANJU_U , % ""
+ MANJU_UU =: MANJU_UU , % ""
+ %
+ % consonants
+ %
+ MANJU_B =: MANJU_B , % ""
+ MANJU_C =: MANJU_C , % ""
+ MANJU_D =: MANJU_D , % ""
+ MANJU_F =: MANJU_F , % ""
+ MANJU_G =: MANJU_G , % ""
+ MANJU_H =: MANJU_H , % ""
+ MANJU_J =: MANJU_J , % ""
+ MANJU_K =: MANJU_K , % ""
+ MANJU_L =: MANJU_L , % ""
+ MANJU_M =: MANJU_M , % ""
+ MANJU_N =: MANJU_N , % ""
+ MANJU_P =: MANJU_P , % ""
+ MANJU_R =: MANJU_R , % ""
+ MANJU_S =: MANJU_S , % ""
+ MANJU_T =: MANJU_T , % ""
+ MANJU_W =: MANJU_W , % ""
+ MANJU_Y =: MANJU_Y , % ""
+ MANJU_Z =: MANJU_Z , % ""
+ %
+ % boundaries
+ %
+ MONG_BNDRY =: MONG_BNDRY , % ""
+ MONG_ZERO =: MONG_ZERO , % ""
+ MONG_ONE =: MONG_ONE , % ""
+ MONG_TWO =: MONG_TWO , % ""
+ MONG_THREE =: MONG_THREE , % ""
+ MONG_FOUR =: MONG_FOUR , % ""
+ MONG_FIVE =: MONG_FIVE , % ""
+ MONG_SIX =: MONG_SIX , % ""
+ MONG_SEVEN =: MONG_SEVEN , % ""
+ MONG_EIGHT =: MONG_EIGHT , % ""
+ MONG_NINE =: MONG_NINE , % ""
+ MONG_LT =: MONG_LT , % ""
+ MONG_GT =: MONG_GT , % ""
+ MONG_LGU =: MONG_LGU , % ""
+ MONG_RGU =: MONG_RGU , % ""
+ MONG_OPAREN =: MONG_OPAREN , % ""
+ MONG_CPAREN =: MONG_CPAREN , % ""
+ MONG_DORWOLJIN =: MONG_DORWOLJIN, % ""
+ MANJU_FULLSTOP =: MANJU_FULLSTOP , % ""
+ MONG_COLON =: MONG_COLON , % ""
+ MONG_ELLIPSIS =: MONG_ELLIPSIS , % ""
+ MONG_EXCLAMATION =: MONG_EXCLAMATION, % ""
+ MONG_QUESTION =: MONG_QUESTION, % ""
+ MONG_QUESTEXCLAM =: MONG_QUESTEXCLAM, % ""
+ MONG_EXCLAMQUEST =: MONG_EXCLAMQUEST, % ""
+ MANJU_TASLAL =: MANJU_TASLAL , % ""
+ MONG_MSP =: MONG_MSP , % ""
+ MONG_MVS =: MONG_MVS , % ""
+ MONG_NCEG =: MONG_NCEG , % ""
+ MONG_GCEG =: MONG_GCEG , % ""
+ MONG_TITEMSTROKE =: MONG_TITEMSTROKE; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable ||: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ZERO: % "0"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ONE: % "1"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_TWO: % "2"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_THREE: % "3"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_FOUR: % "4"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_FIVE: % "5"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_SIX: % "6"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_SEVEN: % "7"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_EIGHT: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_NINE: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LT: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_GT: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LGU: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_RGU: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_OPAREN: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_CPAREN: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_DORWOLJIN: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_FULLSTOP: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_COLON: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ELLIPSIS: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_EXCLAMATION: % "!"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_QUESTION: % "?"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_QUESTEXCLAM: % "?!"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_EXCLAMQUEST: % "!?"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_TASLAL: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_MSP: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_MVS: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_NCEG: % "-"
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_I =: MANJU_DUBENI, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_GCEG: % "="
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_TITEMSTROKE: % ""
+ MANJU_A =:| MANJU_DERIBUNE, % ""
+ MANJU_I =:| MANJU_DERIBUNE, % ""
+ MANJU_O =:| MANJU_DERIBUNE, % ""
+ MANJU_U =:| MANJU_DERIBUNE, % ""
+ MANJU_UU =:| MANJU_DERIBUNE, % ""
+ MANJU_D =: MANJU_DERIBUND, % ""
+ MANJU_E =: MANJU_DERIBUNE, % ""
+ MANJU_F =: MANJU_DERIBUNF, % ""
+ MANJU_G =: MANJU_DERIBUNGA, % ""
+ MANJU_H =: MANJU_DERIBUNHA, % ""
+ MANJU_J =: MANJU_I, % ""
+ MANJU_K =: MANJU_DERIBUNKA, % ""
+ MANJU_L =: MANJU_DERIBUNL, % ""
+ MANJU_M =: MANJU_DERIBUNM, % ""
+ MANJU_N =: MANJU_DERIBUNN, % ""
+ MANJU_S =: MANJU_DERIBUNS, % ""
+ MANJU_T =: MANJU_DERIBUNT, % ""
+ MANJU_Z =: MANJU_DERIBUNZ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ORXIC: % "a"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_A: % "a"
+ %
+ % final a
+ %
+ MONG_BNDRY =:| MANJU_DUBENA , % ""
+ MONG_ZERO =:| MANJU_DUBENA , % ""
+ MONG_ONE =:| MANJU_DUBENA , % ""
+ MONG_TWO =:| MANJU_DUBENA , % ""
+ MONG_THREE =:| MANJU_DUBENA , % ""
+ MONG_FOUR =:| MANJU_DUBENA , % ""
+ MONG_FIVE =:| MANJU_DUBENA , % ""
+ MONG_SIX =:| MANJU_DUBENA , % ""
+ MONG_SEVEN =:| MANJU_DUBENA , % ""
+ MONG_EIGHT =:| MANJU_DUBENA , % ""
+ MONG_NINE =:| MANJU_DUBENA , % ""
+ MONG_LT =:| MANJU_DUBENA , % ""
+ MONG_GT =:| MANJU_DUBENA , % ""
+ MONG_LGU =:| MANJU_DUBENA , % ""
+ MONG_RGU =:| MANJU_DUBENA , % ""
+ MONG_OPAREN =:| MANJU_DUBENA , % ""
+ MONG_CPAREN =:| MANJU_DUBENA , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENA , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENA , % ""
+ MONG_COLON =:| MANJU_DUBENA , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENA , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENA , % ""
+ MONG_QUESTION =:| MANJU_DUBENA , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENA , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENA , % ""
+ MANJU_TASLAL =:| MANJU_DUBENA , % ""
+ MONG_MSP =:| MANJU_DUBENA , % ""
+ MONG_MVS =:| MANJU_DUBENA , % ""
+ MONG_NCEG =:| MANJU_DUBENA , % ""
+ MONG_GCEG =:| MANJU_DUBENA , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENA ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_B: % "b"
+ MANJU_A =: MANJU_BA , % "ba"
+ MANJU_E =: MANJU_BE , % "be"
+ MANJU_I =: MANJU_BI , % "bi"
+ MANJU_O =: MANJU_BO , % "bo"
+ MANJU_U =: MANJU_BU , % "bu"
+ MANJU_UU =: MANJU_BUU , % "buu"
+ %
+ % final b
+ %
+ MONG_BNDRY =:| MANJU_DUBENB , % ""
+ MONG_ZERO =:| MANJU_DUBENB , % ""
+ MONG_ONE =:| MANJU_DUBENB , % ""
+ MONG_TWO =:| MANJU_DUBENB , % ""
+ MONG_THREE =:| MANJU_DUBENB , % ""
+ MONG_FOUR =:| MANJU_DUBENB , % ""
+ MONG_FIVE =:| MANJU_DUBENB , % ""
+ MONG_SIX =:| MANJU_DUBENB , % ""
+ MONG_SEVEN =:| MANJU_DUBENB , % ""
+ MONG_EIGHT =:| MANJU_DUBENB , % ""
+ MONG_NINE =:| MANJU_DUBENB , % ""
+ MONG_LT =:| MANJU_DUBENB , % ""
+ MONG_GT =:| MANJU_DUBENB , % ""
+ MONG_LGU =:| MANJU_DUBENB , % ""
+ MONG_RGU =:| MANJU_DUBENB , % ""
+ MONG_OPAREN =:| MANJU_DUBENB , % ""
+ MONG_CPAREN =:| MANJU_DUBENB , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENB , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENB , % ""
+ MONG_COLON =:| MANJU_DUBENB , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENB , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENB , % ""
+ MONG_QUESTION =:| MANJU_DUBENB , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENB , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENB , % ""
+ MANJU_TASLAL =:| MANJU_DUBENB , % ""
+ MONG_MSP =:| MANJU_DUBENB , % ""
+ MONG_MVS =:| MANJU_DUBENB , % ""
+ MONG_NCEG =:| MANJU_DUBENB , % ""
+ MONG_GCEG =:| MANJU_DUBENB , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENB ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENB: % "a"
+ MONG_NCEG kern 1.2ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_C: % "c"
+ MANJU_Y =: MANJU_CY ; % "cy"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_D: % "d"
+ %
+ % vowel allographs
+ %
+ MANJU_E =:| MANJU_DE , % ""
+ MANJU_U =:| MANJU_DE , % ""
+ MANJU_UU =:| MANJU_DE , % ""
+ %
+ % consonant cases
+ %
+ MANJU_Z =: MANJU_DZ ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUND: % " d-"
+ %
+ % vowel allographs
+ %
+ MANJU_E =:| MANJU_DERIBUNDE , % ""
+ MANJU_U =:| MANJU_DERIBUNDE , % ""
+ MANJU_UU =:| MANJU_DERIBUNDE , % ""
+ %
+ % consonant cases
+ %
+ MANJU_Z =: MANJU_DERIBUNDZ ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DE: % "de"
+ %
+ % vowel allographs
+ %
+ MANJU_E |=: MANJU_A , % ""
+ MANJU_U |=: MANJU_O ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNDE: % " de-"
+ %
+ % vowel allographs
+ %
+ MANJU_E |=: MANJU_A , % ""
+ MANJU_U |=: MANJU_O ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_E: % "e"
+ %
+ % final e
+ %
+ MONG_BNDRY =:| MANJU_DUBENE , % ""
+ MONG_ZERO =:| MANJU_DUBENE , % ""
+ MONG_ONE =:| MANJU_DUBENE , % ""
+ MONG_TWO =:| MANJU_DUBENE , % ""
+ MONG_THREE =:| MANJU_DUBENE , % ""
+ MONG_FOUR =:| MANJU_DUBENE , % ""
+ MONG_FIVE =:| MANJU_DUBENE , % ""
+ MONG_SIX =:| MANJU_DUBENE , % ""
+ MONG_SEVEN =:| MANJU_DUBENE , % ""
+ MONG_EIGHT =:| MANJU_DUBENE , % ""
+ MONG_NINE =:| MANJU_DUBENE , % ""
+ MONG_LT =:| MANJU_DUBENE , % ""
+ MONG_GT =:| MANJU_DUBENE , % ""
+ MONG_LGU =:| MANJU_DUBENE , % ""
+ MONG_RGU =:| MANJU_DUBENE , % ""
+ MONG_OPAREN =:| MANJU_DUBENE , % ""
+ MONG_CPAREN =:| MANJU_DUBENE , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENE , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENE , % ""
+ MONG_COLON =:| MANJU_DUBENE , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENE , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENE , % ""
+ MONG_QUESTION =:| MANJU_DUBENE , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENE , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENE , % ""
+ MANJU_TASLAL =:| MANJU_DUBENE , % ""
+ MONG_MSP =:| MANJU_DUBENE , % ""
+ MONG_MVS =:| MANJU_DUBENE , % ""
+ MONG_NCEG =:| MANJU_DUBENE , % ""
+ MONG_GCEG =:| MANJU_DUBENE , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENE ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNE: % " e-"
+ %
+ % isolated e
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENE: % "a"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_F: % "f"
+ %
+ % allograph selection
+ %
+ MANJU_I =:| MANJU_W , % ""
+ MANJU_O =:| MANJU_W , % ""
+ MANJU_U =:| MANJU_W , % ""
+ MANJU_UU =:| MANJU_W ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNF: % " f-"
+ %
+ % allograph selection
+ %
+ MANJU_I =:| MANJU_W , % ""
+ MANJU_O =:| MANJU_W , % ""
+ MANJU_U =:| MANJU_W , % ""
+ MANJU_UU =:| MANJU_W ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_G: % "g"
+ %
+ % vowel ligatures
+ %
+ MANJU_E =: MANJU_GE , % ""
+ MANJU_I =: MANJU_GI , % ""
+ MANJU_U =: MANJU_GU , % ""
+ %
+ % combined case
+ %
+ MANJU_H =: MANJU_GH , % "gh"
+ MONG_FVS1 =: MANJU_GH ; % "gh"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNGA: % " ga-"
+ %
+ % vowel ligatures
+ %
+ MANJU_E =: MANJU_GE , % ""
+ MANJU_I =: MANJU_GI , % ""
+ MANJU_U =: MANJU_GU , % ""
+ %
+ % combined case
+ %
+ MANJU_H =: MANJU_GH , % "gh"
+ MONG_FVS1 =: MANJU_GH ; % "gh"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_H: % "h"
+ %
+ % vowel ligatures
+ %
+ MANJU_E =: MANJU_HE , % ""
+ MANJU_I =: MANJU_HI , % ""
+ MANJU_U =: MANJU_HU , % ""
+ %
+ % combined case
+ %
+ MANJU_H =: MANJU_HH , % "hh"
+ MONG_FVS1 =: MANJU_HH ; % "hh"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNHA: % " ha-"
+ %
+ % vowel ligatures
+ %
+ MANJU_E =: MANJU_HE , % ""
+ MANJU_I =: MANJU_HI , % ""
+ MANJU_U =: MANJU_HU , % ""
+ %
+ % combined case
+ %
+ MANJU_H =: MANJU_HH , % "hh"
+ MONG_FVS1 =: MANJU_HH ; % "hh"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_I: % "i"
+ %
+ % combined case
+ %
+ MONG_FVS1 =: MANJU_DERIBUNJY , % "jy"
+ %
+ % non-combined case
+ %
+% MONG_ENV =: MANJU_I , % "j-y"
+ %
+ % final i
+ %
+ MONG_BNDRY =:| MANJU_DUBENI , % ""
+ MONG_ZERO =:| MANJU_DUBENI , % ""
+ MONG_ONE =:| MANJU_DUBENI , % ""
+ MONG_TWO =:| MANJU_DUBENI , % ""
+ MONG_THREE =:| MANJU_DUBENI , % ""
+ MONG_FOUR =:| MANJU_DUBENI , % ""
+ MONG_FIVE =:| MANJU_DUBENI , % ""
+ MONG_SIX =:| MANJU_DUBENI , % ""
+ MONG_SEVEN =:| MANJU_DUBENI , % ""
+ MONG_EIGHT =:| MANJU_DUBENI , % ""
+ MONG_NINE =:| MANJU_DUBENI , % ""
+ MONG_LT =:| MANJU_DUBENI , % ""
+ MONG_GT =:| MANJU_DUBENI , % ""
+ MONG_LGU =:| MANJU_DUBENI , % ""
+ MONG_RGU =:| MANJU_DUBENI , % ""
+ MONG_OPAREN =:| MANJU_DUBENI , % ""
+ MONG_CPAREN =:| MANJU_DUBENI , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENI , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENI , % ""
+ MONG_COLON =:| MANJU_DUBENI , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENI , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENI , % ""
+ MONG_QUESTION =:| MANJU_DUBENI , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENI , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENI , % ""
+ MANJU_TASLAL =:| MANJU_DUBENI , % ""
+ MONG_MSP =:| MANJU_DUBENI , % ""
+ MONG_MVS =:| MANJU_DUBENI , % ""
+ MONG_NCEG =:| MANJU_DUBENI , % ""
+ MONG_GCEG =:| MANJU_DUBENI , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENI ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENI: % "a"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_J: % "j"
+ MONG_FVS1 =: MANJU_JY , % "jy"
+ MANJU_Y =: MANJU_JY ; % "cy"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_K: % "k"
+ %
+ % vowel ligatures
+ %
+ MANJU_E =: MANJU_KE , % ""
+ MANJU_I =: MANJU_KI , % ""
+ MANJU_U =: MANJU_KU , % ""
+ %
+ % combined case
+ %
+ MANJU_H =: MANJU_KH , % "kh"
+ MONG_FVS1 =: MANJU_KH , % "kh"
+ %
+ % consonant cases
+ %
+ MANJU_B =:| MANJU_VARK , % ""
+ MANJU_C =:| MANJU_VARK , % ""
+ MANJU_D =:| MANJU_VARK , % ""
+ MANJU_F =:| MANJU_VARK , % ""
+ MANJU_G =:| MANJU_VARK , % ""
+ MANJU_J =:| MANJU_VARK , % ""
+ MANJU_K =:| MANJU_VARK , % ""
+ MANJU_L =:| MANJU_VARK , % ""
+ MANJU_M =:| MANJU_VARK , % ""
+ MANJU_N =:| MANJU_VARK , % ""
+ MANJU_P =:| MANJU_VARK , % ""
+ MANJU_R =:| MANJU_VARK , % ""
+ MANJU_S =:| MANJU_VARK , % ""
+ MANJU_T =:| MANJU_VARK , % ""
+ MANJU_W =:| MANJU_VARK , % ""
+ MANJU_Y =:| MANJU_VARK , % ""
+ MANJU_Z =:| MANJU_VARK , % ""
+ %
+ % final k
+ %
+ MONG_BNDRY =:| MANJU_DUBENK , % ""
+ MONG_ZERO =:| MANJU_DUBENK , % ""
+ MONG_ONE =:| MANJU_DUBENK , % ""
+ MONG_TWO =:| MANJU_DUBENK , % ""
+ MONG_THREE =:| MANJU_DUBENK , % ""
+ MONG_FOUR =:| MANJU_DUBENK , % ""
+ MONG_FIVE =:| MANJU_DUBENK , % ""
+ MONG_SIX =:| MANJU_DUBENK , % ""
+ MONG_SEVEN =:| MANJU_DUBENK , % ""
+ MONG_EIGHT =:| MANJU_DUBENK , % ""
+ MONG_NINE =:| MANJU_DUBENK , % ""
+ MONG_LT =:| MANJU_DUBENK , % ""
+ MONG_GT =:| MANJU_DUBENK , % ""
+ MONG_LGU =:| MANJU_DUBENK , % ""
+ MONG_RGU =:| MANJU_DUBENK , % ""
+ MONG_OPAREN =:| MANJU_DUBENK , % ""
+ MONG_CPAREN =:| MANJU_DUBENK , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENK , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENK , % ""
+ MONG_COLON =:| MANJU_DUBENK , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENK , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENK , % ""
+ MONG_QUESTION =:| MANJU_DUBENK , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENK , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENK , % ""
+ MANJU_TASLAL =:| MANJU_DUBENK , % ""
+ MONG_MSP =:| MANJU_DUBENK , % ""
+ MONG_MVS =:| MANJU_DUBENK , % ""
+ MONG_NCEG =:| MANJU_DUBENK , % ""
+ MONG_GCEG =:| MANJU_DUBENK , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENK ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNKA: % " ka-"
+ MANJU_E =: MANJU_KE , % ""
+ MANJU_I =: MANJU_KI , % ""
+ MANJU_U =: MANJU_KU , % ""
+ %
+ % combined case
+ %
+ MANJU_H =: MANJU_KH , % "kh"
+ MONG_FVS1 =: MANJU_KH ; % "kh"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENK: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_L: % "l"
+ %
+ % combined case
+ %
+ MONG_FVS1 =: MANJU_LH , % "lh"
+ %
+ % final l
+ %
+ MONG_BNDRY =:| MANJU_DUBENL , % ""
+ MONG_ZERO =:| MANJU_DUBENL , % ""
+ MONG_ONE =:| MANJU_DUBENL , % ""
+ MONG_TWO =:| MANJU_DUBENL , % ""
+ MONG_THREE =:| MANJU_DUBENL , % ""
+ MONG_FOUR =:| MANJU_DUBENL , % ""
+ MONG_FIVE =:| MANJU_DUBENL , % ""
+ MONG_SIX =:| MANJU_DUBENL , % ""
+ MONG_SEVEN =:| MANJU_DUBENL , % ""
+ MONG_EIGHT =:| MANJU_DUBENL , % ""
+ MONG_NINE =:| MANJU_DUBENL , % ""
+ MONG_LT =:| MANJU_DUBENL , % ""
+ MONG_GT =:| MANJU_DUBENL , % ""
+ MONG_LGU =:| MANJU_DUBENL , % ""
+ MONG_RGU =:| MANJU_DUBENL , % ""
+ MONG_OPAREN =:| MANJU_DUBENL , % ""
+ MONG_CPAREN =:| MANJU_DUBENL , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENL , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENL , % ""
+ MONG_COLON =:| MANJU_DUBENL , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENL , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENL , % ""
+ MONG_QUESTION =:| MANJU_DUBENL , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENL , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENL , % ""
+ MANJU_TASLAL =:| MANJU_DUBENL , % ""
+ MONG_MSP =:| MANJU_DUBENL , % ""
+ MONG_MVS =:| MANJU_DUBENL , % ""
+ MONG_NCEG =:| MANJU_DUBENL , % ""
+ MONG_GCEG =:| MANJU_DUBENL , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENL ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNL: % " l-"
+ %
+ % combined case
+ %
+ MONG_FVS1 =: MANJU_DERIBUNLH ; % " lh"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENL: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_M: % "m"
+ %
+ % final m
+ %
+ MONG_BNDRY =:| MANJU_DUBENM , % ""
+ MONG_ZERO =:| MANJU_DUBENM , % ""
+ MONG_ONE =:| MANJU_DUBENM , % ""
+ MONG_TWO =:| MANJU_DUBENM , % ""
+ MONG_THREE =:| MANJU_DUBENM , % ""
+ MONG_FOUR =:| MANJU_DUBENM , % ""
+ MONG_FIVE =:| MANJU_DUBENM , % ""
+ MONG_SIX =:| MANJU_DUBENM , % ""
+ MONG_SEVEN =:| MANJU_DUBENM , % ""
+ MONG_EIGHT =:| MANJU_DUBENM , % ""
+ MONG_NINE =:| MANJU_DUBENM , % ""
+ MONG_LT =:| MANJU_DUBENM , % ""
+ MONG_GT =:| MANJU_DUBENM , % ""
+ MONG_LGU =:| MANJU_DUBENM , % ""
+ MONG_RGU =:| MANJU_DUBENM , % ""
+ MONG_OPAREN =:| MANJU_DUBENM , % ""
+ MONG_CPAREN =:| MANJU_DUBENM , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENM , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENM , % ""
+ MONG_COLON =:| MANJU_DUBENM , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENM , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENM , % ""
+ MONG_QUESTION =:| MANJU_DUBENM , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENM , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENM , % ""
+ MANJU_TASLAL =:| MANJU_DUBENM , % ""
+ MONG_MSP =:| MANJU_DUBENM , % ""
+ MONG_MVS =:| MANJU_DUBENM , % ""
+ MONG_NCEG =:| MANJU_DUBENM , % ""
+ MONG_GCEG =:| MANJU_DUBENM , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENM ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_DERIBUNM: % " m-"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENM: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_N: % "n"
+ %
+ % consonant cases
+ %
+ MANJU_B =:| MANJU_A , % ""
+ MANJU_C =:| MANJU_A , % ""
+ MANJU_D =:| MANJU_A , % ""
+ MANJU_F =:| MANJU_A , % ""
+ MANJU_H =:| MANJU_A , % ""
+ MANJU_J =:| MANJU_A , % ""
+ MANJU_K =:| MANJU_A , % ""
+ MANJU_L =:| MANJU_A , % ""
+ MANJU_M =:| MANJU_A , % ""
+ MANJU_N =:| MANJU_A , % ""
+ MANJU_P =:| MANJU_A , % ""
+ MANJU_R =:| MANJU_A , % ""
+ MANJU_S =:| MANJU_A , % ""
+ MANJU_T =:| MANJU_A , % ""
+ MANJU_W =:| MANJU_A , % ""
+ MANJU_Y =:| MANJU_A , % ""
+ MANJU_Z =:| MANJU_A , % ""
+ %
+ % combined cases
+ %
+ MANJU_G =: MANJU_NG , % "ng"
+ %
+ % final n
+ %
+ MONG_BNDRY =:| MANJU_DUBENA , % ""
+ MONG_ZERO =:| MANJU_DUBENA , % ""
+ MONG_ONE =:| MANJU_DUBENA , % ""
+ MONG_TWO =:| MANJU_DUBENA , % ""
+ MONG_THREE =:| MANJU_DUBENA , % ""
+ MONG_FOUR =:| MANJU_DUBENA , % ""
+ MONG_FIVE =:| MANJU_DUBENA , % ""
+ MONG_SIX =:| MANJU_DUBENA , % ""
+ MONG_SEVEN =:| MANJU_DUBENA , % ""
+ MONG_EIGHT =:| MANJU_DUBENA , % ""
+ MONG_NINE =:| MANJU_DUBENA , % ""
+ MONG_LT =:| MANJU_DUBENA , % ""
+ MONG_GT =:| MANJU_DUBENA , % ""
+ MONG_LGU =:| MANJU_DUBENA , % ""
+ MONG_RGU =:| MANJU_DUBENA , % ""
+ MONG_OPAREN =:| MANJU_DUBENA , % ""
+ MONG_CPAREN =:| MANJU_DUBENA , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENA , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENA , % ""
+ MONG_COLON =:| MANJU_DUBENA , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENA , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENA , % ""
+ MONG_QUESTION =:| MANJU_DUBENA , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENA , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENA , % ""
+ MANJU_TASLAL =:| MANJU_DUBENA , % ""
+ MONG_MSP =:| MANJU_DUBENA , % ""
+ MONG_MVS =:| MANJU_DUBENA , % ""
+ MONG_NCEG =:| MANJU_DUBENA , % ""
+ MONG_GCEG =:| MANJU_DUBENA , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENA ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNN: % " n-"
+ MANJU_G =: MANJU_DERIBUNNGA ; % " nga"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENA: % "a"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_O: % "o"
+ %
+ % final o
+ %
+ MONG_BNDRY =:| MANJU_DUBENO , % ""
+ MONG_ZERO =:| MANJU_DUBENO , % ""
+ MONG_ONE =:| MANJU_DUBENO , % ""
+ MONG_TWO =:| MANJU_DUBENO , % ""
+ MONG_THREE =:| MANJU_DUBENO , % ""
+ MONG_FOUR =:| MANJU_DUBENO , % ""
+ MONG_FIVE =:| MANJU_DUBENO , % ""
+ MONG_SIX =:| MANJU_DUBENO , % ""
+ MONG_SEVEN =:| MANJU_DUBENO , % ""
+ MONG_EIGHT =:| MANJU_DUBENO , % ""
+ MONG_NINE =:| MANJU_DUBENO , % ""
+ MONG_LT =:| MANJU_DUBENO , % ""
+ MONG_GT =:| MANJU_DUBENO , % ""
+ MONG_LGU =:| MANJU_DUBENO , % ""
+ MONG_RGU =:| MANJU_DUBENO , % ""
+ MONG_OPAREN =:| MANJU_DUBENO , % ""
+ MONG_CPAREN =:| MANJU_DUBENO , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENO , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENO , % ""
+ MONG_COLON =:| MANJU_DUBENO , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENO , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENO , % ""
+ MONG_QUESTION =:| MANJU_DUBENO , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENO , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENO , % ""
+ MANJU_TASLAL =:| MANJU_DUBENO , % ""
+ MONG_MSP =:| MANJU_DUBENO , % ""
+ MONG_MVS =:| MANJU_DUBENO , % ""
+ MONG_NCEG =:| MANJU_DUBENO , % ""
+ MONG_GCEG =:| MANJU_DUBENO , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENO ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENO: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_P: % "p"
+ MANJU_A =: MANJU_PA , % ""
+ MANJU_E =: MANJU_PE , % ""
+ MANJU_I =: MANJU_PI , % ""
+ MANJU_O =: MANJU_PO , % ""
+ MANJU_U =: MANJU_PU , % ""
+ %
+ % combined case
+ %
+ MONG_FVS1 =: MANJU_TIBP ; % "p'"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_R: % "r"
+ %
+ % final r
+ %
+ MONG_BNDRY |=:| MONG_BIODOISUUL , % ""
+ MONG_ZERO |=:| MONG_BIODOISUUL , % ""
+ MONG_ONE |=:| MONG_BIODOISUUL , % ""
+ MONG_TWO |=:| MONG_BIODOISUUL , % ""
+ MONG_THREE |=:| MONG_BIODOISUUL , % ""
+ MONG_FOUR |=:| MONG_BIODOISUUL , % ""
+ MONG_FIVE |=:| MONG_BIODOISUUL , % ""
+ MONG_SIX |=:| MONG_BIODOISUUL , % ""
+ MONG_SEVEN |=:| MONG_BIODOISUUL , % ""
+ MONG_EIGHT |=:| MONG_BIODOISUUL , % ""
+ MONG_NINE |=:| MONG_BIODOISUUL , % ""
+ MONG_LT |=:| MONG_BIODOISUUL , % ""
+ MONG_GT |=:| MONG_BIODOISUUL , % ""
+ MONG_LGU |=:| MONG_BIODOISUUL , % ""
+ MONG_RGU |=:| MONG_BIODOISUUL , % ""
+ MONG_OPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_CPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_DORWOLJIN |=:| MONG_BIODOISUUL , % ""
+ MANJU_FULLSTOP |=:| MONG_BIODOISUUL , % ""
+ MONG_COLON |=:| MONG_BIODOISUUL , % ""
+ MONG_ELLIPSIS |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMATION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTEXCLAM |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMQUEST |=:| MONG_BIODOISUUL , % ""
+ MANJU_TASLAL |=:| MONG_BIODOISUUL , % ""
+ MONG_MSP |=:| MONG_BIODOISUUL , % ""
+ MONG_MVS |=:| MONG_BIODOISUUL , % ""
+ MONG_NCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_GCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_TITEMSTROKE |=:| MONG_BIODOISUUL ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_S: % "s"
+ %
+ % combined cases
+ %
+ MONG_FVS1 =: MANJU_SH , % "sh"
+ MANJU_Y =: MANJU_SY , % "cy"
+ %
+ % final s
+ %
+ MONG_BNDRY =:| MANJU_DUBENS , % ""
+ MONG_ZERO =:| MANJU_DUBENS , % ""
+ MONG_ONE =:| MANJU_DUBENS , % ""
+ MONG_TWO =:| MANJU_DUBENS , % ""
+ MONG_THREE =:| MANJU_DUBENS , % ""
+ MONG_FOUR =:| MANJU_DUBENS , % ""
+ MONG_FIVE =:| MANJU_DUBENS , % ""
+ MONG_SIX =:| MANJU_DUBENS , % ""
+ MONG_SEVEN =:| MANJU_DUBENS , % ""
+ MONG_EIGHT =:| MANJU_DUBENS , % ""
+ MONG_NINE =:| MANJU_DUBENS , % ""
+ MONG_LT =:| MANJU_DUBENS , % ""
+ MONG_GT =:| MANJU_DUBENS , % ""
+ MONG_LGU =:| MANJU_DUBENS , % ""
+ MONG_RGU =:| MANJU_DUBENS , % ""
+ MONG_OPAREN =:| MANJU_DUBENS , % ""
+ MONG_CPAREN =:| MANJU_DUBENS , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENS , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENS , % ""
+ MONG_COLON =:| MANJU_DUBENS , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENS , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENS , % ""
+ MONG_QUESTION =:| MANJU_DUBENS , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENS , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENS , % ""
+ MANJU_TASLAL =:| MANJU_DUBENS , % ""
+ MONG_MSP =:| MANJU_DUBENS , % ""
+ MONG_MVS =:| MANJU_DUBENS , % ""
+ MONG_NCEG =:| MANJU_DUBENS , % ""
+ MONG_GCEG =:| MANJU_DUBENS , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENS ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNS: % " s-"
+ MONG_FVS1 =: MANJU_DERIBUNSH , % "sh"
+ MANJU_Y =: MANJU_DERIBUNSY ; % " sy"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENS: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_T: % "t"
+ %
+ % vowel allographs
+ %
+ MANJU_E =:| MANJU_TE , % ""
+ MANJU_U =:| MANJU_TE , % ""
+ MANJU_UU =:| MANJU_TE , % ""
+ %
+ % consonant cases
+ %
+ MANJU_B =:| MANJU_VART , % ""
+ MANJU_C =:| MANJU_VART , % ""
+ MANJU_D =:| MANJU_VART , % ""
+ MANJU_F =:| MANJU_VART , % ""
+ MANJU_G =:| MANJU_VART , % ""
+ MANJU_H =:| MANJU_VART , % ""
+ MANJU_J =:| MANJU_VART , % ""
+ MANJU_K =:| MANJU_VART , % ""
+ MANJU_L =:| MANJU_VART , % ""
+ MANJU_M =:| MANJU_VART , % ""
+ MANJU_N =:| MANJU_VART , % ""
+ MANJU_P =:| MANJU_VART , % ""
+ MANJU_R =:| MANJU_VART , % ""
+ MANJU_T =:| MANJU_VART , % ""
+ MANJU_W =:| MANJU_VART , % ""
+ MANJU_Y =:| MANJU_VART , % ""
+ MANJU_Z =:| MANJU_VART , % ""
+ %
+ % combined cases
+ %
+ MANJU_S =: MANJU_TS, % "ts"
+ MONG_FVS1 =: MANJU_TIBT , % "t"
+ %
+ % final s
+ %
+ MONG_BNDRY =:| MANJU_DUBENT , % ""
+ MONG_ZERO =:| MANJU_DUBENT , % ""
+ MONG_ONE =:| MANJU_DUBENT , % ""
+ MONG_TWO =:| MANJU_DUBENT , % ""
+ MONG_THREE =:| MANJU_DUBENT , % ""
+ MONG_FOUR =:| MANJU_DUBENT , % ""
+ MONG_FIVE =:| MANJU_DUBENT , % ""
+ MONG_SIX =:| MANJU_DUBENT , % ""
+ MONG_SEVEN =:| MANJU_DUBENT , % ""
+ MONG_EIGHT =:| MANJU_DUBENT , % ""
+ MONG_NINE =:| MANJU_DUBENT , % ""
+ MONG_LT =:| MANJU_DUBENT , % ""
+ MONG_GT =:| MANJU_DUBENT , % ""
+ MONG_LGU =:| MANJU_DUBENT , % ""
+ MONG_RGU =:| MANJU_DUBENT , % ""
+ MONG_OPAREN =:| MANJU_DUBENT , % ""
+ MONG_CPAREN =:| MANJU_DUBENT , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENT , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENT , % ""
+ MONG_COLON =:| MANJU_DUBENT , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENT , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENT , % ""
+ MONG_QUESTION =:| MANJU_DUBENT , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENT , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENT , % ""
+ MANJU_TASLAL =:| MANJU_DUBENT , % ""
+ MONG_MSP =:| MANJU_DUBENT , % ""
+ MONG_MVS =:| MANJU_DUBENT , % ""
+ MONG_NCEG =:| MANJU_DUBENT , % ""
+ MONG_GCEG =:| MANJU_DUBENT , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENT ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNT: % " t-"
+ %
+ % vowel allographs
+ %
+ MANJU_E =:| MANJU_DERIBUNTE , % ""
+ MANJU_U =:| MANJU_DERIBUNTE , % ""
+ MANJU_UU =:| MANJU_DERIBUNTE , % ""
+ MANJU_S =: MANJU_DERIBUNTS , % " ts-"
+ %
+ % combined case
+ %
+ MONG_FVS1 =: MANJU_TIBT ; % "t"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_TE: % "te"
+ %
+ % vowel allographs
+ %
+ MANJU_E |=: MANJU_A , % ""
+ MANJU_U |=: MANJU_O ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNTE: % " te-"
+ %
+ % vowel allographs
+ %
+ MANJU_E |=: MANJU_A , % ""
+ MANJU_U |=: MANJU_O ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENT: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_U: % "u"
+ %
+ % final u
+ %
+ MONG_BNDRY =:| MANJU_DUBENU , % ""
+ MONG_ZERO =:| MANJU_DUBENU , % ""
+ MONG_ONE =:| MANJU_DUBENU , % ""
+ MONG_TWO =:| MANJU_DUBENU , % ""
+ MONG_THREE =:| MANJU_DUBENU , % ""
+ MONG_FOUR =:| MANJU_DUBENU , % ""
+ MONG_FIVE =:| MANJU_DUBENU , % ""
+ MONG_SIX =:| MANJU_DUBENU , % ""
+ MONG_SEVEN =:| MANJU_DUBENU , % ""
+ MONG_EIGHT =:| MANJU_DUBENU , % ""
+ MONG_NINE =:| MANJU_DUBENU , % ""
+ MONG_LT =:| MANJU_DUBENU , % ""
+ MONG_GT =:| MANJU_DUBENU , % ""
+ MONG_LGU =:| MANJU_DUBENU , % ""
+ MONG_RGU =:| MANJU_DUBENU , % ""
+ MONG_OPAREN =:| MANJU_DUBENU , % ""
+ MONG_CPAREN =:| MANJU_DUBENU , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENU , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENU , % ""
+ MONG_COLON =:| MANJU_DUBENU , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENU , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENU , % ""
+ MONG_QUESTION =:| MANJU_DUBENU , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENU , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENU , % ""
+ MANJU_TASLAL =:| MANJU_DUBENU , % ""
+ MONG_MSP =:| MANJU_DUBENU , % ""
+ MONG_MVS =:| MANJU_DUBENU , % ""
+ MONG_NCEG =:| MANJU_DUBENU , % ""
+ MONG_GCEG =:| MANJU_DUBENU , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENU ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENU: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_UU: % "uu"
+ %
+ % final uu
+ %
+ MONG_BNDRY =:| MANJU_DUBENUU , % ""
+ MONG_ZERO =:| MANJU_DUBENUU , % ""
+ MONG_ONE =:| MANJU_DUBENUU , % ""
+ MONG_TWO =:| MANJU_DUBENUU , % ""
+ MONG_THREE =:| MANJU_DUBENUU , % ""
+ MONG_FOUR =:| MANJU_DUBENUU , % ""
+ MONG_FIVE =:| MANJU_DUBENUU , % ""
+ MONG_SIX =:| MANJU_DUBENUU , % ""
+ MONG_SEVEN =:| MANJU_DUBENUU , % ""
+ MONG_EIGHT =:| MANJU_DUBENUU , % ""
+ MONG_NINE =:| MANJU_DUBENUU , % ""
+ MONG_LT =:| MANJU_DUBENUU , % ""
+ MONG_GT =:| MANJU_DUBENUU , % ""
+ MONG_LGU =:| MANJU_DUBENUU , % ""
+ MONG_RGU =:| MANJU_DUBENUU , % ""
+ MONG_OPAREN =:| MANJU_DUBENUU , % ""
+ MONG_CPAREN =:| MANJU_DUBENUU , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENUU , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENUU , % ""
+ MONG_COLON =:| MANJU_DUBENUU , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENUU , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENUU , % ""
+ MONG_QUESTION =:| MANJU_DUBENUU , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENUU , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENUU , % ""
+ MANJU_TASLAL =:| MANJU_DUBENUU , % ""
+ MONG_MSP =:| MANJU_DUBENUU , % ""
+ MONG_MVS =:| MANJU_DUBENUU , % ""
+ MONG_NCEG =:| MANJU_DUBENUU , % ""
+ MONG_GCEG =:| MANJU_DUBENUU , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENUU ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENUU: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_NG: % "ng"
+ %
+ % combined case
+ %
+ MONG_FVS1 =: MANJU_NGA , % "ng'"
+ %
+ % final ng
+ %
+ MONG_BNDRY =: MANJU_DUBENNG , % ""
+ MONG_ZERO =: MANJU_DUBENNG , % ""
+ MONG_ONE =: MANJU_DUBENNG , % ""
+ MONG_TWO =: MANJU_DUBENNG , % ""
+ MONG_THREE =: MANJU_DUBENNG , % ""
+ MONG_FOUR =: MANJU_DUBENNG , % ""
+ MONG_FIVE =: MANJU_DUBENNG , % ""
+ MONG_SIX =: MANJU_DUBENNG , % ""
+ MONG_SEVEN =: MANJU_DUBENNG , % ""
+ MONG_EIGHT =: MANJU_DUBENNG , % ""
+ MONG_NINE =: MANJU_DUBENNG , % ""
+ MONG_LT =: MANJU_DUBENNG , % ""
+ MONG_GT =: MANJU_DUBENNG , % ""
+ MONG_LGU =: MANJU_DUBENNG , % ""
+ MONG_RGU =: MANJU_DUBENNG , % ""
+ MONG_OPAREN =: MANJU_DUBENNG , % ""
+ MONG_CPAREN =: MANJU_DUBENNG , % ""
+ MONG_DORWOLJIN =: MANJU_DUBENNG , % ""
+ MANJU_FULLSTOP =: MANJU_DUBENNG , % ""
+ MONG_COLON =: MANJU_DUBENNG , % ""
+ MONG_ELLIPSIS =: MANJU_DUBENNG , % ""
+ MONG_EXCLAMATION =: MANJU_DUBENNG , % ""
+ MONG_QUESTION =: MANJU_DUBENNG , % ""
+ MONG_QUESTEXCLAM =: MANJU_DUBENNG , % ""
+ MONG_EXCLAMQUEST =: MANJU_DUBENNG , % ""
+ MANJU_TASLAL =: MANJU_DUBENNG , % ""
+ MONG_MSP =: MANJU_DUBENNG , % ""
+ MONG_MVS =: MANJU_DUBENNG , % ""
+ MONG_NCEG =: MANJU_DUBENNG , % ""
+ MONG_GCEG =: MANJU_DUBENNG , % ""
+ MONG_TITEMSTROKE =: MANJU_DUBENNG ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENNG: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_SH: % "sh"
+ %
+ % final sh
+ %
+ MONG_BNDRY =:| MANJU_DUBENSH , % ""
+ MONG_ZERO =:| MANJU_DUBENSH , % ""
+ MONG_ONE =:| MANJU_DUBENSH , % ""
+ MONG_TWO =:| MANJU_DUBENSH , % ""
+ MONG_THREE =:| MANJU_DUBENSH , % ""
+ MONG_FOUR =:| MANJU_DUBENSH , % ""
+ MONG_FIVE =:| MANJU_DUBENSH , % ""
+ MONG_SIX =:| MANJU_DUBENSH , % ""
+ MONG_SEVEN =:| MANJU_DUBENSH , % ""
+ MONG_EIGHT =:| MANJU_DUBENSH , % ""
+ MONG_NINE =:| MANJU_DUBENSH , % ""
+ MONG_LT =:| MANJU_DUBENSH , % ""
+ MONG_GT =:| MANJU_DUBENSH , % ""
+ MONG_LGU =:| MANJU_DUBENSH , % ""
+ MONG_RGU =:| MANJU_DUBENSH , % ""
+ MONG_OPAREN =:| MANJU_DUBENSH , % ""
+ MONG_CPAREN =:| MANJU_DUBENSH , % ""
+ MONG_DORWOLJIN =:| MANJU_DUBENSH , % ""
+ MANJU_FULLSTOP =:| MANJU_DUBENSH , % ""
+ MONG_COLON =:| MANJU_DUBENSH , % ""
+ MONG_ELLIPSIS =:| MANJU_DUBENSH , % ""
+ MONG_EXCLAMATION =:| MANJU_DUBENSH , % ""
+ MONG_QUESTION =:| MANJU_DUBENSH , % ""
+ MONG_QUESTEXCLAM =:| MANJU_DUBENSH , % ""
+ MONG_EXCLAMQUEST =:| MANJU_DUBENSH , % ""
+ MANJU_TASLAL =:| MANJU_DUBENSH , % ""
+ MONG_MSP =:| MANJU_DUBENSH , % ""
+ MONG_MVS =:| MANJU_DUBENSH , % ""
+ MONG_NCEG =:| MANJU_DUBENSH , % ""
+ MONG_GCEG =:| MANJU_DUBENSH , % ""
+ MONG_TITEMSTROKE =:| MANJU_DUBENSH ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_DERIBUNSH: % " sh-"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DUBENSH: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DZ: % "dz"
+ MONG_BNDRY |=:| MONG_BIODOISUUL , % ""
+ MANJU_I =: MANJU_DZI ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNDZ: % " dz-"
+ MANJU_I =: MANJU_DERIBUNDZI ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DZI: % "dzi "
+ %
+ % final dzi
+ %
+ MONG_BNDRY |=:| MONG_BIODOISUUL , % ""
+ MONG_ZERO |=:| MONG_BIODOISUUL , % ""
+ MONG_ONE |=:| MONG_BIODOISUUL , % ""
+ MONG_TWO |=:| MONG_BIODOISUUL , % ""
+ MONG_THREE |=:| MONG_BIODOISUUL , % ""
+ MONG_FOUR |=:| MONG_BIODOISUUL , % ""
+ MONG_FIVE |=:| MONG_BIODOISUUL , % ""
+ MONG_SIX |=:| MONG_BIODOISUUL , % ""
+ MONG_SEVEN |=:| MONG_BIODOISUUL , % ""
+ MONG_EIGHT |=:| MONG_BIODOISUUL , % ""
+ MONG_NINE |=:| MONG_BIODOISUUL , % ""
+ MONG_LT |=:| MONG_BIODOISUUL , % ""
+ MONG_GT |=:| MONG_BIODOISUUL , % ""
+ MONG_LGU |=:| MONG_BIODOISUUL , % ""
+ MONG_RGU |=:| MONG_BIODOISUUL , % ""
+ MONG_OPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_CPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_DORWOLJIN |=:| MONG_BIODOISUUL , % ""
+ MANJU_FULLSTOP |=:| MONG_BIODOISUUL , % ""
+ MONG_COLON |=:| MONG_BIODOISUUL , % ""
+ MONG_ELLIPSIS |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMATION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTEXCLAM |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMQUEST |=:| MONG_BIODOISUUL , % ""
+ MANJU_TASLAL |=:| MONG_BIODOISUUL , % ""
+ MONG_MSP |=:| MONG_BIODOISUUL , % ""
+ MONG_MVS |=:| MONG_BIODOISUUL , % ""
+ MONG_NCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_GCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_TITEMSTROKE |=:| MONG_BIODOISUUL ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNDZI: % " dzi "
+ %
+ % final dzi
+ %
+ MONG_BNDRY |=:| MONG_BIODOISUUL , % ""
+ MONG_ZERO |=:| MONG_BIODOISUUL , % ""
+ MONG_ONE |=:| MONG_BIODOISUUL , % ""
+ MONG_TWO |=:| MONG_BIODOISUUL , % ""
+ MONG_THREE |=:| MONG_BIODOISUUL , % ""
+ MONG_FOUR |=:| MONG_BIODOISUUL , % ""
+ MONG_FIVE |=:| MONG_BIODOISUUL , % ""
+ MONG_SIX |=:| MONG_BIODOISUUL , % ""
+ MONG_SEVEN |=:| MONG_BIODOISUUL , % ""
+ MONG_EIGHT |=:| MONG_BIODOISUUL , % ""
+ MONG_NINE |=:| MONG_BIODOISUUL , % ""
+ MONG_LT |=:| MONG_BIODOISUUL , % ""
+ MONG_GT |=:| MONG_BIODOISUUL , % ""
+ MONG_LGU |=:| MONG_BIODOISUUL , % ""
+ MONG_RGU |=:| MONG_BIODOISUUL , % ""
+ MONG_OPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_CPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_DORWOLJIN |=:| MONG_BIODOISUUL , % ""
+ MANJU_FULLSTOP |=:| MONG_BIODOISUUL , % ""
+ MONG_COLON |=:| MONG_BIODOISUUL , % ""
+ MONG_ELLIPSIS |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMATION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTEXCLAM |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMQUEST |=:| MONG_BIODOISUUL , % ""
+ MANJU_TASLAL |=:| MONG_BIODOISUUL , % ""
+ MONG_MSP |=:| MONG_BIODOISUUL , % ""
+ MONG_MVS |=:| MONG_BIODOISUUL , % ""
+ MONG_NCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_GCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_TITEMSTROKE |=:| MONG_BIODOISUUL ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_JY: % "jy"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_DERIBUNJY: % " jy-"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_SY: % "sy"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_DERIBUNSY: % " sy-"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_TS: % "ts"
+ MANJU_H =: MANJU_TSH ; % " tsh"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNTS: % " ts-"
+ MANJU_H =: MANJU_DERIBUNTSH ; % " tsh"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_TSH: % "tsh"
+ MANJU_Y =: MANJU_TSHY ; % "tshy"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNTSH: % " tsh-"
+ MANJU_Y =: MANJU_DERIBUNTSHY ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_Z: % "z"
+ MANJU_H =: MANJU_ZH , % ""
+ MANJU_R =: MANJU_ZR ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNZ: % " z-"
+ MANJU_H =: MANJU_DERIBUNZH , % ""
+ MANJU_R =: MANJU_DERIBUNZR ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNNGA: % " nga-"
+ MONG_FVS1 =: MANJU_DERIBUNNGA ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_LH: % "lh"
+ MANJU_E =:| MANJU_HIGHLH , % ""
+ MANJU_U =:| MANJU_HIGHLH ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_DERIBUNLH: % " lh-"
+ MANJU_E =:| MANJU_HIGHDERIBUNLH ,% ""
+ MANJU_U =:| MANJU_HIGHDERIBUNLH ;% ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_CY: % "cy"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_GH: % "gh"
+ MANJU_A =: MANJU_GHA , % ""
+ MANJU_O =: MANJU_GHO ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_HH: % "hh"
+ MANJU_A =: MANJU_HHA , % ""
+ MANJU_O =: MANJU_HHO ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_KH: % "kh"
+ MANJU_A =: MANJU_KHA , % ""
+ MANJU_O =: MANJU_KHO ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_BA: % "ba"
+ %
+ % final ba
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_BE: % "be"
+ %
+ % final be
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_BI: % "bi"
+ %
+ % final bi
+ %
+ MONG_BNDRY |=:| MONG_BIODOISUUL , % ""
+ MONG_ZERO |=:| MONG_BIODOISUUL , % ""
+ MONG_ONE |=:| MONG_BIODOISUUL , % ""
+ MONG_TWO |=:| MONG_BIODOISUUL , % ""
+ MONG_THREE |=:| MONG_BIODOISUUL , % ""
+ MONG_FOUR |=:| MONG_BIODOISUUL , % ""
+ MONG_FIVE |=:| MONG_BIODOISUUL , % ""
+ MONG_SIX |=:| MONG_BIODOISUUL , % ""
+ MONG_SEVEN |=:| MONG_BIODOISUUL , % ""
+ MONG_EIGHT |=:| MONG_BIODOISUUL , % ""
+ MONG_NINE |=:| MONG_BIODOISUUL , % ""
+ MONG_LT |=:| MONG_BIODOISUUL , % ""
+ MONG_GT |=:| MONG_BIODOISUUL , % ""
+ MONG_LGU |=:| MONG_BIODOISUUL , % ""
+ MONG_RGU |=:| MONG_BIODOISUUL , % ""
+ MONG_OPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_CPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_DORWOLJIN |=:| MONG_BIODOISUUL , % ""
+ MANJU_FULLSTOP |=:| MONG_BIODOISUUL , % ""
+ MONG_COLON |=:| MONG_BIODOISUUL , % ""
+ MONG_ELLIPSIS |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMATION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTEXCLAM |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMQUEST |=:| MONG_BIODOISUUL , % ""
+ MANJU_TASLAL |=:| MONG_BIODOISUUL , % ""
+ MONG_MSP |=:| MONG_BIODOISUUL , % ""
+ MONG_MVS |=:| MONG_BIODOISUUL , % ""
+ MONG_NCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_GCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_TITEMSTROKE |=:| MONG_BIODOISUUL ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_BO: % "bo"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_BU: % "bu"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_BUU: % "bu"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_GE: % "ge"
+ %
+ % final ge
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_GI: % "gi"
+ %
+ % final gi
+ %
+ MONG_BNDRY |=:| MONG_BIODOISUUL , % ""
+ MONG_ZERO |=:| MONG_BIODOISUUL , % ""
+ MONG_ONE |=:| MONG_BIODOISUUL , % ""
+ MONG_TWO |=:| MONG_BIODOISUUL , % ""
+ MONG_THREE |=:| MONG_BIODOISUUL , % ""
+ MONG_FOUR |=:| MONG_BIODOISUUL , % ""
+ MONG_FIVE |=:| MONG_BIODOISUUL , % ""
+ MONG_SIX |=:| MONG_BIODOISUUL , % ""
+ MONG_SEVEN |=:| MONG_BIODOISUUL , % ""
+ MONG_EIGHT |=:| MONG_BIODOISUUL , % ""
+ MONG_NINE |=:| MONG_BIODOISUUL , % ""
+ MONG_LT |=:| MONG_BIODOISUUL , % ""
+ MONG_GT |=:| MONG_BIODOISUUL , % ""
+ MONG_LGU |=:| MONG_BIODOISUUL , % ""
+ MONG_RGU |=:| MONG_BIODOISUUL , % ""
+ MONG_OPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_CPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_DORWOLJIN |=:| MONG_BIODOISUUL , % ""
+ MANJU_FULLSTOP |=:| MONG_BIODOISUUL , % ""
+ MONG_COLON |=:| MONG_BIODOISUUL , % ""
+ MONG_ELLIPSIS |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMATION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTEXCLAM |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMQUEST |=:| MONG_BIODOISUUL , % ""
+ MANJU_TASLAL |=:| MONG_BIODOISUUL , % ""
+ MONG_MSP |=:| MONG_BIODOISUUL , % ""
+ MONG_MVS |=:| MONG_BIODOISUUL , % ""
+ MONG_NCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_GCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_TITEMSTROKE |=:| MONG_BIODOISUUL ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_GU: % "gu"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_HE: % "he"
+ %
+ % final he
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_HI: % "hi"
+ %
+ % final hi
+ %
+ MONG_BNDRY |=:| MONG_BIODOISUUL , % ""
+ MONG_ZERO |=:| MONG_BIODOISUUL , % ""
+ MONG_ONE |=:| MONG_BIODOISUUL , % ""
+ MONG_TWO |=:| MONG_BIODOISUUL , % ""
+ MONG_THREE |=:| MONG_BIODOISUUL , % ""
+ MONG_FOUR |=:| MONG_BIODOISUUL , % ""
+ MONG_FIVE |=:| MONG_BIODOISUUL , % ""
+ MONG_SIX |=:| MONG_BIODOISUUL , % ""
+ MONG_SEVEN |=:| MONG_BIODOISUUL , % ""
+ MONG_EIGHT |=:| MONG_BIODOISUUL , % ""
+ MONG_NINE |=:| MONG_BIODOISUUL , % ""
+ MONG_LT |=:| MONG_BIODOISUUL , % ""
+ MONG_GT |=:| MONG_BIODOISUUL , % ""
+ MONG_LGU |=:| MONG_BIODOISUUL , % ""
+ MONG_RGU |=:| MONG_BIODOISUUL , % ""
+ MONG_OPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_CPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_DORWOLJIN |=:| MONG_BIODOISUUL , % ""
+ MANJU_FULLSTOP |=:| MONG_BIODOISUUL , % ""
+ MONG_COLON |=:| MONG_BIODOISUUL , % ""
+ MONG_ELLIPSIS |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMATION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTEXCLAM |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMQUEST |=:| MONG_BIODOISUUL , % ""
+ MANJU_TASLAL |=:| MONG_BIODOISUUL , % ""
+ MONG_MSP |=:| MONG_BIODOISUUL , % ""
+ MONG_MVS |=:| MONG_BIODOISUUL , % ""
+ MONG_NCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_GCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_TITEMSTROKE |=:| MONG_BIODOISUUL ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_HU: % "hu"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_KE: % "ke"
+ %
+ % final ke
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_KI: % "ki"
+ %
+ % final ki
+ %
+ MONG_BNDRY |=:| MONG_BIODOISUUL , % ""
+ MONG_ZERO |=:| MONG_BIODOISUUL , % ""
+ MONG_ONE |=:| MONG_BIODOISUUL , % ""
+ MONG_TWO |=:| MONG_BIODOISUUL , % ""
+ MONG_THREE |=:| MONG_BIODOISUUL , % ""
+ MONG_FOUR |=:| MONG_BIODOISUUL , % ""
+ MONG_FIVE |=:| MONG_BIODOISUUL , % ""
+ MONG_SIX |=:| MONG_BIODOISUUL , % ""
+ MONG_SEVEN |=:| MONG_BIODOISUUL , % ""
+ MONG_EIGHT |=:| MONG_BIODOISUUL , % ""
+ MONG_NINE |=:| MONG_BIODOISUUL , % ""
+ MONG_LT |=:| MONG_BIODOISUUL , % ""
+ MONG_GT |=:| MONG_BIODOISUUL , % ""
+ MONG_LGU |=:| MONG_BIODOISUUL , % ""
+ MONG_RGU |=:| MONG_BIODOISUUL , % ""
+ MONG_OPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_CPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_DORWOLJIN |=:| MONG_BIODOISUUL , % ""
+ MANJU_FULLSTOP |=:| MONG_BIODOISUUL , % ""
+ MONG_COLON |=:| MONG_BIODOISUUL , % ""
+ MONG_ELLIPSIS |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMATION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTEXCLAM |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMQUEST |=:| MONG_BIODOISUUL , % ""
+ MANJU_TASLAL |=:| MONG_BIODOISUUL , % ""
+ MONG_MSP |=:| MONG_BIODOISUUL , % ""
+ MONG_MVS |=:| MONG_BIODOISUUL , % ""
+ MONG_NCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_GCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_TITEMSTROKE |=:| MONG_BIODOISUUL ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_KU: % "ku"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_GHA: % "gha"
+ %
+ % final gha
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_GHO: % "gho"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_HHA: % "hha"
+ %
+ % final hha
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_HHO: % "hho"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_KHA: % "kha"
+ %
+ % final kha
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_KHO: % "kho"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_PA: % "pa"
+ %
+ % final pa
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_PE: % "pe"
+ %
+ % final pe
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_PI: % "pi"
+ %
+ % final pi
+ %
+ MONG_BNDRY |=:| MONG_BIODOISUUL , % ""
+ MONG_ZERO |=:| MONG_BIODOISUUL , % ""
+ MONG_ONE |=:| MONG_BIODOISUUL , % ""
+ MONG_TWO |=:| MONG_BIODOISUUL , % ""
+ MONG_THREE |=:| MONG_BIODOISUUL , % ""
+ MONG_FOUR |=:| MONG_BIODOISUUL , % ""
+ MONG_FIVE |=:| MONG_BIODOISUUL , % ""
+ MONG_SIX |=:| MONG_BIODOISUUL , % ""
+ MONG_SEVEN |=:| MONG_BIODOISUUL , % ""
+ MONG_EIGHT |=:| MONG_BIODOISUUL , % ""
+ MONG_NINE |=:| MONG_BIODOISUUL , % ""
+ MONG_LT |=:| MONG_BIODOISUUL , % ""
+ MONG_GT |=:| MONG_BIODOISUUL , % ""
+ MONG_LGU |=:| MONG_BIODOISUUL , % ""
+ MONG_RGU |=:| MONG_BIODOISUUL , % ""
+ MONG_OPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_CPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_DORWOLJIN |=:| MONG_BIODOISUUL , % ""
+ MANJU_FULLSTOP |=:| MONG_BIODOISUUL , % ""
+ MONG_COLON |=:| MONG_BIODOISUUL , % ""
+ MONG_ELLIPSIS |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMATION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTEXCLAM |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMQUEST |=:| MONG_BIODOISUUL , % ""
+ MANJU_TASLAL |=:| MONG_BIODOISUUL , % ""
+ MONG_MSP |=:| MONG_BIODOISUUL , % ""
+ MONG_MVS |=:| MONG_BIODOISUUL , % ""
+ MONG_NCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_GCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_TITEMSTROKE |=:| MONG_BIODOISUUL ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_PO: % "po"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_PU: % "pu"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_TIBP: % "p'"
+ MANJU_A =: MANJU_TIBPA , % "p'a"
+ MANJU_E =: MANJU_TIBPE , % "p'e"
+ MANJU_I =: MANJU_TIBPI , % "p'i"
+ MANJU_O =: MANJU_TIBPO , % "p'o"
+ MANJU_U =: MANJU_TIBPU ; % "p'u"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_TIBPA: % "p'a"
+ %
+ % final p'a
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_TIBPE: % "p'e"
+ %
+ % final p'e
+ %
+ MONG_BNDRY |=:| MONG_ORXIC , % ""
+ MONG_ZERO |=:| MONG_ORXIC , % ""
+ MONG_ONE |=:| MONG_ORXIC , % ""
+ MONG_TWO |=:| MONG_ORXIC , % ""
+ MONG_THREE |=:| MONG_ORXIC , % ""
+ MONG_FOUR |=:| MONG_ORXIC , % ""
+ MONG_FIVE |=:| MONG_ORXIC , % ""
+ MONG_SIX |=:| MONG_ORXIC , % ""
+ MONG_SEVEN |=:| MONG_ORXIC , % ""
+ MONG_EIGHT |=:| MONG_ORXIC , % ""
+ MONG_NINE |=:| MONG_ORXIC , % ""
+ MONG_LT |=:| MONG_ORXIC , % ""
+ MONG_GT |=:| MONG_ORXIC , % ""
+ MONG_LGU |=:| MONG_ORXIC , % ""
+ MONG_RGU |=:| MONG_ORXIC , % ""
+ MONG_OPAREN |=:| MONG_ORXIC , % ""
+ MONG_CPAREN |=:| MONG_ORXIC , % ""
+ MONG_DORWOLJIN |=:| MONG_ORXIC , % ""
+ MANJU_FULLSTOP |=:| MONG_ORXIC , % ""
+ MONG_COLON |=:| MONG_ORXIC , % ""
+ MONG_ELLIPSIS |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMATION |=:| MONG_ORXIC , % ""
+ MONG_QUESTION |=:| MONG_ORXIC , % ""
+ MONG_QUESTEXCLAM |=:| MONG_ORXIC , % ""
+ MONG_EXCLAMQUEST |=:| MONG_ORXIC , % ""
+ MANJU_TASLAL |=:| MONG_ORXIC , % ""
+ MONG_MSP |=:| MONG_ORXIC , % ""
+ MONG_MVS |=:| MONG_ORXIC , % ""
+ MONG_NCEG |=:| MONG_ORXIC , % ""
+ MONG_GCEG |=:| MONG_ORXIC , % ""
+ MONG_TITEMSTROKE |=:| MONG_ORXIC ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MANJU_TIBPI: % "p'i"
+ %
+ % final p'i
+ %
+ MONG_BNDRY |=:| MONG_BIODOISUUL , % ""
+ MONG_ZERO |=:| MONG_BIODOISUUL , % ""
+ MONG_ONE |=:| MONG_BIODOISUUL , % ""
+ MONG_TWO |=:| MONG_BIODOISUUL , % ""
+ MONG_THREE |=:| MONG_BIODOISUUL , % ""
+ MONG_FOUR |=:| MONG_BIODOISUUL , % ""
+ MONG_FIVE |=:| MONG_BIODOISUUL , % ""
+ MONG_SIX |=:| MONG_BIODOISUUL , % ""
+ MONG_SEVEN |=:| MONG_BIODOISUUL , % ""
+ MONG_EIGHT |=:| MONG_BIODOISUUL , % ""
+ MONG_NINE |=:| MONG_BIODOISUUL , % ""
+ MONG_LT |=:| MONG_BIODOISUUL , % ""
+ MONG_GT |=:| MONG_BIODOISUUL , % ""
+ MONG_LGU |=:| MONG_BIODOISUUL , % ""
+ MONG_RGU |=:| MONG_BIODOISUUL , % ""
+ MONG_OPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_CPAREN |=:| MONG_BIODOISUUL , % ""
+ MONG_DORWOLJIN |=:| MONG_BIODOISUUL , % ""
+ MANJU_FULLSTOP |=:| MONG_BIODOISUUL , % ""
+ MONG_COLON |=:| MONG_BIODOISUUL , % ""
+ MONG_ELLIPSIS |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMATION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTION |=:| MONG_BIODOISUUL , % ""
+ MONG_QUESTEXCLAM |=:| MONG_BIODOISUUL , % ""
+ MONG_EXCLAMQUEST |=:| MONG_BIODOISUUL , % ""
+ MANJU_TASLAL |=:| MONG_BIODOISUUL , % ""
+ MONG_MSP |=:| MONG_BIODOISUUL , % ""
+ MONG_MVS |=:| MONG_BIODOISUUL , % ""
+ MONG_NCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_GCEG |=:| MONG_BIODOISUUL , % ""
+ MONG_TITEMSTROKE |=:| MONG_BIODOISUUL ; % ""
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_BIODOISUUL: % "k -"
+ MONG_NCEG kern ispace#; %
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_TIBPO: % "p'o"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_TIBPU: % "p'u"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable MANJU_TIBPUU: % "p'uu"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/mbatoms.mf b/Master/texmf-dist/fonts/source/public/montex/mbatoms.mf
new file mode 100644
index 00000000000..1cd35273045
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mbatoms.mf
@@ -0,0 +1,1334 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mbatoms.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: January 1st, 2002
+% Version: 0.9
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian and Manju Script (LMS, LMA)
+% Mongol Bicig, Manju Bithe Font Atoms Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% First we decide our identity:
+%
+ writing:=0;
+ Bicig:=1;
+ Bithe:=2;
+ Galig:=3;
+ Tod:=4;
+ Vagindra:=5;
+ Container:=255;
+
+% Then we decide our style:
+%
+ style:=0;
+ steel:=1;
+ wood:=2;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Then we decide our writing direction:
+%
+ boolean LR;
+
+% Some bizarre rotating equipment gets installed:
+ % pair Centerpoint;
+def ifrotated = % Our rotating mechanism
+ if LR: rotatedaround ((w/2,.5[h,-d]),180) fi
+enddef;
+
+% Yet we cannot deny that we still use the picture gimmick...
+%
+ picture zawjpicture, exenzawjpicture,
+ deribuntsh_picture, tsh_picture;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def numberpath = % Theoretical number shape; a slanted ellipsis
+ % pair z[];
+ path trial;
+ z1=(2/6numberwidth,gedesinner);
+ z2=(numberwidth-3thin,underinner+thin);
+ z3=(4/6numberwidth,underinner);
+ z4=(2thin,gedesinner-thin);
+ trial= (z1..tension 1.2..z2..tension 1.2..z3..tension
+ 1.2..z4..tension 1.2..cycle);
+ penlabels (1,2,3,4);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def nuruu (expr exen,suul) = % Manai nirugu!
+ numeric x[]; numeric y[];
+ z1=(exen,nuruuleft);
+ z2=(x1,nuruuright);
+ z3=(suul,y2);
+ z4=(x3,y1);
+ fill (z1--z2--z3--z4--cycle) ifrotated;
+ penlabels(1,2,3,4);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def shud (expr x_offset) = % Manai shud!
+ numeric x[]; numeric y[];
+ nuruu(shudwidth+x_offset,x_offset);
+ z1=(x_offset+shudwidth-bearing,Centerline+1/2nuruuwidth);
+ z2=(x_offset+bearing,y1);
+ z3=(1/2[x1,x2],shudheight);
+ fill (z1--z2--z3--cycle) ifrotated;
+ penlabels(1,2,3);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def shud_atom (expr exen, suul) = % Manai shud!
+ numeric x[]; numeric y[];
+ z1=(exen,Centerline+1/2nuruuwidth);
+ z2=(suul,y1);
+ z3=(1/2[x1,x2],shudheight);
+ fill (z1--z2--z3--cycle) ifrotated;
+ penlabels(1,2,3);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def dusal (expr posx, posy, xdim, ydim) = % Manai dusal!
+ "The dusal, used for n, s, g, etc.";
+ numeric x[]; numeric y[];
+ z1=(posx,posy-1/2ydim);
+ z2=(posx-1/2xdim,posy);
+ z3=(posx,posy+1/2ydim);
+ z4=(posx+1/2xdim,posy);
+ fill (z1--z2--z3--z4--cycle) ifrotated;
+ penlabels(1,2,3,4);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def manjudusal (expr posx, posy, xdim, ydim) = % Manju dusal!
+ "The Manju dusal";
+ numeric x[]; numeric y[];
+ z1l=(posx+1/2xdim,posy+1/2ydim);
+ z2 =(posx-1/2xdim,posy);
+ z3l=(x1,posy-1/2ydim);
+ penpos1(1/4xdim,135);
+ penpos2(4/4xdim,180);
+ penpos3(1/4xdim,225);
+ penstroke(z1e..tension 2..z2e..tension 2..z3e) ifrotated;
+ penlabels(1,2,3);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ManjuDusal (expr posx, posy, xdim, ydim) = % Manju dusal!
+ "The Manju dusal";
+ numeric x[]; numeric y[];
+ z4l=(posx+1/2xdim,posy+1/2ydim);
+ z5 =(posx-1/2xdim,posy);
+ z6l=(x4,posy-1/2ydim);
+ penpos4(1/4xdim,135);
+ penpos5(4/4xdim,180);
+ penpos6(1/4xdim,225);
+ penstroke(z4e..tension 2..z5e..tension 2..z6e) ifrotated;
+ penlabels(4,5,6);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def cegteishud (expr posx) =
+ shud(posx);
+ dusal (posx+1/2shudwidth,yashilbeheight,3thin,2thick);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def titem =
+ numeric x[]; numeric y[];
+ z1=(0,nuruuleft);
+ z2=(bearing,y1);
+ z3=(1/2shudwidth,shudheight);
+ z4=(shudwidth-bearing,nuruuright);
+ z5=(shudwidth+bearing,y4);
+ z6=(8/12shudwidth,nuruuright-1thick);
+ z7=(1/2shudwidth,nuruuright);
+ z8=(0,nuruuright);
+ penlabels(1,2,3,4,5,6,7,8);
+ fill (z1--z2--z3..tension infinity..
+ z4..z5&z5{down}..z6..tension 2..z7--z8--cycle)
+ ifrotated;
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def titem_stroke (expr xpos) =
+ numeric x[]; numeric y[];
+ z1=(xpos+numtaigedeswidth,Centerline);
+ z2=(xpos,Centerline);
+ penpos1(nuruuwidth*1.15,80);
+ penpos2(nuruuwidth,90);
+ penlabels(1,2);
+ penstroke (z1e..z2e) ifrotated;
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def cegteititem =
+ titem;
+ dusal (1/2shudwidth,yashilbeheight,3thin,2thick);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def dugui (expr posx, posy, diameter) = % Manzu dugui!
+ "The dugui, used for h, nga, etc.";
+ numeric x[]; numeric y[];
+ z1=(posx,posy-1/2diameter);
+ z3=(posx,posy+1/2diameter);
+ pickup pencircle scaled 1.25 thin;
+ draw (z1..z3..cycle) ifrotated;
+ penlabels(1,3);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def suul =
+ if style=steel:
+ z1=(shudwidth,nuruuleft);
+ z2=(shudwidth-bearing,y1);
+ z3=(1/2shudwidth,shudheight);
+ z4=(-bearing,underouter);
+ z5=(bearing,suulouter-thin);
+ x6=(9/16shudwidth);
+ z6-z7=whatever*(z2-z3);
+ z7=(3/4shudwidth,nuruuright);
+ z8=(x1,nuruuright);
+ fill (z1--z2--z3..z4--z5{up}---z6--z7--z8--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8);
+ fi;
+ if style=wood:
+ nuruu(shudwidth,2/4shudwidth);
+ z1r=(shudwidth-bearing,gedesouter);
+ z2 =(x1-thin,Centerline);
+ z3 =(0,suulouter);
+ penpos1(thick,15);
+ penpos2(2/3thick,0);
+ penpos3(1/2thin,0);
+ penstroke (z1e..z2e..z3e) ifrotated;
+ penlabels(1,2,3);
+ fi;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def bagaodoisuul =
+ if style=steel:
+ z1=(shudwidth,nuruuleft);
+ z2=(shudwidth-bearing,y1);
+ z3=(1/2shudwidth,shudheight);
+ z4=(-bearing,underinner);
+ z5=(bearing,underouter);
+ x6=(9/16shudwidth);
+ z6-z7=whatever*(z2-z3);
+ z7=(3/4shudwidth,nuruuright);
+ z8=(x1,nuruuright);
+ fill (z1--z2--z3..z4--z5{up}---z6--z7--z8--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8);
+ fi;
+ if style=wood:
+ nuruu(shudwidth,2/4shudwidth);
+ z1r=(shudwidth-bearing,gedesinner);
+ z2 =(x1-thin,Centerline);
+ z3 =(0,underouter);
+ penpos1(thick,15);
+ penpos2(2/3thick,0);
+ penpos3(1/2thin,0);
+ penstroke (z1e..z2e..z3e) ifrotated;
+ penlabels(1,2,3);
+ fi;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def gedes (expr x_offset) =
+ numeric x[]; numeric y[];
+ nuruu(x_offset+gedeswidth,x_offset);
+ z11r=(x_offset+gedeswidth-bearing,nuruuleft);
+ z12r=(1/2[x11,x13],gedesouter);
+ z13r=(x_offset+bearing,nuruuleft);
+ penpos11(thin,0);
+ penpos12(gedesouter-gedesinner,90);
+ penpos13(thin,180);
+ penstroke (z11e{up}..z12e..{down}z13e) ifrotated;
+ penlabels(11,12,13);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def shilbe (expr x_offset) =
+ numeric x[]; numeric y[];
+ nuruu(shilbewidth+x_offset,x_offset);
+ z21r=(shilbewidth+x_offset,nuruuleft);
+ z22r=(+3thin+x_offset,shilbeheight);
+ penpos21(2thin,0);
+ penpos22(4thin,60);
+ penstroke (z21e--z22e) ifrotated;
+ penlabels(21,22);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def bosoo_shilbe =
+ nuruu(eswidth,0);
+ z1r=(eswidth,gedesouter+1/2thin);
+ z2r=(5/6eswidth,shudheight+1/2thin);
+ z3r=(3/12eswidth,shudheight-1/2thin);
+ z4 =(bearing,Centerline);
+% z4r=(bearing,Centerline);
+ penpos1(gedesouter-gedesinner,85);
+ penpos2(gedesouter-gedesinner,85);
+ penpos3(gedesouter-gedesinner,100);
+ penpos4(nuruuleft-nuruuright,100);
+ penstroke (z1e..z2e---z3e--z4e) ifrotated;
+ penlabels(1,2,3,4);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def orxic (expr x_offset) =
+ numeric x[]; numeric y[];
+ if style=wood:
+ z31=(x_offset+orxicwidth,Centerline);
+ z32=(x_offset+5/8orxicwidth,Centerline);
+ z33=(x_offset+1/9orxicwidth,Centerline+thick);
+ z34=(x_offset+2/9orxicwidth,orxicouter-thick);
+ z35r=(x_offset+1/9orxicwidth,orxicouter);
+ z36r=(x_offset+0,orxicouter);
+ penpos31(nuruuwidth,90);
+ penpos32(nuruuwidth,90);
+ penpos33(nuruuwidth,67);
+ penpos34(nuruuwidth,67);
+ penpos35(nuruuwidth,90);
+ penpos36(nuruuwidth,90);
+ penstroke (z31e---z32e..
+ tension 1.2..z33e..
+ tension 1.5..z34e..
+ tension 1.5..z35e---z36e) ifrotated;
+ fi;
+ if style=steel:
+ z31 =( orxicwidth,Centerline);
+ z32 =(9/12orxicwidth,Centerline);
+ z33r=(5/24gedeswidth,orxicouter);
+ penpos31(nuruuwidth,-90);
+ penpos32(nuruuwidth,-90);
+ penpos33(3/3thick,105);
+ penstroke
+ (z31e---z32e{left}..tension 2.5..{right}z33e)
+ ifrotated;
+ fi;
+ penlabels(31,32,33,34,35,36);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def seree_ewer =
+ nuruu(eswidth,0);
+ z41r=(5/6eswidth,gedesouter);
+ z42r=(4/6eswidth,shudheight);
+ z43r=(5/4bearing,shudheight);
+ z44 =(bearing,Centerline);
+ penpos41(gedesouter-gedesinner,85);
+ penpos42(gedesouter-gedesinner,85);
+ penpos43(gedesouter-gedesinner,100);
+ penpos44(nuruuleft-nuruuright,100);
+ penstroke (z41e..z42e---z43e--z44e) ifrotated;
+ penlabels(41,42,43,44);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def l_ewer (expr x_offset) =
+ numeric x[]; numeric y[];
+ z51r=(x_offset,nuruuright);
+ z52r=(x51,-0.8thick+underinner+1.5thin);
+ z53r=(x51+1.5thin,-0.8thick+underinner);
+ z54r=(x51+1.5shudwidth,-0.8thick+underinner);
+ penpos51(1.75thin,0);
+ penpos52(2.25thin,0);
+ penpos53(underinner-underouter,+90);
+ penpos54(epsilon,+90);
+ penstroke (z51e---z52e{down}..{right}z53e---z54e) ifrotated;
+ penlabels(51,52,53,54);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def high_l_ewer (expr x_offset) =
+ numeric x[]; numeric y[];
+ z61r=(x_offset,nuruuright);
+ z62r=(x61, underouter-2.5thin+1.5thin);
+ z63r=(x61+1.5thin, underouter-2.5thin);
+ z64r=(x_offset+1.5shudwidth, underouter-2.5thin);
+ penpos61(thin,0);
+ penpos62(2.25thin,0);
+ penpos63(underinner-underouter,+90);
+ penpos64(epsilon,+90);
+ penstroke (z61e---z62e{down}..{right}z63e---z64e) ifrotated;
+ penlabels(61,62,63,64);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def m_ewer (expr x_offset) =
+ numeric x[]; numeric y[];
+ z71 =(x_offset+5/16shudwidth,Centerline);
+ z72r=(x_offset+1/16shudwidth,underinner-1.65thin);
+ z73 =(x_offset-10/12shudwidth,y72);
+
+ penpos71(underinner-underouter,+95);
+ penpos72(underinner-underouter,+95);
+ penpos73(underinner-underouter,+75);
+
+ penstroke (z71e--z72e--z73e) ifrotated;
+ penlabels(71,72,73);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def baganum =
+ nuruu(numtaigedeswidth,numtaigedeswidth-bearing);
+ z81l=(1/2numtaigedeswidth,gedesinner);
+ z82r=(numtaigedeswidth-1/2bearing,nuruuleft);
+ penpos81(4thin,60);
+ penpos82(2thin,0);
+
+ z84 =(x82,nuruuright);
+ z85r=(1/2[x84,x86],sdepth);
+ z86r=(0,nuruuleft);
+ penpos84(2thin,0);
+ penpos85(underinner-underouter,-90);
+ penpos86(1/2thin,-180);
+
+ penstroke (z81e..z82e...z84e{down}..z85e..{up}z86e) ifrotated;
+ penlabels(81,82,83,84,85,86);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def f_flag (expr f_anfang, f_ende) =
+ z91l=(f_ende,gedesouter);
+ penpos91(1/2thin,90);
+ z92 =(1/6[x91,x94],shilbeheight);
+ penpos92(2thin,90);
+ z93 =(5/6[x91,x94],shilbeheight);
+ penpos93(2thin,90);
+ z94r=(f_anfang,yashilbeheight);
+ penpos94(1/2thin,90);
+ penstroke (z91e{up}..z92e..z93e..{up}z94e) ifrotated;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def adagu =
+ nuruu(eswidth,eswidth-numtaigedeswidth);
+
+ z1r=(eswidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(eswidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6r=(0,nuruuright); % nuruuright was Centerline
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(1/4thin,-180);
+ penstroke (z4e{down}..z5e..{up}z6e) ifrotated;
+ penlabels(1,2,3,4,5,6);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def xewteeqix =
+ nuruu(2bearing,0);
+ z1=(tewidth,Centerline);
+ z2=(tewidth-bearing-4thin,gedesinner);
+
+ penpos1(nuruuwidth,90);
+ penpos2(thin,45);
+
+ z3r=(tewidth-1/2bearing-0thin,Centerline);
+ z4r=(1/2[x3,x5],underouter);
+ z5r=(bearing,Centerline);
+ z6=(bearing+2thin,gedesinner);
+
+ penpos3(3thin,-45);
+ penpos4(underinner-underouter,-90);
+ penpos5(2thin,-180);
+ penpos6(thin,-215);
+
+ penstroke (z1e{left}..{up}z2e) ifrotated;
+ penstroke (z3e{down}..z4e..z5e..z6e) ifrotated;
+ penlabels(1,2,3,4,5,6);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def modgedestshilbe =
+ nuruu(eswidth,0);
+ z1r=(eswidth-1/2bearing,nuruuleft);
+ z2 =(07/16eswidth,orxicouter);
+ penpos1(2thin,0);
+ penpos2(2thin,45);
+ penstroke (z1e--z2e) ifrotated;
+ z3r=z2;
+ z4r=(bearing,5/12[y1,y2]);
+
+ penpos3(2thin,115 );
+ penpos4(2thin,210);
+
+ z5 =(6/16eswidth,3/12[y1,y2]);
+ z6 =(x1-2u,nuruuleft);
+
+ penpos5(1.5thin,235);
+ penpos6(1.75thin,180);
+ penstroke (z3e{dir 205}..tension 1.4..z4e..tension 1.4..z5e..z6e)
+ ifrotated;
+ penlabels(1,2,3,4,5,6);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def roundgedestshilbe =
+ nuruu(eswidth,0);
+ z1r=(eswidth-1/2bearing,nuruuleft);
+ z2 =(09/16eswidth,shilbeheight);
+
+ penpos1(2thin,0);
+ penpos2(2thin,angle(z2-z1)-90);
+
+ z3 =3.5[z2r,z2l];
+ penpos3(2thin,angle(z2-z1)+90);
+
+ penstroke (z1e--z2e) ifrotated;
+ penstroke (z2e..z3e..cycle) ifrotated;
+ penlabels(1,2,3,4,5,6);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def manju_te =
+ nuruu(eswidth,0);
+ z1r=(eswidth-1/2bearing,nuruuleft);
+ z2 =(05/16eswidth,orxicouter);
+ penpos1(2thin,0);
+ penpos2(2thin,45);
+ penstroke (z1e--z2e) ifrotated;
+ z3r=1/10[z2l,z1l];
+ z4 =6/10[z2l,z1l];
+ penpos3(2thin,angle(z2r-z1r));
+ penpos4(2thin,angle(z1r-z2r));
+ penstroke (z3e..{dir 25}z4e) ifrotated;
+ penlabels(1,2,3,4,5,6);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def deribun_ta =
+ nuruu(shudwidth,0);
+ shud_atom(1/2gedeswidth,bearing);
+ z1 =(shudwidth,Centerline);
+ z2r=(2/6[x1,x3],nuruuleft+2.5thin);
+ z4l=(3/6[x1,x3],nuruuright-4.5thin);
+ z3r=(cewidth,Centerline);
+ z5l=(cewidth,Centerline);
+ penpos1(nuruuwidth,90);
+ penpos2(2thin, 90);
+ penpos3(2thin, 0);
+ penpos4(2thin, 90);
+ penpos5(2thin,180);
+ penstroke (z1e..tension 1.4..z2e..tension 1.2..z3e) ifrotated;
+ penstroke (z1e{down}..tension 1.0..z4e..tension 1.1..z5e) ifrotated;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def deribun_te =
+ nuruu(cewidth,0);
+ shud_atom(1/2gedeswidth,bearing);
+ z1r=(cewidth,nuruuright-thick);
+ z2r=(1/3cewidth,underouter);
+ z3r=(bearing,nuruuright);
+ z4r=(1/2cewidth,nuruuright);
+ penpos1(thick,0);
+ penpos2(underinner-underouter,-90);
+ penpos3(2thin,-180);
+ penpos4(thin,0);
+ penstroke (z1e{dir 160}..tension 1.2..z4e) ifrotated;
+ penstroke (z1e..tension 2..z2e..{up}z3e) ifrotated;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def manju_si =
+ z1=(tewidth-bearing,nuruuleft);
+ z2=(1/2[x1,x3],shudheight);
+ z3=(x1-shudwidth+2bearing,y1);
+ y4=nuruuright-1thin;
+ z4=whatever[z2,z3];
+
+ y5=nuruuleft;
+ z4-z5=whatever * (z2-z1);
+ y6=nuruuleft;
+ z5-z6=whatever * (z2-z3);
+
+ y7=sdepth;
+ z4-z7=whatever * (z1-z2);
+ y8=nuruuright;
+ z7-z8=whatever * (z2-z3);
+ y9=underouter;
+ z7-z9=whatever * (z7-z8);
+ y10=nuruuright;
+ z10-z9=whatever* (z1-z2);
+ z11=(x6,nuruuright);
+ fill (z11--z10--z9--z1--z2--z4--z5--z6--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11);
+ nuruu(tewidth,tewidth-thick);
+ nuruu(16/36tewidth,0);
+ z21r=(16/36tewidth,nuruuleft);
+ z22r=(+3thin,shilbeheight);
+ penpos21(2thin,0);
+ penpos22(4thin,60);
+ penstroke (z21e--z22e) ifrotated;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def manju_deribun_si =
+ z1=(tewidth-bearing,nuruuleft);
+ z2=(1/2[x1,x3],shudheight);
+ z3=(x1-shudwidth+2bearing,y1);
+ y4=nuruuright-1thin;
+ z4=whatever[z2,z3];
+
+ y5=nuruuleft;
+ z4-z5=whatever * (z2-z1);
+ y6=nuruuleft;
+ z5-z6=whatever * (z2-z3);
+
+ y7=sdepth;
+ z4-z7=whatever * (z1-z2);
+ y8=nuruuright;
+ z7-z8=whatever * (z2-z3);
+ y9=underouter;
+ z7-z9=whatever * (z7-z8);
+ y10=nuruuright;
+ z10-z9=whatever* (z1-z2);
+ z11=(x6,nuruuright);
+ fill (z11--z10--z9--z1--z2--z4--z5--z6--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11);
+% nuruu(tewidth,tewidth-thick);
+ nuruu(16/36tewidth,0);
+ z21r=(16/36tewidth,nuruuleft);
+ z22r=(+3thin,shilbeheight);
+ penpos21(2thin,0);
+ penpos22(4thin,60);
+ penstroke (z21e--z22e) ifrotated;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def zawj =
+ nuruu(tewidth,tewidth-thick);
+ nuruu(1/3tewidth,0);
+ z1=(tewidth-bearing,nuruuleft);
+ z2=(1/2[x1,x3],shudheight);
+ z3=(x1-shudwidth+2bearing,y1);
+ y4=nuruuright-1thin;
+ z4=whatever[z2,z3];
+
+ y5=shudheight;
+ z4-z5=whatever * (z2-z1);
+ y6=nuruuleft;
+ z5-z6=whatever * (z2-z3);
+
+ y7=sdepth;
+ z4-z7=whatever * (z1-z2);
+ y8=nuruuright;
+ z7-z8=whatever * (z2-z3);
+ y9=underouter;
+ z7-z9=whatever * (z7-z8);
+ y10=nuruuright;
+ z10-z9=whatever* (z1-z2);
+ z11=(x6,nuruuright);
+ fill (z11--z10--z9--z1--z2--z4--z5--z6--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11);
+ zawjpicture:=currentpicture;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def qagt =
+ nuruu(gedeswidth,gedeswidth-bearing);
+ if writing=Bithe:
+ z1 =(w-1/16shudwidth,shudheight-thin);
+ penpos1(2.5thin,-30);
+ z2r=(gedeswidth-bearing,nuruuleft);
+ fi;
+ if writing=Bicig:
+ z1l=(1/3gedeswidth,shudheight);
+ penpos1(4thin,60);
+ z2r=(gedeswidth-1/2bearing,nuruuleft);
+ fi;
+
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6r=(0,Centerline);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(1/2thin,-180);
+
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e) ifrotated;
+ penlabels(1,2,3,4,5,6);
+ z11=(gedeswidth,Centerline);
+ z12=(gedeswidth-3/4thick,Centerline);
+ z13=(gedeswidth-1.75thick,nuruuleft+thin);
+ penpos11(nuruuwidth,90);
+ penpos12(14/16nuruuwidth,80);
+ penpos13(epsilon,45);
+ penstroke (z11e---z12e..z13e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,11,12,13);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def exenzawj =
+ % nuruu(tewidth,tewidth-thick);
+ nuruu(1/3tewidth,0);
+ z1=(tewidth-bearing,nuruuleft);
+ z2=(1/2[x1,x3],shudheight);
+ z3=(x1-shudwidth+2bearing,y1);
+ y4=nuruuright-1thin;
+ z4=whatever[z2,z3];
+
+ y5=shudheight;
+ z4-z5=whatever * (z2-z1);
+ y6=nuruuleft;
+ z5-z6=whatever * (z2-z3);
+
+ y7=sdepth;
+ z4-z7=whatever * (z1-z2);
+ y8=nuruuright;
+ z7-z8=whatever * (z2-z3);
+ y9=underouter;
+ z7-z9=whatever * (z7-z8);
+ y10=nuruuright;
+ z10-z9=whatever* (z1-z2);
+ z11=(x6,nuruuright);
+ fill (z11--z10--z9--z1--z2--z4--z5--z6--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11);
+ exenzawjpicture:=currentpicture;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def suulzawj =
+ nuruu(tewidth,tewidth-thick);
+ z1=(tewidth-bearing,nuruuleft);
+ z2=(1/2[x1,x3],shudheight);
+ z3=(x1-shudwidth+2bearing,y1);
+ y4=nuruuright-1thin;
+ z4=whatever[z2,z3];
+
+ y5=shudheight;
+ z4-z5=whatever * (z2-z1);
+ % y6=nuruuleft;
+ % z5-z6=whatever * (z2-z3);
+ z6=(0,underouter);
+
+ y7=sdepth;
+ z4-z7=whatever * (z1-z2);
+ y8=nuruuright;
+ z7-z8=whatever * (z2-z3);
+ y9=underouter;
+ z7-z9=whatever * (z7-z8);
+ y10=nuruuright;
+ z10-z9=whatever* (z1-z2);
+ z11=(x6,nuruuright);
+
+ % pickup pencircle scaled 1/4thin;
+ fill (z10--z9--z1--z2--z4--z5..z6{z3-z2}&z6{z2-z6}..z10--cycle)
+ ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def manju_sh_stroke =
+ z19l=(29/36tewidth,shudheight);
+ z20l=(10/36tewidth,shilbeheight);
+ penpos19(7/9thick,75);
+ penpos20(6/9thin,60);
+ penstroke (z19e{left}..tension 2.5..{up}z20e) ifrotated;
+ penlabels(19,20);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def manju_dz_stroke =
+ z31l=( tewidth,underouter);
+ z32l=(1/6tewidth,underouter);
+ penpos31(2thin,-75);
+ penpos32(2thin,-75);
+ penstroke (z31e..z32e) ifrotated;
+ penlabels(31,32);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def sy_nuruu(expr xbegin,xend) =
+ nuruu(xbegin,xend);
+ z1 =(xbegin, 5/6 underinner);
+ z2 =(1/2[xbegin,xend],3/4gedesinner);
+ z3 =(xend, y1);
+ z4 =(xend+10/4thin, underinner);
+ z5 =(x2,Centerline);
+ z6 =(xbegin-10/4thin,y4);
+ fill (z1--z2--z3--z4--z5--z6--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def manju_tsh_stroke =
+ x33=x34=1/2[x31,x32];
+ y33=y31;
+ y34=suulouter-0.80thick;
+ penpos33(2thin,-25);
+ penpos34(2thin,-25);
+ penstroke (z33e--z34e) ifrotated;
+ penlabels(33,34);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ligba =
+ nuruu(secAwidth,0);
+ nuruu(bawidth,bawidth-numtaigedeswidth);
+ shud_atom(secAwidth,bearing);
+
+ z1r=(bawidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(bawidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6l=(secAwidth,nuruuright);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+ penstroke (z4e{down}..z5e..{up}z6e) ifrotated;
+
+ z7=(1/2[secAwidth,bearing],shudheight);
+ z8=(secAwidth,nuruuleft);
+ z9=(x8,nuruuright);
+ unfill (z7--z8--z9--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ligbu (expr xpos) =
+ tntgw:=2numtaigedeswidth;
+ nuruu(tntgw+xpos,xpos);
+ z1r=(xpos+tntgw/2-1,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(xpos+1/2bearing,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+
+ z4r=(xpos+tntgw-1/2bearing,nuruuleft);
+ z5r=(1/2[x4,x6],gedesouter);
+ z6r=(xpos+tntgw/2+1,nuruuleft);
+ penpos4(thin,0);
+ penpos5(gedesouter-gedesinner,90);
+ penpos6(thin,180);
+
+ z7 =(x3,nuruuright);
+ z8l=(1/2[x7,x9],underouter);
+ z9 =(x4,nuruuright);
+ penpos7(thin,0);
+ penpos8(gedesouter-gedesinner,90);
+ penpos9(thin,180);
+
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+ penstroke (z4e{up}..z5e..{down}z6e) ifrotated;
+ penstroke (z7e{down}..z8e..{up}z9e) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ligmongpa =
+ nuruu(secAwidth,0);
+ nuruu(bawidth,bawidth-numtaigedeswidth);
+ shud_atom(secAwidth,bearing);
+
+% z1r=(bawidth-1/2bearing,nuruuleft);
+ z1r=(bawidth-1/2bearing,gedesouter+thin);
+ z2r=(1/3[x1,x4],gedesouter);
+ z3r=(7/12[x1,x4],gedesouter);
+ z4r=(bawidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,180);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(gedesouter-gedesinner,90);
+ penpos4(thin,180);
+ penstroke (z1e..z2e..z3e..{down}z4e) ifrotated;
+
+ z5r=(x1,nuruuright);
+ z6r=(1/2[x5,x7],underouter);
+ z7l=(secAwidth,nuruuright);
+ penpos5(thin,0);
+ penpos6(underinner-underouter,-90);
+ penpos7(2thin,-180);
+ penstroke (z5e{down}..z6e..{up}z7e) ifrotated;
+
+ z8=(1/2[secAwidth,bearing],shudheight);
+ z9=(secAwidth,nuruuleft);
+ z10=(x9,nuruuright);
+ unfill (z10--z8--z9--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ligmongpu =
+ nuruu(w,0);
+ z1r=(w-1/2bearing,gedesouter+thin);
+ z2r=(1/3[x1,x4],gedesouter);
+ z3r=(7/12[x1,x4],gedesouter);
+ z4r=(w/2+1,nuruuleft);
+ penpos1(thin,180);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(gedesouter-gedesinner,90);
+ penpos4(thin,180);
+ penstroke (z1e..z2e..z3e..{down}z4e) ifrotated;
+
+ z5r=(w-1/2bearing,nuruuright);
+ z6r=(w/2,underouter);
+ z7r=(1/2bearing,y5);
+ penpos5(thin,0);
+ penpos6(underinner-underouter,-90);
+ penpos7(thin,-180);
+ penstroke (z5e{down}..z6e..z7e{up}) ifrotated;
+ z8 =(x7,nuruuleft);
+ z9r=(1/2[x8,x10],gedesouter);
+ z10r=(w/2-1,y8);
+ penpos8(thin,180);
+ penpos9(gedesouter-gedesinner,90);
+ penpos10(thin,0);
+ penstroke (z8e{up}..z9e..{down}z10e) ifrotated;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def liggha =
+ nuruu(secAwidth,0);
+ shud_atom(secAwidth,bearing);
+ nuruu(bawidth,bawidth-bearing);
+ z1l=(bawidth-gedeswidth+5thin,shudheight-thin);
+ z2r=(bawidth-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6l=(secAwidth,nuruuright);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e) ifrotated;
+
+ z7=(1/2[secAwidth,bearing],shudheight);
+ z8=(secAwidth,nuruuleft);
+ z9=(x8,nuruuright);
+ unfill (z7--z8--z9--cycle) ifrotated;
+
+ z10r=(bawidth,gedesouter+thin);
+ z11 =(x10-2thin,shudheight-5thin);
+ penpos10(1.5thin,0);
+ penpos11(2thin,-45);
+ penstroke (z10e..z11e) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ligkha =
+ nuruu(secAwidth,0);
+ shud_atom(secAwidth,bearing);
+ % Variant, more Manju-like
+ if writing=Bithe:
+ z1 =(w-1/16shudwidth,shudheight-thin);
+ penpos1(2.5thin,-30);
+ z2r=(bawidth-bearing,nuruuleft);
+ fi;
+ if writing=Bicig:
+ z1l=(bawidth-gedeswidth+5thin,shudheight);
+ penpos1(4thin,60);
+ z2r=(bawidth-1/2bearing,nuruuleft);
+ fi;
+
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6l=(secAwidth,nuruuright);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e) ifrotated;
+
+ z7=(1/2[secAwidth,bearing],shudheight);
+ z8=(secAwidth,nuruuleft);
+ z9=(x8,nuruuright);
+ unfill (z7--z8--z9--cycle) ifrotated;
+
+ z11=(bawidth,Centerline);
+ z12=(bawidth-3/4thick,Centerline);
+ z13=(bawidth-1.5thick,nuruuleft+thin);
+ penpos11(nuruuwidth,90);
+ penpos12(14/16nuruuwidth,80);
+ penpos13(epsilon,45);
+ penstroke (z11e---z12e..z13e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,11,12,13);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ligkhi =
+ nuruu(shilbewidth-2thin,0);
+ nuruu(biwidth,biwidth-bearing);
+ if writing=Bithe:
+ z1 =(w+1/4shudwidth,shudheight-thin);
+ penpos1(2.5thin,-30);
+ fi;
+ if writing=Bicig:
+ z1l=(biwidth-gedeswidth+5thin,shudheight);
+ penpos1(4thin,60);
+ fi;
+ z2r=(biwidth-1/2bearing,nuruuleft);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6l=(shilbewidth,nuruuright);
+ z7l=(3thin,shilbeheight);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+ penpos7(4thin,-120);
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e..tension
+ infinity..z7e) ifrotated;
+
+ z11=(biwidth,Centerline);
+ z12=(biwidth-3/4thick,Centerline);
+ z13=(biwidth-1.5thick,nuruuleft+thin);
+ penpos11(nuruuwidth,90);
+ penpos12(14/16nuruuwidth,80);
+ penpos13(epsilon,45);
+ penstroke (z11e---z12e..z13e) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ligkhu =
+ % Variant, more Manju-like
+ if writing=Bithe:
+ z1 =(w-1/16shudwidth,shudheight-thin);
+ penpos1(2.5thin,-30);
+ z2r=(bawidth-bearing,nuruuleft);
+ fi;
+ if writing=Bicig:
+ z1l=(bawidth-gedeswidth+5thin,shudheight);
+ penpos1(4thin,60);
+ z2r=(bawidth-1/2bearing,nuruuleft);
+ fi;
+
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6r=(1/2bearing,nuruuright);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(thin,-180);
+
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e) ifrotated;
+
+ z7=(bawidth,Centerline);
+ z8=(bawidth-3/4thick,Centerline);
+ z9=(bawidth-1.5thick,nuruuleft+thin);
+ penpos7(nuruuwidth,90);
+ penpos8(14/16nuruuwidth,80);
+ penpos9(epsilon,45);
+ penstroke (z7e---z8e..z9e) ifrotated;
+
+ nuruu(0,numtaigedeswidth);
+ z11r=(numtaigedeswidth,nuruuleft);
+ z12r=(1/2[x11,x13],gedesouter);
+ z13r=(1/2bearing,nuruuleft);
+ penpos11(thin,0);
+ penpos12(gedesouter-gedesinner,90);
+ penpos13(thin,180);
+ penstroke (z11e{up}..z12e..{down}z13e) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9,11,12,13);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def manju_pa =
+ nuruu(secAwidth,0);
+ nuruu(bawidth,bawidth-numtaigedeswidth);
+ shud_atom(secAwidth,bearing);
+
+ z1r=(bawidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(bawidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6 =(1/2[x4,x8],0);
+ z7l=(1/2[x6,x8],underouter);
+ z8r=(secAwidth,nuruuright);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(1/2thin,-180);
+ penpos7(3/4(underinner-underouter),-270);
+ penpos8(2thin, 0);
+ penstroke (z4e{down}..z5e..{up}z6e) ifrotated;
+ penstroke (z6e{down}..z7e..tension 1.4..{up}z8e) ifrotated;
+
+ z10=(1/2[secAwidth,bearing],shudheight);
+ z11=(secAwidth,nuruuleft);
+ z12=(x11,nuruuright);
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12);
+ unfill (z10--z11--z12--cycle) ifrotated;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def manju_pi =
+ nuruu(shilbewidth-2thin,0);
+ nuruu(biwidth,biwidth-numtaigedeswidth);
+
+ z1r=(biwidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(biwidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6 =(1/2[x4,x8],0);
+ z7l=(1/2[x6,x8],underouter);
+ z8r=(shilbewidth,nuruuright);
+ z9r=(3thin,shilbeheight);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(1/2thin,-180);
+ penpos7(3/4(underinner-underouter),-270);
+ penpos8(2thin, 0);
+ penpos9(4thin, 30);
+ penstroke (z4e{down}..z5e..{up}z6e) ifrotated;
+ penstroke (z6e{down}..z7e..tension 1.4..{up}z8e..tension infinity..z9e) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def manju_po =
+ nuruu(w,0);
+ z1l=(w/2+1,nuruuleft);
+ z2l=(1/2[x1,x3],gedesouter);
+ z3l=(w-1/2bearing,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,-90);
+ penpos3(thin,-180);
+
+ z4l=(1/2bearing,nuruuleft);
+ z5l=(1/2[x4,x6],gedesouter);
+ z6l=(w/2-1,nuruuleft);
+ penpos4(thin,0);
+ penpos5(gedesouter-gedesinner,-90);
+ penpos6(thin,-180);
+
+ z7 =(x3,nuruuright);
+ z8l =(1/2[x7,x9],underouter);
+ z9 =(1/2[x7,x11],0);
+ z10r=(1/2[x9,x11],underouter);
+ z11 =(x4,nuruuright);
+ penpos7(thin,-180);
+ penpos8(gedesouter-gedesinner,-270);
+ penpos9(1/2thin, 0);
+ penpos10(gedesouter-gedesinner,-90);
+ penpos11(thin,180);
+
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+ penstroke (z4e{up}..z5e..{down}z6e) ifrotated;
+ penstroke (z7e{down}..z8e..{up}z9e) ifrotated;
+ penstroke (z9e{down}..z10e..z11e{up}) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9,10,11);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ligka =
+ nuruu(secAwidth,0);
+ nuruu(w,w-bearing);
+ shud_atom(secAwidth,bearing);
+ z1l=(w-gedeswidth+5thin,shudheight-thin);
+ z2r=(w-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underinner-1/2thin); % underinner was underouter
+ z6l=(secAwidth,nuruuright);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e) ifrotated;
+
+ z7=(1/2[secAwidth,bearing],shudheight);
+ z8=(secAwidth,nuruuleft);
+ z9=(x8,nuruuright);
+ unfill (z7--z8--z9--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ligki =
+ nuruu(shilbewidth-thin,0);
+ nuruu(w,w-bearing);
+ z1l=(w-gedeswidth+5thin,shudheight-thin);
+ z2r=(w-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underinner-thin); % underinner was underouter
+ z6l=(shilbewidth,nuruuright);
+ z7l=(3thin,shilbeheight);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+ penpos7(4thin,-120);
+
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e..
+ tension infinity..z7e) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def ligku =
+ nuruu(numtaigedeswidth,0);
+ nuruu(bawidth,bawidth-bearing);
+ z1r=(bawidth-4thin,shudheight+thin);
+ z2r=(bawidth-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6r=(1/2bearing,nuruuright);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(thin,-180);
+
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e) ifrotated;
+
+ z11r=(numtaigedeswidth,nuruuleft);
+ z12r=(1/2[x11,x13],gedesouter);
+ z13r=(1/2bearing,nuruuleft);
+ penpos11(thin,0);
+ penpos12(gedesouter-gedesinner,90);
+ penpos13(thin,180);
+ penstroke (z11e{up}..z12e..{down}z13e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def Exclam (expr vpos) =
+ "Exclamation mark";
+ z6=(numberwidth-3thin,vpos);
+ penpos6(3.5thin,90);
+ z7=(3/4gedeswidth,vpos);
+ penpos7(2thin,90);
+ pickup pencircle scaled 3.5 thin;
+ drawdot (z6) ifrotated;
+ pickup pencircle scaled 2 thin;
+ drawdot (z7) ifrotated;
+ z8=(thick,vpos);
+ pickup pencircle scaled 3.5 thin;
+ drawdot (z8) ifrotated;
+ penstroke (z6e..z7e) ifrotated;
+ penlabels(6,7,8);
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def Quest (expr vpos) = % Our Question Mark
+ numeric x[]; numeric y[];
+ radius:=1.15thick;
+ z1=(numberwidth-radius-2thin,vpos+1.25thick);
+ penpos1(2.5thin,90);
+ z2=(numberwidth-2thin,vpos);
+ penpos2(2thin,0);
+ z3=(x1,vpos-radius);
+ penpos3(2.5thin,-90);
+ z4=(6/8gedeswidth,vpos);
+ penpos4(2.25thin,-90);
+ z5=(thick,vpos);
+
+ pickup pencircle scaled 2.5thin;
+ drawdot (z1) ifrotated;
+ pickup pencircle scaled 2.0thin;
+ drawdot (z4) ifrotated;
+ pickup pencircle scaled 3.5thin;
+ drawdot (z5) ifrotated;
+ penstroke (z1e{right}..z2e{down}..z3e{left}..z4e{left}) ifrotated;
+ penlabels(1,2,3,4,5);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def SpezRahmen = % Useful for all these special characters
+pickup pencircle scaled thin;
+ draw ((1thin,orxicouter-thin)--
+ (w-1thin,orxicouter-thin)--
+ (w-1thin,suulouter+thin)--
+ (1thin,suulouter+thin)--cycle)
+ ifrotated;
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def F (expr startp, width) =
+ numeric x[]; numeric y[];
+ z1=(latinbottomline,startp);
+ z2=(latintopline,y1);
+ z3=(x2,width);
+ z4=(3/5[latinbottomline,latintopline],y1);
+ z5=(x4,3/4[startp,width]);
+ pickup pencircle scaled 1.5thin;
+ draw (z1--z2--z3) ifrotated;
+ draw (z4--z5) ifrotated;
+ penlabels (1,2,3,4,5);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def M (expr startp, width) =
+ numeric x[]; numeric y[];
+ z1=(latinbottomline,startp);
+ z2=(latintopline,y1);
+ z3=(1/3[latinbottomline,latintopline],1/2[startp,width]);
+ z4=(x2,width);
+ z5=(x1,y4);
+ pickup pencircle scaled 1.5thin;
+ draw (z1--z2--z3--z4--z5) ifrotated;
+ penlabels (1,2,3,4,5);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def P (expr startp, width) =
+ numeric x[]; numeric y[];
+ z1=(latinbottomline,startp);
+ z2=(latintopline,y1);
+ z3=(1/2[x2,x4],width);
+ z4=(3/5[latinbottomline,latintopline],y1);
+ pickup pencircle scaled 1.5thin;
+ draw (z1--z2) ifrotated;
+ draw (z2{down}..z3..{up}z4) ifrotated;
+ penlabels (1,2,3,4);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def S (expr startp, width) =
+ numeric x[]; numeric y[];
+ z1=(latintopline-thin,5/6[startp,width]);
+ z2=(latintopline,1/2[startp,width]);
+ z3=(3/4[latinbottomline,latintopline],startp);
+ z4=(1/2[latintopline,latinbottomline],y2);
+ z5=(1/4[latinbottomline,latintopline],width);
+ z6=(latinbottomline,y2);
+ z7=(latinbottomline+thin,1/6[startp,width]);
+ pickup pencircle scaled 1.5thin;
+ draw (z1..{up}z2..z3..z4..z5..{up}z6..z7) ifrotated;
+ penlabels (1,2,3,4,5,6,7);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def V (expr startp, width) =
+ numeric x[]; numeric y[];
+ z1=(latintopline,startp);
+ z2=(latinbottomline,1/2[startp,width]);
+ z3=(x1,width);
+ pickup pencircle scaled 1.5thin;
+ draw (z1--z2--z3) ifrotated;
+ penlabels (1,2,3,4,5);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def eins (expr startp, width) =
+ numeric x[]; numeric y[];
+ z1=(latintopline-2thin,startp);
+ z2=(latintopline,2/3[startp,width]);
+ z3=(latinbottomline,y2);
+ pickup pencircle scaled 1.5thin;
+ draw (z1--z2--z3) ifrotated;
+ penlabels (1,2,3,4,5);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def zwei (expr startp, width) =
+ numeric x[]; numeric y[];
+ z1=(latintopline-2thin,startp);
+ z2=(latintopline,1/2[startp,width]);
+ z3=(1/2[latintopline,latinbottomline],y2);
+ z4=(latinbottomline,startp);
+ z5=(x4,width);
+ pickup pencircle scaled 1.5thin;
+ draw (z1..{down}z2..z3..{left}z4--z5) ifrotated;
+ penlabels (1,2,3,4,5);
+ numeric x[]; numeric y[];
+enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/mbcodes.mf b/Master/texmf-dist/fonts/source/public/montex/mbcodes.mf
new file mode 100644
index 00000000000..186e55155b2
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mbcodes.mf
@@ -0,0 +1,138 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mbcodes.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: April 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script Encodings (LM[AOX])
+% Common Code Slots
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Specials
+%
+MONG_BNDRY := 255; % For detecting finals
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Digits
+%
+MONG_ZERO := 48; % "0"
+MONG_ONE := 49; % "1"
+MONG_TWO := 50; % "2"
+MONG_THREE := 51; % "3"
+MONG_FOUR := 52; % "4"
+MONG_FIVE := 53; % "5"
+MONG_SIX := 54; % "6"
+MONG_SEVEN := 55; % "7"
+MONG_EIGHT := 56; % "8"
+MONG_NINE := 57; % "9"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Punctuation
+%
+MONG_LT := 60; % "<"
+MONG_GT := 62; % ">"
+MONG_LGU := 171; % "<<"
+MONG_RGU := 187; % ">>"
+MONG_DORWOLJIN := 59; % ";"
+MONG_OPAREN := 40; % "("
+MONG_CPAREN := 41; % ")"
+MONG_MSP := 32; % " "
+MONG_EXCLAMATION := 33; % "!"
+MONG_QUESTION := 63; % "?"
+MONG_QUESTEXCLAM := 35; % "?!"
+MONG_EXCLAMQUEST := 36; % "!?"
+MONG_NIRUGU := 124; % "|"
+MONG_FVS1 := 39; % "'"
+MONG_FVS2 := 34; % '"'
+MONG_MVS := 43; % "+"
+MONG_ENV := 42; % "*"
+% MONG_TASLAL := 44; % "," % Now in mocodes.mf
+% MONG_FULLSTOP := 46; % "." % Now in mocodes.mf
+MONG_COLON := 58; % ":"
+MONG_ELLIPSIS := 47; % "...."
+MONG_OM := 96; % "om ma ni padme hum"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Atoms
+%
+MONG_TITEMSTROKE := 64; % "@"
+MONG_TITEM := 69; % "E"
+MONG_SHUD := 97; % "a"
+MONG_GEDES := 117; % "u"
+MONG_SHILBE := 105; % "i"
+MONG_CEGTEISHUD := 110; % "n"
+MONG_LEWER := 108; % "l"
+MONG_MEWER := 109; % "m"
+MONG_DUNDG := 103; % "g"
+MONG_DUNDX := 120; % "x"
+MONG_NUMTAIGEDES := 98; % "b"
+MONG_BURUUXARSANGEDES := 116; % "t"
+MONG_GEDESTEISHILBE := 100; % "d"
+MONG_ERWEELJINSHILBE := 114; % "r"
+MONG_BOSOOSHILBE := 122; % "z"
+MONG_ETGERSHILBE := 121; % "y"
+MONG_ZAWJ := 115; % "s"
+MONG_SEREEEWER := 99; % "c"
+MONG_MATGARSHILBE := 118; % "v"
+MONG_QAGT := 75; % "K, or kh: Kapital"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Atomic Dots and Tails
+%
+MONG_NCEG := 45; % "-"
+MONG_GCEG := 61; % "="
+MONG_SUUL := 128; % "e, n"
+MONG_ORXIC := 129; % "E"
+MONG_BIODOISUUL := 130; % "Y"
+MONG_BAGODOISUUL := 131; % "G"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Allographs und Composites
+%
+MONG_EXENL := 76; % " l-"
+MONG_EXENM := 77; % " m-"
+MONG_EXENN := 78; % " n-"
+MONG_EXENS := 83; % " s-"
+MONG_XEWTEEQIX := 88; % " x-"
+%
+MONG_BAGANUM := 132; % "k before consonants"
+MONG_DUNDD := 133; % "d[C]"
+MONG_DUNDNG := 134; % "ng"
+%
+MONG_ADAGU := 135; % "final o, u"
+MONG_ADAGI := 136; % "final i, y"
+MONG_ADAGB := 137; % "b"
+MONG_ADAGS := 138; % "s"
+MONG_ADAGD := 139; % "d"
+MONG_ADAGX := 140; % "x"
+MONG_ADAGK := 141; % "k"
+MONG_ADAGNG := 142; % "ng"
+MONG_SUULIINLEWER := 143; % "final l"
+MONG_TERTIARYLEWER := 144; % "l after rounded"
+MONG_HIGHLEWER := 145; % "l after rounded, farther away"
+MONG_SUULIINMEWER := 146; % "final m"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Graphical Ligatures
+%
+MONG_LIGLL := 147; % "ll"
+MONG_LIGML := 148; % "ml"
+%
+MONG_LIGBA := 200; % "ba"
+MONG_LIGBI := 202; % "bi"
+MONG_LIGBU := 204; % "bu"
+MONG_LIGBN := 206; % "bn"
+MONG_LIGBL := 207; % "bl"
+%
+MONG_LIGKA := 224; % "ka"
+MONG_LIGKI := 226; % "ki"
+MONG_LIGKU := 228; % "ku"
+%
+% End of mbcodes.mf
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% vim: ts=32
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/mbglyphs.mf b/Master/texmf-dist/fonts/source/public/montex/mbglyphs.mf
new file mode 100644
index 00000000000..7b9280daf61
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mbglyphs.mf
@@ -0,0 +1,660 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mbglyphs.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.2
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script (LM[AOX])
+% Mongol Bicig Modyn Bar Glyph Definition
+%
+% Common Glyphs for Mongol and Manju
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_TITEMSTROKE,numtaigedeswidth#,height#,depth#);
+ "The titem";
+ titem_stroke(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+if style=wood: titemwidth#:=shudwidth#+numtaigedeswidth# fi;
+if style=steel: titemwidth#:=shudwidth# fi;
+
+beginchar(MONG_TITEM,titemwidth#,height#,depth#);
+ "The titem";
+ if style=steel:
+ titem;
+ fi;
+ if style=wood:
+ titem_stroke(shudwidth);
+ shud(0)
+ fi;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_SHUD,shudwidth#,height#,depth#);
+ "The shud";
+ shud(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_SHILBE,shilbewidth#,height#,depth#);
+ "Shilbe";
+ shilbe(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_GEDES,gedeswidth#,height#,depth#);
+ "gedes";
+ gedes(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGU,eswidth#,height#,depth#);
+ "Letter final o, u";
+ adagu;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_CEGTEISHUD,shudwidth#,height#,depth#);
+ "dusaltai shud";
+ shud(0);
+ dusal (1/2shudwidth,yashilbeheight,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+if style=wood: exennwidth#:=numtaigedeswidth#+shudwidth# fi;
+if style=steel: exennwidth#:=shudwidth# fi;
+
+beginchar(MONG_EXENN,exennwidth#,height#,depth#);
+ "Initial titemtei, cegtei shud";
+ if style=wood:
+ titem_stroke(shudwidth);
+ cegteishud(0)
+ fi;
+ if style=steel:
+ cegteititem;
+ fi;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LEWER,shudwidth#,height#,depth#);
+ "The glyph l in non-final position";
+ shud(0);
+ l_ewer(1/2shudwidth);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+if style=wood: exenlwidth#:=numtaigedeswidth#+shudwidth# fi;
+if style=steel: exenlwidth#:=shudwidth# fi;
+
+beginchar(MONG_EXENL,exenlwidth#,height#,depth#);
+ "Initial l";
+ if style=wood:
+ titem_stroke(shudwidth);
+ shud(0);
+ l_ewer(1/2shudwidth);
+ fi;
+ if style=steel:
+ titem;
+ l_ewer(1/2shudwidth);
+ fi;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_SUULIINLEWER,eswidth#,height#,depth#);
+ "The glyph L in final position";
+ z1=(shudwidth+6.00thin,nuruuleft);
+ z2=(shudwidth-bearing,y1);
+ z3=(1/2shudwidth,gedesouter);
+ z4=(bearing,nuruuleft);
+ %z5=(,underinner);
+ z5=(7/16shudwidth-2.25thin,underinner+thin);
+ z6=(7/16shudwidth+thin,underouter);
+ z7=(shudwidth+1/2gedeswidth,underinner);
+ z8=(7/16shudwidth+thin,underinner);
+ z9=(7/16shudwidth,underinner+thin);
+ x10=(9/16shudwidth);
+ z10-z11=whatever*(z2-z3);
+ z11=(3/4shudwidth,nuruuright);
+ z12=(x1,nuruuright);
+ % pickup pencircle scaled .25 thin;
+ fill (z1--z2--z3--z5{down}..{right}z6---z7&
+ z7---z8{left}..{up}z9---z10--z11--z12--cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_TERTIARYLEWER,numtaigedeswidth#,height#,depth#);
+ "The glyph L in blam-a";
+ nuruu(secAwidth,0);
+ shud_atom(secAwidth,bearing);
+ %penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z5r=(numtaigedeswidth,underouter);
+ z6l=(secAwidth,nuruuright);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+ penstroke (z5e{left}..{up}z6e) ifrotated;
+
+ z7=(1/2[secAwidth,bearing],shudheight);
+ z8=(secAwidth,nuruuleft);
+ z9=(x8,nuruuright);
+ unfill (z7--z8--z9--cycle) ifrotated;
+
+ z11r=(1/3shudwidth,nuruuright);
+ z12r=(1/3shudwidth,-0.8thick+underouter+1.5thin);
+ z13r=(x11+1.5thin,-0.8thick+underouter);
+ z14r=(2/3shudwidth+gedeswidth,-0.8thick+underouter);
+ penpos11(thin,0);
+ penpos12(2.25thin,0);
+ penpos13(underinner-underouter,+90);
+ penpos14(epsilon,+90);
+ penstroke (z11e---z12e{down}..{right}z13e---z14e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_HIGHLEWER,shudwidth#,height#,depth#);
+ "The glyph l in non-final position, raised for 'b's friends";
+ shud(0);
+ z1r=(1/2shudwidth,nuruuright);
+ z2r=(1/2shudwidth,underouter+0.5thin);
+ z3r=(x1+1.5thin,underouter-thin);
+ z4r=(shudwidth+shudwidth,underouter-thin);
+% z4r=(shudwidth+gedeswidth,underouter-thin);
+ penpos1(1.75thin,0);
+ penpos2(2.25thin,0);
+ penpos3(underinner-underouter,+90);
+ penpos4(epsilon,+90);
+ penstroke (z1e---z2e{down}..{right}z3e---z4e) ifrotated;
+ penlabels(1,2,3,4);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_MEWER,shudwidth#,height#,depth#);
+ "The glyph m in non-final position";
+ shud(0);
+ m_ewer(1/2shudwidth);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+if style=wood: exenmwidth#:=numtaigedeswidth#+shudwidth# fi;
+if style=steel: exenmwidth#:=shudwidth# fi;
+
+beginchar(MONG_EXENM,exenmwidth#,height#,depth#);
+ "Initial m";
+ if style=wood:
+ titem_stroke(shudwidth);
+ shud(0);
+ m_ewer(2/12shudwidth);
+ fi;
+ if style=steel:
+ titem;
+ m_ewer(2/12shudwidth);
+ fi;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_SUULIINMEWER,eswidth#,height#,depth#);
+ "The glyph m in final position";
+ nuruu(eswidth,23/24gedeswidth);
+ z1r=(gedeswidth-5thin,gedesouter);
+ z2 =(x1-thin,Centerline);
+ z3 =(0,underouter);
+ penpos1(thick,15);
+ penpos2(2/3thick,0);
+ penpos3(1/2thin,0);
+ penstroke (z1e..z2e..z3e) ifrotated;
+ penlabels(1,2,3);
+
+ z4r=(x1r,gedesouter);
+ z5 =(eswidth-2thin,Centerline);
+ z6r=(14/16shudwidth,underouter);
+ z7 =(7/16shudwidth,underinner+thin);
+ penpos4(1/2thin,30);
+ penpos5(1.25thin,0);
+ penpos6(underouter-underinner, 90);
+ penpos7(epsilon, 135);
+ penstroke (z4e{dir -45}..tension 1.25..z5e
+ ..tension 1.25..z6e..tension 1.25..z7e) ifrotated;
+ penlabels(4,5,6,7);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGLL,2shudwidth#,height#,depth#);
+ "A Ligature: ll";
+ shud(0);
+ shud(shudwidth);
+
+ z1r=(3/2shudwidth,nuruuright);
+ z2r=(3/2shudwidth,underinner+1.5thin);
+ z3r=(x1+1.5thin,underinner);
+ z4r=(2shudwidth+gedeswidth,underinner);
+ penpos1(1.75thin,0);
+ penpos2(2.25thin,0);
+ penpos3(underinner-underouter,+90);
+ penpos4(epsilon,+90);
+ penstroke (z1e---z2e{down}..{right}z3e---z4e) ifrotated;
+ penlabels(1,2,3,4);
+
+ z11r=(1/2shudwidth,nuruuright);
+ z12r=(1/2shudwidth,underouter+0.5thin);
+ z13r=(x11+1.5thin,underouter-thin);
+ z14r=(shudwidth+gedeswidth,underouter-thin);
+ penpos11(1.75thin,0);
+ penpos12(2.25thin,0);
+ penpos13(underinner-underouter,+90);
+ penpos14(epsilon,+90);
+ penstroke (z11e---z12e{down}..{right}z13e---z14e) ifrotated;
+ penlabels(11,12,13,14);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGML,2shudwidth#,height#,depth#);
+ "A Ligature: ml";
+ shud(0);
+ shud(shudwidth);
+
+ z1=(10/16shudwidth+shudwidth,Centerline);
+ z2r=(6/16shudwidth+shudwidth,underinner+1.5thin);
+ z3 =(6/16shudwidth,y2);
+
+ penpos1(0.8thick,+95);
+ penpos2(0.8thick,+95);
+ penpos3(0.8thick,+75);
+
+ penstroke (z1e--z2e--z3e) ifrotated;
+ penlabels(1,2,3);
+
+ z11l=(x3l,y3l);
+ z12r=(x11r,underouter+0.5thin);
+ z13r=(x11+1.5thin,underouter-1.5thin);
+ z14r=(shudwidth+gedeswidth,y13r);
+ penpos11(1.75thin,0);
+ penpos12(2.25thin,0);
+ penpos13(underinner-underouter,+90);
+ penpos14(epsilon,+90);
+ penstroke (z11e---z12e{down}..{right}z13e---z14e) ifrotated;
+ penlabels(11,12,13,14);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_XEWTEEQIX,tewidth#,height#,depth#);
+ "The letter initial x";
+ xewteeqix;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_DUNDG,2shudwidth#,height#,depth#);
+ "Medial g";
+ cegteishud(0);
+ cegteishud(shudwidth);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_DUNDX,2shudwidth#,height#,depth#);
+ "Medial x";
+ shud(0);
+ shud(shudwidth);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGX,2shudwidth#,height#,depth#);
+ "Final x";
+ shud(shudwidth);
+ bagaodoisuul;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_DUNDNG,shudwidth#+numtaigedeswidth#,height#,depth#);
+ "Medial ng";
+ shud(numtaigedeswidth);
+ baganum;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGNG,shudwidth#+shilbewidth#+orxicwidth#,height#,depth#);
+ "Final ng";
+ shud(orxicwidth+shilbewidth);
+ shilbe(orxicwidth);
+ orxic(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGKA,tewidth#,height#,depth#);
+ "A Ligature: KA";
+ ligka;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGKI,eswidth#+secAwidth#,height#,depth#);
+ "A Ligature: KI";
+ ligki;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGKU,bawidth#,height#,depth#);
+ "A Ligature: KU";
+ ligku;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGI,gedeswidth#,height#,depth#);
+ "Vowel I in final position";
+ nuruu(gedeswidth,gedeswidth-bearing);
+ z1l=(1/3gedeswidth,shudheight);
+ z2r=(gedeswidth-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6r=(0,nuruuright); % nuruuright was Centerline
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(epsilon,-180);
+
+ penstroke (z1e..tension 1.2..z2e...z4e{down}..z5e..{up}z6e) ifrotated;
+ penlabels(1,2,3,4,5,6);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_NUMTDELBENQIX,eswidth#,height#,depth#);
+ "Letter p";
+ nuruu(eswidth,eswidth-numtaigedeswidth);
+
+ z1r=(eswidth-1/2bearing,gedesouter+thin);
+ z2r=(1/3[x1,x4],gedesouter);
+ z3r=(7/12[x1,x4],gedesouter);
+ z4r=(eswidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,180);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(gedesouter-gedesinner,90);
+ penpos4(thin,180);
+ penstroke (z1e..z2e..z3e..{down}z4e) ifrotated;
+
+ z5r=(x1,nuruuright);
+ z6r=(1/2[x5,x7],underouter);
+ z7r=(0,Centerline);
+ penpos5(thin,0);
+ penpos6(underinner-underouter,-90);
+ penpos7(1/4thin,-180);
+ penstroke (z5e{down}..z6e..{up}z7e) ifrotated;
+ penlabels(1,2,3,4,5,6,7);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_BAGANUM,numtaigedeswidth#,height#,depth#);
+ "Smaller version of female g";
+ baganum;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGK,shilbewidth#+orxicwidth#,height#,depth#);
+ "Final k";
+ shilbe(orxicwidth);
+ orxic(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_NUMTAIGEDES,eswidth#,height#,depth#);
+ "Letter b, or final u";
+ nuruu(eswidth,eswidth-numtaigedeswidth);
+
+ z1r=(eswidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(eswidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6r=(0,Centerline);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(1/4thin,-180);
+ penstroke (z4e{down}..z5e..{up}z6e) ifrotated;
+ penlabels(1,2,3,4,5,6);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGB,gedeswidth#+orxicwidth#,height#,depth#);
+ "Final b";
+ if style=wood:
+ gedes(orxicwidth);
+ orxic(0);
+ fi;
+ if style=steel:
+ nuruu(numtaigedeswidth+numtaigedeswidth,numtaigedeswidth);
+ z1r=(2numtaigedeswidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(x3r+thin,underouter);
+ z6r=(0,nuruuright);
+ z7r=(5/24gedeswidth,orxicouter);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(epsilon,-180);
+ penpos7(3/3thick,105);
+ penstroke
+ (z4e{down}..{left}z5e{left}..tension 2.5..{right}z7e)
+ ifrotated;
+ penlabels(1,2,3,4,5);
+ fi;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+if style=steel: buruuxarsangedeswidth#:=cewidth# fi;
+if style=wood: buruuxarsangedeswidth#:=tewidth# fi;
+
+beginchar(MONG_BURUUXARSANGEDES,buruuxarsangedeswidth#,height#,depth#);
+ "Letter t";
+ if style=steel:
+ deribun_ta;
+ fi;
+ if style=wood:
+ nuruu(tewidth,0);
+ shud_atom(1/2gedeswidth,bearing);
+ z1r=(tewidth,nuruuright);
+ z2r=(1/3tewidth,underouter);
+ z3r=(bearing,nuruuright);
+ penpos1(thin,0);
+ penpos2(underinner-underouter,-90);
+ penpos3(2thin,-180);
+ penstroke (z1e..tension 2..z2e..{up}z3e) ifrotated;
+ penlabels(1,2,3);
+ fi;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_GEDESTEISHILBE,eswidth#,height#,depth#);
+ "Letter d";
+ if style=steel:
+ roundgedestshilbe;
+ fi;
+ if style=wood:
+ modgedestshilbe;
+ fi;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_DUNDD,gedeswidth#+shudwidth#,height#,depth#);
+ "Medial d before consonants";
+ shud(0);
+ gedes(shudwidth);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGD,gedeswidth#+shudwidth#,height#,depth#);
+ "Final d";
+ suul;
+ gedes(shudwidth);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ERWEELJINSHILBE,gedeswidth#,height#,depth#);
+ "Letter 'r' in first and medial position";
+ nuruu(gedeswidth,0);
+ z1=(gedeswidth-1/2bearing,nuruuleft);
+ z2=(gedeswidth-5thin,shilbeheight);
+ z3=(0,shilbeheight-thin);
+ z4=(x2-0.5thin,shilbeheight-5thin);
+ z5=(gedeswidth-3thin,nuruuleft);
+ fill (z1{dir 100}..z2 & z2{dir 225}..{dir 105}z3 &
+ z3{down}..{dir 45}z4 & z4..{dir -80}z5&z5--cycle) ifrotated;
+ penlabels(1,2,3,4,5);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_BOSOOSHILBE,eswidth#,height#,depth#);
+ "Letter z";
+ bosoo_shilbe;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_EXENS,tewidth#,height#,depth#);
+ "Letter `s' in initial position";
+ exenzawj;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ZAWJ,tewidth#,height#,depth#);
+ "Letter `s' in medial position";
+ zawj;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGS,tewidth#,height#,depth#);
+ "Letter `s' in final position ";
+ suulzawj;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_SEREEEWER,eswidth#,height#,depth#);
+ "Letter c";
+ seree_ewer;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ETGERSHILBE,shudwidth#+thin#,height#,depth#);
+ "Letter ya";
+ nuruu(shudwidth+thin,0);
+ z1r=(shudwidth+thin-1/4bearing,nuruuleft);
+ z2 =(1/8shudwidth+thin,gedesouter);
+ z3 =(5/8shudwidth+thin,yashilbeheight);
+ penpos1(thin,0);
+ penpos2(3.5thin,+15);
+ penpos3(epsilon,15);
+ penstroke (z1e..tension 2.5..z2e..tension 1.25..z3e) ifrotated;
+ penlabels(1,2,3);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_MATGARSHILBE,gedeswidth#,height#,depth#);
+ "Letter va";
+ nuruu(gedeswidth,0);
+ z1r=(gedeswidth-1/4bearing,nuruuleft);
+ z2r=(3/8gedeswidth,yashilbeheight);
+ z3 =(1/8gedeswidth,gedesinner);
+ penpos1(thin,0);
+ penpos2(3.75thin,+90);
+ penpos3(epsilon,+135);
+ penstroke (z1e{dir 105}..tension 3.5..z2e..tension 2.50..z3e) ifrotated;
+ penlabels(1,2,3);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_SUUL,shudwidth#,height#,depth#);
+ "The suul";
+ suul;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ORXIC,orxicwidth#,height#,depth#);
+ "The orxic";
+ orxic(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_BAGODOISUUL,shudwidth#,height#,depth#);
+ "The gamma suul";
+ bagaodoisuul;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_BIODOISUUL,shudwidth#,height#,depth#);
+ "Little tail following certain letters";
+ z1=(shudwidth,Centerline);
+ z2=(1/2shudwidth,Centerline);
+ z3=(0,nuruuleft+thin);
+ penpos1(nuruuwidth,90);
+ penpos2(14/16nuruuwidth,80);
+ penpos3(epsilon,45);
+ penstroke (z1e---z2e..z3e) ifrotated;
+ penlabels(1,2,3);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_NCEG,secAwidth#,height#,depth#);
+ "The n= dot";
+ dusal(1/2secAwidth,gedesouter,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_GCEG,shudwidth#,height#,depth#);
+ "The g= dots";
+ dusal(9/12shudwidth,gedesouter,3thin,2thick);
+ dusal(3/12shudwidth,gedesouter,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Some commonly used graphical ligatures without added semantic value
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGBA,bawidth#,height#,depth#);
+ "A Ligature: BA";
+ ligba;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGBI,biwidth#,height#,depth#);
+ "A Ligature: BI";
+ nuruu(shilbewidth-thin,0);
+ nuruu(biwidth,biwidth-numtaigedeswidth);
+
+ z1r=(biwidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(biwidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6l=(shilbewidth,nuruuright);
+ z7l=(3thin,shilbeheight);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+ penpos7(4thin,-120);
+ penstroke (z4e{down}..z5e..{up}z6e..tension infinity..z7e) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGBU,2numtaigedeswidth#,height#,depth#);
+ "A Ligature: BU";
+ ligbu(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGBN,bawidth#,height#,depth#);
+ "A Ligature: BN";
+ ligba;
+ dusal (x7,yashilbeheight,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGBL,bawidth#,height#,depth#);
+ "A Ligature: BL";
+ ligba;
+ high_l_ewer(2.5thin);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGPA,bawidth#,height#,depth#);
+ "A Ligature, PA";
+ ligmongpa;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGPI,biwidth#,height#,depth#);
+ "A Ligature: PI";
+ nuruu(shilbewidth-thin,0);
+ nuruu(biwidth,biwidth-numtaigedeswidth);
+
+% z1r=(biwidth-1/2bearing,nuruuleft);
+ z1r=(biwidth-1/2bearing,gedesouter+thin);
+ z2r=(1/3[x1,x4],gedesouter);
+ z3r=(7/12[x1,x4],gedesouter);
+ z4r=(biwidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,180);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(gedesouter-gedesinner,90);
+ penpos4(thin,180);
+ penstroke (z1e..z2e..z3e..{down}z4e) ifrotated;
+
+ z5r=(x1,nuruuright);
+ z6r=(1/2[x5,x7],underouter);
+ z7l=(shilbewidth,nuruuright);
+ z8l=(3thin,shilbeheight);
+ penpos5(thin,0);
+ penpos6(underinner-underouter,-90);
+ penpos7(2thin,-180);
+ penpos8(4thin,-120);
+ penstroke (z5e{down}..z6e..{up}z7e..tension infinity..z8e) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9,10);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGPU,2numtaigedeswidth#,height#,depth#);
+ "A Ligature: PU";
+ ligmongpu;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/mbligtbl.mf b/Master/texmf-dist/fonts/source/public/montex/mbligtbl.mf
new file mode 100644
index 00000000000..d7436e18a57
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mbligtbl.mf
@@ -0,0 +1,45 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mbligtbl.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script (LMS)
+% Mongol Bicig Ligature Definitions
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_EXCLAMATION :MONG_QUESTION=: MONG_EXCLAMQUEST;
+ligtable MONG_QUESTION :MONG_EXCLAMATION=: MONG_QUESTEXCLAM;
+ligtable MONG_TASLAL :MONG_TASLAL=: MONG_FULLSTOP;
+ligtable MONG_LT :MONG_LT =: MONG_LGU;
+ligtable MONG_GT :MONG_GT =: MONG_RGU;
+%
+ligtable MONG_LEWER :MONG_LEWER=: MONG_LIGLL;
+ligtable MONG_MEWER :MONG_LEWER=: MONG_LIGML;
+ligtable MONG_SECNUMTGEDES :MONG_SECONDARYSHUD =: MONG_LIGBA;
+ligtable MONG_NUMTAIGEDES :MONG_SHUD =: MONG_LIGBA;
+ligtable MONG_SECNUMTDELBENQ :MONG_SECONDARYSHUD =: MONG_LIGPA;
+ligtable MONG_NUMTDELBENQIX :MONG_SHUD =: MONG_LIGPA;
+ligtable MONG_SECONDARYNUM :MONG_SECONDARYSHUD =: MONG_LIGKA,
+ MONG_SHUD =: MONG_LIGKA,
+ MONG_SECONDARYGEDES =: MONG_LIGKU,
+ MONG_GEDES =: MONG_LIGKU;
+ligtable MONG_SECSERTENQIXT :MONG_SECONDARYSHUD =: MONG_LIGFA;
+ligtable MONG_SERTENQIXTNUM :MONG_SHUD =: MONG_LIGFA;
+ligtable MONG_SECONDARYEWERTQAGT :MONG_SECONDARYSHUD =: MONG_LIGGHA;
+ligtable MONG_EWERTQAGT :MONG_SHUD =: MONG_LIGGHA;
+ligtable "K" :MONG_SECONDARYSHUD =: MONG_LIGKHA;
+ligtable "k" :MONG_SHUD =: MONG_LIGKHA;
+
+ligtable MONG_TITEMSTROKE :MONG_SHUD =: MONG_TITEM,
+ MONG_ZAWJ =: MONG_EXENS,
+ MONG_DAWXARCEGTZAWJ =: MONG_EXENSH,
+ MONG_LEWER =: MONG_EXENL,
+ MONG_MEWER =: MONG_EXENM;
+
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+endinput;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% vim: ts=33
diff --git a/Master/texmf-dist/fonts/source/public/montex/mbnums.mf b/Master/texmf-dist/fonts/source/public/montex/mbnums.mf
new file mode 100644
index 00000000000..da8b4c2b983
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mbnums.mf
@@ -0,0 +1,373 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mbglyphs.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: June 1st, 1999
+% Version: 0.2
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script (LMS)
+% Mongol Bicig Modyn Bar Glyph Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+show param_base;
+beginchar(MONG_ZERO,numberwidth#+bearing#,height#,depth#);
+ "The Number 0";
+ pair dz[];
+ numberpath;
+ z11r= point 0.20 of trial;
+ dz11= direction 0.20 of trial;
+ penpos11(2thin,angle dz11+90);
+
+ z12r= point 0.75 of trial;
+ dz12= direction 0.75 of trial;
+ penpos12(thin,angle dz12+90);
+
+ z13r= point 2.20 of trial;
+ dz13= direction 2.20 of trial;
+ penpos13(2thin,angle dz13+90);
+
+ z14r= point 2.8 of trial;
+ dz14= direction 2.8 of trial;
+ penpos14(1thin, angle dz14+90);
+
+ penstroke (z11e{dz11}..{dz12}z12e..
+ z13e{dz13}..z14e{dz14}..cycle) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ONE,numberwidth#+bearing#,height#,depth#);
+ "The Number 1";
+ pair dz[];
+ numberpath;
+
+ z11r= point 0.20 of trial;
+ dz11= direction 0.20 of trial;
+ penpos11(4thin,angle dz11+90);
+
+ z12r= point 0.75 of trial;
+ penpos12(thin,0);
+
+ z13r= point 2.00 of trial;
+ dz13= direction 2.00 of trial;
+ penpos13(2thin,angle dz13+90);
+
+ z14r= point 2.8 of trial;
+ dz14= direction 2.8 of trial;
+ penpos14(2thin, angle dz14+90);
+
+ z15r= point 4.00 of trial;
+ dz15= direction 4.00 of trial;
+ penpos15(1/2thin, angle dz15+90);
+
+ pickup pencircle scaled 4 thin;
+ drawdot (z11) ifrotated;
+
+ penstroke (z11e{dz11}..z12e{down}..{dz13}z13e
+ ..{dz14}z14e..{dz15}z15e) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_TWO,numberwidth#+bearing#,height#,depth#);
+ "The Number 2";
+ pair dz[];
+ numberpath;
+ z11=(2bearing,gedesinner);
+ penpos11(3thin,+90);
+
+ z12l= point 0.75 of trial;
+ dz12= direction 0.75 of trial;
+ penpos12(1thin,angle dz12+90);
+
+ z13r= point 1.80 of trial;
+ dz13= direction 1.80 of trial;
+ penpos13(2thin,angle dz13+90);
+
+ z14l= z16l;
+ % z14l= (bearing,Centerline);
+ dz14= direction 0.75 of trial;
+ penpos14(2thin, -90);
+
+ z15r= (bearing,Centerline+4thin);
+ dz15= direction 0.75 of trial;
+ penpos15(1/2thin, -180);
+
+ z16r= (bearing,Centerline+2thin);
+ dz16= direction 0.75 of trial;
+ penpos16(2thin, -180);
+
+ z17r= (bearing,underinner+thin);
+ penpos17(2thin, 180);
+
+ z18l= (bearing+1/12bawidth,underinner);
+ penpos18(1/2thin,180);
+
+ pickup pencircle scaled 3thin;
+ drawdot (z11) ifrotated;
+ penstroke (z11e{right}..z12e{dz12}..z13e{dz13}..
+ tension 1.2..z14e) ifrotated;
+ penstroke (z15e--z16e--z17e--z18e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_THREE,numberwidth#+bearing#,height#,depth#);
+ "The Number 3";
+ pair dz[];
+ numberpath;
+
+ z9 =(thin+bearing,gedesinner);
+ dz9= direction -0.10 of trial;
+ penpos9(0.75thin,angle dz9+90);
+
+ z10r=(numberwidth-bearing,Centerline-thin);
+ dz10= direction 0.90 of trial;
+ penpos10(3thin,angle dz10+90);
+
+ z11=(1/3numberwidth,nuruuleft+thin);
+ dz11= direction 2.40 of trial;
+ penpos11(1/2thin, angle dz11+90);
+
+ z12r= (5/6numberwidth,nuruuright+thin);
+ %dz12= direction 0.75 of trial;
+ penpos12(2thin,30);
+
+ z13r= point 1.60 of trial;
+ dz13= direction 1.60 of trial;
+ penpos13(3thin,angle dz13+90);
+
+ z14r= (2thin+bearing,Centerline);
+ dz14= direction 0.75 of trial;
+ penpos14(2thin, -90);
+
+ z15l= (bearing,Centerline+4thin);
+ dz15= direction 0.75 of trial;
+ penpos15(1/2thin, 0);
+
+ z16l= (bearing,Centerline+2thin);
+ dz16= direction 0.75 of trial;
+ penpos16(2thin, 0);
+
+ z17l= (bearing,underinner+thin);
+ penpos17(2thin, 0);
+
+ z18l= (bearing+1/12numberwidth,underinner);
+ penpos18(1/2thin,0);
+
+ penstroke (z9e{dz9}..tension 1.4..z10e..tension 1.2..{dz11}z11e)
+ ifrotated;
+ penstroke (z12e..z13e{dz13}..tension 1.2..z14e) ifrotated;
+ penstroke (z15e--z16e--z17e--z18e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_FOUR,numberwidth#+bearing#,height#,depth#);
+ "The Number 4";
+ pair dz[];
+ numberpath;
+ z11=(bawidth,underinner);
+ penpos11(3thin,-90);
+
+ z12r= point 2.80 of trial;
+ dz12= direction 2.80 of trial;
+ penpos12(2thin,angle dz12+90);
+
+ z13r= point 0.10 of trial;
+ dz13= direction 0.10 of trial;
+ penpos13(1thin,angle dz13+90);
+
+ z14r= point 0.75 of trial;
+ dz14= direction 0.75 of trial;
+ penpos14(1thin, angle dz14+90);
+
+ pickup pencircle scaled 3thin;
+ drawdot (z11) ifrotated;
+ penstroke (z11e{left}..z12e{dz12}..z13e{dz13}..z14e{dz14}) ifrotated;
+ pickup pencircle scaled thin;
+ drawdot (z14) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_FIVE,numberwidth#+bearing#,height#,depth#);
+ "The Number 5";
+ pair dz[];
+ numberpath;
+
+ z11= point -0.10 of trial;
+ dz11=direction -0.10 of trial;
+ penpos11(3thin,angle dz11+90);
+ pickup pencircle scaled 2.5thin;
+ drawdot (z11) ifrotated;
+
+ z12r= point 2.9 of trial;
+ dz12=direction 2.8 of trial;
+ penpos12(2thin,angle dz12+90);
+
+ z13= point 0.8 of trial;
+ penpos13(thin,-90);
+
+ z14r= z13;
+ penpos14(3thin,90);
+ z15r= (thick,Centerline);
+ penpos15(3thin,90);
+
+ z16r= (bearing,nuruuright);
+ penpos16(thin,90);
+
+ penstroke (z11e..tension 1.5..z12e{down}..
+ tension 3..z13e{dir -30}) ifrotated;
+ penstroke (z14e---z15e..z16e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_SIX,numberwidth#+bearing#,height#,depth#);
+ "The Number 6";
+ numberpath;
+ pair dz[];
+ % pickup pencircle scaled .25thin;
+ % draw trial;
+
+ z11r=point 2.40 of trial;
+ dz11=direction 2.40 of trial;
+ penpos11(2thin,angle dz11+90);
+
+ z12r=point 2.90 of trial;
+ dz12=direction 2.90 of trial;
+ penpos12(2thin,angle dz12+90);
+
+ z13 =point 0.23 of trial;
+ dz13=direction 0.23 of trial;
+ penpos13(2thin,angle dz13+90);
+ % pickup pencircle scaled 5thin; drawdot z13;
+
+ z14r=point 0.85 of trial;
+ dz14=direction 0.85 of trial;
+ penpos14(3thin,angle dz14+90);
+ pickup pencircle scaled 3thin; drawdot (z14) ifrotated;
+
+ z15=(z11..z13) intersectionpoint (z12..z14);
+ penpos15(thin,angle dz11-90);
+
+ z16=(3/4[x12,x14],nuruuright);
+ penpos16(3thin,90);
+ z17= z15;
+ penpos17(thin,60);
+
+ penstroke (z15e{dz13}..z11e{dz11}..z12e{dz12}
+ ..z13e{dz13}..z14e{dz14}) ifrotated;
+ penstroke (z16e{left}..z17e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_SEVEN,numberwidth#+bearing#,height#,depth#);
+ "The Number 7";
+ pair dz[];
+ path findcenter;
+ numberpath;
+ % pickup pencircle scaled 0.25thin;
+ % draw trial;
+
+ z11l=point -0.6 of trial;
+ dz11= direction -0.6 of trial;
+ penpos11(3thin,angle dz11-90);
+
+ z12l= point 0.45 of trial;
+ dz12= direction 0.45 of trial;
+ penpos12(1.5thin,angle dz12-90);
+
+ z13 = (w/2,.5[h,-d]); % "Centerpoint"
+
+ z14r= point 2.5 of trial;
+ dz14=-direction 2.5 of trial;
+ penpos14(2thin,angle dz14-90);
+
+ z15r= point 2.1 of trial;
+ dz15=-direction 2.1 of trial;
+ penpos15(2.25thin,angle dz15-90);
+
+ z16r= point 0.8 of trial;
+ dz16=-direction 0.8 of trial;
+ penpos16(1.5thin,angle dz16-90);
+
+ findcenter = z11{dz11}..z12{dz12}..tension 1.1..z13..
+ {dz14}z14..{dz15}z15..{dz16}z16;
+ dz13=-direction 3 of findcenter;
+ penpos13(2thin,angle dz13-90);
+
+ pickup pencircle scaled 3thin; drawdot (z11) ifrotated;
+ pickup pencircle scaled 1.5thin; drawdot (z16) ifrotated;
+
+ penstroke (z11e{dz11}..z12e{dz12}..tension 1.1..z13e{dz13}..
+ {dz14}z14e..{dz15}z15e..{dz16}z16e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_EIGHT,numberwidth#+bearing#,height#,depth#);
+ "The Number 8";
+ pair dz[];
+ numberpath;
+ pickup pencircle scaled 1/2thin;
+
+ z13 = point 0.8 of trial;
+ penpos13(3thin,90);
+
+ z14 = (bearing,gedesinner-thin);
+ penpos14(thin,75);
+
+ z15 = (bearing,gedesinner);
+ dz15= direction 0.75 of trial;
+ penpos15(1/2thin, -180);
+
+ z16 = (bearing,gedesinner-2thin);
+ dz16= direction 0.75 of trial;
+ penpos16(2thin, -180);
+
+ z17 = (bearing,underinner+thin);
+ penpos17(2thin, 180);
+
+ z18 = (bearing+1/12bawidth,underinner);
+ penpos18(1/2thin,180);
+
+ pickup pencircle scaled 3thin;
+ drawdot (z13) ifrotated;
+ penstroke (z13e{dir 165}..z14e) ifrotated;
+ penstroke (z15e--z16e--z17e--z18e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_NINE,numberwidth#+bearing#,height#,depth#);
+ "The Number 9";
+ numberpath;
+ pair dz[];
+
+ z11r=point 2.40 of trial;
+ dz11=direction 2.40 of trial;
+ penpos11(1/2thin,angle dz11+90);
+
+ z12r=point 2.85 of trial;
+ dz12=direction 2.85 of trial;
+ penpos12(2thin,angle dz12+90);
+
+ z13 =point 0.23 of trial;
+ dz13=direction 0.23 of trial;
+ penpos13(2thin,angle dz13+90);
+
+ z14r=point 0.9 of trial;
+ dz14=direction 0.9 of trial;
+ penpos14(3thin,angle dz14+90);
+
+ z15=(z11..z13) intersectionpoint (z12..z14);
+ penpos15(1/2thin,angle dz12+90);
+
+ z16=point 2.2 of trial;
+ dz16=direction 2.2 of trial;
+ penpos16(2thin,angle dz16);
+ z17= z15;
+ penpos17(epsilon,30);
+
+ penstroke (z11e{dz11}..z12e{dz12}
+ ..z13e{dz13}..z14e{dz14}..tension 1.5..z15e) ifrotated;
+ penstroke (z16e{up}..z17e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/mbparmb.mf b/Master/texmf-dist/fonts/source/public/montex/mbparmb.mf
new file mode 100644
index 00000000000..7785322f444
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mbparmb.mf
@@ -0,0 +1,108 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mbparmb.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: April 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script (LMS)
+% Mongol Bicig Modyn Bar Bold Font Parameter Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mode_setup;
+ mg:=1;
+ width#:=mg*8pt#;
+ height#:=mg*13.2pt#;
+ depth#:=mg*9.6pt#;
+
+ % Some 'standard' character sizes ...
+ % From small to big ...
+ secAwidth#:=3/8width#;
+ shudwidth#:=4/8width#;
+ shilbewidth#:=4.5/8width#;
+ numtaigedeswidth#:=5/8width#;
+ gedeswidth#:=6/8width#; orxicwidth#:=6/8width#;
+ eswidth#:=7/8width#;
+ tewidth#:=8/8width#;
+ cewidth#:=9/8width#;
+ bawidth#:=numtaigedeswidth#+shudwidth#+1/16width#;
+ biwidth#:=eswidth#+shilbewidth#;
+ numberwidth#:=12/8width#;
+
+ % character features; ... see description in the Black Book
+ Centerline#:=1/2(height#-depth#);
+ u#:=1pt#;
+ ispace#:=5pt#;
+ bearing#:=mg*0.75pt#;
+ thin#:=mg*0.50pt#;
+ medium#:=mg*1pt#;
+ thick#:=mg*2pt#;
+ nuruuwidth#:=mg*2.0pt#;
+ nuruuleft#:=Centerline#+1/2nuruuwidth#;
+ nuruuright#:=Centerline#-1/2nuruuwidth#;
+if style=steel:
+ orxicouter#:=nuruuleft#+mg*10.00pt#;
+else:
+ orxicouter#:=nuruuleft#+mg*8.00pt#;
+fi;
+ yashilbeheight#:=nuruuleft#+mg*7.00pt#;
+ shilbeheight#:=nuruuleft#+mg*6pt#;
+ gedesouter#:=nuruuleft#+mg*5.00pt#;
+ shudheight#:=nuruuleft#+mg*4.00pt#;
+ gedesinner#:=nuruuleft#+mg*3.00pt#;
+ underinner#:=nuruuright#-mg*3.00pt#;
+ sdepth#:=nuruuright#-mg*4.00pt#;
+ underouter#:=nuruuright#-mg*5.00pt#;
+if style=steel:
+ suulouter#:=nuruuright#-mg*10.00pt#;
+else:
+ suulouter#:=nuruuright#-mg*8.00pt#;
+fi;
+ latintopline#:=2gedeswidth#-4thin#;
+ latinbottomline#:=4thin#;
+
+ define_pixels(u,bearing,
+ width,height,depth,
+ thin, medium, thick,
+ shudheight,
+ yashilbeheight,
+ shilbeheight,
+ sdepth,
+ secAwidth,
+ shudwidth,
+ numtaigedeswidth,
+ gedeswidth,
+ shilbewidth,
+ orxicwidth,
+ eswidth,
+ tewidth,
+ cewidth,
+ bawidth,
+ biwidth,
+ numberwidth,
+ nuruuwidth,
+ nuruuleft,
+ nuruuright,
+ Centerline,
+ gedesinner,gedesouter,
+ underinner,underouter,
+ orxicouter,suulouter,
+ latintopline,latinbottomline);
+
+ define_blacker_pixels(thin,medium,thick);
+
+
+ font_size 12pt#;
+
+ font_normal_space gedeswidth#;
+ font_x_height gedesouter#;
+ font_quad gedeswidth#;
+ font_extra_space gedeswidth#;
+ font_normal_stretch 1.5gedeswidth#;
+ font_normal_shrink 1thin#;
+
+ boundarychar := 255;
+
+ screen_rows := 500;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File mbparmb.mf ends here.
diff --git a/Master/texmf-dist/fonts/source/public/montex/mbparmm.mf b/Master/texmf-dist/fonts/source/public/montex/mbparmm.mf
new file mode 100644
index 00000000000..83f9917d5d8
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mbparmm.mf
@@ -0,0 +1,108 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mbparmm.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: April 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script (LMS)
+% Mongol Bicig Modyn Bar Medium Font Parameter Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mode_setup;
+ mg:=1;
+ width#:=mg*8pt#;
+ height#:=mg*13.2pt#;
+ depth#:=mg*9.6pt#;
+
+ % Some 'standard' character sizes ...
+ % From small to big ...
+ secAwidth#:=3/8width#;
+ shudwidth#:=4/8width#;
+ shilbewidth#:=4.5/8width#;
+ numtaigedeswidth#:=5/8width#;
+ gedeswidth#:=6/8width#; orxicwidth#:=4/8width#;
+ eswidth#:=7/8width#;
+ tewidth#:=8/8width#;
+ cewidth#:=9/8width#;
+ bawidth#:=numtaigedeswidth#+shudwidth#+1/16width#;
+ biwidth#:=eswidth#+shilbewidth#;
+ numberwidth#:=12/8width#;
+
+ % character features; ... see description in the Black Book
+ Centerline#:=1/2(height#-depth#);
+ u#:=1pt#;
+ ispace#:=mg*5pt#;
+ bearing#:=mg*0.75pt#;
+ thin#:=mg*0.50pt#;
+ medium#:=mg*1pt#;
+ thick#:=mg*2pt#;
+ nuruuwidth#:=mg*1.500pt#;
+ nuruuleft#:=Centerline#+1/2nuruuwidth#;
+ nuruuright#:=Centerline#-1/2nuruuwidth#;
+if style=steel:
+ orxicouter#:=nuruuleft#+mg*10.00pt#;
+else:
+ orxicouter#:=nuruuleft#+mg*8.00pt#;
+fi;
+ yashilbeheight#:=nuruuleft#+mg*7.00pt#;
+ shilbeheight#:=nuruuleft#+mg*6pt#;
+ gedesouter#:=nuruuleft#+mg*5.00pt#;
+ shudheight#:=nuruuleft#+mg*4.00pt#;
+ gedesinner#:=nuruuleft#+mg*3.00pt#;
+ underinner#:=nuruuright#-mg*3.00pt#;
+ sdepth#:=nuruuright#-mg*4.00pt#;
+ underouter#:=nuruuright#-mg*5.00pt#;
+if style=steel:
+ suulouter#:=nuruuright#-mg*10.00pt#;
+else:
+ suulouter#:=nuruuright#-mg*8.00pt#;
+fi;
+ latintopline#:=2gedeswidth#-4thin#;
+ latinbottomline#:=4thin#;
+
+ define_pixels(u,bearing,
+ width,height,depth,
+ thin, medium, thick,
+ shudheight,
+ yashilbeheight,
+ shilbeheight,
+ sdepth,
+ secAwidth,
+ shudwidth,
+ numtaigedeswidth,
+ gedeswidth,
+ shilbewidth,
+ orxicwidth,
+ eswidth,
+ tewidth,
+ cewidth,
+ bawidth,
+ biwidth,
+ numberwidth,
+ nuruuwidth,
+ nuruuleft,
+ nuruuright,
+ Centerline,
+ gedesinner,gedesouter,
+ underinner,underouter,
+ orxicouter,suulouter,
+ exennwidth,
+ latintopline,latinbottomline);
+
+ define_blacker_pixels(thin,medium,thick);
+
+ font_size 12pt#;
+
+ font_normal_space gedeswidth#;
+ font_x_height gedesouter#;
+ font_quad gedeswidth#;
+ font_extra_space gedeswidth#;
+ font_normal_stretch 1.5gedeswidth#;
+ font_normal_shrink 1thin#;
+
+ boundarychar := 255;
+
+ screen_rows := 500;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File mbparmm.mf ends here.
diff --git a/Master/texmf-dist/fonts/source/public/montex/mbparms.mf b/Master/texmf-dist/fonts/source/public/montex/mbparms.mf
new file mode 100644
index 00000000000..b338394df60
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mbparms.mf
@@ -0,0 +1,100 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mbparms.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: April 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script (LMS)
+% Mongol Bicig Modyn Bar Medium Font Parameter Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+mode_setup;
+ mg:=1;
+ width#:=mg*8pt#;
+ height#:=mg*12pt#;
+ depth#:=mg*8.4pt#;
+
+ % Some 'standard' character sizes ...
+ % From small to big ...
+ secAwidth#:=3/8width#;
+ shudwidth#:=4/8width#;
+ shilbewidth#:=4.5/8width#;
+ numtaigedeswidth#:=5/8width#;
+ gedeswidth#:=6/8width#; orxicwidth#:=4/8width#;
+ eswidth#:=7/8width#;
+ tewidth#:=8/8width#;
+ cewidth#:=9/8width#;
+ bawidth#:=numtaigedeswidth#+shudwidth#+1/16width#;
+ biwidth#:=eswidth#+shilbewidth#;
+ numberwidth#:=12/8width#;
+
+ % character features; ... see description in the Black Book
+ Centerline#:=1/2(height#-depth#);
+ u#:=1pt#;
+ ispace#:=mg*5pt#;
+ bearing#:=mg*0.75pt#;
+ thin#:=mg*0.50pt#;
+ medium#:=mg*1pt#;
+ thick#:=mg*2pt#;
+ nuruuwidth#:=mg*1.500pt#;
+ nuruuleft#:=Centerline#+1/2nuruuwidth#;
+ nuruuright#:=Centerline#-1/2nuruuwidth#;
+ orxicouter#:=nuruuleft#+mg*8.00pt#;
+ yashilbeheight#:=nuruuleft#+mg*7.00pt#;
+ shilbeheight#:=nuruuleft#+mg*6pt#;
+ gedesouter#:=nuruuleft#+mg*5.00pt#;
+ shudheight#:=nuruuleft#+mg*4.00pt#;
+ gedesinner#:=nuruuleft#+mg*3.00pt#;
+ underinner#:=nuruuright#-mg*3.00pt#;
+ sdepth#:=nuruuright#-mg*4.00pt#;
+ underouter#:=nuruuright#-mg*5.00pt#;
+ suulouter#:=nuruuright#-mg*8.00pt#;
+ latintopline#:=2gedeswidth#-4thin#;
+ latinbottomline#:=4thin#;
+
+ define_pixels(u,bearing,
+ width,height,depth,
+ thin, medium, thick,
+ shudheight,
+ yashilbeheight,
+ shilbeheight,
+ sdepth,
+ secAwidth,
+ shudwidth,
+ numtaigedeswidth,
+ gedeswidth,
+ shilbewidth,
+ orxicwidth,
+ eswidth,
+ tewidth,
+ cewidth,
+ bawidth,
+ biwidth,
+ numberwidth,
+ nuruuwidth,
+ nuruuleft,
+ nuruuright,
+ Centerline,
+ gedesinner,gedesouter,
+ underinner,underouter,
+ orxicouter,suulouter,
+ exennwidth,
+ latintopline,latinbottomline);
+
+ define_blacker_pixels(thin,medium,thick);
+
+ font_size 12pt#;
+
+ font_normal_space gedeswidth#;
+ font_x_height gedesouter#;
+ font_quad gedeswidth#;
+ font_extra_space gedeswidth#;
+ font_normal_stretch 1.5gedeswidth#;
+ font_normal_shrink 1thin#;
+
+ boundarychar := 255;
+
+ screen_rows := 500;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File mbparmm.mf ends here.
diff --git a/Master/texmf-dist/fonts/source/public/montex/mbpunc.mf b/Master/texmf-dist/fonts/source/public/montex/mbpunc.mf
new file mode 100644
index 00000000000..5d504170bce
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mbpunc.mf
@@ -0,0 +1,244 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mbgpunc.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.2
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script (LMS)
+% Mongol Bicig Modyn Bar Punctuation Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_BNDRY,0,0,0);
+ "Mongolian Boundary";
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_MSP,numberwidth#,height#,depth#);
+ "Mongolian Space Symbol";
+ M (shilbeheight+0.5thin,gedesinner-thin);
+ S (nuruuleft+2thin,nuruuright-2thin);
+ P (underinner+0.5thin,underouter-2thin);
+ SpezRahmen;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_EXCLAMATION,2tewidth#,height#,depth#);
+ "Exclamation Mark";
+ Exclam(Centerline);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_QUESTEXCLAM,2tewidth#,height#,depth#);
+ "Question - Exclamation Mark";
+ Quest (nuruuleft+1/2thick);
+ Exclam (nuruuright-1.25thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_EXCLAMQUEST,2tewidth#,height#,depth#);
+ "Exclamation - Question Ligature";
+ Exclam (nuruuleft+1.0thick);
+ Quest (nuruuright-0.75thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_FVS1,numberwidth#,height#,depth#);
+ "Form Variant Selector 1";
+ F(shilbeheight,gedesinner+thin);
+ V(nuruuleft+4thin,nuruuright+2thin);
+ S(nuruuright+0thin,underinner-thin);
+ eins(underinner-2thin,underouter-3thin);
+ SpezRahmen;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_FVS2,numberwidth#,height#,depth#);
+ "Form Variant Selector 2";
+ F(shilbeheight,gedesinner+thin);
+ V(nuruuleft+4.5thin,nuruuright+3thin);
+ S(nuruuright+1thin,underinner+thin);
+ zwei(underinner-1thin,underouter-3thin);
+ SpezRahmen;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_OPAREN,gedeswidth#,height#,depth#);
+ "Mongolian Opening Parenthesis";
+ z1l=(bearing,orxicouter);
+ z2r=(gedeswidth-bearing,Centerline);
+ z3 =(x1,suulouter);
+ penpos1(thin,0);
+ penpos2(2.5thin,0);
+ penpos3(thin,0);
+ penstroke (z1e..z2e..z3e) ifrotated;
+ penlabels(1,2,3);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_CPAREN,gedeswidth#,height#,depth#);
+ "Mongolian Closing Parenthesis";
+ z1r=(gedeswidth-bearing,orxicouter);
+ z2l=(bearing,Centerline);
+ z3 =(x1,suulouter);
+ penpos1(thin,0);
+ penpos2(2.5thin,0);
+ penpos3(thin,0);
+ penstroke (z1e..z2e..z3e) ifrotated;
+ penlabels(1,2,3);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ENV,numberwidth#,height#,depth#);
+ "Mongolian Environment Marker";
+ z1 =(1.5thick,Centerline);
+ z2 =(w/2,.5[h,-d]); % "Centerpoint"
+ z3 =(2gedeswidth-1.5thick,y1);
+
+ penpos1(3.0thin,90);
+ penpos2(0.5thin,90);
+ penpos3(3.0thin,90);
+
+ pickup pencircle scaled 3.0 thin;
+ roffset:=0;
+ % roffset:=30;
+ % for r = 0,45,90,135: % This list for 8-pointed stars
+ for r = 0,60,120: % This list for 6-pointed stars
+ penstroke (z1e--z2e--z3e) rotatedabout (z2,r+roffset);
+ drawdot (z1) rotatedabout (z2,r+roffset);
+ drawdot (z3) rotatedabout (z2,r+roffset);
+ endfor;
+ penlabels(1,2,3);
+ SpezRahmen;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_MVS,numberwidth#,height#,depth#);
+ "Mongolian Vowel Separator";
+ M (shilbeheight,gedesinner-thin);
+ V (nuruuleft+2thin,nuruuright-2thin);
+ S (underinner+1thin,underouter-2thin);
+ SpezRahmen;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ELLIPSIS,2gedeswidth#,height#,depth#);
+ "Ellipsis";
+
+ dusal(1/5*2gedeswidth,Centerline,3thin,2thick);
+ dusal(2/5*2gedeswidth,Centerline,3thin,2thick);
+ dusal(3/5*2gedeswidth,Centerline,3thin,2thick);
+ dusal(4/5*2gedeswidth,Centerline,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_COLON,tewidth#,height#,depth#);
+ "Mongolian Colon";
+ pickup pencircle scaled 3.5 thin;
+ drawdot (1/2tewidth,nuruuleft+thick) ifrotated;
+ drawdot (1/2tewidth,nuruuright-thick) ifrotated;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_DORWOLJIN,bawidth#,height#,depth#);
+ "Dorwoljin";
+ dusal(1/2bawidth,gedesinner,5thin,3thick);
+ dusal(1/4bawidth,Centerline,5thin,3thick);
+ dusal(3/4bawidth,Centerline,5thin,3thick);
+ dusal(1/2bawidth,underinner,5thin,3thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_OM,2gedeswidth#,height#,depth#);
+ z1r=(gedeswidth-bearing,gedesouter+thin);
+ z2l=(bearing,Centerline);
+ z3 =(x1,underouter-thin);
+ penpos1(thin,0);
+ penpos2(2.5thin,0);
+ penpos3(thin,0);
+ penstroke (z1e..z2e..z3e) ifrotated;
+ penlabels(1,2,3);
+
+ z4r=(w-bearing,Centerline);
+ z5l=(x4l,Centerline+thin);
+ z6r=(08/12[x4l,x7l],gedesinner-1.25thin);
+ z7l=(9thin,Centerline);
+ z8l=(x4l,Centerline-thin);
+ z9r=(08/12[x4l,x7l],underinner+1.25thin);
+ penpos4(2.5thin,0);
+ penpos5(2.1thin,30);
+ penpos6(2.5thin,90);
+ penpos7(2.9thin,180);
+ penpos8(2.1thin,-30);
+ penpos9(2.5thin,-90);
+ penstroke(z4e..z5e..tension 1.4..z6e{left}..tension 1.2..{down}z7e) ifrotated;
+ penstroke(z4e..z8e..tension 1.4..z9e{left}..tension 1.2..{up}z7e) ifrotated;
+ penlabels(4,5,6,7,8,9);
+endchar;
+% pausing:=1;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LT,gedeswidth#,height#,depth#);
+ "Mongolian Less Than";
+ pair dz[];
+ z1l=(bearing,gedesouter);
+ z2r=(gedeswidth-bearing,Centerline);
+ z3 =(x1,underouter);
+ penpos1(thin,0);
+ penpos2(3.0thin,0);
+ penpos3(thin,0);
+ z4 =(x2,y3);
+ dz1=(z4-z1);
+ z5 =(x2,y1);
+ dz3=(z3-z5);
+ penstroke (z1e{dz1}..z2e&z2e..{dz3}z3e) ifrotated;
+ penlabels(1,2,3,4,5);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_GT,gedeswidth#,height#,depth#);
+ "Mongolian Greater Than";
+ pair dz[];
+ z1r=(gedeswidth-bearing,gedesouter);
+ z2l=(bearing,Centerline);
+ z3 =(x1,underouter);
+ penpos1(thin,0);
+ penpos2(3.0thin,0);
+ penpos3(thin,0);
+ z4 =(x2,y3);
+ dz1=(z4-z1);
+ z5 =(x2,y1);
+ dz3=(z3-z5);
+ penstroke (z1e{dz1}..z2e&z2e..{dz3}z3e) ifrotated;
+ penlabels(1,2,3,4,5);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_QUESTION,2tewidth#,height#,depth#);
+ "Question Mark";
+ Quest(Centerline);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_NIRUGU,shudwidth#,height#,depth#);
+ "Mongolian NIRUGU";
+ nuruu(shudwidth,0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LGU,tewidth#,height#,depth#);
+ pair dz[];
+ z1l=(tewidth-gedeswidth+bearing,gedesouter); penpos1(thin,30);
+ z2r=(tewidth-bearing,Centerline); penpos2(3.0thin,0);
+ z3 =(x1,underouter); penpos3(thin,-30);
+ z4 =(x2,y3); dz1=(z4-z1);
+ z5 =(x2,y1); dz3=(z3-z5);
+ z6l=(bearing,y1-thin); penpos6(thin,+30);
+ z7r=(x6+5/8gedeswidth,y2); penpos7(3.0thin,0);
+ z8 =(x6,y3+thin); penpos8(thin,-30);
+
+ penstroke (z1e{dz1}..tension 1.2..z2e&
+ z2e..tension 1.2..{dz3}z3e) ifrotated;
+ penstroke (z6e{dz1}..tension 1.2..z7e&
+ z7e..tension 1.2..{dz3}z8e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_RGU,tewidth#,height#,depth#);
+ pair dz[];
+ z1r=(gedeswidth-bearing,gedesouter); penpos1(thin,-30);
+ z2l=(bearing,Centerline); penpos2(3.0thin,0);
+ z3 =(x1,underouter); penpos3(thin,30);
+ z4 =(x2,y3); dz1=(z4-z1);
+ z5 =(x2,y1); dz3=(z3-z5);
+ z6r=(tewidth-bearing,y1-thin); penpos6(thin,-30);
+ z7l=(x6-5/8gedeswidth,y2); penpos7(3.0thin,0);
+ z8 =(x6,y3+thin); penpos8(thin,30);
+ penstroke (z1e{dz1}..tension 1.2..z2e&
+ z2e..tension 1.2..{dz3}z3e) ifrotated;
+ penstroke (z6e{dz1}..tension 1.2..z7e&
+ z7e..tension 1.2..{dz3}z8e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/mcccscco.mf b/Master/texmf-dist/fonts/source/public/montex/mcccscco.mf
new file mode 100644
index 00000000000..db747db884a
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mcccscco.mf
@@ -0,0 +1,41 @@
+% File: mcccscco.mf
+% Based on: cyccscco.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+CYRA := oct"141";
+CYRB := oct"142";
+CYRV := oct"167";
+CYRG := oct"147";
+CYRD := oct"144";
+CYRE := oct"145";
+CYRYO := oct"353";
+CYRZH := oct"152";
+CYRZ := oct"172";
+CYRI := oct"151";
+CYRISHRT := oct"357";
+CYRK := oct"153";
+CYRL := oct"154";
+CYRM := oct"155";
+CYRN := oct"156";
+CYRO := oct"157";
+CYROTLD := oct"366";
+CYRP := oct"160";
+CYRR := oct"162";
+CYRS := oct"163";
+CYRT := oct"164";
+CYRU := oct"165";
+CYRY := oct"374";
+CYRF := oct"146";
+CYRH := oct"170";
+CYRSHHA := oct"150";
+CYRC := oct"143";
+CYRCH := oct"161";
+CYRSH := oct"262";
+CYRSHCH := oct"260";
+CYRHRDSN := oct"263";
+CYRERY := oct"171";
+CYRSFTSN := oct"264";
+CYREREV := oct"344";
+CYRYU := oct"265";
+CYRYA := oct"266";
diff --git a/Master/texmf-dist/fonts/source/public/montex/mccoding.mf b/Master/texmf-dist/fonts/source/public/montex/mccoding.mf
new file mode 100644
index 00000000000..331c5b11186
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mccoding.mf
@@ -0,0 +1,88 @@
+% File: mccoding.mf
+% Based on: cycoding.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+% This file is in parts modelled after the original Cyrillic
+% encoding. File but was rebuilt by O. Corff, September 1997
+%
+cyra := oct"141";
+cyrb := oct"142";
+cyrv := oct"167";
+cyrg := oct"147";
+cyrd := oct"144";
+cyre := oct"145";
+cyryo := oct"353";
+cyrzh := oct"152";
+cyrz := oct"172";
+cyri := oct"151";
+cyrishrt := oct"357";
+cyrk := oct"153";
+cyrl := oct"154";
+cyrm := oct"155";
+cyrn := oct"156";
+cyro := oct"157";
+cyrotld := oct"366";
+cyrp := oct"160";
+cyrr := oct"162";
+cyrs := oct"163";
+cyrt := oct"164";
+cyru := oct"165";
+cyry := oct"374";
+cyrf := oct"146";
+cyrh := oct"170";
+cyrshha := oct"150";
+cyrc := oct"143";
+cyrch := oct"161";
+cyrsh := oct"262";
+cyrshch := oct"260";
+cyrhrdsn := oct"263";
+cyrery := oct"171";
+cyrsftsn := oct"264";
+cyrerev := oct"344";
+cyryu := oct"265";
+cyrya := oct"266";
+
+CYRA := oct"101";
+CYRB := oct"102";
+CYRV := oct"127";
+CYRG := oct"107";
+CYRD := oct"104";
+CYRE := oct"105";
+CYRYO := oct"313";
+CYRZH := oct"112";
+CYRZ := oct"132";
+CYRI := oct"111";
+CYRISHRT := oct"317";
+CYRK := oct"113";
+CYRL := oct"114";
+CYRM := oct"115";
+CYRN := oct"116";
+CYRO := oct"117";
+CYROTLD := oct"326";
+CYRP := oct"120";
+CYRR := oct"122";
+CYRS := oct"123";
+CYRT := oct"124";
+CYRU := oct"125";
+CYRY := oct"334";
+CYRF := oct"106";
+CYRH := oct"130";
+CYRSHHA := oct"110";
+CYRC := oct"103";
+CYRCH := oct"121";
+CYRSH := oct"222";
+CYRSHCH := oct"220";
+CYRHRDSN := oct"223";
+CYRERY := oct"131";
+CYRSFTSN := oct"224";
+CYREREV := oct"304";
+CYRYU := oct"225";
+CYRYA := oct"226";
+
+CYRNo := oct"371";
+CYR_TOGROG := oct"372";
+CYR_togrog := oct"373";
+
+guillemotleft := oct"023";
+guillemotright := oct"024";
diff --git a/Master/texmf-dist/fonts/source/public/montex/mctextit.mf b/Master/texmf-dist/fonts/source/public/montex/mctextit.mf
new file mode 100644
index 00000000000..51e2c011081
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mctextit.mf
@@ -0,0 +1,44 @@
+% File: mctextit.mf
+% Based on: cytextit.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+% The Computer Modern Cyrillic Text Italic family
+
+let cmchar=message; % `|cmchar|' should precede each character
+
+mode_setup; font_setup;
+input mccoding;
+font_coding_scheme:="TeX text";
+
+font_slant slant; font_x_height x_height#;
+if monospace: font_normal_space 9u#; % no stretching or shrinking
+ font_quad 18u#;
+ font_extra_space 9u#;
+ letter_fit#:=letter_fit:=0;
+else: font_normal_space 6u#+2letter_fit#;
+ font_normal_stretch 3u#; font_normal_shrink 2u#;
+ font_quad 18u#+4letter_fit#;
+ font_extra_space 2u#; fi
+
+input itald; % italic digits from cmr
+input punct; % punctuation
+input accent; % accents
+input italp; % more punctuation
+input mcyru; % upper case (majuscules)
+input mcyitall; % lower case (minuscules)
+input mcyrsymb; % seven additional chars: < << > >> No. t== T==
+input cyrmoreu; % The umlauts O U (majuscules) and Buriad H
+input cyrmorei; % The umlauts o u (minuscules) and Buriad h
+
+if ligs>0: input comlig; fi % ligatures common with roman text
+if ligs<=1: input romsub; fi % substitutes for ligatures
+
+
+if not monospace:
+ k#:=-.5u#; kk#:=-1.5u#; kkk#:=-2u#; % three degrees of kerning
+fi
+
+input mcyrligs;
+
+bye.
diff --git a/Master/texmf-dist/fonts/source/public/montex/mcyccsc.mf b/Master/texmf-dist/fonts/source/public/montex/mcyccsc.mf
new file mode 100644
index 00000000000..39726943e4a
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mcyccsc.mf
@@ -0,0 +1,50 @@
+% File: mcyccsc.mf
+% Based on: cyccsc.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+% Caps and Small Caps in Computer Modern Cyrillic
+
+let cmchar=message; % `|cmchar|' should precede each character
+
+font_coding_scheme:=if ligs=0: "TeX typewriter text"
+ else: "TeX text without f-ligatures" fi;
+
+input mccoding;
+
+input mcyrligs; % ligatures defined for entering Cyrillic
+
+mode_setup; font_setup;
+input punct; % Computer Modern punctuation symbols
+input romanp; % more punctuation symbols
+input romand; % digits
+input mcyru; % upper case (majuscules)
+input cyrmoreu;
+input sym; % minus, etc.
+input mcyrsymb; % seven additional chars: < << > >> No. t== T==
+if ligs>0: input comlig; fi % ligatures common with italic
+
+font_slant slant; font_x_height x_height#;
+if monospace: font_normal_space 9u#; % no stretching or shrinking
+ font_quad 18u#;
+ font_extra_space 9u#;
+else: font_normal_space 6u#+2letter_fit#;
+ font_normal_stretch 3u#; font_normal_shrink 2u#;
+ font_quad 18u#+4letter_fit#;
+ font_extra_space 2u#;
+fi;
+
+%%% fine lower
+forsuffixes $= u, width_adj, cap_serif_fit, letter_fit,
+ body_height, cap_height, x_height, bar_height, comma_depth,
+ flare, cap_hair, stem, cap_stem, cap_curve, cap_ess,
+ cap_jut, beak_jut, beak, slab, cap_bar, cap_band, cap_notch_cut,
+ o, apex_o: $.#:=lower.$.#; endfor
+fudge:=lower.fudge;
+input mcccscco;
+font_setup; % now try again with |lower| settings
+input mcyru; % majuscules (in lowercase positions)
+input cyrmoreu;
+
+bye.
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/mcyitall.mf b/Master/texmf-dist/fonts/source/public/montex/mcyitall.mf
new file mode 100644
index 00000000000..a181475fd3c
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mcyitall.mf
@@ -0,0 +1,691 @@
+% File: mcyitall.mf
+% Based on: cyitall.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+% Computer Modern Cyrillic Italic lower case:
+
+cmchar "Cyrillic italic letter a";
+beginchar(cyra,9u#,x_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
+pos4(stem,0); x4=x0; y4+.5stem=vround .98h;
+x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
+rt x4r=hround(w-2.5u+.5stem);
+top y1r=h+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
+filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
+ & pulled_arc.e(2,3) & super_arc.e(3,0); % bowl
+x5=x4; x7=w; hook_out(5,6,7); % closing hook
+filldraw circ_stroke z4e--z5e; % stem
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6,7); endchar;
+
+cmchar "Cyrillic italic letter be";
+beginchar(cyrb,9u#,asc_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(curve,360);
+x1=x3=.5w; lft x2r=hround(1.5u-.5curve); x4=w-x2;
+top y1r=x_height+oo; y2=y4=.5[y1,y3]; bot y3r=-oo;
+filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl
+pos2'(hair,180); z2'r=z2r; pos5(vstem,90); pos5'(vstem,-90); z5'=z5;
+pos6(hair,0); rt x6r=hround(w-u); top y6=h; top y5r=vround .9h; x5=x1;
+filldraw stroke pulled_arc.e(6,5'); filldraw stroke pulled_arc.e(5,2');
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(1,2,3,4); endchar;
+
+cmchar "Cyrillic italic letter ve";
+beginchar(cyrv,9u#,x_height#,0);
+italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+adjust_fit(0,0); pickup fine.nib;
+numeric heavy_hair; heavy_hair=hround .2[hair,stem];
+pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+pos3(curve,180); pos4(vair,270); pos5(curve,0); pos6(vair,180);
+x0=rt x3l; rt x1r=hround(w-2.5u+.5heavy_hair); x2=x4=.5w;
+lft x3r=hround(1.5u-.5curve); x5r=good.x(w-u-eps); x6=x2;
+y0=y3=y6-.1u=bar_height; y1=.5[y0,y2];
+top y2r=h+oo; bot y4r=-oo; y5=vround .5bar_height;
+filldraw stroke z0e{right}...z1e{up}
+ ...pulled_arc.e(2,3) & pulled_arc.e(3,4) &
+ {{surerness:=hein_super; pulled_arc.e(4,5) & pulled_arc.e(5,6)}};
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6); endchar;
+
+cmchar "Cyrillic italic letter ghe";
+beginchar(cyrg,8u#,x_height#,0);
+italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos2(hair,140); pos3(vair,90); pos4(curve,0);
+pos5(vair,-90); pos5'(vair,90); pos6(curve,180);
+pos7(vair,270); pos8(hair,320);
+x7=w-x3=.5(w+u); x5=.52w; y5=.52h; z5'=z5;
+lft x6r=w-rt x4r-.5u=hround(1.5u-.5curve); x8r=w-x2=good.x(w-eps);
+x9=x8; x1=x2; top y3=h+oo; y4=.5[y5,y3]; bot y7r=-oo; y6=.5[y5,y7];
+top y8l=h-bot y2l=vround .5bar_height; y9=h-y1=bar_height;
+path p[]; p1=z3{left}..z2..z1; p2=z7{right}..z8..z9;
+filldraw stroke pulled_arc.e(5,4)
+ & pulled_arc.e(4,3)...{direction 1 of p1}z2e;
+filldraw stroke pulled_arc.e(5',6)
+ & pulled_arc.e(6,7)...{direction 1 of p2}z8e; % arc
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6); endchar;
+
+cmchar "Cyrillic italic letter de";
+beginchar(cyrd,9u#,asc_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos1(vair,150); pos2(vair,90); pos3(curve,0);
+pos4(vair,270); pos5(curve,180); pos6(vair,90);
+x1=x5l; x2=.5w-u; y1=h-.25u; top y2r=h+o; y3=.5[y2,y4];
+x6=x4=.5w; lft x5r=w-rt x3r=hround(1.5u-.5curve);
+top y6r=x_height+oo; y5=.5[y6,y4]; bot y4r=-oo;
+path p; p=pulled_super_arc.l(3,4)(superpull);
+numeric t; t=xpart(p intersectiontimes((x4,y5)--(x3r,y5)));
+pos7(thin_join,0); z7l=point t of p;
+filldraw stroke z1e...pulled_super_arc.e(2,3)(superpull)
+ & {{interim superness:=more_super; pulled_super_arc.e(3,4)(superpull)}}
+ & {{less_tense; pulled_super_arc.e(4,5)(superpull)}}
+ & pulled_super_arc.e(5,6)(superpull)
+ & z6e{right}...{direction t of p}z7e; % arc and bowl
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(1,2,3,4,5,6,7); endchar;
+
+cmchar "Cyrillic italic letter ie";
+beginchar(cyre,8u#,x_height#,0);
+italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+adjust_fit(0,0); pickup fine.nib;
+numeric heavy_hair; heavy_hair=hround .2[hair,stem];
+pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+pos3(curve,180); pos4(vair,270); pos5(hair,320);
+x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
+lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
+y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=h+oo; bot y4r=-oo;
+top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
+filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6); endchar;
+
+cmchar "Cyrillic italic letter ye";
+numeric dot_diam#,dot_diam;
+beginchar(cyryo,8u#,1.4x_height#,0);
+dot_diam=max(tiny.breadth,hround(max(dot_size,cap_curve)-2stem_corr));
+italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
+adjust_fit(0,0); pickup fine.nib;
+numeric heavy_hair,letter_h; letter_h=x_height; heavy_hair=hround .2[hair,stem];
+pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
+pos3(curve,180); pos4(vair,270); pos5(hair,320);
+x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
+lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
+y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=letter_h+oo; bot y4r=-oo;
+top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
+filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+pos7(dot_diam,0); pos8(dot_diam,90);
+x7=x8=2.5u; top y8r=h+1;
+if bot y8l<letter_h+o+slab: y8l:=min(y8r-eps,letter_h+o+slab+.5tiny); fi
+y7=.5[y8l,y8r]; dot(7,8); % left dot
+pos9(dot_diam,0); penpos10(y8r-y8l,90); y9=y10=y7; x9=x10=w-x7;
+dot(9,10); % right dot
+penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar;
+
+
+cmchar "Cyrillic italic letter zhe";
+beginchar(cyrzh,17u#,x_height#,0);
+italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
+adjust_fit(0,0); pickup fine.nib;
+numeric arc_width; arc_width=7u;
+pos0(flare,180); pos1(hair,180); pos2(vair,-90);
+pos3(curve,0); pos4(vair,90); pos5(hair,140);
+pos7(flare,0); pos8(hair,0); pos9(vair,90);
+pos10(curve,180); pos11(vair,270); pos12(hair,320);
+x2=x4=w-x9=.5(arc_width-u); x11=x9;
+lft x1r=w-rt x8r=min(lft x2,hround u)-eps;
+rt x3r=w-lft x10r=hround(arc_width-1.5u+.5curve);
+x5r=w-x12r=good.x(eps); x6=x5; x13=x12;
+y8=h-y1=.5[bar_height,h]; bot y2r=-oo; top y9r=h+oo;
+top y4r=h+oo; bot y11r=-oo; y3=h-y10=.5[y2,y4];
+bot y5l=h-top y12l=vround h-.5bar_height; y13=h-y6=bar_height;
+path p[]; p1=z4{left}..z5..z6; p2=z11{right}..z12..z13;
+filldraw stroke pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p1}z5e; % left arc
+filldraw stroke pulled_arc.e(9,10)
+ & pulled_arc.e(10,11)...{direction 1 of p2}z12e; % right arc
+bulb(2,1,0); bulb(9,8,7); % left and right bulb
+pos14(stem,0); pos15(stem,0); x14=x15=.5w; top y14=h; bot y15=0;
+filldraw stroke z14e--z15e; % stem
+penpos3'(bar,90); penpos10'(bar,90); z3'=z3; z10'=z10;
+fill stroke z3'e--z10'e; % bar
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15); endchar;
+
+cmchar "Cyrillic italic letter ze";
+beginchar(cyrz,8u#,x_height#,0);
+italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos1(hair,140); pos2(cap_band,90); pos4(vair,-90);
+x1r=good.x(eps); x0=x1; top y2r=h+o;
+bot y1l=vround h-.5bar_height; y0=h-bar_height;
+pos3(max(fine.breadth,curve-stem_corr),0);
+pos7(vair,-90); pos8(vair,-90); pos9(vair,90);
+x2=.45[2u,x10]; rt x3r=hround(w-u); x4=.45[x1,x10];
+pos10(curve,0); rt x10r=hround(w-.5u); lft x8=.5w-u;
+y3=.35[top y7l,bot y2l]; top y8l=vround(.54h+.5vair); z8r=z9l;
+x7=1/3[x8,x3l]; z7=z8+whatever*(150u,h);
+pos5'(hair,-180); pos5(flare,-180);
+bot y4r=0; rt x5l=hround 2u; z5r=z5'r;
+y10=.45[bot y8r,top y4l]; y5=max(good.y .95(h-y1),y4l+eps);
+(x2l',y2l)=whatever[z2r,z1l]; x2l:=max(x2l',x2l-.5u);
+(x4l',y4l)=whatever[z4r,z5l]; x4l:=max(x4l',x4l-.5u);
+path p; p=z0..z1..{right}z2;
+filldraw stroke z1e{direction 1 of p}
+ ...pulled_arc.e(2,3)
+ & z3e{down}...z7e---z8e; % upper bowl
+filldraw stroke z9e---pulled_arc.e(9,10)
+ & pulled_super_arc.e(10,4)(.5superpull); % lower bowl
+bulb(4,5',5); %bulb
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,7,8,9,10,11,12,13); endchar;
+
+cmchar "Cyrillic italic letter i";
+beginchar(cyri,9.5u#,x_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+hook_in(0,1,2)(skewed); % opening hook
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
+x5=x6=x7; x9=w; hook_out(7,8,9); % closing hook
+y3=.7[y4,y5]; bot y4r=-oo; y5=.57h; y6+.5stem=h;
+filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+filldraw circ_stroke z6e--z7e; % right stem
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "Cyrillic italic letter short i";
+beginchar(cyrishrt,9.5u#,x_height#+3.5u#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+hook_in(0,1,2)(skewed); % opening hook
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
+x5=x6=x7; x9=w; hook_out(7,8,9); % closing hook
+y3=.7[y4,y5]; bot y4r=-oo; y5=.57x_height; y6+.5stem=x_height;
+filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+filldraw circ_stroke z6e--z7e; % right stem
+penpos10(hair-fine,-90); penpos11(hair-fine,-180); penpos12(.5flare,-180);
+penpos13(hair-fine,-90); penpos14(hair-fine,0); penpos15(.5flare,0);
+x10=.5[x11,x14]; x11=.5w-2u; x14=w-x11;
+y10=y13=x_height+u; y11=y14=h-.5u; z13=z10;
+bulb(10,11,12); bulb(13,14,15); % bulbs
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13); endchar;
+
+cmchar "Cyrillic italic letter ka";
+beginchar(cyrk,9.5u#,x_height#,0);
+italcorr x_height#*slant;
+adjust_fit(0,0); pickup fine.nib;
+x0=0; x1=x2; pos2(stem,0); lft x2l=hround(2.5u-.5stem); y2-.5stem=-oo;
+hook_in(0,a,1); % opening hook
+filldraw circ_stroke z2e--z1e; % left stem
+pos3(vair,90); x3=x1; y3=bar_height;
+pos4(vair,90); x4=w-2u; top y4r=x_height+oo;
+filldraw stroke z3e{right}..{right}z4e; % upper diagonal
+pos5(hair,0); pos6(flare,0);
+rt x5r=hround(w-.5u); y5+.5flare=vround(bot y4l-.03x_height);
+bulb(4,5,6); % bulb
+pos7(stem,0); pos8(vair,90); pos9(hair,180);
+x9+.5hair=hround(w+.5hair-eps); y9=1/3x_height;
+lft x7l=hround(w-2.75u-.5stem); y7=1/2y3; x8=w-1.2u; bot y8l=-oo;
+filldraw stroke z3e{right}...z7e{down}
+ ...z8e{right}...{up}z9e; % lower diagonal
+math_fit(0,1/3x_height#*slant+.5hair#+.5u#);
+penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "Cyrillic italic letter el";
+beginchar(cyrl,9u#,x_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
+x6=x7; x9=w; hook_out(7,8,9); % closing hook
+top y6=top y0=h; x0=lft x6r;
+filldraw stroke z6e--z7e; % right stem
+pickup tiny.nib; pos0(hair,-90); pos1(hair,0); pos2(hair,0);
+y1=.5h; rt x1r=hround(w-5.25u); x2=x1; y2=.21h;
+pos3(vair,-90); pos4(hair,-180); pos5(flare,-180);
+bot y3r=0; x3=.5[x4,x2]; y5=.25h; rt x5l=hround 2u; z5r=z4r;
+filldraw stroke pulled_arc.e(0,1) & z1e--z2e & super_arc.e(2,3); % arc
+bulb(3,4,5); % bulb
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "Cyrillic italic letter em";
+beginchar(cyrm,12u#,x_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+numeric stem[]; % thicknesses of the four strokes
+stem1=hround(fudged.stem-4stem_corr);
+stem2=hround(fudged.hair-stem_corr);
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem); top y6=h;
+x6=x7; x9=w; hook_out(7,8,9); % closing hook
+filldraw stroke z6e--z7e; % right stem
+pickup tiny.nib; pos1(hair,0); pos2(hair,0);
+top y1=h; rt x1r=hround(w-8.25u); x2=x1; y2=.21h;
+pos3(vair,-90); pos4(hair,-180); pos5(flare,-180);
+bot y3r=0; x3=.5[x4,x2]; y5=.25h; rt x5l=hround 2u; z5r=z4r;
+filldraw stroke z1e--z2e & super_arc.e(2,3); % left stem and arc
+bulb(3,4,5); % bulb
+penpos10(stem1,0); penpos11(stem1,0); penpos12(stem2,0); penpos13(stem2,0);
+x10l=x1; x11l=x12l; x13=lft x6l; x11-x10=x13-x12; y10=y13=h; y11=y12;
+y11=0; z0=whatever[z10r,z11r]=whatever[z12l,z13l];
+fill z10l..{z11-z10}diag_in(10l,11l,1,11r)
+ ..diag_out(12l,1,12r,13r){z13-z12}
+ ..z13r--diag_out(13r,1,13l,12l){z12-z13}..{z12-z13}z0{z10-z11}
+ ..{z10-z11}diag_in(11r,10r,1,10l)--cycle; % diagonals
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13); endchar;
+
+cmchar "Cyrillic italic letter en";
+beginchar(cyrn,9.5u#,x_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+x0=0; x1=x2; pos2(stem,0); lft x2l=hround(2.5u-.5stem); y2-.5stem=-oo;
+hook_in(0,a,1); % opening hook
+filldraw circ_stroke z2e--z1e; % left stem
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem); y6+.5stem=h;
+x6=x7; x9=w; hook_out(7,8,9); % closing hook
+filldraw circ_stroke z6e--z7e; % right stem
+penpos10(bar,90); penpos11(bar,90); x10=x1; x11=x6; y10=y11=.5h;
+fill stroke z10e--z11e; % bar
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
+
+cmchar "Cyrillic italic letter o";
+beginchar(cyro,9u#,x_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(curve,360);
+x1=x3=.5w; lft x2r=hround(1.5u-.5curve); x4=w-x2;
+top y1r=h+oo; y2=y4=.5[y1,y3]; bot y3r=-oo;
+filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(1,2,3,4); endchar;
+
+cmchar "Cyrillic italic letter pe";
+beginchar(cyrp,10u#,x_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib;
+x0=0; x1=x2; pos2(stem,0); lft x2l=hround(2.5u-.5stem); y2-.5stem=-oo;
+hook_in(0,a,1); % opening hook
+filldraw circ_stroke z2e--z1e; % left stem
+x4+.5stem=hround(w-2.5u+.5stem); x5=x4-.25u; ital_arch(2,3,4); % arch
+x7=w; hook_out(5,6,7)(skewed); % closing hook
+filldraw stroke z4e{down}..{-u,-x_height}z5e; % right stem
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,a,1,2,3,4,5,6,7); endchar;
+
+cmchar "Cyrillic italic letter er";
+beginchar(cyrr,9u#,x_height#,desc_depth#);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+x0=0; x2-.5stem=hround(2.5u-.5stem); hook_in(0,1,2); % opening hook
+pos4(hair,-180); pos5(vair,-90); pos6(curve,0); pos7(vair,90);
+x4=x2; rt x6r=hround(w-1.5u+.5curve); x5=x7=.5[x4,x6];
+bot y5r=-oo; top y7r=h+oo; y4=y6=.5[y5,y7];
+filldraw stroke super_arc.e(4,5) & pulled_arc.e(5,6)
+ & pulled_arc.e(6,7) & super_arc.e(7,4); % bowl
+pickup tiny.nib; pos2'(stem,0); pos3(stem,0);
+z2=z2'; x3=x2; bot y3=-d; filldraw stroke z2'e--z3e; % stem
+dish_serif(3,2',a,1/3,.75jut,b,1/3,jut); % serif
+math_fit(-min(2/3x_height#*slant-.5hair#-.5u#,
+ 2u#-.5stem#-desc_depth#*slant),ic#);
+penlabels(0,1,2,3,4,5,6,7); endchar;
+
+cmchar "Cyrillic italic letter es";
+beginchar(cyrs,8u#,x_height#,0);
+italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos0(flare,0); pos1(hair,0); pos2(vair,90);
+pos3(curve,180); pos4(vair,270); pos5(hair,320);
+x2=x4=.5(w+u); rt x1r=max(rt x2,hround(w-u))+eps;
+lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
+y1=.5[bar_height,h]; top y2r=h+oo; bulb(2,1,0); % bulb
+bot y4r=-oo; y3=.5[y2,y4]; top y5l=vround .5bar_height; y6=bar_height;
+path p; p=z4{right}..z5..z6;
+filldraw stroke pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6); endchar;
+
+cmchar "Cyrillic italic letter te";
+beginchar(cyrt,15u#,x_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(if monospace:-1.5u#,-2u# else: 0,0 fi); pickup fine.nib;
+numeric shaved_stem; shaved_stem=mfudged.stem;
+save stem; stem=shaved_stem;
+pos2(stem,0); x1=x2;
+if monospace: pos1(stem,0); lft x1l=hround(2.5u-.5stem); top y1=h;
+else: x0=0; lft x2l=hround(2.5u-.5stem);
+ hook_in(0,a,1); fi % opening hook
+y2-.5stem=-oo; filldraw circ_stroke z2e--z1e; % left stem
+x4+.5stem=hround(.5w+.5stem); ital_arch(2,3,4); % left arch
+pos5(stem,0); y5=y2; x5=x4;
+filldraw circ_stroke z5e--z4e; % middle stem
+x7+.5stem=hround(w-2.5u+.5stem);
+x8=x7-.25u; ital_arch(5,6,7); % right arch
+if monospace: pos9(vair,90); x9=good.x .5[x8,w]; bot y9l=0; y8=1/3h;
+ pos8(stem,0); filldraw stroke z8e{-u,-x_height}...{right}z9e; % terminal
+else: x9=w; hook_out(8,b,9)(skewed); fi % closing hook
+filldraw stroke z7e{down}..{-u,-x_height}z8e; % right stem
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,a,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "Cyrillic italic letter ef";
+beginchar(cyrf,12u#,asc_height#,desc_depth#);
+italcorr asc_height#*slant+.75u#;
+adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
+numeric theta; z88=(.5w-.5u,h); z89=(.5w+.5u,-d); theta=angle(z88-z89);
+pos0(flare,0); pos1(hair,0); pos2(vair,90);
+pos3(.5[hair,stem],180); pos4(stem,theta+90);
+pos5(stem,theta-90); pos6(.5[hair,stem],0);
+pos7(vair,-90); pos8(hair,-180); pos9(flare,-180);
+rt x1r=hround(w-2u); lft x8r=hround 2u; x2=.6[x1,x4]; x7=.6[x8,x5];
+y9-.5flare=vround -.85d; y2-y0=y9-y7; top y2r=h+oo; bot y7r=-d-oo;
+y4=.15[x_height,h]; y5=.4[-d,y4];
+z4=whatever[z88,z89]; z5=whatever[z88,z89];
+x3=.8[x2+x4-x88,x88]; x6=.8[x7+x5-x89,x89]; y3=.8[y4,y2]; y6=.8[y5,y7];
+bulb(2,1,0); bulb(7,8,9); % bulbs
+filldraw stroke z2e{left}...z3e...{z89-z88}z4e; % upper arc
+filldraw z4r--z5l--z5r--z4l--cycle; % stem
+filldraw stroke z5e{z89-z88}...z6e...{left}z7e; % lower arc
+penpos10(hair,180); penpos11(vair,90); penpos12(curve,0);
+penpos13(vair,-90); penpos14(hair,0); penpos15(vair,90);
+penpos16(curve,180); penpos17(vair,270);
+x10=x14=.5w; y11r=y15r=x_height+o; y12=y16=.5[y11l,y13l]; y13r=y17r=-o;
+y10=y14=.5x_height; x11r=x13r=w-x15r=w-x17r=.5w+1.75u;
+x12r=w-x16r=hround(w-.5u);
+fill stroke super_arc.e(10,11) & pulled_arc.e(11,12)
+ & pulled_arc.e(12,13) & super_arc.e(13,10);
+fill stroke super_arc.e(14,15) & pulled_arc.e(15,16)
+ & pulled_arc.e(16,17) & super_arc.e(17,14);
+math_fit(desc_depth#*slant+u#,x_height#*slant);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,88,89); endchar;
+
+cmchar "Cyrillic italic letter u";
+beginchar(cyru,8.5u#,x_height#,desc_depth#);
+italcorr x_height#*slant+.5stem#-u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+hook_in(0,1,2)(skewed); % opening hook
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-1.5u+.5stem);
+pos7(stem,0); pos8(vair,-90);
+y3=.7[y4,y5]; bot y4r=-oo; y5=.57h; y6+.5stem=h;
+y7=0; bot y8r=-d-oo; x5=x6=x7; x8=.5w;
+pos9(hair,-180); pos10(flare,-180); y9=-.5d;
+lft x9r=hround(2.75u-.5flare); bulb(8,9,10); % bulb
+filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+filldraw circ_stroke z6e---z7e...{left}z8e; % right stem and link
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#-1/3x_height#*slant);
+penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar;
+
+cmchar "Cyrillic italic letter xa";
+beginchar(cyrh,6.5u#+max(1.5u#,flare#),x_height#,0);
+italcorr max(1/3x_height#*slant+.5hair#+.5u#,x_height#*slant+.25u#);
+adjust_fit(0,0); pickup fine.nib;
+pos0(hair,180); pos1(vair,90); pos2(stem,0);
+pos3(stem,-180); pos4(vair,-90); pos5(hair,0);
+y0=y2=2/3h; y3=y5=1/3h; top y1r=h+oo; bot y4r=-oo;
+rt x2r=hround(.5w+.5stem-eps); x2=x3;
+x0-.5hair=hround-.5hair; x5+.5hair=hround(w+.5hair-eps);
+x1=.5[x0,x2]; x4=.5[x3,x5];
+filldraw stroke z0e{up}...pulled_arc.e(1,2); % opening hook
+filldraw z2l--z3r--z3l--z2r--cycle; % stem
+filldraw stroke pulled_arc.e(3,4)...{up}z5e; % closing hook
+pos3'(hair,180); pos6(hair,180); pos7(vair,90);
+pos8(hair,0); pos9(flare,0);
+x3'l=x6l=x3l; y3'=y3; y6=3/4h; x7=.5[x8,x2]; top y7r=h+oo;
+rt x8r=hround(w-.25u); y8+.5flare=vround(bot y7l-.03x_height);
+filldraw stroke z3'e---z6e...{right}z7e; bulb(7,8,9); % upper link and bulb
+pos2'(hair,0); pos16(hair,0); pos17(vair,-90);
+pos18(hair,-180); pos19(flare,-180);
+x2'l=x16l=x2l; y2'=y2; y16=1/4h; x17=.5[x18,x3]; bot y17r=-oo;
+lft x18r=hround.25u; y18-.5flare=vround(top y17l+.03x_height);
+filldraw stroke z2'e---z16e...{left}z17e; bulb(17,18,19); % lower link and bulb
+math_fit(0,ic#); penlabels(0,1,2,3,4,5,6,7,8,9,16,17,18,19); endchar;
+
+cmchar "Cyrillic italic letter tse";
+beginchar(cyrc,9.5u#,x_height#,desc_depth#-u#);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+hook_in(0,1,2)(skewed); % opening hook
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
+x5=x6=x7; x9=w;
+pos7(stem,0); pos8(vair,90);
+x9:=hround(x9+.5hair-eps)-.5hair; pos9(hair,180);
+y7=1/4x_height; bot y8l=-oo; y9=1/3x_height; x8=x7+1.5u;
+path p,p.l,p.r;
+forsuffixes $=r,l: p.$=z7${down}...z8${right}
+ ...{x9-(x7+2.5u),x_height}z9$; endfor;
+p=p.r--reverse p.l--cycle;
+filldraw p; % closing hook;
+y3=.7[y4,y5]; bot y4r=-oo; y5=.57h; y6+.5stem=h;
+filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+filldraw circ_stroke z6e--z7e; % right stem
+pos10(stem,-140); pos11(stem,-150);
+x11r=x10; x10r=.9[x7,x8]; x12=x8;
+y11=.5[y12,y10]; y10=-.25d; bot y12=-d;
+filldraw stroke (subpath (1.5,3.5) of p)..z10e..z11e..z12;
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12); endchar;
+
+cmchar "Cyrillic italic letter che";
+beginchar(cyrch,9.5u#,x_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+x0=0; x2=x3+.2u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+hook_in(0,1,2)(skewed); % opening hook
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
+pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
+x5=x6=x7; x9=w; hook_out(7,8,9); % closing hook
+y3=.7[y4,y5]; bot y4r=.325h; y5=.7h; y6+.5stem=h;
+filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+filldraw circ_stroke z6e--z7e; % right stem
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "Cyrillic italic letter sha";
+beginchar(cyrsh,14.5u#,x_height#,0);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+hook_in(0,1,2)(skewed); % opening hook
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); pos6(stem,-180); pos7(stem,-180);
+pos8(vair,-90); pos9(hair,0); pos10(stem,0);
+x4=.5[x3,x5]; x6=.5w; x8=.5[x5,x9]; rt x10r=hround(w-2.5u+.5stem);
+x5=x6=x7; x9=x10=x11; x13=w; hook_out(11,12,13); % closing hook
+y3=.7[y4,y5]; bot y4r=bot y8r=-oo; y5=y9=.57h; y7=y11;
+y6+.5stem=h; y10=y6;
+filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+filldraw circ_stroke z6e--z7e
+ ...super_arc.e(7,8)...{up}z9e; % middle stem and arc
+filldraw circ_stroke z10e--z11e; % right stem
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13); endchar;
+
+cmchar "Cyrillic italic letter shcha";
+beginchar(cyrshch,14.5u#,x_height#,desc_depth#-u#);
+italcorr 1/3x_height#*slant+.5hair#+.5u#;
+adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
+x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
+hook_in(0,1,2)(skewed); % opening hook
+pos2'(stem,-180); z2'=z2;
+pos4(vair,-90); pos5(hair,0); pos6(stem,-180); pos7(stem,-180);
+pos8(vair,-90); pos9(hair,0); pos10(stem,0);
+x4=.5[x3,x5]; x6=.5w; x8=.5[x5,x9]; rt x10r=hround(w-2.5u+.5stem);
+x5=x6=x7; x9=x10=x11; x13=w;
+pos11(stem,0); pos12(vair,90);
+x13:=hround(x13+.5hair-eps)-.5hair; pos13(hair,180);
+y11=1/4x_height; bot y12l=-oo; y13=1/3x_height; x12=x11+1.5u;
+path p,p.l,p.r;
+forsuffixes $=r,l: p.$=z11${down}...z12${right}
+ ...{x13-(x11+2.5u),x_height}z13$; endfor;
+p=p.r--reverse p.l--cycle;
+filldraw p; % closing hook;
+y3=.7[y4,y5]; bot y4r=bot y8r=-oo; y5=y9=.57h; y7=y11;
+y6+.5stem=h; y10=y6;
+filldraw stroke z2'e{-u,-x_height}
+ ...super_arc.e(3,4)...{up}z5e; % left stem and arc
+filldraw circ_stroke z6e--z7e
+ ...super_arc.e(7,8)...{up}z9e; % middle stem and arc
+filldraw circ_stroke z10e--z11e; % right stem
+pos14(stem,-140); pos15(stem,-150);
+x15r=x14; x14r=.9[x11,x12]; x16=x12;
+y15=.5[y16,y14]; y14=-.25d; bot y16=-d;
+filldraw stroke (subpath (1.5,3.5) of p)..z14e..z15e..z16;
+math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); endchar;
+
+cmchar "Cyrillic italic letter soft_sign";
+beginchar(cyrsftsn,8u#,x_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup tiny.nib;
+numeric x_bowl; x_bowl=2/3h;
+pos1(stem,0); pos2(stem,0); x1=x2;
+lft x1l=hround(1.5u-.5stem); top y1=h; y2=.5x_bowl;
+filldraw stroke z1e--z2e; % stem
+sloped_serif.l(1,2,a,1/3,jut,serif_drop); % serif
+pickup fine.nib; pos2'(stem,-180); pos3(vair,-90);
+pos4(curve,0); pos5(vair,90); pos0(hair,180);
+z0=z2=z2'; x3=x5=.5[x2,x4]; rt x4r=hround(8u-1.5u+.5curve);
+bot y3r=-oo; top y5r=x_bowl+oo; y4=y2;
+filldraw stroke pulled_arc.e(2',3) & pulled_arc.e(3,4)
+ & pulled_arc.e(4,5) & super_arc.e(5,0); % bowl
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5); endchar;
+
+cmchar "Cyrillic italic letter hard_sign";
+beginchar(cyrhrdsn,12u#,x_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup tiny.nib;
+numeric x_bowl; x_bowl=.52h;
+pos1(vair,0); pos2(stem,0); x1=x2;
+lft x1l=hround(5.5u-.5stem); top y1=h+oo; y2=.5x_bowl;
+filldraw stroke z1e--z2e; % stem
+pickup fine.nib; pos2'(stem,-180); pos3(vair,-90);
+pos4(curve,0); pos5(vair,90); pos0(hair,180);
+z0=z2=z2'; x3=x5=.5[x2,x4]; rt x4r=hround(w-1.5u+.5curve);
+bot y3r=-oo; top y5r=x_bowl+oo; y4=y2;
+filldraw stroke pulled_arc.e(2',3) & pulled_arc.e(3,4)
+ & pulled_arc.e(4,5) & super_arc.e(5,0); % bowl
+pos1'(vair,0); pos6(vstem,-90); pos6'(vstem,90); pos7(vair,180);
+z1'=z1; x6=.5[x7,x1]; top y6l=h+oo; z6'=z6; lft x7r=0; y7=h-1.75u;
+filldraw stroke pulled_arc.e(1',6);
+filldraw stroke pulled_arc.e(6',7);
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6,7); endchar;
+
+cmchar "Cyrillic italic letter yeru";
+beginchar(cyrery,12u#,x_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup tiny.nib;
+numeric x_bowl; x_bowl=2/3h;
+pos1(stem,0); pos2(stem,0); x1=x2;
+lft x1l=hround(1.5u-.5stem); top y1r=h+oo; y2=.5x_bowl;
+filldraw stroke z1e--z2e; % stem
+sloped_serif.l(1,2,a,1/3,jut,serif_drop); % serif
+pickup fine.nib; pos2'(stem,-180); pos3(vair,-90);
+pos4(curve,0); pos5(vair,90); pos0(hair,180);
+z0=z2=z2'; x3=x5=.5[x2,x4]; rt x4r=hround(8u-1.5u+.5curve);
+bot y3r=-oo; top y5r=x_bowl+oo; y4=y2;
+filldraw stroke pulled_arc.e(2',3) & pulled_arc.e(3,4)
+ & pulled_arc.e(4,5) & super_arc.e(5,0); % bowl
+pickup fine.nib; x7-.5stem=hround(9.5u-.5stem); x9=w;
+hook_out(7,8,9); % closing hook
+pickup tiny.nib; pos6(stem,0); pos7'(stem,0); z7'=z7;
+top y6=h; x6=x7; filldraw stroke z6e--z7e; % stem
+sloped_serif.l(6,7,b,1/3,jut,serif_drop); % serif
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "Cyrillic italic letter e";
+beginchar(cyrerev,8u#,x_height#,0);
+italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
+adjust_fit(0,0); pickup fine.nib;
+pos0(flare,180); pos1(hair,180); pos2(vair,-90);
+pos3(curve,0); pos4(vair,90); pos5(hair,140);
+x2=x4=.5(w-u); lft x1r=.25u;
+rt x3r=hround(w-1.5u+.5curve); x5r=good.x(eps); x6=x5;
+y1=.52[0,h-bar_height]; bot y2r=-oo; bulb(2,1,0); % bulb
+top y4r=h+oo; y3=.5[y2,y4]; bot y5l=vround h-.5bar_height; y6=h-bar_height;
+path p; p=z4{left}..z5..z6;
+filldraw stroke pulled_arc.e(2,3)
+ & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc
+penpos7(bar,90); penpos8(bar,90);
+x7=x3; y7=.52h; y8=y7; x8=.5w-hround(u);
+fill stroke z7e--z8e; % bar
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(0,1,2,3,4,5,6); endchar;
+
+cmchar "Cyrillic italic letter yu";
+beginchar(cyryu,13u#,x_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0); pickup fine.nib;
+x0=0; x1=x2; pos2(stem,0); lft x2l=hround(2.5u-.5stem); y2-.5stem=-oo;
+hook_in(0,a,1); % opening hook
+filldraw circ_stroke z2e--z1e; % left stem
+pos3(vair,90); pos4(curve,180); pos5(vair,270); pos6(curve,360);
+x3=x5=w-4.5u; rt x6r=hround(w-1.5u+.5curve); x4=w-(x6-4u);
+top y3r=h+oo; y4=y6=.5[y3,y5]; bot y5r=-oo;
+filldraw stroke pulled_arc.e(3,4) & pulled_arc.e(4,5)
+ & pulled_arc.e(5,6) & pulled_arc.e(6,3); % bowl
+penpos4'(bar,90); penpos7(bar,90); z4'=z4; x7=x1; y7=y4';
+fill stroke z4'e--z7e; % bar
+math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
+penlabels(1,2,3,4,4',5,6,7); endchar;
+
+cmchar "Cyrillic italic letter ya";
+beginchar(cyrya,8u#+.5max(2u#,curve#),x_height#,0);
+italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
+adjust_fit(0,0);
+pickup tiny.nib; pos1(stem',0); pos2(stem',0);
+rt x1r=rt x2r=w-hround(2.5u-.5stem'); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+penpos3(cap_band,90); penpos4(cap_band,90);
+penpos5(curve if hefty:-3stem_corr fi,180);
+penpos6(vair,-90); penpos7(vair,-90);
+z3r=top z1; y4=y3; y5=.5[y4l,y6l]; y6=y7;
+x7=x2; y7=.5h; x4=x6;
+if serifs: x4=.5w+.5u; x5r=hround(1.5u);
+else: x4=.5w-.5u; x5l=hround(.75u); fi
+x4l:=x6l:=x4+.125curve;
+fill stroke z3e..pulled_arc.e(4,5) & pulled_arc.e(5,6)..z7e; % lobe
+pos6'(vair,-90); pos0(stem,0);
+pos8(curve,0); pos9(vair,-90); pos10(hair,180);
+z6'=z6; rt x0r=rt x8r=hround(x5+2/3u+.5curve);
+y8=1/3[y2,y7]; y0=3/5[y2,y7]; x9=.5[x8l,x10r];
+bot y9l=0; lft x10r=hround(.05u); y10=1/4[y2,y7];
+filldraw stroke z6'e{left}..z0e---z8e....z9e{left}..z10e{up}; % tail
+nodish_serif(1,2,a,1/3,.5jut,b,1/3,jut); % upper serif
+dish_serif(2,1,c,1/3,jut,d,1/3,jut); % lower serif
+math_fit(-min(2/3x_height#*slant-.5hair#-.5u#,
+ 2u#-.5stem#-desc_depth#*slant),ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar;
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/mcyrill.mf b/Master/texmf-dist/fonts/source/public/montex/mcyrill.mf
new file mode 100644
index 00000000000..4e84505c410
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mcyrill.mf
@@ -0,0 +1,295 @@
+% File: mcyrill.mf
+% Based on: cyrillic.mf
+% Modified by: Oliver Corff
+% Date: December 1998, Ulaanbaatar, Beijing, Shenyang, Berlin
+%
+%
+% The Computer Modern Cyrillic family of fonts (by N. Glonti)
+%
+%
+let cmchar=message; % `|cmchar|' should precede each character
+
+font_coding_scheme:="TeX text";
+input mccoding;
+
+mode_setup; font_setup;
+
+
+input punct; % Computer Modern common punctuation symbols
+input romanp; % more common symbols
+input romand; % numbers
+input accent; % useful accents
+input mcyru; % upper case (majuscules)
+input mcyrl; % lower case (minuscules)
+input mcyrsymb; % seven additional chars: < << > >> No. T== t==
+input cyrmoreu; % Umlaut O U and Buriad H
+input cyrmorel; % Umlaut o u and Buriad h
+
+if ligs>0 : input comlig fi; % ligatures common with roman text
+if ligs<=1: input romsub fi;
+
+font_slant slant;
+font_x_height x_height#;
+if monospace: font_normal_space 9u#; % no stretching or shrinking
+ font_quad 18u#;
+ font_extra_space 9u#;
+else: font_normal_space 6u#+2letter_fit#;
+ font_normal_stretch 3u#; font_normal_shrink 2u#;
+ font_quad 18u#+4letter_fit#;
+ font_extra_space 2u#;
+
+ k#:=.25u#; kk#:=.5u#; kkk#:=0.75u#; kkkk#:=-1.25u#;
+
+%k#:=.5u#; kk#:=.75u#; kkk#:=1.5u#; kkkk#:=-2u#;
+%k#:=-.5u#; kk#:=-1.5u#; kkk#:=-2u#; % three degrees of kerning
+%k#:=2u#; kk#:=u#; kkk#:=3u#; kkkk#:=-5u#;
+
+ ligtable cyra: % a
+ cyrya kern -kk#, % ya
+ cyru kern -kk#, % u
+ cyrd kern k#, % d
+ cyrch kern -kk#; % ch
+
+ ligtable cyrb: % b
+ cyrv kern -k#, % ve
+ cyrg kern -k#, % ghe
+ cyre kern k#, % e
+ cyrzh kern -k#, % zhe
+ cyri kern -k#, % i
+ cyrk kern -k#, % ka
+ cyrm kern -k#, % em
+ cyrn kern -k#, % en
+ cyrp kern -k#, % pe
+ cyrr kern -k#, % er
+% cyrf kern -k#, % (was -kk# AS) f
+ cyrh kern -k#, % x
+% cyro kern -k#, % o (-kkkk -> -kkk AS)
+ cyrs kern -k#, % s (-kkkk -> -kkk AS)
+ cyru kern -k#, % u
+ cyrsftsn kern -k#, % soft_sign
+ cyrery kern -k#, % yeru
+ cyrshch kern -k#, % shcha
+ cyrc kern -k#; % tse
+
+ ligtable cyrc: cyrsh: cyrshch:
+ cyrn: cyrm: cyrp:
+ cyrb kern -k#, % be
+ cyro kern -k#, % o
+ cyre kern -k#, % es
+ cyrf kern -k#, % ef
+ cyrs kern -k#, % ie
+ cyrd kern k#; % d
+
+ ligtable cyrd: % d
+ cyrb kern -kkk#, % be
+ cyro kern -kkk#, % o
+ cyre kern -kkk#, % es
+ cyrf kern -kk#, % ef
+ cyrs kern -kkk#, % ie
+ cyrd kern kk#; % d
+
+ ligtable cyre: % e
+ cyrb kern kkk#, % b
+ cyrd kern -kk#, % d
+% cyre kern -k#, % e
+ cyrzh kern -kk#, % e
+% cyrf kern -k#, % f
+ cyrh kern -kk#, % x
+% cyro kern -k#, % o
+% cyrs kern -k#, % s
+% cyrt kern -k#, % t
+ cyru kern -k#; % u
+
+ ligtable cyrf: % f
+ cyre kern k#, % e
+ cyrh kern -kk#, % x
+ cyri kern -kk#, % i
+ cyrn kern -k#, %
+ cyrp kern -k#, %
+ cyrr kern -k#, %
+ cyro kern k#, % o
+ cyrs kern k#, % s
+ cyrt kern -k#; % t
+
+ ligtable cyrg: % g
+ cyrb kern -k#, % b
+ cyre kern -kkk#, % e
+ cyro kern -kkk#, % o
+ cyrs kern -kkk#; % s
+
+ ligtable cyrh: % kh
+ cyre kern -kk#, % e
+ cyro kern -kk#, % o
+ cyrf kern -kk#, %
+ cyrs kern -kk#; % s
+
+ ligtable cyrk: % k
+ cyre kern -kk#, % e
+ cyrf kern -kk#, % f
+ cyro kern -kk#, % o
+ cyrs kern -kk#, % s
+ cyru kern -k#; % u
+
+ ligtable cyrl: % l
+ cyre kern -kk#, % e
+ cyrf kern -kk#, % f
+ cyro kern -kk#, % o
+ cyrs kern -kk#; % s
+
+ ligtable cyro: % o
+% cyrb kern -k#, % b (was kkkk AS)
+ cyrv kern -kk#, % ve
+ cyrd kern -kkk#, % de
+% cyre kern -k#, % e (was kkkk AS)
+ cyrh kern -kk#, % x
+% cyro kern -k#, % o (was kkkk AS)
+% cyrs kern -kk#, % s (was kkkk AS)
+ cyrm kern -kk#, %
+ cyrn kern -kk#, %
+ cyrp kern -kk#, %
+ cyri kern -kk#, %
+ cyrishrt kern -kk#, %
+ cyrk kern -kk#, %
+ cyrr kern -kk#, %
+ cyrsh kern -kk#, %
+ cyrshch kern -kk#, %
+ cyrch kern -kkk#, %
+ cyrzh kern -kk#; % zh
+
+ ligtable cyrr: % p
+% cyrb kern -k#, % b (kkkk -> -kkk AS)
+% cyre kern -k#, % e(kkkk -> -kkk AS)
+ cyrh kern -kk#, % x
+% cyro kern -k#, % o (kkkk -> -kkk AS)
+% cyrs kern -kk#, % s (kkkk -> -kkk AS)
+ cyrt kern -k#; % t
+
+% ligtable cyrs: % s
+% cyrb kern -k#, % b
+% cyre kern -k#, % e
+% cyrf kern -k#, % f
+% cyro kern -k#, % o
+% cyrs kern -k#; % s
+ ligtable cyrt: % t
+ cyrn kern -k#, %
+ cyrs kern -k#, %
+ cyre kern -k#, % e
+ cyro kern -k#; % o
+ ligtable cyru: % u
+ cyrd kern -k#, % d
+ cyrl kern -kk#, %
+ cyra kern -k#; % s
+ ligtable cyrzh: % zh
+ cyrb kern -kk#, % b
+ cyre kern -kk#, %
+ cyrf kern -kk#, %
+ cyro kern -kk#, % o
+ cyrs kern -kk#; % s
+
+ ligtable cyrv: % w
+ cyrt kern -k#; % d
+
+% ligtable cyrz: % z
+% cyrb kern -k#, % b
+% cyre kern -k#, % e
+% cyro kern -k#, % o
+% cyrs kern -k#; % s
+
+% ligtable cyrs: cyrh=: cyrsh;
+
+ ligtable CYRA: % A
+ cyru kern -kk#, %
+ CYRCH kern -kkk#; % ch
+
+ ligtable CYRB: % B
+ CYRO kern -k#, % o
+ CYRS kern -k#, % s
+ CYRU kern -kk#; % u
+
+ ligtable CYRG: CYRU: % G U
+ CYRA kern -kk#, % a
+% cyrv kern -kk#, % w
+% CYRG kern -kk#, % g
+ CYRD kern -kk#, % d
+% CYRE kern -kk#, % e
+ CYRF kern -kk#, % f
+ CYRH kern -kk#, % kh
+% CYRI kern -kk#, % i
+% CYRISHRT kern -kk#, % j
+% CYRK kern -kk#, % k
+ CYRL kern -kk#, % l
+% CYRM kern -kk#, % m
+% CYRN kern -kk#, % n
+% CYRO kern -kk#, % o
+% CYRP kern -kk#, % p
+ CYRYA kern -kk#, % ya
+% CYRR kern -kk#, % r
+ CYRS kern -kk#, % s
+ CYRT kern -kk#, % t
+ CYRU kern -kk#; % u
+% CYRV kern -kk#, % w
+% CYRSFTSN kern -kk#, % '
+% CYRERY kern -kk#, % y
+% CYRZ kern -kk#, % z
+% CYRSH kern -kk#, % sh
+% CYRSHCH kern -kk#, % shch
+% CYRCH kern -kk#; % ch
+% CYRHRDSN kern -k#; % ''
+
+ ligtable CYRO: CYRS: CYRF:
+ cyrd kern -kkk#, %
+ CYRA kern -kkk#, %
+ CYRV kern -kkk#, %
+ CYRG kern -kkk#, %
+ CYRR kern -kkk#, %
+ CYRP kern -kkk#, %
+ CYRN kern -kkk#, %
+ CYREREV kern -kkk#, %
+ CYRH kern -kkk#, %
+ CYRI kern -kkk#, %
+ CYRK kern -kkk#, %
+ CYRM kern -kkk#, %
+ CYRSH kern -kkk#, %
+ CYRSHCH kern -kkk#, %
+ CYRISHRT kern -kkk#; % j
+
+ ligtable CYRN: CYRM: CYRR: CYRP:
+ CYRZH: CYRK: CYRD: CYRH:
+ CYRO kern -kkk#, %
+ CYRS kern -kkk#, %
+ CYRF kern -kkk#; %
+
+ ligtable CYRT: % T
+ CYRA kern -kkk#, % a
+% CYRV kern -kkk#, % w
+% CYRG kern -kkk#, % g
+ CYRD kern -kkk#, % d
+ CYRE kern -kkk#, % e
+ CYRF kern -kkk#, % f
+ CYRH kern -kkk#, % kh
+ CYRI kern -kkk#, % i
+ CYRISHRT kern -kkk#, % j
+ CYRK kern -kkk#, % k
+ CYRL kern -kkk#, % l
+% CYRM kern -kkk#, % m
+% CYRN kern -kkk#, % n
+ CYRO kern -kkk#, % o
+% CYRP kern -kkk#, % p
+ CYRYA kern -kkk#, % ya
+% CYRR kern -kkk#, % r
+ CYRS kern -kkk#, % s
+ CYRT kern -kkk#, % t
+ CYRU kern -kkk#, % u
+% CYRV kern -kkk#, %
+% CYRSFTSN kern -kkk#, %
+% CYRERY kern -kkk#, % y
+ CYRZ kern -kkk#; % z
+% CYRSH kern -kk#, % sh
+% CYRSHCH kern -kk#, % shch
+% CYRCH kern -kk#, % ch
+% CYRHRDSN kern -kk#; %
+fi;
+
+input mcyrligs;
+
+bye.
diff --git a/Master/texmf-dist/fonts/source/public/montex/mcyrl.mf b/Master/texmf-dist/fonts/source/public/montex/mcyrl.mf
new file mode 100644
index 00000000000..94212b88844
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mcyrl.mf
@@ -0,0 +1,1085 @@
+% File: mcyrl.mf
+% Based on: cyrl.mf
+% Modified by: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% The de was modified since it caused problems with
+% thin_stem being < 0 which is not bearable.
+%
+% The ze was modified since it goofed in Funny mode.
+%
+cmchar "The cyrillic letter a";
+beginchar(cyra,9u#,x_height#,0);
+bh#:=min(bar_height#,1.14x_height#-bar_height#); define_pixels(bh);
+italcorr 1/3[bh#,x_height#]*slant+.5stem#-serif_fit#-2u#;
+adjust_fit(0,serif_fit# if serifs: if hair#+.5stem#>1.5u#:-.25u# fi\\fi);
+pickup fine.nib; top y3r=h+vround 1.5oo;
+if serifs: pos1(flare,180); pos2(hair,180);
+ pos3(vair,90); lft x1r=hround max(u,2.1u-.5flare); x3=.5w-.5u;
+ y1=min(bh+.5flare+2vair+2,.9[bh,h]-.5flare);
+ bulb(3,2,1); % bulb
+else: pos1(5/7[vair,flare],95); x1l=good.x 1.5u; x1r:=good.x x1r;
+ pos3(1/8[vair,thin_join],90);
+ x3=.5w-.2u; top y1r=vround .82[bh,top y3r];
+ filldraw stroke term.e(3,1,left,.9,4); fi % terminal
+pos4(stem,0); rt x4r=hround(w-2.5u+.5stem); y4=1/3[bh,h];
+pos5(stem,0); x5=x4; y5=max(.55bh,2vair);
+filldraw stroke super_arc.e(3,4)&z4e..z5e; % arc and stem
+pos6(.3[thin_join,vair],90); x6=x4; bot y6=bh;
+pos7(hround(curve-2stem_corr),180);
+lft x7r=hround max(.5u,1.5u-.5curve); y7=1/3[top y8l,top y6r];
+pos8(vair,270); x8l=.5w-.75u; bot y8r=-oo;
+pos9(thin_join,360); z9l=z5l;
+(x,y8r)=whatever[z8l,z9l]; x8r:=max(x,x8-u);
+{{interim superness:=more_super;
+ filldraw stroke z9e{down}...z8e{left}...{up}z7e&super_arc.e(7,6)}}; % bowl
+if serifs: numeric shaved_stem; shaved_stem=hround(stem-3stem_corr);
+ if hair#+.5stem#>1.5u#: pickup tiny.nib;
+ pos5'(shaved_stem,0); rt x5'r=fine.rt x5r; y5'=y5;
+ pos10(shaved_stem,0); x10=x5'; y10=.2[.5tiny,bh];
+ pos11(shaved_stem,0); rt x11r=hround(w-.25u); bot y11=0;
+ pos12(shaved_stem,0); x11=x12; top y12=slab+eps;
+ filldraw z5'l---z10l...z11l{right}--z11r
+ --z12r{left}...z10r+.75(z12-z11)---z5'r--cycle; % foot
+ else: pickup crisp.nib; pos5'(shaved_stem,0); rt x5'r=fine.rt x5r; y5'=y5;
+ pos10(shaved_stem,0); x10=x5'; y10=1/3bh;
+ pos11(.2[vair,stem],90); x11r=.5[x10r,x12r]; bot y11l=-vround .5oo;
+ pos12(hair,180); rt x12l=hround(w-.1u); y12=max(y10,y11+vair);
+ pos13(hair,180); x13=x12; top y13=max(vround .6bh,top y12);
+ (x',y11l)=whatever[z11r,z12r]; x11l:=max(x',x10);
+ filldraw stroke z5'e---z10e...z11e{right}...z12e---z13e; fi % hook
+else: numeric shaved_stem; shaved_stem=hround(stem-stem_corr);
+ pickup tiny.nib; pos5'(shaved_stem,0); rt x5'r=fine.rt x5r; y5'=y5;
+ pos10(shaved_stem,0); x10=x5'; bot y10=0;
+ filldraw stroke z5'e--z10e; fi % base of stem
+penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13); endchar;
+
+cmchar "The cyrillic letter be";
+beginchar(cyrb,9u#,fig_height#,0);
+italcorr .7x_height#*slant;
+adjust_fit(if monospace: .5u#,.5u# else: 0,0 fi);
+penpos1(vair,90); penpos3(vair',-90);
+penpos2(curve,180); penpos4(curve,0);
+x2r=hround max(.5u,1.25u-.5curve);
+x4r=w-x2r; x1=x3=.5w; y1r=x_height+vround 1.5oo; y3r=-oo;
+y2=y4=.5x_height-vair_corr; y2l:=y4l:=.52x_height;
+penstroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1) & cycle; % bowl
+penpos2'(hair,180); lft x2'r=x2r; y2'=y2r;
+penpos5(.8curve,90); penpos6(.8curve,90);
+penpos6'(.8curve,-90); x6=.5[x5,x7]; y6=y5; z6'=z6;
+penpos7(thin_join,0); rt x7r=rt x4r;
+top y7=h; top y5r=.97h; x5=x1;
+fill stroke z2'e{up}...{right}z5e..z6e;
+fill circ_stroke pulled_arc.e(7,6');
+penlabels(1,2,2',3,4,5,6',6,7); endchar;
+
+cmchar "The cyrillic letter ve";
+beginchar(cyrv,9u#,x_height#,0);
+italcorr .5x_height#*slant+min(.5curve#-u#,-.25u#);
+adjust_fit(serif_fit#,0);
+numeric left_stem,right_curve,middle_weight;
+left_stem=stem-hround 2stem_corr; middle_weight=.6vair+.5;
+pickup tiny.nib; pos1(left_stem,0); pos2(left_stem,0);
+lft x1l=lft x2l=hround(2.5u-.5left_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+penpos3(cap_band,90); penpos4(cap_band,90);
+penpos6(middle_weight,-90); penpos7(middle_weight,-90);
+penpos8(middle_weight,90); penpos9(middle_weight,90);
+penpos5(right_curve-stem_corr,0); penpos10(right_curve,0);
+penpos11(cap_band,-90); penpos12(cap_band,-90);
+z3r=top z1; y4=y3; y5=.5[y4,y6]; y6=y7; y7l-y8l=vair;
+z12r=bot z2; y11=y12; y10=.5[y11,y9]; y8=y9; .5[y7l,y8l]=.52h;
+x4=x6; x9=x11=x4+.5u; x7=x8=x1; x9l:=x4+.25u;
+x5r=hround(w-u); x10r=hround(w-.5u);
+if serifs: right_curve=curve-stem_corr; x4=.5[x1,w-1.5u];
+else: right_curve=curve-3stem_corr; x4=.5[x1,w-2.5u];
+ x4l:=x4l-.5u; x9l:=x9l-.5u; fi
+x6l:=x6l-.5u; x11l:=x11l-.5u;
+fill stroke z3e..super_arc.e(4,5) & super_arc.e(5,6)..z7e; % upper lobe
+fill stroke z8e..super_arc.e(9,10) & super_arc.e(10,11)..z12e; % lower lobe
+if serifs: nodish_serif(1,2,a,1/3,jut,b,1/3,.5jut); % upper serif
+ nodish_serif(2,1,c,1/3,jut,d,1/3,.5jut); fi % lower serif
+penlabels(1,2,3,4,5,6,7,8,9,10,11,12); endchar;
+
+cmchar "The cyrillic letter ghe";
+beginchar(cyrg,8.5u#,x_height#,0);
+italcorr x_height#*slant;
+adjust_fit(serif_fit#,0);
+h:=vround(h-stem_corr);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+lft x1l=lft x2l=hround(2.5u-.5stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+pickup crisp.nib; pos3(slab,90); pos4(hair,0);
+top y3r=h; x3=x1; rt x4r=hround(w-.75u); y4=good.y(y3l-.6beak)-eps;
+arm(3,4,e,beak_darkness,beak_jut); % upper arm and beak
+nodish_serif(1,2,a,1/3,jut,b,1/3,.5jut); % upper serif
+dish_serif(2,1,c,1/3,jut,d,1/3,1.25jut); % lower serif
+penlabels(1,2,3,4); endchar;
+
+cmchar "The cyrillic letter de";
+beginchar(cyrd,10u#,x_height#,comma_depth#);
+italcorr x_height#*slant-serif_fit#
+ +.75jut#-2.5u#+min(.5stem#,u#);
+adjust_fit(0,serif_fit#);
+pickup tiny.nib; numeric thin_stem;
+thin_stem=if monospace: stem-tiny
+ else: min(hair,stem-1.3tiny) fi;
+if thin_stem<0:thin_stem:=epsilon fi; %
+ %
+ % Making thin_stem epsilon
+ % was introduced after encountering
+ % problems with kmvtt10.mf
+ %
+ % Oliver Corff, June 1st, 1998, Ulaanbaatar
+ %
+if serifs: penpos1(thin_stem,0); penpos2(thin_stem,0); x2=.5[hround .5u,x1];
+else: penpos1(thin_stem,0); penpos2(thin_stem,0); x2=.5u+stem; fi
+pos3(stem,0); pos4(stem,0);
+x1l=x0l=.33w; top y1=h; bot y2=0;
+rt x3r=rt x4r=hround(w-2u); top y3=h; bot y4=0;
+filldraw stroke z3e--z4e;
+filldraw stroke z1e{down}..z2e; % stem and arc
+if serifs: pickup crisp.nib; numeric inner_jut,newbracket;
+ newbracket:=max(1.5,bracket); inner_jut:=.5(x3l-x1r);
+ path p[]; p1=z1{down}...z2;
+ p12=(0,y1-newbracket)--(w,y1-newbracket);
+ p21=(0,y2+newbracket)--(w,y2+newbracket);
+ z12=p1 intersectionpoint p12; z21=p1 intersectionpoint p21;
+ nodish_serif(1,12,a,1/3,jut,b,1/3,inner_jut); % upper left serif
+ nodish_serif(3,4,c,1/3,inner_jut,d,1/3,jut); % upper right serif
+ inner_jut:=.5(x4l-x2r);
+ nodish_serif(2,21,e,1/3,jut,f,1/3,inner_jut); % middle left serif
+ nodish_serif(4,3,g,1/3,inner_jut,h,1/3,jut); % middle right serif
+ pickup crisp.nib;
+ pos5(slab,90); pos6(hair,180); pos7(hair,0);
+ x5=.5[x2,x4]; bot y5l=0;
+ rt x7r=tiny.rt x4r+jut; lft x6r=tiny.lft x2l-jut;
+ y6=y7=good.y(y5l-.5beak)-eps;
+ arm(5,6,m,1.25beak_darkness,0); % left beak
+ arm(5,7,n,1.25beak_darkness,0); % right beak
+else:
+ pos1'(slab,90); pos3'(slab,90);
+ pos6(slab,90); pos7(slab,90);
+ pos6'(slab,0); pos7'(slab,0);
+ pos8(slab,0); pos9(slab,0);
+ lft x1'=lft x1l; rt x3'=rt x3r; top y1'r=top y3'r=h;
+ lft x6=lft x6'l=lft x8l=.5u; rt x7=rt x7'r=rt x9r=w-.5u;
+ bot y6l=bot y7l=0; y6'=y7'=y6; bot y8=bot y9=-.75d;
+ filldraw stroke z1'e--z3'e; % upper bar
+ filldraw stroke z6e--z7e; % lower bar
+ filldraw stroke z6'e--z8e; % left beak
+ filldraw stroke z7'e--z9e; % right beak
+fi
+penlabels(1,1',2,3,3',4,5,6,7,8,9,12,21); endchar;
+
+cmchar "The cyrillic letter ie";
+beginchar(cyre,7.25u#+max(.75u#,.5curve#),x_height#,0);
+italcorr .5[bar_height#,x_height#]*slant+.5min(curve#-1.5u#,0);
+adjust_fit(if monospace: .25u#,.5u# else: 0,0 fi);
+numeric left_curve,right_curve;
+left_curve=right_curve+6stem_corr=curve if not serifs: -3stem_corr fi;
+if right_curve<tiny.breadth: right_curve:=tiny.breadth; fi
+if left_curve<tiny.breadth: left_curve:=tiny.breadth; fi
+pickup tiny.nib; pos1(right_curve,0);
+pos2(vair,90); pos3(left_curve,180);
+y1=good.y bar_height; top y2r=h+vround 1.5oo; y0l=bot y1;
+rt x1r=hround min(w-.5u,w-u+.5right_curve);
+lft x3r=hround max(.5u,1.25u-.5left_curve); x2=.5w+.25u;
+{{interim superness:=more_super;
+ filldraw stroke super_arc.e(1,2)}}; % right bowl
+y3=.5[y2,y4]; bot y4r=-oo; x4=x2+.25u;
+if serifs: pos4(vair',270); pos5(hair,360);
+ y5=max(good.y(.5bar_height-.9),y4l+vair); x5r=x1r;
+ (x,y4l)=whatever[z4r,z5]; x4l:=min(x,x4l+.5u);
+ filldraw stroke pulled_arc.e(2,3) & pulled_arc.e(3,4)
+ ...{x5-x4,5(y5-y4)}z5e; % left bowl, arc, and terminal
+else: pos4(vair,270);
+ filldraw stroke super_arc.e(2,3) & super_arc.e(3,4); % left bowl and arc
+ pickup fine.nib; pos4'(vair,270); z4=z4';
+ pos5(.5[vair,flare],275); rt x5r=hround(w-.6u);
+ y5r=good.y(y5r+1/3bar_height-y5); y5l:=good.y y5l; x5l:=good.x x5l;
+ filldraw stroke term.e(4',5,right,1,4); fi % terminal
+path testpath; testpath=super_arc.r(2,3) & super_arc.r(3,4);
+y1'r=y0r=y0l+.6[thin_join,vair]; y1'l=y0l; x1'l=x1'r=x1;
+forsuffixes $=l,r:
+ x0$=xpart(((0,y0$)--(x1,y0$)) intersectionpoint testpath); endfor
+fill stroke z0e--z1'e; % crossbar
+penlabels(0,1,2,3,4,5); endchar;
+
+cmchar "The cyrillic letter ye";
+numeric dot_diam#,dot_diam;
+dot_diam#=max(dot_size#,cap_curve#);
+beginchar(cyryo,7.25u#+max(.75u#,.5curve#),1.4x_height#,0);
+dot_diam=max(tiny.breadth,hround(max(dot_size,cap_curve)-2stem_corr));
+italcorr .5[bar_height#,x_height#]*slant+.5min(curve#-1.5u#,0);
+adjust_fit(if monospace: .25u#,.5u# else: 0,0 fi);
+numeric left_curve,right_curve,letter_h; letter_h=x_height;
+left_curve=right_curve+6stem_corr=curve if not serifs: -3stem_corr fi;
+if right_curve<tiny.breadth: right_curve:=tiny.breadth; fi
+if left_curve<tiny.breadth: left_curve:=tiny.breadth; fi
+pickup tiny.nib; pos1(right_curve,0);
+pos2(vair,90); pos3(left_curve,180);
+y1=good.y bar_height; top y2r=letter_h+vround 1.5oo; y0l=bot y1;
+rt x1r=hround min(w-.5u,w-u+.5right_curve);
+lft x3r=hround max(.5u,1.25u-.5left_curve); x2=.5w+.25u;
+{{interim superness:=more_super;
+ filldraw stroke super_arc.e(1,2)}}; % right bowl
+y3=.5[y2,y4]; bot y4r=-oo; x4=x2+.25u;
+if serifs: pos4(vair',270); pos5(hair,360);
+ y5=max(good.y(.5bar_height-.9),y4l+vair); x5r=x1r;
+ (x,y4l)=whatever[z4r,z5]; x4l:=min(x,x4l+.5u);
+ filldraw stroke pulled_arc.e(2,3) & pulled_arc.e(3,4)
+ ...{x5-x4,5(y5-y4)}z5e; % left bowl, arc, and terminal
+else: pos4(vair,270);
+ filldraw stroke super_arc.e(2,3) & super_arc.e(3,4); % left bowl and arc
+ pickup fine.nib; pos4'(vair,270); z4=z4';
+ pos5(.5[vair,flare],275); rt x5r=hround(w-.6u);
+ y5r=good.y(y5r+1/3bar_height-y5); y5l:=good.y y5l; x5l:=good.x x5l;
+ filldraw stroke term.e(4',5,right,1,4); fi % terminal
+path testpath; testpath=super_arc.r(2,3) & super_arc.r(3,4);
+y1'r=y0r=y0l+.6[thin_join,vair]; y1'l=y0l; x1'l=x1'r=x1;
+forsuffixes $=l,r:
+ x0$=xpart(((0,y0$)--(x1,y0$)) intersectionpoint testpath); endfor
+fill stroke z0e--z1'e; % crossbar
+pos6(dot_diam,0); pos7(dot_diam,90);
+x6=x7=2.5u; top y7r=h+1;
+if bot y7l<letter_h+o+slab: y7l:=min(y7r-eps,letter_h+o+slab+.5tiny); fi
+y6=.5[y7l,y7r]; dot(6,7); % left dot
+pos8(dot_diam,0); penpos9(y7r-y7l,90); y8=y9=y6; x8=x9=w-x6;
+dot(8,9); % right dot
+penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter zhe";
+beginchar(cyrzh,14u#,x_height#,0);
+italcorr x_height#*slant-.2u#;
+adjust_fit(serif_fit#,serif_fit#);
+numeric right_jut,stem[],alpha[];
+if serifs: right_jut=.6jut;
+else: right_jut=.4tiny; fi
+pickup tiny.nib; pos1(fudged.stem,0); pos2(fudged.stem,0);
+x1=x2=.5w; top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+stem1=max(tiny.breadth,fudged.hair if hefty:-3stem_corr fi);
+stem2=max(tiny.breadth,fudged.stem-3stem_corr);
+rt x3r=w-lft x7l=hround(r-letter_fit-.9u-right_jut);
+rt x6r=w-lft x9l=hround(r-letter_fit-.5u-right_jut);
+top y3=top y7=h; bot y6=bot y9=0; x4=x1; y4=1/3h;
+alpha1=diag_ratio(1,.5(stem1-tiny),y3-y4,x3r-x4);
+penpos3(alpha1*(stem1-tiny),0); penpos4(whatever,-90);
+penpos7(alpha1*(stem1-tiny),0);
+alpha2=diag_ratio(1,.5(stem2-tiny),y1-y6,x6r-x1);
+penpos6(alpha2*(stem2-tiny),0); penpos9(alpha2*(stem2-tiny),0);
+forsuffixes $=l,r: y3'$=y7'$=h; y6'$=y9'$=0;
+ z4$=z3'$+whatever*(z3-z4);
+ z5$=z6'$+whatever*(z1-z6)=whatever[z3,z4];
+ x8$=w-x5$; y8$=y5$; endfor
+z5=.5[z5l,z5r]; z8=.5[z8l,z8r];
+z3'r=z3r+penoffset z3-z4 of currentpen+whatever*(z3-z4);
+z6'r=z6r+penoffset z1-z6 of currentpen+whatever*(z1-z6);
+z6'l=z6l+penoffset z6-z1 of currentpen+whatever*(z1-z6);
+x7'r=w-x3'r; x7'l=w-x3'l; x9'r=w-x6'r; x9'l=w-x6'l;
+fill z4r--diag_end(4r,3'r,1,.5,3'l,4l)--z4l--cycle; % right upper diagonal
+fill z4r--diag_end(4r,7'r,1,.5,7'l,4l)--z4l--cycle; % left upper diagonal
+fill z5l--diag_end(5l,6'l,.5,1,6'r,5r)--z5r--cycle; % right lower diagonal
+fill z8l--diag_end(8l,9'l,.5,1,9'r,8r)--z8r--cycle; % left lower diagonal
+if serifs: numeric inner_jut,mon_jut;
+ if rt x2r+jut+.5u+1<=lft x6l-jut: inner_jut=jut;
+ else: rt x2r+jut+.5u+1=lft x6l-inner_jut; fi
+ mon_jut=if monospace: inner_jut else: jut fi;
+ dish_serif(1,2,a,1/3,mon_jut,b,1/3,mon_jut); % upper stem serif
+ dish_serif(2,1,c,1/3,jut,d,1/3,jut); % lower stem serif
+ dish_serif(3,4,e,2/3,right_jut,f,1/2,right_jut)(dark); % upper diagonal serif
+ dish_serif(6,5,g,1/2,inner_jut,h,1/3,right_jut)(dark); % lower diagonal serif
+ dish_serif(7,4,i,1/2,right_jut,j,2/3,right_jut)(dark); % upper diagonal serif
+ dish_serif(9,8,k,1/3,right_jut,l,1/2,inner_jut)(dark); fi %lower diagonal seri
+penlabels(1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter ze";
+beginchar(cyrz,7.5u#,x_height#,0);
+italcorr x_height#*slant-.5u#;
+adjust_fit(0,0);
+pickup fine.nib;
+if serifs: pos1(hair,180); pos2(cap_band,90);
+ pos3(max(fine.breadth,curve-stem_corr),0); pos4(vair',270);
+ lft x1r=u; top y2r=h+oo;
+ bot y1=min(vround .7h,bot y2l-eps); rt x3r=hround(w-u);
+ pos7(vair,-90); pos8(vair,-90);
+ pos9(max(fine.breadth,vround 2/3vair),90); pos10(curve,0);
+ x9=.5w-u; x2=x4=.5w-.5u; bot y4r=-oo;
+ rt x10r=w-.5u; lft x8=min(hround 5u,lft x9)-eps;
+ y3=.5[top y7l,bot y2l]; y10=.5[bot y9l,top y4l];
+ top y8l=vround(.54h+.5vair); y8r=y9l;
+ x7=1/3[x8,x3l]; z7=z8+whatever*(150u,h);
+ pos5(hair,180); lft x5r=hround(.5u);
+ y5=max(good.y(.3bar_height),y4l+vair');
+ (x,y4l)=whatever[z4r,z5l]; x4l:=max(x,x4l-.5u);
+ interim superness:=more_super;
+ filldraw stroke z1e{up}
+ ... pulled_super_arc.e(2,3)(.5superpull)
+ & z3e{down}...z7e---z8e; % upper bowl
+ %filldraw z8r--z9l--z9r--z8l---cycle; % middle tip
+ % Deactivated due to problems with some
+ % higher device resolutions like ljfive
+ %
+ % Oliver Corff, Ulaanbaatar 1998
+ %
+ filldraw stroke pulled_super_arc.e(9,10)(.5superpull)
+ & pulled_super_arc.e(10,4)(.5superpull)
+ ..z5e; % arc and lower terminal
+ pos6(.3[fine.breadth,hair],180); x6r=x1r; top y6=h+o;
+ x1'-x1r=1.5curve-fine; y1'=y1;
+ path upper_arc; upper_arc=z1{x1-x2,10(y2-y1)}..z2{right};
+ numeric t; t=xpart(upper_arc intersectiontimes (z6l--z1'));
+ filldraw z1r--z6r--z6l--subpath(t,0) of upper_arc--cycle; % barb
+else: pos1(1.2flare,100); pos2(slab,90);
+ pos3(curve,0); pos4(slab,-90); pos5(flare,-95);
+ rt x1r=hround(1.1u); x2=.5w; x4=.45[x1,x10]; x9=.5w-u;
+ rt x3r=hround w-max(u,2u-.5curve); rt x5r=hround(.9u);
+ top y1r=vround .9h+oo; top y2r=h+oo; y3=.5[y7,y2];
+ bot y4r=-oo; bot y5r=vround .15h-oo; y5l:=good.y y5l; x5l:=good.x x5l;
+ pos7(vair,-90); pos8(vair,-90);
+ pos9(max(fine.breadth,vround 2/3vair),90); pos10(curve,0);
+ rt x10r=hround(w-.75u); lft x8=min(hround 5u,lft x9)-eps;
+ y10=.5[y9,y4]; top y8l=vround(.54h+.5vair); y8r=y9l;
+ x7=1/3[x8,x3l]; z7=z8+whatever*(150u,h);
+ filldraw stroke rterm.e(2,1,left,.9,4) & super_arc.e(2,3)
+ & pulled_arc.e(3,8); % upper bowl
+ filldraw stroke pulled_arc.e(9,10)
+ & super_arc.e(10,4) & term.e(4,5,left,.8,4); fi % lower bowl
+penlabels(1,1',2,3,4,5,6,7,8,9,10); endchar;
+
+cmchar "The cyrillic letter i";
+beginchar(cyri,10u#,x_height#,0);
+italcorr x_height#*slant-serif_fit#+jut#-2.5u#+min(.5stem#,u#);
+adjust_fit(serif_fit#,serif_fit#);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+pos3(stem,0); pos4(stem,0);
+top y1=top y3=h; bot y2=bot y4=0;
+x1=x2; x3=x4; x1l=w-x3r;
+rt x3r=hround(w-2.5u+.5fudged.stem);
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+if serifs: y5=h-y6=.12h;
+ else: bot y5l=h-top y6r=0; fi
+x5=rt x2r; x6=lft x3l;
+if hefty: numeric upper_notch,lower_notch,alpha;
+ alpha=if monospace: 100 else: 90 fi;
+ upper_notch=h-notch_cut; lower_notch=notch_cut;
+ penpos5(1.5stem,alpha); penpos6(1.5stem,alpha);
+ x2'=rt x2r; z2'=whatever[z6r,z5r]; x3'=lft x3l; z3'=whatever[z5l,z6l];
+ fill z5l..
+ if y2'<lower_notch: {right}(x2'+1,lower_notch){up}... fi
+ {z6-z5}diag_in(5l,6l,1,6r)--z6r..
+ if y3'>upper_notch: {left}(x3'-1,upper_notch){down}... fi
+ {z5-z6}diag_in(6r,5r,1,5l)--cycle; % diagonal
+else: penpos5(whatever,90); penpos6(whatever,90);
+ z7=z6l-(max(eps,hair-tiny),0) rotated (angle(z5-z6)-90);
+ z5r=z7+whatever*(z5-z6); z6r=z7+whatever*(z5-z6);
+ filldraw stroke z5e..z6e; fi % diagonal
+if serifs: numeric inner_jut;
+ if rt x1r+jut+.5u+1<=lft x3l-jut: inner_jut=jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3,jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(2,1,c,1/3,jut,d,1/3,inner_jut); % lower left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,jut); % upper right serif
+ dish_serif(4,3,g,1/3,inner_jut,h,1/3,jut); fi % lower right serif
+penlabels(1,2,2',3,3',4,4',5,6); endchar;
+
+cmchar "The cyrillic letter short_i";
+beginchar(cyrishrt,10u#,if serifs: 1.5x_height#
+ else: 1.4x_height# fi,0);
+italcorr 1.5x_height#*slant-serif_fit#+jut#-2.5u#+min(.5stem#,u#);
+adjust_fit(serif_fit#,serif_fit#);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+pos3(stem,0); pos4(stem,0);
+top y1=top y3=x_height; bot y2=bot y4=0;
+x1=x2; x3=x4; x1l=w-x3r;
+rt x3r=hround(w-2.5u+.5fudged.stem);
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+if serifs: y5=x_height-y6=.12x_height;
+ else: bot y5l=x_height-top y6r=0; fi
+x5=rt x2r; x6=lft x3l;
+if hefty: numeric upper_notch,lower_notch,alpha;
+ alpha=if monospace: 100 else: 90 fi;
+ upper_notch=x_height-notch_cut; lower_notch=notch_cut;
+ penpos5(1.5stem,alpha); penpos6(1.5stem,alpha);
+ x2'=rt x2r; z2'=whatever[z6r,z5r]; x3'=lft x3l; z3'=whatever[z5l,z6l];
+ fill z5l..
+ if y2'<lower_notch: {right}(x2'+1,lower_notch){up}... fi
+ {z6-z5}diag_in(5l,6l,1,6r)--z6r..
+ if y3'>upper_notch: {left}(x3'-1,upper_notch){down}... fi
+ {z5-z6}diag_in(6r,5r,1,5l)--cycle; % diagonal
+else: penpos5(whatever,90); penpos6(whatever,90);
+ z6'=z6l-(max(eps,hair-tiny),0) rotated (angle(z5-z6)-90);
+ z5r=z6'+whatever*(z5-z6); z6r=z6'+whatever*(z5-z6);
+ filldraw stroke z5e..z6e; fi % diagonal
+if serifs: numeric inner_jut;
+ if rt x1r+jut+.5u+1<=lft x3l-jut: inner_jut=jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3,jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(2,1,c,1/3,jut,d,1/3,inner_jut); % lower left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,jut); % upper left serif
+ dish_serif(4,3,g,1/3,inner_jut,h,1/3,jut); % lower left serif
+ if monospace: penpos7(.25vair,-90);
+ else: penpos7(vair,-90); fi
+ penpos8(.7vair,-180); penpos9(.5flare,-180);
+ penpos10(.7vair,0); penpos11(.5flare,0);
+ x7=.5[x8,x10]; bot y7r=.8h;
+ x8=.5w-2u; x10=w-x8; y8=y11=.95h;
+ bulb(7,8,9); % left bulb
+ bulb(7,10,11); % right bulb
+else: pickup fine.nib; penpos7(.75vair,-90);
+ penpos8(.75vair,-180); penpos10(.75vair,0);
+ x7=.5[x8,x10]; y7=.85h;
+ x8r=x1r; x10r=x3l; top y8=top y10=h;
+ filldraw stroke z8e...z7e...z10e;
+fi
+penlabels(1,2,2',3,3',4,5,6,7,8,9,10,11); endchar;
+
+cmchar "The cyrillic letter ka";
+beginchar(cyrk,9.5u#,x_height#,0);
+italcorr x_height#*slant-.5u#;
+adjust_fit(serif_fit#,serif_fit#);
+numeric right_jut,stem[],alpha[];
+if serifs: right_jut=.6jut;
+else: right_jut=.4tiny; fi
+pickup tiny.nib; pos1(fudged.stem,0); pos2(fudged.stem,0);
+lft x1l=lft x2l=hround(2.5u-.5fudged.stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+stem2=max(tiny.breadth,fudged.stem-3stem_corr);
+stem1=max(tiny.breadth,fudged.hair if hefty:-3stem_corr fi);
+top y3=h; rt x3r=hround(r-letter_fit-.75u-right_jut);
+bot y6=0; rt x6r=hround(r-letter_fit-.5u-right_jut);
+x4=x1; y4=1/3h;
+alpha1=diag_ratio(1,.5(stem1-tiny),y3-y4,x3r-x4);
+penpos3(alpha1*(stem1-tiny),0); penpos4(whatever,-90);
+alpha2=diag_ratio(1,.5(stem2-tiny),y1-y6,x6r-x1);
+penpos6(alpha2*(stem2-tiny),0);
+forsuffixes $=l,r: y3'$=h; y6'$=0; z4$=z3'$+whatever*(z3-z4);
+ z5$=z6'$+whatever*(z1-z6)=whatever[z3,z4]; endfor
+z5=.5[z5l,z5r];
+z3'r=z3r+penoffset z3-z4 of currentpen+whatever*(z3-z4);
+% we have also |z3'l=z3l+penoffset z4-z3 of currentpen+whatever*(z3-z4)|;\]
+z6'r=z6r+penoffset z1-z6 of currentpen+whatever*(z1-z6);
+z6'l=z6l+penoffset z6-z1 of currentpen+whatever*(z1-z6);
+fill z4r--diag_end(4r,3'r,1,.5,3'l,4l)--z4l--cycle; % upper diagonal
+fill z5l--diag_end(5l,6'l,.5,1,6'r,5r)--z5r--cycle; % lower diagonal
+if serifs: numeric inner_jut;
+ if rt x2r+jut+.5u+1<=lft x6l-jut: inner_jut=jut;
+ else: rt x2r+jut+.5u+1=lft x6l-inner_jut; fi
+ dish_serif(1,2,a,1/3,jut,b,1/3,jut); % upper stem serif
+ dish_serif(2,1,c,1/3,jut,d,1/3,jut); % lower stem serif
+ dish_serif(3,4,e,2/3,right_jut,f,1/2,right_jut)(dark); % upper diagonal serif
+ dish_serif(6,5,g,1/2,inner_jut,h,1/3,right_jut)(dark);fi % lower diagonal serif
+penlabels(1,2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter el";
+beginchar(cyrl,10u#,x_height#,0);
+italcorr x_height#*slant-serif_fit#
+ +.75jut#-2.5u#+min(.5stem#,u#);
+adjust_fit(0,serif_fit#);
+pickup tiny.nib; numeric thin_stem;
+thin_stem=min(1.2hair,stem);
+if serifs: pos1(thin_stem,0); pos12(thin_stem,0);
+else: pos1(hair,0); pos12(hair,0); fi
+pos5(stem,0); pos6(stem,0);
+x1=.33w; top y1=h; x12=x1; y12=.5h;
+rt x5r=rt x6r=hround(w-2.5u+.5stem); top y5=h; bot y6=0;
+filldraw stroke z5e--z6e; % right stem
+if serifs:
+ numeric light_bulb,inner_jut;
+ inner_jut:=.5(x5l-x1r); light_bulb=hround 7/8[hair,flare];
+ pos2(thin_stem,-90); pos3(thin_stem,-180);
+ pos4(light_bulb,-180);
+ bot y2r=-oo; x2=.3[x4,x1];
+ y4=.2h; rt x4l=hround 2u; z4r=z3r;
+ bulb(2,3,4); % bulb
+ filldraw stroke z2e{right}...{up}z12e--z1e; % left stem and arc
+ nodish_serif(1,12,a,1/3,jut,b,1/3,inner_jut); % upper left serif
+ nodish_serif(5,6,g,1/3,inner_jut,h,1/3,jut); % upper right serif
+ dish_serif(6,5,e,1/3,jut,f,1/3,jut); % lower right serif
+else: pos1'(slab,90); pos5'(slab,90);
+ pos2(hair,-90); pos3(hair,-90);
+ x2=.5u; x3=x2+u; bot y2r=0; bot y3r=-oo;
+ lft x1'=lft x1l; rt x5'=rt x5r; top y1'r=top y5'r=h;
+ filldraw stroke z1'e--z5'e; % upper bar
+ filldraw stroke z2e...z3e{right}...{up}z12e--z1e; % stem and arc
+fi
+penlabels(1,1',2,3,4,5,5',6,7); endchar;
+
+cmchar "The cyrillic letter em";
+beginchar(cyrm,12u#,x_height#,0);
+italcorr x_height#*slant-serif_fit#+jut#-2.5u#+min(.5stem#,u#);
+adjust_fit(serif_fit#,serif_fit#);
+numeric stem[]; % thicknesses of the four strokes
+stem1=hround(fudged.hair+stem_corr);
+stem2=hround(fudged.stem-4stem_corr);
+stem3=hround(fudged.hair-stem_corr);
+stem4=hround(fudged.stem-3stem_corr);
+if stem4<stem1: stem4:=stem1; fi
+pickup tiny.nib; pos1(stem1,0); pos2(stem1,0);
+pos3(stem4,0); pos4(stem4,0);
+x1=x2; x3=x4; x1l=w-x3r; rt x3r=hround(w-2.5u+.5stem4);
+top y1=top y3=h; bot y2=bot y4=0;
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+penpos5(stem2,0); penpos6(stem2,0); penpos7(stem3,0); penpos8(stem3,0);
+x5l=x1; x6l=x7l; x8=lft x3l; x6-x5=x8-x7; y5=y8=h; y6=y7;
+if hefty: y6=if monospace: vround 1/3h else: o fi;
+ numeric upper_notch,lower_notch;
+ upper_notch=h-notch_cut; lower_notch=y6+notch_cut;
+ x1'=rt x1r; z1'=whatever[z5l,z6l]; x3'=lft x3l; z3'=whatever[z7r,z8r];
+ z0=whatever[z5r,z6r]=whatever[z7l,z8l];
+ fill z5l..
+ if y1'<upper_notch: {right}(x1'+1,upper_notch){down}... fi
+ {z6-z5}diag_in(5l,6l,1,6r)..diag_out(7l,1,7r,8r){z8-z7}
+ if y3'<upper_notch: ...{up}(x3'-1,upper_notch){right} fi
+ ..z8r--diag_out(8r,1,8l,7l){z7-z8}
+ if y0<=lower_notch: ..{z7-z8}z0{z5-z6}..
+ else: ...{down}(x0+.5,lower_notch)--(x0-.5,lower_notch){up}... fi
+ {z5-z6}diag_in(6r,5r,1,5l)--cycle; % diagonals
+else: y6=0; z0=whatever[z5r,z6r]=whatever[z7l,z8l];
+ fill z5l..{z6-z5}diag_in(5l,6l,1,6r)..diag_out(7l,1,7r,8r){z8-z7}
+ ..z8r--diag_out(8r,1,8l,7l){z7-z8}..{z7-z8}z0{z5-z6}
+ ..{z5-z6}diag_in(6r,5r,1,5l)--cycle; fi % diagonals
+if serifs: serif(1,2,a,1/3,-jut); % upper left serif
+ dish_serif(2,1,b,1/2,jut,c,1/2,jut)(dark); % lower left serif
+ serif(3,4,d,1/3,jut); % upper right serif
+ dish_serif(4,3,e,1/3,jut,f,1/3,jut); fi % lower right serif
+penlabels(0,1,1',2,3,3',4,5,6,7,8); endchar;
+
+cmchar "The cyrillic letter en";
+beginchar(cyrn,10u#,x_height#,0);
+italcorr x_height#*slant-serif_fit#+jut#-2.5u#+min(.5stem#,u#);
+adjust_fit(serif_fit#,serif_fit#);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+pos3(stem,0); pos4(stem,0);
+lft x1l=lft x2l=hround(2.5u-.5stem); x3=x4=w-x1;
+top y1=top y3=h; bot y2=bot y4=0;
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+penpos5(bar,90); penpos6(bar,90);
+x5=x1; x6=x3; y5=y6=.52h;
+fill stroke z5e--z6e; % bar
+if serifs: numeric inner_jut;
+ if rt x1r+jut+.5u+1<=lft x3l-jut: inner_jut=jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3,jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(2,1,c,1/3,jut,d,1/3,inner_jut); % lower left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,jut); % upper left serif
+ dish_serif(4,3,g,1/3,inner_jut,h,1/3,jut); fi % lower left serif
+penlabels(1,2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter o";
+beginchar(cyro,9u#,x_height#,0);
+italcorr .7x_height#*slant;
+adjust_fit(if monospace: .5u#,.5u# else: 0,0 fi);
+penpos1(vair,90); penpos3(vair',-90);
+penpos2(curve,180); penpos4(curve,0);
+x2r=hround max(.5u,1.25u-.5curve);
+x4r=w-x2r; x1=x3=.5w; y1r=h+vround 1.5oo; y3r=-oo;
+y2=y4=.5h-vair_corr; y2l:=y4l:=.52h;
+penstroke pulled_arc.e(1,2) & pulled_arc.e(2,3)
+ & pulled_arc.e(3,4) & pulled_arc.e(4,1) & cycle; % bowl
+penlabels(1,2,3,4); endchar;
+
+cmchar "The cyrillic letter pe";
+beginchar(cyrp,10u#,x_height#,0);
+italcorr x_height#*slant-serif_fit#+jut#-2.5u#+min(.5stem#,u#);
+adjust_fit(serif_fit#,serif_fit#);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+pos3(stem,0); pos4(stem,0);
+lft x1l=lft x2l=hround(2.5u-.5stem); x3=x4=w-x1;
+top y1=top y3=h; bot y2=bot y4=0;
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+if serifs: numeric inner_jut;
+ if rt x1r+jut+.5u+1<=lft x3l-jut: inner_jut=jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(2,1,c,1/3,jut,d,1/3,inner_jut); % lower left serif
+ dish_serif(4,3,g,1/3,inner_jut,h,1/3,jut); % lower left serif
+ inner_jut:=inner_jut+u;
+ nodish_serif(1,2,a,1/3,jut,b,1/3,inner_jut); % upper left serif
+ nodish_serif(3,4,e,1/3,inner_jut,f,1/3,jut); % upper left serif
+else: pos5(slab,90); pos6(slab,90);
+ lft x5=x1l; rt x6=x3r; y5r=y6r=y3;
+ filldraw stroke z5e--z6e; fi % upper bar
+penlabels(1,2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter er";
+beginchar(cyrr,10u#+serif_fit#,x_height#,desc_depth#);
+italcorr .5x_height#*slant+min(.5curve#-.85u#,-.1u#);
+adjust_fit(serif_fit#,0);
+pickup tiny.nib; pos1(stem',0); pos2(stem,0);
+pos0'(stem',0); pos0(stem,0); z0l=z0'l; x0'=x1; x0=x2;
+lft x1l=hround(2.5u-.5stem'); top y1=h if serifs: +min(oo,serif_drop) fi;
+numeric edge; edge=rt x2r;
+pickup fine.nib; pos3(if hefty:thin_join else: hair fi,180);
+pos4(vair',90); pos5(curve,0); pos6(vair,-90); penpos7(x3l-x3r,-180);
+rt x3l=max(rt x3l-(lft x3r-tiny.lft x2l), 1/3[rt x2,edge]);
+y3=1/8[bar_height,x_height];
+x4l=w-.5(w-serif_fit)+.5u; top y4r=x_height+oo;
+rt x5r=hround min(w-1.35u+.5curve,w-.6u); y5=.5x_height;
+x6l=x4l-.2u; bot y6r=-oo;
+x7=x3; y7=min(y3,y6+y4-y3+.6vair);
+(x,y4r)=whatever[z3l,z4l]; x4r:=min(x,.5[x5r,x4]);
+(x',y6r)=whatever[z7l,z6l]; x6r:=min(x',.5[x5r,x6]);
+filldraw stroke z3e{up}...{right}z4e&super_arc.e(4,5)
+ &super_arc.e(5,6)&z6e{left}...{up}z7e; % bowl
+y0=ypart(((edge,h)--(edge,0))intersectionpoint(z3l{up}...{right}z4l));
+pickup tiny.nib; bot y2=-d;
+filldraw stroke z1e--z0'e--z0e--z2e; % stem
+pickup crisp.nib; pos8(hair,0); pos7'(stem,0);
+z7'=z2; x8l=x7'l; bot y8=0;
+filldraw stroke z7'e--z8e; % point
+if serifs: sloped_serif.l(1,0',a,1/3,jut,serif_drop); % upper serif
+ dish_serif(2,0,b,1/3,jut,c,1/3,jut); fi % lower serif
+penlabels(0,1,2,3,4,5,6,7,8); endchar;
+
+cmchar "The cyrillic letter es";
+beginchar(cyrs,8u#,x_height#,0);
+italcorr x_height#*slant-.2u#;
+adjust_fit(if monospace: .5u#,.5u# else: 0,0 fi);
+pickup fine.nib; pos2(vair',90); pos4(vair',270);
+x2=x4=.5(w+u); top y2r=vround(h+1.5oo); bot y4r=-oo;
+pos3(curve,180); lft x3r=hround max(.6u,1.35u-.5curve); y3=.5h;
+if serifs: pos1(hair,0); pos0(flare,0);
+ y1=min(bar_height+.5flare+2vair'+2,.9[bar_height,h]-.5flare);
+ rt x1r=hround(w-.7u); bulb(2,1,0); % bulb
+ pos5(hair,0); rt x5r=hround(w-.5u);
+ y5=max(good.y(.5bar_height-.9),y4l+vair');
+ (x,y4l)=whatever[z4r,z5l]; x4l:=min(x,x4l+.5u);
+ filldraw stroke pulled_super_arc.e(2,3)(.7superpull)
+ & pulled_super_arc.e(3,4)(.5superpull)
+ ..tension .9 and 1..{x5-x4,5(y5-y4)}z5e; % arc and lower terminal
+else: pos1(4/7[vair',flare],80);
+ rt x1r=hround(w-.6u); top y1r=vround .82[bar_height,top y2r];
+ filldraw stroke term.e(2,1,right,.8,4); % upper terminal
+ pos5(.6[vair',flare],275); rt x5r=hround(w-.5u);
+ y5r=good.y(y5r+1/3bar_height-y5); y5l:=good.y y5l; x5l:=good.x x5l;
+ forsuffixes e=l,r: path p.e; p.e=z4e{right}..tension .9 and 1..z5e;
+ if angle direction 1 of p.e>75:
+ p.e:=z4e{right}..tension atleast.9 and 1..{dir 75}z5e; fi endfor
+ filldraw stroke pulled_super_arc.e(2,3)(.7superpull)
+ & pulled_super_arc.e(3,4)(.5superpull) & p.e; fi % arc and lower terminal
+penlabels(0,1,2,3,4,5); endchar;
+
+cmchar "The cyrillic letter te";
+beginchar(cyrt,10u#,x_height#,0);
+italcorr x_height#*slant-beak_jut#-.25u#;
+adjust_fit(0,0);
+h:=vround(h-2stem_corr);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+if odd(w-stem): change_width; fi
+lft x1l=lft x2l=hround(.5w-.5stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+pickup crisp.nib; pos3(slab,90); pos4(hair,0);
+top y3r=h; x3=x1; rt x4r=hround(w-.65u); y4=good.y(y3l-.6beak)-eps;
+arm(3,4,e,beak_darkness,.7beak_jut); % right arm and beak
+pos5(hair,180); x5=w-x4; y5=y4;
+arm(3,5,f,beak_darkness,-.7beak_jut); % left arm and beak
+if serifs: dish_serif(2,1,c,1/3,1.414jut,d,1/3,1.414jut); % lower serif
+ nodish_serif(1,2,a,1/3,.5jut,b,1/3,.5jut); fi % upper bracketing
+penlabels(1,2,3,4,5); endchar;
+
+cmchar "The cyrillic letter u";
+beginchar(cyru,if serifs:9.5u# else:9u# fi,x_height#,desc_depth#);
+italcorr x_height#*slant+.25u#;
+adjust_fit(serif_fit# if monospace:+\\.5u#,.5u#+ else:,fi\\ serif_fit#);
+numeric left_stem,right_stem,bot_stem,bot_vair,outer_jut;
+left_stem=fudged.stem-stem_corr;
+right_stem=fudged.hair if hefty:-2stem_corr fi;
+bot_stem=fudged.hair if hefty:-8stem_corr fi;
+bot_vair=Vround(if serifs: vair else:.5[vair,bot_stem] fi);
+outer_jut=.75jut;
+x1l=w-x4r=l+letter_fit+outer_jut+.25u; y1=y4r=h; y2=y3=0; x2l=x3l;
+numeric alpha,alpha[]; x9=3u; y9=bot_vair-d-oo;
+alpha1=diag_ratio(2,bot_stem,y1-y3,x4r-x1l-apex_corr);
+alpha2=diag_ratio(1,bot_stem,y1-y9,x4r-x9);
+if alpha1<alpha2: x2l-x1l=x4r-x3r+apex_corr; alpha=alpha1;
+else: alpha=alpha2; z3l=whatever[z9,z4r-(alpha*bot_stem,0)]; fi
+penpos3(alpha*bot_stem,0); penpos4(alpha*right_stem,0);
+alpha3=(y1++(x2l-x1l))/y1;
+penpos1(alpha3*left_stem,0); penpos2(alpha3*left_stem,0);
+z0=whatever[z1r,z2r]=z4l+whatever*(z3r-z4r);
+if y0>notch_cut: y0:=notch_cut;
+ fill z0+.5right{up}...{z4r-z3r}diag_end(0,4l,1,1,4r,3r)
+ --z3r--z2l--diag_end(2l,1l,1,1,1r,2r){z2-z1}
+ ...{down}z0+.5left--cycle; % left and right diagonals
+else: fill z0--diag_end(0,4l,1,1,4r,3r)--z3r--z2l
+ --diag_end(2l,1l,1,1,1r,0)--cycle; fi % left and right diagonals
+penpos5(alpha*bot_stem,0); z5r=whatever[z3r,z4r]; y5-.5vair=-.5d;
+if serifs: numeric light_bulb; light_bulb=hround 7/8[hair,flare]; clearpen;
+ penpos6(vair,-90); penpos7(hair,-180); penpos8(light_bulb,-180);
+ x6=2u; y6r=-d-oo; y8-.5light_bulb=-.85d; x8r=hround .35u;
+ fill stroke z3e---z5e...{left}z6e; bulb(6,7,8); % arc and bulb
+ numeric inner_jut; pickup tiny.nib;
+ prime_points_inside(1,2); prime_points_inside(4,3);
+ if rt x1'r+jut+.5u+1<=lft x4'l-jut: inner_jut=jut;
+ else: rt x1'r+inner_jut+.5u+1=lft x4'l-inner_jut; fi
+ dish_serif(1',2,a,1/3,outer_jut,b,1/2,inner_jut); % left serif
+ dish_serif(4',3,c,.6,inner_jut,d,1/2,outer_jut)(dark); % right serif
+else: penpos6(bot_vair,-90); x6=2.5u; y6r=-d-oo;
+ fill stroke z3e---z5e...{left}z6e; % arc
+ pickup fine.nib; pos6'(bot_vair,-90); z6'=z6;
+ pos7(2/3[bot_vair,flare],-85);
+ lft x7l=hround u; bot y7r=vround-.96d-oo; y7l:=good.y y7l;
+ filldraw stroke term.e(6',7,left,1,4); fi % arc and terminal
+penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter ef";
+beginchar(cyrf,12u#,x_height#+desc_depth#,desc_depth#);
+italcorr .75x_height#*slant-.5u#;
+adjust_fit(serif_fit#,0);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+if odd(w-stem): change_width; fi
+top y1=h if serifs: +min(oo,serif_drop) fi;
+x1=x2=.5w; bot y2=-d;
+penpos3(cap_band,180);penpos3'(cap_band,0);
+penpos4(cap_band,90); penpos5(curve,0);
+penpos6(.5[vair,cap_band],-90);
+penpos7(.5[vair,cap_band],180); penpos7'(.5[vair,cap_band],0);
+penpos8(cap_band,90); penpos9(curve,180);
+penpos10(.5[vair,cap_band],270);
+x3l=x7l=rt x1r; x3'l=x7'l=lft x1l;
+y4r=y8r=x_height+oo; y5=y9=.5[y4l,y6l];
+x4r=x6r=.5[x1,x5]; x8r=x10r=.5[x9,x1];
+x5r=w-x9r=w-.5u;
+y7=y7'=.25x_height; y3=y3'=x_height-y7; y6r=y10r=-oo;
+filldraw stroke z1e--z2e; % stem
+fill stroke z3e{up}..pulled_arc.e(4,5) & pulled_arc.e(5,6)..{up}z7e;
+fill stroke z3'e{up}..pulled_arc.e(8,9) & pulled_arc.e(9,10)..{up}z7'e; % lobe
+if serifs:
+ sloped_serif.l(1,2,a,1/3,jut,.1h); % upper serif
+ dish_serif(2,1,b,1/3,jut,c,1/3,jut); fi % lower serif
+penlabels(0,1,2,3,3',4,5,6,7,7',8,9,10); endchar;
+
+cmchar "The cyrillic letter xa";
+beginchar(cyrh,if serifs:9.5u# else:9u# fi,x_height#,0);
+italcorr x_height#*slant-.05u#;
+adjust_fit(serif_fit# if monospace:+\\.5u#,.5u#+ else:,fi\\ serif_fit#);
+numeric stem[],outer_jut,xjut,alpha[];
+stem1=fudged.stem-4stem_corr; stem2=min(fudged.hair,stem1);
+outer_jut=.75jut; xjut= if serifs: (stem1-stem2)/4 else: 0 fi;
+x1l=l+letter_fit+.1u+outer_jut; x2r=r-letter_fit-.3u-outer_jut-xjut;
+x3l=l+letter_fit+outer_jut+xjut; x4r=r-letter_fit-outer_jut;
+y1=y2=h; y3=y4=0;
+alpha1=diag_ratio(1,stem1,h,x4r-x1l);
+alpha2=diag_ratio(1,stem2,h,x2r-x3l);
+penpos1(alpha1*stem1,0); penpos2(alpha2*stem2,0);
+penpos3(alpha2*stem2,0); penpos4(alpha1*stem1,0);
+if hefty: z0=whatever[z1,z4]=whatever[z2,z3];
+ x12=x34=x0; y13=y24=y0;
+ z12=whatever[z2l,z3l]; z13=whatever[z2l,z3l];
+ z24=whatever[z2r,z3r]; z34=whatever[z2r,z3r];
+ forsuffixes $=13,24,34: z$'=.2[z$,z0]; endfor
+ fill diag_end(12,1r,.5,1,1l,13')--z13'--diag_end(13',3l,1,.5,3r,34')--z34'
+ --diag_end(34',4l,.5,1,4r,24')--z24'
+ --diag_end(24',2r,1,.5,2l,12)--z12--cycle; % diagonals
+else: fill diag_end(4r,1r,.5,1,1l,4l)
+ --diag_end(1l,4l,.5,1,4r,1r)--cycle; % left diagonal
+ fill diag_end(2l,3l,.5,1,3r,2r)
+ --diag_end(3r,2r,.5,1,2l,3l)--cycle; fi % right diagonal
+if serifs: numeric inner_jut[]; pickup tiny.nib;
+ prime_points_inside(1,4); prime_points_inside(2,3);
+ prime_points_inside(3,2); prime_points_inside(4,1);
+ if rt x1'r+jut+.5u+1<=lft x2'l-jut-xjut: inner_jut1=jut;
+ else: rt x1'r+inner_jut1+.5u+1=lft x2'l-inner_jut1-xjut; fi
+ if rt x3'r+jut+.5u+1<=lft x4'l-jut-xjut: inner_jut2=jut;
+ else: rt x3'r+inner_jut2+.5u+1=lft x4'l-inner_jut2-xjut; fi
+ dish_serif(1',4,a,1/3,outer_jut,b,2/3,inner_jut1); % upper left serif
+ dish_serif(4',1,c,2/3,inner_jut2,d,1/3,outer_jut); % lower right serif
+ dish_serif(2',3,e,2/3,inner_jut1+xjut,
+ f,1/2,outer_jut+xjut)(dark); % upper right serif
+ dish_serif(3',2,g,1/2,outer_jut+xjut,
+ h,2/3,inner_jut2+xjut)(dark); fi % lower left serif
+penlabels(0,1,2,3,4,12,13,24,34); endchar;
+
+cmchar "The cyrillic letter tse";
+beginchar(cyrc,10u#,x_height#,comma_depth#);
+italcorr x_height#*slant-serif_fit#+jut#-2.5u#+min(.5stem#,u#);
+adjust_fit(serif_fit#,serif_fit#);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+pos3(stem,0); pos4(stem,0);
+lft x1l=lft x2l=hround(2.5u-.5stem); x3=x4=w-x1;
+top y1=top y3=h; bot y2=bot y4=0;
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+if serifs: numeric inner_jut;
+ if rt x1r+jut+.5u+1<=lft x3l-jut: inner_jut=jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3, jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,jut); % upper right serif
+ inner_jut:=.5(x3l-x1r);
+ nodish_serif(2,1,c,1/3, jut,d,1/3,inner_jut); % lower left serif
+ nodish_serif(4,3,g,1/3,inner_jut,h,1/3,jut); % lower right serif
+ pickup crisp.nib; pos5(slab,90); pos6(hair,0);
+ x5=.5[x2,x4]; bot y5l=0;
+ rt x6r=tiny.rt x4r+jut; y6=good.y(y5l-.5beak)-eps;
+ arm(5,6,m,1.25beak_darkness,0); % beak
+else: pos2'(slab,90); pos4'(slab,90);
+ pos5(slab,0); pos6(slab,0);
+ lft x2'=lft x2l; rt x4'=rt x5r=rt x6r=w-.5u;
+ bot y2'l=bot y4'l=0; y5=y4; bot y6=-.75d;
+ filldraw stroke z2'e--z4'e; % lower bar
+ filldraw stroke z5e--z6e; % right beak
+fi
+penlabels(1,2,2',3,4,4',5,6); endchar;
+
+cmchar "The cyrillic letter che";
+beginchar(cyrch,10u#,x_height#,0);
+italcorr x_height#*slant-serif_fit#+.5stem#-2u#;
+adjust_fit(serif_fit#+stem_shift#,serif_fit#-stem_shift#);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+pos3(stem,0); pos4(stem,0);
+numeric light_vair; light_vair=vair-fine;
+lft x1l=hround(2.5u-.5stem); x1=x2; x3l=w-x1r; x3r=x4r;
+top y1=h; bot y4=0;
+penpos2'(stem-fine,-180); z2'=z2; y3=y1; y2=.65h;
+penpos5(light_vair,-90); penpos6(light_vair,0);
+y6=.5h; lft x6l=lft x3l; if rt x6r>rt x3r: x6r:=x3r; fi
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+pickup fine.nib; bot y5r=y6-vair-.05h; x5=.5w;
+filldraw stroke {{interim superness:=hein_super;
+ pulled_super_arc.e(2',5)(.01superpull)}}
+ & z5e{right}...z6e; % arc
+if serifs: numeric inner_jut;
+ if rt x1r+jut+.5u+1<=lft x3l-jut: inner_jut=jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3,jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,jut); % upper right serif
+ dish_serif(4,3,g,1/3,jut,h,1/3,jut); fi % lower right serif
+penlabels(1,2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter sha";
+beginchar(cyrsh,15u#,x_height#,0);
+italcorr x_height#*slant-.25u#;
+adjust_fit(serif_fit#,serif_fit#);
+pickup tiny.nib; pos1(stem',0); pos2(stem',0);
+pos3(stem',0); pos4(stem',0);
+pos5(stem',0); pos6(stem',0);
+if odd(w-stem'): change_width; fi
+lft x1l=lft x2l=hround(2.5u-.5stem);
+x3=x4=.5w; x5=x6=w-x1;
+top y1=top y5=top y3=h; bot y2=bot y6=bot y4=0;
+z3=.5[z1,z5]; z4=.5[z2,z6];
+filldraw stroke z1e--z2e; % right stem
+filldraw stroke z3e--z4e; % middle stem
+filldraw stroke z5e--z6e; % left stem
+if serifs: numeric inner_jut;
+ if rt x1r+jut+.5u+1<=lft x3l-jut: inner_jut=jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3, jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(3,4,c,1/3,inner_jut,d,1/3,inner_jut); % upper middle serif
+ dish_serif(5,6,e,1/3,inner_jut,f,1/3, jut); % upper right serif
+ inner_jut:=.5(x3l-x1r);
+ nodish_serif(2,1,g,1/3, jut,h,1/3, inner_jut); % lower left serif
+ nodish_serif(4,3,i,1/3,inner_jut, j,1/3,inner_jut); % lower middle serif
+ nodish_serif(6,5,k,1/3,inner_jut, l,1/3,jut); % lower right serif
+else: pos2'(slab,90); pos6'(slab,90);
+ lft x2'=lft x1l; rt x6'=rt x6r; bot y2'l=bot y6'l=0;
+ filldraw stroke z2'e--z6'e; % lower bar
+fi
+penlabels(1,2,2',3,4,5,6,6'); endchar;
+
+
+cmchar "The cyrillic letter shcha";
+beginchar(cyrshch,15u#,x_height#,comma_depth#);
+italcorr x_height#*slant-.25u#;
+adjust_fit(serif_fit#,serif_fit#);
+pickup tiny.nib; pos1(stem',0); pos2(stem',0);
+pos3(stem',0); pos4(stem',0);
+pos5(stem',0); pos6(stem',0);
+if odd(w-stem'): change_width; fi
+lft x1l=lft x2l=hround (2.25u-.5stem);
+x3=x4=.5w; x5=x6=w-x1;
+top y1=top y5=top y3=h; bot y2=bot y6=bot y4=0;
+z3=.5[z1,z5]; z4=.5[z2,z6];
+filldraw stroke z1e--z2e; % right stem
+filldraw stroke z3e--z4e; % middle stem
+filldraw stroke z5e--z6e; % left stem
+if serifs:
+ numeric inner_jut;
+ if rt x1r+jut+.5u+1<=lft x3l-jut: inner_jut=jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3, jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(3,4,c,1/3,inner_jut,d,1/3,inner_jut); % upper middle serif
+ dish_serif(5,6,e,1/3,inner_jut,f,1/3, jut); % upper right serif
+ inner_jut:=.5(x3l-x1r);
+ nodish_serif(2,1,g,1/3, jut,h,1/3, inner_jut); % lower left serif
+ nodish_serif(4,3,i,1/3,inner_jut, j,1/3,inner_jut); % lower middle serif
+ nodish_serif(6,5,k,1/3,inner_jut, l,1/3,jut); % lower right serif
+ pickup crisp.nib; pos7(slab,90); pos8(hair,0);
+ x7=.5[x4,x6]; bot y7l=0;
+ rt x8r=tiny.rt x6r+jut; y8=good.y(y7l-.5beak)-eps;
+ arm(7,8,m,1.25beak_darkness,0); % beak
+else: pos2'(slab,90); pos6'(slab,90);
+ pos7(slab,0); pos8(slab,0);
+ lft x2'=lft x1l; rt x6'=rt x7r=rt x8r=w-.5u;
+ bot y2'l=bot y6'l=0; y7=y6; bot y8=-.75d;
+ filldraw stroke z2'e--z6'e; % lower bar
+ filldraw stroke z7e--z8e; % right beak
+fi
+penlabels(1,2,2',3,4,5,6,6',7,8); endchar;
+
+cmchar "The cyrillic letter hard_sign";
+beginchar(cyrhrdsn,10.5u#,x_height#,0);
+italcorr .75x_height#*slant-.5u#;
+adjust_fit(serif_fit#,0);
+numeric left_stem,right_curve,middle_weight;
+left_stem=stem-hround 2stem_corr; middle_weight=.6vair+.5;
+pickup tiny.nib; pos1(left_stem,0); pos2(left_stem,0);
+lft x1l=lft x2l=hround(4u-.5left_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+penpos5(cap_band,90); penpos6(cap_band,90); penpos7(right_curve,0);
+penpos8(cap_band,-90); penpos9(cap_band,-90);
+z9r=bot z2; y8=y9; y7=.5[y8,y6]; y5=y6=.52h;
+x6=x8; x5=x1; x6l:=x6-.25u; x7r=hround(w-.5u); x8l:=x8l-.5u;
+if serifs: right_curve=curve-stem_corr; x6=.5[x1,w-u];
+else: right_curve=curve-3stem_corr; x6=.5[x1,w-1.2u];
+x6l:=x6l-.5u; fi
+fill stroke z5e..super_arc.e(6,7) & super_arc.e(7,8)..z9e; % lower lobe
+pickup crisp.nib; pos3(slab,90); pos4(hair,180);
+top y3r=h; x3=x1; lft x4r=hround(.5u); y4=good.y(y3l-.6beak)-eps;
+arm(3,4,e,beak_darkness,-.7beak_jut); % upper arm and beak
+if serifs: nodish_serif(1,2,a,0,jut,b,1/3,jut); % upper serif
+nodish_serif(2,1,c,1/3,jut,d,1/3,.5jut); fi % lower serif
+penlabels(1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter yeru";
+beginchar(cyrery,13u#,x_height#,0);
+italcorr .75x_height#*slant-.5u#;
+adjust_fit(serif_fit#,0);
+numeric left_stem,right_curve,middle_weight;
+left_stem=stem-hround 2stem_corr; middle_weight=.6vair+.5;
+pickup tiny.nib; pos1(left_stem,0); pos2(left_stem,0);
+lft x1l=lft x2l=hround(2.5u-.5left_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % left stem
+pos3(stem,0); pos4(stem,0); x3=x4=w-x1; top y3=h; bot y4=0;
+penpos5(cap_band,90); penpos6(cap_band,90); penpos7(right_curve,0);
+penpos8(cap_band,-90); penpos9(cap_band,-90);
+z9r=bot z2; y8=y9; y7=.5[y8,y6]; y5=y6=.52h;
+x6=x8; x5=x1; x6ltop
+:=x6-.25u; x8l:=x8l-.5u;
+x7r=if serifs: tiny.lft x3l-jut; else: 8.5u; fi
+if serifs: right_curve=curve-stem_corr; x6=.5[x1,w-4.5u];
+else: right_curve=curve-3stem_corr; x6=.5[x1,w-5.2u];
+x6l:=x6l-.5u; fi
+fill stroke z5e..super_arc.e(6,7) & super_arc.e(7,8)..z9e; % lower lobe
+filldraw stroke z3e--z4e; % right stem
+if serifs: dish_serif(1,2,a,1/3,jut,b,1/3,jut); % upper left serif
+nodish_serif(2,1,c,1/3,jut,d,1/3,.5jut); % lower left serif
+dish_serif(3,4,e,1/3,1.05jut,f,1/3,1.05jut); % upper right serif
+dish_serif(4,3,g,1/3,1.05jut,h,1/3,1.05jut); fi % lower right serif
+penlabels(1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter soft_sign";
+beginchar(cyrsftsn,9u#,x_height#,0);
+italcorr .75x_height#*slant-.5u#;
+adjust_fit(serif_fit#,0);
+numeric left_stem,right_curve,middle_weight;
+left_stem=stem-hround 2stem_corr; middle_weight=.6vair+.5;
+pickup tiny.nib; pos1(left_stem,0); pos2(left_stem,0);
+lft x1l=lft x2l=hround(2.5u-.5left_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+penpos5(cap_band,90); penpos6(cap_band,90); penpos7(right_curve,0);
+penpos8(cap_band,-90); penpos9(cap_band,-90);
+z9r=bot z2; y8=y9; y7=.5[y8,y6]; y5=y6=.52h;
+x6=x8; x5=x1; x6l:=x6-.25u; x7r=hround(w-.5u); x8l:=x8l-.5u;
+if serifs: right_curve=curve-stem_corr; x6=.5[x1,w-u];
+else: right_curve=curve-3stem_corr; x6=.5[x1,w-1.2u];
+x6l:=x6l-.5u; fi
+fill stroke z5e..super_arc.e(6,7) & super_arc.e(7,8)..z9e; % lower lobe
+if serifs: dish_serif(1,2,a,1/3,jut,b,1/3,jut); % upper serif
+nodish_serif(2,1,c,1/3,jut,d,1/3,.5jut); fi % lower serif
+penlabels(1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter e";
+beginchar(cyrerev,8u#,x_height#,0);
+italcorr x_height#*slant-.2u#;
+adjust_fit(if monospace: .5u#,.5u# else: 0,0 fi);
+pickup fine.nib;
+pos2(cap_band,90); pos4(vair',270); pos3(curve,0);
+x2=x4=.5(w-u); top y2r=h+oo; bot y4r=-oo;
+rt x3r=w-hround min(.6u,1.35u-.5curve); y3=.5h;
+if serifs: pos1(hair,180);
+ lft x1r=u; bot y1=min(vround .7h,bot y2l-eps);
+ pos5(hair,180); lft x5r=hround(.5u);
+ y5=max(good.y(.5bar_height-.9),y4l+vair');
+ (x,y4l)=whatever[z4r,z5l]; x4l:=max(x,x4l-.5u);
+ filldraw stroke z1e{up}
+ ..pulled_super_arc.e(2,3)(superpull)%(.7superpull)
+ & pulled_super_arc.e(3,4)(superpull)%(.5superpull)
+ ..tension .9 and 1..{x5-x4,5(y5-y4)}z5e; % arc and lower terminal
+ pos6(.3[fine.breadth,hair],180); x6r=x1r; top y6=h+o;
+ x1'-x1r=1.5curve-fine; y1'=y1;
+ path upper_arc; upper_arc=z1{x1-x2,10(y2-y1)}..z2{right};
+ numeric t; t=xpart(upper_arc intersectiontimes (z6l--z1'));
+ filldraw z1r--z6r--z6l--subpath(t,0) of upper_arc--cycle; % barb
+else: pos1(4/7[vair',flare],110);
+ lft x1r=hround(.6u);
+ top y1r=vround .82[bar_height,top y2r];
+ filldraw stroke term.e(2,1,left,.8,4); % upper terminal
+ pos5(.6[vair',flare],265); lft x5r=hround(.5u);
+ y5r=good.y(y5r+1/3bar_height-y5); y5l:=good.y y5l; x5l:=good.x x5l;
+ forsuffixes e=l,r: path p.e; p.e=z4e{left}..tension .9 and 1..z5e;
+ if angle direction 1 of p.e<105:
+ p.e:=z4e{left}..tension atleast.9 and 1..{dir 105}z5e; fi endfor
+ filldraw stroke pulled_super_arc.e(2,3)(.5superpull)
+ & pulled_super_arc.e(3,4)(.7superpull) & p.e; fi % arc and lower terminal
+penpos7(bar,90); penpos8(bar,90);
+x7=lft x3l; x8=.5w-1.5u;
+y7=y8=.5h;
+fill stroke z7e--z8e; % bar
+penlabels(0,1,2,3,4,5); endchar;
+
+cmchar "The cyrillic letter yu";
+beginchar(cyryu,13.5u#,x_height#,0);
+italcorr x_height#*slant-serif_fit#+jut#-2.5u#+min(.5stem#,u#);
+adjust_fit(serif_fit#,if monospace: .5u# else: 0 fi);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+lft x1l=lft x2l=hround(2.5u-.5stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % left stem
+penpos5(vair,90); penpos7(vair',-90);
+penpos6(curve,180); penpos8(curve,0);
+x5=x7=.5[x6,x8]; y5r=h+oo; y7r=-oo;
+x8r=hround(w-.5u); x6r=hround(w-8.5u);
+y6=y8=.5h-vair_corr; y6l:=y8l:=.52h;
+penstroke pulled_arc.e(5,6) & pulled_arc.e(6,7)
+ & pulled_arc.e(7,8) & pulled_arc.e(8,5) & cycle; % bowl
+penpos3(bar,90); penpos4(bar,90); x3=x1; x4=x6; y3=y4=.52h;
+fill stroke z3e--z4e; % bar
+if serifs: numeric inner_jut; inner_jut=jut;
+ dish_serif(1,2,a,1/3,jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(2,1,c,1/3,jut,d,1/3,inner_jut); fi % lower left serif
+penlabels(1,2,3,4,5,6,7,8); endchar;
+
+cmchar "The cyrillic letter ya";
+beginchar(cyrya,8u#+.5max(2u#,curve#),x_height#,0);
+italcorr .75cap_height#*slant- if serifs: 1.75 else: .5 fi\\ u#;
+adjust_fit(0,serif_fit#);
+pickup tiny.nib; pos1(stem',0); pos2(stem',0);
+rt x1r=rt x2r=w-hround(2.5u-.5stem'); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+penpos3(cap_band,90); penpos4(cap_band,90);
+penpos5(curve if hefty:-3stem_corr fi,180);
+penpos6(vair,-90); penpos7(vair,-90);
+z3r=top z1; y4=y3; y5=.5[y4l,y6l]; y6=y7; x7=x2; y7=.5h; x4=x6;
+if serifs: x4=.5w+.5u; x5r=hround(1.5u);
+else: x4=.5w-.5u; x5r=hround(.75u); fi
+x4l:=x6l:=x4+.125curve;
+fill stroke z3e..pulled_arc.e(4,5) & pulled_arc.e(5,6)..z7e; % lobe
+pos6'(curve,0); pos8(curve,0); x6'r=x6l; y6'=y6;
+tiny.lft x8l=.5u+.5jut; bot y8=0;
+filldraw stroke z6'e--z8e; % diagonal stem
+if serifs: numeric inner_jut;
+ if rt x8r+u+1<=lft x2l-jut: inner_jut=jut;
+ else: lft x2l-u-1=rt x8r+inner_jut; fi
+ nodish_serif(1,2,a,1/3,.5jut,b,1/3,jut); % upper serif
+ dish_serif(2,1,c,1/3,inner_jut,d,1/3,jut); % lower serif
+ serif(8,6',e,1/3,-.5jut); fi % lower diagonal serif
+penlabels(1,2,3,4,5,6,7,8); endchar;
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/mcyrligs.mf b/Master/texmf-dist/fonts/source/public/montex/mcyrligs.mf
new file mode 100644
index 00000000000..c31b2db0775
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mcyrligs.mf
@@ -0,0 +1,38 @@
+% File: mcyrligs.mf
+% Author: Oliver Corff
+% Date: June 1998, Ulaanbaatar
+%
+% These ligatures are always active:
+% Creates xagas i, yo, yu, ya ligatures:
+ligtable cyrery: cyri =: cyrishrt,
+ cyro =: cyryo,
+ cyru =: cyryu,
+ cyra =: cyrya;
+
+% Creates XAGAS I, YO, YU, YA ligatures:
+ligtable CYRERY: CYRI =: CYRISHRT,
+ CYRO =: CYRYO,
+ cyro =: CYRYO,
+ CYRU =: CYRYU,
+ cyru =: CYRYU,
+ CYRA =: CYRYA,
+ cyra =: CYRYA;
+
+% Creates the front vowels as ligatures:
+ligtable oct"42": CYRA =: CYREREV,
+ CYRE=: CYRYO,
+ CYRI =: CYRISHRT,
+ CYRO =: CYROTLD,
+ CYRU =: CYRY,
+
+ cyra =: cyrerev,
+ cyre=: cyryo,
+ cyri =: cyrishrt,
+ cyro =: cyrotld,
+ cyru =: cyry;
+
+% Creates the Sh and ShCh consonants as ligatures:
+% ligtable CYRS: CYRSHHA =: CYRSH;
+ligtable cyrs: cyrshha =: cyrsh;
+ligtable CYRCH: CYRSHHA =: CYRSHCH;
+ligtable cyrch: cyrshha =: cyrshch;
diff --git a/Master/texmf-dist/fonts/source/public/montex/mcyrsymb.mf b/Master/texmf-dist/fonts/source/public/montex/mcyrsymb.mf
new file mode 100644
index 00000000000..c3a959945f4
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mcyrsymb.mf
@@ -0,0 +1,171 @@
+% File: mcyrsymb.mf
+% Based on: cyrsymb.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar,
+% December 1998, Beijing, Shenyang, Berlin
+%
+if ligs>0:
+ ligtable "<": "<" =: guillemotleft;
+ ligtable ">": ">" =: guillemotright;
+fi;
+
+cmchar "Less than sign";
+compute_spread(5/4x_height#,3/2x_height#);
+beginchar("<",14u#,v_center(spread#+rule_thickness#));
+italcorr h#*slant-u#;
+adjust_fit(0,0); pickup rule.nib;
+lft x2=hround 1.5u-eps; x1=x3=w-x2;
+y1-y3=spread; y2=.5[y1,y3]=math_axis;
+draw z1--z2--z3; % diagonals
+labels(1,2,3); endchar;
+
+cmchar "Greater than sign";
+compute_spread(5/4x_height#,3/2x_height#);
+beginchar(">",14u#,v_center(spread#+rule_thickness#));
+italcorr math_axis#*slant-u#;
+adjust_fit(0,0); pickup rule.nib;
+rt x2=hround(w-1.5u)+eps; x1=x3=w-x2;
+y1-y3=spread; y2=.5[y1,y3]=math_axis;
+draw z1--z2--z3; % diagonals
+labels(1,2,3); endchar;
+
+cmchar "open cyrillic quote (looks like <<)";
+beginchar(guillemotleft,10u#,x_height#,0);
+adjust_fit(if monospace:-u#,-u# else: 0,0 fi); pickup rule.nib;
+lft x2=hround u-epsilon; x1=x3=.55w;
+y1=h; y3=0; y2=.5[y1,y3];
+draw z1--z2--z3; % left diagonals
+x4=w-x2; y4=.9[y3,y1]; y6=.1[y3,y1];
+x5-x2=x6-x3=x4-x1; y5=y2;
+draw z4--z5--z6; % right diagonals
+z2'=z2; x2':=x2-.625rule_thickness;
+z5'=z5; x5':=x5+.625rule_thickness;
+draw z1--z2'--z3; % left diagonals
+draw z4--z5'--z6; % right diagonals
+labels(1,2,3,4,5,6); endchar;
+
+cmchar "close cyrillic quote (looks like >>)";
+beginchar(guillemotright,10u#,x_height#,0);
+adjust_fit(if monospace:-u#,-u# else: 0,0 fi); pickup rule.nib;
+lft x2=.55w; x1=x3=hround u-epsilon;
+y1=.9h; y3=.1h; y2=.5[y1,y3];
+y4=h; y6=0; y5=.5[y4,y6];
+draw z1--z2--z3; % left diagonals
+x4=w-x2;
+x5-x2=x6-x3=x4-x1;
+draw z4--z5--z6; % right diagonals
+z2'=z2; x2':=x2-.625rule_thickness;
+z5'=z5; x5':=x5+.625rule_thickness;
+draw z1--z2'--z3; % left diagonals
+draw z4--z5'--z6; % right diagonals
+labels(1,2,3,4,5,6);
+endchar;
+
+cmchar "The number mark";
+beginchar(CYRNo,17u#,cap_height#,0);
+italcorr cap_height#*slant-cap_serif_fit#+cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+numeric thin_stem,letter_w,light_bulb; letter_w=14u;
+thin_stem=hround(fudged.hair+stem_corr);
+pickup tiny.nib; pos1(thin_stem,0); pos2(thin_stem,0);
+pos3(thin_stem,0); pos4(thin_stem,0);
+top y1=h; bot y4=0;
+if serifs: top y3=h-bot y2=.9h; else: top y3=h; bot y2=0; fi
+x1=x2; x3=x4; x1l=letter_w-x3r;
+rt x3r=hround min(letter_w-3u,letter_w-4u+.5fudged.cap_stem);
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+if hefty: penpos5(fudged.cap_stem,0); penpos6(fudged.cap_stem,0);
+ x5l=x1; x6r=x4; y5=h; y6=0;
+ numeric upper_notch,lower_notch;
+ upper_notch=h-cap_notch_cut; lower_notch=cap_notch_cut;
+ x1'=rt x1r; z1'=whatever[z5l,z6l]; x4'=lft x4l; z4'=whatever[z5r,z6r];
+ fill z5l..
+ if y1'<upper_notch: {right}(x1'+1,upper_notch){down}... fi
+ {z6-z5}diag_in(5l,6l,1,6r)--z6r..
+ if y4'>lower_notch: {left}(x4'-1,lower_notch){up}... fi
+ {z5-z6}diag_in(6r,5r,1,5l)--cycle; % diagonal
+else: penpos5(whatever,0); penpos6(whatever,90);
+ z5l=z1l; z6l=z4l;
+ z7=z6l+(max(eps,cap_stem-3stem_corr-tiny),0) rotated (angle(z5l-z6l)-90);
+ z5r=z7+whatever*(z5l-z6l); z6r=z7+whatever*(z5l-z6l);
+ filldraw stroke z5e..z6e; fi % diagonal
+if serifs: serif(5,6,a,1/3,-cap_jut); % upper left serif
+ light_bulb=hround 7/8[cap_hair,flare];
+ z2'r=(tiny.rt x2r,y2); z2'l=(tiny.lft x2l,y2);
+ z3'l=(tiny.rt x3r,y3); z3'r=(tiny.lft x3l,y3);
+ penpos8(vair,-90); penpos9(cap_hair,-180); penpos10(light_bulb,-180);
+ penpos11(vair,90); penpos12(cap_hair,0); penpos13(light_bulb,0);
+ x8=x1-1.25u; x11=letter_w-x8;
+ x10r=hround .5u; x13r=hround(letter_w-.5u);
+ if monospace: y10=u; y11=h-y8=h;
+ else: y10=2u-min(.5light_bulb,.5u); top y11r=h+o; bot y8r=-o; fi
+ y13=h-y10;
+ fill stroke z2'e{down}...{left}z8e;
+ fill stroke z3'e{up}...{right}z11e; % upper and lower arcs
+ clearpen;
+ bulb(8,9,10); bulb(11,12,13); fi % upper and lower bulbs
+numeric thick_hair; thick_hair=max(hair,.75stem);
+penpos14(vair,90); penpos16(vair,-90);
+penpos15(thick_hair,180); penpos17(thick_hair,0);
+interim superness:=sqrt(more_super*hein_super);
+if monospace: x15=hround(w-4.5u); rt x17r=hround(w-.5u);
+ else: x15=hround(w-4u); rt x17r=hround(w-.5u); fi
+x14=x16=.5[x15,x17]; y14r=h-y16r=.7h; y15=y17=.5[y14,y16];
+if x17l<=x15l+10: x15l:=x15r+vair; x17l:=x17r-vair; fi
+penstroke pulled_arc.e(14,15) & pulled_arc.e(15,16)
+ & pulled_arc.e(16,17) & pulled_arc.e(17,14) & cycle; % bowl
+pickup crisp.nib; pos18(thick_hair,90); pos19(thick_hair,90);
+bot y18l=bot y19l=.075h; rt x19=x17r; lft x18=x15r;
+filldraw stroke z18e--z19e; % bar
+math_fit(0,max(.5ic#-.5u#,0));
+penlabels(1,1',2,3,4,4',5,6,7,8,9,10,11,12,13,14,15,16,17,18,19);
+endchar;
+
+cmchar "The Mongolian Currency symbol TOGROG";
+beginchar(CYR_TOGROG,13u#-width_adj#,cap_height#,0);
+italcorr cap_height#*slant-beak_jut#-.25u#;
+adjust_fit(0,0);
+h:=vround(h-2stem_corr);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+lft x1l=lft x2l=hround(.5w-.5cap_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+pickup crisp.nib; pos3(slab,90); pos4(hair,0);
+top y3r=h; x3=x1; rt x4r=hround(w-.65u); y4=good.y(y3l-beak)-eps;
+arm(3,4,e,beak_darkness,.7beak_jut); % right arm and beak
+pos5(hair,180); x5=w-x4; y5=y4;
+arm(3,5,f,beak_darkness,-.7beak_jut); % left arm and beak
+if serifs: dish_serif(2,1,c,1/3,1.414cap_jut,d,1/3,1.414cap_jut); % lower serif
+ nodish_serif(1,2,a,1/3,.5cap_jut,b,1/3,.5cap_jut); fi % upper bracketing
+math_fit(-.75cap_height#*slant,ic#-2.5u#);
+z11=(x5,2/4y5); z12=(x4,3/4y4); % define upper bar edges
+z13=(x5,1/4y5); z14=(x4,2/4y4); % define lower bar edges
+pos11(bar,90); pos12(bar,90); % define upper bar width
+pos13(bar,90); pos14(bar,90); % define lower bar width
+filldraw stroke z11e--z12e; % draw upper bar
+filldraw stroke z13e--z14e; % draw lower bar
+penlabels(1,2,3,4,5,6,11,12,13,14); endchar;
+
+cmchar "The Mongolian Currency symbol togrog";
+beginchar(CYR_togrog,10u#,x_height#,0);
+italcorr x_height#*slant-beak_jut#-.25u#;
+adjust_fit(0,0);
+h:=vround(h-2stem_corr);
+pickup tiny.nib; pos1(stem,0); pos2(stem,0);
+if odd(w-stem): change_width; fi
+lft x1l=lft x2l=hround(.5w-.5stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+pickup crisp.nib; pos3(slab,90); pos4(hair,0);
+top y3r=h; x3=x1; rt x4r=hround(w-.65u); y4=good.y(y3l-.6beak)-eps;
+arm(3,4,e,beak_darkness,.7beak_jut); % right arm and beak
+pos5(hair,180); x5=w-x4; y5=y4;
+arm(3,5,f,beak_darkness,-.7beak_jut); % left arm and beak
+if serifs: dish_serif(2,1,c,1/3,1.414jut,d,1/3,1.414jut); % lower serif
+ nodish_serif(1,2,a,1/3,.5jut,b,1/3,.5jut); fi % upper bracketing
+z11=(x5,2/4y5); z12=(x4,3/4y4); % define upper bar edges
+z13=(x5,1/4y5); z14=(x4,2/4y4); % define lower bar edges
+pos11(bar,90); pos12(bar,90); % define upper bar width
+pos13(bar,90); pos14(bar,90); % define lower bar width
+filldraw stroke z11e--z12e; % draw upper bar
+filldraw stroke z13e--z14e; % draw lower bar
+penlabels(1,2,3,4,5,11,12,13,14); endchar;
diff --git a/Master/texmf-dist/fonts/source/public/montex/mcyru.mf b/Master/texmf-dist/fonts/source/public/montex/mcyru.mf
new file mode 100644
index 00000000000..ac78da4c201
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mcyru.mf
@@ -0,0 +1,1041 @@
+% File: mcyru.mf
+% Based on: cyru.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+% The De was modified (thin_stem:=epsilon if thin_stem<0)
+%
+cmchar "The cyrillic letter A";
+beginchar(CYRA,13u#,cap_height#,0);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+numeric left_stem,right_stem,outer_jut,alpha;
+right_stem=cap_stem-stem_corr;
+left_stem=min(cap_hair if hefty: -3stem_corr fi,right_stem);
+outer_jut=.8cap_jut; x1l=w-x4r=l+letter_fit+outer_jut+.5u; y1=y4=0;
+x2-x1=x4-x3; x3r=x2r+apex_corr; y2=y3=h+apex_o+apex_oo;
+alpha=diag_ratio(2,left_stem,y2-y1,x4r-x1l-apex_corr);
+penpos1(alpha*left_stem,0); penpos2(alpha*left_stem,0);
+penpos3(alpha*right_stem,0); penpos4(alpha*right_stem,0);
+z0=whatever[z1r,z2r]=whatever[z3l,z4l];
+if y0<h-cap_notch_cut: y0:=h-cap_notch_cut;
+ fill z0+.5right{down}...{z4-z3}diag_end(3l,4l,1,1,4r,3r)
+ --diag_end(4r,3r,1,1,2l,1l)--diag_end(2l,1l,1,1,1r,2r){z2-z1}
+ ...{up}z0+.5left--cycle; % left and right diagonals
+else: fill z0--diag_end(0,4l,1,1,4r,3r)--diag_end(4r,3r,1,1,2l,1l)
+ --diag_end(2l,1l,1,1,1r,0)--cycle; fi % left and right diagonals
+penpos5(whatever,angle(z2-z1)); z5=whatever[z1,z2];
+penpos6(whatever,angle(z3-z4)); z6=whatever[z3,z4]; y6=y5;
+if hefty: y5r else: y5 fi =5/12y0;
+y5r-y5l=y6r-y6l=cap_band; penstroke z5e--z6e; % bar line
+if serifs: numeric inner_jut; pickup tiny.nib;
+ prime_points_inside(1,2); prime_points_inside(4,3);
+ if rt x1'r+cap_jut+.5u+1<=lft x4'l-cap_jut: inner_jut=cap_jut;
+ else: rt x1'r+inner_jut+.5u+1=lft x4'l-inner_jut; fi
+ dish_serif(1',2,a,1/2,outer_jut,b,.6,inner_jut)(dark); % left serif
+ dish_serif(4',3,c,1/2,inner_jut,d,1/3,outer_jut); fi % right serif
+penlabels(0,1,2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter BE";
+beginchar(CYRB,12.5u#,cap_height#,0);
+italcorr .75cap_height#*slant-.5u#;
+adjust_fit(cap_serif_fit#,0);
+numeric left_stem,right_curve;
+left_stem=cap_stem-hround 2stem_corr;
+pickup tiny.nib; pos1(left_stem,0); pos2(left_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5left_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+penpos5(cap_band,90); penpos6(cap_band,90); penpos7(right_curve,0);
+penpos8(cap_band,-90); penpos9(cap_band,-90);
+z9r=bot z2; y8=y9; y7=.5[y8,y6]; y5=y6=.52h;
+x8=x6; x5=x1; x6l:=x6-.25u; x7r=hround(w-u); x8l:=x8l-.5u;
+if serifs: right_curve=cap_curve-stem_corr; x6=.5[x1,w-1.8u];
+else: right_curve=cap_curve-3stem_corr; x6=.5[x1,w-1.5u];
+x6l:=x6l-.5u; fi
+fill stroke z5e..super_arc.e(6,7) & super_arc.e(7,8)..z9e; % lower lobe
+pickup crisp.nib; pos3(slab,90); pos4(hair,0);
+top y3r=h; x3=x1; rt x4r=hround(w-2u); y4=good.y(y3l-.8beak)-eps;
+arm(3,4,e,beak_darkness,.9beak_jut); % upper arm and beak
+if serifs: nodish_serif(1,2,a,1/3,cap_jut,b,1/3,.5cap_jut); % upper serif
+nodish_serif(2,1,c,1/3,cap_jut,d,1/3,.5cap_jut); fi % lower serif
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter VE";
+beginchar(CYRV,12.5u#,cap_height#,0);
+italcorr .75cap_height#*slant-.5u#;
+adjust_fit(cap_serif_fit#,0);
+numeric left_stem,right_curve,middle_weight;
+left_stem=cap_stem-hround 2stem_corr; middle_weight=.6vair+.5;
+pickup tiny.nib; pos1(left_stem,0); pos2(left_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5left_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+penpos3(cap_band,90); penpos4(cap_band,90);
+penpos6(middle_weight,-90); penpos7(middle_weight,-90);
+penpos8(middle_weight,90); penpos9(middle_weight,90);
+penpos5(right_curve-stem_corr,0); penpos10(right_curve,0);
+penpos11(cap_band,-90); penpos12(cap_band,-90);
+z3r=top z1; y4=y3; y5=.5[y4,y6]; y6=y7; y7l-y8l=vair;
+z12r=bot z2; y11=y12; y10=.5[y11,y9]; y8=y9; .5[y7l,y8l]=.52h;
+x4=x6; x9=x11=x4+.5u; x7=x8=x1; x9l:=x4+.25u;
+x5r=hround(w-1.5u); x10r=hround(w-u);
+if serifs: right_curve=cap_curve-stem_corr; x4=.5[x1,w-1.5u];
+else: right_curve=cap_curve-3stem_corr; x4=.5[x1,w-2.5u];
+ x4l:=x4l-.5u; x9l:=x9l-.5u; fi
+x6l:=x6l-.5u; x11l:=x11l-.5u;
+fill stroke z3e..super_arc.e(4,5) & super_arc.e(5,6)..z7e; % upper lobe
+fill stroke z8e..super_arc.e(9,10) & super_arc.e(10,11)..z12e; % lower lobe
+if serifs: nodish_serif(1,2,a,1/3,cap_jut,b,1/3,.5cap_jut); % upper serif
+ nodish_serif(2,1,c,1/3,cap_jut,d,1/3,.5cap_jut); fi % lower serif
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6,7,8,9,10,11,12); endchar;
+
+cmchar "The cyrillic letter GHE";
+beginchar(CYRG,11.5u#-width_adj#,cap_height#,0);
+italcorr cap_height#*slant-beak_jut#-.25u#;
+adjust_fit(cap_serif_fit#,0);
+h:=vround(h-stem_corr);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+pickup crisp.nib; pos3(slab,90); pos4(hair,0);
+top y3r=h; x3=x1; rt x4r=hround(w-.75u); y4=good.y(y3l-beak)-eps;
+arm(3,4,e,beak_darkness,beak_jut); % upper arm and beak
+if serifs: nodish_serif(1,2,a,1/3,cap_jut,b,1/3,.5cap_jut); % upper serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,1.25cap_jut); fi % lower serif
+math_fit(0,ic#-2.5u#); penlabels(1,2,3,4); endchar;
+
+cmchar "The cyrillic letter DE";
+beginchar(CYRD,13u#,cap_height#,comma_depth#);
+italcorr cap_height#*slant-cap_serif_fit#
+ +.75cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(0,cap_serif_fit#);
+pickup tiny.nib; numeric thin_stem;
+thin_stem=if monospace: cap_stem-tiny
+ else: min(cap_hair,cap_stem-1.5tiny) fi;
+if thin_stem<0: thin_stem:=epsilon fi;
+if serifs: penpos1(thin_stem,0); penpos2(thin_stem,0); %
+ %
+ % changed due to error with kmvtt10.mf
+ % see also mcyrl.mf
+ %
+ % O. Corff, June 1st, 1998, Ulaanbaatar
+ %
+penpos0(thin_stem,0); x2=.5[hround .5u,x1];
+else: penpos1(thin_stem,0); penpos2(thin_stem,0);
+penpos0(thin_stem,0); x2=.5u+cap_stem; fi
+pos3(cap_stem,0); pos4(cap_stem,0);
+x1l=x0l=.33w; top y1=h; y0=.75h; bot y2=0;
+rt x3r=rt x4r=hround(w-2u); top y3=h; bot y4=0;
+filldraw stroke z3e--z4e;
+filldraw stroke z1e--z0e{down}..z2e; % stem and arc
+if serifs: pickup crisp.nib; numeric inner_jut, newbracket;
+ newbracket:=max(1.5,bracket); inner_jut:=.5(x3l-x1r);
+ path p[]; p1=z1{down}...z2;
+ p12=(0,y1-newbracket)--(w,y1-newbracket);
+ p21=(0,y2+newbracket)--(w,y2+newbracket);
+ z12=p1 intersectionpoint p12; z21=p1 intersectionpoint p21;
+ nodish_serif(1,12,a,1/3,cap_jut,b,1/3,inner_jut); % upper left serif
+ nodish_serif(3,4,c,1/3,inner_jut,d,1/3,cap_jut); % upper right serif
+ inner_jut:=.5(x4l-x2r);
+ nodish_serif(2,21,e,1/3,cap_jut,f,1/3,inner_jut); % middle left serif
+ nodish_serif(4,3,g,1/3,inner_jut,h,1/3,cap_jut); % middle right serif
+ pickup crisp.nib;
+ pos5(slab,90); pos6(cap_hair,180); pos7(cap_hair,0);
+ x5=.5[x2,x4]; bot y5l=0;
+ rt x7r=tiny.rt x4r+cap_jut; lft x6r=tiny.lft x2l-cap_jut;
+ y6=y7=good.y(y5l-.5beak)-eps;
+ arm(5,6,m,1.25beak_darkness,0); % left beak
+ arm(5,7,n,1.25beak_darkness,0); % right beak
+else:
+ pos1'(slab,90); pos3'(slab,90);
+ pos6(slab,90); pos7(slab,90);
+ pos6'(stem,0); pos7'(stem,0);
+ pos8(stem,0); pos9(stem,0);
+ lft x1'=lft x1l; rt x3'=rt x3r; top y1'r=top y3'r=h;
+ lft x6=lft x6'l=lft x8l=.5u; rt x7=rt x7'r=rt x9r=w-.5u;
+ bot y6l=bot y7l=0; y6'=y7'=y6; bot y8=bot y9=-.8d;
+ filldraw stroke z1'e--z3'e; % upper bar
+ filldraw stroke z6e--z7e; % lower bar
+ filldraw stroke z6'e--z8e; % left beak
+ filldraw stroke z7'e--z9e; % right beak
+fi
+math_fit(0,.5ic#-.5u#);
+penlabels(0,1,1',2,3,3',4,5,6,7,8,9,12,21); endchar;
+
+cmchar "The cyrillic letter IE";
+beginchar(CYRE,12u#-width_adj#,cap_height#,0);
+italcorr cap_height#*slant-beak_jut#-.5u#;
+adjust_fit(cap_serif_fit#,0);
+h:=vround(h-stem_corr);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+pickup crisp.nib; pos3(slab,90); pos4(hair,0);
+top y3r=h; x3=x1; rt x4r=hround(w-u); y4=good.y(y3l-beak)-eps;
+arm(3,4,e,beak_darkness,beak_jut); % upper arm and beak
+pos5(cap_bar,-90); pos6(hair,0);
+top y5l=vround(.52[y2,y1]+.5cap_bar); x5=x1;
+pos0(cap_bar,90); pos7(hair,0);
+z0=z5; x6=x7; y6-y5l=y0l-y7;
+if serifs: rt x6r=hround(w-4.4u+.5hair); y6=good.y(y5l+.6beak)+eps;
+ rt x9r=hround(w-.5u);
+else: rt x6r=hround(w-1.5u); y6=y5l+eps; rt x9r=hround(w-.75u); fi
+arm(5,6,f,beak_darkness,0); arm(0,7,g,beak_darkness,0); % middle arm and serif
+pos8(slab if not serifs:+2stem_corr fi,-90); pos9(hair,0);
+bot y8r=0; x8=x2; y9=good.y(y8l+7/6beak)+eps;
+arm(8,9,h,beak_darkness,1.5beak_jut); % lower arm and beak
+if serifs: nodish_serif(1,2,a,1/3,cap_jut,b,1/3,.5cap_jut); % upper serif
+ nodish_serif(2,1,c,1/3,cap_jut,d,1/3,.5cap_jut); fi % lower serif
+math_fit(0,.5ic#); penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter YE";
+numeric dot_diam#,dot_diam;
+dot_diam#=max(dot_size#,cap_curve#);
+beginchar(CYRYO,12u#-width_adj#,1.3cap_height#,0);
+dot_diam=max(tiny.breadth,hround(max(dot_size,cap_curve)-2stem_corr));
+italcorr cap_height#*slant-beak_jut#-.5u#;
+adjust_fit(cap_serif_fit#,0);
+numeric letter_h; letter_h=cap_height;
+letter_h:=vround(letter_h-stem_corr);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem); top y1=letter_h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+pickup crisp.nib; pos3(slab,90); pos4(hair,0);
+top y3r=letter_h; x3=x1; rt x4r=hround(w-u); y4=good.y(y3l-beak)-eps;
+arm(3,4,e,beak_darkness,beak_jut); % upper arm and beak
+pos5(cap_bar,-90); pos6(hair,0);
+top y5l=vround(.52[y2,y1]+.5cap_bar); x5=x1;
+pos0(cap_bar,90); pos7(hair,0);
+z0=z5; x6=x7; y6-y5l=y0l-y7;
+if serifs: rt x6r=hround(w-4.4u+.5hair); y6=good.y(y5l+.6beak)+eps;
+ rt x9r=hround(w-.5u);
+else: rt x6r=hround(w-1.5u); y6=y5l+eps; rt x9r=hround(w-.75u); fi
+arm(5,6,f,beak_darkness,0); arm(0,7,g,beak_darkness,0); % middle arm and serif
+pos8(slab if not serifs:+2stem_corr fi,-90); pos9(hair,0);
+bot y8r=0; x8=x2; y9=good.y(y8l+7/6beak)+eps;
+arm(8,9,h,beak_darkness,1.5beak_jut); % lower arm and beak
+if serifs: nodish_serif(1,2,a,1/3,cap_jut,b,1/3,.5cap_jut); % upper serif
+ nodish_serif(2,1,c,1/3,cap_jut,d,1/3,.5cap_jut); fi % lower serif
+pos10(dot_diam,0); pos11(dot_diam,90);
+x10=x11=3.5u; top y11r=h+1;
+if bot y11l<letter_h+o+slab: y11l:=min(y11r-eps,letter_h+o+slab+.5tiny); fi
+y10=.5[y11l,y11r]; dot(10,11); % left dot
+pos12(dot_diam,0); penpos13(y11r-y11l,90); y12=y13=y10; x12=x13=w-x10;
+dot(12,13); % right dot
+math_fit(0,.5ic#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13); endchar;
+
+cmchar "The cyrillic letter ZHE";
+beginchar(CYRZH,21u#,cap_height#,0);
+italcorr cap_height#*slant-.5u#;
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+numeric right_jut,stem[],alpha[];
+if serifs: right_jut=.6cap_jut;
+else: right_jut=.4tiny; fi
+pickup tiny.nib; pos1(fudged.cap_stem,0); pos2(fudged.cap_stem,0);
+x1=x2=.5w; top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+stem2=max(tiny.breadth,fudged.cap_stem-3stem_corr);
+stem1=max(tiny.breadth,fudged.hair if hefty:-3stem_corr fi);
+rt x3r=w-lft x7l=hround(r-letter_fit-u-right_jut);
+rt x6r=w-lft x9l=hround(r-letter_fit-.75u-right_jut);
+top y3=top y7=h; bot y6=bot y9=0; x4=x4'=x1; y4=y4'=1/3h;
+alpha1=diag_ratio(1,.5(stem1-tiny),y3-y4,x3r-x4);
+penpos3(alpha1*(stem1-tiny),0); penpos4(whatever,-90);
+penpos7(alpha1*(stem1-tiny),0);
+alpha2=diag_ratio(1,.5(stem2-tiny),y1-y6,x6r-x1);
+penpos6(alpha2*(stem2-tiny),0); penpos9(alpha2*(stem2-tiny),0);
+forsuffixes $=l,r: y3'$=y7'$=h; y6'$=y9'$=0;
+ z4$=z3'$+whatever*(z3-z4);
+ z5$=z6'$+whatever*(z1-z6)=whatever[z3,z4];
+ x8$=w-x5$; y8$=y5$; endfor
+z5=.5[z5l,z5r]; z8=.5[z8l,z8r];
+z3'r=z3r+penoffset z3-z4 of currentpen+whatever*(z3-z4);
+z6'r=z6r+penoffset z1-z6 of currentpen+whatever*(z1-z6);
+z6'l=z6l+penoffset z6-z1 of currentpen+whatever*(z1-z6);
+x7'r=w-x3'r; x7'l=w-x3'l; x9'r=w-x6'r; x9'l=w-x6'l;
+fill z4r--diag_end(4r,3'r,1,.5,3'l,4l)--z4l--cycle; % right upper diagonal
+fill z4r--diag_end(4r,7'r,1,.5,7'l,4l)--z4l--cycle; % left upper diagonal
+fill z5l--diag_end(5l,6'l,.5,1,6'r,5r)--z5r--cycle; % right lower diagonal
+fill z8l--diag_end(8l,9'l,.5,1,9'r,8r)--z8r--cycle; % left lower diagonal
+if serifs: numeric inner_jut;
+ if rt x2r+cap_jut+.5u+1<=lft x6l-cap_jut: inner_jut=cap_jut;
+ else: rt x2r+cap_jut+.5u+1=lft x6l-inner_jut; fi
+ dish_serif(1,2,a,1/3,cap_jut,b,1/3,cap_jut); % upper stem serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,cap_jut); % lower stem serif
+ dish_serif(3,4,e,2/3,1.2cap_jut,f,1/2,right_jut)(dark); % upper diagonal serif
+ dish_serif(6,5,g,1/2,inner_jut,h,1/3,right_jut)(dark); % lower diagonal serif
+ dish_serif(7,4,i,1/2,right_jut,j,2/3,1.2cap_jut)(dark); % upper diagonal seri
+ dish_serif(9,8,k,1/3,right_jut,l,1/2,inner_jut)(dark);fi % lower diagonal seri
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter ZE";
+beginchar(CYRZ,11u#,cap_height#,0);
+italcorr cap_height#*slant-.5u#;
+adjust_fit(0,0);pickup fine.nib;
+if serifs: pos1(cap_hair,180); pos2(cap_band,90);
+ pos3(max(fine.breadth,cap_curve-stem_corr),0); pos4(vair',270);
+ lft x1r=1.5u; top y2r=h+o;
+ bot y1=min(vround .7h,bot y2l-eps); rt x3r=hround(w-u);
+ pos7(cap_bar,-90); pos8(cap_bar,-90);
+ pos9(max(fine.breadth,vround 2/3cap_bar),90); pos10(cap_curve,0);
+ x9=.5w-.75u; x2=x4=.5w; bot y4r=-o;
+ rt x10r=w-.5u; lft x8=min(hround 5u,lft x9)-eps;
+ y3=.5[top y7l,bot y2l]; y10=.5[bot y9l,top y4l];
+ top y8l=vround(.54h+.5vair); y8r=y9l;
+ x7=1/3[x8,x3l]; z7=z8+whatever*(150u,h);
+ pos5(cap_hair,180); lft x5r=hround(u);
+ y5=max(good.y(.6bar_height),y4l+vair');
+ (x,y4l)=whatever[z4r,z5l]; x4l:=max(x,x4l-.5u);
+ interim superness:=more_super;
+ filldraw stroke z1e{up}
+ ... pulled_super_arc.e(2,3)(.5superpull)
+ & z3e{down}...z7e---z8e; % upper bowl
+% filldraw z8r--z9l--z9r--z8l---cycle; % middle tip
+ filldraw stroke pulled_super_arc.e(9,10)(.5superpull)
+ & pulled_super_arc.e(10,4)(.5superpull)
+ ..z5e; % arc and lower terminal
+ pos6(.3[fine.breadth,cap_hair],180); x6r=x1r; top y6=h+o;
+ x1'-x1r=1.5cap_curve-fine; y1'=y1;
+ path upper_arc; upper_arc=z1{x1-x2,10(y2-y1)}..z2{right};
+ numeric t; t=xpart(upper_arc intersectiontimes (z6l--z1'));
+ filldraw z1r--z6r--z6l--subpath(t,0) of upper_arc--cycle; % barb
+else: pos1(1.2flare,100); pos2(slab,90);
+ pos3(cap_curve,0); pos4(slab,-90); pos5(flare,-95);
+ rt x1r=hround(1.1u); x2=.5w; x4=.45[x1,x10]; x9=.5w-u;
+ rt x3r=hround w-max(u,2u-.5cap_curve); rt x5r=hround(.9u);
+ top y1r=vround .9h+o; top y2r=h+o; y3=.5[y7,y2];
+ bot y4r=-o; bot y5r=vround .15h-o; y5l:=good.y y5l; x5l:=good.x x5l;
+ pos7(vair,-90); pos8(vair,-90);
+ pos9(max(fine.breadth,vround 2/3vair),90); pos10(cap_curve,0);
+ rt x10r=hround(w-.75u); lft x8=min(hround 5u,lft x9)-eps;
+ y10=.5[y9,y4]; top y8l=vround(.54h+.5vair); y8r=y9l;
+ x7=1/3[x8,x3l]; z7=z8+whatever*(150u,h);
+ filldraw stroke rterm.e(2,1,left,.9,4) & super_arc.e(2,3)
+ & pulled_arc.e(3,8); % upper bowl
+ filldraw stroke pulled_arc.e(9,10)
+ & super_arc.e(10,4) & term.e(4,5,left,.8,4); fi % lower bowl
+penlabels(1,1',2,3,4,5,6,7,8,9,10); endchar;
+
+cmchar "The cyrillic letter I";
+beginchar(CYRI,13u#+width_adj#,cap_height#,0);
+italcorr cap_height#*slant-cap_serif_fit#+cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+pos3(cap_stem,0); pos4(cap_stem,0);
+top y1=top y3=h; bot y2=bot y4=0;
+x1=x2; x3=x4; x1l=w-x3r; rt x3r=hround min(w-2u,w-3u+.5fudged.cap_stem);
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+if serifs: y5=h-y6=.1h;
+ else: bot y5l=h-top y6r=0; fi
+x5=rt x2r; x6=lft x3l;
+if hefty: numeric upper_notch,lower_notch,alpha;
+ alpha=if monospace: 100 else: 90 fi;
+ upper_notch=h-cap_notch_cut; lower_notch=cap_notch_cut;
+ penpos5(1.5cap_stem,alpha); penpos6(1.5cap_stem,alpha);
+ x2'=rt x2r; z2'=whatever[z6r,z5r]; x3'=lft x3l; z3'=whatever[z5l,z6l];
+ fill z5l..
+ if y2'<lower_notch: {right}(x2'+1,lower_notch){up}... fi
+ {z6-z5}diag_in(5l,6l,1,6r)--z6r..
+ if y3'>upper_notch: {left}(x3'-1,upper_notch){down}... fi
+ {z5-z6}diag_in(6r,5r,1,5l)--cycle; % diagonal
+else: penpos5(whatever,90); penpos6(whatever,90);
+ z7=z6l-(cap_hair,0) rotated (angle(z5-z6)-90);
+ z5r=z7+whatever*(z5-z6); z6r=z7+whatever*(z5-z6);
+ filldraw stroke z5e..z6e; fi % diagonal
+if serifs: numeric inner_jut;
+ if rt x1r+cap_jut+.5u+1<=lft x3l-cap_jut: inner_jut=cap_jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3,cap_jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,inner_jut); % lower left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,cap_jut); % upper left serif
+ dish_serif(4,3,g,1/3,inner_jut,h,1/3,cap_jut); fi % lower left serif
+math_fit(0,max(.5ic#-.5u#,0));
+penlabels(1,2,2',3,3',4,5,6,7); endchar;
+
+cmchar "The cyrillic letter SHORT I";
+beginchar(CYRISHRT,13u#+width_adj#,1.3cap_height#,0);
+italcorr 1.3cap_height#*slant-cap_serif_fit#+cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem',0); pos2(cap_stem',0);
+pos3(cap_stem',0); pos4(cap_stem',0);
+pickup tiny.nib; top y1=top y3=cap_height; bot y2=bot y4=0;
+x1=x2; x3=x4; x1l=w-x3r; rt x3r=hround min(w-2u,w-3u+.5fudged.cap_stem);
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+if serifs: y5=cap_height-y6=.12cap_height;
+ else: bot y5l=cap_height-top y6r=0; fi
+x5=rt x2r; x6=lft x3l;
+if hefty: numeric upper_notch,lower_notch,alpha;
+ alpha=if monospace: 100 else: 90 fi;
+ upper_notch=cap_height-cap_notch_cut; lower_notch=cap_notch_cut;
+ penpos5(1.5cap_stem,alpha); penpos6(1.5cap_stem,alpha);
+ x2'=rt x2r; z2'=whatever[z6r,z5r]; x3'=lft x3l; z3'=whatever[z5l,z6l];
+ fill z5l..
+ if y2'<lower_notch: {right}(x2'+1,lower_notch){up}... fi
+ {z6-z5}diag_in(5l,6l,1,6r)--z6r..
+ if y3'>upper_notch: {left}(x3'-1,upper_notch){down}... fi
+ {z5-z6}diag_in(6r,5r,1,5l)--cycle; % diagonal
+else: penpos5(whatever,90); penpos6(whatever,90);
+ z6'=z6l-(cap_hair,0) rotated (angle(z5-z6)-90);
+ z5r=z6'+whatever*(z5-z6); z6r=z6'+whatever*(z5-z6);
+ filldraw stroke z5e..z6e; fi % diagonal
+if serifs: numeric inner_jut;
+ if rt x1r+cap_jut+.5u+1<=lft x3l-cap_jut: inner_jut=cap_jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3,cap_jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,inner_jut); % lower left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,cap_jut); % upper right serif
+ dish_serif(4,3,g,1/3,inner_jut,h,1/3,cap_jut); % lower right serif
+ if monospace: penpos7(.25vair,-90);
+ else: penpos7(vair,-90); fi
+ penpos8(.7vair,-180); penpos9(.75flare,-180);
+ penpos10(.7vair,0); penpos11(.75flare,0);
+ x7=.5[x8,x10]; bot y7r=.85h;
+ x8=.5w-2u; x10=w-x8; y8=y11=.95h;
+ bulb(7,8,9); % left bulb
+ bulb(7,10,11); % right bulb
+else: pickup fine.nib; penpos7(.75vair,-90);
+ penpos8(.75vair,-180); penpos10(.75vair,0);
+ x7=.5[x8,x10]; y7=.9h;
+ x8r=x1r; x10r=x3l; top y8=top y10=h;
+ filldraw stroke z8e...z7e...z10e;
+fi
+math_fit(0,max(.5ic#-.5u#,0));
+penlabels(1,2,2',3,3',4,5,6,7,8,9,10,11); endchar;
+
+cmchar "The cyrillic letter KA";
+beginchar(CYRK,13.5u#,cap_height#,0);
+italcorr cap_height#*slant-.5u#;
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+numeric right_jut,stem[],alpha[];
+if serifs: right_jut=.6cap_jut;
+else: right_jut=.4tiny; fi
+pickup tiny.nib; pos1(fudged.cap_stem,0); pos2(fudged.cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5fudged.cap_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+stem2=max(tiny.breadth,fudged.cap_stem-3stem_corr);
+stem1=max(tiny.breadth,fudged.hair if hefty:-3stem_corr fi);
+top y3=h; rt x3r=hround(r-letter_fit-u-right_jut);
+bot y6=0; rt x6r=hround(r-letter_fit-.75u-right_jut);
+x4=x1; y4=1/3h;
+alpha1=diag_ratio(1,.5(stem1-tiny),y3-y4,x3r-x4);
+penpos3(alpha1*(stem1-tiny),0); penpos4(whatever,-90);
+alpha2=diag_ratio(1,.5(stem2-tiny),y1-y6,x6r-x1);
+penpos6(alpha2*(stem2-tiny),0);
+forsuffixes $=l,r: y3'$=h; y6'$=0; z4$=z3'$+whatever*(z3-z4);
+ z5$=z6'$+whatever*(z1-z6)=whatever[z3,z4]; endfor
+z5=.5[z5l,z5r];
+z3'r=z3r+penoffset z3-z4 of currentpen+whatever*(z3-z4);
+% we have also |z3'l=z3l+penoffset z4-z3 of currentpen+whatever*(z3-z4)|;\]
+z6'r=z6r+penoffset z1-z6 of currentpen+whatever*(z1-z6);
+z6'l=z6l+penoffset z6-z1 of currentpen+whatever*(z1-z6);
+fill z4r--diag_end(4r,3'r,1,.5,3'l,4l)--z4l--cycle; % upper diagonal
+fill z5l--diag_end(5l,6'l,.5,1,6'r,5r)--z5r--cycle; % lower diagonal
+if serifs: numeric inner_jut;
+ if rt x2r+cap_jut+.5u+1<=lft x6l-cap_jut: inner_jut=cap_jut;
+ else: rt x2r+cap_jut+.5u+1=lft x6l-inner_jut; fi
+ dish_serif(1,2,a,1/3,cap_jut,b,1/3,cap_jut); % upper stem serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,cap_jut); % lower stem serif
+ dish_serif(3,4,e,2/3,1.2cap_jut,f,1/2,right_jut)(dark); % upper diagonal serif
+ dish_serif(6,5,g,1/2,inner_jut,h,1/3,right_jut)(dark);fi % lower diagonal serif
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter EL";
+beginchar(CYRL,13u#,cap_height#,0);
+italcorr cap_height#*slant-cap_serif_fit#
+ +.75cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(0,cap_serif_fit#);
+pickup tiny.nib; numeric thin_stem;
+thin_stem=min(1.5cap_hair,cap_stem);
+if serifs: pos1(thin_stem,0); pos12(thin_stem,0);
+else: pos1(cap_hair,0); pos12(cap_hair,0); fi
+pos5(cap_stem,0); pos6(cap_stem,0);
+x1=.33w; top y1=h; x12=x1; y12=.5h;
+rt x5r=rt x6r=hround(w-3u+.5cap_stem); top y5=h; bot y6=0;
+filldraw stroke z5e--z6e; % right stem
+if serifs: numeric inner_jut;
+ inner_jut:=.5(x5l-x1r);
+ pos2(thin_stem,-90); pos3(thin_stem,-180);
+ pos4(1.2flare,-180);
+ bot y2r=-o; x2=.38[x4,x1]; y4=.15h; rt x4l=hround 2.5u; z4r=z3r;
+ bulb(2,3,4); % bulb
+ filldraw stroke z2e{right}...{up}z12e--z1e; % left stem and arc
+ nodish_serif(1,12,a,1/3,cap_jut,b,1/3,inner_jut); % upper left serif
+ nodish_serif(5,6,g,1/3,inner_jut,h,1/3,cap_jut); % upper right serif
+ dish_serif(6,5,e,1/3,cap_jut,f,1/3,cap_jut); % lower right serif
+else: pos1'(slab,90); pos5'(slab,90);
+ pos2(cap_hair,-90); pos3(cap_hair,-90);
+ x2=.5u; x3=x2+u; bot y2r=0; bot y3r=-o;
+ lft x1'=lft x1l; rt x5'=rt x5r; top y1'r=top y5'r=h;
+ filldraw stroke z1'e--z5'e; % upper bar
+ filldraw stroke z2e...z3e{right}...{up}z12e--z1e; % stem and arc
+fi
+math_fit(0,.5ic#-.5u#);
+penlabels(1,1',2,3,4,5,5',6,7); endchar;
+
+cmchar "The cyrillic letter EM";
+beginchar(CYRM,16u#+width_adj#,cap_height#,0);
+italcorr cap_height#*slant-cap_serif_fit#+cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+numeric stem[]; % thicknesses of the four strokes
+stem1=hround(fudged.hair+stem_corr);
+stem2=hround(fudged.cap_stem-4stem_corr);
+stem3=hround(fudged.hair-stem_corr);
+stem4=hround(fudged.cap_stem-3stem_corr);
+if stem4<stem1: stem4:=stem1; fi
+pickup tiny.nib; pos1(stem1,0); pos2(stem1,0);
+pos3(stem4,0); pos4(stem4,0);
+x1=x2; x3=x4; x1l=w-x3r; rt x3r=hround min(w-2u,w-3u+.5stem4);
+top y1=top y3=h; bot y2=bot y4=0;
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+penpos5(stem2,0); penpos6(stem2,0); penpos7(stem3,0); penpos8(stem3,0);
+x5l=x1; x6l=x7l; x8=lft x3l; x6-x5=x8-x7; y5=y8=h; y6=y7;
+if hefty: y6=if monospace: vround 1/3h else: o fi;
+ numeric upper_notch,lower_notch;
+ upper_notch=h-cap_notch_cut; lower_notch=y6+cap_notch_cut;
+ x1'=rt x1r; z1'=whatever[z5l,z6l]; x3'=lft x3l; z3'=whatever[z7r,z8r];
+ z0=whatever[z5r,z6r]=whatever[z7l,z8l];
+ fill z5l..
+ if y1'<upper_notch: {right}(x1'+1,upper_notch){down}... fi
+ {z6-z5}diag_in(5l,6l,1,6r)..diag_out(7l,1,7r,8r){z8-z7}
+ if y3'<upper_notch: ...{up}(x3'-1,upper_notch){right} fi
+ ..z8r--diag_out(8r,1,8l,7l){z7-z8}
+ if y0<=lower_notch: ..{z7-z8}z0{z5-z6}..
+ else: ...{down}(x0+.5,lower_notch)--(x0-.5,lower_notch){up}... fi
+ {z5-z6}diag_in(6r,5r,1,5l)--cycle; % diagonals
+else: y6=0; z0=whatever[z5r,z6r]=whatever[z7l,z8l];
+ fill z5l..{z6-z5}diag_in(5l,6l,1,6r)..diag_out(7l,1,7r,8r){z8-z7}
+ ..z8r--diag_out(8r,1,8l,7l){z7-z8}..{z7-z8}z0{z5-z6}
+ ..{z5-z6}diag_in(6r,5r,1,5l)--cycle; fi % diagonals
+if serifs: serif(1,2,a,1/3,-cap_jut); % upper left serif
+ dish_serif(2,1,b,1/2,cap_jut,c,1/2,cap_jut)(dark); % lower left serif
+ serif(3,4,d,1/3,cap_jut); % upper right serif
+ dish_serif(4,3,e,1/3,cap_jut,f,1/3,cap_jut); fi % lower right serif
+math_fit(0,max(.5ic#-.5u#,0));
+penlabels(0,1,1',2,3,3',4,5,6,7,8); endchar;
+
+
+cmchar "The cyrillic letter EN";
+beginchar(CYRN,13u#+width_adj#,cap_height#,0);
+italcorr cap_height#*slant-cap_serif_fit#+cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+pos3(cap_stem,0); pos4(cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem); x3=x4=w-x1;
+top y1=top y3=h; bot y2=bot y4=0;
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+penpos5(cap_bar,90); penpos6(cap_bar,90);
+x5=x1; x6=x3; y5=y6=.52h;
+fill stroke z5e--z6e; % bar
+if serifs:
+ numeric inner_jut;
+ if rt x1r+cap_jut+.5u+1<=lft x3l-cap_jut: inner_jut=cap_jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3,cap_jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,inner_jut); % lower left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,cap_jut); % upper left serif
+ dish_serif(4,3,g,1/3,inner_jut,h,1/3,cap_jut); fi % lower left serif
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter O";
+beginchar(CYRO,14u#-width_adj#,cap_height#,0);
+italcorr .7cap_height#*slant-.5u#;
+adjust_fit(0,0);
+penpos1(vair',90); penpos3(vround(vair+1.5vair_corr),-90);
+penpos2(cap_curve,180); penpos4(cap_curve,0);
+if monospace: x2r=hround 1.5u;
+ interim superness:=sqrt superness; % make |"O"|, not |"0"|
+else: x2r=hround u; fi
+x4r=w-x2r; x1=x3=.5w; y1r=h+o; y3r=-o;
+y2=y4=.5h-vair_corr; y2l:=y4l:=.52h;
+penstroke pulled_super_arc.e(1,2)(.5superpull)
+ & pulled_super_arc.e(2,3)(.5superpull)
+ & pulled_super_arc.e(3,4)(.5superpull)
+ & pulled_super_arc.e(4,1)(.5superpull) & cycle; % bowl
+math_fit(-.3cap_height#*slant-.5u#,ic#-.5u#); penlabels(1,2,3,4); endchar;
+
+cmchar "The cyrillic letter PE";
+beginchar(CYRP,13u#+width_adj#,cap_height#,0);
+italcorr cap_height#*slant-cap_serif_fit#+cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+pos3(cap_stem,0); pos4(cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem); x3=x4=w-x1;
+top y1=top y3=h; bot y2=bot y4=0;
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+if serifs: numeric inner_jut;
+ if rt x1r+cap_jut+.5u+1<=lft x3l-cap_jut: inner_jut=cap_jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,inner_jut); % lower left serif
+ dish_serif(4,3,g,1/3,inner_jut,h,1/3,cap_jut); % lower left serif
+ inner_jut:=inner_jut+2u;
+ nodish_serif(1,2,a,1/3,cap_jut,b,1/3,inner_jut); % upper left serif
+ nodish_serif(3,4,e,1/3,inner_jut,f,1/3,cap_jut); % upper left serif
+else: pos5(slab,90); pos6(slab,90);
+ lft x5=x1l; rt x6=x3r; y5r=y6r=y3;
+ filldraw stroke z5e--z6e; fi % upper bar
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter ER";
+beginchar(CYRR,12u#,cap_height#,0);
+italcorr .75cap_height#*slant-.5u#;
+adjust_fit(cap_serif_fit#,0);
+pickup tiny.nib; penpos1(cap_stem'-tiny,0); penpos2(cap_stem-tiny,0);
+pos0(cap_stem',0); pos0'(cap_stem,0);
+lft x1l=hround max(2u,3u-.5cap_stem'); top y1=h; bot y2=0;
+x1l=x2l=x0l=x0'l; y0=y0'=y7;
+penpos3(cap_band,90); penpos4(cap_band,90);
+penpos5(cap_curve if hefty:-3stem_corr fi,0);
+penpos6(.5[vair,cap_band],-90); penpos7(.5[vair,cap_band],-90);
+z3r=top z1; y4=y3; y5=.5[y4l,y6l]; y6=y7;
+x7=x2; y7l=vround .5h; x4=x6=.5w+.75u; x5r=hround(w-u);
+x4l:=x6l:=x4-.25cap_curve;
+filldraw stroke z1e--z0e--z0'e--z2e; % stem
+fill stroke z3e..pulled_arc.e(4,5) & pulled_arc.e(5,6)..z7e; % lobe
+if serifs: nodish_serif(1,0,a,1/3,cap_jut,b,1/3,.5cap_jut); % upper serif
+ dish_serif(2,0',c,1/3,cap_jut,d,1/3,cap_jut); fi % lower serif
+math_fit(0,ic#-2.5u#); penlabels(0,1,2,3,4,5,6,7); endchar;
+
+cmchar "The cyrillic letter ES";
+if serifs: beginchar(CYRS,13u#,cap_height#,0);
+ italcorr cap_height#*slant-.5u#;
+ adjust_fit(0,0);
+ pickup fine.nib; pos1(cap_hair,0); pos2(cap_band,90);
+ pos3(cap_curve,180); pos4(cap_band,270); pos5(hair,360);
+ rt x1r=rt x5r=hround(w-u); lft x3r=hround u; x2=x4=.55[x3,x1];
+ top y2r=h+o; bot y4r=-o; y3=.5[y2,y4];
+ bot y1=min(vround max(.6h,x_height-.5vair),bot y2l-eps);
+ y5=max(good.y .95(h-y1),y4l+eps);
+ (x2l',y2l)=whatever[z2r,z1l]; x2l:=min(x2l',x2l+.5u);
+ (x4l',y4l)=whatever[z4r,z5l]; x4l:=min(x4l',x4l+.5u);
+ filldraw stroke z1e{x2-x1,10(y2-y1)}
+ ...pulled_arc.e(2,3) & pulled_arc.e(3,4)...{up}z5e; % arc
+ pos6(.3[fine.breadth,cap_hair],0); x6r=x1r; top y6=h+o;
+ x1r-x1'=2cap_curve-fine; y1'=y1;
+ path upper_arc; upper_arc=z1{x2-x1,10(y2-y1)}..z2{left};
+ numeric t; t=xpart(upper_arc intersectiontimes (z6l--z1'));
+ filldraw z1r--z6r--z6l--subpath(t,0) of upper_arc--cycle; % barb
+else: beginchar(CYRS,11.5u#,cap_height#,0);
+ italcorr cap_height#*slant-.5u#;
+ adjust_fit(0,0);
+ pickup fine.nib; pos1(1.2flare,80); pos2(slab,90);
+ pos3(cap_curve,180); pos4(slab,270); pos5(flare,275);
+ rt x1r=hround(w-1.1u); x2=x4=.5w+1.25u;
+ lft x3r=hround max(u,2u-.5cap_curve); rt x5r=hround(w-.9u);
+ top y1r=vround .95h+o; top y2r=h+o; y3=.5h;
+ bot y4r=-o; bot y5r=vround .08h-o; y5l:=good.y y5l; x5l:=good.x x5l;
+ filldraw stroke rterm.e(2,1,right,.9,4) & super_arc.e(2,3)
+ & super_arc.e(3,4) & term.e(4,5,right,.8,4); fi % arc and terminals
+math_fit(-.3cap_height#*slant-.5u#,.5ic#);
+penlabels(1,1',2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter TE";
+beginchar(CYRT,13u#-width_adj#,cap_height#,0);
+italcorr cap_height#*slant-beak_jut#-.25u#;
+adjust_fit(0,0);
+h:=vround(h-2stem_corr);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+lft x1l=lft x2l=hround(.5w-.5cap_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+pickup crisp.nib; pos3(slab,90); pos4(hair,0);
+top y3r=h; x3=x1; rt x4r=hround(w-.65u); y4=good.y(y3l-beak)-eps;
+arm(3,4,e,beak_darkness,.7beak_jut); % right arm and beak
+pos5(hair,180); x5=w-x4; y5=y4;
+arm(3,5,f,beak_darkness,-.7beak_jut); % left arm and beak
+if serifs: dish_serif(2,1,c,1/3,1.414cap_jut,d,1/3,1.414cap_jut); % lower serif
+ nodish_serif(1,2,a,1/3,.5cap_jut,b,1/3,.5cap_jut); fi % upper bracketing
+math_fit(-.75cap_height#*slant,ic#-2.5u#); penlabels(1,2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter U";
+beginchar(CYRU,13u#,cap_height#,0);
+italcorr cap_height#*slant+.25u#;
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+numeric left_stem,right_stem,bot_stem,bot_vair,outer_jut;
+left_stem=fudged.cap_stem-stem_corr;
+right_stem=fudged.hair if hefty:-2stem_corr fi;
+bot_stem=fudged.hair if hefty:-8stem_corr fi;
+bot_vair=Vround(if serifs: vair else: .5[vair,bot_stem] fi);
+outer_jut=.75cap_jut;
+x1l=w-x4r=l+letter_fit+outer_jut+.25u; y1=y4r=h; y2=y3=3.5u; x2l=x3l;
+numeric alpha,alpha[]; x9=5u; y9=bot_vair-o;
+alpha1=diag_ratio(2,bot_stem,y1-y3,x4r-x1l-apex_corr);
+alpha2=diag_ratio(1,bot_stem,y1-y9,x4r-x9);
+if alpha1<alpha2: x2l-x1l=x4r-x3r+apex_corr; alpha=alpha1;
+else: alpha=alpha2; z3l=whatever[z9,z4r-(alpha*bot_stem,0)]; fi
+penpos3(alpha*right_stem,0); penpos4(alpha*right_stem,0);
+alpha3=(y1++(x2l-x1l))/y1;
+penpos1(alpha3*left_stem,0); penpos2(alpha3*left_stem,0);
+z0=whatever[z1r,z2r]=z4l+whatever*(z3r-z4r);
+fill z0+.5right{up}...{z4r-z3r}diag_end(0,4l,1,1,4r,3r)
+ --z3r--z2l--diag_end(2l,1l,1,1,1r,2r){z2-z1}
+ ...{down}z0+.5left--cycle; % left and right diagonals
+penpos5(alpha*right_stem,0); z5r=whatever[z3r,z4r]; y5=.5[y3,y9];
+if serifs: numeric light_bulb;
+ light_bulb=hround 7/8[cap_hair,flare]; clearpen;
+ penpos6(vair,-90); penpos7(cap_hair,-180); penpos8(light_bulb,-180);
+ x6=4u; y6r=-o; y8+.5light_bulb=3u; x8r=hround 1.5u;
+ fill stroke z3e---z5e...{left}z6e; bulb(6,7,8); % arc and bulb
+ numeric inner_jut; pickup tiny.nib;
+ prime_points_inside(1,2); prime_points_inside(4,3);
+ if rt x1'r+cap_jut+.5u+1<=lft x4'l-cap_jut: inner_jut=cap_jut;
+ else: rt x1'r+inner_jut+.5u+1=lft x4'l-inner_jut; fi
+ dish_serif(1',2,a,1/3,outer_jut,b,1/2,inner_jut); % left serif
+ dish_serif(4',3,c,.6,inner_jut,d,1/2,outer_jut)(dark); % right serif
+else: penpos6(right_stem,-90); x6=4.75u; y6r=-o;
+ fill stroke z3e---z5e...{left}z6e; % arc
+ pickup fine.nib; pos6'(right_stem,-90); z6'=z6;
+ pos7(2/3[bot_stem,flare],-85);
+ lft x7l=hround 3.5u; bot y7r=.02h-o; y7l:=good.y y7l;
+ filldraw stroke term.e(6',7,left,1,4); fi % arc and terminal
+math_fit(0,.5ic#); penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter EF";
+beginchar(CYRF,14u#-width_adj#,cap_height#,0);
+italcorr .75cap_height#*slant-.5u#;
+adjust_fit(cap_serif_fit#,0);
+pickup tiny.nib; penpos1(cap_stem'-tiny,0); penpos2(cap_stem-tiny,0);
+x1=x2=.5w; top y1=h; bot y2=0;
+penpos3(cap_band,90); penpos4(cap_band,90); penpos5(curve,0);
+penpos6(.5[vair,cap_band],-90); penpos7(.5[vair,cap_band],-90);
+penpos8(cap_band,90); penpos9(curve,180);
+penpos10(.5[vair,cap_band],270);
+x3=x1; y3=y4=y8=vround .8h; y5=y9=.5[y4l,y6l];
+x7=x2; y7=vround .2h; x4r=x6r=w-x8r=w-x10r=.5w+1.75u;
+x5r=w-x9r=hround(w-.5u); y6=y10=y7;
+filldraw stroke z1e--z2e; % stem
+fill stroke z3e..pulled_arc.e(4,5) & pulled_arc.e(5,6)..z7e;
+fill stroke z3e..pulled_arc.e(8,9) & pulled_arc.e(9,10)..z7e; % lobe
+if serifs: dish_serif(1,2,a,1/3,cap_jut,b,1/3,cap_jut); % upper serif
+dish_serif(2,1,c,1/3,cap_jut,d,1/3,cap_jut); fi % lower serif
+math_fit(0,ic#-2.5u#);
+penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar;
+
+cmchar "The cyrillic letter XA";
+beginchar(CYRH,13u#,cap_height#,0);
+italcorr cap_height#*slant-.25u#;
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+numeric stem[],outer_jut,xjut,alpha[];
+stem1=cap_stem-2stem_corr; stem2=min(cap_hair,stem1);
+outer_jut=.75cap_jut; xjut= if serifs: (stem1-stem2)/4 else: 0 fi;
+x1l=l+letter_fit+.5u+outer_jut; x2r=r-letter_fit-u-outer_jut-xjut;
+x3l=l+letter_fit+.25u+outer_jut+xjut; x4r=r-letter_fit-.25u-outer_jut;
+y1=y2=h; y3=y4=0;
+alpha1=diag_ratio(1,stem1,h,x4r-x1l);
+alpha2=diag_ratio(1,stem2,h,x2r-x3l);
+penpos1(alpha1*stem1,0); penpos2(alpha2*stem2,0);
+penpos3(alpha2*stem2,0); penpos4(alpha1*stem1,0);
+if hefty: z0=whatever[z1,z4]=whatever[z2,z3];
+ x12=x34=x0; y13=y24=y0;
+ z12=whatever[z2l,z3l]; z13=whatever[z2l,z3l];
+ z24=whatever[z2r,z3r]; z34=whatever[z2r,z3r];
+ forsuffixes $=13,24,34: z$'=.1[z$,z0]; endfor
+ fill diag_end(12,1r,.5,1,1l,13')--z13'--diag_end(13',3l,1,.5,3r,34')--z34'
+ --diag_end(34',4l,.5,1,4r,24')--z24'
+ --diag_end(24',2r,1,.5,2l,12)--z12--cycle; % diagonals
+else: fill diag_end(4r,1r,.5,1,1l,4l)
+ --diag_end(1l,4l,.5,1,4r,1r)--cycle; % left diagonal
+ fill diag_end(2l,3l,.5,1,3r,2r)
+ --diag_end(3r,2r,.5,1,2l,3l)--cycle; fi % right diagonal
+if serifs: numeric inner_jut[]; pickup tiny.nib;
+ prime_points_inside(1,4); prime_points_inside(2,3);
+ prime_points_inside(3,2); prime_points_inside(4,1);
+ if rt x1'r+cap_jut+.5u+1<=lft x2'l-cap_jut-xjut: inner_jut1=cap_jut;
+ else: rt x1'r+inner_jut1+.5u+1=lft x2'l-inner_jut1-xjut; fi
+ if rt x3'r+cap_jut+.5u+1<=lft x4'l-cap_jut-xjut: inner_jut2=cap_jut;
+ else: rt x3'r+inner_jut2+.5u+1=lft x4'l-inner_jut2-xjut; fi
+ dish_serif(1',4,a,1/3,outer_jut,b,2/3,inner_jut1); % upper left serif
+ dish_serif(4',1,c,2/3,inner_jut2,d,1/3,outer_jut); % lower right serif
+ dish_serif(2',3,e,2/3,inner_jut1+xjut,
+ f,1/2,outer_jut+xjut)(dark); % upper right serif
+ dish_serif(3',2,g,1/2,outer_jut+xjut,
+ h,2/3,inner_jut2+xjut)(dark); fi % lower left serif
+math_fit(0,.5ic#); penlabels(0,1,2,3,4,12,13,24,34); endchar;
+
+cmchar "The cyrillic letter TSE";
+beginchar(CYRC,13u#+width_adj#,cap_height#,comma_depth#);
+italcorr cap_height#*slant-cap_serif_fit#+cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+pos3(cap_stem,0); pos4(cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem); x3=x4=w-x1;
+top y1=top y3=h; bot y2=bot y4=0;
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+if serifs: numeric inner_jut;
+ if rt x1r+cap_jut+.5u+1<=lft x3l-cap_jut: inner_jut=cap_jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3, cap_jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,cap_jut); % upper right serif
+ inner_jut:=.5(x3l-x1r);
+ nodish_serif(2,1,c,1/3, cap_jut,d,1/3,inner_jut); % lower left serif
+ nodish_serif(4,3,g,1/3,inner_jut,h,1/3,cap_jut); % lower right serif
+ pickup crisp.nib; pos5(slab,90); pos6(hair,0);
+ x5=.5[x2,x4]; bot y5l=0;
+ rt x6r=tiny.rt x4r+cap_jut; y6=good.y(y5l-.75beak)-eps;
+ arm(5,6,m,1.25beak_darkness,0); % beak
+else: pos2'(slab,90); pos4'(slab,90);
+ pos5(stem,0); pos6(stem,0);
+ lft x2'=lft x2l; rt x4'=rt x5r=rt x6r=w-.5u;
+ bot y2'l=bot y4'l=0; y5=y4; bot y6=-.8d;
+ filldraw stroke z2'e--z4'e; % lower bar
+ filldraw stroke z5e--z6e; % right beak
+fi
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter CHE";
+beginchar(CYRCH,13u#,cap_height#,0); % [AS]
+italcorr cap_height#*slant-serif_fit#+.5cap_stem#-2u#;
+adjust_fit(cap_serif_fit#+stem_shift#,cap_serif_fit#-stem_shift#);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+pos3(cap_stem,0); pos4(cap_stem,0);
+lft x1l=hround(2.5u-.5cap_stem); x1=x2; x3l=w-x1r; x3r=x4r;
+top y1=h; bot y4=0;
+penpos2'(cap_stem-fine,-180); z2'=z2; y3=y1; y2=.65h;
+if monospace: penpos5(.5vair,-90); penpos6(.5vair,-90);
+else: penpos5(vair,-90); penpos6(vair,-25); fi
+y6=.52h; lft x6l=lft x3l;
+filldraw stroke z1e--z2e; % left stem
+filldraw stroke z3e--z4e; % right stem
+pickup fine.nib; bot y5r=y6-vair-.1h; x5=.5w;
+filldraw stroke {{interim superness:=hein_super;
+ pulled_super_arc.e(2',5)(.01superpull)}}
+ & z5e{right}...z6e; % arc
+if serifs: numeric inner_jut;
+ if rt x1r+cap_jut+.5u+1<=lft x3l-cap_jut: inner_jut=cap_jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3,jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(3,4,e,1/3,inner_jut,f,1/3,jut); % upper right serif
+ dish_serif(4,3,g,1/3,jut,h,1/3,jut); fi % lower right serif
+penlabels(1,2,2',3,4,5,6); endchar;
+
+cmchar "The cyrillic letter SHA";
+beginchar(CYRSH,18u#,cap_height#,0);
+italcorr cap_height#*slant-.25u#;
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem',0); pos2(cap_stem',0);
+pos3(cap_stem',0); pos4(cap_stem',0);
+pos5(cap_stem',0); pos6(cap_stem',0);
+if odd(w-cap_stem'): change_width; fi
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem);
+x3=x4=.5w; x5=x6=w-x1;
+top y1=top y5=top y3=h; bot y2=bot y6=bot y4=0;
+filldraw stroke z1e--z2e; % right stem
+filldraw stroke z3e--z4e; % middle stem
+filldraw stroke z5e--z6e; % left stem
+if serifs: numeric inner_jut;
+ if rt x1r+cap_jut+.5u+1<=lft x3l-cap_jut: inner_jut=cap_jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3, cap_jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(3,4,c,1/3,inner_jut,d,1/3,inner_jut); % upper middle serif
+ dish_serif(5,6,e,1/3,inner_jut,f,1/3, cap_jut); % upper right serif
+ inner_jut:=.5(x3l-x1r);
+ nodish_serif(2,1,g,1/3,cap_jut,h,1/3,inner_jut); % lower left serif
+ nodish_serif(4,3,i,1/3,inner_jut,j,1/3,inner_jut); % lower middle serif
+ nodish_serif(6,5,k,1/3,inner_jut,l,1/3,cap_jut); % lower right serif
+else: pos2'(slab,90); pos6'(slab,90);
+ lft x2'=lft x1l; rt x6'=rt x6r; bot y2'l=bot y6'l=0;
+ filldraw stroke z2'e--z6'e; % lower bar
+fi
+math_fit(0,.5ic#); penlabels(1,2,2',3,4,5,6,6'); endchar;
+
+cmchar "The cyrillic letter SHCHA";
+beginchar(CYRSHCH,18u#,cap_height#,comma_depth#);
+italcorr cap_height#*slant-.25u#;
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem',0); pos2(cap_stem',0);
+pos3(cap_stem',0); pos4(cap_stem',0);
+pos5(cap_stem',0); pos6(cap_stem',0);
+if odd(w-cap_stem'): change_width; fi
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem);
+x3=x4=.5w; x5=x6=w-x1;
+top y1=top y5=top y3=h; bot y2=bot y6=bot y4=0;
+filldraw stroke z1e--z2e; % right stem
+filldraw stroke z3e--z4e; % middle stem
+filldraw stroke z5e--z6e; % left stem
+if serifs: numeric inner_jut;
+ if rt x1r+cap_jut+.5u+1<=lft x3l-cap_jut: inner_jut=cap_jut;
+ else: rt x1r+inner_jut+.5u+1=lft x3l-inner_jut; fi
+ dish_serif(1,2,a,1/3, cap_jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(3,4,c,1/3,inner_jut,d,1/3,inner_jut); % upper middle serif
+ dish_serif(5,6,e,1/3,inner_jut,f,1/3, cap_jut); % upper right serif
+ inner_jut:=.5(x3l-x1r);
+ nodish_serif(2,1,g,1/3, cap_jut,h,1/3, inner_jut); % lower left serif
+ nodish_serif(4,3,i,1/3,inner_jut, j,1/3,inner_jut); % lower middle serif
+ nodish_serif(6,5,k,1/3,inner_jut, l,1/3, cap_jut); % lower right serif
+ pickup crisp.nib; pos7(slab,90); pos8(hair,0);
+ x7=.5[x4,x6]; bot y7l=0;
+ rt x8r=tiny.rt x6r+cap_jut; y8=good.y(y7l-.75beak)-eps;
+ arm(7,8,m,1.25beak_darkness,0); % beak
+else: pos2'(slab,90); pos6'(slab,90);
+ pos7(stem,0); pos8(stem,0);
+ lft x2'=lft x1l; rt x6'=rt x7r=rt x8r=w-.5u;
+ bot y2'l=bot y6'l=0; y7=y6; bot y8=-.8d;
+ filldraw stroke z2'e--z6'e; % lower bar
+ filldraw stroke z7e--z8e; % right beak
+fi
+math_fit(0,.5ic#); penlabels(1,2,2',3,4,5,6,6',7,8); endchar;
+
+cmchar "The cyrillic letter HARD_SIGN";
+beginchar(CYRHRDSN,16u#,cap_height#,0);
+italcorr .75cap_height#*slant-.5u#;
+adjust_fit(cap_serif_fit#,0);
+numeric left_stem,right_curve,middle_weight;
+left_stem=cap_stem-hround 2stem_corr; middle_weight=.6vair+.5;
+pickup tiny.nib; pos1(left_stem,0); pos2(left_stem,0);
+lft x1l=lft x2l=hround max(5.5u,6.5u-.5left_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+penpos5(cap_band,90); penpos6(cap_band,90); penpos7(right_curve,0);
+penpos8(cap_band,-90); penpos9(cap_band,-90);
+z9r=bot z2; y8=y9; y7=.5[y8,y6]; y5=y6=.52h;
+x8=x6; x5=x1; x6l:=x6-.25u; x7r=hround(w-u); x8l:=x8l-.5u;
+if serifs: right_curve=cap_curve-stem_corr; x6=.5[x1,w-1.8u];
+else: right_curve=cap_curve-3stem_corr; x6=.5[x1,w-1.5u];
+x6l:=x6l-.5u; fi
+fill stroke z5e..super_arc.e(6,7) & super_arc.e(7,8)..z9e; % lower lobe
+pickup crisp.nib; pos3(slab,90); pos4(cap_hair,180);
+top y3r=h; x3=x1; lft x4r=hround(.5u); y4=good.y(y3l-.75beak)-eps;
+arm(3,4,e,beak_darkness,-.7beak_jut); % upper arm and beak
+if serifs: nodish_serif(1,2,a,0,cap_jut,b,1/3,cap_jut); % upper serif
+ nodish_serif(2,1,c,1/3,cap_jut,d,1/3,.5cap_jut); fi % lower serif
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter YERU";
+beginchar(CYRERY,17.5u#,cap_height#,0);
+italcorr .75cap_height#*slant-.5u#;
+adjust_fit(cap_serif_fit#,0);
+numeric left_stem,right_curve,middle_weight;
+left_stem=cap_stem-hround 2stem_corr; middle_weight=.6vair+.5;
+pickup tiny.nib; pos1(left_stem,0); pos2(left_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5left_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % left stem
+pos3(cap_stem,0); pos4(cap_stem,0);
+penpos5(cap_band,90); penpos6(cap_band,90); penpos7(right_curve,0);
+penpos8(cap_band,-90); penpos9(cap_band,-90);
+x3=x4=w-x1; top y3=h; bot y4=0;
+z9r=bot z2; y8=y9; y7=.5[y8,y6]; y5=y6=.52h;
+x6=x8; x5=x1; x6l:=x6-.25u; x8l:=x8l-.5u;
+rt x7r=if serifs: tiny.lft x3l-cap_jut; else: 11.5u; fi
+if serifs: right_curve=cap_curve-stem_corr; x6=.5[x1,w-6.8u];
+else: right_curve=cap_curve-3stem_corr; x6=.5[x1,w-7.5u];
+x6l:=x6l-.5u; fi
+fill stroke z5e..super_arc.e(6,7) & super_arc.e(7,8)..z9e; % lower lobe
+filldraw stroke z3e--z4e; % right stem
+if serifs: dish_serif(1,2,a,1/3,cap_jut,b,1/3,cap_jut); % upper left serif
+ nodish_serif(2,1,c,1/3,cap_jut,d,1/3,.5cap_jut); % lower left serif
+ dish_serif(3,4,e,1/3,1.05cap_jut,f,1/3,1.05cap_jut); % upper right serif
+ dish_serif(4,3,g,1/3,1.05cap_jut,h,1/3,1.05cap_jut); fi % lower right serif
+labels(1,2,3,4,5,6,7,8,9);
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter SOFT_SIGN";
+beginchar(CYRSFTSN,12.5u#,cap_height#,0);
+italcorr .75cap_height#*slant-.5u#;
+adjust_fit(cap_serif_fit#,0);
+numeric left_stem,right_curve,middle_weight;
+left_stem=cap_stem-hround 2stem_corr; middle_weight=.6vair+.5;
+pickup tiny.nib; pos1(left_stem,0); pos2(left_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5left_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+penpos5(cap_band,90); penpos6(cap_band,90); penpos7(right_curve,0);
+penpos8(cap_band,-90); penpos9(cap_band,-90);
+z9r=bot z2; y8=y9; y7=.5[y8,y6]; y5=y6=.52h;
+x6=x8; x5=x1; x6l:=x6-.25u; x7r=hround(w-u); x8l:=x8l-.5u;
+if serifs: right_curve=cap_curve-stem_corr; x6=.5[x1,w-1.8u];
+else: right_curve=cap_curve-3stem_corr; x6=.5[x1,w-1.5u];
+x6l:=x6l-.5u; fi
+fill stroke z5e..super_arc.e(6,7) & super_arc.e(7,8)..z9e; % lower lobe
+if serifs: dish_serif(1,2,a,1/3,cap_jut,b,1/3,cap_jut); % upper serif
+ nodish_serif(2,1,c,1/3,cap_jut,d,1/3,.5cap_jut); fi % lower serif
+math_fit(0,.5ic#); penlabels(1,2,3,4,5,6,7,8,9); endchar;
+
+cmchar "The cyrillic letter E";
+if serifs: beginchar(CYREREV,13u#,cap_height#,0);
+ italcorr cap_height#*slant-.5u#;
+ adjust_fit(0,0);
+ pickup fine.nib; pos1(cap_hair,180); pos2(cap_band,90);
+ pos3(cap_curve,0); pos4(cap_band,270); pos5(hair,180);
+ lft x1r=lft x5r=hround u; rt x3r=hround (w-u); x2=x4=.55[x3,x1];
+ top y2r=h+o; bot y4r=-o; y3=.5[y2,y4];
+ bot y1=min(vround max(.6h,x_height-.5vair),bot y2l-eps);
+ y5=max(good.y .95(h-y1),y4l+eps);
+ (x2l',y2l)=whatever[z2r,z1l]; x2l:=max(x2l',x2l-.5u);
+ (x4l',y4l)=whatever[z4r,z5l]; x4l:=max(x4l',x4l-.5u);
+ filldraw stroke z1e{x2-x1,10(y2-y1)}
+ ...pulled_arc.e(2,3) & pulled_arc.e(3,4)...{up}z5e; % arc
+ pos6(.3[fine.breadth,cap_hair],180); x6r=x1r; top y6=h+o;
+ x1'-x1r=2cap_curve-fine; y1'=y1;
+ path upper_arc; upper_arc=z1{x2-x1,10(y2-y1)}..z2{right};
+ numeric t; t=xpart(upper_arc intersectiontimes (z6l--z1'));
+ filldraw z1r--z6r--z6l--subpath(t,0) of upper_arc--cycle; % barb
+else: beginchar(CYREREV,11.5u#,cap_height#,0);
+ italcorr cap_height#*slant-.5u#;
+ adjust_fit(0,0);
+ pickup fine.nib; pos1(1.2flare,110); pos2(slab,90);
+ pos3(cap_curve,0); pos4(slab,270); pos5(flare,265);
+ lft x1r=hround 1.1u; x2=x4=.5w-1.25u;
+ rt x3r=w-hround max(u,2u-.5cap_curve); lft x5r=hround .9u;
+ top y1r=vround .95h+o; top y2r=h+o; y3=.5h;
+ bot y4r=-o; bot y5r=vround .08h-o; y5l:=good.y y5l; x5l:=good.x x5l;
+ filldraw stroke rterm.e(2,1,left,.9,4) & super_arc.e(2,3)
+ & super_arc.e(3,4) & term.e(4,5,left,.8,4); fi % arc and terminals
+penpos7(cap_bar,90); penpos8(cap_bar,90);
+x7=lft x3l; x8=.5w-1.5u;
+%if serifs: y7l=y8l else:
+y7=y8=.5h;
+fill stroke z7e--z8e; % bar
+math_fit(-.3cap_height#*slant-.5u#,.5ic#);
+penlabels(1,1',2,3,4,5,6); endchar;
+
+cmchar "The cyrillic letter YU";
+beginchar(CYRYU,20u#,cap_height#,0);
+italcorr cap_height#*slant-cap_serif_fit#+cap_jut#-2.5u#+min(.5cap_stem#,u#);
+adjust_fit(cap_serif_fit#,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0);
+lft x1l=lft x2l=hround max(2u,3u-.5cap_stem); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % left stem
+penpos5(vair',90); penpos7(vround(vair+1.5vair_corr),-90);
+penpos6(cap_curve,180); penpos8(cap_curve,0);
+if monospace: x8r=hround(w-1.5u); x6r=hround(w-12.5u);
+ interim superness:=sqrt superness; % make |"O"|, not |"0"|
+else: x8r=hround(w-u); x6r=hround(w-13u); fi
+x5=x7=.5[x8,x6]; y5r=h+o; y7r=-o; y6=y8=.5h-vair_corr; y6l:=y8l:=.52h;
+penstroke pulled_super_arc.e(5,6)(.5superpull)
+ & pulled_super_arc.e(6,7)(.5superpull)
+ & pulled_super_arc.e(7,8)(.5superpull)
+ & pulled_super_arc.e(8,5)(.5superpull) & cycle; % bowl
+penpos3(cap_bar,90); penpos4(cap_bar,90);
+x3=x1; x4=x6; y3=y4=.52h;
+fill stroke z3e--z4e; % bar
+if serifs: numeric inner_jut; inner_jut=cap_jut;
+ dish_serif(1,2,a,1/3,cap_jut,b,1/3,inner_jut); % upper left serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,inner_jut); fi % lower left serif
+math_fit(-.3cap_height#*slant-.5u#,ic#-.5u#);
+penlabels(1,2,3,4,5,6,7,8); endchar;
+
+cmchar "The cyrillic letter YA";
+beginchar(CYRYA,12u#+.5max(2u#,cap_curve#),cap_height#,0);
+italcorr .75cap_height#*slant- if serifs: 1.75 else: .5 fi\\ u#;
+adjust_fit(0,cap_serif_fit#);
+pickup tiny.nib; pos1(cap_stem',0); pos2(cap_stem',0);
+rt x1r=rt x2r=w-hround(3u-.5cap_stem'); top y1=h; bot y2=0;
+filldraw stroke z1e--z2e; % stem
+penpos3(cap_band,90); penpos4(cap_band,90);
+penpos5(cap_curve if hefty:-3stem_corr fi,180);
+penpos6(vair,-90); penpos7(vair,-90);
+z3r=top z1; y4=y3; y5=.5[y4l,y6l]; y6=y7; x7=x2; y7=.5h; x4=x6;
+if serifs: x4=.5w+.5u; x5r=hround(1.5u);
+else: x4=.5w-.5u; x5r=hround u; fi
+x4l:=x6l:=x4+.125cap_curve;
+fill stroke z3e..pulled_arc.e(4,5) & pulled_arc.e(5,6)..z7e; % lobe
+pos6'(cap_curve,0); x6'r=x6l+.5u; y6'=y6;
+pos8(cap_curve,0); tiny.lft x8l=.5u+.5cap_jut; bot y8=0;
+filldraw stroke z6'e--z8e; % diagonal stem
+if serifs:
+ nodish_serif(1,2,a,1/3,.5cap_jut,b,1/3,cap_jut); % upper serif
+ dish_serif(2,1,c,1/3,cap_jut,d,1/3,cap_jut); % lower serif
+ serif(8,6',e,1/3,-.5cap_jut); fi % lower diagonal serif
+math_fit(0,.75ic#); penlabels(1,2,3,4,5,6,7,8); endchar;
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/mcytitle.mf b/Master/texmf-dist/fonts/source/public/montex/mcytitle.mf
new file mode 100644
index 00000000000..570bef5fa71
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mcytitle.mf
@@ -0,0 +1,39 @@
+% File: mcytitle.mf
+% Based on: cycitle.mf
+% Modified by: Oliver Corff
+% Date: October 1997, Ulaanbaatar
+%
+% This makes a short cyrillic font (caps only)
+
+let cmchar=message; % `|cmchar|' should precede each character
+
+font_coding_scheme:="ASCII caps";
+input mccoding;
+
+mode_setup; font_setup;
+
+input mcyru; % upper case (majuscules)
+input cyrmoreu; % upper case (majuscules)
+input romand; % numerals
+
+font_slant slant; font_x_height x_height#;
+if monospace: font_normal_space 9u#; % no stretching or shrinking
+ font_quad 18u#;
+ font_extra_space 9u#;
+else: font_normal_space 6u#+2letter_fit#;
+ font_normal_stretch 3u#; font_normal_shrink 2u#;
+ font_quad 18u#+4letter_fit#;
+ font_extra_space 2u#;
+fi
+% k#:=-.5u#; kk#:=-1.5u#; kkk#:=-2u#; % three degrees of kerning
+% ligtable "P": "T": "Y": "A" kern kk#;
+% ligtable "F": "V": "W": "A" kern if serifs: kkk# else: kk#\\fi,
+% "K": "X": "O" kern k#, "C" kern k#, "G" kern k#, "Q" kern k#;
+% ligtable "O": "D": "X" kern k#, "W" kern k#, "A" kern k#,
+% "V" kern k#, "Y" kern k#;
+% ligtable "A": if serifs: "R": fi
+% "C" kern k#, "O" kern k#, "G" kern k#, "U" kern k#, "Q" kern k#,
+% "L": "T" kern kk#, "Y" kern kkk#, "V" kern kk#, "W" kern kkk#;
+% ligtable "I": "I" kern -k#; fi % Richard III
+bye.
+
diff --git a/Master/texmf-dist/fonts/source/public/montex/mlscodes.mf b/Master/texmf-dist/fonts/source/public/montex/mlscodes.mf
new file mode 100644
index 00000000000..1751770bcd1
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mlscodes.mf
@@ -0,0 +1,116 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mlscodes.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.7
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script in Isolated Mode (LMO)
+% Mongol Bicig Slot Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Specials
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% All codes must be > 148 unless they are < 128
+%
+MONG_TASLAL := 44; % ","
+MONG_FULLSTOP := 46; % "."
+MONG_EXCLAMQUEST := 176; % "!?"
+MONG_QUESTEXCLAM := 175; % "!?"
+%
+MONG_SUUL := 101; % ""
+MONG_ORXIC := 69; % "E"
+MONG_BAGODOISUUL := 71; % "G"
+MONG_BIODOISUUL := 89; % ""
+%
+MONG_TITEM := 150; % ""
+MONG_GEDES := 111; % "o"
+%%%%MONG_ADAGU := ; % ""
+MONG_EXENN := 153; % ""
+MONG_EXENL := 149; % ""
+MONG_SUULIINLEWER := 76; % ""
+MONG_TERTIARYLEWER := 81; % ""
+MONG_HIGHLEWER := 152; % ""
+MONG_EXENM := 151; % ""
+MONG_SUULIINMEWER := 77; % ""
+MONG_XEWTEEQIX := 120; % ""
+MONG_DUNDG := 154; % ""
+MONG_DUNDX := 156; % ""
+%%%%MONG_ADAGX := ; % ""
+%%%%MONG_DUNDNG := ; % ""
+%%%%MONG_ADAGNG := ; % ""
+% MONG_ADAGI := ; % ""
+MONG_NUMTDELBENQIX := 112; % ""
+MONG_BAGANUM := 78; % ""
+% MONG_ADAGK := ; % ""
+% MONG_ADAGB := ; % ""
+% MONG_DUNDD := ; % ""
+% MONG_ADAGD := ; % ""
+MONG_EXENS := 117; % ""
+MONG_ADAGS := 83; % ""
+%
+MONG_EXENSH := 85; % " sh-"
+MONG_DAWXARCEGTZAWJ := 113; % "sh"
+MONG_ADAGSH := 84; % "-sh "
+%
+MONG_EWERTQAGT := 119; % "G, or gh: Garudi"
+MONG_SERTENQIXTNUM := 102; % "f"
+MONG_BITUUSHILBE := 104; % "h"
+MONG_MALGAITAITITEM := 106; % "j"
+MONG_NUM := 73; % "I"
+MONG_DAWXARCEGTXEWTEE := 88; % " G-"
+MONG_ZADGAIZARDIGT := 90; % "Z"
+MONG_BITUUZARDIGT := 67; % "C"
+MONG_QAGT := 107; % "K, or kh: Kapital"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Allographs
+%
+MONG_SECONDARYSHUD := 65; % "a after rounded"
+MONG_SECONDARYCEGTEISHUD := 86; % "n after rounded"
+MONG_SECONDARYGEDES := 79; % "o, u after rounded"
+MONG_SECONDARYNUM := 103; % "g"
+MONG_SECNUMTGEDES := 66; % "B"
+MONG_SECONDARYQAGT := 75; % "kh followed by rounded" (K)
+MONG_SECNUMTDELBENQ := 80; % "P"
+MONG_SECSERTENQIXT := 70; % "F"
+MONG_SECERWEELJIN := 82; % "R"
+MONG_SECONDARYEWERTQAGT := 87; % "gh followed by rounded"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Graphical Ligatures
+%
+MONG_LIGKN := 230; % "kn"
+MONG_LIGKL := 231; % "kl"
+%
+MONG_LIGGHA := 240; % "gha"
+MONG_LIGGHI := 242; % "ghi"
+MONG_LIGGHU := 244; % "ghu"
+MONG_LIGGHN := 246; % "ghn"
+MONG_LIGGHL := 247; % "ghl"
+%
+MONG_LIGKHA := 232; % "ka"
+MONG_LIGKHU := 236; % "ku"
+MONG_LIGKHI := 234; % "khi"
+MONG_LIGKHN := 238; % "khn"
+MONG_LIGKHL := 239; % "khl"
+%
+MONG_LIGPA := 208; % "pa"
+MONG_LIGPI := 210; % "pi"
+MONG_LIGPU := 212; % "pu"
+MONG_LIGPN := 214; % "pn"
+MONG_LIGPL := 215; % "pl"
+%
+MONG_LIGFA := 216; % "fa"
+MONG_LIGFI := 218; % "fi"
+MONG_LIGFU := 220; % "fu"
+MONG_LIGFN := 222; % "fn"
+MONG_LIGFL := 223; % "fl"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+endinput;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% vim: ts=32
diff --git a/Master/texmf-dist/fonts/source/public/montex/mocodes.mf b/Master/texmf-dist/fonts/source/public/montex/mocodes.mf
new file mode 100644
index 00000000000..dfff7ceb7f6
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mocodes.mf
@@ -0,0 +1,191 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mocodes.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: October 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script in Ligature Mode (LMO)
+% Mongol Bicig Slot Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Specials
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% All codes must be > 148 unless they are < 128. Really?
+%
+% Attention: There are gaps at ... which are taboo.
+%
+% MONG_CHAR_NAME :=VALUE;% CORRESPONDANCE UNIQUE=OK
+%
+MONG_TASLAL := 44; % "," *
+MONG_FULLSTOP := 46; % "." *
+%
+MONG_MSP := 45; % "-" *
+MONG_MVS := 61; % "=" *
+MONG_NCEG := 37; % "n=" *
+MONG_GCEG := 38; % "G=" *
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Basic Vowels
+%
+MONG_A := 97; % "a" *
+MONG_AVAR := 153; % "a'" *
+MONG_AE := 101; % "\"a"
+%% MONG_E := xxx; % "ee"
+MONG_I := 105; % "i" *
+MONG_IVAR := 154; % "a'" *
+%% MONG_O := 111; % "o"
+%% MONG_OE := xxx; % "\"o"
+MONG_U := 117; % "u" *
+%% MONG_UE := xxx; % "\"u"
+%% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Basic Consonants
+%
+MONG_K := 107; % "k"
+ MONG_NUM := MONG_K;
+%
+MONG_EXENX := 88; % "x" *
+MONG_X := 120; % "x"
+%MONG_ADAGX := 140; % "x" in mbcodes.mf *
+%
+MONG_EXENG := 71; % " G-" Gamma *
+MONG_G := 103; % "-G-" Gamma
+MONG_ADAGG := 149; % "-G " Gamma
+ MONG_DAWXARCEGTXEWTEE := MONG_EXENG;
+%
+%% MONG_GE := 103; % "g"
+%
+% MONG_EXENL := 76; % " m-" defined in mbcodes.f
+MONG_L := 108; % "m"
+ MONG_LEWER := MONG_L;
+MONG_ADAGL := 143; % "m"
+ MONG_SUULIINLEWER := MONG_ADAGL;
+%
+% MONG_EXENM := 77; % " m-" defined in mbcodes.f
+MONG_M := 109; % "m"
+ MONG_MEWER := MONG_M;
+MONG_ADAGM := MONG_SUULIINMEWER; % defined in mbcodes.mf
+%
+MONG_EXENN := 78; % "n" *
+MONG_N := 110; % "n" *
+MONG_ADAGN := 150; % "-n " *
+MONG_NVAR := 151; % "n without dot" *
+MONG_ADAGNVAR := 152; % "n without dot" *
+%
+MONG_D := 100; % "d" *
+ MONG_GEDESTEISHILBE := MONG_D;
+MONG_DVAR := 155; % "d'"
+%
+MONG_T := 116; % "d" *
+ MONG_BURUUXARSANGEDES := MONG_T;
+%
+MONG_B := 98; % "b" *
+ MONG_NUMTAIGEDES := MONG_B;
+%
+MONG_P := 112; % "p"
+ MONG_NUMTDELBENQIX := MONG_P;
+%
+MONG_R := 114; % "r"
+ MONG_ERWEELJINSHILBE := MONG_R;
+MONG_ADAGR := 82; % "r" *
+ MONG_SECERWEELJIN := MONG_ADAGR;
+%
+% MONG_EXENS := 83; % " s-" defined in mbcodes.mf
+MONG_S := 115; % "-s-" *
+ MONG_ZAWJ := MONG_S;
+% MONG_ADAGS :=>148; % "-s " defined in mbcodes.mf
+%
+MONG_EXENSH := 159; % " sh-"
+MONG_SH := 160; % "sh"
+ MONG_DAWXARCEGTZAWJ := MONG_SH;
+MONG_ADAGSH := 161; % "-sh "
+%
+MONG_KH := 75; % "kh" *
+ MONG_QAGT := MONG_KH;
+%
+MONG_F := 102; % "f" *
+ MONG_SERTENQIXTNUM := MONG_F;
+%
+MONG_V := 118; % "v" *
+ MONG_MATGARSHILBE := MONG_V;
+%
+MONG_Y := 121; % "v" *
+ MONG_ETGERSHILBE := MONG_Y;
+%
+MONG_H := 104; % "h" *
+ MONG_BITUUSHILBE := MONG_H;
+%
+MONG_J := 106; % "j" *
+ MONG_MALGAITAITITEM := MONG_J;
+%
+MONG_C := 99; % "C" *
+ MONG_SEREEEWER := MONG_C;
+%
+MONG_Z := 122; % "z" *
+ MONG_BOSOOSHILBE := MONG_Z;
+%
+MONG_ZH := 90; % "Z" *
+ MONG_ZADGAIZARDIGT := MONG_ZH;
+%
+MONG_CH := 67; % "C" *
+ MONG_BITUUZARDIGT := MONG_CH;
+%
+MONG_GH := 113; % "input q -> gh(ombo)"
+ MONG_EWERTQAGT := MONG_GH;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Dead Glyphs and Codes
+%
+%% MONG_SECONDARYSHUD := 149; % "a after rounded"
+%% MONG_SECONDARYCEGTEISHUD := 150; % "n after rounded"
+%% MONG_SECONDARYGEDES := 151; % "o, u after rounded"
+%% MONG_SECONDARYNUM := 152; % "g"
+%% MONG_SECNUMTGEDES := 153; % "B"
+%% MONG_SECONDARYQAGT := 154; % "kh followed by rounded"
+%% MONG_SECNUMTDELBENQ := 155; % "P"
+%% MONG_SECSERTENQIXT := 156; % "F"
+%% MONG_SECERWEELJIN := 157; % "R"
+%% MONG_SECONDARYEWERTQAGT := 158; % "gh followed by rounded"
+%% MONG_EWERTQAGT := 162; % "G, or gh: Garudi"
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mongolian Graphical Ligatures
+%
+MONG_LIGPA := 208; % "pa"
+MONG_LIGPI := 210; % "pi"
+MONG_LIGPU := 212; % "pu"
+MONG_LIGPN := 214; % "pn"
+MONG_LIGPL := 215; % "pl"
+%% %
+MONG_LIGFA := 216; % "fa"
+MONG_LIGFI := 218; % "fi"
+MONG_LIGFU := 220; % "fu"
+MONG_LIGFN := 222; % "fn"
+MONG_LIGFL := 223; % "fl"
+%
+MONG_LIGKN := 230; % "kn"
+MONG_LIGKL := 231; % "kl"
+%
+MONG_LIGKHA := 232; % "kha"
+MONG_LIGKHU := 236; % "khu"
+MONG_LIGKHI := 234; % "khi"
+MONG_LIGKHN := 238; % "khn"
+MONG_LIGKHL := 239; % "khl"
+%
+MONG_LIGGHA := 240; % "gha"
+MONG_LIGGHI := 242; % "ghi"
+MONG_LIGGHU := 244; % "ghu"
+MONG_LIGGHN := 246; % "ghn"
+MONG_LIGGHL := 247; % "ghl"
+%
+% End of mocodes.mf
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% vim: ts=32
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/moglyphs.mf b/Master/texmf-dist/fonts/source/public/montex/moglyphs.mf
new file mode 100644
index 00000000000..3c9925eda80
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/moglyphs.mf
@@ -0,0 +1,750 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: moglyphs.mf
+% Author: Oliver Corff
+% Date: June 1st, 2001
+% Version: 0.2
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script (LMS)
+% Mongol Bicig Glyph Definitions
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+ writing:=Bicig;
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_TASLAL,tewidth#,height#,depth#);
+ "Taslal temdeg";
+ dusal(2/4tewidth,Centerline,5thin,3thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_FULLSTOP,bawidth#,height#,depth#);
+ "Mongolian Full Stop";
+ dusal(1/4bawidth,Centerline,5thin,3thick);
+ dusal(3/4bawidth,Centerline,5thin,3thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_AVAR,shudwidth#,height#,depth#);
+ "Mongol letter a, final behaviour different";
+ shud(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_AE,shudwidth#,height#,depth#);
+ "Mongol letter ae, shape identical with shud";
+ shud(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_IVAR,shilbewidth#,height#,depth#);
+ "Mongol letter i, final behaviour different";
+ shilbe(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_NVAR,shudwidth#,height#,depth#);
+ "Mongol letter n, but with dusal behaviour flipped";
+ shud(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGN,shudwidth#,height#,depth#);
+ "Mongol letter n, final form";
+ "The suul";
+ suul;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGNVAR,shudwidth#,height#,depth#);
+ "Mongol letter n, final form, but with dusal behaviour flipped";
+ "The suul";
+ suul;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ "Mongol Secondary shud after B, etc.";
+if unknown MONG_SECONDARYSHUD:
+ "skipped";
+else:
+beginchar(MONG_SECONDARYSHUD,numtaigedeswidth#,height#,depth#);
+ nuruu(secAwidth,0);
+ shud_atom(secAwidth,bearing);
+
+ z5r=(numtaigedeswidth,underouter);
+ z6l=(secAwidth,nuruuright);
+
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+ penstroke (z5e{left}..{up}z6e) ifrotated;
+ penlabels(5,6);
+endchar;
+fi;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ "Mongol Secondary Belly after B, etc.";
+if unknown MONG_SECONDARYGEDES:
+ "skipped";
+else:
+beginchar(MONG_SECONDARYGEDES,numtaigedeswidth#,height#,depth#);
+ nuruu(numtaigedeswidth,0);
+ z1r=(numtaigedeswidth,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(1/2bearing,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+ z5r=(x1r,underouter);
+ z6 =(x3,nuruuright);
+ penpos5(underinner-underouter,-90);
+ penpos6(thin,-180);
+ penstroke (z5e{left}..{up}z6e) ifrotated;
+ penlabels(1,2,3,5,6);
+endchar;
+fi;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ "Mongol Secondary dusaltai shud after B, etc.";
+if unknown MONG_SECONDARYCEGTEISHUD:
+ "skipped";
+else:
+beginchar(MONG_SECONDARYCEGTEISHUD,numtaigedeswidth#,height#,depth#);
+ "Mongol Secondary dusaltai shud after B, etc.";
+ nuruu(secAwidth,0);
+ shud_atom(secAwidth,bearing);
+
+ z5r=(numtaigedeswidth,underouter);
+ z6l=(secAwidth,nuruuright);
+
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+ penstroke (z5e{left}..{up}z6e) ifrotated;
+ dusal (1/2secAwidth+1/2bearing,yashilbeheight,3thin,2thick);
+ penlabels(5,6);
+endchar;
+fi;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_NUM,gedeswidth#,height#,depth#);
+ "Mongol Female g";
+ nuruu(gedeswidth,gedeswidth-bearing);
+ z1l=(1/3gedeswidth,shudheight);
+ z2r=(gedeswidth-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6r=(0,Centerline);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(1/2thin,-180);
+
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e) ifrotated;
+ penlabels(1,2,3,4,5,6);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ "Mongol female g, before rounded vowels";
+if unknown MONG_SECONDARYNUM:
+ "skipped";
+else:
+beginchar(MONG_SECONDARYNUM,shudwidth#,height#,depth#);
+ nuruu(shudwidth,shudwidth-bearing);
+ z1r=(+3thin,shudheight);
+ z2r=(shudwidth-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(0,underouter);
+ z6r=(0,nuruuleft);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(epsilon,-180);
+
+ penstroke (z1e..z2e...z4e{down}..{left}z5e) ifrotated;
+ penlabels(1,2,3,4,5);
+endchar;
+fi;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_DAWXARCEGTXEWTEE,tewidth#,height#,depth#);
+ "Mongol Letter initial g(amma)";
+ xewteeqix;
+ dusal (x2,shilbeheight,3thin,2thick);
+ dusal (bearing+2thin,shilbeheight,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGG,2shudwidth#,height#,depth#);
+ "Final g";
+ shud(shudwidth);
+ bagaodoisuul;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_DVAR,eswidth#,height#,depth#);
+ "d FVS1";
+ if style=steel:
+ roundgedestshilbe;
+ fi;
+ if style=wood:
+ modgedestshilbe;
+ fi;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_SECERWEELJIN,gedeswidth#,height#,depth#);
+ "Mongol Letter 'r' in final position";
+ nuruu(gedeswidth,gedeswidth-bearing);
+ z1=(gedeswidth-1/2bearing,nuruuleft);
+ z2=(gedeswidth-3thin,gedesouter);
+ z3=(bearing,shudheight);
+ z4=(x2-1thin,gedesinner-thin);
+ z5 =(x6l,nuruuleft);
+ pickup pencircle scaled 1/4thin;
+
+ z6r=(x1,nuruuright);
+ z7r=(1/2[x6,x8],underouter);
+ z8r=(0,Centerline);
+ penpos6(2thin,0);
+ penpos7(underinner-underouter,-90);
+ penpos8(1/4thin,-180);
+
+ fill (z1{up}..z2 & z2{dir 225}..{dir 105}z3 &
+ z3{down}..{dir 45}z4 & z4{dir -60}..z5..z6l{down}..z7l..{up}z8 &
+ z8{down}..z7r..{up}z6r..z1..cycle) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_EXENSH,tewidth#,height#,depth#);
+ "Mongol Letter `sh' in initial position";
+ exenzawj;
+ dusal(bearing,underouter,3thin,2thick);
+ dusal(1/3tewidth,underouter,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_DAWXARCEGTZAWJ,tewidth#,height#,depth#);
+ "Mongol Letter `sh' in medial position";
+ zawj;
+ dusal(bearing,underouter,3thin,2thick);
+ dusal(1/3tewidth,underouter,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ADAGSH,tewidth#,height#,depth#);
+ "Mongol Letter 'sh' in final position ";
+ nuruu(tewidth,tewidth-thick);
+ z1=(tewidth-bearing,nuruuleft);
+ z2=(1/2[x1,x3],shudheight);
+ z3=(x1-shudwidth+2bearing,y1);
+ y4=nuruuright-1thin;
+ z4=whatever[z2,z3];
+
+ y5=shudheight;
+ z4-z5=whatever * (z2-z1);
+ % y6=nuruuleft;
+ % z5-z6=whatever * (z2-z3);
+ z6=(0,underouter);
+
+ y7=sdepth;
+ z4-z7=whatever * (z1-z2);
+ y8=nuruuright;
+ z7-z8=whatever * (z2-z3);
+ y9=underouter;
+ z7-z9=whatever * (z7-z8);
+ y10=nuruuright;
+ z10-z9=whatever* (z1-z2);
+ z11=(x6,nuruuright);
+
+ % pickup pencircle scaled 1/4thin;
+ fill (z10--z9--z1--z2--z4--z5..z6{z3-z2}&z6{z2-z6}..z10--cycle)
+ ifrotated;
+ dusal(4/24tewidth,underouter-2thin,3thin,2thick);
+ dusal(10/24tewidth,underouter-2thin,3thin,2thick);
+ penlabels(1,2,3,4,5,6,7,8,9,10,11);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ "Mongol Letter Secondary B";
+if unknown MONG_SECNUMTGEDES:
+ "skipped";
+else:
+beginchar(MONG_SECNUMTGEDES,numtaigedeswidth#,height#,depth#);
+ nuruu(numtaigedeswidth,0);
+ z1r=(numtaigedeswidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(0,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(x3r,underouter);
+ z6r=(0,nuruuright);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(epsilon,-180);
+ penstroke (z4e{down}..{left}z5e) ifrotated;
+ penlabels(1,2,3,4,5);
+endchar;
+fi;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ "Mongol Secondary Letter P";
+if unknown MONG_SECNUMTDELBENQ:
+ "skipped";
+else:
+beginchar(MONG_SECNUMTDELBENQ,numtaigedeswidth#,height#,depth#);
+ nuruu(numtaigedeswidth,0);
+
+ z1r=(numtaigedeswidth-1/2bearing,gedesouter+thin);
+ z2r=(1/3[x1,x4],gedesouter);
+ z3r=(7/12[x1,x4],gedesouter);
+ z4r=(0,nuruuleft);
+ penpos1(thin,180);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(gedesouter-gedesinner,90);
+ penpos4(thin,180);
+ penstroke (z1e..z2e..z3e..{down}z4e) ifrotated;
+
+ z5r=(x1,nuruuright);
+ z6r=(x4r,underouter);
+ z7r=(0,nuruuright);
+ penpos5(thin,0);
+ penpos6(underinner-underouter,-90);
+ penpos7(epsilon,-180);
+ penstroke (z5e{down}..{left}z6e) ifrotated;
+ penlabels(1,2,3,4,5,6,7);
+endchar;
+fi;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_SERTENQIXTNUM,eswidth#,height#,depth#);
+ "Mongol Letter f";
+ nuruu(eswidth,eswidth-numtaigedeswidth);
+
+ z1r=(eswidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(eswidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6r=(0,Centerline);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(1/4thin,-180);
+ penstroke (z4e{down}..z5e..{up}z6e) ifrotated;
+
+ f_flag(eswidth,x2);
+
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ "Mongol Secondary Letter F";
+if unknown MONG_SECSERTENQIXT:
+ "skipped";
+else:
+beginchar(MONG_SECSERTENQIXT,numtaigedeswidth#,height#,depth#);
+ nuruu(numtaigedeswidth,0);
+ z1r=(numtaigedeswidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(0,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(x3r,underouter);
+ z6r=(0,nuruuright);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(epsilon,-180);
+ penstroke (z4e{down}..{left}z5e) ifrotated;
+
+ f_flag(numtaigedeswidth,x2);
+
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14);
+endchar;
+fi;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_QAGT,gedeswidth#,height#,depth#);
+ "Mongol Letter kh";
+ qagt;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ "Mongol Secondary Letter K";
+if unknown MONG_SECONDARYQAGT:
+ "skipped";
+else:
+beginchar(MONG_SECONDARYQAGT,shudwidth#,height#,depth#);
+ nuruu(shudwidth,shudwidth-bearing);
+% if writing=Bithe:
+% z1 =(w+1/4shudwidth,shudheight-thin);
+% penpos1(2.5thin,-30);
+% fi;
+% if writing=Bicig:
+ z1l=(1/3shudwidth,shudheight);
+ penpos1(4thin,60);
+% fi;
+ z2r=(shudwidth-1/2bearing,nuruuleft);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(0,underouter);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+
+ penstroke (z1e..z2e...z4e{down}..{left}z5e) ifrotated;
+ penlabels(1,2,3,4,5);
+ z11=(shudwidth,Centerline);
+ z12=(shudwidth-3/4thick,Centerline);
+ z13=(shudwidth-1.5thick,nuruuleft+thin);
+ penpos11(nuruuwidth,90);
+ penpos12(14/16nuruuwidth,80);
+ penpos13(epsilon,45);
+ penstroke (z11e---z12e..z13e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,11,12,13);
+endchar;
+fi;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_ZADGAIZARDIGT,cewidth#,height#,depth#);
+ "Mongol Letter Z";
+ nuruu(cewidth,0);
+ z1r=(5/6cewidth,gedesouter);
+ z2r=(4/6cewidth,shudheight);
+ z3r=(5/4bearing+1.5u,shudheight);
+ z4 =(bearing+1.5u,Centerline);
+ penpos1(gedesouter-gedesinner,85);
+ penpos2(gedesouter-gedesinner,85);
+ penpos3(gedesouter-gedesinner,100);
+ penpos4(nuruuleft-nuruuright,100);
+ penstroke (z1e..z2e---z3e--z4e) ifrotated;
+ penlabels(1,2,3,4);
+ z5l=z3r; penpos5(thin,0);
+ z6=(-0.5thin,shilbeheight); penpos6(1.25thin,90);
+ z7=(-1.5thin,shilbeheight-thin); penpos7(0.5thin,120);
+ pickup pencircle scaled thin;
+ penstroke (z5e{up}..z6e..z7e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_BITUUZARDIGT,cewidth#,height#,depth#);
+ "Mongol Letter C";
+ nuruu(cewidth,0);
+ z1r=(5/6cewidth,gedesouter);
+ z2r=(4/6cewidth,shudheight);
+ z3r=(5/4bearing+1.5u,shudheight);
+ z4 =(bearing+1.5u,Centerline);
+ penpos1(gedesouter-gedesinner,85);
+ penpos2(gedesouter-gedesinner,85);
+ penpos3(gedesouter-gedesinner,100);
+ penpos4(nuruuleft-nuruuright,100);
+ penstroke (z1e..z2e---z3e--z4e) ifrotated;
+ penlabels(1,2,3,4);
+
+ z5l=z3r; penpos5(thin,0);
+ z6=(-0.5thin,shilbeheight); penpos6(1.25thin,90);
+ pickup pencircle scaled thin;
+ draw (z5..tension 1.3..z6..tension 1.3..cycle) ifrotated;
+ z7=(-2thin,shilbeheight-thin); penpos7(0.5thin,120);
+ % penstroke (z5e{up}..z6e..z7e);
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_BITUUSHILBE,eswidth#,height#,depth#);
+ "Mongol Letter h";
+ nuruu(eswidth,eswidth-1/2bearing-2thin);
+ nuruu(eswidth-1/2bearing-2u,0);
+ z1r=(eswidth-1/2bearing,nuruuleft);
+ z2 =(07/16eswidth,orxicouter);
+ penpos1(2thin,0);
+ penpos2(2thin,45);
+ penstroke (z1e--z2e) ifrotated;
+ z3r=z2;
+ z4r=(bearing,5/12[y1,y2]);
+
+ penpos3(2thin,115 );
+ penpos4(2thin,210);
+
+ z5 =(6/16eswidth,3/12[y1,y2]);
+ z6 =(x1-2u,nuruuleft);
+
+ penpos5(1.5thin,235);
+ penpos6(1.75thin,180);
+ penstroke
+ (z3e{dir 205}..tension 1.4..z4e..tension 1.4..z5e..z6e)
+ ifrotated;
+ penlabels(1,2,3,4,5,6);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_MALGAITAITITEM,tewidth#,height#,depth#);
+ "Mongol Letter j";
+ if style=wood:
+ nuruu(7/12tewidth,0);
+ shud_atom(shudwidth-bearing,0+bearing);
+ fi;
+ if style=steel: titem; fi;
+
+ z1l=(2/3shudwidth-thin,shilbeheight);
+ z2l=(2/3shudwidth+thin,shilbeheight);
+ z3r=(tewidth,Centerline);
+ z4l=(1/2[x3,x5],
+ if style=steel: underouter fi
+ if style=wood: underinner fi);
+ z5l=( if style=steel: 1/3 fi
+ if style=wood: 2/3 fi shudwidth,nuruuright);
+ penpos1(3thin,90);
+ penpos2(2.25thin,90);
+ penpos3(2.25thin, 0);
+ penpos4(3thin,-90);
+ penpos5(2thin,-180);
+ penstroke (z1e{right}..z2e{right}..z3e..z4e..{up}z5e) ifrotated;
+ penlabels(1,2,3,4,5);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_EWERTQAGT,gedeswidth#,height#,depth#);
+ "Mongol g used in Gombo, primary version";
+ nuruu(gedeswidth,gedeswidth-bearing);
+ z1l=(1/3gedeswidth,shudheight);
+ z2r=(gedeswidth-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6r=(0,Centerline);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(1/2thin,-180);
+
+ z7r=(gedeswidth-bearing,gedesouter+thin);
+ z8 =(x7-1thin,shudheight-thick);
+ penpos7(1.5thin,0);
+ penpos8(2thin,-45);
+ penstroke (z7e..z8e) ifrotated;
+
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ "Mongol g used in Gombo, secondary version";
+if unknown MONG_SECONDARYEWERTQAGT:
+ "skipped";
+else:
+beginchar(MONG_SECONDARYEWERTQAGT,shudwidth#,height#,depth#);
+ nuruu(shudwidth,shudwidth-bearing);
+ z1l=(+1thin,shudheight);
+ z2r=(shudwidth-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(0,underouter);
+ z6r=(0,nuruuleft);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(epsilon,-180);
+
+ z7r=(shudwidth,gedesouter+thin);
+ z8 =(x7-1thin,shudheight-thick);
+ penpos7(1.5thin,0);
+ penpos8(2thin,-45);
+ penstroke (z7e..z8e) ifrotated;
+
+ penstroke (z1e..z2e...z4e{down}..{left}z5e) ifrotated;
+ penlabels(1,2,3,4,5);
+endchar;
+fi;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Some ligatures without added semantical value
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGPN,bawidth#,height#,depth#);
+ "Mongol Ligature PN";
+ ligmongpa;
+ dusal (x8,yashilbeheight,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGPL,bawidth#,height#,depth#);
+ "Mongol Ligature PL";
+ ligmongpa;
+ high_l_ewer(2.5thin);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGFA,bawidth#,height#,depth#);
+ "Mongol Ligature FA";
+ ligba;
+ f_flag(w,3/4w);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGFI,biwidth#,height#,depth#);
+ "Mongol Ligature FI";
+ nuruu(shilbewidth-thin,0);
+ nuruu(biwidth,biwidth-numtaigedeswidth);
+
+ z1r=(biwidth-1/2bearing,nuruuleft);
+ z2r=(1/2[x1,x3],gedesouter);
+ z3r=(biwidth-numtaigedeswidth,nuruuleft);
+ penpos1(thin,0);
+ penpos2(gedesouter-gedesinner,90);
+ penpos3(thin,180);
+ penstroke (z1e{up}..z2e..{down}z3e) ifrotated;
+
+ z4 =(x1,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6l=(shilbewidth,nuruuright);
+ z7l=(3thin,shilbeheight);
+ penpos4(thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+ penpos7(4thin,-120);
+ penstroke (z4e{down}..z5e..{up}z6e..tension infinity..z7e) ifrotated;
+
+ z11l=(x2,gedesouter);
+ penpos11(1/2thin,90);
+ z12 =(1/6[x11,x14],shilbeheight);
+ penpos12(2thin,90);
+ z13 =(5/6[x11,x14],shilbeheight);
+ penpos13(2thin,90);
+ z14r=(biwidth,yashilbeheight);
+ penpos14(1/2thin,90);
+ penstroke (z11e{up}..z12e..z13e..{up}z14e) ifrotated;
+ f_flag(w,3/4w);
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGFU,2numtaigedeswidth#,height#,depth#);
+ "Mongol Ligature FU";
+ f_flag(w,3/4w);
+ ligbu(0);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGFN,bawidth#,height#,depth#);
+ "Mongol Ligature FN";
+ ligba;
+ f_flag(w,3/4w);
+ dusal (x7,yashilbeheight,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGFL,bawidth#,height#,depth#);
+ "Mongol Ligature FL";
+ ligba;
+ f_flag(w,3/4w);
+ high_l_ewer(2.5thin);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGKN,bawidth#,height#,depth#);
+ "Mongol Ligature KN";
+ ligka;
+ dusal (x7,yashilbeheight,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGKL,bawidth#,height#,depth#);
+ "Mongol Ligature KL";
+ ligka;
+ high_l_ewer(2.5thin);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGKHA,bawidth#,height#,depth#);
+ "Mongol Ligature KHA";
+ ligkha;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGKHI,biwidth#,height#,depth#);
+ "Mongol Ligature KHI";
+ ligkhi;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGKHU,bawidth#,height#,depth#);
+ "Mongol Ligature KHU";
+ ligkhu;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGKHN,bawidth#,height#,depth#);
+ "Mongol Ligature KHN";
+ ligkha;
+ dusal (x7,yashilbeheight,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGKHL,bawidth#,height#,depth#);
+ "Mongol Ligature KHL";
+ ligkha;
+ high_l_ewer(2.5thin);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGGHA,bawidth#,height#,depth#);
+ "Mongol Ligature GHA";
+ liggha;
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGGHI,biwidth#,height#,depth#);
+ "Mongol Ligature GHI";
+ nuruu(shilbewidth-thin,0);
+ nuruu(biwidth,biwidth-bearing);
+
+ z1l=(biwidth-gedeswidth+5thin,shudheight-thin);
+ z2r=(biwidth-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z4 =(x2,nuruuright);
+ z5r=(1/2[x4,x6],underouter);
+ z6l=(shilbewidth,nuruuright);
+ z7l=(3thin,shilbeheight);
+ penpos4(2thin,0);
+ penpos5(underinner-underouter,-90);
+ penpos6(2thin,-180);
+ penpos7(4thin,-120);
+
+ penstroke (z1e..z2e...z4e{down}..z5e..{up}z6e..tension
+ infinity..z7e) ifrotated;
+
+ z10r=(biwidth,gedesouter+thin);
+ z11 =(x10-2thin,shudheight-5thin);
+ penpos10(1.5thin,0);
+ penpos11(2thin,-45);
+ penstroke (z10e..z11e) ifrotated;
+
+ penlabels(1,2,3,4,5,6,7,8,9);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGGHU,shudwidth#+numtaigedeswidth#,height#,depth#);
+ "Mongol Ligature GHU";
+ nuruu(w,w-bearing);
+ nuruu(numtaigedeswidth,0);
+ z1l=(w-shudwidth+1thin,shudheight);
+ z2r=(w-1/2bearing,nuruuleft);
+ penpos1(4thin,60);
+ penpos2(2thin,0);
+
+ z3 =(x2,nuruuright);
+ z4r=(numtaigedeswidth,underouter);
+ z5r=(1/2bearing,nuruuright);
+ penpos3(2thin,0);
+ penpos4(underinner-underouter,-90);
+ penpos5(thin,-180);
+
+ z6 =(x5,nuruuleft);
+ z7r=(1/2[x6,x8],gedesouter);
+ z8r=(numtaigedeswidth,y6);
+ penpos6(thin,-180);
+ penpos7(gedesinner-gedesouter,-90);
+ penpos8(thin,0);
+
+
+ z9r=(w,gedesouter+thin);
+ z10=(x9-1thin,shudheight-thick);
+ penpos9(1.5thin,0);
+ penpos10(2thin,-45);
+ penstroke (z9e..z10e) ifrotated;
+
+ penstroke (z1e..z2e...z3e{down}..z4e..{up}z5e) ifrotated;
+ penstroke (z6e{up}..z7e..{down}z8e) ifrotated;
+ penlabels(1,2,3,4,5,6,7,8,9,10);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGGHN,bawidth#,height#,depth#);
+ "Mongol Ligature GHN";
+ liggha;
+ dusal (x7,yashilbeheight,3thin,2thick);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+beginchar(MONG_LIGGHL,bawidth#,height#,depth#);
+ "Mongol Ligature GHL";
+ liggha;
+ high_l_ewer(2.5thin);
+endchar;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% vim: ts=8
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/montrlig.mf b/Master/texmf-dist/fonts/source/public/montex/montrlig.mf
new file mode 100644
index 00000000000..8a1288060c3
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/montrlig.mf
@@ -0,0 +1,2036 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: montrlig.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: March 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Local Mongolian Script (LMO)
+% Mongol Bicig Ligature Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Punctuation
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable "!": "?" =: MONG_EXCLAMQUEST;%
+ligtable "?": "!" =: MONG_QUESTEXCLAM;%
+ligtable ",": "," =: MONG_FULLSTOP; %
+ligtable MONG_GT: MONG_GT =: MONG_RGU; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Initial cases
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_OM:
+ MONG_A |=:| MONG_TITEM, % "a"
+ MONG_AE |=:| MONG_TITEM, % "a"
+% MONG_E =: MONG_TITEM, % "e"
+ MONG_I |=:| MONG_TITEM, % "i"
+ MONG_U |=:| MONG_TITEM, % "u"
+ MONG_N |=: MONG_EXENN, % "n"
+ MONG_M |=: MONG_EXENM, % " m-"
+ MONG_EXENM kern 0.25gedeswidth#,%
+ MONG_TITEM kern 0.25gedeswidth#,%
+ MONG_L |=: MONG_EXENL, % " l-"
+ MONG_H |=:| MONG_TITEM, % " e-"
+ MONG_S |=: MONG_EXENS, % " s-"
+ MONG_SH |=: MONG_EXENSH, % "sh"
+ MONG_D |=: MONG_T, % " d-"
+ MONG_X |=: MONG_EXENX, % MONG_X
+ MONG_G |=: MONG_EXENG, % MONG_X
+ MONG_Z |=: MONG_SHILBE; % "z"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable ||:
+ MONG_A =:| MONG_TITEM, % "a"
+ MONG_AE =: MONG_TITEM, % "\"a"
+% MONG_E =:| MONG_TITEM, % " e-"
+ MONG_I =:| MONG_TITEM, % " i-"
+ MONG_U =:| MONG_TITEM, % " u-"
+ MONG_N =: MONG_EXENN, % " n-"
+ MONG_M =: MONG_EXENM, % " m-"
+ MONG_L =: MONG_EXENL, % " l-"
+ MONG_H =:| MONG_TITEM, % " e-"
+ MONG_S =: MONG_EXENS, % " s-"
+ MONG_SH =: MONG_EXENSH, % "sh"
+ MONG_D |=: MONG_T, % " d-"
+ MONG_X =: MONG_EXENX, % " x-"
+ MONG_G =: MONG_EXENG, % " G-"
+ MONG_Z =: MONG_SHILBE; % "z"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_OPAREN:
+ MONG_A |=:| MONG_TITEM, % "a"
+ MONG_AE |=:| MONG_TITEM, % "a"
+% MONG_E =: MONG_TITEM, % "e"
+ MONG_I |=:| MONG_TITEM, % "i"
+ MONG_U |=:| MONG_TITEM, % "u"
+ MONG_N |=: MONG_EXENN, % "n"
+ MONG_M |=: MONG_EXENM, % " m-"
+ MONG_L |=: MONG_EXENL, % " l-"
+ MONG_H |=:| MONG_TITEM, % " e-"
+ MONG_S |=: MONG_EXENS, % " s-"
+ MONG_SH |=: MONG_EXENSH, % "sh"
+ MONG_D |=: MONG_T, % " d-"
+ MONG_X |=: MONG_EXENX, % MONG_X
+ MONG_G |=: MONG_EXENG, % MONG_X
+ MONG_Z |=: MONG_SHILBE; % "z"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LT: % "<"
+ MONG_LT =: MONG_LGU, % "<<"
+ MONG_A |=:| MONG_TITEM, % "a"
+ MONG_AE |=:| MONG_TITEM, % "a"
+% MONG_E |=:| MONG_TITEM, % " e-"
+ MONG_I |=:| MONG_TITEM, % "i"
+ MONG_U |=:| MONG_TITEM, % "u"
+ MONG_N |=: MONG_EXENN, % "n"
+ MONG_M |=: MONG_EXENM, % MONG_M
+ MONG_L |=: MONG_EXENL, % MONG_M
+ MONG_H |=:| MONG_TITEM, % MONG_H
+ MONG_S |=: MONG_EXENS, % MONG_S
+ MONG_SH |=: MONG_EXENSH, % "sh"
+ MONG_D |=: MONG_T, % " d-"
+ MONG_X |=: MONG_EXENX, % MONG_X
+ MONG_G |=: MONG_EXENG, % MONG_X
+ MONG_Z |=: MONG_SHILBE; % "z"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LGU: % "<<"
+ MONG_A |=:| MONG_TITEM, % "a"
+ MONG_AE |=:| MONG_TITEM, % "a"
+% MONG_E |=:| MONG_TITEM, % MONG_M
+ MONG_I |=:| MONG_TITEM, % "i"
+ MONG_U |=:| MONG_TITEM, % "u"
+ MONG_N |=: MONG_EXENN, % "n"
+% MONG_EXENN kern 0.5gedeswidth,
+ MONG_M |=: MONG_EXENM, % MONG_M
+% MONG_EXENM kern 0.5gedeswidth,
+ MONG_L |=: MONG_EXENL, % MONG_M
+% MONG_EXENL kern 0.5gedeswidth,
+ MONG_H |=:| MONG_TITEM, % MONG_H
+ MONG_S |=: MONG_EXENS, % MONG_S
+% MONG_EXENS kern 0.5gedeswidth,
+ MONG_SH |=: MONG_EXENSH, % "sh"
+% MONG_EXENSH kern 0.5gedeswidth,
+ MONG_D |=: MONG_T, % " d-"
+% MONG_T kern 0.5gedeswidth,
+ MONG_X |=: MONG_EXENX, % MONG_X
+% MONG_EXENX kern 0.5gedeswidth,
+ MONG_G |=: MONG_EXENG, % MONG_X
+% MONG_EXENG kern 0.5gedeswidth,
+ MONG_Z |=: MONG_SHILBE; % "z"
+% MONG_SHILBE kern 0.5gedeswidth;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ENV: %
+ %
+ % vowels
+ %
+ MONG_A =: MONG_A , % ""
+ MONG_AE =: MONG_AE , % ""
+ MONG_I =: MONG_I , % ""
+ MONG_U =: MONG_U , % ""
+ %
+ % consonants
+ %
+ MONG_B =: MONG_B , % ""
+ MONG_C =: MONG_C , % ""
+ MONG_CH =: MONG_CH , % ""
+ MONG_D =: MONG_D , % ""
+ MONG_F =: MONG_F , % ""
+ MONG_G =: MONG_G , % ""
+ MONG_GH =: MONG_GH , % ""
+ MONG_H =: MONG_H , % ""
+ MONG_J =: MONG_J , % ""
+ MONG_K =: MONG_K , % ""
+ MONG_KH =: MONG_KH , % ""
+ MONG_L =: MONG_L , % ""
+ MONG_M =: MONG_M , % ""
+ MONG_N =: MONG_N , % ""
+ MONG_P =: MONG_P , % ""
+ MONG_R =: MONG_R , % ""
+ MONG_S =: MONG_S , % ""
+ MONG_SH =: MONG_SH , % ""
+ MONG_T =: MONG_T , % ""
+ MONG_V =: MONG_V , % ""
+ MONG_Y =: MONG_Y , % ""
+ MONG_Z =: MONG_Z , % ""
+ MONG_ZH =: MONG_ZH , % ""
+ %
+ % boundaries
+ %
+ MONG_BNDRY =: MONG_BNDRY , % ""
+ MONG_ZERO =: MONG_ZERO , % ""
+ MONG_ONE =: MONG_ONE , % ""
+ MONG_TWO =: MONG_TWO , % ""
+ MONG_THREE =: MONG_THREE , % ""
+ MONG_FOUR =: MONG_FOUR , % ""
+ MONG_FIVE =: MONG_FIVE , % ""
+ MONG_SIX =: MONG_SIX , % ""
+ MONG_SEVEN =: MONG_SEVEN , % ""
+ MONG_EIGHT =: MONG_EIGHT , % ""
+ MONG_NINE =: MONG_NINE , % ""
+ MONG_LT =: MONG_LT , % ""
+ MONG_GT =: MONG_GT , % ""
+ MONG_LGU =: MONG_LGU , % ""
+ MONG_RGU =: MONG_RGU , % ""
+ MONG_OPAREN =: MONG_OPAREN , % ""
+ MONG_CPAREN =: MONG_CPAREN , % ""
+ MONG_DORWOLJIN =: MONG_DORWOLJIN, % ""
+ MONG_FULLSTOP =: MONG_FULLSTOP , % ""
+ MONG_COLON =: MONG_COLON , % ""
+ MONG_ELLIPSIS =: MONG_ELLIPSIS , % ""
+ MONG_EXCLAMATION =: MONG_EXCLAMATION,% ""
+ MONG_QUESTION =: MONG_QUESTION, % ""
+ MONG_QUESTEXCLAM =: MONG_QUESTEXCLAM,% ""
+ MONG_EXCLAMQUEST =: MONG_EXCLAMQUEST,% ""
+ MONG_TASLAL =: MONG_TASLAL , % ""
+ MONG_MSP =: MONG_MSP , % ""
+ MONG_MVS =: MONG_MVS , % ""
+ MONG_NCEG =: MONG_NCEG , % ""
+ MONG_GCEG =: MONG_GCEG , % ""
+ MONG_TITEMSTROKE =: MONG_TITEMSTROKE;% ""
+ %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_MSP:
+ MONG_A =:| MONG_NIRUGU, %
+ MONG_AE =:| MONG_NIRUGU, %
+ MONG_I =: MONG_I, %
+ MONG_U =: MONG_U, %
+ MONG_B =: MONG_B, %
+ MONG_K =: MONG_K, %
+ MONG_D =: MONG_D, %
+ MONG_T =: MONG_T, %
+ MONG_Y =: MONG_SHILBE; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ZERO:MONG_ONE:MONG_TWO:MONG_THREE: MONG_FOUR:
+ MONG_FIVE:MONG_SIX:MONG_SEVEN:MONG_EIGHT:MONG_NINE:
+ "," kern 0.5gedeswidth#, %
+ "." kern 0.5gedeswidth#, %
+ ";" kern 0.5gedeswidth#, %
+ ":" kern 0.5gedeswidth#, %
+ "!" kern 0.5gedeswidth#, %
+ "?" kern 0.5gedeswidth#, %
+ MONG_QUESTEXCLAM kern 0.5gedeswidth#, %
+ MONG_EXCLAMQUEST kern 0.5gedeswidth#, %
+ MONG_OPAREN kern 0.5gedeswidth#, %
+% MONG_CPAREN kern 0.5gedeswidth#, %
+ MONG_LT kern 0.5gedeswidth#, %
+% MONG_GT kern 0.5gedeswidth#, %
+ MONG_LGU kern 0.5gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Special final cases
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_SUUL: %
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ORXIC: %
+ MONG_MVS kern 0.25gedeswidth#,%
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_BIODOISUUL: %
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_NCEG: %
+ MONG_A |=: MONG_ORXIC, %
+ MONG_AE |=: MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_MVS: %
+ MONG_A =: MONG_ORXIC, %
+ MONG_AE =: MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Individual letters
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_A: % "a"
+ MONG_FVS1 =: MONG_AVAR, % special
+ MONG_BNDRY =: MONG_SUUL, %
+ MONG_MVS =:| MONG_SUUL, %
+ "," =:| MONG_SUUL, %
+ "." =:| MONG_SUUL, %
+ ";" =:| MONG_SUUL, %
+ ":" =:| MONG_SUUL, %
+ "!" =:| MONG_SUUL, %
+ "?" =:| MONG_SUUL, %
+ MONG_QUESTEXCLAM=:| MONG_SUUL, %
+ MONG_EXCLAMQUEST=:| MONG_SUUL, %
+ MONG_OPAREN =:| MONG_SUUL, %
+ MONG_CPAREN =:| MONG_SUUL, %
+ MONG_LT =:| MONG_SUUL, %
+ MONG_GT =:| MONG_SUUL, %
+ MONG_LGU =:| MONG_SUUL, %
+ MONG_RGU =:| MONG_SUUL, %
+ MONG_ZERO =:| MONG_SUUL, %
+ MONG_ONE =:| MONG_SUUL, %
+ MONG_TWO =:| MONG_SUUL, %
+ MONG_THREE =:| MONG_SUUL, %
+ MONG_FOUR =:| MONG_SUUL, %
+ MONG_FIVE =:| MONG_SUUL, %
+ MONG_SIX =:| MONG_SUUL, %
+ MONG_SEVEN =:| MONG_SUUL, %
+ MONG_EIGHT =:| MONG_SUUL, %
+ MONG_NINE =:| MONG_SUUL; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_AVAR: % "special a"
+ MONG_BNDRY =: MONG_ORXIC, %
+ MONG_MVS =:| MONG_ORXIC, %
+ "," =:| MONG_ORXIC, %
+ "." =:| MONG_ORXIC, %
+ ";" =:| MONG_ORXIC, %
+ ":" =:| MONG_ORXIC, %
+ "!" =:| MONG_ORXIC, %
+ "?" =:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST=:| MONG_ORXIC, %
+ MONG_OPAREN =:| MONG_ORXIC, %
+ MONG_CPAREN =:| MONG_ORXIC, %
+ MONG_LT =:| MONG_ORXIC, %
+ MONG_GT =:| MONG_ORXIC, %
+ MONG_LGU =:| MONG_ORXIC, %
+ MONG_RGU =:| MONG_ORXIC, %
+ MONG_ZERO =:| MONG_ORXIC, %
+ MONG_ONE =:| MONG_ORXIC, %
+ MONG_TWO =:| MONG_ORXIC, %
+ MONG_THREE =:| MONG_ORXIC, %
+ MONG_FOUR =:| MONG_ORXIC, %
+ MONG_FIVE =:| MONG_ORXIC, %
+ MONG_SIX =:| MONG_ORXIC, %
+ MONG_SEVEN =:| MONG_ORXIC, %
+ MONG_EIGHT =:| MONG_ORXIC, %
+ MONG_NINE =:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_AE: % "a"
+ MONG_BNDRY =: MONG_SUUL, %
+ MONG_MVS =:| MONG_SUUL, %
+ "," =:| MONG_SUUL, %
+ "." =:| MONG_SUUL, %
+ ";" =:| MONG_SUUL, %
+ ":" =:| MONG_SUUL, %
+ "!" =:| MONG_SUUL, %
+ "?" =:| MONG_SUUL, %
+ MONG_QUESTEXCLAM=:| MONG_SUUL, %
+ MONG_EXCLAMQUEST=:| MONG_SUUL, %
+ MONG_OPAREN =:| MONG_SUUL, %
+ MONG_CPAREN =:| MONG_SUUL, %
+ MONG_LT =:| MONG_SUUL, %
+ MONG_GT =:| MONG_SUUL, %
+ MONG_LGU =:| MONG_SUUL, %
+ MONG_RGU =:| MONG_SUUL, %
+ MONG_ZERO =:| MONG_SUUL, %
+ MONG_ONE =:| MONG_SUUL, %
+ MONG_TWO =:| MONG_SUUL, %
+ MONG_THREE =:| MONG_SUUL, %
+ MONG_FOUR =:| MONG_SUUL, %
+ MONG_FIVE =:| MONG_SUUL, %
+ MONG_SIX =:| MONG_SUUL, %
+ MONG_SEVEN =:| MONG_SUUL, %
+ MONG_EIGHT =:| MONG_SUUL, %
+ MONG_NINE =:| MONG_SUUL; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_I: % "i"
+ MONG_FVS1 =: MONG_IVAR, % special
+ MONG_BNDRY =: MONG_ADAGI, %
+ MONG_MVS =:| MONG_ADAGI, %
+ "," =:| MONG_ADAGI, %
+ "." =:| MONG_ADAGI, %
+ ";" =:| MONG_ADAGI, %
+ ":" =:| MONG_ADAGI, %
+ "!" =:| MONG_ADAGI, %
+ "?" =:| MONG_ADAGI, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGI, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGI, %
+ MONG_OPAREN =:| MONG_ADAGI, %
+ MONG_CPAREN =:| MONG_ADAGI, %
+ MONG_LT =:| MONG_ADAGI, %
+ MONG_GT =:| MONG_ADAGI, %
+ MONG_LGU =:| MONG_ADAGI, %
+ MONG_RGU =:| MONG_ADAGI, %
+ MONG_ZERO =:| MONG_ADAGI, %
+ MONG_ONE =:| MONG_ADAGI, %
+ MONG_TWO =:| MONG_ADAGI, %
+ MONG_THREE =:| MONG_ADAGI, %
+ MONG_FOUR =:| MONG_ADAGI, %
+ MONG_FIVE =:| MONG_ADAGI, %
+ MONG_SIX =:| MONG_ADAGI, %
+ MONG_SEVEN =:| MONG_ADAGI, %
+ MONG_EIGHT =:| MONG_ADAGI, %
+ MONG_NINE =:| MONG_ADAGI; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_IVAR: %
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ MONG_MVS |=:| MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGI: %
+ MONG_MVS kern 0.5gedeswidth#, %
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_U: % "u"
+ MONG_BNDRY =: MONG_ADAGU, %
+ MONG_MVS =:| MONG_ADAGU, %
+ "," =:| MONG_ADAGU, %
+ "." =:| MONG_ADAGU, %
+ ";" =:| MONG_ADAGU, %
+ ":" =:| MONG_ADAGU, %
+ "!" =:| MONG_ADAGU, %
+ "?" =:| MONG_ADAGU, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGU, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGU, %
+ MONG_OPAREN =:| MONG_ADAGU, %
+ MONG_CPAREN =:| MONG_ADAGU, %
+ MONG_LT =:| MONG_ADAGU, %
+ MONG_GT =:| MONG_ADAGU, %
+ MONG_LGU =:| MONG_ADAGU, %
+ MONG_RGU =:| MONG_ADAGU, %
+ MONG_ZERO =:| MONG_ADAGU, %
+ MONG_ONE =:| MONG_ADAGU, %
+ MONG_TWO =:| MONG_ADAGU, %
+ MONG_THREE =:| MONG_ADAGU, %
+ MONG_FOUR =:| MONG_ADAGU, %
+ MONG_FIVE =:| MONG_ADAGU, %
+ MONG_SIX =:| MONG_ADAGU, %
+ MONG_SEVEN =:| MONG_ADAGU, %
+ MONG_EIGHT =:| MONG_ADAGU, %
+ MONG_NINE =:| MONG_ADAGU; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGU: %
+% "=" |=: MONG_MVS, %
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_B: % "b"
+ MONG_A =: MONG_LIGBA, % "ba"
+ MONG_AE =: MONG_LIGBA, % "ba"
+ MONG_I =: MONG_LIGBI, % "bi"
+ MONG_U =: MONG_LIGBU, % "bu"
+ MONG_L =: MONG_LIGBL, % "bl"
+ MONG_N =: MONG_LIGBN, % "bn"
+ MONG_BNDRY =: MONG_ADAGB, % "b"
+ MONG_MVS =:| MONG_ADAGB, %
+ "," =:| MONG_ADAGB, %
+ "." =:| MONG_ADAGB, %
+ ";" =:| MONG_ADAGB, %
+ ":" =:| MONG_ADAGB, %
+ "!" =:| MONG_ADAGB, %
+ "?" =:| MONG_ADAGB, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGB, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGB, %
+ MONG_OPAREN =:| MONG_ADAGB, %
+ MONG_CPAREN =:| MONG_ADAGB, %
+ MONG_LT =:| MONG_ADAGB, %
+ MONG_GT =:| MONG_ADAGB, %
+ MONG_LGU =:| MONG_ADAGB, %
+ MONG_RGU =:| MONG_ADAGB, %
+ MONG_ZERO =:| MONG_ADAGB, %
+ MONG_ONE =:| MONG_ADAGB, %
+ MONG_TWO =:| MONG_ADAGB, %
+ MONG_THREE =:| MONG_ADAGB, %
+ MONG_FOUR =:| MONG_ADAGB, %
+ MONG_FIVE =:| MONG_ADAGB, %
+ MONG_SIX =:| MONG_ADAGB, %
+ MONG_SEVEN =:| MONG_ADAGB, %
+ MONG_EIGHT =:| MONG_ADAGB, %
+ MONG_NINE =:| MONG_ADAGB; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGB: %
+% "=" |=: MONG_MVS, %
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_C: %
+ MONG_BNDRY |=: MONG_BIODOISUUL,% "c"
+ MONG_MVS |=:| MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_CH: % "C"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ MONG_MVS |=:| MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_D: % "d"
+ MONG_B =:| MONG_DUNDD, %
+ MONG_C =:| MONG_DUNDD, %
+ MONG_CH =:| MONG_DUNDD, %
+ MONG_D =:| MONG_DUNDD, %
+ MONG_F =:| MONG_DUNDD, %
+ MONG_G =:| MONG_DUNDD, %
+ MONG_GH =:| MONG_DUNDD, %
+ MONG_H =:| MONG_DUNDD, %
+ MONG_J =:| MONG_DUNDD, %
+ MONG_K =:| MONG_DUNDD, %
+ MONG_KH =:| MONG_DUNDD, %
+% MONG_L =:| MONG_DUNDD, %
+ MONG_M =:| MONG_DUNDD, %
+ MONG_N =:| MONG_DUNDD, %
+ MONG_P =:| MONG_DUNDD, %
+ MONG_R =:| MONG_DUNDD, %
+ MONG_S =:| MONG_DUNDD, %
+ MONG_SH =:| MONG_DUNDD, %
+ MONG_T =:| MONG_DUNDD, %
+ MONG_V =:| MONG_DUNDD, %
+ MONG_X =:| MONG_DUNDD, %
+ MONG_Y =:| MONG_DUNDD, %
+ MONG_Z =:| MONG_DUNDD, %
+ MONG_ZH =:| MONG_DUNDD, %
+ MONG_FVS1 =: MONG_DVAR, % "ed'"
+ MONG_BNDRY =: MONG_ADAGD, %
+ MONG_MVS =:| MONG_ADAGD, %
+ "," =:| MONG_ADAGD, %
+ "." =:| MONG_ADAGD, %
+ ";" =:| MONG_ADAGD, %
+ ":" =:| MONG_ADAGD, %
+ "!" =:| MONG_ADAGD, %
+ "?" =:| MONG_ADAGD, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGD, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGD, %
+ MONG_OPAREN =:| MONG_ADAGD, %
+ MONG_CPAREN =:| MONG_ADAGD, %
+ MONG_LT =:| MONG_ADAGD, %
+ MONG_GT =:| MONG_ADAGD, %
+ MONG_LGU =:| MONG_ADAGD, %
+ MONG_RGU =:| MONG_ADAGD, %
+ MONG_ZERO =:| MONG_ADAGD, %
+ MONG_ONE =:| MONG_ADAGD, %
+ MONG_TWO =:| MONG_ADAGD, %
+ MONG_THREE =:| MONG_ADAGD, %
+ MONG_FOUR =:| MONG_ADAGD, %
+ MONG_FIVE =:| MONG_ADAGD, %
+ MONG_SIX =:| MONG_ADAGD, %
+ MONG_SEVEN =:| MONG_ADAGD, %
+ MONG_EIGHT =:| MONG_ADAGD, %
+ MONG_NINE =:| MONG_ADAGD; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGD: % "-d "
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_DVAR: % "f"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ MONG_MVS |=:| MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_F: % "f"
+ MONG_A =: MONG_LIGFA, % "fa"
+ MONG_I =: MONG_LIGFI, % "fi"
+ MONG_U =: MONG_LIGFU, % "fu"
+ MONG_L =: MONG_LIGFL, % "fl"
+ MONG_N =: MONG_LIGFN, % "fn"
+ MONG_BNDRY |=: MONG_ORXIC, %
+ MONG_MVS =:| MONG_ORXIC, %
+ "," =:| MONG_ORXIC, %
+ "." =:| MONG_ORXIC, %
+ ";" =:| MONG_ORXIC, %
+ ":" =:| MONG_ORXIC, %
+ "!" =:| MONG_ORXIC, %
+ "?" =:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST=:| MONG_ORXIC, %
+ MONG_OPAREN =:| MONG_ORXIC, %
+ MONG_CPAREN =:| MONG_ORXIC, %
+ MONG_LT =:| MONG_ORXIC, %
+ MONG_GT =:| MONG_ORXIC, %
+ MONG_LGU =:| MONG_ORXIC, %
+ MONG_RGU =:| MONG_ORXIC, %
+ MONG_ZERO =:| MONG_ORXIC, %
+ MONG_ONE =:| MONG_ORXIC, %
+ MONG_TWO =:| MONG_ORXIC, %
+ MONG_THREE =:| MONG_ORXIC, %
+ MONG_FOUR =:| MONG_ORXIC, %
+ MONG_FIVE =:| MONG_ORXIC, %
+ MONG_SIX =:| MONG_ORXIC, %
+ MONG_SEVEN =:| MONG_ORXIC, %
+ MONG_EIGHT =:| MONG_ORXIC, %
+ MONG_NINE =:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_G: % "g"
+ MONG_AE =:| MONG_K, % "ge"
+ MONG_V =:| MONG_K, % "ge"
+ MONG_B =:| MONG_DUNDX, %
+ MONG_C =:| MONG_DUNDX, %
+ MONG_CH =:| MONG_DUNDX, %
+ MONG_D =:| MONG_DUNDX, %
+ MONG_F =:| MONG_DUNDX, %
+ MONG_G =:| MONG_DUNDX, %
+ MONG_GH =:| MONG_DUNDX, %
+ MONG_H =:| MONG_DUNDX, %
+ MONG_J =:| MONG_DUNDX, %
+ MONG_K =:| MONG_DUNDX, %
+ MONG_KH =:| MONG_DUNDX, %
+ MONG_L =:| MONG_DUNDX, %
+ MONG_M =:| MONG_DUNDX, %
+ MONG_N =:| MONG_DUNDX, %
+ MONG_P =:| MONG_DUNDX, %
+ MONG_R =:| MONG_DUNDX, %
+ MONG_S =:| MONG_DUNDX, %
+ MONG_SH =:| MONG_DUNDX, %
+ MONG_T =:| MONG_DUNDX, %
+ MONG_V =:| MONG_DUNDX, %
+ MONG_X =:| MONG_DUNDX, %
+ MONG_Y =:| MONG_DUNDX, %
+ MONG_Z =:| MONG_DUNDX, %
+ MONG_ZH =:| MONG_DUNDX, %
+ MONG_FVS1 =: MONG_DUNDX, % "g variant"
+ MONG_BNDRY =: MONG_ADAGX, %
+ MONG_MVS =:| MONG_ADAGG, %
+ "," =:| MONG_ADAGX, %
+ "." =:| MONG_ADAGX, %
+ ";" =:| MONG_ADAGX, %
+ ":" =:| MONG_ADAGX, %
+ "!" =:| MONG_ADAGX, %
+ "?" =:| MONG_ADAGX, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGX, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGX, %
+ MONG_OPAREN =:| MONG_ADAGX, %
+ MONG_CPAREN =:| MONG_ADAGX, %
+ MONG_LT =:| MONG_ADAGX, %
+ MONG_GT =:| MONG_ADAGX, %
+ MONG_LGU =:| MONG_ADAGX, %
+ MONG_RGU =:| MONG_ADAGX, %
+ MONG_ZERO =:| MONG_ADAGX, %
+ MONG_ONE =:| MONG_ADAGX, %
+ MONG_TWO =:| MONG_ADAGX, %
+ MONG_THREE =:| MONG_ADAGX, %
+ MONG_FOUR =:| MONG_ADAGX, %
+ MONG_FIVE =:| MONG_ADAGX, %
+ MONG_SIX =:| MONG_ADAGX, %
+ MONG_SEVEN =:| MONG_ADAGX, %
+ MONG_EIGHT =:| MONG_ADAGX, %
+ MONG_NINE =:| MONG_ADAGX; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGG: % "g=a"
+ MONG_MVS |=: MONG_GCEG; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_GCEG: % "g=a"
+ MONG_A |=: MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_EXENG: % " ge-"
+ MONG_AE =:| MONG_K, %
+ MONG_FVS1 =: MONG_EXENX; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_GH: % "gh"
+ MONG_A =: MONG_LIGGHA, % "gha"
+ MONG_I =: MONG_LIGGHI, % "ghi"
+ MONG_U =: MONG_LIGGHU, % "ghu"
+ MONG_L =: MONG_LIGGHL, % "ghl"
+ MONG_N =: MONG_LIGGHN, % "ghn"
+ MONG_BNDRY |=: MONG_ORXIC, %
+ MONG_MVS |=:| MONG_ORXIC, %
+ "," |=:| MONG_ORXIC, %
+ "." |=:| MONG_ORXIC, %
+ ";" |=:| MONG_ORXIC, %
+ ":" |=:| MONG_ORXIC, %
+ "!" |=:| MONG_ORXIC, %
+ "?" |=:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM|=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST|=:| MONG_ORXIC, %
+ MONG_OPAREN |=:| MONG_ORXIC, %
+ MONG_CPAREN |=:| MONG_ORXIC, %
+ MONG_LT |=:| MONG_ORXIC, %
+ MONG_GT |=:| MONG_ORXIC, %
+ MONG_LGU |=:| MONG_ORXIC, %
+ MONG_RGU |=:| MONG_ORXIC, %
+ MONG_ZERO |=:| MONG_ORXIC, %
+ MONG_ONE |=:| MONG_ORXIC, %
+ MONG_TWO |=:| MONG_ORXIC, %
+ MONG_THREE |=:| MONG_ORXIC, %
+ MONG_FOUR |=:| MONG_ORXIC, %
+ MONG_FIVE |=:| MONG_ORXIC, %
+ MONG_SIX |=:| MONG_ORXIC, %
+ MONG_SEVEN |=:| MONG_ORXIC, %
+ MONG_EIGHT |=:| MONG_ORXIC, %
+ MONG_NINE |=:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_H: %
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ MONG_MVS |=:| MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_J: % "j"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ MONG_MVS |=:| MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_K: % "k"
+ MONG_A =: MONG_LIGKA, % "ka"
+ MONG_AE =: MONG_LIGKA, % "ke"
+ MONG_I =: MONG_LIGKI, % "ki"
+ MONG_U =: MONG_LIGKU, % "ku"
+ MONG_B =:| MONG_BAGANUM, % "kb"
+ MONG_C =:| MONG_BAGANUM, % "kc"
+ MONG_CH =:| MONG_BAGANUM, % "kC"
+ MONG_D =:| MONG_BAGANUM, % "kd"
+ MONG_F =:| MONG_BAGANUM, % "kf"
+ MONG_G =:| MONG_BAGANUM, % "kg"
+ MONG_GH =:| MONG_BAGANUM, % "kG"
+ MONG_K =:| MONG_BAGANUM, % "kk"
+ MONG_KH =:| MONG_BAGANUM, % "kK"
+ MONG_L =: MONG_LIGKL, % "kl"
+ MONG_M =: MONG_BAGANUM, % "km"
+ MONG_N =: MONG_LIGKN, % "kn"
+ MONG_P =:| MONG_BAGANUM, % "kp"
+ MONG_R =:| MONG_BAGANUM, % "kr"
+ MONG_S =:| MONG_BAGANUM, % "ks"
+ MONG_SH =:| MONG_BAGANUM, % "ksh"
+ MONG_T =:| MONG_BAGANUM, % "kt"
+ MONG_V =:| MONG_BAGANUM, % "kz"
+ MONG_Y =:| MONG_BAGANUM, % "kv"
+ MONG_Z =:| MONG_BAGANUM, % "ky"
+ MONG_ZH =:| MONG_BAGANUM, % "kZ"
+ MONG_BNDRY =: MONG_ADAGK, %
+ "," =:| MONG_ADAGK, %
+ "." =:| MONG_ADAGK, %
+ ";" =:| MONG_ADAGK, %
+ ":" =:| MONG_ADAGK, %
+ "!" =:| MONG_ADAGK, %
+ "?" =:| MONG_ADAGK, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGK, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGK, %
+ MONG_OPAREN =:| MONG_ADAGK, %
+ MONG_CPAREN =:| MONG_ADAGK, %
+ MONG_LT =:| MONG_ADAGK, %
+ MONG_GT =:| MONG_ADAGK, %
+ MONG_LGU =:| MONG_ADAGK, %
+ MONG_RGU =:| MONG_ADAGK, %
+ MONG_ZERO =:| MONG_ADAGK, %
+ MONG_ONE =:| MONG_ADAGK, %
+ MONG_TWO =:| MONG_ADAGK, %
+ MONG_THREE =:| MONG_ADAGK, %
+ MONG_FOUR =:| MONG_ADAGK, %
+ MONG_FIVE =:| MONG_ADAGK, %
+ MONG_SIX =:| MONG_ADAGK, %
+ MONG_SEVEN =:| MONG_ADAGK, %
+ MONG_EIGHT =:| MONG_ADAGK, %
+ MONG_NINE =:| MONG_ADAGK; %, %
+% "=" |=: MONG_MVS; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGK: %
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_KH: % "kh"
+ MONG_A =: MONG_LIGKHA, % "kha"
+ MONG_I =: MONG_LIGKHI, % "khi"
+ MONG_U =: MONG_LIGKHU, % "khu"
+ MONG_L =: MONG_LIGKHL, % "khl"
+ MONG_N =: MONG_LIGKHN, % "khn"
+ MONG_BNDRY |=: MONG_ORXIC, %
+ MONG_MVS |=:| MONG_ORXIC, %
+ "," |=:| MONG_ORXIC, %
+ "." |=:| MONG_ORXIC, %
+ ";" |=:| MONG_ORXIC, %
+ ":" |=:| MONG_ORXIC, %
+ "!" |=:| MONG_ORXIC, %
+ "?" |=:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM|=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST|=:| MONG_ORXIC, %
+ MONG_OPAREN |=:| MONG_ORXIC, %
+ MONG_CPAREN |=:| MONG_ORXIC, %
+ MONG_LT |=:| MONG_ORXIC, %
+ MONG_GT |=:| MONG_ORXIC, %
+ MONG_LGU |=:| MONG_ORXIC, %
+ MONG_RGU |=:| MONG_ORXIC, %
+ MONG_ZERO |=:| MONG_ORXIC, %
+ MONG_ONE |=:| MONG_ORXIC, %
+ MONG_TWO |=:| MONG_ORXIC, %
+ MONG_THREE |=:| MONG_ORXIC, %
+ MONG_FOUR |=:| MONG_ORXIC, %
+ MONG_FIVE |=:| MONG_ORXIC, %
+ MONG_SIX |=:| MONG_ORXIC, %
+ MONG_SEVEN |=:| MONG_ORXIC, %
+ MONG_EIGHT |=:| MONG_ORXIC, %
+ MONG_NINE |=:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_L: %
+ MONG_L =: MONG_LIGLL, % "ll"
+ MONG_BNDRY =: MONG_ADAGL, % MONG_L
+ MONG_MVS =:| MONG_ADAGL, %
+ "," =:| MONG_ADAGL, %
+ "." =:| MONG_ADAGL, %
+ ";" =:| MONG_ADAGL, %
+ ":" =:| MONG_ADAGL, %
+ "!" =:| MONG_ADAGL, %
+ "?" =:| MONG_ADAGL, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGL, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGL, %
+ MONG_OPAREN =:| MONG_ADAGL, %
+ MONG_CPAREN =:| MONG_ADAGL, %
+ MONG_LT =:| MONG_ADAGL, %
+ MONG_GT =:| MONG_ADAGL, %
+ MONG_LGU =:| MONG_ADAGL, %
+ MONG_RGU =:| MONG_ADAGL, %
+ MONG_ZERO =:| MONG_ADAGL, %
+ MONG_ONE =:| MONG_ADAGL, %
+ MONG_TWO =:| MONG_ADAGL, %
+ MONG_THREE =:| MONG_ADAGL, %
+ MONG_FOUR =:| MONG_ADAGL, %
+ MONG_FIVE =:| MONG_ADAGL, %
+ MONG_SIX =:| MONG_ADAGL, %
+ MONG_SEVEN =:| MONG_ADAGL, %
+ MONG_EIGHT =:| MONG_ADAGL, %
+ MONG_NINE =:| MONG_ADAGL; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_HIGHLEWER: %
+ MONG_BNDRY =: MONG_ADAGL, % ""
+ MONG_MVS =:| MONG_ADAGL, %
+ "," =:| MONG_ADAGL, %
+ "." =:| MONG_ADAGL, %
+ ";" =:| MONG_ADAGL, %
+ ":" =:| MONG_ADAGL, %
+ "!" =:| MONG_ADAGL, %
+ "?" =:| MONG_ADAGL, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGL, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGL, %
+ MONG_OPAREN =:| MONG_ADAGL, %
+ MONG_CPAREN =:| MONG_ADAGL, %
+ MONG_LT =:| MONG_ADAGL, %
+ MONG_GT =:| MONG_ADAGL, %
+ MONG_LGU =:| MONG_ADAGL, %
+ MONG_RGU =:| MONG_ADAGL, %
+ MONG_ZERO =:| MONG_ADAGL, %
+ MONG_ONE =:| MONG_ADAGL, %
+ MONG_TWO =:| MONG_ADAGL, %
+ MONG_THREE =:| MONG_ADAGL, %
+ MONG_FOUR =:| MONG_ADAGL, %
+ MONG_FIVE =:| MONG_ADAGL, %
+ MONG_SIX =:| MONG_ADAGL, %
+ MONG_SEVEN =:| MONG_ADAGL, %
+ MONG_EIGHT =:| MONG_ADAGL, %
+ MONG_NINE =:| MONG_ADAGL; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGL: % "-l "
+ MONG_MVS kern 0.5gedeswidth#, % "l="
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_M: %
+ MONG_L =: MONG_LIGML, % "ml"
+ MONG_BNDRY =: MONG_ADAGM, %
+ MONG_MVS =:| MONG_ADAGM, %
+ "," =:| MONG_ADAGM, %
+ "." =:| MONG_ADAGM, %
+ ";" =:| MONG_ADAGM, %
+ ":" =:| MONG_ADAGM, %
+ "!" =:| MONG_ADAGM, %
+ "?" =:| MONG_ADAGM, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGM, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGM, %
+ MONG_OPAREN =:| MONG_ADAGM, %
+ MONG_CPAREN =:| MONG_ADAGM, %
+ MONG_LT =:| MONG_ADAGM, %
+ MONG_GT =:| MONG_ADAGM, %
+ MONG_LGU =:| MONG_ADAGM, %
+ MONG_RGU =:| MONG_ADAGM, %
+ MONG_ZERO =:| MONG_ADAGM, %
+ MONG_ONE =:| MONG_ADAGM, %
+ MONG_TWO =:| MONG_ADAGM, %
+ MONG_THREE =:| MONG_ADAGM, %
+ MONG_FOUR =:| MONG_ADAGM, %
+ MONG_FIVE =:| MONG_ADAGM, %
+ MONG_SIX =:| MONG_ADAGM, %
+ MONG_SEVEN =:| MONG_ADAGM, %
+ MONG_EIGHT =:| MONG_ADAGM, %
+ MONG_NINE =:| MONG_ADAGM; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGM: % MONG_M
+ MONG_MVS kern 0.5gedeswidth#, %
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_N: % "n"
+ MONG_B =:| MONG_SHUD, % "shud, no dusal"
+ MONG_C =:| MONG_SHUD, % "shud, no dusal"
+ MONG_CH =:| MONG_SHUD, % "shud, no dusal"
+ MONG_D =:| MONG_SHUD, % "shud, no dusal"
+ MONG_F =:| MONG_SHUD, % "shud, no dusal"
+ MONG_G =: MONG_DUNDNG, % "-ng-"
+ MONG_GH =:| MONG_SHUD, % "shud, no dusal"
+ MONG_H =:| MONG_SHUD, % "shud, no dusal"
+ MONG_J =:| MONG_SHUD, % "shud, no dusal"
+ MONG_K =:| MONG_SHUD, % "shud, no dusal"
+ MONG_KH =:| MONG_SHUD, % "shud, no dusal"
+ MONG_L =:| MONG_SHUD, % "shud, no dusal"
+ MONG_M =:| MONG_SHUD, % "shud, no dusal"
+ MONG_N =:| MONG_SHUD, % "shud, no dusal"
+ MONG_P =:| MONG_SHUD, % "shud, no dusal"
+ MONG_R =:| MONG_SHUD, % "shud, no dusal"
+ MONG_S =:| MONG_SHUD, % "shud, no dusal"
+ MONG_SH =:| MONG_SHUD, % "shud, no dusal"
+ MONG_T =:| MONG_SHUD, % "shud, no dusal"
+ MONG_V =:| MONG_SHUD, % "shud, no dusal"
+ MONG_X =:| MONG_SHUD, % "shud, no dusal"
+ MONG_Y =:| MONG_SHUD, % "shud, no dusal"
+ MONG_Z =:| MONG_SHUD, % "shud, no dusal"
+ MONG_ZH =:| MONG_SHUD, % "shud, no dusal"
+ MONG_FVS1 =: MONG_NVAR, % "n variant"
+ MONG_BNDRY =: MONG_ADAGN, % "n "
+ MONG_MVS =:| MONG_ADAGN, % "n "
+ "," =:| MONG_ADAGN, %
+ "." =:| MONG_ADAGN, %
+ ";" =:| MONG_ADAGN, %
+ ":" =:| MONG_ADAGN, %
+ "!" =:| MONG_ADAGN, %
+ "?" =:| MONG_ADAGN, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGN, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGN, %
+ MONG_OPAREN =:| MONG_ADAGN, %
+ MONG_CPAREN =:| MONG_ADAGN, %
+ MONG_LT =:| MONG_ADAGN, %
+ MONG_GT =:| MONG_ADAGN, %
+ MONG_LGU =:| MONG_ADAGN, %
+ MONG_RGU =:| MONG_ADAGN, %
+ MONG_ZERO =:| MONG_ADAGN, %
+ MONG_ONE =:| MONG_ADAGN, %
+ MONG_TWO =:| MONG_ADAGN, %
+ MONG_THREE =:| MONG_ADAGN, %
+ MONG_FOUR =:| MONG_ADAGN, %
+ MONG_FIVE =:| MONG_ADAGN, %
+ MONG_SIX =:| MONG_ADAGN, %
+ MONG_SEVEN =:| MONG_ADAGN, %
+ MONG_EIGHT =:| MONG_ADAGN, %
+ MONG_NINE =:| MONG_ADAGN; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_EXENN: % dusaltai titem
+ MONG_FVS1 =: MONG_TITEM; % titem, no dusal
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGN: % dusaltai titem
+ MONG_MVS |=: MONG_NCEG, %
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_NVAR: % "n" reversed
+ MONG_B =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_C =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_CH =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_D =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_F =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_GH =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_H =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_J =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_K =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_KH =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_L =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_M =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_N =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_P =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_R =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_S =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_SH =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_T =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_V =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_X =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_Y =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_Z =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_ZH =:|> MONG_CEGTEISHUD,% "shud w. dusal"
+ MONG_MVS =:| MONG_ADAGNVAR; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGNVAR: % dusaltai titem
+ MONG_MVS kern 0.5gedeswidth#; % " -n'"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ligtable "o": see ligtable "u"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_P: % MONG_P
+ MONG_A =: MONG_LIGPA, % "pa"
+ MONG_I =: MONG_LIGPI, % "pi"
+ MONG_U =: MONG_LIGPU, % "pu"
+ MONG_L =: MONG_LIGPL, % "pl"
+ MONG_N =: MONG_LIGPN, % "pn"
+ MONG_BNDRY |=: MONG_ORXIC, %
+% "=" |=:| MONG_ORXIC, %
+ "," |=:| MONG_ORXIC, %
+ "." |=:| MONG_ORXIC, %
+ ";" |=:| MONG_ORXIC, %
+ ":" |=:| MONG_ORXIC, %
+ "!" |=:| MONG_ORXIC, %
+ "?" |=:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM|=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST|=:| MONG_ORXIC, %
+ MONG_OPAREN |=:| MONG_ORXIC, %
+ MONG_CPAREN |=:| MONG_ORXIC, %
+ MONG_LT |=:| MONG_ORXIC, %
+ MONG_GT |=:| MONG_ORXIC, %
+ MONG_LGU |=:| MONG_ORXIC, %
+ MONG_RGU |=:| MONG_ORXIC, %
+ MONG_ZERO |=:| MONG_ORXIC, %
+ MONG_ONE |=:| MONG_ORXIC, %
+ MONG_TWO |=:| MONG_ORXIC, %
+ MONG_THREE |=:| MONG_ORXIC, %
+ MONG_FOUR |=:| MONG_ORXIC, %
+ MONG_FIVE |=:| MONG_ORXIC, %
+ MONG_SIX |=:| MONG_ORXIC, %
+ MONG_SEVEN |=:| MONG_ORXIC, %
+ MONG_EIGHT |=:| MONG_ORXIC, %
+ MONG_NINE |=:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_R: % "r"
+ MONG_BNDRY =: MONG_ADAGR, %
+ MONG_MVS =:| MONG_ADAGR, %
+ "," =:| MONG_ADAGR, %
+ "." =:| MONG_ADAGR, %
+ ";" =:| MONG_ADAGR, %
+ ":" =:| MONG_ADAGR, %
+ "!" =:| MONG_ADAGR, %
+ "?" =:| MONG_ADAGR, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGR, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGR, %
+ MONG_OPAREN =:| MONG_ADAGR, %
+ MONG_CPAREN =:| MONG_ADAGR, %
+ MONG_LT =:| MONG_ADAGR, %
+ MONG_GT =:| MONG_ADAGR, %
+ MONG_LGU =:| MONG_ADAGR, %
+ MONG_RGU =:| MONG_ADAGR, %
+ MONG_ZERO =:| MONG_ADAGR, %
+ MONG_ONE =:| MONG_ADAGR, %
+ MONG_TWO =:| MONG_ADAGR, %
+ MONG_THREE =:| MONG_ADAGR, %
+ MONG_FOUR =:| MONG_ADAGR, %
+ MONG_FIVE =:| MONG_ADAGR, %
+ MONG_SIX =:| MONG_ADAGR, %
+ MONG_SEVEN =:| MONG_ADAGR, %
+ MONG_EIGHT =:| MONG_ADAGR, %
+ MONG_NINE =:| MONG_ADAGR; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGR: % "-r "
+ MONG_MVS kern 0.5gedeswidth#, % "x="
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_S: % "s"
+ MONG_H =: MONG_SH, % "sh"
+ MONG_L |=: MONG_HIGHLEWER, %
+ MONG_BNDRY =: MONG_ADAGS, %
+ "," =:| MONG_ADAGS, %
+ "." =:| MONG_ADAGS, %
+ ";" =:| MONG_ADAGS, %
+ ":" =:| MONG_ADAGS, %
+ "!" =:| MONG_ADAGS, %
+ "?" =:| MONG_ADAGS, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGS, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGS, %
+ MONG_OPAREN =:| MONG_ADAGS, %
+ MONG_CPAREN =:| MONG_ADAGS, %
+ MONG_LT =:| MONG_ADAGS, %
+ MONG_GT =:| MONG_ADAGS, %
+ MONG_LGU =:| MONG_ADAGS, %
+ MONG_RGU =:| MONG_ADAGS, %
+ MONG_ZERO =:| MONG_ADAGS, %
+ MONG_ONE =:| MONG_ADAGS, %
+ MONG_TWO =:| MONG_ADAGS, %
+ MONG_THREE =:| MONG_ADAGS, %
+ MONG_FOUR =:| MONG_ADAGS, %
+ MONG_FIVE =:| MONG_ADAGS, %
+ MONG_SIX =:| MONG_ADAGS, %
+ MONG_SEVEN =:| MONG_ADAGS, %
+ MONG_EIGHT =:| MONG_ADAGS, %
+ MONG_NINE =:| MONG_ADAGS; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_EXENS: % MONG_S
+ MONG_H =: MONG_EXENSH; % "sh"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGS: % MONG_S
+% "=" |=: MONG_MVS, %
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_SH: % "sh"
+ MONG_L |=: MONG_HIGHLEWER, %
+ MONG_BNDRY =: MONG_ADAGSH, %
+ "," =:| MONG_ADAGSH, %
+ "." =:| MONG_ADAGSH, %
+ ";" =:| MONG_ADAGSH, %
+ ":" =:| MONG_ADAGSH, %
+ "!" =:| MONG_ADAGSH, %
+ "?" =:| MONG_ADAGSH, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGSH, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGSH, %
+ MONG_OPAREN =:| MONG_ADAGSH, %
+ MONG_CPAREN =:| MONG_ADAGSH, %
+ MONG_LT =:| MONG_ADAGSH, %
+ MONG_GT =:| MONG_ADAGSH, %
+ MONG_LGU =:| MONG_ADAGSH, %
+ MONG_RGU =:| MONG_ADAGSH, %
+ MONG_ZERO =:| MONG_ADAGSH, %
+ MONG_ONE =:| MONG_ADAGSH, %
+ MONG_TWO =:| MONG_ADAGSH, %
+ MONG_THREE =:| MONG_ADAGSH, %
+ MONG_FOUR =:| MONG_ADAGSH, %
+ MONG_FIVE =:| MONG_ADAGSH, %
+ MONG_SIX =:| MONG_ADAGSH, %
+ MONG_SEVEN =:| MONG_ADAGSH, %
+ MONG_EIGHT =:| MONG_ADAGSH, %
+ MONG_NINE =:| MONG_ADAGSH; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGSH: % "sh"
+% "=" |=: MONG_MVS, %
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_T: % MONG_T
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ MONG_FVS1 =: MONG_D, % special
+ MONG_MVS |=:| MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_V: % MONG_V
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ MONG_MVS |=:| MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_X: % MONG_X
+ MONG_BNDRY =: MONG_ADAGX, %
+ MONG_MVS =:| MONG_ADAGX, %
+ "," =:| MONG_ADAGX, %
+ "." =:| MONG_ADAGX, %
+ ";" =:| MONG_ADAGX, %
+ ":" =:| MONG_ADAGX, %
+ "!" =:| MONG_ADAGX, %
+ "?" =:| MONG_ADAGX, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGX, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGX, %
+ MONG_OPAREN =:| MONG_ADAGX, %
+ MONG_CPAREN =:| MONG_ADAGX, %
+ MONG_LT =:| MONG_ADAGX, %
+ MONG_GT =:| MONG_ADAGX, %
+ MONG_LGU =:| MONG_ADAGX, %
+ MONG_RGU =:| MONG_ADAGX, %
+ MONG_ZERO =:| MONG_ADAGX, %
+ MONG_ONE =:| MONG_ADAGX, %
+ MONG_TWO =:| MONG_ADAGX, %
+ MONG_THREE =:| MONG_ADAGX, %
+ MONG_FOUR =:| MONG_ADAGX, %
+ MONG_FIVE =:| MONG_ADAGX, %
+ MONG_SIX =:| MONG_ADAGX, %
+ MONG_SEVEN =:| MONG_ADAGX, %
+ MONG_EIGHT =:| MONG_ADAGX, %
+ MONG_NINE =:| MONG_ADAGX; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGX: % "-x "
+ MONG_MVS kern 0.5gedeswidth#, % "x="
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_Y: % "y"
+% MONG_SHILBE =:| MONG_SHILBE, % "yi"
+%
+% This one is temporarily disabled. Otherwise, I couldn't
+% write things like 'yisuduger' properly.
+%
+ MONG_MVS =:| MONG_ADAGI; % "y="
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_Z: % "z"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ MONG_MVS |=:| MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ZH: % "Z"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ MONG_MVS |=:| MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_DUNDNG: % "ng"
+ MONG_BNDRY =: MONG_ADAGNG, %
+ "," =:| MONG_ADAGNG, %
+ "." =:| MONG_ADAGNG, %
+ ";" =:| MONG_ADAGNG, %
+ ":" =:| MONG_ADAGNG, %
+ "!" =:| MONG_ADAGNG, %
+ "?" =:| MONG_ADAGNG, %
+ MONG_QUESTEXCLAM=:| MONG_ADAGNG, %
+ MONG_EXCLAMQUEST=:| MONG_ADAGNG, %
+ MONG_OPAREN =:| MONG_ADAGNG, %
+ MONG_CPAREN =:| MONG_ADAGNG, %
+ MONG_LT =:| MONG_ADAGNG, %
+ MONG_GT =:| MONG_ADAGNG, %
+ MONG_LGU =:| MONG_ADAGNG, %
+ MONG_RGU =:| MONG_ADAGNG, %
+ MONG_ZERO =:| MONG_ADAGNG, %
+ MONG_ONE =:| MONG_ADAGNG, %
+ MONG_TWO =:| MONG_ADAGNG, %
+ MONG_THREE =:| MONG_ADAGNG, %
+ MONG_FOUR =:| MONG_ADAGNG, %
+ MONG_FIVE =:| MONG_ADAGNG, %
+ MONG_SIX =:| MONG_ADAGNG, %
+ MONG_SEVEN =:| MONG_ADAGNG, %
+ MONG_EIGHT =:| MONG_ADAGNG, %
+ MONG_NINE =:| MONG_ADAGNG; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_ADAGNG: % "ng"
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGBA: % "ba"
+ MONG_L |=: MONG_HIGHLEWER, % "bal"
+ MONG_BNDRY |=: MONG_ORXIC, %
+ "," |=:| MONG_ORXIC, %
+ "." |=:| MONG_ORXIC, %
+ ";" |=:| MONG_ORXIC, %
+ ":" |=:| MONG_ORXIC, %
+ "!" |=:| MONG_ORXIC, %
+ "?" |=:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM|=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST|=:| MONG_ORXIC, %
+ MONG_OPAREN |=:| MONG_ORXIC, %
+ MONG_CPAREN |=:| MONG_ORXIC, %
+ MONG_LT |=:| MONG_ORXIC, %
+ MONG_GT |=:| MONG_ORXIC, %
+ MONG_LGU |=:| MONG_ORXIC, %
+ MONG_RGU |=:| MONG_ORXIC, %
+ MONG_ZERO |=:| MONG_ORXIC, %
+ MONG_ONE |=:| MONG_ORXIC, %
+ MONG_TWO |=:| MONG_ORXIC, %
+ MONG_THREE |=:| MONG_ORXIC, %
+ MONG_FOUR |=:| MONG_ORXIC, %
+ MONG_FIVE |=:| MONG_ORXIC, %
+ MONG_SIX |=:| MONG_ORXIC, %
+ MONG_SEVEN |=:| MONG_ORXIC, %
+ MONG_EIGHT |=:| MONG_ORXIC, %
+ MONG_NINE |=:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGPA: % "pa"
+ MONG_L |=: MONG_HIGHLEWER, % "pal"
+ MONG_BNDRY |=: MONG_ORXIC, %
+ "," |=:| MONG_ORXIC, %
+ "." |=:| MONG_ORXIC, %
+ ";" |=:| MONG_ORXIC, %
+ ":" |=:| MONG_ORXIC, %
+ "!" |=:| MONG_ORXIC, %
+ "?" |=:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM|=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST|=:| MONG_ORXIC, %
+ MONG_OPAREN |=:| MONG_ORXIC, %
+ MONG_CPAREN |=:| MONG_ORXIC, %
+ MONG_LT |=:| MONG_ORXIC, %
+ MONG_GT |=:| MONG_ORXIC, %
+ MONG_LGU |=:| MONG_ORXIC, %
+ MONG_RGU |=:| MONG_ORXIC, %
+ MONG_ZERO |=:| MONG_ORXIC, %
+ MONG_ONE |=:| MONG_ORXIC, %
+ MONG_TWO |=:| MONG_ORXIC, %
+ MONG_THREE |=:| MONG_ORXIC, %
+ MONG_FOUR |=:| MONG_ORXIC, %
+ MONG_FIVE |=:| MONG_ORXIC, %
+ MONG_SIX |=:| MONG_ORXIC, %
+ MONG_SEVEN |=:| MONG_ORXIC, %
+ MONG_EIGHT |=:| MONG_ORXIC, %
+ MONG_NINE |=:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGFA: % "fa"
+ MONG_L |=: MONG_HIGHLEWER, % "fal"
+ MONG_BNDRY |=: MONG_ORXIC, %
+ "," |=:| MONG_ORXIC, %
+ "." |=:| MONG_ORXIC, %
+ ";" |=:| MONG_ORXIC, %
+ ":" |=:| MONG_ORXIC, %
+ "!" |=:| MONG_ORXIC, %
+ "?" |=:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM|=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST|=:| MONG_ORXIC, %
+ MONG_OPAREN |=:| MONG_ORXIC, %
+ MONG_CPAREN |=:| MONG_ORXIC, %
+ MONG_LT |=:| MONG_ORXIC, %
+ MONG_GT |=:| MONG_ORXIC, %
+ MONG_LGU |=:| MONG_ORXIC, %
+ MONG_RGU |=:| MONG_ORXIC, %
+ MONG_ZERO |=:| MONG_ORXIC, %
+ MONG_ONE |=:| MONG_ORXIC, %
+ MONG_TWO |=:| MONG_ORXIC, %
+ MONG_THREE |=:| MONG_ORXIC, %
+ MONG_FOUR |=:| MONG_ORXIC, %
+ MONG_FIVE |=:| MONG_ORXIC, %
+ MONG_SIX |=:| MONG_ORXIC, %
+ MONG_SEVEN |=:| MONG_ORXIC, %
+ MONG_EIGHT |=:| MONG_ORXIC, %
+ MONG_NINE |=:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGKA: % "ka"
+ MONG_L |=: MONG_HIGHLEWER, % "kal"
+ MONG_BNDRY |=: MONG_ORXIC, %
+ "," |=:| MONG_ORXIC, %
+ "." |=:| MONG_ORXIC, %
+ ";" |=:| MONG_ORXIC, %
+ ":" |=:| MONG_ORXIC, %
+ "!" |=:| MONG_ORXIC, %
+ "?" |=:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM|=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST|=:| MONG_ORXIC, %
+ MONG_OPAREN |=:| MONG_ORXIC, %
+ MONG_CPAREN |=:| MONG_ORXIC, %
+ MONG_LT |=:| MONG_ORXIC, %
+ MONG_GT |=:| MONG_ORXIC, %
+ MONG_LGU |=:| MONG_ORXIC, %
+ MONG_RGU |=:| MONG_ORXIC, %
+ MONG_ZERO |=:| MONG_ORXIC, %
+ MONG_ONE |=:| MONG_ORXIC, %
+ MONG_TWO |=:| MONG_ORXIC, %
+ MONG_THREE |=:| MONG_ORXIC, %
+ MONG_FOUR |=:| MONG_ORXIC, %
+ MONG_FIVE |=:| MONG_ORXIC, %
+ MONG_SIX |=:| MONG_ORXIC, %
+ MONG_SEVEN |=:| MONG_ORXIC, %
+ MONG_EIGHT |=:| MONG_ORXIC, %
+ MONG_NINE |=:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGKHA: % "kha"
+ MONG_L |=: MONG_HIGHLEWER, % "khal"
+ MONG_BNDRY |=: MONG_ORXIC, %
+ "," |=:| MONG_ORXIC, %
+ "." |=:| MONG_ORXIC, %
+ ";" |=:| MONG_ORXIC, %
+ ":" |=:| MONG_ORXIC, %
+ "!" |=:| MONG_ORXIC, %
+ "?" |=:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM|=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST|=:| MONG_ORXIC, %
+ MONG_OPAREN |=:| MONG_ORXIC, %
+ MONG_CPAREN |=:| MONG_ORXIC, %
+ MONG_LT |=:| MONG_ORXIC, %
+ MONG_GT |=:| MONG_ORXIC, %
+ MONG_LGU |=:| MONG_ORXIC, %
+ MONG_RGU |=:| MONG_ORXIC, %
+ MONG_ZERO |=:| MONG_ORXIC, %
+ MONG_ONE |=:| MONG_ORXIC, %
+ MONG_TWO |=:| MONG_ORXIC, %
+ MONG_THREE |=:| MONG_ORXIC, %
+ MONG_FOUR |=:| MONG_ORXIC, %
+ MONG_FIVE |=:| MONG_ORXIC, %
+ MONG_SIX |=:| MONG_ORXIC, %
+ MONG_SEVEN |=:| MONG_ORXIC, %
+ MONG_EIGHT |=:| MONG_ORXIC, %
+ MONG_NINE |=:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGGHA: % "gha"
+ MONG_L |=: MONG_HIGHLEWER, % "ghal"
+ MONG_BNDRY |=: MONG_ORXIC, %
+ "," |=:| MONG_ORXIC, %
+ "." |=:| MONG_ORXIC, %
+ ";" |=:| MONG_ORXIC, %
+ ":" |=:| MONG_ORXIC, %
+ "!" |=:| MONG_ORXIC, %
+ "?" |=:| MONG_ORXIC, %
+ MONG_QUESTEXCLAM|=:| MONG_ORXIC, %
+ MONG_EXCLAMQUEST|=:| MONG_ORXIC, %
+ MONG_OPAREN |=:| MONG_ORXIC, %
+ MONG_CPAREN |=:| MONG_ORXIC, %
+ MONG_LT |=:| MONG_ORXIC, %
+ MONG_GT |=:| MONG_ORXIC, %
+ MONG_LGU |=:| MONG_ORXIC, %
+ MONG_RGU |=:| MONG_ORXIC, %
+ MONG_ZERO |=:| MONG_ORXIC, %
+ MONG_ONE |=:| MONG_ORXIC, %
+ MONG_TWO |=:| MONG_ORXIC, %
+ MONG_THREE |=:| MONG_ORXIC, %
+ MONG_FOUR |=:| MONG_ORXIC, %
+ MONG_FIVE |=:| MONG_ORXIC, %
+ MONG_SIX |=:| MONG_ORXIC, %
+ MONG_SEVEN |=:| MONG_ORXIC, %
+ MONG_EIGHT |=:| MONG_ORXIC, %
+ MONG_NINE |=:| MONG_ORXIC; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGBI: % "bi"
+ MONG_L |=: MONG_HIGHLEWER, % "bil"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGFI: % "fi"
+ MONG_L |=: MONG_HIGHLEWER, % "fil"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGPI: % "pi"
+ MONG_L |=: MONG_HIGHLEWER, % "pil"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGKI: % "ki"
+ MONG_L |=: MONG_HIGHLEWER, % "kil"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGKHI: % "khi"
+ MONG_L |=: MONG_HIGHLEWER, % "khil"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGGHI: % "ghi"
+ MONG_L |=: MONG_HIGHLEWER, % "ghil"
+ MONG_BNDRY |=: MONG_BIODOISUUL,%
+ "," |=:| MONG_BIODOISUUL,%
+ "." |=:| MONG_BIODOISUUL,%
+ ";" |=:| MONG_BIODOISUUL,%
+ ":" |=:| MONG_BIODOISUUL,%
+ "!" |=:| MONG_BIODOISUUL,%
+ "?" |=:| MONG_BIODOISUUL,%
+ MONG_QUESTEXCLAM|=:| MONG_BIODOISUUL,%
+ MONG_EXCLAMQUEST|=:| MONG_BIODOISUUL,%
+ MONG_OPAREN |=:| MONG_BIODOISUUL,%
+ MONG_CPAREN |=:| MONG_BIODOISUUL,%
+ MONG_LT |=:| MONG_BIODOISUUL,%
+ MONG_GT |=:| MONG_BIODOISUUL,%
+ MONG_LGU |=:| MONG_BIODOISUUL,%
+ MONG_RGU |=:| MONG_BIODOISUUL,%
+ MONG_ZERO |=:| MONG_BIODOISUUL,%
+ MONG_ONE |=:| MONG_BIODOISUUL,%
+ MONG_TWO |=:| MONG_BIODOISUUL,%
+ MONG_THREE |=:| MONG_BIODOISUUL,%
+ MONG_FOUR |=:| MONG_BIODOISUUL,%
+ MONG_FIVE |=:| MONG_BIODOISUUL,%
+ MONG_SIX |=:| MONG_BIODOISUUL,%
+ MONG_SEVEN |=:| MONG_BIODOISUUL,%
+ MONG_EIGHT |=:| MONG_BIODOISUUL,%
+ MONG_NINE |=:| MONG_BIODOISUUL;%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGBU: % "bu"
+ MONG_L |=: MONG_HIGHLEWER, % "bul"
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGPU: % "pu"
+ MONG_L |=: MONG_HIGHLEWER, % "pul"
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGFU: % "fu"
+ MONG_L |=: MONG_HIGHLEWER, % "ful"
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGKU: % "ku"
+ MONG_L |=: MONG_HIGHLEWER, % "kul"
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGKHU: % "khu"
+ MONG_L |=: MONG_HIGHLEWER, % "khul"
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LIGGHU: % "ghu"
+ MONG_L |=: MONG_HIGHLEWER, % "ghul"
+ "," kern gedeswidth#, %
+ "." kern gedeswidth#, %
+ ";" kern gedeswidth#, %
+ ":" kern gedeswidth#, %
+ "!" kern gedeswidth#, %
+ "?" kern gedeswidth#, %
+ MONG_QUESTEXCLAM kern gedeswidth#, %
+ MONG_EXCLAMQUEST kern gedeswidth#, %
+ MONG_OPAREN kern gedeswidth#, %
+% MONG_CPAREN kern gedeswidth#, %
+ MONG_LT kern gedeswidth#, %
+% MONG_GT kern gedeswidth#, %
+ MONG_LGU kern gedeswidth#, %
+ MONG_RGU kern 0.5gedeswidth#; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% The montrlig ligtable file ends here.
+%
+% Finis. Konec. _Suul. End. Ende. Fin. Owari. Zhong.
+% Do not read beyond this line as no hidden secret can be found.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% vim: ts=8
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/mxcodes.mf b/Master/texmf-dist/fonts/source/public/montex/mxcodes.mf
new file mode 100644
index 00000000000..e569f034685
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mxcodes.mf
@@ -0,0 +1,237 @@
+% mbpunc:
+MONG_BNDRY :=255;
+MONG_MSP := 0;
+MONG_FVS1 := 1;
+MONG_FVS2 := 2;
+MONG_EXCLAMATION := 3;
+MONG_QUESTEXCLAM := 4;
+MONG_EXCLAMQUEST := 5;
+MONG_OPAREN := 6;
+MONG_CPAREN := 7;
+MONG_ENV := 8;
+MONG_MVS := 9;
+MONG_ELLIPSIS := 10;
+MONG_COLON := 11;
+MONG_DORWOLJIN := 12;
+MONG_OM := 13;
+MONG_LT := 14;
+MONG_GT := 15;
+MONG_QUESTION := 16;
+MONG_NIRUGU := 17;
+MONG_LGU := 18;
+MONG_RGU := 19;
+MONG_TASLAL := 20;
+MONG_FULLSTOP := 21;
+% mbnums:
+MONG_ZERO := 22;
+MONG_ONE := 23;
+MONG_TWO := 24;
+MONG_THREE := 25;
+MONG_FOUR := 26;
+MONG_FIVE := 27;
+MONG_SIX := 28;
+MONG_SEVEN := 29;
+MONG_EIGHT := 30;
+MONG_NINE := 31;
+% mbglyphs:
+MONG_TITEMSTROKE := 32;
+MONG_TITEM := 33;
+MONG_SHUD := 34;
+MONG_A := MONG_SHUD;
+MONG_SHILBE := 35;
+MONG_I := MONG_SHILBE;
+MONG_GEDES := 36;
+MONG_O := MONG_GEDES;
+MONG_U := MONG_GEDES;
+MONG_ADAGU := 37;
+MONG_CEGTEISHUD := 38;
+MONG_N := MONG_CEGTEISHUD;
+MONG_EXENN := 39;
+MONG_LEWER := 40;
+MONG_L := MONG_LEWER;
+MONG_EXENL := 41;
+MONG_SUULIINLEWER := 42;
+MONG_TERTIARYLEWER := 43;
+MONG_HIGHLEWER := 44;
+MONG_MEWER := 45;
+MONG_M := MONG_MEWER;
+MONG_EXENM := 46;
+MONG_SUULIINMEWER := 47;
+MONG_LIGLL := 48;
+MONG_LIGML := 49;
+MONG_XEWTEEQIX := 50;
+MONG_DUNDG := 51;
+MONG_DUNDX := 52;
+MONG_ADAGX := 53;
+MONG_DUNDNG := 54;
+MONG_ADAGNG := 55;
+MONG_LIGKA := 56;
+MONG_LIGKI := 57;
+MONG_LIGKU := 58;
+MONG_ADAGI := 59;
+MONG_NUMTDELBENQIX := 60;
+MONG_BAGANUM := 61;
+MONG_ADAGK := 62;
+MONG_NUMTAIGEDES := 63;
+MONG_ADAGB := 64;
+MONG_BURUUXARSANGEDES := 65;
+MONG_GEDESTEISHILBE := 66;
+MONG_DUNDD := 67;
+MONG_ADAGD := 68;
+MONG_DVAR := 69;
+MONG_ERWEELJINSHILBE := 70;
+MONG_BOSOOSHILBE := 71;
+MONG_EXENS := 72;
+MONG_ZAWJ := 73;
+MONG_S := MONG_ZAWJ;
+MONG_ADAGS := 74;
+MONG_SEREEEWER := 75;
+MONG_ETGERSHILBE := 76;
+MONG_MATGARSHILBE := 77;
+MONG_SUUL := 78;
+MONG_ORXIC := 79;
+MONG_BAGODOISUUL := 80;
+MONG_BIODOISUUL := 81;
+MONG_NCEG := 82;
+MONG_GCEG := 83;
+MONG_LIGBA := 84;
+MONG_LIGBI := 85;
+MONG_LIGBU := 86;
+MONG_LIGBN := 87;
+MONG_LIGBL := 88;
+MONG_LIGPA := 89;
+MONG_LIGPI := 90;
+MONG_LIGPU := 91;
+% moglyphs:
+MONG_AVAR := 92;
+MONG_AE := 93;
+MONG_IVAR := 94;
+MONG_NVAR := 95;
+MONG_ADAGN := 96;
+MONG_ADAGNVAR := 97;
+MONG_SECONDARYSHUD := 98;
+MONG_SECONDARYGEDES := 99;
+MONG_SECONDARYCEGTEISHUD :=100;
+MONG_NUM :=101;
+MONG_SECONDARYNUM :=102;
+MONG_DAWXARCEGTXEWTEE :=103;
+MONG_ADAGG :=104;
+MONG_SECERWEELJIN :=105;
+MONG_EXENSH :=106;
+MONG_DAWXARCEGTZAWJ :=107;
+MONG_ADAGSH :=108;
+MONG_SECNUMTGEDES :=109;
+MONG_SECNUMTDELBENQ :=110;
+MONG_SERTENQIXTNUM :=111;
+MONG_SECSERTENQIXT :=112;
+MONG_QAGT :=113;
+MONG_SECONDARYQAGT :=114;
+MONG_ZADGAIZARDIGT :=115;
+MONG_BITUUZARDIGT :=116;
+MONG_BITUUSHILBE :=117;
+MONG_MALGAITAITITEM :=118;
+MONG_EWERTQAGT :=119;
+MONG_SECONDARYEWERTQAGT :=120;
+MONG_LIGPN :=121;
+MONG_LIGPL :=122;
+MONG_LIGFA :=123;
+MONG_LIGFI :=124;
+MONG_LIGFU :=125;
+MONG_LIGFN :=126;
+MONG_LIGFL :=127;
+MONG_LIGKN :=128;
+MONG_LIGKL :=129;
+MONG_LIGKHA :=130;
+MONG_LIGKHI :=131;
+MONG_LIGKHU :=132;
+MONG_LIGKHN :=133;
+MONG_LIGKHL :=134;
+MONG_LIGGHA :=135;
+MONG_LIGGHI :=136;
+MONG_LIGGHU :=137;
+MONG_LIGGHN :=138;
+MONG_LIGGHL :=139;
+% maglyphs:
+MANJU_TASLAL :=140;
+MANJU_FULLSTOP :=141;
+MANJU_E :=142;
+MANJU_DUBENE :=143;
+MANJU_U :=144;
+MANJU_DUBENU :=145;
+MANJU_UU :=146;
+MANJU_DUBENUU :=147;
+MANJU_DERIBUNGA :=148;
+MANJU_DERIBUNHA :=149;
+MANJU_G :=150;
+MANJU_H :=151;
+MANJU_GE :=152;
+MANJU_HE :=153;
+MANJU_GI :=154;
+MANJU_HI :=155;
+MANJU_GU :=156;
+MANJU_HU :=157;
+MANJU_KH :=158;
+MANJU_KHA :=159;
+MANJU_KHO :=160;
+MANJU_GH :=161;
+MANJU_GHA :=162;
+MANJU_GHO :=163;
+MANJU_HH :=164;
+MANJU_HHA :=165;
+MANJU_HHO :=166;
+MANJU_DUBENK :=167;
+MANJU_BE :=168;
+MANJU_BU :=169;
+MANJU_BUU :=170;
+MANJU_D :=171;
+MANJU_T :=172;
+MANJU_DERIBUND :=173;
+MANJU_DERIBUNT :=174;
+MANJU_DE :=175;
+MANJU_TE :=176;
+MANJU_DERIBUNDE :=177;
+MANJU_DERIBUNTE :=178;
+MANJU_TIBT :=179;
+MANJU_SH :=180;
+MANJU_DERIBUNSH :=181;
+MANJU_DUBENSH :=182;
+MANJU_DZ :=183;
+MANJU_DERIBUNDZ :=184;
+MANJU_DZI :=185;
+MANJU_DERIBUNDZI :=186;
+MANJU_TS :=187;
+MANJU_DERIBUNTS :=188;
+MANJU_TSH :=189;
+MANJU_DERIBUNTSH :=190;
+MANJU_TSHY :=191;
+MANJU_DERIBUNTSHY :=192;
+MANJU_Z :=193;
+MANJU_DERIBUNZ :=194;
+MANJU_ZH :=195;
+MANJU_DERIBUNZH :=196;
+MANJU_NGA :=197;
+MANJU_DERIBUNNGA :=198;
+MANJU_JY :=199;
+MANJU_DERIBUNJY :=200;
+MANJU_CY :=201;
+MANJU_SY :=202;
+MANJU_DERIBUNSY :=203;
+MANJU_ZR :=204;
+MANJU_DERIBUNZR :=205;
+MANJU_LH :=206;
+MANJU_DERIBUNLH :=207;
+MANJU_HIGHLH :=208;
+MANJU_HIGHDERIBUNLH :=209;
+MANJU_F :=210;
+MANJU_DERIBUNF :=211;
+MANJU_P :=212;
+MANJU_PA :=213;
+MANJU_PE :=214;
+MANJU_PI :=215;
+MANJU_PO :=216;
+MANJU_PU :=217;
+MANJU_TIBPE :=218;
+MANJU_TIBPU :=219;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% vim: ts=32
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/fonts/source/public/montex/mxglyphs.mf b/Master/texmf-dist/fonts/source/public/montex/mxglyphs.mf
new file mode 100644
index 00000000000..0eefa77890d
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mxglyphs.mf
@@ -0,0 +1,2 @@
+input moglyphs;
+input maglyphs;
diff --git a/Master/texmf-dist/fonts/source/public/montex/mxntrlig.mf b/Master/texmf-dist/fonts/source/public/montex/mxntrlig.mf
new file mode 100644
index 00000000000..43b0bfbc40a
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/montex/mxntrlig.mf
@@ -0,0 +1,131 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% File: mxntrlig.mf
+% Author: Oliver Corff and Dorjpalam Dorj
+% Date: July 1st, 2001
+% Version: 0.8
+% Copyright: Ulaanbaatar, Beijing, Berlin
+%
+% Description: Mongolian Glyph Container, Unicode-Ready (LMU)
+% Mongol Bicig Ligature Definition
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Punctuation
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable "!": "?" =: MONG_EXCLAMQUEST;%
+ligtable "?": "!" =: MONG_QUESTEXCLAM;%
+ligtable ",": "," =: MONG_FULLSTOP; %
+ligtable MONG_GT: MONG_GT =: MONG_RGU; %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Since we are still building the ligatures for the universal
+% glyph container, we have to wait a bit. Removing \endinput
+% reveals all missing code definitions, so we better keep it.
+%
+\endinput
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Initial cases
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_OM:
+ MONG_A |=:| MONG_TITEM, % "a"
+ MONG_AE |=:| MONG_TITEM, % "a"
+% MONG_E =: MONG_TITEM, % "e"
+ MONG_I |=:| MONG_TITEM, % "i"
+ MONG_U |=:| MONG_TITEM, % "u"
+ MONG_N |=: MONG_EXENN, % "n"
+ MONG_M |=: MONG_EXENM, % " m-"
+ MONG_EXENM kern 0.25gedeswidth#,%
+ MONG_TITEM kern 0.25gedeswidth#,%
+ MONG_L |=: MONG_EXENL, % " l-"
+ MONG_H |=:| MONG_TITEM, % " e-"
+ MONG_S |=: MONG_EXENS, % " s-"
+ MONG_SH |=: MONG_EXENSH, % "sh"
+ MONG_D |=: MONG_T, % " d-"
+ MONG_X |=: MONG_EXENX, % MONG_X
+ MONG_G |=: MONG_EXENG, % MONG_X
+ MONG_Z |=: MONG_SHILBE; % "z"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable ||:
+ MONG_A =:| MONG_TITEM, % "a"
+ MONG_AE =: MONG_TITEM, % "\"a"
+% MONG_E =:| MONG_TITEM, % " e-"
+ MONG_I =:| MONG_TITEM, % " i-"
+ MONG_U =:| MONG_TITEM, % " u-"
+ MONG_N =: MONG_EXENN, % " n-"
+ MONG_M =: MONG_EXENM, % " m-"
+ MONG_L =: MONG_EXENL, % " l-"
+ MONG_H =:| MONG_TITEM, % " e-"
+ MONG_S =: MONG_EXENS, % " s-"
+ MONG_SH =: MONG_EXENSH, % "sh"
+ MONG_D |=: MONG_T, % " d-"
+ MONG_X =: MONG_EXENX, % " x-"
+ MONG_G =: MONG_EXENG, % " G-"
+ MONG_Z =: MONG_SHILBE; % "z"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_OPAREN:
+ MONG_A |=:| MONG_TITEM, % "a"
+ MONG_AE |=:| MONG_TITEM, % "a"
+% MONG_E =: MONG_TITEM, % "e"
+ MONG_I |=:| MONG_TITEM, % "i"
+ MONG_U |=:| MONG_TITEM, % "u"
+ MONG_N |=: MONG_EXENN, % "n"
+ MONG_M |=: MONG_EXENM, % " m-"
+ MONG_L |=: MONG_EXENL, % " l-"
+ MONG_H |=:| MONG_TITEM, % " e-"
+ MONG_S |=: MONG_EXENS, % " s-"
+ MONG_SH |=: MONG_EXENSH, % "sh"
+ MONG_D |=: MONG_T, % " d-"
+ MONG_X |=: MONG_EXENX, % MONG_X
+ MONG_G |=: MONG_EXENG, % MONG_X
+ MONG_Z |=: MONG_SHILBE; % "z"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LT: % "<"
+ MONG_LT =: MONG_LGU, % "<<"
+ MONG_A |=:| MONG_TITEM, % "a"
+ MONG_AE |=:| MONG_TITEM, % "a"
+% MONG_E |=:| MONG_TITEM, % " e-"
+ MONG_I |=:| MONG_TITEM, % "i"
+ MONG_U |=:| MONG_TITEM, % "u"
+ MONG_N |=: MONG_EXENN, % "n"
+ MONG_M |=: MONG_EXENM, % MONG_M
+ MONG_L |=: MONG_EXENL, % MONG_M
+ MONG_H |=:| MONG_TITEM, % MONG_H
+ MONG_S |=: MONG_EXENS, % MONG_S
+ MONG_SH |=: MONG_EXENSH, % "sh"
+ MONG_D |=: MONG_T, % " d-"
+ MONG_X |=: MONG_EXENX, % MONG_X
+ MONG_G |=: MONG_EXENG, % MONG_X
+ MONG_Z |=: MONG_SHILBE; % "z"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ligtable MONG_LGU: % "<<"
+ MONG_A |=:| MONG_TITEM, % "a"
+ MONG_AE |=:| MONG_TITEM, % "a"
+% MONG_E |=:| MONG_TITEM, % MONG_M
+ MONG_I |=:| MONG_TITEM, % "i"
+ MONG_U |=:| MONG_TITEM, % "u"
+ MONG_N |=: MONG_EXENN, % "n"
+% MONG_EXENN kern 0.5gedeswidth,
+ MONG_M |=: MONG_EXENM, % MONG_M
+% MONG_EXENM kern 0.5gedeswidth,
+ MONG_L |=: MONG_EXENL, % MONG_M
+% MONG_EXENL kern 0.5gedeswidth,
+ MONG_H |=:| MONG_TITEM, % MONG_H
+ MONG_S |=: MONG_EXENS, % MONG_S
+% MONG_EXENS kern 0.5gedeswidth,
+ MONG_SH |=: MONG_EXENSH, % "sh"
+% MONG_EXENSH kern 0.5gedeswidth,
+ MONG_D |=: MONG_T, % " d-"
+% MONG_T kern 0.5gedeswidth,
+ MONG_X |=: MONG_EXENX, % MONG_X
+% MONG_EXENX kern 0.5gedeswidth,
+ MONG_G |=: MONG_EXENG, % MONG_X
+% MONG_EXENG kern 0.5gedeswidth,
+ MONG_Z |=: MONG_SHILBE; % "z"
+% MONG_SHILBE kern 0.5gedeswidth;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+